Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2 #186

Merged
merged 8 commits into from
Dec 22, 2023
Merged

v2 #186

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .coveragerc

This file was deleted.

3 changes: 0 additions & 3 deletions .flake8

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python: ['3.7', '3.8', '3.9', '3.10', '3.11']
python: ['3.8', '3.9', '3.10', '3.11', '3.12']
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
Expand Down
21 changes: 16 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,34 @@

*“The impossibly small web framework for Python and MicroPython”*

Microdot is a minimalistic Python web framework inspired by Flask, and designed
to run on systems with limited resources such as microcontrollers. It runs on
standard Python and on MicroPython.
Microdot is a minimalistic Python web framework inspired by Flask. Given its
small size, it can run on systems with limited resources such as
microcontrollers. Both standard Python (CPython) and MicroPython are supported.

```python
from microdot import Microdot

app = Microdot()

@app.route('/')
def index(request):
async def index(request):
return 'Hello, world!'

app.run()
```

## Migrating to Microdot 2

Version 2 of Microdot incorporates feedback received from users of earlier
releases, and attempts to improve and correct some design decisions that have
proven to be problematic.

For this reason most applications built for earlier versions will need to be
updated to work correctly with Microdot 2. The
[Migration Guide](https://microdot.readthedocs.io/en/stable/migrating.html)
describes the backwards incompatible changes that were made.

## Resources

- [Documentation](https://microdot.readthedocs.io/en/latest/)
- [Documentation](https://microdot.readthedocs.io/en/stable/)
- [Change Log](https://github.com/miguelgrinberg/microdot/blob/main/CHANGES.md)
96 changes: 23 additions & 73 deletions docs/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,103 +13,53 @@ API Reference
.. autoclass:: microdot.Response
:members:

.. autoclass:: microdot.NoCaseDict
:members:

.. autoclass:: microdot.MultiDict
:members:

``microdot_asyncio`` module
---------------------------

.. autoclass:: microdot_asyncio.Microdot
:inherited-members:
:members:

.. autoclass:: microdot_asyncio.Request
:inherited-members:
:members:

.. autoclass:: microdot_asyncio.Response
:inherited-members:
:members:

``microdot_utemplate`` module
-----------------------------

.. automodule:: microdot_utemplate
:members:

``microdot_jinja`` module
-------------------------

.. automodule:: microdot_jinja
:members:

``microdot_session`` module
---------------------------
``websocket`` extension
-----------------------

.. automodule:: microdot_session
.. automodule:: microdot.websocket
:members:

``microdot_cors`` module
------------------------
``utemplate`` templating extension
----------------------------------

.. automodule:: microdot_cors
.. automodule:: microdot.utemplate
:members:

``microdot_websocket`` module
``jinja`` templating extension
------------------------------

.. automodule:: microdot_websocket
:members:

``microdot_asyncio_websocket`` module
-------------------------------------

.. automodule:: microdot_asyncio_websocket
.. automodule:: microdot.jinja
:members:

``microdot_asgi_websocket`` module
-------------------------------------
``session`` extension
---------------------

.. automodule:: microdot_asgi_websocket
.. automodule:: microdot.session
:members:

``microdot_ssl`` module
-----------------------
``cors`` extension
------------------

.. automodule:: microdot_ssl
.. automodule:: microdot.cors
:members:

``microdot_test_client`` module
-------------------------------

.. autoclass:: microdot_test_client.TestClient
:members:

.. autoclass:: microdot_test_client.TestResponse
:members:

``microdot_asyncio_test_client`` module
---------------------------------------

.. autoclass:: microdot_asyncio_test_client.TestClient
:members:
``test_client`` extension
-------------------------

.. autoclass:: microdot_asyncio_test_client.TestResponse
.. automodule:: microdot.test_client
:members:

``microdot_wsgi`` module
------------------------
``asgi`` extension
------------------

.. autoclass:: microdot_wsgi.Microdot
.. autoclass:: microdot.asgi.Microdot
:members:
:exclude-members: shutdown, run

``microdot_asgi`` module
------------------------
``wsgi`` extension
-------------------

.. autoclass:: microdot_asgi.Microdot
.. autoclass:: microdot.wsgi.Microdot
:members:
:exclude-members: shutdown, run
Loading