Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Zope: CMF

[dev] five.localsitemanager: dependencies

 

 

Zope cmf RSS feed   Index | Next | Previous | View Threaded


y.2009 at wcm-solutions

Feb 12, 2009, 5:45 AM

Post #1 of 15 (2078 views)
Permalink
[dev] five.localsitemanager: dependencies

Hi!


I have some trouble using five.localsitemanager in a buildout with Zope2
2.12.dev. This is the error I get:

Error: There is a version conflict.
We already have: zope.location 3.5.3
but Zope2 2.12.dev requires 'zope.location==3.5.2'.

The setup.py of five.localsitemanager specifies these dependencies:

install_requires=[.
'setuptools',
'zope.component >= 3.5.0',
'zope.container',
'zope.event',
'zope.interface',
'zope.location >= 3.5.0',
'zope.site >= 3.6.0',
'zope.traversing',
'Acquisition',
'Zope2',
'ZODB3',
],

If I remove the dependencies that are also part of the Zope2 2.12.dev
dependencies everything works fine:

install_requires=[
'setuptools',
'Zope2 >= 2.12.dev',
],

Is that the right way to resolve that issue? Could it cause any trouble
if I would check in that change?


Cheers,

Yuppie

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


tseaver at palladion

Feb 12, 2009, 2:51 PM

Post #2 of 15 (2016 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

yuppie wrote:
> Hi!
>
>
> I have some trouble using five.localsitemanager in a buildout with Zope2
> 2.12.dev. This is the error I get:
>
> Error: There is a version conflict.
> We already have: zope.location 3.5.3
> but Zope2 2.12.dev requires 'zope.location==3.5.2'.
>
> The setup.py of five.localsitemanager specifies these dependencies:
>
> install_requires=[.
> 'setuptools',
> 'zope.component >= 3.5.0',
> 'zope.container',
> 'zope.event',
> 'zope.interface',
> 'zope.location >= 3.5.0',
> 'zope.site >= 3.6.0',
> 'zope.traversing',
> 'Acquisition',
> 'Zope2',
> 'ZODB3',
> ],
>
> If I remove the dependencies that are also part of the Zope2 2.12.dev
> dependencies everything works fine:
>
> install_requires=[
> 'setuptools',
> 'Zope2 >= 2.12.dev',
> ],
>
> Is that the right way to resolve that issue? Could it cause any trouble
> if I would check in that change?

+1.


Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver [at] palladion
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJlKfT+gerLs4ltQ4RAgZFAJ0ZNyJFpo9WvxO5Vcf9JgXY0blg1QCfUgRL
qA7WkCZrozsOzpL1LioB5RE=
=grhc
-----END PGP SIGNATURE-----

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


tseaver at palladion

Feb 12, 2009, 2:51 PM

Post #3 of 15 (2008 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

yuppie wrote:
> Hi!
>
>
> I have some trouble using five.localsitemanager in a buildout with Zope2
> 2.12.dev. This is the error I get:
>
> Error: There is a version conflict.
> We already have: zope.location 3.5.3
> but Zope2 2.12.dev requires 'zope.location==3.5.2'.
>
> The setup.py of five.localsitemanager specifies these dependencies:
>
> install_requires=[.
> 'setuptools',
> 'zope.component >= 3.5.0',
> 'zope.container',
> 'zope.event',
> 'zope.interface',
> 'zope.location >= 3.5.0',
> 'zope.site >= 3.6.0',
> 'zope.traversing',
> 'Acquisition',
> 'Zope2',
> 'ZODB3',
> ],
>
> If I remove the dependencies that are also part of the Zope2 2.12.dev
> dependencies everything works fine:
>
> install_requires=[
> 'setuptools',
> 'Zope2 >= 2.12.dev',
> ],
>
> Is that the right way to resolve that issue? Could it cause any trouble
> if I would check in that change?

+1.


Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver [at] palladion
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJlKfT+gerLs4ltQ4RAgZFAJ0ZNyJFpo9WvxO5Vcf9JgXY0blg1QCfUgRL
qA7WkCZrozsOzpL1LioB5RE=
=grhc
-----END PGP SIGNATURE-----

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


charlie at begeistert

Feb 14, 2009, 7:22 AM

Post #4 of 15 (2002 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Am 12.02.2009 um 14:45 schrieb yuppie:

> install_requires=[
> 'setuptools',
> 'Zope2 >= 2.12.dev',
> ],
>
> Is that the right way to resolve that issue? Could it cause any
> trouble
> if I would check in that change?


Only for someone wishing to use it totally outside of a Zope context.

I'm not that familiar with Buildout but I would have thought that any
direct import dependencies should be listed - and zope.location
doesn't seem to be (neither are zope.event or zope.site for that
matter). OTOH the condition >= seems to be being incorrectly
interpreted. If this is a bug then it should be filed.

Charlie
--
Charlie Clark
Helmholtzstr. 20
Düsseldorf
D- 40215
Tel: +49-211-938-5360
GSM: +49-178-782-6226



_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


dieter at handshake

Feb 14, 2009, 11:31 AM

Post #5 of 15 (1985 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Charlie Clark wrote at 2009-2-14 16:22 +0100:
> ...
>I'm not that familiar with Buildout but I would have thought that any
>direct import dependencies should be listed - and zope.location
>doesn't seem to be (neither are zope.event or zope.site for that
>matter). OTOH the condition >= seems to be being incorrectly
>interpreted. If this is a bug then it should be filed.

You are right, but unfortunately this is quite a deep problem
in "setuptools". "setuptools" does not determine the complete
dependancy graph and then looks for a global solution to the
set of restrictions.
Instead it satisfies restrictions incrementally thereby committing
some versions -- and may later find that they conflict with other
requirements.



--
Dieter
_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


tseaver at palladion

Feb 14, 2009, 11:33 AM

Post #6 of 15 (1984 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Charlie Clark wrote:
> Am 12.02.2009 um 14:45 schrieb yuppie:
>
>> install_requires=[
>> 'setuptools',
>> 'Zope2 >= 2.12.dev',
>> ],
>>
>> Is that the right way to resolve that issue? Could it cause any
>> trouble
>> if I would check in that change?
>
>
> Only for someone wishing to use it totally outside of a Zope context.

Given that package's job in life, I strongly doubt that we need to worry
about anybody using it outside of a Zope2 app. In fact, I think it
might be a good idea just to fold the package back into Zope2 (I don't
recall why it ever shipped separately).

> I'm not that familiar with Buildout but I would have thought that any
> direct import dependencies should be listed - and zope.location
> doesn't seem to be (neither are zope.event or zope.site for that
> matter). OTOH the condition >= seems to be being incorrectly
> interpreted. If this is a bug then it should be filed.

The transitive dependencies of another dependency don't need to be
listed: the problem Yuppie was fixing was a set of over-specific
dependencies, now redundant in the new, egg-centric world of Zope 2.12.
I think another fix would be to move the Zope2 import to the top of the
list, so that its own, more specific dependencies would be installed
first: however, I don't see much win over Yuppie's fix.


Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver [at] palladion
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJlxyD+gerLs4ltQ4RAnMhAKCVNpXav5TpO17EQDJKPeIE/JLC1wCfVzWY
maFcuCWJJY09WMDwxsYz4G4=
=wJCe
-----END PGP SIGNATURE-----

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


charlie at begeistert

Feb 14, 2009, 1:03 PM

Post #7 of 15 (1999 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Am 14.02.2009 um 20:33 schrieb Tres Seaver:

> Given that package's job in life, I strongly doubt that we need to
> worry
> about anybody using it outside of a Zope2 app. In fact, I think it
> might be a good idea just to fold the package back into Zope2 (I don't
> recall why it ever shipped separately).

If it is Zope2 specific then it should be part of Zope2: it's
monolithic but we love it anyway.

>> I'm not that familiar with Buildout but I would have thought that any
>> direct import dependencies should be listed - and zope.location
>> doesn't seem to be (neither are zope.event or zope.site for that
>> matter). OTOH the condition >= seems to be being incorrectly
>> interpreted. If this is a bug then it should be filed.
>
> The transitive dependencies of another dependency don't need to be
> listed: the problem Yuppie was fixing was a set of over-specific
> dependencies, now redundant in the new, egg-centric world of Zope
> 2.12.
> I think another fix would be to move the Zope2 import to the top of
> the
> list, so that its own, more specific dependencies would be installed
> first: however, I don't see much win over Yuppie's fix.


Yuppie's suggestion is fine with me and probably the second solution
best solution aside from just making it part of Zope2.

But that doesn't stop a bug being a bug. Dieter suggests that the bug
is with setuptools which gives it plenty of company. as far as I know.
Life used to be so simple with just distutils ;-)

Charlie
--
Charlie Clark
Helmholtzstr. 20
Düsseldorf
D- 40215
Tel: +49-211-938-5360
GSM: +49-178-782-6226



_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


tseaver at palladion

Feb 14, 2009, 5:31 PM

Post #8 of 15 (1978 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Charlie Clark wrote:
> Am 14.02.2009 um 20:33 schrieb Tres Seaver:
>
>> Given that package's job in life, I strongly doubt that we need to
>> worry
>> about anybody using it outside of a Zope2 app. In fact, I think it
>> might be a good idea just to fold the package back into Zope2 (I don't
>> recall why it ever shipped separately).
>
> If it is Zope2 specific then it should be part of Zope2: it's
> monolithic but we love it anyway.
>
>>> I'm not that familiar with Buildout but I would have thought that any
>>> direct import dependencies should be listed - and zope.location
>>> doesn't seem to be (neither are zope.event or zope.site for that
>>> matter). OTOH the condition >= seems to be being incorrectly
>>> interpreted. If this is a bug then it should be filed.
>> The transitive dependencies of another dependency don't need to be
>> listed: the problem Yuppie was fixing was a set of over-specific
>> dependencies, now redundant in the new, egg-centric world of Zope
>> 2.12.
>> I think another fix would be to move the Zope2 import to the top of
>> the
>> list, so that its own, more specific dependencies would be installed
>> first: however, I don't see much win over Yuppie's fix.
>
>
> Yuppie's suggestion is fine with me and probably the second solution
> best solution aside from just making it part of Zope2.
>
> But that doesn't stop a bug being a bug. Dieter suggests that the bug
> is with setuptools which gives it plenty of company. as far as I know.
> Life used to be so simple with just distutils ;-)

LOFL. Sure, "back in the day...", "You kids get off my lawn!", etc.

For all its flaws, setuptools fixes a lot of what is horribly broken in
distutils: most of the flaws arise from the choice to stay
pseudo-compatible with distutils, and reuse it, rather than starting
from scratch.


Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver [at] palladion
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJl3Bg+gerLs4ltQ4RAnnNAJ9MLRXchbp2T2JEb8Kt6XAQuEu+igCgnZXD
TtCtJw2kVgeQUmKO6AwIq0Y=
=Kzxx
-----END PGP SIGNATURE-----

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


tseaver at palladion

Feb 15, 2009, 7:51 AM

Post #9 of 15 (1975 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hanno Schlichting wrote:
> Tres Seaver wrote:
>> Charlie Clark wrote:
>>> Am 12.02.2009 um 14:45 schrieb yuppie:
>>>> install_requires=[
>>>> 'setuptools',
>>>> 'Zope2 >= 2.12.dev',
>>>> ],
>>>>
>>>> Is that the right way to resolve that issue? Could it cause any
>>>> trouble
>>>> if I would check in that change?
>>> I'm not that familiar with Buildout but I would have thought that any
>>> direct import dependencies should be listed - and zope.location
>>> doesn't seem to be (neither are zope.event or zope.site for that
>>> matter). OTOH the condition >= seems to be being incorrectly
>>> interpreted. If this is a bug then it should be filed.
>> The transitive dependencies of another dependency don't need to be
>> listed: the problem Yuppie was fixing was a set of over-specific
>> dependencies, now redundant in the new, egg-centric world of Zope 2.12.
>> I think another fix would be to move the Zope2 import to the top of the
>> list, so that its own, more specific dependencies would be installed
>> first: however, I don't see much win over Yuppie's fix.
>
> My main reason for specifying all direct dependencies of any package
> (and not just the Zope2 one) is that relying on transitive dependencies
> can cause trouble later on.
>
> For example:
>
> Package A depends on Zope2 (2.12)
> Package A depends on zope.app.foobar
> Zope2 2.12 depends on zope.app.foobar
>
> You could specify that package A only depends on Zope2.
>
> But what if Zope2 2.13 does no longer depend on zope.app.foobar?
>
> Suddenly you try to install Package A and import statements for
> zope.app.foobar break.
>
> With zope.app.foobar it is probably easier to see how such a package
> could be removed later on (say it has been renamed to zope.foobar or
> split into multiple packages) but it really can happen to any package.
>
> In a package based world, if you specify a dependency on a package, you
> can in my opinion only rely on the package contents itself to be there.
> You cannot rely on its dependencies to stay around.
>
> Zope2 the package is no different in this. Chances are that
> zope.location will stay a dependency of Zope2 for a long time, but for
> other packages it is far less clear. My answer to this is to always
> specify all direct dependencies.

The point in Yuppies changes is that the already-specified dependencies
*broke anyeay* with Zope 2.12, because of details of ordering inside
setuptools. Specifing *any* version requirements (even '>=x.y') is
impossibly fragile outside the context of a tightly-controlled index (at
which point the version requirements are redundant, and should be removed).

As I said earlier: five.localsitemanager should just be made part of
the Zope2 trunk: it is tightly-coupled to Zope2, and its presence as a
separate pacakge is just confusing and error-prone.



Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver [at] palladion
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJmDoS+gerLs4ltQ4RAlkVAJ0c14H5duToioqUYi6CCoM0PTeGewCgjzJH
YlJg6uNLQeqfPxuN4hYleGw=
=PcWY
-----END PGP SIGNATURE-----
_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


tseaver at palladion

Feb 15, 2009, 7:51 AM

Post #10 of 15 (1983 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hanno Schlichting wrote:
> Tres Seaver wrote:
>> Charlie Clark wrote:
>>> Am 12.02.2009 um 14:45 schrieb yuppie:
>>>> install_requires=[
>>>> 'setuptools',
>>>> 'Zope2 >= 2.12.dev',
>>>> ],
>>>>
>>>> Is that the right way to resolve that issue? Could it cause any
>>>> trouble
>>>> if I would check in that change?
>>> I'm not that familiar with Buildout but I would have thought that any
>>> direct import dependencies should be listed - and zope.location
>>> doesn't seem to be (neither are zope.event or zope.site for that
>>> matter). OTOH the condition >= seems to be being incorrectly
>>> interpreted. If this is a bug then it should be filed.
>> The transitive dependencies of another dependency don't need to be
>> listed: the problem Yuppie was fixing was a set of over-specific
>> dependencies, now redundant in the new, egg-centric world of Zope 2.12.
>> I think another fix would be to move the Zope2 import to the top of the
>> list, so that its own, more specific dependencies would be installed
>> first: however, I don't see much win over Yuppie's fix.
>
> My main reason for specifying all direct dependencies of any package
> (and not just the Zope2 one) is that relying on transitive dependencies
> can cause trouble later on.
>
> For example:
>
> Package A depends on Zope2 (2.12)
> Package A depends on zope.app.foobar
> Zope2 2.12 depends on zope.app.foobar
>
> You could specify that package A only depends on Zope2.
>
> But what if Zope2 2.13 does no longer depend on zope.app.foobar?
>
> Suddenly you try to install Package A and import statements for
> zope.app.foobar break.
>
> With zope.app.foobar it is probably easier to see how such a package
> could be removed later on (say it has been renamed to zope.foobar or
> split into multiple packages) but it really can happen to any package.
>
> In a package based world, if you specify a dependency on a package, you
> can in my opinion only rely on the package contents itself to be there.
> You cannot rely on its dependencies to stay around.
>
> Zope2 the package is no different in this. Chances are that
> zope.location will stay a dependency of Zope2 for a long time, but for
> other packages it is far less clear. My answer to this is to always
> specify all direct dependencies.

The point in Yuppies changes is that the already-specified dependencies
*broke anyeay* with Zope 2.12, because of details of ordering inside
setuptools. Specifing *any* version requirements (even '>=x.y') is
impossibly fragile outside the context of a tightly-controlled index (at
which point the version requirements are redundant, and should be removed).

As I said earlier: five.localsitemanager should just be made part of
the Zope2 trunk: it is tightly-coupled to Zope2, and its presence as a
separate pacakge is just confusing and error-prone.



Tres.
- --
===================================================================
Tres Seaver +1 540-429-0999 tseaver [at] palladion
Palladion Software "Excellence by Design" http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJmDoS+gerLs4ltQ4RAlkVAJ0c14H5duToioqUYi6CCoM0PTeGewCgjzJH
YlJg6uNLQeqfPxuN4hYleGw=
=PcWY
-----END PGP SIGNATURE-----

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


y.2009 at wcm-solutions

Feb 15, 2009, 9:00 AM

Post #11 of 15 (1989 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Hi!


Hanno Schlichting wrote:
> In a package based world, if you specify a dependency on a package, you
> can in my opinion only rely on the package contents itself to be there.
> You cannot rely on its dependencies to stay around.
>
> Zope2 the package is no different in this. Chances are that
> zope.location will stay a dependency of Zope2 for a long time, but for
> other packages it is far less clear. My answer to this is to always
> specify all direct dependencies.

I agree with you in general, but Zope2 is a special package because it
represents the Zope 2 platform and ships with a KGS.

Keeping all specified dependencies of all packages always up to date is
a big maintenance burden. Or do you have a tool that syncs the specified
dependencies with the code base automatically?

Regarding Zope 2 dependencies the win is minimal and in the case of
five.localsitemanager the explicit specification caused some trouble.


Cheers,

Yuppie


_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


charlie at begeistert

Feb 15, 2009, 9:25 AM

Post #12 of 15 (1987 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Am 15.02.2009 um 16:51 schrieb Tres Seaver:

I didn't get Hanno's e-mail and I can't find it in my spam filter
either.

> The point in Yuppies changes is that the already-specified
> dependencies
> *broke anyeay* with Zope 2.12, because of details of ordering inside
> setuptools. Specifing *any* version requirements (even '>=x.y') is
> impossibly fragile outside the context of a tightly-controlled index
> (at
> which point the version requirements are redundant, and should be
> removed).
>
> As I said earlier: five.localsitemanager should just be made part of
> the Zope2 trunk: it is tightly-coupled to Zope2, and its presence
> as a
> separate pacakge is just confusing and error-prone.


+1 It's always been another CMF package for me but one that I couldn't
drop into "Products". Leaving aside the discussions about whether this
is the right way to do things some of the sites we're working on were
started before everything was setup to work properly with buildout and
we still have other stuff in there which still won't.

Zope2 parts aren't suitable for running as independent packages. So
making things like the CMF dependent on a Zope2 release rather than
the various packages makes sense.

Charlie
--
Charlie Clark
Helmholtzstr. 20
Düsseldorf
D- 40215
Tel: +49-211-938-5360
GSM: +49-178-782-6226



_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


hannosch at hannosch

Feb 15, 2009, 3:15 PM

Post #13 of 15 (1980 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

yuppie wrote:
> Hanno Schlichting wrote:
>> In a package based world, if you specify a dependency on a package, you
>> can in my opinion only rely on the package contents itself to be there.
>> You cannot rely on its dependencies to stay around.
>
> I agree with you in general, but Zope2 is a special package because it
> represents the Zope 2 platform and ships with a KGS.

I'm fine with giving the Zope2 package this special meaning of
representing "the framework". As long as people don't mistake this as a
general rule to say: Oh, I just use this with Zope2, so lets specify it
as a dependency and don't think about it.

If a package only depends on Acquisition, DateTime and zope.* packages
it does no longer depend on "Zope2". I'd like to encourage people to
look at their real dependency and be honest about those. Especially
looking at things from the perspective of: "why does my package have a
Zope2 dependency" instead of "I use this inside Zope2, so let's specify
Zope2". The later information is where a classifier of
"Framework::Zope2" is appropriate, the former is not.

> Keeping all specified dependencies of all packages always up to date is
> a big maintenance burden. Or do you have a tool that syncs the specified
> dependencies with the code base automatically?

I don't have a tool to do this. Personally I think specifying
dependencies is the same as keeping a changelog updated or being strict
about version numbers - it's the extra administrative burden you get,
for making things into a package and offering it for reuse.

Hanno

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


hannosch at hannosch

Feb 15, 2009, 3:21 PM

Post #14 of 15 (1982 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Hanno Schlichting wrote:
> If a package only depends on Acquisition, DateTime and zope.* packages
> it does no longer depend on "Zope2". I'd like to encourage people to
> look at their real dependency and be honest about those. Especially
> looking at things from the perspective of: "why does my package have a
> Zope2 dependency" instead of "I use this inside Zope2, so let's specify
> Zope2". The later information is where a classifier of
> "Framework::Zope2" is appropriate, the former is not.

Damn, too late. I meant: Only add a install_requires=['Zope2'] if you
really have a dependency on the Zope2 package. Never ever make the
mistake of doing the lazy thing and mistaking it for a "I work with
Zope2". The expression of "working with" or "intended for" is what the
classifiers are for.

Hanno

_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests


dieter at handshake

Feb 16, 2009, 9:48 AM

Post #15 of 15 (1968 views)
Permalink
Re: [dev] five.localsitemanager: dependencies [In reply to]

Tres Seaver wrote at 2009-2-14 20:31 -0500:
> ...
>For all its flaws, setuptools fixes a lot of what is horribly broken in
>distutils: most of the flaws arise from the choice to stay
>pseudo-compatible with distutils, and reuse it, rather than starting
>from scratch.

But the dependancy handling is obviously introduced by "setuptools".



--
Dieter
_______________________________________________
Zope-CMF maillist - Zope-CMF [at] lists
http://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests

Zope cmf RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.