Recent Releases of falcon

falcon - 4.1.0

This release contains enhancements to media handling, serving static files, and a fix for the WebSockets-sink interaction, alongside performance optimizations and full support for CPython 3.14.

:snake: Falcon 4.1.0 on PyPI :books: Changelog on RtD

During this release cycle, we have migrated to publishing to PyPI with a Trusted Publisher (thanks to @webknjaz for helping to iron out the workflow details).

For those relying on other package distribution channels than PyPI, we have prepared a brand new Packaging Guide for Falcon. Please check it out and let us know what you think! Additionally, we have formalized our security maintenance policy as well as the status of stable releases: Releases and Versioning.

This release also incorporates many pull requests submitted by our community. We would like to extend our heartfelt thanks to all 17 contributors who made this release possible! * @aarcex3 * @AbduazizZiyodov * @Bombaclath97 * @bssyousefi * @CaselIT * @Cycloctane * @diegomirandap * @EricGoulart * @jap * @jkmnt * @kemingy * @Krishn1412 * @perodriguezl * @Shreshth3 * @vytas7 * @webknjaz * @x612skm

- Python
Published by vytas7 7 months ago

falcon - 4.1.0rc1

This is the first release candidate of Falcon 4.1.0.

We would greatly appreciate it if you could help us with the final round of testing on your apps, and let us know if you run into any issues!

:snake: 4.1.0rc1 on PyPI :books: Changelog on RtD

As always, you can grab this pre-release from PyPI: pip install falcon==4.1.0rc1

Thank You!

- Python
Published by vytas7 7 months ago

falcon - 4.1.0b1

This is the first beta release of Falcon 4.1.

As Falcon 4.1 is now feature-complete, we would really be thankful if you could take it for a spin with your apps, and let us know if you run into any issues!

:snake: 4.1.0b1 on PyPI :books: Changelog on RtD

As always, you can grab this pre-release from PyPI: pip install falcon==4.1.0b1

Thank You!

- Python
Published by vytas7 7 months ago

falcon - 4.1.0a3

This is yet another alpha release for validating the security improvements to the Trusted Publishing workflow. :snake: 4.1.0a3 on PyPI

Note that the final scope of 4.1.0 features will be defined in the first beta. Stay tuned!

- Python
Published by vytas7 7 months ago

falcon - 4.1.0a2

This is the first published alpha release of Falcon 4.1.0. (4.1.0a1 was not published due to a CI configuration error.) :snake: 4.1.0a2 on PyPI

This pre-release marks the first time that we are taking advantage of PyPI's Trusted Publishing.

Note that the final scope of 4.1.0 features will be defined in the first beta. Stay tuned!

- Python
Published by vytas7 7 months ago

falcon - 4.0.2

Falcon 4.0.2 is a minor point release (following the major Falcon 4.0.0 release, and Falcon 4.0.1 bugfix) to fix some missed re-exports for type checkers. In addition, we have also included a couple of documentation improvements.

:snake: Falcon 4.0.2 on PyPI

Fixed

Running Mypy on code that uses parts of falcon.testing would previously lead to errors like: Name "falcon.testing.TestClient" is not defined This has been fixed by explicitly exporting the names that are imported into the falcon.testing namespace. (#2387)

Misc

The printable PDF version of our documentation was enabled on Read the Docs. (#2365)

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.1

Falcon 4.0.1 is a minor point release addressing a Python distribution issue in Falcon 4.0.0.

Fixed

Installing Falcon 4.0.0 unexpectedly copies many unintended directories from the source tree to the venv’s site-packages. This issue has been rectified, and our CI has been extended with new tests (that verify what is actually installed from the distribution) to make sure this regression does not resurface. (#2384)

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0

We are happy to present Falcon 4.0, a new major version of the framework that brings a couple of commonly requested features including support for matching multiple path segments (using PathConverter), and a fully typed codebase. (Please read more about typing in the notes on RtD.)

:snake: Falcon 4.0.0 on PyPI :books: Changelog on RtD

The timeframe for Falcon 4.0 was challenging due to the need to balance our high standards with the CPython 3.13 timeline. We aimed to deliver the main development branch in this release, without resorting to another compatibility micro update (as we did with Falcon 3.1.1-3.1.3). Following community feedback, we also want to improve our overall release schedule by shipping smaller increments more often. To support this goal, we have made several tooling and testing improvements: the build process for binary wheels has been simplified using cibuildwheel, and our test suite now only requires pytest as a hard dependency. Additionally, you can run pytest against our tests from any directory. We hope that these changes should also benefit packaging Falcon in Linux distributions.

As with every SemVer major release, we have removed a number of previously deprecated functions, classes, compatibility shims, as well as made other potentially breaking changes that we could not risk in a minor version. If you have been paying attention the deprecation warnings from the 3.x series, the impact should be minimal, but please do take a look at the list of breaking changes on RtD.

This release would not have been possible without the numerous contributions from our community. This release alone comprises a number of pull requests submitted by a group of 30 talented individuals. What is more, we were particularly impressed by the high-quality discussions and code submissions during our EuroPython 2024 Sprint. Some notable sprint contributions include CHIPS support, and a new WebSocket Tutorial, among others. In fact, according to the statistics on GitHub, we are thrilled to report that the total number of Falcon contributors has now exceeded 200. We find it fascinating that our framework has become a collaborative effort involving so many individuals, and would like to thank everyone who has made this release possible!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0rc1

We are almost ready to release Falcon 4.0! :snake: 4.0.0rc1 on PyPI :books: Changelog on RtD

We would greatly appreciate it if you could help us with the final round of testing on your apps (pip install falcon==4.0.0rc1), and let us know if you run into any issues!

Thank You!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0b4

Falcon 4.0.0b4 is hopefully the final beta release of Falcon 4.0. Compared to 4.0.0b3, we have made the timezone-aware datetime breaking changes more consistent, and documented the scope clearer.

:snake: 4.0.0b4 on PyPI :books: Changelog on RtD

Please test this beta release with your apps (pip install falcon==4.0.0b4), and let us know if you run into any issues!

Thank You!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0b3

This is the third beta release of Falcon 4.0; it is almost identical to 4.0.0b2 with the exception of one multipart form parsing bug that has been fixed (https://github.com/falconry/falcon/issues/2364).

:snake: 4.0.0b3 on PyPI :books: Changelog on RtD

Please test this beta release with your apps (pip install falcon==4.0.0b3), and let us know if you run into any issues!

Thank You!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0b2

This is the second beta release of Falcon 4.0, where we made minor CI tweaks, and brought back the unintentionally removed, blocked resp.body property (it raises an instance of specialized AttributeError instead of a silent failure, making it much easier for the developer to track down this breaking change).

:snake: 4.0.0b2 on PyPI :books: Changelog on RtD

This release is otherwise largely identical to 4.0.0b1.

Please test this beta release with your apps (pip install falcon==4.0.0b2), and let us know if you run into any issues!

Thank You!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0b1

The first beta release of Falcon 4.0.0 is here!

Falcon 4.0 is now feature-complete, and we would really be thankful if you could test this beta release with your apps, and let us know if you run into any issues!

If you make use of type annotations in your Falcon app, please run your type checker of choice without any typeshed extensions for Falcon, and report back to us how it went!

:snake: 4.0.0b1 on PyPI :books: Changelog on RtD

As always, you can grab the new release from PyPI: sh pip install falcon==4.0.0b1

This release would have not been possible without contributions from the fantastic group of 30 community members and maintainers.

Thank You!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0a2

The second alpha release of Falcon 4.0.0 is out!

Although we are still in the process of polishing the last items from the version 4.0 milestone, we do not expect (m)any radical changes from now on until Falcon 4.0.0 final. The full changelog of new features, breaking changes and fixes will be rendered as part of the first beta release.

This release hopefully addresses the build issues we encountered in 4.0.0a1.

We would really appreciate if you could help with early testing on your code! You can grab this release from PyPI (pip install falcon==4.0.0a2), and let us know how it went!

- Python
Published by vytas7 over 1 year ago

falcon - 4.0.0a1

The first alpha release of Falcon 4.0.0 is here!

Although we are still in the process of polishing the last items from the version 4.0 milestone, we do not expect (m)any radical changes from now on until Falcon 4.0.0 final. The full changelog of new features, breaking changes and fixes will be rendered as part of the first beta release.

Update

One wheel failed to build on Windows, so nothing has been published to PyPI yet :grimacing:. We will address this issue in 4.0.0a2.

If you feel adventurous, you can still build and test the release from the below files here on GitHub: ```shell

Build binaries (takes a couple of minutes)

pip install https://github.com/falconry/falcon/releases/download/4.0.0a1/falcon-4.0.0a1.tar.gz shell

Pure-python wheel (fast install, slightly lower runtime performance)

pip install https://github.com/falconry/falcon/releases/download/4.0.0a1/falcon-4.0.0a1-py3-none-any.whl ``` Let us know how it went!

- Python
Published by vytas7 over 1 year ago

falcon - 3.1.3

Falcon 3.1.3 is a minor bugfix release that only pins the pytest-asyncio test dependency in order to prevent an incompatible version from interfering with the build workflow.

This release is otherwise identical to Falcon 3.1.2.

- Python
Published by vytas7 about 2 years ago

falcon - 3.1.3rc1

Falcon 3.1.3 is a minor bugfix release that only pins the pytest-asyncio test dependency in order to prevent an incompatible version from interfering with the build workflow.

This release is otherwise identical to Falcon 3.1.2.

- Python
Published by vytas7 about 2 years ago

falcon - 3.1.2

Falcon 3.1.2 is a minor point release fixing a couple of high impact bugs, as well as publishing binary wheels for the recently released CPython 3.12.

- Python
Published by vytas7 about 2 years ago

falcon - 3.1.2rc1

Falcon 3.1.2 is a minor point release fixing a couple of high impact bugs, as well as publishing binary wheels for the recently released CPython 3.12.

This is the first release candidate of Falcon 3.1.2.

- Python
Published by vytas7 about 2 years ago

falcon - 3.1.2b2

Falcon 3.1.2 is a minor point release fixing a couple of high impact bugs, as well as publishing binary wheels for the recently released CPython 3.12.

This is the second beta release of Falcon 3.1.2.

- Python
Published by vytas7 about 2 years ago

falcon - 3.1.2b1

Falcon 3.1.2 is a minor point release fixing a couple of high impact bugs, as well as publishing binary wheels for the recently released CPython 3.12.

This is the first beta release of Falcon 3.1.2.

- Python
Published by vytas7 about 2 years ago

falcon - 3.1.1

Falcon 3.1.1 is a minor point release addressing a couple of high impact bugs, and enabling the framework on the recently released CPython 3.11.

- Python
Published by vytas7 over 3 years ago

falcon - 3.1.1rc1

Falcon 3.1.1 is a minor point release addressing a couple of high impact bugs, and enabling the framework on the recently released CPython 3.11.

This is the first release candidate of Falcon 3.1.1.

- Python
Published by vytas7 over 3 years ago

falcon - 3.1.1b3

https://falcon.readthedocs.io/en/3.1.1b3/changes/3.1.1.html

b3 attempts to fix a yet another wheel build issue discovered in b2. :sweat_smile:

- Python
Published by vytas7 over 3 years ago

falcon - 3.1.1b2

Falcon 3.1.1 is a minor point release addressing a couple of high impact bugs, and enabling the framework on the recently released CPython 3.11.

b2 attempts to fix a wheel build issue on CPython 3.11 discovered in b1.

- Python
Published by vytas7 over 3 years ago

falcon - 3.1.1b1

Falcon 3.1.1 is a minor point release addressing a couple of high impact bugs, and enabling the framework on the recently released CPython 3.11.

This is the first beta release of Falcon 3.1.1.

- Python
Published by vytas7 over 3 years ago

falcon - 3.1.0

This release contains several refinements to request validation and error handling, along with some tweaks to response handling for static and downloadable files.

Due to popular demand, TestClient and ASGIConductor now expose convenience shorthand aliases for the simulate_* methods, i.e., simulate_get() is now also available as get(), etc.

Some important bugs were also fixed to ensure applications properly clean up response streams and do not hang when reading request bodies that are streamed using chunked transfer encoding.

This release also adds support for CPython 3.10 and deprecates CPython 3.6.

- Python
Published by kgriffs almost 4 years ago

falcon - 3.1.0rc3

Changes: falcon.readthedocs.io/en/latest/changes/3.1.0.html

- Python
Published by kgriffs almost 4 years ago

falcon - 3.1.0rc2

Changes: https://falcon.readthedocs.io/en/latest/changes/3.1.0.html

- Python
Published by kgriffs almost 4 years ago

falcon - 3.0.1

This is a minor point release to take care of a couple of bugs that we did not catch for 3.0.0.

Fixed

  • The api_helpers module was re-added, since it was renamed to app_helpers (and effectively removed) without announcing a corresponding breaking change. This module is now considered deprecated, and will be removed in a future Falcon version. (#1902)
  • ASGI HTTP headers were treated as UTF-8 encoded, not taking the incompatibility with WSGI and porting of WSGI applications into consideration. This was fixed, and ASGI headers are now decoded and encoded as ISO-8859-1. (#1911)

Contributors to this Release

Many thanks to those who contributed to this bugfix release:

- Python
Published by kgriffs almost 5 years ago

falcon - 3.0.0

We are pleased to present Falcon 3.0, a major new release that includes ASGI-based asyncio and WebSocket support, fantastic multipart/form-data parsing, better error handling, enhancements to existing features, and the usual assortment of bug fixes.

Thanks to @CaselIT we also now provide native cythonized wheels for common platforms via GitHub Actions!

A sincere thank you to our incredible group of 38 contributors who submitted pull requests for this release, as well as to all those who generously provided financial support to the project. Over the years we like to think that our little framework has had a positive impact on the Python community, and has even helped nudge the state of the art forward. And it is all thanks to our amazing supporters and contributors.

πŸ‘‰ 3.0.0 on PyPI πŸ‘‰ Changelog πŸ‘‰ multipart/form-data πŸ‘‰ ASGI Tutorial

- Python
Published by kgriffs almost 5 years ago

falcon - 3.0.0rc3

https://pypi.org/project/falcon/3.0.0rc3

- Python
Published by kgriffs almost 5 years ago

falcon - 3.0.0rc2

rc2 just includes a few documentation tweaks and GH Actions fixes since rc1.

$ pip install falcon==3.0.0rc2

πŸ‘‰ 3.0.0rc2 on PyPI πŸ‘‰ Changelog πŸ‘‰ multipart/form-data πŸ‘‰ ASGI Tutorial

- Python
Published by kgriffs almost 5 years ago

falcon - 3.0.0rc1

We have completed our final round of performance tuning, bug fixing, and doc improvements for 3.0. From this point on, we will only accept critical bug fixes and non-invasive documentation improvements for the final release.

$ pip install falcon==3.0.0rc1

As before, this release includes native wheels with Cython support for Linux, macOS, and Windows.

πŸ‘‰ 3.0.0rc1 on PyPI πŸ‘‰ Changelog πŸ‘‰ multipart/form-data πŸ‘‰ ASGI Tutorial

Again, many thanks go out to the talented and well-dressed community members who have contributed to the Falcon 3.0.0 release.

Please try the release candidate with some of your apps, and let us know in falconry/dev if you run into any issues.

We really need all hands on deck to ensure this is a rock-solid release.

Thank you!

- Python
Published by kgriffs almost 5 years ago

falcon - 3.0.0b2

We have completed our semi-final round of performance tuning, bug fixing, and doc improvements. From this point on, we will only accept critical bug fixes and non-invasive documentation improvements for the final release.

$ pip install falcon==3.0.0b2

As before, this release includes native wheels with Cython support for Linux, macOS, and Windows.

πŸ‘‰ 3.0.0b2 on PyPI πŸ‘‰ ASGI Tutorial

Again, many thanks go out to the talented and well-dressed community members who have contributed to the Falcon 3.0.0 release. It has been a long road, and we have very much appreciated everyone's patience and input along the way. Adding features like native ASGI support, lean-and-mean WebSocket handling, and incredibly efficient and robust multipart form parsing, was no easy task. But we wanted to get it right and deliver a well-tested, forward-looking feature set sans hacks and compatibility layers.

Please see RTD for the complete changelog for the next major release of Falcon, and please try out the beta with some of your apps. Let us know in falconry/dev if you run into any issues.

We really need all hands on deck to ensure this is a rock-solid release.

Thank you!

- Python
Published by kgriffs almost 5 years ago

falcon - 3.0.0b1

It's finally here!

After many, many hours of designing, coding, testing, and writing, the 3.0 release is now feature-complete, and so we are releasing the first beta so that you can start testing all the new goodies with your apps. As before, this release includes native wheels with Cython support for Linux, macOS, and Windows.

πŸ‘‰ 3.0.0b1 on PyPI πŸ‘‰ ASGI Tutorial

Again, many thanks go out to the talented and well-dressed community members who have contributed to the Falcon 3.0.0 release. It has been a long road, and we have very much appreciated everyone's patience and input along the way. Adding features like native ASGI support, lean-and-mean WebSocket handling, and incredibly efficient and robust multipart form parsing, was no easy task. But we wanted to get it right and deliver a well-tested, forward-looking feature set sans hacks and compatibility layers.

Please see RTD for the complete changelog for the next major release of Falcon, and please try out the beta with some of your apps. Let us know in falconry/dev if you run into any issues.

We really need all hands on deck to ensure this is a rock-solid release.

Thank you!

- Python
Published by kgriffs about 5 years ago

falcon - 3.0.0a3

This third alpha includes WebSocket support, improved documentation, and bug fixes. This is also the first time we are publishing native wheels with Cython support for Linux, MacOS, and Windows. It is likely this will be the final pre-release before the first beta, at which time the ASGI interface design will be frozen.

Please see RTD for the latest documentation, and _newsfragments for the list of changes since 2.0.

Install from PyPi with pip install --pre -U falcon

Note: There's a bug that slipped through our tests re not lazy-importing msgpack for the WebSocket media handler. We'll get that fixed for the next pre-release. πŸ€¦πŸ»β€β™‚οΈ

- Python
Published by kgriffs about 5 years ago