Thread: Two releases?
I think we are gathering too many changes just for a 2.4.6 release. I think we should release only bugfixes in 2.4.6 and release all the good things in a 2.5 instead. As a test, I've forked master from the tag 2_4_5 in a maint_2_4 branch (it's live in my repos) and cherry-picked there only the bugfixes: the result is: - Fixed 'cursor()' arguments propagation in connection subclasses and overriding of the 'cursor_factory' argument. Thanks to Corry Haines for the report and the initial patch (ticket #105). - Dropped GIL release during string adaptation around a function call invoking a Python API function, which could cause interpreter crash. Thanks to Manu Cupcic for the report (ticket #110). - 'register_hstore()', 'register_composite()', 'tpc_recover()' work with RealDictConnection and Cursor (ticket #114). - connect() raises an exception instead of swallowing keyword arguments when a connection string is specified as well (ticket #131). The new features for 2.5 are instead: - Added JSON adaptation. - Added support for PostgreSQL 9.2 range types. - Added support for backward scrollable cursors. Thanks to Jon Nelson for the initial patch (ticket #108). - Added a simple way to customize casting of composite types into Python objects other than namedtuples. Many thanks to Ronan Dunklau and Tobias Oberstein for the feature development. - connection.reset() implemented using DISCARD ALL on server versions supporting it. - 'errorcodes' map updated to PostgreSQL 9.2. What would be still missing: for 2.4.6 - clean up the zope mess (tickets #123, #125, current state-of-the-art in my zope-pool branch) - fix hang in green connections (ticket #113, already fixed in branch fix-113, just to be merged) Missing for 2.5: the above plus: - support for Py 3.3 (I'm looking for confirmation from Python hackers that the change in 469b6f8a is correct) - if nobody opposes it, drop support for zope (further zope issues, if any, can be dealt with in the 2.4 maint branch) I think that's everything. Comments? -- Daniele
On Tuesday 09 October 2012, Daniele Varrazzo wrote: > I think we are gathering too many changes just for a 2.4.6 release. I > think we should release only bugfixes in 2.4.6 and release all the > good things in a 2.5 instead. >... > I think that's everything. Comments? > ++ Makes perfect sense to me. -- Say NO to spam and viruses. Stop using Microsoft Windows!
09.10.2012 06:21, Daniele Varrazzo пишет: > - if nobody opposes it, drop support for zope (further zope issues, if > any, can be dealt with in the 2.4 maint branch) > > I and one my collegau oppose since we use psycopg with zope (presentrly with zope 2.9) Best regards, Yury Don
Il giorno 09/ott/2012, alle ore 07:18, Yury Don <don@rosfirm.ru> ha scritto= : > 09.10.2012 06:21, Daniele Varrazzo =D0=BF=D0=B8=D1=88=D0=B5=D1=82: >> - if nobody opposes it, drop support for zope (further zope issues, if >> any, can be dealt with in the 2.4 maint branch) > > I and one my collegau oppose since we use psycopg with zope (presentrly > with zope 2.9) > > Best regards, > Yury Don Daniele is dropping Zope support only in 2.5 branch while is keeping it in 2.4.x maintenance branch. I do not know if (and how much) it is a burden to keep Zope support. I imagine that such a proposal implies keeping it is a huge task. I don't think Zope 2.X is gonna badly need new 2.5 features so I understand Daniele attempts to focus them only on one branch. Ciao. Marco.
On 09/10/2012 02:21, Daniele Varrazzo wrote: > - support for Py 3.3 (I'm looking for confirmation from Python hackers > that the change in 469b6f8a is correct) > - if nobody opposes it, drop support for zope (further zope issues, if > any, can be dealt with in the 2.4 maint branch) > > I think that's everything. Comments? Yes, there no reason to drop Zope. If one would drop support completely, that could make sense but just having two branches instead of one when there are no backward compatibility issues will only complicate things for our users. Or not? federico -- Federico Di Gregorio federico.digregorio@dndg.it Studio Associato Di Nunzio e Di Gregorio http://dndg.it Una nazionale senza neanche una nazione. -- macchinavapore
On Oct 9, 2012 2:22 AM, "Daniele Varrazzo" <daniele.varrazzo@gmail.com> wrote:
>
> I think we are gathering too many changes just for a 2.4.6 release. I
> think we should release only bugfixes in 2.4.6 and release all the
> good things in a 2.5 instead.
>
+1.sticking to a policy close to that of the main postgresql project with regards to back branches and feature releases will make things more predictable and less confusing for those of us who come from that side.
/Magnus
On Tue, Oct 9, 2012 at 6:18 AM, Yury Don <don@rosfirm.ru> wrote: > 09.10.2012 06:21, Daniele Varrazzo пишет: > >> - if nobody opposes it, drop support for zope (further zope issues, if >> any, can be dealt with in the 2.4 maint branch) > > I and one my collegau oppose since we use psycopg with zope (presentrly with > zope 2.9) Hello Yury, thank you for letting us know. The problem with Zope, as I've said several times, is that nobody is maintaining it. There are two bugs open in the tracker and I haven't found anybody to show me a failing test. Even the guy who opened ticket #123 (http://psycopg.lighthouseapp.com/projects/62710/tickets/123) has failed to come back to help fixing it or giving me feedback I'm going in the right direction. He has shown the log of a failing interaction between a page and the db and not reported how to reproduce it. ZPsycopgDA is not rocket science, but it takes knowledge of the life cycle of a zope page, and I don't have it. It's a matter of responsibility: Federico and me are the only people doing maintenance on psycopg2 and none of us use Zope. The QA level on the rest of the adapter is *very* high and on ZPsycopgDA is exactly zero. I've fumbled several times breaking things in the past (big times, see isolation consts), but I can fix these errors; when somebody breaks zope nobody notices for one year and four releases. On Zope side, none of the people I've asked for help have ever answered, in this ML and in others. When I've asked about it to the developers of the biggest Zope company in Italy I've been answered "nobody uses ZPsycopgDA anymore: everybody just uses zope.sqlalchemy". When I say I want to drop support for zope I mean I want to leave ZPsycopgDA and psycopg2da (for zope3), which are not part of the psycopg2 package, out of psycopg2 repository. These are two separate directories living in our tarball and not released if not in the sdist package. There is not even a setup.py for them: there is a package of PyPI that somebody else I don't even know maintains (http://pypi.python.org/pypi/ZPsycopgDA/). For me this is great: for what I see an external project just depending on psycopg, with its docs and tests if they want, is the best solution in term of quality (i.e. people who care responsible for it). They would have all our support. In the meantime, if you can provide some help for the mentioned outstanding zope issues, that would be great: as you can see from my roadmap they are basically the only blocker for the release of a bugfixing package. If we accepted to drop them we could release 2.5, with juicy new features, *before it*, and that's not good IMO. Thank you very much -- Daniele
Il giorno 09/ott/2012, alle ore 07:18, Yury Don <don@rosfirm.ru> ha scritto: > 09.10.2012 06:21, Daniele Varrazzo пишет: >> - if nobody opposes it, drop support for zope (further zope issues, if >> any, can be dealt with in the 2.4 maint branch) > > I and one my collegau oppose since we use psycopg with zope (presentrly > with zope 2.9) > > Best regards, > Yury Don Daniele is dropping Zope support only in 2.5 branch while is keeping it in 2.4.x maintenance branch. I do not know if (and how much) it is a burden to keep Zope support. I imagine that such a proposal implies keeping it is a huge task. I don't think Zope 2.X is gonna badly need new 2.5 features so I understand Daniele attempts to focus them only on one branch. Ciao. Marco.
On Tue, Oct 9, 2012 at 8:02 AM, Federico Di Gregorio <fog@dndg.it> wrote: > On 09/10/2012 02:21, Daniele Varrazzo wrote: >> - support for Py 3.3 (I'm looking for confirmation from Python hackers >> that the change in 469b6f8a is correct) >> - if nobody opposes it, drop support for zope (further zope issues, if >> any, can be dealt with in the 2.4 maint branch) >> >> I think that's everything. Comments? > > Yes, there no reason to drop Zope. If one would drop support completely, > that could make sense but just having two branches instead of one when > there are no backward compatibility issues will only complicate things > for our users. Or not? About the release numbers: for me it seems the regular policy in most FS projects, including Python and Postgres, between which we sit. One of my last commits in devel is about enabling cursors subclasses to be part of cooperative inheritance (using super()): I think it would be more surprising to see this subtle change appearing in 2.4.6 than in 2.5, even if this doesn't break people's code. About Zope: as already explained above, the reason for dropping it, apart from my frustration, is that it is just better suited as a separate "project" in the sense of recognizable entity, such as having a PyPI handle. So it takes its own setup.py etc. Those considerations were not valid in the past, when the Python ecosystem was different. But now if a maintained ZPsycopgDA has to exists it better be easy_installable (one could say pippable, but it's too loaded of meanings in Italian) or it just doesn't make a favour to the users. The prove is that random people try to fill the gaps on occasional basis, with patchy results (ZPsycopgDA is 2.4.4 on PyPI, psycopg2da is 2.0.9). Now that Fabio (Tranchitella) is no more active, you don't fancy touching Zope even with a bargepole and I have never used it, I just don't see any helpful to Zope users to declare ZPsycopgDA part of psycopg2. It's not a base we need to cover to offer the whole service. Let's just leave the adapter to people willing to maintain it. -- Daniele