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

should release v0.15.0-b1 #135

Closed
hoatle opened this issue Nov 23, 2021 · 1 comment
Closed

should release v0.15.0-b1 #135

hoatle opened this issue Nov 23, 2021 · 1 comment

Comments

@hoatle
Copy link
Contributor

hoatle commented Nov 23, 2021

it's required by community to have some features available/released on the current develop branch.

@hoatle hoatle self-assigned this Nov 23, 2021
@hoatle hoatle changed the title should release v0.15.0-beta.1 should release v0.15.0-b1 Dec 24, 2021
@hoatle hoatle added this to the v0.15.0-beta.1-flask-c milestone Dec 24, 2021
hoatle added a commit to hoatle/flask-classful that referenced this issue Dec 24, 2021
hoatle added a commit that referenced this issue Dec 24, 2021
@hoatle hoatle closed this as completed Dec 24, 2021
Flix6x added a commit that referenced this issue Sep 7, 2023
* @ #135 | update for the next version iteration

* @ #134 | allow releases/vX.Y.Z and releases/X.Y.Z to be published as docs

* Compatibility with werkzeug 2.2 (#145)

Compatibility with Flask>=2.2


* Initialize base_args as class field

Only include actual rule args in base_args

* Fix compatibility with Werkzeug 2.2

werkzeug.routing.parse_rule was considered an internal detail and has
been removed during a refactor. We can now rely on werkzeug.routing.Rule
which has a `arguments` field that contains the information we need.
However, this field is not populated until the Rule has been added to a
Map and this Map has been bound. So, we use a dummy map and bind it to
the empty string just to get the arguments field ready for our use.

* Rework test matrix, pass more exhaustive requirements to pip

- EOL python versions and alpha flask have been removed from test matrix
- Add python 3.10
- Only test "branches" of flask and not all bugfix releases

* Fix test_base_args

The tested view has a route_base with no declared arguments, so we
shouldn't expect the base_args to have a nonzero length.

* Rewrite test_rule_options

This test file mostly tests the same behavior over and over:
that the options given to `FlaskView.register`, such as
`strict_slashes`, are passed along to `Flask.add_url_rule`.

It did this by testing the behavior of the view when calling
its endpoints with or without the trailing slash, expecting it
to return the same response.

However, werkzeug never guaranteed this behavior. The only
documented behavior tunable by this option is:

"If strict_slashes is enabled (the default), visiting a branch URL
without a trailing slash will redirect to the URL with a slash
appended."

So, with the reimplementation of the routing in werkzeug 2.2, this
behavior is lost.

Instead of testing the behavior of the view, let's mock `add_url_rule`
and check that it's called with `strict_slashes` as `False`.

* Fix test_blueprints

Flask >=2.2 raises an error when trying to apply changes to an app
which has already serviced requests. For this specific test, we can
redefine the app.

* Pass rule_options to add_url_rules when adding a @route-ed rule

* Remove nose which is deprecated, use pytest

* docs: add changelog entry and bump version (#151)

Signed-off-by: F.N. Claessen <felix@seita.nl>

---------

Signed-off-by: F.N. Claessen <felix@seita.nl>
Co-authored-by: hoatle <hoatle@teracy.com>
Co-authored-by: Jérôme Tamba <jerome@ta.mba>
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 9, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Development

No branches or pull requests

1 participant