📜 ⬆️ ⬇️

Pylons and repoze.bfg are combined into a Pyramid project.

The information has come up thanks to a booming discussion in the official project group . Specifically, it became known that:


With this message I would like to notify all developers using or planning to use Pylons in their projects about the current situation around this web framework. Official announcements from the maintainers have not yet arrived, but it is worth expecting in the near future.
It is highly recommended to revise your plans for using Pylons-1.x.
From the point of view of new projects, it is obviously worth joining Pyramid right now, or to choose any other alternative technology - the same Werkzeug, Django and other non-derivative Pylons frameworks.
For those who are already working on Pylons at the moment, there are not so many options for further actions:

For those who, in principle, are interested in the second option, the following is a very succinct retelling of what we have learned from the first acquaintance with the official documentation for the new project .

About the essence of the pyramids

Pyramid grew out of the BFG web framework (also known as repoze.bfg), which in turn is a descendant of the Zope platform, but was developed under the strong impression of Django and Pylons. This year, the developers of BFG and Pylons decided to combine their efforts and the existing developments in the framework of both projects, resulting in a new framework (entertaining, but in the existing documentation the past tense is used - “Until the end of 2010, Pyramid ; it was merged into the Pylons project at the end of 2010 ” ). As the key characteristics of the project, which received maximum attention, the developers note:

By architecture, Pyramid is somewhere in the middle between Django / Pylons / any other WSGI toolkit and the Zope platform, with the result that the developer has the freedom to choose in approaches to customizing some of the components of the system:

Pyramid's own codebase consists of approximately 5000 (five thousand) lines of code, against a little more than 2000 lines in Pylons-1.0. All other functionality is implemented by third-party packages included in the list of project dependencies.

Below is a list of packages that come with Pylons-1.0 and Pyramid-1.0a1. The output is obtained using the utilities virtualenv and pip .
')
Standard equipment Pylons

Beaker == 1.5.4
FormEncode == 1.2.3dev
Mako == 0.3.5
MarkupSafe == 0.11
Paste == 1.7.5.1
PasteDeploy == 1.3.4
PasteScript == 1.7.3
Pygments == 1.3.1
Pylons == 1.0
Routes == 1.12.3
Tempita == 0.5dev
WebError == 0.10.2
WebHelpers == 1.2
WebOb == 1.0
WebTest == 1.2.3
decorator == 3.2.0
nose == 0.11.4
simplejson == 2.1.2
wsgiref == 0.1.2

Pyramid standard equipment

Beaker == 1.5.4
Chameleon == 1.2.13
Mako == 0.3.5
MarkupSafe == 0.11
Paste == 1.7.5.1
PasteDeploy == 1.3.4
PasteScript == 1.7.3
WebOb == 1.0
pyramid == 1.0a1
repoze.lru == 0.3
translationstring == 0.3
venusian == 0.4
wsgiref == 0.1.2
zope.component == 3.10.0
zope.configuration == 3.7.2
zope.deprecation == 3.4.0
zope.event == 3.5.0-1
zope.i18nmessageid == 3.5.3
zope.interface == 3.6.1
zope.schema == 3.7.0
- Pylons: 19.
Pyramid: 20.

In quantitative terms, the situation has not changed much - Pyramid, like Pylons, actively relies on third-party technologies and the WSGI stack, but there are structural changes. How hard they affect the complexity of porting a finished Pylons application is hard to say. So far, the developers only mention the reasons that prompted them to make such radical changes ( here in more detail ) and promise over time to provide Pylons 1.x users with a plan for migration to Pyramid without loss of functionality in the applications already created.

UPD: An unofficial migration guide with Pylons-1.0 has appeared online. But the integrity and performance of this decision by the author of the topic has not yet been verified.

UPD: Spherical tests in vacuum .

Source: https://habr.com/ru/post/107946/


All Articles