Релиз moonraker - Web API для Клиппера
Go to file
Eric Callahan d1f97f2658
authorization: fix blocking call to socket.getfqdn()
If the upstream DNS server is not available the call to socket.getfqdn()
will block until a timeout occurs.  This blocks Moonraker's event loop,
resulting in carnage.

Call getfqdn() in a thread with a timeout of 5 seconds.  In addition,
only request the fqdn if the user has one or more trusted domains
configured.  Finally, cache resolved  FQDNs for 24 hours to limit
repeated DNS queries.

Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2024-01-22 12:03:01 -05:00
.github workflows: update linter action arguments 2023-10-07 08:16:27 -04:00
docs docs: minor spelling fixes 2024-01-21 13:50:30 -05:00
moonraker authorization: fix blocking call to socket.getfqdn() 2024-01-22 12:03:01 -05:00
scripts build: bump dependency versions 2024-01-13 15:15:13 -05:00
tests test: fix imports 2023-02-22 12:16:27 -05:00
.editorconfig moonraker: add .editorconfig file 2020-11-08 08:50:51 -05:00
.gitattributes Initial commit 2020-07-01 20:13:59 -04:00
.gitignore gitignore: replace .pdm.toml with .pdm-python 2023-10-07 07:10:14 -04:00
.readthedocs.yaml docs: update readthedocs configuration 2023-11-07 15:09:03 -05:00
LICENSE Initial commit 2020-07-01 20:13:59 -04:00
README.md docs: fixes minor typos 2023-02-23 11:29:39 -05:00
mkdocs.yml docs: fixes minor typos 2023-02-23 11:29:39 -05:00
pdm.lock build: bump apprise to version 1.3.0 2023-03-05 12:28:42 -05:00
pyproject.toml build: bump dependency versions 2024-01-13 15:15:13 -05:00
pytest.ini tests: add support for loading a database 2022-02-22 07:47:38 -05:00

README.md

pdm-managed

Moonraker - API Web Server for Klipper

Moonraker is a Python 3 based web server that exposes APIs with which client applications may use to interact with the 3D printing firmware Klipper. Communication between the Klippy host and Moonraker is done over a Unix Domain Socket. Tornado is used to provide Moonraker's server functionality.

Documentation for users and developers can be found on Read the Docs.

Clients

Note that Moonraker does not come bundled with a client, you will need to install one. The following clients are currently available:

Raspberry Pi Images

Moonraker is available pre-installed with the following Raspberry Pi images:

Docker Containers

The following projects deploy Moonraker via Docker:

  • prind by mkuf
    • A suite of containers which allow you to run Klipper in Docker. Includes support for OctoPrint and Moonraker.

Changes

Please refer to the changelog for a list of notable changes to Moonraker.