Pyjoyment 0.2.0__tar.gz → 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pyjoyment-0.3.0/.gitignore +68 -0
- pyjoyment-0.3.0/PKG-INFO +491 -0
- pyjoyment-0.3.0/Pyjo/App/ASGI.py +739 -0
- pyjoyment-0.3.0/Pyjo/Collection.py +606 -0
- pyjoyment-0.3.0/Pyjo/Content/__init__.py +817 -0
- pyjoyment-0.3.0/Pyjo/DOM/CSS.py +1070 -0
- pyjoyment-0.3.0/Pyjo/DOM/HTML.py +605 -0
- pyjoyment-0.3.0/Pyjo/DOM/__init__.py +1379 -0
- pyjoyment-0.3.0/Pyjo/Date.py +331 -0
- pyjoyment-0.3.0/Pyjo/File.py +1059 -0
- pyjoyment-0.3.0/Pyjo/INI.py +400 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/Stream.py +652 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/certs/README.md +58 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/certs/ca.crt +20 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/certs/client.crt +20 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/certs/client.key +28 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/certs/server.crt +21 -0
- pyjoyment-0.3.0/Pyjo/IOLoop/certs/server.key +28 -0
- pyjoyment-0.3.0/Pyjo/Iterator.py +662 -0
- pyjoyment-0.3.0/Pyjo/JSON/__init__.py +587 -0
- pyjoyment-0.3.0/Pyjo/Loader.py +342 -0
- pyjoyment-0.3.0/Pyjo/Message/__init__.py +837 -0
- pyjoyment-0.3.0/Pyjo/Prove.py +1337 -0
- pyjoyment-0.3.0/Pyjo/Reactor/Asyncio.py +875 -0
- pyjoyment-0.3.0/Pyjo/Reactor/__init__.py +555 -0
- pyjoyment-0.3.0/Pyjo/Server/Daemon.py +1024 -0
- pyjoyment-0.3.0/Pyjo/Server/WSGI.py +349 -0
- pyjoyment-0.3.0/Pyjo/Steps.py +352 -0
- pyjoyment-0.3.0/Pyjo/String/Bytes.py +650 -0
- pyjoyment-0.3.0/Pyjo/String/Unicode.py +671 -0
- pyjoyment-0.3.0/Pyjo/TOML.py +253 -0
- pyjoyment-0.3.0/Pyjo/Template.py +1288 -0
- pyjoyment-0.3.0/Pyjo/Transaction/WebSocket.py +713 -0
- pyjoyment-0.3.0/Pyjo/Transaction/__init__.py +434 -0
- pyjoyment-0.3.0/Pyjo/UserAgent/__init__.py +1342 -0
- pyjoyment-0.3.0/Pyjo/Util.py +3741 -0
- pyjoyment-0.3.0/Pyjo/YAML.py +1245 -0
- pyjoyment-0.3.0/Pyjo/__init__.py +558 -0
- pyjoyment-0.3.0/Pyjo/__main__.py +38 -0
- pyjoyment-0.3.0/Pyjoyment/Command/Author/generate/dockerfile.py +281 -0
- pyjoyment-0.3.0/Pyjoyment/Command/Author/generate/kubernetes.py +514 -0
- pyjoyment-0.3.0/Pyjoyment/Command/Author/generate/lambda_zip.py +412 -0
- pyjoyment-0.3.0/Pyjoyment/Plugin/Config.py +244 -0
- pyjoyment-0.3.0/Pyjoyment/Plugin/PyRenderer.py +208 -0
- pyjoyment-0.3.0/Pyjoyment/Static.py +421 -0
- pyjoyment-0.3.0/README.md +449 -0
- pyjoyment-0.3.0/docs/api/Pyjo_Steps.rst +3 -0
- pyjoyment-0.3.0/docs/distributions.rst +66 -0
- pyjoyment-0.3.0/docs/guides/cookbook.rst +2635 -0
- pyjoyment-0.3.0/docs/guides/index.rst +423 -0
- pyjoyment-0.3.0/docs/guides/oneliners/config.yaml +5 -0
- pyjoyment-0.3.0/docs/guides/oneliners/deployment.yaml +19 -0
- pyjoyment-0.3.0/docs/guides/oneliners.rst +313 -0
- pyjoyment-0.3.0/docs/intro.rst +286 -0
- pyjoyment-0.3.0/pyjoyment-0.3.0.spdx.json +1 -0
- pyjoyment-0.3.0/pyproject.toml +421 -0
- pyjoyment-0.3.0/t/Pyjo/App_ASGI.py +858 -0
- pyjoyment-0.3.0/t/Pyjo/App_FastCGI.py +780 -0
- pyjoyment-0.3.0/t/Pyjo/DOM.py +3391 -0
- pyjoyment-0.3.0/t/Pyjo/File.py +521 -0
- pyjoyment-0.3.0/t/Pyjo/INI.py +298 -0
- pyjoyment-0.3.0/t/Pyjo/IOLoop.py +725 -0
- pyjoyment-0.3.0/t/Pyjo/IOLoop_Stdio.py +244 -0
- pyjoyment-0.3.0/t/Pyjo/Iterator.py +366 -0
- pyjoyment-0.3.0/t/Pyjo/Iterator_types.py +67 -0
- pyjoyment-0.3.0/t/Pyjo/JSON.py +474 -0
- pyjoyment-0.3.0/t/Pyjo/JSON_RPC.py +816 -0
- pyjoyment-0.3.0/t/Pyjo/Message_Response.py +1197 -0
- pyjoyment-0.3.0/t/Pyjo/Prove.py +910 -0
- pyjoyment-0.3.0/t/Pyjo/Reactor_Asyncio.py +470 -0
- pyjoyment-0.3.0/t/Pyjo/Reactor_Poll.py +466 -0
- pyjoyment-0.3.0/t/Pyjo/Server_ASGI.py +492 -0
- pyjoyment-0.3.0/t/Pyjo/Steps.py +236 -0
- pyjoyment-0.3.0/t/Pyjo/String.py +231 -0
- pyjoyment-0.3.0/t/Pyjo/TOML.py +165 -0
- pyjoyment-0.3.0/t/Pyjo/UserAgent.py +819 -0
- pyjoyment-0.3.0/t/Pyjo/UserAgent_online.py +326 -0
- pyjoyment-0.3.0/t/Pyjo/Util.py +989 -0
- pyjoyment-0.3.0/t/Pyjo/YAML.py +543 -0
- pyjoyment-0.3.0/t/Pyjo/init.py +203 -0
- pyjoyment-0.3.0/t/Pyjoyment/Commands.py +1019 -0
- pyjoyment-0.3.0/t/Pyjoyment/byte_order_mark.py +59 -0
- pyjoyment-0.3.0/t/Pyjoyment/health_lite_app.py +294 -0
- pyjoyment-0.3.0/t/certs/README.md +63 -0
- pyjoyment-0.3.0/t/certs/bad.crt +21 -0
- pyjoyment-0.3.0/t/certs/bad.key +28 -0
- pyjoyment-0.3.0/t/certs/ca.crt +21 -0
- pyjoyment-0.3.0/t/certs/client.crt +21 -0
- pyjoyment-0.3.0/t/certs/client.key +28 -0
- pyjoyment-0.3.0/t/certs/mojo_server.crt +21 -0
- pyjoyment-0.3.0/t/certs/mojo_server.key +28 -0
- pyjoyment-0.3.0/t/certs/server.crt +22 -0
- pyjoyment-0.3.0/t/certs/server.key +28 -0
- pyjoyment-0.3.0/t/docs/DOM.py +618 -0
- pyjoyment-0.3.0/t/docs/Date.py +171 -0
- pyjoyment-0.3.0/t/docs/File.py +389 -0
- pyjoyment-0.3.0/t/docs/INI.py +90 -0
- pyjoyment-0.3.0/t/docs/JSON.py +102 -0
- pyjoyment-0.3.0/t/docs/Pyjo_init.py +342 -0
- pyjoyment-0.3.0/t/docs/Server_Hot.py +276 -0
- pyjoyment-0.3.0/t/docs/Server_Reload.py +268 -0
- pyjoyment-0.3.0/t/docs/Steps.py +160 -0
- pyjoyment-0.3.0/t/docs/TOML.py +35 -0
- pyjoyment-0.3.0/t/docs/UserAgent.py +632 -0
- pyjoyment-0.3.0/t/docs/Util.py +391 -0
- pyjoyment-0.3.0/t/docs/YAML.py +122 -0
- pyjoyment-0.3.0/t/docs/guides_cookbook.py +1064 -0
- pyjoyment-0.3.0/t/docs/guides_oneliners.py +172 -0
- pyjoyment-0.3.0/t/docs/guides_tutorial.py +343 -0
- pyjoyment-0.3.0/t/docs/skills_async.py +69 -0
- pyjoyment-0.3.0/t/docs/skills_mount.py +61 -0
- pyjoyment-0.3.0/t/examples/ua/loopback.py +26 -0
- pyjoyment-0.3.0/t/lib/OneLiner.py +77 -0
- pyjoyment-0.3.0/t/lib/ServerStart.py +123 -0
- pyjoyment-0.3.0/t/lib/oneliner/sitecustomize.py +16 -0
- pyjoyment-0.3.0/t/servers/ASGI.py +192 -0
- pyjoyment-0.3.0/t/servers/Mount.py +640 -0
- pyjoyment-0.3.0/t/servers/aws_s3.py +135 -0
- pyjoyment-0.3.0/t/stdlib/Date.py +67 -0
- pyjoyment-0.3.0/t/stdlib/File.py +160 -0
- pyjoyment-0.3.0/t/stdlib/IOLoop.py +123 -0
- pyjoyment-0.3.0/t/stdlib/IOLoop_Stream.py +134 -0
- pyjoyment-0.3.0/t/stdlib/IOLoop_TLS.py +134 -0
- pyjoyment-0.3.0/t/stdlib/IOLoop_gc.py +154 -0
- pyjoyment-0.3.0/t/stdlib/Promise.py +287 -0
- pyjoyment-0.3.0/t/stdlib/Reactor_Asyncio.py +406 -0
- pyjoyment-0.3.0/t/stdlib/Server_ASGI.py +80 -0
- pyjoyment-0.3.0/t/stdlib/Server_Daemon.py +328 -0
- pyjoyment-0.3.0/t/stdlib/Server_WSGI.py +122 -0
- pyjoyment-0.3.0/t/stdlib/UserAgent.py +269 -0
- pyjoyment-0.3.0/t/stdlib/annotations.py +76 -0
- pyjoyment-0.2.0/.gitignore +0 -67
- pyjoyment-0.2.0/PKG-INFO +0 -480
- pyjoyment-0.2.0/Pyjo/App/ASGI.py +0 -735
- pyjoyment-0.2.0/Pyjo/Collection.py +0 -606
- pyjoyment-0.2.0/Pyjo/Content/__init__.py +0 -806
- pyjoyment-0.2.0/Pyjo/DOM/CSS.py +0 -1067
- pyjoyment-0.2.0/Pyjo/DOM/HTML.py +0 -550
- pyjoyment-0.2.0/Pyjo/DOM/__init__.py +0 -1369
- pyjoyment-0.2.0/Pyjo/Date.py +0 -294
- pyjoyment-0.2.0/Pyjo/File.py +0 -960
- pyjoyment-0.2.0/Pyjo/INI.py +0 -379
- pyjoyment-0.2.0/Pyjo/IOLoop/Stream.py +0 -651
- pyjoyment-0.2.0/Pyjo/IOLoop/certs/README.md +0 -41
- pyjoyment-0.2.0/Pyjo/IOLoop/certs/ca.crt +0 -20
- pyjoyment-0.2.0/Pyjo/IOLoop/certs/server.crt +0 -21
- pyjoyment-0.2.0/Pyjo/IOLoop/certs/server.key +0 -28
- pyjoyment-0.2.0/Pyjo/Iterator.py +0 -628
- pyjoyment-0.2.0/Pyjo/JSON/__init__.py +0 -573
- pyjoyment-0.2.0/Pyjo/Loader.py +0 -342
- pyjoyment-0.2.0/Pyjo/Message/__init__.py +0 -830
- pyjoyment-0.2.0/Pyjo/Prove.py +0 -1305
- pyjoyment-0.2.0/Pyjo/Reactor/Asyncio.py +0 -854
- pyjoyment-0.2.0/Pyjo/Reactor/__init__.py +0 -525
- pyjoyment-0.2.0/Pyjo/Server/Daemon.py +0 -1007
- pyjoyment-0.2.0/Pyjo/Server/WSGI.py +0 -350
- pyjoyment-0.2.0/Pyjo/String/Bytes.py +0 -619
- pyjoyment-0.2.0/Pyjo/String/Unicode.py +0 -640
- pyjoyment-0.2.0/Pyjo/TOML.py +0 -232
- pyjoyment-0.2.0/Pyjo/Template.py +0 -1290
- pyjoyment-0.2.0/Pyjo/Transaction/WebSocket.py +0 -709
- pyjoyment-0.2.0/Pyjo/Transaction/__init__.py +0 -429
- pyjoyment-0.2.0/Pyjo/UserAgent/__init__.py +0 -1243
- pyjoyment-0.2.0/Pyjo/Util.py +0 -3675
- pyjoyment-0.2.0/Pyjo/YAML.py +0 -1169
- pyjoyment-0.2.0/Pyjo/__init__.py +0 -459
- pyjoyment-0.2.0/Pyjo/__main__.py +0 -35
- pyjoyment-0.2.0/Pyjoyment/Command/Author/generate/dockerfile.py +0 -281
- pyjoyment-0.2.0/Pyjoyment/Command/Author/generate/kubernetes.py +0 -514
- pyjoyment-0.2.0/Pyjoyment/Command/Author/generate/lambda_zip.py +0 -412
- pyjoyment-0.2.0/Pyjoyment/Plugin/Config.py +0 -248
- pyjoyment-0.2.0/Pyjoyment/Plugin/PyRenderer.py +0 -209
- pyjoyment-0.2.0/Pyjoyment/Static.py +0 -421
- pyjoyment-0.2.0/README.md +0 -438
- pyjoyment-0.2.0/docs/distributions.rst +0 -45
- pyjoyment-0.2.0/docs/guides/cookbook.rst +0 -2632
- pyjoyment-0.2.0/docs/guides/index.rst +0 -417
- pyjoyment-0.2.0/docs/intro.rst +0 -281
- pyjoyment-0.2.0/pyjoyment-0.2.0.spdx.json +0 -1
- pyjoyment-0.2.0/pyproject.toml +0 -419
- pyjoyment-0.2.0/t/Pyjo/App_ASGI.py +0 -811
- pyjoyment-0.2.0/t/Pyjo/App_FastCGI.py +0 -782
- pyjoyment-0.2.0/t/Pyjo/DOM.py +0 -3354
- pyjoyment-0.2.0/t/Pyjo/File.py +0 -500
- pyjoyment-0.2.0/t/Pyjo/INI.py +0 -287
- pyjoyment-0.2.0/t/Pyjo/IOLoop.py +0 -716
- pyjoyment-0.2.0/t/Pyjo/IOLoop_Stdio.py +0 -237
- pyjoyment-0.2.0/t/Pyjo/Iterator.py +0 -303
- pyjoyment-0.2.0/t/Pyjo/JSON.py +0 -464
- pyjoyment-0.2.0/t/Pyjo/JSON_RPC.py +0 -813
- pyjoyment-0.2.0/t/Pyjo/Message_Response.py +0 -1145
- pyjoyment-0.2.0/t/Pyjo/Prove.py +0 -877
- pyjoyment-0.2.0/t/Pyjo/Reactor_Asyncio.py +0 -465
- pyjoyment-0.2.0/t/Pyjo/Reactor_Poll.py +0 -461
- pyjoyment-0.2.0/t/Pyjo/Server_ASGI.py +0 -491
- pyjoyment-0.2.0/t/Pyjo/String.py +0 -218
- pyjoyment-0.2.0/t/Pyjo/TOML.py +0 -158
- pyjoyment-0.2.0/t/Pyjo/UserAgent.py +0 -792
- pyjoyment-0.2.0/t/Pyjo/UserAgent_online.py +0 -285
- pyjoyment-0.2.0/t/Pyjo/Util.py +0 -966
- pyjoyment-0.2.0/t/Pyjo/YAML.py +0 -489
- pyjoyment-0.2.0/t/Pyjo/ojo.py +0 -154
- pyjoyment-0.2.0/t/Pyjoyment/Commands.py +0 -1015
- pyjoyment-0.2.0/t/Pyjoyment/health_lite_app.py +0 -281
- pyjoyment-0.2.0/t/certs/README.md +0 -57
- pyjoyment-0.2.0/t/certs/bad.crt +0 -21
- pyjoyment-0.2.0/t/certs/bad.key +0 -28
- pyjoyment-0.2.0/t/certs/ca.crt +0 -21
- pyjoyment-0.2.0/t/certs/client.crt +0 -21
- pyjoyment-0.2.0/t/certs/client.key +0 -28
- pyjoyment-0.2.0/t/certs/mojo_server.crt +0 -21
- pyjoyment-0.2.0/t/certs/mojo_server.key +0 -28
- pyjoyment-0.2.0/t/certs/server.crt +0 -22
- pyjoyment-0.2.0/t/certs/server.key +0 -28
- pyjoyment-0.2.0/t/docs/DOM.py +0 -614
- pyjoyment-0.2.0/t/docs/Date.py +0 -146
- pyjoyment-0.2.0/t/docs/File.py +0 -376
- pyjoyment-0.2.0/t/docs/INI.py +0 -85
- pyjoyment-0.2.0/t/docs/JSON.py +0 -99
- pyjoyment-0.2.0/t/docs/Pyjo_init.py +0 -293
- pyjoyment-0.2.0/t/docs/Server_Hot.py +0 -269
- pyjoyment-0.2.0/t/docs/Server_Reload.py +0 -243
- pyjoyment-0.2.0/t/docs/TOML.py +0 -32
- pyjoyment-0.2.0/t/docs/UserAgent.py +0 -600
- pyjoyment-0.2.0/t/docs/Util.py +0 -381
- pyjoyment-0.2.0/t/docs/YAML.py +0 -87
- pyjoyment-0.2.0/t/docs/guides_cookbook.py +0 -1063
- pyjoyment-0.2.0/t/docs/guides_tutorial.py +0 -325
- pyjoyment-0.2.0/t/docs/skills_async.py +0 -57
- pyjoyment-0.2.0/t/docs/skills_mount.py +0 -60
- pyjoyment-0.2.0/t/examples/ua/loopback.py +0 -21
- pyjoyment-0.2.0/t/lib/ServerStart.py +0 -105
- pyjoyment-0.2.0/t/servers/ASGI.py +0 -191
- pyjoyment-0.2.0/t/servers/Mount.py +0 -640
- pyjoyment-0.2.0/t/servers/aws_s3.py +0 -134
- pyjoyment-0.2.0/t/stdlib/Date.py +0 -42
- pyjoyment-0.2.0/t/stdlib/File.py +0 -115
- pyjoyment-0.2.0/t/stdlib/IOLoop.py +0 -123
- pyjoyment-0.2.0/t/stdlib/IOLoop_Stream.py +0 -114
- pyjoyment-0.2.0/t/stdlib/IOLoop_TLS.py +0 -125
- pyjoyment-0.2.0/t/stdlib/IOLoop_gc.py +0 -87
- pyjoyment-0.2.0/t/stdlib/Promise.py +0 -256
- pyjoyment-0.2.0/t/stdlib/Reactor_Asyncio.py +0 -369
- pyjoyment-0.2.0/t/stdlib/Server_ASGI.py +0 -79
- pyjoyment-0.2.0/t/stdlib/Server_Daemon.py +0 -252
- pyjoyment-0.2.0/t/stdlib/Server_WSGI.py +0 -91
- pyjoyment-0.2.0/t/stdlib/UserAgent.py +0 -233
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/.proverc +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/LICENSE +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/App/CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/App/FastCGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/App/Lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/App/WSGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/App/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Asset/File.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Asset/Memory.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Asset/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Base.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Cache.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Content/MultiPart.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Content/Single.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Cookie/Request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Cookie/Response.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Cookie/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/EventEmitter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Exception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/GetOpt.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Headers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/HelloWorld.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Home.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/ChildProcess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/Client.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/Datagram.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/Messages.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/Stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/Subprocess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/IOLoop/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/JSON/Pointer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/JSON/RPC.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/JSON/Schema.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Log.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Message/Request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Message/Response.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Parameters.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Path.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Promise.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Reactor/Poll.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/SSE.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/ASGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/FastCGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Hot/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Hot/__main__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Prefork.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Prethread.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Reload/Backend/Poll.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Reload/Backend/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Reload/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Reload/__main__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/Stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Server/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/String/HTML.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/String/Mixin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/String/Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/String/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Test/Pyjo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Test/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Test/pytest_plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Transaction/HTTP.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/URL/Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/URL/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/Upload.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/UserAgent/CookieJar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/UserAgent/Proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/UserAgent/Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/UserAgent/Transactor.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/WebSocket.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjo/py.typed +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/generate/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/generate/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/generate/lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/generate/plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/generate/pyproject.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/Author/inflate.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/asgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/cgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/daemon.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/eval.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/fastcgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/get.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/prefork.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/prethread.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/routes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/version.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Command/wsgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Commands.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Controller.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/HelloWorld.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Lite.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/AllowedHosts.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/DefaultHelpers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/EPLRenderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/EPRenderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/HeaderCondition.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/Health.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/INIConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/JSONConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/Mount.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/TOMLConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/TagHelpers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/YAMLConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugin/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Plugins.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Renderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Routes/Match.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Routes/Pattern.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Routes/Route.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Routes/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Sessions.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Types.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Validator/Validation.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/Validator/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/__main__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/py.typed +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/favicon.ico +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/favicon.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/bootstrap/LICENSE +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.bundle.min.js.map +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.css +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.min.css.map +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/failunicat.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/failunicat.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/highlight.js/LICENSE +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/highlight.js/highlight-mojo-dark.css +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/highlight.js/highlight.min.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/highlight.js/pyjoyment.min.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-black-4x.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-black-4x.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-white-2x.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-white-2x.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-white-4x.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-white-4x.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-white.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo-white.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/logo.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/notfound.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/notfound.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/nounicat.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/nounicat.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/pinstripe-dark.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/pinstripe-dark.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/pinstripe-light.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/pinstripe-light.svg +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/public/pyjo/pyjo.css +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/templates/pyjo/debug.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/templates/pyjo/exception.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/Pyjoyment/resources/templates/pyjo/not_found.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/.gitignore +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/Makefile +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/_static/mermaid.css +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_App.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_App_ASGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_App_CGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_App_FastCGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_App_Lambda.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_App_WSGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Asset.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Asset_File.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Asset_Memory.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Base.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Cache.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Collection.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Content.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Content_MultiPart.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Content_Single.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Cookie.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Cookie_Request.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Cookie_Response.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_DOM.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_DOM_CSS.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_DOM_HTML.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Date.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_EventEmitter.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Exception.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_File.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_GetOpt.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Headers.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_HelloWorld.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Home.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_INI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_ChildProcess.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Client.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Datagram.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Messages.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Server.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Stdio.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Stream.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_Subprocess.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_IOLoop_TLS.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Iterator.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_JSON.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_JSON_Pointer.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_JSON_RPC.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_JSON_Schema.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Loader.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Log.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Message.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Message_Request.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Message_Response.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Parameters.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Path.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Promise.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Prove.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Reactor.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Reactor_Asyncio.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Reactor_Poll.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_SSE.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_ASGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_CGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Daemon.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_FastCGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Hot.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Lambda.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Prefork.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Prethread.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Reload.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Reload_Backend.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Reload_Backend_Poll.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_Stdio.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Server_WSGI.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_String_Bytes.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_String_HTML.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_String_Mixin.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_String_Template.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_String_Unicode.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_TOML.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Template.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Test.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Test_Pyjo.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Test_pytest_plugin.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Transaction.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Transaction_HTTP.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Transaction_WebSocket.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_URL.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_URL_Template.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Upload.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_UserAgent.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_UserAgent_CookieJar.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_UserAgent_Proxy.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_UserAgent_Server.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_UserAgent_Transactor.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_Util.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_WebSocket.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjo_YAML.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_app.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_dockerfile.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_kubernetes.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_lambda_zip.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_lite_app.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_plugin.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_generate_pyproject.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_Author_inflate.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_asgi.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_cgi.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_daemon.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_eval.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_fastcgi.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_get.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_lambda.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_prefork.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_prethread.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_routes.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_stdio.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_version.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Command_wsgi.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Commands.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Controller.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_HelloWorld.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Lite.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_AllowedHosts.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_Config.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_DefaultHelpers.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_EPLRenderer.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_EPRenderer.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_HeaderCondition.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_Health.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_INIConfig.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_JSONConfig.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_Mount.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_PyRenderer.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_TOMLConfig.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_TagHelpers.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugin_YAMLConfig.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Plugins.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Renderer.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Routes.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Routes_Match.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Routes_Pattern.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Routes_Route.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Sessions.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Static.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Types.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Validator.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/Pyjoyment_Validator_Validation.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/api/index.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/conf.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/examples.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/contributing.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/backend.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/background.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/basic_auth.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/blocking.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/commands/MyApp/Command/spy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/commands/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/commands/MyApp/__main__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/commands/Pyjoyment/Command/spy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/config/myapp.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/config/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/counter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/delayed.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/echo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/errors.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/health.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/hello.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/hosts.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/hosts_under.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/hot.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/installable/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/installable/pyproject.toml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/json_inline.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/jsonp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/lambda/gateway.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/lambda/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/livelog.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/plugin/MyApp/Plugin/MyHelpers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/plugin/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/sleepy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/sort.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/stdio/client.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/stdio/lines.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/stdio/rpc.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/synchronizing.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/titles.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/upload.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/worker.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/wsgi/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/wsgi/myapp_wsgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/cookbook/wsgi/welcome.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/faq.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/foundation/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/hybrid/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/hybrid/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/MyApp/Controller/Login.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/MyApp/Model/Users.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/MyApp/__main__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/t/login.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/templates/layouts/default.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/templates/login/index.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/login/templates/login/protected.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/model/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/prototype/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing/prototype/t/login.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/growing.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/mounting/api.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/mounting/legacy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/mounting/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/mounting.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/alert_assets/Pyjoyment/Plugin/AlertAssets/public/alertassets.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/alert_assets/Pyjoyment/Plugin/AlertAssets/templates/alertassets.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/alert_assets/Pyjoyment/Plugin/AlertAssets.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/alert_assets_data/Pyjoyment/Plugin/AlertAssets.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/alert_me.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/before_render.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/blocks.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/cache_control.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/chunked.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/clock.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/compressed.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/content_for.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/csrf.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/debug_helper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/debug_helper_plugin/Pyjoyment/Plugin/DebugHelper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/debug_plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/divide.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/exception_format.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/exception_template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/favicon.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/form.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/heart.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/inheritance.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/layout.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/layout_title.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/leak_asset.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/leak_rendered.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/mine.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/mustache.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/my_renderer/Pyjoyment/Plugin/MyRenderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/partial.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/pickled.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/public/foo/bar.png +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/public/index.html +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/range_check.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/static_files.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/streaming.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/streaming_finish.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/trim_newline.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering/validation.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/rendering.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/app_plugin/EmbeddedApp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/app_plugin/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/app_plugin/Pyjoyment/Plugin/MyEmbeddedApp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/embed/MyApp/Controller/Bar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/embed_lite/MyApp/Controller/Bar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/hooks/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/minimal/MyApp/Controller/Foo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/minimal/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/special/MyApp/Controller/Foo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/special/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/websockets/MyApp/Controller/Foo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/werewolf/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing/werewolf/Pyjoyment/Plugin/WerewolfCondition.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/routing.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/testing/TestLocation.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/testing/celestial.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/testing/echo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/testing/login.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/testing/weather/MyApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/testing.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/blocks.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/conditions.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/content_negotiation.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/exception_pages.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/external_templates.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/file_uploads.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/formats.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/hello_world.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/helpers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/home.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/http_methods.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/json_reverse.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/json_rpc.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/layouts.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/mode.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/optional_formats.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/optional_placeholders.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/parameters.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/placeholders.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/plugins.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/relaxed_placeholders.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/request_response.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/restrictive_placeholders.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/restrictive_regex.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/route_names.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/routes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/sessions.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/stash.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/static_files.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/under_authentication.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/under_group.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/under_prefix.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/user_agent.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/websockets.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial/wildcard_placeholders.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/guides/tutorial.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/index.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/installation.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/license.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/make.bat +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/requirements.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/docs/status.rst +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/aws/s3.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/alb.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/function/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/function/phpinfo.php +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/function.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/layers.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/network.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/outputs.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/url.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/variables.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda/versions.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/function/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/function/wrapper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/function.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/layers.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/outputs.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/url.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/variables.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_stream/versions.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/function/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/function.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/layers.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/outputs.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/url.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/variables.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/lambda_zip/versions.tf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/cgi-bin/hello.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/compose.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/hello_asgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/hello_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/hello_mangum.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/hello_wsgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_asgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_asgi_inception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_cgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_cgi_php.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_fastcgi_php.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_lambda_inception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_lambda_mangum.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_mcp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_wsgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/mount_wsgi_inception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/php/index.php +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/php/php-fpm.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/mount/php/phpinfo.php +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/base.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/base.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/eventemitter.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/eventemitter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/eventemitter_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/eventemitter_profile.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/http_benchmark.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/http_benchmark.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/http_benchmark_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/ioloop.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/ioloop.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/ioloop_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/microhttp.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/microhttp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/microhttp_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/microhttpd.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/microhttpd.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/microhttpd_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/resolv_dns.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/resolv_dns.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/tcp_proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/timers.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/timers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/timers_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/timers_obj.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/timers_obj_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/url.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/url.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/url_utf8.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjo/url_utf8.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/hello.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/hello.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_rpc.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/LICENSE +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/address.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/address.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/blog-post.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/blog-post.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/calendar.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/calendar.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/device.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/device.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/ecommerce.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/ecommerce.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/geographical-location.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/geographical-location.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/health-record.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/health-record.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/job-posting.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/job-posting.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/laptop.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/movie.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/movie.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/smartphone.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/user-profile.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/json_schema_examples/user-profile.schema.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/title.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/pyjoyment/title.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/bootstrap +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/hello_world.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/hello_world_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/hello_world_uvicorn.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/hello_world_werkzeug.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/http_server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_asgi_on_request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_cgi_on_request.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_cgi_on_request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_daemon_on_request.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_daemon_on_request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_psgi_on_request.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/servers/server_wsgi_on_request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/ua/entities.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/ua/entities.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/ua/get.pl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/ua/get.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/ua/loopback.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/examples/ua/user_agent.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/App.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/App_CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/App_Lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/App_WSGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Asset.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Base.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Cache.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Collection.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Content.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Cookie.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Date.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/EventEmitter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Exception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/File_download.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/GetOpt.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Headers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Home.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/IOLoop_ChildProcess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/IOLoop_Datagram.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/IOLoop_IPv6.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/IOLoop_Messages.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/IOLoop_TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_Pointer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_Schema.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_Schema_lazy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_Schema_suite.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_Schema_validate.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_Schema_zod.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/JSON_stdlib.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Loader.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Log.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Message_Request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Message_Request_CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Parameters.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Path.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Promise.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Promise_async_await.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Reactor_detect.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/SSE.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Daemon.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Daemon_IPv6_TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_FastCGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Hot.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Prefork.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Prethread.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Reload.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_Stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Server_WSGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/String_HTML.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/String_Mixin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/String_Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/String_Template_native.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Subprocess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Test.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Test_Pyjo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/Test_pytest_plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/URL.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/URL_Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/UserAgent_CookieJar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/UserAgent_Proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/UserAgent_TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/UserAgent_Transactor.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/UserAgent_socks.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/UserAgent_unix.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/WebSocket.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/WebSocket_frames.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/WebSocket_proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjo/WebSocket_proxy_TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/Command.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/Dispatch.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/Pattern.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/Renderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/Routes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/Types.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/allowed_hosts_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/asgi_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/charset_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/dispatcher_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/embedded_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/embedded_lite_app.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/embedded_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/exception_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/external_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/external_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/group_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/helper_types_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/hints_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/ini_config_lite_app.ini +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/ini_config_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/ini_config_lite_app_abs.development.ini +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/ini_config_lite_app_abs.ini +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_lite_app.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_lite_app_abs.development.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_lite_app_abs.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_mode_lite_app.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_mode_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/json_config_mode_lite_app.testing.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/layouted_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/log_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/longpolling_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/mount_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/multipath_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/production_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/proxy_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo/bar/baz.123.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo/bar/baz.development.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo/bar/test.ab1234cd5678ef.min.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo/bar/yada.css +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo/bar.321.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo.ab1234cd5678ef.css +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/assets/foo.ab1234cd5678ef.js +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/hello.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/hello2.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public/hello4.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public2/hello.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public2/hello3.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public_dev/another/file +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/public_dev/hello.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/py_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/py_native_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/pyjoyment_config_test.whatever.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/rebased_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/restful_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/secret.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/session_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/signatures_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/single_file_test_app.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/sse_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/static_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/static_prefix_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/tag_helper_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/23.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/WithGreenLayout.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/dies_too.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/encoding.koi8-r.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/exception.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/exception.testing.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/foo/bar/index.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/foo/bar/test.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/foo/bar.rss.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/foo/index.html.xpl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/foo/yada.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/layouts/default.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/layouts/green.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/not_found.testing.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/syntaxerror.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates/withblock.txt.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates2/42.html+test.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates2/42.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/templates2/foo/yada.html.epl +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/testing_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/tls_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/toml_config_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/toml_config_lite_app.toml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/toml_config_lite_app_abs.development.toml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/toml_config_lite_app_abs.toml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/twinkle_lite_app.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/twinkle_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/upload_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/upload_stream_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/validation_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/websocket_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/wsgi_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/yaml_config_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/yaml_config_lite_app.yaml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/yaml_config_lite_app.yml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/yaml_config_lite_app_abs.development.yml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/Pyjoyment/yaml_config_lite_app_abs.yml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/cookies/curl.txt +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/App.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/App_ASGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/App_CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/App_FastCGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/App_Lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/App_WSGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Asset.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Asset_File.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Asset_Memory.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Base.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Cache.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Collection.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Content.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Content_MultiPart.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Content_Single.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Cookie.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Cookie_Request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Cookie_Response.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/DOM_CSS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/DOM_HTML.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/EventEmitter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Exception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/GetOpt.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Headers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/HelloWorld.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Home.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_ChildProcess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Client.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Datagram.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Messages.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Stream.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_Subprocess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/IOLoop_TLS.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Iterator.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/JSON_Pointer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/JSON_RPC.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/JSON_Schema.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Loader.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Log.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Message.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Message_Request.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Message_Response.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Parameters.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Path.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Promise.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Prove.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_dockerfile.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_kubernetes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_lambda_zip.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_lite_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_generate_pyproject.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_Author_inflate.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_asgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_cgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_daemon.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_eval.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_fastcgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_get.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_prefork.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_prethread.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_routes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_version.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Command_wsgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Commands.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Controller.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_HelloWorld.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Lite.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_AllowedHosts.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_Config.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_DefaultHelpers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_EPLRenderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_EPRenderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_HeaderCondition.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_Health.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_INIConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_JSONConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_Mount.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_PyRenderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_TOMLConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_TagHelpers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugin_YAMLConfig.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Plugins.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Renderer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Routes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Routes_Match.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Routes_Pattern.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Routes_Route.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Sessions.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Static.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Types.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Validator.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_Validator_Validation.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Pyjoyment_init.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Reactor.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Reactor_Asyncio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Reactor_Poll.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/SSE.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_ASGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Daemon.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_FastCGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Prefork.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Prethread.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Reload_Backend.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Reload_Backend_Poll.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_Stdio.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Server_WSGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/String_Bytes.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/String_HTML.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/String_Mixin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/String_Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/String_Unicode.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Test.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Test_Pyjo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Test_pytest_plugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Transaction.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Transaction_HTTP.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Transaction_WebSocket.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/URL.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/URL_Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/Upload.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/UserAgent_CookieJar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/UserAgent_Proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/UserAgent_Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/UserAgent_Transactor.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/WebSocket.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_faq.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_growing.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_index.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_mounting.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_rendering.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_routing.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/guides_testing.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_api.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_deploy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_event_loop.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_lite.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_migration.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_mojolicious.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_plugins.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_scraping.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_templates.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/skills_tests.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/docs/usages.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/lambda/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/lambda_stream/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/lambda_zip/app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/compose.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_asgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_asgi_inception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_cgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_lambda_inception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_wsgi.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/mount/mount_wsgi_inception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/base.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/eventemitter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/eventemitter_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/http_benchmark.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/ioloop.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/ioloop_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/timers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/timers_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/timers_obj.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/timers_obj_imper.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/url.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjo/url_utf8.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjoyment/hello.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjoyment/json_rpc.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjoyment/json_schema.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/pyjoyment/title.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/servers/bootstrap.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/servers/hello_world_lambda.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/servers/http_server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/examples/ua/user_agent.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/ASGIClient.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/FakeUV.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/RuntimeAPI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/ServerProcess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/Skills.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/SocksServer.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/TestConnectProxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/lib/TestReactor.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/servers/CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/servers/HelloWorld.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/servers/INI_botocore.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/servers/JSON_Schema_pydantic.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/servers/WSGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/App.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Asset.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Base.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Cache.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Collection.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Content.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Cookie.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/DOM.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/EventEmitter.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Exception.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Headers.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Home.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/IOLoop_Client.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/IOLoop_Datagram.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/IOLoop_Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/IOLoop_Subprocess.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/IOLoop_threading.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/JSON.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Loader.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Log.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Message.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Parameters.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Path.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Reactor_Poll.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/SSE.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Server_CGI.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Server_Hot.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Server_Prefork.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Server_Prethread.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Server_Reload.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/String_Mixin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/String_Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Template.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Test_Pyjo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Transaction.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/URL.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Upload.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/UserAgent_CookieJar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/UserAgent_Proxy.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/UserAgent_Server.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/UserAgent_Transactor.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/Util.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/stdlib/WebSocket.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/templates/exception.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/templates/test.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/t/templates/utf8_exception.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/README.md +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/Caddyfile +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/Dockerfile.caddy +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/Dockerfile.lambda +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/Dockerfile.lambda-stream +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/app.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/events/payload-1.0.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/events/payload-2.0.json +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/fastcgi.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/invoke.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/kubernetes.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lambda-image.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lambda-stream.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lambda-zip.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lambda.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lib.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lite-pep723.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/lite.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/docker-smoke/smoke.sh +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/lib/MyApp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/my_app.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/my_app.testing.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/myapp.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/myapp.testing.conf +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/myapp2.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/public/index.html +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/script/my_app +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/external/templates/index.html.ep +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/AroundPlugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/EmbeddedTestApp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/MyTestApp/Test1.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/MyTestApp/Test2.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/MyTestApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PluginWithEmbeddedApp/App.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PluginWithEmbeddedApp/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentConfigTest.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Baz.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Command/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Command/_test2_command.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Command/test_command.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Controller/Foo/Bar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Exceptional.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Foo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Plugin/DeploymentPlugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Plugin/Test/SomePlugin2.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Plugin/UPPERCASETestPlugin.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/Plugin/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/SideEffects/Test.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest/__init__.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest2/Foo.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest3/Bar.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/PyjoymentTest3/Baz.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/SingleFileTestApp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/lib/TestApp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/myapp.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/pyproject.toml +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/t/died.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/t/fail.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/t/pass.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/t/requires.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/t/skip.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/t/test_named.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/tests/conftest.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/tests/test_app.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/tests/test_functions.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/xt/bail.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/xt/sleep.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/pytest/xt/test_bail.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/files/dies.html.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/files/hello.html.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/files/item.html.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/files/items.html.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/files/no_render.html.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/files/text.txt.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates/layouts/files.html.py +0 -0
- {pyjoyment-0.2.0 → pyjoyment-0.3.0}/tt/templates_native/native.html.py +0 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# The parts of https://www.toptal.com/developers/gitignore/api/python,node,macos,visualstudiocode
|
|
2
|
+
# that apply here; a path is anchored where it could match a directory of the
|
|
3
|
+
# project, as "lib/" of the template would match t/lib. hatchling builds the
|
|
4
|
+
# packages without the files that this file ignores.
|
|
5
|
+
|
|
6
|
+
# Python
|
|
7
|
+
__pycache__/
|
|
8
|
+
*.py[cod]
|
|
9
|
+
*$py.class
|
|
10
|
+
*.so
|
|
11
|
+
*.egg-info/
|
|
12
|
+
.eggs/
|
|
13
|
+
/build/
|
|
14
|
+
/dist/
|
|
15
|
+
|
|
16
|
+
# The SBOM of a release, which the workflow Release creates for the sdist
|
|
17
|
+
/pyjoyment-*.spdx.json
|
|
18
|
+
|
|
19
|
+
# Virtual environments of uv, of the tests of the servers and of the benchmarks
|
|
20
|
+
.venv
|
|
21
|
+
.venv-*
|
|
22
|
+
benchmarks/venv/
|
|
23
|
+
|
|
24
|
+
# Caches of the tools
|
|
25
|
+
.ruff_cache/
|
|
26
|
+
|
|
27
|
+
# The working directories of OpenTofu, with the archives of the functions, the locks
|
|
28
|
+
# of the providers, which are not locked, the states and the variables of each one
|
|
29
|
+
.terraform/
|
|
30
|
+
.terraform.lock.hcl
|
|
31
|
+
*.tfstate
|
|
32
|
+
*.tfstate.*
|
|
33
|
+
*.tfvars
|
|
34
|
+
|
|
35
|
+
# The ZIP files of the functions that "generate lambda-zip" writes for OpenTofu
|
|
36
|
+
examples/*/function/dist/
|
|
37
|
+
|
|
38
|
+
# Logs, as the one of TF_LOG_PATH of OpenTofu
|
|
39
|
+
*.log
|
|
40
|
+
|
|
41
|
+
# The packages of npm, which npm run bundle copies from
|
|
42
|
+
node_modules/
|
|
43
|
+
npm-debug.log*
|
|
44
|
+
|
|
45
|
+
# macOS
|
|
46
|
+
.DS_Store
|
|
47
|
+
._*
|
|
48
|
+
|
|
49
|
+
# Editors
|
|
50
|
+
.idea/
|
|
51
|
+
.vscode/
|
|
52
|
+
|
|
53
|
+
# Secrets, as in the rules of .claude/settings.json
|
|
54
|
+
.env
|
|
55
|
+
.env.*
|
|
56
|
+
.envrc
|
|
57
|
+
.pypirc
|
|
58
|
+
*.jks
|
|
59
|
+
*.keystore
|
|
60
|
+
*.p12
|
|
61
|
+
*.pfx
|
|
62
|
+
*.pem
|
|
63
|
+
*.key
|
|
64
|
+
# The keys of the default certificates for TLS servers, like in Mojo, and clients
|
|
65
|
+
!/Pyjo/IOLoop/certs/server.key
|
|
66
|
+
!/Pyjo/IOLoop/certs/client.key
|
|
67
|
+
# Certificates of the tests, like t/mojo/certs in Mojo
|
|
68
|
+
!/t/certs/*.key
|
pyjoyment-0.3.0/PKG-INFO
ADDED
|
@@ -0,0 +1,491 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: Pyjoyment
|
|
3
|
+
Version: 0.3.0
|
|
4
|
+
Summary: Glue, run and ship Python applications. Zero dependencies.
|
|
5
|
+
Project-URL: Homepage, https://github.com/pyjoyment/Pyjoyment
|
|
6
|
+
Project-URL: Documentation, https://pyjoyment.readthedocs.io/
|
|
7
|
+
Project-URL: Source, https://github.com/pyjoyment/Pyjoyment
|
|
8
|
+
Project-URL: Issues, https://github.com/pyjoyment/Pyjoyment/issues
|
|
9
|
+
Project-URL: Changelog, https://github.com/pyjoyment/Pyjoyment/releases
|
|
10
|
+
Author-email: Piotr Roszatycki <piotr.roszatycki@gmail.com>
|
|
11
|
+
License-Expression: Artistic-2.0
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Keywords: asgi,async,asyncio,aws-lambda,framework,html,http,json-rpc,json-schema,mojo,mojolicious,pyjo,pyjoyment,tap,test,web,websocket,wsgi
|
|
14
|
+
Classifier: Development Status :: 3 - Alpha
|
|
15
|
+
Classifier: Environment :: Web Environment
|
|
16
|
+
Classifier: Framework :: AsyncIO
|
|
17
|
+
Classifier: Framework :: Pytest
|
|
18
|
+
Classifier: Intended Audience :: Developers
|
|
19
|
+
Classifier: Operating System :: OS Independent
|
|
20
|
+
Classifier: Programming Language :: Python :: 3
|
|
21
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
24
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
25
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
26
|
+
Classifier: Programming Language :: Python :: Free Threading :: 2 - Beta
|
|
27
|
+
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
28
|
+
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
29
|
+
Classifier: Topic :: File Formats :: JSON :: JSON Schema
|
|
30
|
+
Classifier: Topic :: Internet :: WWW/HTTP
|
|
31
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
32
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: HTTP Servers
|
|
33
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
|
|
34
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
|
|
35
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Server
|
|
36
|
+
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
|
|
37
|
+
Classifier: Topic :: Software Development :: Testing
|
|
38
|
+
Classifier: Topic :: Text Processing :: Markup :: HTML
|
|
39
|
+
Classifier: Typing :: Typed
|
|
40
|
+
Requires-Python: >=3.12
|
|
41
|
+
Description-Content-Type: text/markdown
|
|
42
|
+
|
|
43
|
+
[](https://github.com/pyjoyment/Pyjoyment)
|
|
44
|
+
[](https://github.com/pyjoyment/Pyjoyment)
|
|
45
|
+
[](https://pyjoyment.readthedocs.io/en/stable/)
|
|
46
|
+
[](https://deepwiki.com/pyjoyment/Pyjoyment)
|
|
47
|
+
[](https://github.com/pyjoyment/Pyjoyment/blob/main/LICENSE)
|
|
48
|
+
[](https://pypi.org/project/Pyjoyment/)
|
|
49
|
+
[](https://github.com/pyjoyment/Pyjoyment/actions/workflows/tests.yaml)
|
|
50
|
+
[](https://github.com/pyjoyment/Pyjoyment/actions/workflows/trunk-check.yaml)
|
|
51
|
+
|
|
52
|
+
# Pyjoyment
|
|
53
|
+
|
|
54
|
+
<p align="center">
|
|
55
|
+
<picture>
|
|
56
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/pyjoyment/Pyjoyment/main/Pyjoyment/resources/public/pyjo/logo-white-4x.png">
|
|
57
|
+
<img src="https://raw.githubusercontent.com/pyjoyment/Pyjoyment/main/Pyjoyment/resources/public/pyjo/logo-black-4x.png" alt="Pyjoyment" width="322">
|
|
58
|
+
</picture>
|
|
59
|
+
</p>
|
|
60
|
+
|
|
61
|
+
**Glue, run and ship Python applications. Zero dependencies.**
|
|
62
|
+
|
|
63
|
+
Pyjoyment is one environment for the whole life of a Python service: the
|
|
64
|
+
toolkit it is made of, the framework that puts its parts together with the
|
|
65
|
+
applications of other frameworks, the servers that run them, the files that
|
|
66
|
+
deploy them, and the clients that connect them to the services around them.
|
|
67
|
+
|
|
68
|
+
## Zero dependencies
|
|
69
|
+
|
|
70
|
+
Pyjoyment has no runtime dependencies. The HTTP and WebSocket server and
|
|
71
|
+
client, the event loop, the parsers of HTML, JSON, YAML, TOML and INI,
|
|
72
|
+
JSON Schema, the templates and the test harness are all in its package, on
|
|
73
|
+
top of the Python standard library. An application that installs Pyjoyment
|
|
74
|
+
adds one package to its supply chain, and nothing that the package would
|
|
75
|
+
pull in after it. Each release comes with the attestations of its build and an SBOM.
|
|
76
|
+
|
|
77
|
+
## Next to other frameworks
|
|
78
|
+
|
|
79
|
+
Pyjoyment does not compete with Flask, Django or FastAPI: it complements
|
|
80
|
+
them. It mounts their applications next to its own routes, on the same
|
|
81
|
+
server, glues them to other services, and runs and deploys them together.
|
|
82
|
+
|
|
83
|
+
## Foundation
|
|
84
|
+
|
|
85
|
+
`Pyjo` is the toolkit, which every other part is made of, and which works on
|
|
86
|
+
its own, without the framework:
|
|
87
|
+
|
|
88
|
+
- HTTP and WebSocket client and server, with TLS.
|
|
89
|
+
- Event loop with promises and `async`/`await`, with TCP, UDP and UNIX
|
|
90
|
+
domain sockets, timers and child processes.
|
|
91
|
+
- HTML/XML parser with CSS selectors.
|
|
92
|
+
- JSON with JSON Pointers and JSON Schema, from type hints and validated,
|
|
93
|
+
YAML, TOML and INI, all loaded and dumped.
|
|
94
|
+
- JSON-RPC 2.0, its server and its client, over HTTP or any other transport.
|
|
95
|
+
- Templates and template strings, with automatic escaping.
|
|
96
|
+
- Containers for URLs, paths, query strings, headers, cookies and HTTP
|
|
97
|
+
messages.
|
|
98
|
+
- Collections and lazy iterators, whose chains run with `for` and `async for`
|
|
99
|
+
alike.
|
|
100
|
+
- Command line options, event emitter, logger and utility functions.
|
|
101
|
+
- Test library and test harness.
|
|
102
|
+
|
|
103
|
+
A script uses the toolkit without a server: the user agent requests the HTML
|
|
104
|
+
specification, and the CSS selectors of its DOM pick the rows of the table of
|
|
105
|
+
the named character references, whose names and code points the script
|
|
106
|
+
prints, as `Aacute; U+000C1`.
|
|
107
|
+
|
|
108
|
+
The processing is concurrent. The request blocks here, as a script expects,
|
|
109
|
+
and the same request is non-blocking with `get_p`, whose promise is awaited
|
|
110
|
+
or chained, so that a script or an application runs many of them at once in
|
|
111
|
+
its event loop and processes each response as it comes. The DOM is searched
|
|
112
|
+
with `iterate`, a lazy chain, which passes the elements on one by one, so that
|
|
113
|
+
the first row is printed before the last one is picked:
|
|
114
|
+
|
|
115
|
+
```python
|
|
116
|
+
import Pyjo.UserAgent
|
|
117
|
+
|
|
118
|
+
from Pyjo.String.Unicode import u
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
# Extract named character references from HTML spec
|
|
122
|
+
tx = Pyjo.UserAgent.new().get('https://html.spec.whatwg.org')
|
|
123
|
+
for n in tx.res.dom().iterate('#named-character-references-table tbody > tr'):
|
|
124
|
+
u(n.at('td > code').text + ' ' + n.children('td')[1].text).trim().say()
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Event loop
|
|
128
|
+
|
|
129
|
+
The event loop of Pyjoyment is the one of asyncio by default, so the
|
|
130
|
+
coroutines and the tasks of the libraries of asyncio run in the same loop as
|
|
131
|
+
its servers and clients. A reactor is where the event loop is replaced, when
|
|
132
|
+
an application needs another I/O library: `Pyjo.Reactor.Poll` runs without
|
|
133
|
+
asyncio, on `select.poll`, and on `select.select` on Windows, with a standard
|
|
134
|
+
installation of Python and nothing else. On PyPy, whose JIT compiles it, it
|
|
135
|
+
serves requests as fast as the servers of Python whose event loop and HTTP
|
|
136
|
+
parser are compiled from C or Rust. A distribution of its own adds another
|
|
137
|
+
reactor, as `Pyjo.Reactor.Twisted`, which `PYJO_REACTOR` selects, with no
|
|
138
|
+
change of the application.
|
|
139
|
+
|
|
140
|
+
### Tests
|
|
141
|
+
|
|
142
|
+
`Pyjo.Test` is a library of assertions and `Pyjo.Prove` a harness for test
|
|
143
|
+
scripts that print the [Test Anything Protocol](https://testanything.org/)
|
|
144
|
+
(TAP), modelled on `Test::More` and `prove`, the standard ones of Perl, and
|
|
145
|
+
`Pyjo.Test.Pyjo` tests an application with its requests, without a server.
|
|
146
|
+
The framework itself is tested with them.
|
|
147
|
+
|
|
148
|
+
An application is tested with any test framework, as an assertion of
|
|
149
|
+
`Pyjo.Test` raises `AssertionError` once `raise_failures()` is called, and
|
|
150
|
+
pytest is integrated out of the box: Pyjoyment comes with a plugin of pytest,
|
|
151
|
+
which pytest loads where Pyjoyment is installed, and which runs the test
|
|
152
|
+
scripts of `Pyjo.Test` as tests of pytest, and gives the tests of pytest the
|
|
153
|
+
fixture `t`, the `Pyjo.Test.Pyjo` of the application.
|
|
154
|
+
|
|
155
|
+
## Composition
|
|
156
|
+
|
|
157
|
+
`Pyjoyment` is the framework: routes, controllers, the renderer with
|
|
158
|
+
templates and template strings, plugins, configuration in Python, JSON, YAML,
|
|
159
|
+
TOML and INI files, the commands, and `Pyjoyment.Lite`, where a single file
|
|
160
|
+
is a whole application:
|
|
161
|
+
|
|
162
|
+
```python
|
|
163
|
+
from Pyjoyment.Lite import *
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
get('/', {'text': 'I ♥ Pyjoyment!'})
|
|
167
|
+
|
|
168
|
+
app.start()
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
The applications of other frameworks are its components. The plugin `Mount`
|
|
172
|
+
puts each under a path or a host, next to the routes of the application, in
|
|
173
|
+
the same process and on the same server:
|
|
174
|
+
|
|
175
|
+
- WSGI applications, as those of Flask and Django;
|
|
176
|
+
- ASGI applications, as those of Starlette and FastAPI and the servers of the
|
|
177
|
+
MCP SDK, whose responses stream at the pace of the client, with their
|
|
178
|
+
WebSockets;
|
|
179
|
+
- FastCGI applications, as PHP on php-fpm, which it connects to;
|
|
180
|
+
- CGI programs, which it runs, as a web server does;
|
|
181
|
+
- event functions of AWS Lambda, which it runs in a process of their own, as
|
|
182
|
+
Lambda does;
|
|
183
|
+
- other applications of Pyjoyment.
|
|
184
|
+
|
|
185
|
+
```python
|
|
186
|
+
import Pyjo.App.Lambda
|
|
187
|
+
|
|
188
|
+
from Pyjo.File import curfile
|
|
189
|
+
from Pyjoyment.Lite import *
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
# The WSGI application of hello_wsgi.py, the ASGI application of hello_asgi.py and the event function of AWS Lambda of
|
|
193
|
+
# hello_lambda.py, next to this script, on one server, next to the routes of this application
|
|
194
|
+
plugin('Mount', {'/wsgi': 'hello_wsgi:app'})
|
|
195
|
+
plugin('Mount', {'/asgi': 'hello_asgi:app'})
|
|
196
|
+
plugin('Mount', {'/lambda': Pyjo.App.Lambda.new(function='hello_lambda.handler', task_root=curfile().dirname())})
|
|
197
|
+
|
|
198
|
+
get('/', {'text': 'I ♥ Pyjoyment!'})
|
|
199
|
+
|
|
200
|
+
app.start()
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## Both sides of the interface
|
|
204
|
+
|
|
205
|
+
Pyjoyment works in two roles for each interface that Python and the web
|
|
206
|
+
servers have: it hosts the applications of that interface, and it is one of
|
|
207
|
+
them, on the server of another.
|
|
208
|
+
|
|
209
|
+
| Interface | Pyjoyment hosts | Pyjoyment runs on |
|
|
210
|
+
| ---------- | ---------------------------------------------- | ------------------------------------------------ |
|
|
211
|
+
| WSGI | Flask, Django, any WSGI application | any WSGI server, as gunicorn |
|
|
212
|
+
| ASGI | Starlette, FastAPI, any ASGI application | any ASGI server, as uvicorn |
|
|
213
|
+
| FastCGI | PHP on php-fpm, any FastCGI application | a web server in front of it, as Caddy |
|
|
214
|
+
| CGI | CGI programs, as Python or PHP scripts | a web server that runs CGI programs |
|
|
215
|
+
| AWS Lambda | event functions, as the runtime of Lambda does | Lambda, as an event function or a custom runtime |
|
|
216
|
+
|
|
217
|
+
`Pyjo.HelloWorld`, the application that answers `Your Pyjo is working!`, on
|
|
218
|
+
uvicorn, as the ASGI application that `Pyjo.Server.ASGI` makes of it:
|
|
219
|
+
|
|
220
|
+
```python
|
|
221
|
+
import Pyjo.HelloWorld
|
|
222
|
+
import Pyjo.Server.ASGI
|
|
223
|
+
|
|
224
|
+
import uvicorn
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
app = Pyjo.Server.ASGI.new(app=Pyjo.HelloWorld.new()).to_asgi_app()
|
|
228
|
+
|
|
229
|
+
uvicorn.run(app, port=3000)
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
## Runtime
|
|
233
|
+
|
|
234
|
+
The servers of Pyjoyment run an application on its event loop, from one
|
|
235
|
+
process to many:
|
|
236
|
+
|
|
237
|
+
- `daemon`, the non-blocking HTTP and WebSocket server, with TLS;
|
|
238
|
+
- `prefork`, with worker processes, for Linux, macOS and other systems with
|
|
239
|
+
`fork`;
|
|
240
|
+
- `prethread`, with worker threads, for Windows, and for the free-threaded
|
|
241
|
+
build of Python anywhere;
|
|
242
|
+
- `pyjo-hot`, with worker processes and deployment without downtime, which
|
|
243
|
+
`HUP` starts, for systems with `fork`;
|
|
244
|
+
- `pyjo-reload`, for development, which restarts the server when a file
|
|
245
|
+
changes.
|
|
246
|
+
|
|
247
|
+
Each stops gracefully on `TERM`, finishing the requests in progress, and runs
|
|
248
|
+
the hooks of the application around its life, `before_server_start` and
|
|
249
|
+
`after_server_stop`, in each process and thread. The plugin `Health` answers
|
|
250
|
+
the probes of liveness, readiness and startup, whose readiness fails as soon as
|
|
251
|
+
the server starts to stop.
|
|
252
|
+
|
|
253
|
+
```console
|
|
254
|
+
$ pyjo-reload hello.py
|
|
255
|
+
Web application available at http://127.0.0.1:3000
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
## Deployment
|
|
259
|
+
|
|
260
|
+
The commands of an application write what deploys it:
|
|
261
|
+
|
|
262
|
+
```sh
|
|
263
|
+
./myapp.py generate pyproject # the project, for uv
|
|
264
|
+
./myapp.py generate dockerfile # the image of a container
|
|
265
|
+
./myapp.py generate kubernetes # the manifests of Kubernetes, with Kustomize
|
|
266
|
+
./myapp.py generate lambda-zip # the ZIP files of an event function of AWS Lambda
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
The server listens on the port of `PORT`, as Knative, Cloud Run, Render,
|
|
270
|
+
Koyeb and Heroku set it, and stops gracefully on the `TERM` of its container.
|
|
271
|
+
On AWS Lambda, an application is an event function, which answers the events
|
|
272
|
+
of API Gateway, Function URLs and Application Load Balancers:
|
|
273
|
+
|
|
274
|
+
```python
|
|
275
|
+
import Pyjo.HelloWorld
|
|
276
|
+
import Pyjo.Server.Lambda
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
# The handler "hello_world_lambda.handler" of an event function of AWS Lambda
|
|
280
|
+
handler = Pyjo.Server.Lambda.new(app=Pyjo.HelloWorld.new()).to_lambda_app()
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
On a custom runtime, as `provided.al2023`, its `bootstrap` runs it with the
|
|
284
|
+
runtime client of Pyjoyment:
|
|
285
|
+
|
|
286
|
+
```sh
|
|
287
|
+
#!/bin/sh
|
|
288
|
+
# The bootstrap of a custom runtime of AWS Lambda, as provided.al2023, which runs the handler of the function, as
|
|
289
|
+
# "hello_world_lambda.handler" of _HANDLER, with the runtime client of Pyjoyment
|
|
290
|
+
exec python3 -m Pyjo.Server.Lambda
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
The public layers of
|
|
294
|
+
[Pyjoyment-Lambda-Layers](https://github.com/pyjoyment/Pyjoyment-Lambda-Layers)
|
|
295
|
+
bring Python, of any version, and Pyjoyment to such a function, which carries
|
|
296
|
+
its application only, as `generate lambda-zip --function-only` writes it.
|
|
297
|
+
|
|
298
|
+
## Integration
|
|
299
|
+
|
|
300
|
+
An application talks to the services around it from the same event loop that
|
|
301
|
+
serves its requests, without blocking it:
|
|
302
|
+
|
|
303
|
+
- the user agent of HTTP and WebSocket, with promises and `async`/`await`;
|
|
304
|
+
- the client of JSON-RPC 2.0;
|
|
305
|
+
- event functions of AWS Lambda, which it runs as the runtime of Lambda does,
|
|
306
|
+
as components of the application;
|
|
307
|
+
- the libraries of asyncio, as the asynchronous AWS SDK, whose coroutines run
|
|
308
|
+
in the same event loop.
|
|
309
|
+
|
|
310
|
+
A page of the application opens a WebSocket to it and sends it a URL, which
|
|
311
|
+
the application requests with its user agent, without blocking the other
|
|
312
|
+
connections, and sends back the title of the page. The template of the page is
|
|
313
|
+
in the docstring of the script, after the line `__DATA__`:
|
|
314
|
+
|
|
315
|
+
```python
|
|
316
|
+
"""
|
|
317
|
+
__DATA__
|
|
318
|
+
|
|
319
|
+
@@ index.html.ep
|
|
320
|
+
% url = url_for('title')
|
|
321
|
+
<script>
|
|
322
|
+
const ws = new WebSocket('<%= url.to_abs() %>');
|
|
323
|
+
ws.onmessage = function (event) { document.body.innerHTML += event.data };
|
|
324
|
+
ws.onopen = function (event) { ws.send('https://mojolicious.org') };
|
|
325
|
+
</script>
|
|
326
|
+
"""
|
|
327
|
+
|
|
328
|
+
from Pyjoyment.Lite import *
|
|
329
|
+
|
|
330
|
+
|
|
331
|
+
# Render template "index.html.ep" from the DATA section
|
|
332
|
+
@get('/')
|
|
333
|
+
def index(c):
|
|
334
|
+
c.render(template='index')
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
# WebSocket service used by the template to extract the title from a website
|
|
338
|
+
@websocket('/title')
|
|
339
|
+
def title(c):
|
|
340
|
+
@c.on('message')
|
|
341
|
+
def message(c, msg):
|
|
342
|
+
c.ua().get_p(msg).then(lambda tx: c.send(tx.result.dom().at('title').text))
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
app.start()
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
### Model Context Protocol
|
|
349
|
+
|
|
350
|
+
[Pyjo-MCP](https://pyjoyment.readthedocs.io/projects/pyjo-mcp/en/stable/) is
|
|
351
|
+
the [Model Context Protocol](https://modelcontextprotocol.io) made of the
|
|
352
|
+
parts of Pyjoyment: its server is a route of an application, whose tools,
|
|
353
|
+
prompts and resources are functions with the schemas of their type hints, its
|
|
354
|
+
client is the user agent, and `Pyjo.MCP.Test` tests a server with the
|
|
355
|
+
requests of the client, without starting it. It depends on Pyjoyment and on
|
|
356
|
+
nothing else:
|
|
357
|
+
|
|
358
|
+
```sh
|
|
359
|
+
pip install Pyjo-MCP
|
|
360
|
+
```
|
|
361
|
+
|
|
362
|
+
## Interoperability
|
|
363
|
+
|
|
364
|
+
The tests of Pyjoyment run it with the software on the other side of each
|
|
365
|
+
interface:
|
|
366
|
+
|
|
367
|
+
- **WSGI:** on Gunicorn, uWSGI, Waitress and Werkzeug, and Flask mounted in
|
|
368
|
+
Pyjoyment.
|
|
369
|
+
- **ASGI:** on uvicorn and Hypercorn, both on asyncio and on uvloop, on Daphne
|
|
370
|
+
and on Granian, and Starlette and the servers of the MCP SDK mounted in
|
|
371
|
+
Pyjoyment.
|
|
372
|
+
- **FastCGI:** behind Caddy, and PHP on php-fpm mounted in Pyjoyment.
|
|
373
|
+
- **CGI**, for the legacy applications: on the CGI server of `http.server`
|
|
374
|
+
and on uWSGI, and the CGI scripts of Python and of PHP on php-cgi mounted in
|
|
375
|
+
Pyjoyment.
|
|
376
|
+
- **AWS Lambda:** on the images of Lambda for Python and on the custom runtime
|
|
377
|
+
`provided.al2023`, with the emulator of the Runtime API, and Starlette on
|
|
378
|
+
Mangum as an event function that Pyjoyment runs.
|
|
379
|
+
- **Containers:** the image of `generate dockerfile` on Docker, and the
|
|
380
|
+
manifests of `generate kubernetes` on a cluster of kind.
|
|
381
|
+
- **Event loops:** asyncio, the loop of `Pyjo.Reactor.Poll`, and Twisted,
|
|
382
|
+
whose reactor passes the whole test suite of Pyjoyment.
|
|
383
|
+
- **Libraries:** pytest, with pytest-xdist, the asynchronous AWS SDK on the
|
|
384
|
+
event loop of the server, and the JSON Schemas of pydantic next to those of
|
|
385
|
+
the type hints of `Pyjo.JSON.Schema`.
|
|
386
|
+
|
|
387
|
+
Inside the application, the classes of `Pyjo` take the types of the Python
|
|
388
|
+
standard library and turn back into them, so that the code around Pyjoyment
|
|
389
|
+
needs no adapters:
|
|
390
|
+
|
|
391
|
+
- `Pyjo.URL` from and to the `SplitResult` of `urllib.parse`;
|
|
392
|
+
- `Pyjo.Date` from and to `datetime`, and `float(date)` is the epoch;
|
|
393
|
+
- `Pyjo.File` is a path-like object, and `to_path()` is a `pathlib.Path`;
|
|
394
|
+
- `Pyjo.Headers` from and to the `Message` of `email.message`;
|
|
395
|
+
- the requests and the responses of HTTP from and to those of
|
|
396
|
+
`urllib.request` and `http.client`;
|
|
397
|
+
- the cookies from the `Morsel` of `http.cookies`;
|
|
398
|
+
- `Pyjo.Collection` is a `list`, `Pyjo.String.Unicode` a `str`, and a promise
|
|
399
|
+
is awaited in a coroutine of asyncio.
|
|
400
|
+
|
|
401
|
+
The text files that Pyjoyment reads are Unicode, not only UTF-8: a byte order
|
|
402
|
+
mark of UTF-8, UTF-16 or UTF-32, as Windows PowerShell and the editors of
|
|
403
|
+
Windows write it, gives the encoding of a configuration file, a template or a
|
|
404
|
+
document of JSON or YAML, so that a file made on Windows loads as it is.
|
|
405
|
+
|
|
406
|
+
## Installation
|
|
407
|
+
|
|
408
|
+
Pyjoyment is installed from [PyPI](https://pypi.org/project/Pyjoyment/):
|
|
409
|
+
|
|
410
|
+
```sh
|
|
411
|
+
pip install Pyjoyment
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
or, in a project managed with [uv](https://docs.astral.sh/uv/):
|
|
415
|
+
|
|
416
|
+
```sh
|
|
417
|
+
uv add Pyjoyment
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
A new project or script comes from its generator, which uv runs without
|
|
421
|
+
installing Pyjoyment first:
|
|
422
|
+
|
|
423
|
+
```sh
|
|
424
|
+
uvx --from Pyjoyment pyjo generate app MyApp
|
|
425
|
+
uvx --from Pyjoyment pyjo generate lite-app myapp.py
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
The skills for coding agents that write applications with Pyjoyment are a
|
|
429
|
+
plugin of [Claude Code](https://code.claude.com/docs/en/plugins), whose
|
|
430
|
+
`SKILL.md` files other agents read too:
|
|
431
|
+
|
|
432
|
+
```text
|
|
433
|
+
/plugin install pyjoyment --marketplace pyjoyment/Pyjoyment
|
|
434
|
+
```
|
|
435
|
+
|
|
436
|
+
or from the shell, as the extensions of the editors have no `/plugin`:
|
|
437
|
+
|
|
438
|
+
```sh
|
|
439
|
+
claude plugin install pyjoyment --marketplace pyjoyment/Pyjoyment
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
## Status
|
|
443
|
+
|
|
444
|
+
Pyjoyment is an evolution of [Mojolicious](https://mojolicious.org), the
|
|
445
|
+
real-time web framework for Perl. It keeps the API of Mojolicious with Python
|
|
446
|
+
names, so its documentation and experience carry over, and the tests of
|
|
447
|
+
Mojolicious, ported with each module, are the specification that the code
|
|
448
|
+
follows. A ported module names the Mojolicious version it was ported from in
|
|
449
|
+
its documentation.
|
|
450
|
+
|
|
451
|
+
Pyjoyment requires Python 3.12 or newer and runs on PyPy on a best-effort
|
|
452
|
+
basis. It runs on Linux, macOS and Windows. On Windows, Python has no
|
|
453
|
+
`os.fork` and no UNIX domain sockets, so `Pyjo.Server.Prefork`,
|
|
454
|
+
`Pyjo.Server.Hot`, `Pyjo.Server.Reload` and `Pyjo.IOLoop.Subprocess` do not
|
|
455
|
+
run there, and `Pyjo.Server.Prethread` runs the workers in threads instead.
|
|
456
|
+
The event loop watches up to 512 sockets there, with the `select` of Windows,
|
|
457
|
+
and a server stops with Ctrl-C, gracefully, or with Ctrl-Break, immediately.
|
|
458
|
+
|
|
459
|
+
## Distributions
|
|
460
|
+
|
|
461
|
+
What needs another library, or follows a specification that is revised more
|
|
462
|
+
often than Pyjoyment is released, is a distribution of its own, which adds a
|
|
463
|
+
module to a namespace of Pyjoyment, as `Pyjo.Reactor` for a reactor,
|
|
464
|
+
`Pyjoyment.Plugin` for a plugin or `Pyjo` for a protocol.
|
|
465
|
+
|
|
466
|
+
- [Pyjo.AWS - Amazon Web Services for Pyjoyment](https://github.com/pyjoyment/Pyjo-AWS)
|
|
467
|
+
- [Pyjo.GCP - Google Cloud for Pyjoyment](https://github.com/pyjoyment/Pyjo-GCP)
|
|
468
|
+
- [Pyjo.MCP - Model Context Protocol for Pyjoyment](https://github.com/pyjoyment/Pyjo-MCP)
|
|
469
|
+
- [Pyjo.Reactor.Gevent - Low-level event reactor on gevent](https://github.com/pyjoyment/Pyjo-Reactor-Gevent)
|
|
470
|
+
- [Pyjo.Reactor.Trio - Low-level event reactor on Trio](https://github.com/pyjoyment/Pyjo-Reactor-Trio)
|
|
471
|
+
- [Pyjo.Reactor.Twisted - Low-level event reactor with Twisted support](https://github.com/pyjoyment/Pyjo-Reactor-Twisted)
|
|
472
|
+
- [Pyjo.Reactor.Uvloop - Low-level event reactor on uvloop](https://github.com/pyjoyment/Pyjo-Reactor-Uvloop)
|
|
473
|
+
- [Pyjo.Reactor.Winloop - Low-level event reactor on Winloop](https://github.com/pyjoyment/Pyjo-Reactor-Winloop)
|
|
474
|
+
|
|
475
|
+
## Documentation
|
|
476
|
+
|
|
477
|
+
The documentation is on [Read the Docs](https://pyjoyment.readthedocs.io/).
|
|
478
|
+
|
|
479
|
+
## Copyright and license
|
|
480
|
+
|
|
481
|
+
Copyright (C) 2014-2026, Piotr Roszatycki.
|
|
482
|
+
|
|
483
|
+
Based on Mojolicious: Copyright (C) 2008-2025, Sebastian Riedel and others.
|
|
484
|
+
|
|
485
|
+
This program is free software, you can redistribute it and/or modify it under
|
|
486
|
+
the terms of the Artistic License version 2.0.
|
|
487
|
+
|
|
488
|
+
The pages of errors bundle [Bootstrap](https://getbootstrap.com), with
|
|
489
|
+
Popper, under the MIT License, and [highlight.js](https://highlightjs.org)
|
|
490
|
+
under the BSD 3-Clause License, whose texts are next to them in
|
|
491
|
+
`Pyjoyment/resources/public/pyjo`.
|