Hi, Ole,
I don't know maven at all yet. Looking forward to learning more about it!
It would be a shame if Maven doesn't support ">=". I see ">=" occurs
often in the competition ;-). Automatic upgrades (security updates,
for example) depend on most packages avoiding "=" dependencies where
possible.
Here is a Debian dependency example:
-------------------------
Package: apache2.2-common
Architecture: any
Depends: ${misc:Depends}, apache2-utils, net-tools, libmagic1,
mime-support, lsb-base
Conflicts: apache2-common, libapache2-mod-php5 (<= 5.1.6-3),
libapache2-mod-php4 (<= 4:4.4.4-2), libapache2-mod-mime-xattr (<=
0.3-2), libapache2-mod-mono (<Replaces: apache2-common
Here is RPM's httpd.spec file:
-------------------------
Name: httpd
Version: 2.2.3
Release: 1
Requires: apr >= 1.2.0, apr-util >= 1.2.0, gawk,
/usr/share/magic.mime, /usr/bin/find, openldap
Provides: webserver
Provides: httpd-mmn = %{mmn}
Conflicts: thttpd
Obsoletes: apache, secureweb, mod_dav
Here is Gentoo's apache-2.2.3.ebuild file:
-------------------------
RDEPEND="dev-lang/perl
>=dev-libs/apr-1.2.7
>=dev-libs/apr-util-1.2.7
dev-libs/expat
dev-libs/libpcre
app-misc/mime-types
sys-libs/zlib
ssl? ( dev-libs/openssl )
selinux? ( sec-policy/selinux-apache )
!mips? ( ldap? ( =net-nds/openldap-2* ) )"
DEPEND="${RDEPEND}
>=sys-devel/autoconf-2.59-r4"
These three "depedency management systems" either don't mention a
version at all (so allowing the dependency resolution engine to just
do its best), or they use ">=". The use of "=" is very rare!
(Notice that Debian's use of "<=" less-than is only occuring in the
"Conflicts" section).
Regarding:
Requires: jpackage-utils
I was just showing an example where no specific version is mentioned.
We just let RPM's database try its best.
You're right that non-versioned dependencies cause of a lot of:
[EMAIL PROTECTED]
But always setting "=" has little value. I want my automatic
upgrades! To me this is the whole point of entities like Redhat or
Debian or Gentoo, and JPackage, too! They use ">=" or "unspecified"
so that I can do automatic upgrades as an enduser. But they're also
very careful about what they put in the "repository" so that my
automatic upgrades don't cause me to say "[EMAIL PROTECTED]".
yours,
Julius
On 12/1/06, Ole Ersoy <[EMAIL PROTECTED]> wrote:
Hi Julius,
(JPackage team - could you please comment on this if
you think any of my rationale is kooko...Just remember
my mailbox limit is 1 Gig)
I have not investigated it personally, but
someone from JPackage said that it does.
Yes - It does support non-versioned dependencies :-)
Which I think is the cause of a lot of
[EMAIL PROTECTED]
showing up in some of the maven support mailing lists.
Personally I'm concerned about using any dependency
other than one set by =.
One could make the assumption that someone checked all
the dependencies outside of =. But if they missed
one, and someone uses it...
On the other hand = is the only thing used and the
application builds and runs, users can be fairly
certain that it's good to go. They can also be
certain that the developers took care in specifying
versioned dependencies.
This also encourages developers to be careful about
testing when changing depedencies (Since it takes a
warm body, at least for now).
Sorry - I missed the point of:
Requires: jpackage-utils
Could you please elaborate?
Thanks,
- Ole
--- Julius Davies <[EMAIL PROTECTED]> wrote:
> Hi, Ole,
>
> Probably the wrong venue for this question.
>
> Does maven2 support the "=, <, >, <=, >=" ranges
> possible in RPM?
>
>
http://www.rpm.org/max-rpm/s1-rpm-specref-preamble.html#S3-RPM-SPECREF-REQUIRES
>
>
> # I think both can be in single SPEC file, pinning
> the depedency.
> Requires: jpackage-utils >= 0:1.5;
> Requires: jpackage-utils < 0:2.0;
>
>
> Also, does mavn2 support non-versioned dependencies?
>
> # Just grab latest and greatest.
> Requires: jpackage-utils
>
> yours,
>
> Julius
>
>
> On 12/1/06, Ole Ersoy <[EMAIL PROTECTED]> wrote:
> > I'm testing rpm spec file generation right on
> > apache-server-main version 1.5 and noticed the
> > following in the:
> >
> > Requires: nlog4j = null
> >
> > Requires: spring-core = null
> >
> > Requires: spring-beans = null
> >
> > Requires: commons-logging = null
> >
> > Requires: spring-context = null
> >
> > So these dependencies have no corresponding
> version.
> >
> > I'll have a much more complete picture of the
> whole
> > build soon, but we may want to start updating
> versions
> > on all the poms.
> >
> > Cheers,
> > - Ole
> >
> >
> >
> >
>
____________________________________________________________________________________
> > Do you Yahoo!?
> > Everyone is raving about the all-new Yahoo! Mail
> beta.
> > http://new.mail.yahoo.com
> >
>
>
> --
> yours,
>
> Julius Davies
> 416-652-0183
> http://juliusdavies.ca/
>
____________________________________________________________________________________
Do you Yahoo!?
Everyone is raving about the all-new Yahoo! Mail beta.
http://new.mail.yahoo.com
--
yours,
Julius Davies
416-652-0183
http://juliusdavies.ca/