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

feat(mediatypes): reimplement (and unvendor) mimeparse #2348

Merged
merged 32 commits into from
Oct 5, 2024
Merged
Changes from 1 commit
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
664211b
feat: WiP reimplement mimeparse
vytas7 Jul 5, 2024
468c90a
Merge branch 'master' into reimplement-mimeparse
vytas7 Aug 28, 2024
34f5f4b
feat(mediatypes): add some skeletons for mediatype parsing
vytas7 Aug 28, 2024
cada7b6
Merge branch 'master' into reimplement-mimeparse
vytas7 Sep 4, 2024
1ff911d
chore: fix up after master merge
vytas7 Sep 4, 2024
763a973
Merge branch 'falconry:master' into reimplement-mimeparse
vytas7 Sep 26, 2024
e6d164d
Merge branch 'master' into reimplement-mimeparse
vytas7 Sep 28, 2024
4243b7b
feat(mimeparse): wip doodles
vytas7 Sep 28, 2024
2a22a85
Merge branch 'master' into reimplement-mimeparse
vytas7 Sep 29, 2024
b3150a2
feat(mediatypes): implement computation of best quality
vytas7 Sep 29, 2024
cefa80a
feat(mediatypes): remove vendored mimeparse
vytas7 Sep 30, 2024
379998f
docs: add a newsfragment for one of the issues
vytas7 Sep 30, 2024
aa138b0
refactor: remove debug `print()`s
vytas7 Sep 30, 2024
75bd57b
feat(mediatypes): add specialized mediatype/range errors, coverage
vytas7 Oct 1, 2024
33afb39
Merge branch 'master' into reimplement-mimeparse
vytas7 Oct 1, 2024
69bd926
docs(newsfragments): add a newsfragment for #1367
vytas7 Oct 1, 2024
9fdc9ce
test(mediatypes): add more tests
vytas7 Oct 1, 2024
7912924
feat(mediatypes): improve docstring, simplify behaviour
vytas7 Oct 1, 2024
2f11234
refactor(mediatypes): use a stricter type annotation
vytas7 Oct 1, 2024
be2f155
chore: remove an unused import
vytas7 Oct 1, 2024
317109c
chore: fix docstring style violation D205
vytas7 Oct 1, 2024
84bbf39
Merge branch 'master' into reimplement-mimeparse
vytas7 Oct 4, 2024
4caed99
chore(docs): apply review suggestion to `docs/ext/rfc.py`
vytas7 Oct 4, 2024
42d2cea
docs(newsfragments): apply review suggestion for `docs/_newsfragments…
vytas7 Oct 4, 2024
ec4c557
Merge branch 'master' into reimplement-mimeparse
vytas7 Oct 4, 2024
f6e2ef3
refactor(mediatypes): address some review comments
vytas7 Oct 4, 2024
6f7afc2
perf(mediatypes): short-circuit if q is absent as per review comment
vytas7 Oct 4, 2024
017f75e
docs: explain how to mitigate a potentially breaking change
vytas7 Oct 4, 2024
94495f6
docs: add a note that we continue to maintain python-mimeparse
vytas7 Oct 4, 2024
b0e3829
refactor(mediatypes): convert _MediaType and _MediaRange to dataclasses
vytas7 Oct 5, 2024
8618640
fix(mediatypes): only use dataclass(slots=True) where supported (>=py…
vytas7 Oct 5, 2024
532b44e
refactor(mediatypes): a yet another attempt to make dataclasses work …
vytas7 Oct 5, 2024
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
Prev Previous commit
Next Next commit
docs(newsfragments): apply review suggestion for `docs/_newsfragments…
…/864.breakingchange.rst`

Co-authored-by: Federico Caselli <cfederico87@gmail.com>
vytas7 and CaselIT authored Oct 4, 2024
commit 42d2ceae55baf5e6765a982a594ac3f789a5e9bc
2 changes: 1 addition & 1 deletion docs/_newsfragments/864.breakingchange.rst
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@ itself, fixing a handful of long-standing bugs in the new implementation.
The following new behaviors are considered breaking changes:

* Previously, the iterable passed to
:meth:`req.client_prefers <falcon.Request.client_prefers>` had be sorted in
:meth:`req.client_prefers <falcon.Request.client_prefers>` had to be sorted in
the order of increasing desirability.
:func:`~falcon.mediatypes.best_match`, and by proxy
:meth:`~falcon.Request.client_prefers`, now consider the provided media types