Pyjoyment 0.1.0__tar.gz → 0.2.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.2.0/PKG-INFO +480 -0
- pyjoyment-0.2.0/Pyjo/App/Lambda.py +988 -0
- pyjoyment-0.2.0/Pyjo/Asset/File.py +377 -0
- pyjoyment-0.2.0/Pyjo/Asset/Memory.py +235 -0
- pyjoyment-0.2.0/Pyjo/Collection.py +606 -0
- pyjoyment-0.2.0/Pyjo/DOM/CSS.py +1067 -0
- pyjoyment-0.2.0/Pyjo/DOM/__init__.py +1369 -0
- pyjoyment-0.2.0/Pyjo/EventEmitter.py +529 -0
- pyjoyment-0.2.0/Pyjo/File.py +960 -0
- pyjoyment-0.2.0/Pyjo/GetOpt.py +614 -0
- pyjoyment-0.2.0/Pyjo/INI.py +379 -0
- pyjoyment-0.2.0/Pyjo/IOLoop/Datagram.py +989 -0
- pyjoyment-0.2.0/Pyjo/IOLoop/Messages.py +669 -0
- pyjoyment-0.2.0/Pyjo/IOLoop/Stream.py +651 -0
- pyjoyment-0.2.0/Pyjo/Iterator.py +628 -0
- pyjoyment-0.2.0/Pyjo/Log.py +767 -0
- pyjoyment-0.2.0/Pyjo/Message/Request.py +722 -0
- pyjoyment-0.2.0/Pyjo/Message/__init__.py +830 -0
- pyjoyment-0.2.0/Pyjo/Promise.py +907 -0
- pyjoyment-0.2.0/Pyjo/Server/ASGI.py +486 -0
- pyjoyment-0.2.0/Pyjo/Server/CGI.py +261 -0
- pyjoyment-0.2.0/Pyjo/Server/Lambda.py +641 -0
- pyjoyment-0.2.0/Pyjo/Server/Reload/__init__.py +483 -0
- pyjoyment-0.2.0/Pyjo/Server/WSGI.py +350 -0
- pyjoyment-0.2.0/Pyjo/String/Bytes.py +619 -0
- pyjoyment-0.2.0/Pyjo/String/Unicode.py +640 -0
- pyjoyment-0.2.0/Pyjo/Test/__init__.py +1290 -0
- pyjoyment-0.2.0/Pyjo/URL/Template.py +459 -0
- pyjoyment-0.2.0/Pyjo/Util.py +3675 -0
- pyjoyment-0.2.0/Pyjo/YAML.py +1169 -0
- pyjoyment-0.2.0/Pyjo/__init__.py +459 -0
- pyjoyment-0.2.0/Pyjoyment/Command/Author/generate/app.py +299 -0
- pyjoyment-0.2.0/Pyjoyment/Command/Author/generate/lambda_zip.py +412 -0
- pyjoyment-0.2.0/Pyjoyment/Command/Author/generate/plugin.py +267 -0
- pyjoyment-0.2.0/Pyjoyment/Command/Author/inflate.py +101 -0
- pyjoyment-0.2.0/Pyjoyment/Command/__init__.py +334 -0
- pyjoyment-0.2.0/Pyjoyment/Command/asgi.py +92 -0
- pyjoyment-0.2.0/Pyjoyment/Command/cgi.py +90 -0
- pyjoyment-0.2.0/Pyjoyment/Command/daemon.py +161 -0
- pyjoyment-0.2.0/Pyjoyment/Command/eval.py +128 -0
- pyjoyment-0.2.0/Pyjoyment/Command/fastcgi.py +99 -0
- pyjoyment-0.2.0/Pyjoyment/Command/get.py +306 -0
- pyjoyment-0.2.0/Pyjoyment/Command/lambda.py +117 -0
- pyjoyment-0.2.0/Pyjoyment/Command/prefork.py +182 -0
- pyjoyment-0.2.0/Pyjoyment/Command/prethread.py +127 -0
- pyjoyment-0.2.0/Pyjoyment/Command/routes.py +133 -0
- pyjoyment-0.2.0/Pyjoyment/Command/stdio.py +92 -0
- pyjoyment-0.2.0/Pyjoyment/Command/wsgi.py +93 -0
- pyjoyment-0.2.0/Pyjoyment/Commands.py +546 -0
- pyjoyment-0.2.0/Pyjoyment/Controller.py +1305 -0
- pyjoyment-0.2.0/Pyjoyment/Plugin/INIConfig.py +164 -0
- pyjoyment-0.2.0/Pyjoyment/Plugins.py +218 -0
- pyjoyment-0.2.0/Pyjoyment/resources/templates/pyjo/debug.html.ep +346 -0
- pyjoyment-0.2.0/README.md +438 -0
- pyjoyment-0.2.0/docs/api/Pyjo_INI.rst +2 -0
- pyjoyment-0.2.0/docs/api/Pyjo_Iterator.rst +3 -0
- pyjoyment-0.2.0/docs/api/Pyjoyment_Plugin_INIConfig.rst +2 -0
- pyjoyment-0.2.0/docs/conf.py +138 -0
- pyjoyment-0.2.0/docs/distributions.rst +45 -0
- pyjoyment-0.2.0/docs/examples.rst +253 -0
- pyjoyment-0.2.0/docs/guides/contributing.rst +186 -0
- pyjoyment-0.2.0/docs/guides/cookbook.rst +2632 -0
- pyjoyment-0.2.0/docs/guides/faq.rst +345 -0
- pyjoyment-0.2.0/docs/guides/growing.rst +623 -0
- pyjoyment-0.2.0/docs/guides/index.rst +417 -0
- pyjoyment-0.2.0/docs/guides/tutorial/user_agent.py +35 -0
- pyjoyment-0.2.0/docs/index.rst +19 -0
- pyjoyment-0.2.0/docs/installation.rst +26 -0
- pyjoyment-0.2.0/docs/intro.rst +281 -0
- pyjoyment-0.2.0/docs/status.rst +17 -0
- pyjoyment-0.2.0/examples/lambda/README.md +113 -0
- pyjoyment-0.2.0/examples/lambda/alb.tf +81 -0
- pyjoyment-0.2.0/examples/lambda/function/app.py +82 -0
- pyjoyment-0.2.0/examples/lambda/function.tf +83 -0
- pyjoyment-0.2.0/examples/lambda/layers.tf +15 -0
- pyjoyment-0.2.0/examples/lambda/network.tf +25 -0
- pyjoyment-0.2.0/examples/lambda/outputs.tf +26 -0
- pyjoyment-0.2.0/examples/lambda/variables.tf +50 -0
- pyjoyment-0.2.0/examples/lambda/versions.tf +27 -0
- pyjoyment-0.2.0/examples/lambda_stream/README.md +94 -0
- pyjoyment-0.2.0/examples/lambda_stream/function.tf +91 -0
- pyjoyment-0.2.0/examples/lambda_stream/layers.tf +15 -0
- pyjoyment-0.2.0/examples/lambda_stream/variables.tf +29 -0
- pyjoyment-0.2.0/examples/lambda_stream/versions.tf +27 -0
- pyjoyment-0.2.0/examples/lambda_zip/README.md +95 -0
- pyjoyment-0.2.0/examples/lambda_zip/function.tf +105 -0
- pyjoyment-0.2.0/examples/lambda_zip/layers.tf +15 -0
- pyjoyment-0.2.0/examples/lambda_zip/variables.tf +51 -0
- pyjoyment-0.2.0/examples/lambda_zip/versions.tf +27 -0
- pyjoyment-0.2.0/examples/mount/compose.py +15 -0
- pyjoyment-0.2.0/examples/pyjo/url.pl +10 -0
- pyjoyment-0.2.0/examples/pyjo/url.py +10 -0
- pyjoyment-0.2.0/examples/ua/entities.py +9 -0
- pyjoyment-0.2.0/pyjoyment-0.2.0.spdx.json +1 -0
- pyjoyment-0.2.0/pyproject.toml +419 -0
- pyjoyment-0.2.0/t/Pyjo/DOM.py +3354 -0
- pyjoyment-0.2.0/t/Pyjo/GetOpt.py +344 -0
- pyjoyment-0.2.0/t/Pyjo/INI.py +287 -0
- pyjoyment-0.2.0/t/Pyjo/Iterator.py +303 -0
- pyjoyment-0.2.0/t/Pyjo/Log.py +393 -0
- pyjoyment-0.2.0/t/Pyjo/String.py +218 -0
- pyjoyment-0.2.0/t/Pyjo/Test.py +618 -0
- pyjoyment-0.2.0/t/Pyjo/URL_Template.py +356 -0
- pyjoyment-0.2.0/t/Pyjo/UserAgent_online.py +285 -0
- pyjoyment-0.2.0/t/Pyjo/Util.py +966 -0
- pyjoyment-0.2.0/t/Pyjo/ojo.py +154 -0
- pyjoyment-0.2.0/t/Pyjoyment/Command.py +120 -0
- pyjoyment-0.2.0/t/Pyjoyment/Commands.py +1015 -0
- pyjoyment-0.2.0/t/Pyjoyment/ini_config_lite_app.ini +9 -0
- pyjoyment-0.2.0/t/Pyjoyment/ini_config_lite_app.py +102 -0
- pyjoyment-0.2.0/t/Pyjoyment/ini_config_lite_app_abs.development.ini +1 -0
- pyjoyment-0.2.0/t/Pyjoyment/ini_config_lite_app_abs.ini +1 -0
- pyjoyment-0.2.0/t/docs/Collection.py +246 -0
- pyjoyment-0.2.0/t/docs/DOM.py +614 -0
- pyjoyment-0.2.0/t/docs/DOM_CSS.py +270 -0
- pyjoyment-0.2.0/t/docs/EventEmitter.py +213 -0
- pyjoyment-0.2.0/t/docs/INI.py +85 -0
- pyjoyment-0.2.0/t/docs/IOLoop_Datagram.py +309 -0
- pyjoyment-0.2.0/t/docs/IOLoop_Messages.py +265 -0
- pyjoyment-0.2.0/t/docs/IOLoop_Stream.py +264 -0
- pyjoyment-0.2.0/t/docs/Iterator.py +201 -0
- pyjoyment-0.2.0/t/docs/Pyjo_init.py +293 -0
- pyjoyment-0.2.0/t/docs/Pyjoyment_Plugin_INIConfig.py +96 -0
- pyjoyment-0.2.0/t/docs/Test.py +707 -0
- pyjoyment-0.2.0/t/docs/Test_Pyjo.py +914 -0
- pyjoyment-0.2.0/t/docs/URL_Template.py +110 -0
- pyjoyment-0.2.0/t/docs/guides_cookbook.py +1063 -0
- pyjoyment-0.2.0/t/docs/guides_tutorial.py +325 -0
- pyjoyment-0.2.0/t/examples/mount/compose.py +37 -0
- pyjoyment-0.2.0/t/examples/pyjo/url.py +20 -0
- pyjoyment-0.2.0/t/lib/FakeUV.py +86 -0
- pyjoyment-0.2.0/t/servers/HelloWorld.py +46 -0
- pyjoyment-0.2.0/t/servers/INI_botocore.py +63 -0
- pyjoyment-0.2.0/t/servers/Mount.py +640 -0
- pyjoyment-0.2.0/t/stdlib/IOLoop_Client.py +229 -0
- pyjoyment-0.1.0/PKG-INFO +0 -376
- pyjoyment-0.1.0/Pyjo/App/Lambda.py +0 -987
- pyjoyment-0.1.0/Pyjo/Asset/File.py +0 -377
- pyjoyment-0.1.0/Pyjo/Asset/Memory.py +0 -235
- pyjoyment-0.1.0/Pyjo/Collection.py +0 -570
- pyjoyment-0.1.0/Pyjo/DOM/CSS.py +0 -1019
- pyjoyment-0.1.0/Pyjo/DOM/__init__.py +0 -1329
- pyjoyment-0.1.0/Pyjo/EventEmitter.py +0 -522
- pyjoyment-0.1.0/Pyjo/File.py +0 -959
- pyjoyment-0.1.0/Pyjo/GetOpt.py +0 -605
- pyjoyment-0.1.0/Pyjo/IOLoop/Datagram.py +0 -982
- pyjoyment-0.1.0/Pyjo/IOLoop/Messages.py +0 -664
- pyjoyment-0.1.0/Pyjo/IOLoop/Stream.py +0 -644
- pyjoyment-0.1.0/Pyjo/Log.py +0 -723
- pyjoyment-0.1.0/Pyjo/Message/Request.py +0 -725
- pyjoyment-0.1.0/Pyjo/Message/__init__.py +0 -830
- pyjoyment-0.1.0/Pyjo/Promise.py +0 -894
- pyjoyment-0.1.0/Pyjo/Server/ASGI.py +0 -486
- pyjoyment-0.1.0/Pyjo/Server/CGI.py +0 -259
- pyjoyment-0.1.0/Pyjo/Server/Lambda.py +0 -641
- pyjoyment-0.1.0/Pyjo/Server/Reload/__init__.py +0 -482
- pyjoyment-0.1.0/Pyjo/Server/WSGI.py +0 -349
- pyjoyment-0.1.0/Pyjo/String/Bytes.py +0 -532
- pyjoyment-0.1.0/Pyjo/String/Unicode.py +0 -553
- pyjoyment-0.1.0/Pyjo/Test/__init__.py +0 -1233
- pyjoyment-0.1.0/Pyjo/URL/Template.py +0 -459
- pyjoyment-0.1.0/Pyjo/Util.py +0 -3567
- pyjoyment-0.1.0/Pyjo/YAML.py +0 -1167
- pyjoyment-0.1.0/Pyjo/__init__.py +0 -441
- pyjoyment-0.1.0/Pyjoyment/Command/Author/generate/app.py +0 -299
- pyjoyment-0.1.0/Pyjoyment/Command/Author/generate/lambda_zip.py +0 -372
- pyjoyment-0.1.0/Pyjoyment/Command/Author/generate/plugin.py +0 -267
- pyjoyment-0.1.0/Pyjoyment/Command/Author/inflate.py +0 -101
- pyjoyment-0.1.0/Pyjoyment/Command/__init__.py +0 -332
- pyjoyment-0.1.0/Pyjoyment/Command/asgi.py +0 -92
- pyjoyment-0.1.0/Pyjoyment/Command/cgi.py +0 -90
- pyjoyment-0.1.0/Pyjoyment/Command/daemon.py +0 -160
- pyjoyment-0.1.0/Pyjoyment/Command/eval.py +0 -128
- pyjoyment-0.1.0/Pyjoyment/Command/fastcgi.py +0 -99
- pyjoyment-0.1.0/Pyjoyment/Command/get.py +0 -305
- pyjoyment-0.1.0/Pyjoyment/Command/lambda.py +0 -117
- pyjoyment-0.1.0/Pyjoyment/Command/prefork.py +0 -181
- pyjoyment-0.1.0/Pyjoyment/Command/prethread.py +0 -126
- pyjoyment-0.1.0/Pyjoyment/Command/routes.py +0 -133
- pyjoyment-0.1.0/Pyjoyment/Command/stdio.py +0 -92
- pyjoyment-0.1.0/Pyjoyment/Command/wsgi.py +0 -93
- pyjoyment-0.1.0/Pyjoyment/Commands.py +0 -546
- pyjoyment-0.1.0/Pyjoyment/Controller.py +0 -1307
- pyjoyment-0.1.0/Pyjoyment/Plugins.py +0 -215
- pyjoyment-0.1.0/Pyjoyment/resources/templates/pyjo/debug.html.ep +0 -346
- pyjoyment-0.1.0/README.md +0 -334
- pyjoyment-0.1.0/docs/conf.py +0 -138
- pyjoyment-0.1.0/docs/distributions.rst +0 -34
- pyjoyment-0.1.0/docs/examples.rst +0 -219
- pyjoyment-0.1.0/docs/guides/contributing.rst +0 -186
- pyjoyment-0.1.0/docs/guides/cookbook.rst +0 -2602
- pyjoyment-0.1.0/docs/guides/faq.rst +0 -344
- pyjoyment-0.1.0/docs/guides/growing.rst +0 -623
- pyjoyment-0.1.0/docs/guides/index.rst +0 -414
- pyjoyment-0.1.0/docs/guides/tutorial/user_agent.py +0 -35
- pyjoyment-0.1.0/docs/index.rst +0 -20
- pyjoyment-0.1.0/docs/installation.rst +0 -21
- pyjoyment-0.1.0/docs/intro.rst +0 -53
- pyjoyment-0.1.0/docs/status.rst +0 -22
- pyjoyment-0.1.0/examples/lambda/README.md +0 -94
- pyjoyment-0.1.0/examples/lambda/alb.tf +0 -67
- pyjoyment-0.1.0/examples/lambda/function/app.py +0 -71
- pyjoyment-0.1.0/examples/lambda/function.tf +0 -73
- pyjoyment-0.1.0/examples/lambda/network.tf +0 -21
- pyjoyment-0.1.0/examples/lambda/outputs.tf +0 -26
- pyjoyment-0.1.0/examples/lambda/variables.tf +0 -44
- pyjoyment-0.1.0/examples/lambda/versions.tf +0 -23
- pyjoyment-0.1.0/examples/lambda_stream/README.md +0 -75
- pyjoyment-0.1.0/examples/lambda_stream/function.tf +0 -81
- pyjoyment-0.1.0/examples/lambda_stream/variables.tf +0 -23
- pyjoyment-0.1.0/examples/lambda_stream/versions.tf +0 -23
- pyjoyment-0.1.0/examples/lambda_zip/README.md +0 -73
- pyjoyment-0.1.0/examples/lambda_zip/function.tf +0 -84
- pyjoyment-0.1.0/examples/lambda_zip/variables.tf +0 -39
- pyjoyment-0.1.0/examples/lambda_zip/versions.tf +0 -23
- pyjoyment-0.1.0/examples/pyjo/url.pl +0 -10
- pyjoyment-0.1.0/examples/pyjo/url.py +0 -10
- pyjoyment-0.1.0/examples/ua/entities.py +0 -9
- pyjoyment-0.1.0/pyjoyment-0.1.0.spdx.json +0 -1
- pyjoyment-0.1.0/pyproject.toml +0 -416
- pyjoyment-0.1.0/t/Pyjo/DOM.py +0 -3311
- pyjoyment-0.1.0/t/Pyjo/GetOpt.py +0 -339
- pyjoyment-0.1.0/t/Pyjo/Log.py +0 -371
- pyjoyment-0.1.0/t/Pyjo/String.py +0 -178
- pyjoyment-0.1.0/t/Pyjo/Test.py +0 -513
- pyjoyment-0.1.0/t/Pyjo/URL_Template.py +0 -356
- pyjoyment-0.1.0/t/Pyjo/UserAgent_online.py +0 -250
- pyjoyment-0.1.0/t/Pyjo/Util.py +0 -902
- pyjoyment-0.1.0/t/Pyjo/ojo.py +0 -150
- pyjoyment-0.1.0/t/Pyjoyment/Command.py +0 -105
- pyjoyment-0.1.0/t/Pyjoyment/Commands.py +0 -932
- pyjoyment-0.1.0/t/docs/Collection.py +0 -206
- pyjoyment-0.1.0/t/docs/DOM.py +0 -594
- pyjoyment-0.1.0/t/docs/DOM_CSS.py +0 -264
- pyjoyment-0.1.0/t/docs/EventEmitter.py +0 -201
- pyjoyment-0.1.0/t/docs/IOLoop_Datagram.py +0 -287
- pyjoyment-0.1.0/t/docs/IOLoop_Messages.py +0 -248
- pyjoyment-0.1.0/t/docs/IOLoop_Stream.py +0 -249
- pyjoyment-0.1.0/t/docs/Pyjo_init.py +0 -284
- pyjoyment-0.1.0/t/docs/Test.py +0 -673
- pyjoyment-0.1.0/t/docs/Test_Pyjo.py +0 -909
- pyjoyment-0.1.0/t/docs/URL_Template.py +0 -110
- pyjoyment-0.1.0/t/docs/guides_cookbook.py +0 -1063
- pyjoyment-0.1.0/t/docs/guides_tutorial.py +0 -321
- pyjoyment-0.1.0/t/examples/pyjo/url.py +0 -20
- pyjoyment-0.1.0/t/lib/FakeUV.py +0 -85
- pyjoyment-0.1.0/t/servers/HelloWorld.py +0 -46
- pyjoyment-0.1.0/t/servers/Mount.py +0 -635
- pyjoyment-0.1.0/t/stdlib/IOLoop_Client.py +0 -229
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/.gitignore +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/.proverc +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/LICENSE +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/App/ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/App/CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/App/FastCGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/App/WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/App/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Asset/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Base.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Cache.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Content/MultiPart.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Content/Single.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Content/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Cookie/Request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Cookie/Response.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Cookie/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/DOM/HTML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Date.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Exception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Headers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/HelloWorld.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Home.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/ChildProcess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/Client.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/Stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/Subprocess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/certs/README.md +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/certs/ca.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/certs/server.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/IOLoop/certs/server.key +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/JSON/Pointer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/JSON/RPC.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/JSON/Schema.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/JSON/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Loader.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Message/Response.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Parameters.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Path.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Prove.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Reactor/Asyncio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Reactor/Poll.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Reactor/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/SSE.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Daemon.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/FastCGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Hot/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Hot/__main__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Prefork.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Prethread.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Reload/Backend/Poll.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Reload/Backend/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Reload/__main__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/Stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Server/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/String/HTML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/String/Mixin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/String/Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/String/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/TOML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Test/Pyjo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Test/pytest_plugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Transaction/HTTP.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Transaction/WebSocket.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Transaction/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/URL/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/Upload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/UserAgent/CookieJar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/UserAgent/Proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/UserAgent/Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/UserAgent/Transactor.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/UserAgent/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/WebSocket.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/__main__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjo/py.typed +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/Author/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/Author/generate/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/Author/generate/dockerfile.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/Author/generate/kubernetes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/Author/generate/lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/Author/generate/pyproject.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Command/version.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/HelloWorld.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Lite.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/AllowedHosts.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/Config.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/DefaultHelpers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/EPLRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/EPRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/HeaderCondition.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/Health.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/JSONConfig.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/Mount.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/PyRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/TOMLConfig.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/TagHelpers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/YAMLConfig.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Plugin/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Renderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Routes/Match.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Routes/Pattern.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Routes/Route.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Routes/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Sessions.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Static.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Types.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Validator/Validation.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/Validator/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/__main__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/py.typed +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/favicon.ico +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/favicon.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/bootstrap/LICENSE +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.bundle.min.js.map +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.css +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/bootstrap/bootstrap.min.css.map +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/failunicat.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/failunicat.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/highlight.js/LICENSE +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/highlight.js/highlight-mojo-dark.css +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/highlight.js/highlight.min.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/highlight.js/pyjoyment.min.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-black-4x.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-black-4x.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-white-2x.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-white-2x.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-white-4x.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-white-4x.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-white.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo-white.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/logo.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/notfound.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/notfound.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/nounicat.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/nounicat.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/pinstripe-dark.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/pinstripe-dark.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/pinstripe-light.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/pinstripe-light.svg +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/public/pyjo/pyjo.css +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/templates/pyjo/exception.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/Pyjoyment/resources/templates/pyjo/not_found.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/.gitignore +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/Makefile +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/_static/mermaid.css +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_App.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_App_ASGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_App_CGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_App_FastCGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_App_Lambda.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_App_WSGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Asset.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Asset_File.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Asset_Memory.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Base.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Cache.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Collection.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Content.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Content_MultiPart.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Content_Single.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Cookie.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Cookie_Request.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Cookie_Response.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_DOM.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_DOM_CSS.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_DOM_HTML.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Date.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_EventEmitter.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Exception.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_File.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_GetOpt.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Headers.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_HelloWorld.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Home.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_ChildProcess.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Client.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Datagram.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Messages.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Server.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Stdio.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Stream.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_Subprocess.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_IOLoop_TLS.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_JSON.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_JSON_Pointer.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_JSON_RPC.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_JSON_Schema.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Loader.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Log.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Message.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Message_Request.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Message_Response.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Parameters.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Path.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Promise.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Prove.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Reactor.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Reactor_Asyncio.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Reactor_Poll.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_SSE.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_ASGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_CGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Daemon.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_FastCGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Hot.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Lambda.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Prefork.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Prethread.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Reload.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Reload_Backend.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Reload_Backend_Poll.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_Stdio.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Server_WSGI.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_String_Bytes.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_String_HTML.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_String_Mixin.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_String_Template.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_String_Unicode.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_TOML.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Template.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Test.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Test_Pyjo.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Test_pytest_plugin.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Transaction.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Transaction_HTTP.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Transaction_WebSocket.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_URL.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_URL_Template.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Upload.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_UserAgent.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_UserAgent_CookieJar.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_UserAgent_Proxy.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_UserAgent_Server.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_UserAgent_Transactor.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_Util.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_WebSocket.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjo_YAML.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_app.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_dockerfile.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_kubernetes.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_lambda_zip.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_lite_app.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_plugin.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_generate_pyproject.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_Author_inflate.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_asgi.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_cgi.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_daemon.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_eval.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_fastcgi.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_get.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_lambda.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_prefork.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_prethread.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_routes.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_stdio.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_version.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Command_wsgi.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Commands.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Controller.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_HelloWorld.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Lite.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_AllowedHosts.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_Config.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_DefaultHelpers.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_EPLRenderer.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_EPRenderer.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_HeaderCondition.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_Health.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_JSONConfig.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_Mount.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_PyRenderer.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_TOMLConfig.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_TagHelpers.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugin_YAMLConfig.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Plugins.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Renderer.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Routes.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Routes_Match.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Routes_Pattern.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Routes_Route.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Sessions.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Static.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Types.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Validator.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/Pyjoyment_Validator_Validation.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/api/index.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/backend.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/background.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/basic_auth.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/blocking.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/commands/MyApp/Command/spy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/commands/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/commands/MyApp/__main__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/commands/Pyjoyment/Command/spy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/config/myapp.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/config/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/counter.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/delayed.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/echo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/errors.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/health.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/hello.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/hosts.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/hosts_under.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/hot.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/installable/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/installable/pyproject.toml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/json_inline.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/jsonp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/lambda/gateway.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/lambda/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/livelog.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/plugin/MyApp/Plugin/MyHelpers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/plugin/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/sleepy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/sort.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/stdio/client.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/stdio/lines.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/stdio/rpc.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/synchronizing.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/titles.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/upload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/worker.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/wsgi/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/wsgi/myapp_wsgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/cookbook/wsgi/welcome.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/foundation/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/hybrid/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/hybrid/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/MyApp/Controller/Login.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/MyApp/Model/Users.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/MyApp/__main__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/t/login.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/templates/layouts/default.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/templates/login/index.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/login/templates/login/protected.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/model/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/prototype/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/growing/prototype/t/login.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/mounting/api.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/mounting/legacy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/mounting/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/mounting.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/alert_assets/Pyjoyment/Plugin/AlertAssets/public/alertassets.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/alert_assets/Pyjoyment/Plugin/AlertAssets/templates/alertassets.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/alert_assets/Pyjoyment/Plugin/AlertAssets.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/alert_assets_data/Pyjoyment/Plugin/AlertAssets.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/alert_me.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/before_render.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/blocks.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/cache_control.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/chunked.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/clock.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/compressed.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/content_for.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/csrf.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/debug_helper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/debug_helper_plugin/Pyjoyment/Plugin/DebugHelper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/debug_plugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/divide.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/exception_format.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/exception_template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/favicon.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/form.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/heart.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/inheritance.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/layout.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/layout_title.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/leak_asset.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/leak_rendered.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/mine.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/mustache.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/my_renderer/Pyjoyment/Plugin/MyRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/partial.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/pickled.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/public/foo/bar.png +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/public/index.html +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/range_check.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/static_files.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/streaming.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/streaming_finish.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/trim_newline.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering/validation.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/rendering.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/app_plugin/EmbeddedApp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/app_plugin/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/app_plugin/Pyjoyment/Plugin/MyEmbeddedApp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/embed/MyApp/Controller/Bar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/embed_lite/MyApp/Controller/Bar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/hooks/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/minimal/MyApp/Controller/Foo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/minimal/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/special/MyApp/Controller/Foo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/special/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/websockets/MyApp/Controller/Foo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/werewolf/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing/werewolf/Pyjoyment/Plugin/WerewolfCondition.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/routing.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/testing/TestLocation.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/testing/celestial.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/testing/echo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/testing/login.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/testing/weather/MyApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/testing.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/blocks.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/conditions.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/content_negotiation.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/exception_pages.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/external_templates.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/file_uploads.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/formats.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/hello_world.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/helpers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/home.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/http_methods.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/json_reverse.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/json_rpc.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/layouts.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/mode.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/optional_formats.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/optional_placeholders.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/parameters.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/placeholders.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/plugins.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/relaxed_placeholders.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/request_response.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/restrictive_placeholders.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/restrictive_regex.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/route_names.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/routes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/sessions.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/stash.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/static_files.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/under_authentication.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/under_group.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/under_prefix.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/websockets.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial/wildcard_placeholders.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/guides/tutorial.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/license.rst +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/make.bat +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/docs/requirements.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/README.md +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/aws/s3.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda/function/phpinfo.php +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda/url.tf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_stream/function/app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_stream/function/wrapper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_stream/outputs.tf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_stream/url.tf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_zip/function/app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_zip/outputs.tf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/lambda_zip/url.tf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/cgi-bin/hello.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/hello_asgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/hello_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/hello_mangum.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/hello_wsgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_asgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_asgi_inception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_cgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_cgi_php.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_fastcgi_php.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_lambda_inception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_lambda_mangum.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_mcp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_wsgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/mount_wsgi_inception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/php/index.php +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/php/php-fpm.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/mount/php/phpinfo.php +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/base.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/base.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/eventemitter.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/eventemitter.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/eventemitter_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/eventemitter_profile.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/http_benchmark.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/http_benchmark.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/http_benchmark_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/ioloop.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/ioloop.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/ioloop_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/microhttp.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/microhttp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/microhttp_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/microhttpd.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/microhttpd.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/microhttpd_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/resolv_dns.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/resolv_dns.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/tcp_proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/timers.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/timers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/timers_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/timers_obj.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/timers_obj_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/url_utf8.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjo/url_utf8.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/hello.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/hello.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_rpc.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/LICENSE +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/README.md +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/address.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/address.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/blog-post.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/blog-post.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/calendar.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/calendar.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/device.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/device.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/ecommerce.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/ecommerce.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/geographical-location.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/geographical-location.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/health-record.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/health-record.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/job-posting.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/job-posting.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/laptop.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/movie.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/movie.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/smartphone.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/user-profile.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/json_schema_examples/user-profile.schema.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/title.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/pyjoyment/title.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/bootstrap +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/hello_world.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/hello_world_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/hello_world_uvicorn.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/hello_world_werkzeug.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/http_server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_asgi_on_request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_cgi_on_request.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_cgi_on_request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_daemon_on_request.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_daemon_on_request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_psgi_on_request.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/servers/server_wsgi_on_request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/ua/entities.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/ua/get.pl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/ua/get.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/ua/loopback.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/examples/ua/user_agent.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/App.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/App_ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/App_CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/App_FastCGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/App_Lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/App_WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Asset.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Base.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Cache.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Collection.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Content.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Cookie.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Date.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/EventEmitter.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Exception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/File.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/File_download.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Headers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Home.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop_ChildProcess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop_Datagram.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop_IPv6.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop_Messages.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop_Stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/IOLoop_TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_Pointer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_RPC.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_Schema.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_Schema_lazy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_Schema_suite.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_Schema_validate.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_Schema_zod.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/JSON_stdlib.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Loader.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Message_Request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Message_Request_CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Message_Response.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Parameters.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Path.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Promise.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Promise_async_await.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Prove.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Reactor_Asyncio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Reactor_Poll.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Reactor_detect.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/SSE.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Daemon.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Daemon_IPv6_TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_FastCGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Hot.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Prefork.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Prethread.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Reload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_Stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Server_WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/String_HTML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/String_Mixin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/String_Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/String_Template_native.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Subprocess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/TOML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Test_Pyjo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/Test_pytest_plugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/URL.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent_CookieJar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent_Proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent_TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent_Transactor.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent_socks.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/UserAgent_unix.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/WebSocket.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/WebSocket_frames.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/WebSocket_proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/WebSocket_proxy_TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjo/YAML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/Dispatch.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/Pattern.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/Renderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/Routes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/Types.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/allowed_hosts_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/asgi_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/charset_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/dispatcher_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/embedded_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/embedded_lite_app.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/embedded_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/exception_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/external_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/external_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/group_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/health_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/helper_types_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/hints_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_lite_app.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_lite_app_abs.development.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_lite_app_abs.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_mode_lite_app.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_mode_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/json_config_mode_lite_app.testing.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/layouted_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/log_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/longpolling_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/mount_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/multipath_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/production_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/proxy_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo/bar/baz.123.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo/bar/baz.development.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo/bar/test.ab1234cd5678ef.min.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo/bar/yada.css +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo/bar.321.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo.ab1234cd5678ef.css +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/assets/foo.ab1234cd5678ef.js +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/hello.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/hello2.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public/hello4.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public2/hello.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public2/hello3.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public_dev/another/file +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/public_dev/hello.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/py_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/py_native_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/pyjoyment_config_test.whatever.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/rebased_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/restful_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/secret.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/session_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/signatures_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/single_file_test_app.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/sse_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/static_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/static_prefix_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/tag_helper_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/23.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/WithGreenLayout.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/dies_too.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/encoding.koi8-r.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/exception.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/exception.testing.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/foo/bar/index.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/foo/bar/test.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/foo/bar.rss.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/foo/index.html.xpl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/foo/yada.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/layouts/default.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/layouts/green.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/not_found.testing.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/syntaxerror.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates/withblock.txt.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates2/42.html+test.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates2/42.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/templates2/foo/yada.html.epl +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/testing_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/tls_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/toml_config_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/toml_config_lite_app.toml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/toml_config_lite_app_abs.development.toml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/toml_config_lite_app_abs.toml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/twinkle_lite_app.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/twinkle_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/upload_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/upload_stream_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/validation_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/websocket_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/wsgi_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/yaml_config_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/yaml_config_lite_app.yaml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/yaml_config_lite_app.yml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/yaml_config_lite_app_abs.development.yml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/Pyjoyment/yaml_config_lite_app_abs.yml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/README.md +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/README.md +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/bad.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/bad.key +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/ca.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/client.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/client.key +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/mojo_server.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/mojo_server.key +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/server.crt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/certs/server.key +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/cookies/curl.txt +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/App.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/App_ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/App_CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/App_FastCGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/App_Lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/App_WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Asset.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Asset_File.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Asset_Memory.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Base.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Cache.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Content.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Content_MultiPart.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Content_Single.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Cookie.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Cookie_Request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Cookie_Response.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/DOM_HTML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Date.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Exception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/File.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/GetOpt.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Headers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/HelloWorld.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Home.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop_ChildProcess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop_Client.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop_Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop_Stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop_Subprocess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/IOLoop_TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/JSON.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/JSON_Pointer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/JSON_RPC.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/JSON_Schema.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Loader.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Log.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Message.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Message_Request.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Message_Response.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Parameters.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Path.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Promise.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Prove.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_dockerfile.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_kubernetes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_lambda_zip.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_lite_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_plugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_generate_pyproject.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_Author_inflate.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_asgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_cgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_daemon.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_eval.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_fastcgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_get.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_prefork.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_prethread.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_routes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_version.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Command_wsgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Commands.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Controller.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_HelloWorld.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Lite.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_AllowedHosts.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_Config.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_DefaultHelpers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_EPLRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_EPRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_HeaderCondition.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_Health.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_JSONConfig.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_Mount.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_PyRenderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_TOMLConfig.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_TagHelpers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugin_YAMLConfig.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Plugins.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Renderer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Routes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Routes_Match.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Routes_Pattern.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Routes_Route.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Sessions.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Static.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Types.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Validator.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_Validator_Validation.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Pyjoyment_init.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Reactor.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Reactor_Asyncio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Reactor_Poll.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/SSE.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Daemon.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_FastCGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Hot.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Prefork.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Prethread.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Reload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Reload_Backend.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Reload_Backend_Poll.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_Stdio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Server_WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/String_Bytes.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/String_HTML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/String_Mixin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/String_Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/String_Unicode.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/TOML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Test_pytest_plugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Transaction.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Transaction_HTTP.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Transaction_WebSocket.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/URL.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Upload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/UserAgent.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/UserAgent_CookieJar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/UserAgent_Proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/UserAgent_Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/UserAgent_Transactor.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/Util.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/WebSocket.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/YAML.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_faq.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_growing.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_index.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_mounting.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_rendering.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_routing.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/guides_testing.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_api.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_async.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_deploy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_event_loop.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_lite.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_migration.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_mojolicious.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_mount.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_plugins.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_scraping.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_templates.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/skills_tests.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/docs/usages.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/lambda/app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/lambda_stream/app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/lambda_zip/app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_asgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_asgi_inception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_cgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_lambda_inception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_wsgi.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/mount/mount_wsgi_inception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/base.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/eventemitter.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/eventemitter_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/http_benchmark.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/ioloop.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/ioloop_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/timers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/timers_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/timers_obj.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/timers_obj_imper.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjo/url_utf8.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjoyment/hello.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjoyment/json_rpc.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjoyment/json_schema.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/pyjoyment/title.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/servers/bootstrap.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/servers/hello_world_lambda.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/servers/http_server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/ua/loopback.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/examples/ua/user_agent.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/ASGIClient.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/RuntimeAPI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/ServerProcess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/ServerStart.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/Skills.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/SocksServer.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/TestConnectProxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/lib/TestReactor.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/servers/ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/servers/CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/servers/JSON_Schema_pydantic.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/servers/WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/servers/aws_s3.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/App.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Asset.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Base.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Cache.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Collection.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Content.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Cookie.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/DOM.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Date.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/EventEmitter.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Exception.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/File.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Headers.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Home.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_Datagram.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_Stream.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_Subprocess.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_TLS.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_gc.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/IOLoop_threading.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/JSON.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Loader.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Log.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Message.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Parameters.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Path.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Promise.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Reactor_Asyncio.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Reactor_Poll.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/SSE.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_ASGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_CGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_Daemon.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_Hot.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_Prefork.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_Prethread.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_Reload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Server_WSGI.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/String_Mixin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/String_Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Template.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Test_Pyjo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Transaction.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/URL.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Upload.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/UserAgent.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/UserAgent_CookieJar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/UserAgent_Proxy.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/UserAgent_Server.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/UserAgent_Transactor.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/Util.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/stdlib/WebSocket.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/templates/exception.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/templates/test.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/t/templates/utf8_exception.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/README.md +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/Caddyfile +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/Dockerfile.caddy +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/Dockerfile.lambda +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/Dockerfile.lambda-stream +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/app.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/events/payload-1.0.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/events/payload-2.0.json +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/fastcgi.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/invoke.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/kubernetes.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lambda-image.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lambda-stream.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lambda-zip.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lambda.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lib.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lite-pep723.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/lite.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/docker-smoke/smoke.sh +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/lib/MyApp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/my_app.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/my_app.testing.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/myapp.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/myapp.testing.conf +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/myapp2.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/public/index.html +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/script/my_app +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/external/templates/index.html.ep +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/AroundPlugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/EmbeddedTestApp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/MyTestApp/Test1.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/MyTestApp/Test2.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/MyTestApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PluginWithEmbeddedApp/App.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PluginWithEmbeddedApp/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentConfigTest.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Baz.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Command/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Command/_test2_command.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Command/test_command.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Controller/Foo/Bar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Exceptional.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Foo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Plugin/DeploymentPlugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Plugin/Test/SomePlugin2.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Plugin/UPPERCASETestPlugin.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/Plugin/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/SideEffects/Test.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest/__init__.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest2/Foo.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest3/Bar.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/PyjoymentTest3/Baz.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/SingleFileTestApp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/lib/TestApp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/myapp.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/pyproject.toml +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/t/died.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/t/fail.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/t/pass.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/t/requires.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/t/skip.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/t/test_named.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/tests/conftest.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/tests/test_app.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/tests/test_functions.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/xt/bail.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/xt/sleep.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/pytest/xt/test_bail.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/files/dies.html.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/files/hello.html.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/files/item.html.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/files/items.html.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/files/no_render.html.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/files/text.txt.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates/layouts/files.html.py +0 -0
- {pyjoyment-0.1.0 → pyjoyment-0.2.0}/tt/templates_native/native.html.py +0 -0
pyjoyment-0.2.0/PKG-INFO
ADDED
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: Pyjoyment
|
|
3
|
+
Version: 0.2.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/latest/)
|
|
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/latest/) 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
|
+
## Installation
|
|
402
|
+
|
|
403
|
+
Pyjoyment is installed from [PyPI](https://pypi.org/project/Pyjoyment/):
|
|
404
|
+
|
|
405
|
+
```sh
|
|
406
|
+
pip install Pyjoyment
|
|
407
|
+
```
|
|
408
|
+
|
|
409
|
+
or, in a project managed with [uv](https://docs.astral.sh/uv/):
|
|
410
|
+
|
|
411
|
+
```sh
|
|
412
|
+
uv add Pyjoyment
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
A new project or script comes from its generator, which uv runs without
|
|
416
|
+
installing Pyjoyment first:
|
|
417
|
+
|
|
418
|
+
```sh
|
|
419
|
+
uvx --from Pyjoyment pyjo generate app MyApp
|
|
420
|
+
uvx --from Pyjoyment pyjo generate lite-app myapp.py
|
|
421
|
+
```
|
|
422
|
+
|
|
423
|
+
The skills for coding agents that write applications with Pyjoyment are a
|
|
424
|
+
plugin of [Claude Code](https://code.claude.com/docs/en/plugins), whose
|
|
425
|
+
`SKILL.md` files other agents read too:
|
|
426
|
+
|
|
427
|
+
```text
|
|
428
|
+
/plugin install pyjoyment --marketplace pyjoyment/Pyjoyment
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
or from the shell, as the extensions of the editors have no `/plugin`:
|
|
432
|
+
|
|
433
|
+
```sh
|
|
434
|
+
claude plugin install pyjoyment --marketplace pyjoyment/Pyjoyment
|
|
435
|
+
```
|
|
436
|
+
|
|
437
|
+
## Status
|
|
438
|
+
|
|
439
|
+
Pyjoyment is an evolution of [Mojolicious](https://mojolicious.org), the
|
|
440
|
+
real-time web framework for Perl. It keeps the API of Mojolicious with Python
|
|
441
|
+
names, so its documentation and experience carry over, and the tests of
|
|
442
|
+
Mojolicious, ported with each module, are the specification that the code
|
|
443
|
+
follows. A ported module names the Mojolicious version it was ported from in
|
|
444
|
+
its documentation.
|
|
445
|
+
|
|
446
|
+
Pyjoyment requires Python 3.12 or newer and runs on PyPy on a best-effort
|
|
447
|
+
basis. It runs on Linux, macOS and Windows. On Windows, Python has no
|
|
448
|
+
`os.fork` and no UNIX domain sockets, so `Pyjo.Server.Prefork`,
|
|
449
|
+
`Pyjo.Server.Hot`, `Pyjo.Server.Reload` and `Pyjo.IOLoop.Subprocess` do not
|
|
450
|
+
run there, and `Pyjo.Server.Prethread` runs the workers in threads instead.
|
|
451
|
+
The event loop watches up to 512 sockets there, with the `select` of Windows,
|
|
452
|
+
and a server stops with Ctrl-C, gracefully, or with Ctrl-Break, immediately.
|
|
453
|
+
|
|
454
|
+
## Distributions
|
|
455
|
+
|
|
456
|
+
What needs another library, or follows a specification that is revised more
|
|
457
|
+
often than Pyjoyment is released, is a distribution of its own, which adds a
|
|
458
|
+
module to a namespace of Pyjoyment, as `Pyjo.Reactor` for a reactor,
|
|
459
|
+
`Pyjoyment.Plugin` for a plugin or `Pyjo` for a protocol.
|
|
460
|
+
|
|
461
|
+
- [Pyjo.MCP - Model Context Protocol for Pyjoyment](https://pyjoyment.readthedocs.io/projects/pyjo-mcp/en/latest/)
|
|
462
|
+
- [Pyjo.Reactor.Twisted - Low-level event reactor with Twisted support](https://pyjoyment.readthedocs.io/projects/pyjo-reactor-twisted/en/latest/)
|
|
463
|
+
|
|
464
|
+
## Documentation
|
|
465
|
+
|
|
466
|
+
The documentation is on [Read the Docs](https://pyjoyment.readthedocs.io/).
|
|
467
|
+
|
|
468
|
+
## Copyright and license
|
|
469
|
+
|
|
470
|
+
Copyright (C) 2014-2026, Piotr Roszatycki.
|
|
471
|
+
|
|
472
|
+
Based on Mojolicious: Copyright (C) 2008-2025, Sebastian Riedel and others.
|
|
473
|
+
|
|
474
|
+
This program is free software, you can redistribute it and/or modify it under
|
|
475
|
+
the terms of the Artistic License version 2.0.
|
|
476
|
+
|
|
477
|
+
The pages of errors bundle [Bootstrap](https://getbootstrap.com), with
|
|
478
|
+
Popper, under the MIT License, and [highlight.js](https://highlightjs.org)
|
|
479
|
+
under the BSD 3-Clause License, whose texts are next to them in
|
|
480
|
+
`Pyjoyment/resources/public/pyjo`.
|