[MacPorts] #17041: port livecheck makes faulty version comparison
MacPorts
noreply at macports.org
Fri Nov 7 13:01:29 PST 2008
#17041: port livecheck makes faulty version comparison
----------------------------------+-----------------------------------------
Reporter: devans at macports.org | Owner: macports-tickets at lists.macosforge.org
Type: defect | Status: new
Priority: Normal | Milestone: MacPorts base bugs
Component: base | Version: 1.7.0
Resolution: | Keywords: livecheck
Port: |
----------------------------------+-----------------------------------------
Comment(by devans at macports.org):
Although Portfile livecheck has been fixed for the two examples above the
comparison problem in base remains.
The attached patch to portlivecheck.tcl fixes the problem for both the
regex and regexm cases.
To illustrate using geneweb as my new example,
{{{
port -d livecheck geneweb
DEBUG: Found port in file:///opt/macports/trunk/dports/genealogy/geneweb
DEBUG: Changing to port directory:
/opt/macports/trunk/dports/genealogy/geneweb
DEBUG: setting option os.universal_supported to yes
DEBUG: org.macports.load registered provides 'load', a pre-existing
procedure. Target override will not be provided
DEBUG: org.macports.distfiles registered provides 'distfiles', a pre-
existing procedure. Target override will not be provided
DEBUG: adding the default universal variant
DEBUG: Requested variant powerpc is not provided by port geneweb.
DEBUG: Requested variant darwin is not provided by port geneweb.
DEBUG: Requested variant no_x11 is not provided by port geneweb.
DEBUG: Requested variant macosx is not provided by port geneweb.
DEBUG: Executing org.macports.main (geneweb)
DEBUG: Executing org.macports.livecheck (geneweb)
DEBUG: Portfile modification date is Thu Oct 09 15:43:57 PDT 2008
DEBUG: Port (livecheck) version is 5.01
DEBUG: Fetching http://freshmeat.net/projects-xml/geneweb/geneweb.xml
DEBUG: The regex is
"<latest_release_version>(.*)</latest_release_version>"
DEBUG: The regex matched
"<latest_release_version>4.09</latest_release_version>", extracted "4.09"
geneweb seems to have been updated (port version: 5.01, new version: 4.09)
}}}
which is not correct. After the patch,
{{{
port -d livecheck geneweb
DEBUG: Found port in file:///opt/macports/trunk/dports//genealogy/geneweb
DEBUG: Changing to port directory:
/opt/macports/trunk/dports/genealogy/geneweb
DEBUG: setting option os.universal_supported to yes
DEBUG: org.macports.load registered provides 'load', a pre-existing
procedure. Target override will not be provided
DEBUG: org.macports.distfiles registered provides 'distfiles', a pre-
existing procedure. Target override will not be provided
DEBUG: adding the default universal variant
DEBUG: Requested variant powerpc is not provided by port geneweb.
DEBUG: Requested variant darwin is not provided by port geneweb.
DEBUG: Requested variant macosx is not provided by port geneweb.
DEBUG: Executing org.macports.main (geneweb)
DEBUG: Executing org.macports.livecheck (geneweb)
DEBUG: Portfile modification date is Thu Oct 09 15:43:57 PDT 2008
DEBUG: Port (livecheck) version is 5.01
DEBUG: Fetching http://freshmeat.net/projects-xml/geneweb/geneweb.xml
DEBUG: The regex is
"<latest_release_version>(.*)</latest_release_version>"
DEBUG: The regex matched
"<latest_release_version>4.09</latest_release_version>", extracted "4.09"
DEBUG: Livecheck version "5.01" is newer than or equal to extracted
version "4.09"
geneweb seems to be up to date
}}}
which is correct. A test case for the situation where an update is
required is lifelines
{{{
port -d livecheck lifelines
DEBUG: Found port in
file:///opt/macports/trunk/dports//genealogy/lifelines
DEBUG: Changing to port directory:
/opt/macports/trunk/dports/genealogy/lifelines
DEBUG: setting option os.universal_supported to yes
DEBUG: org.macports.load registered provides 'load', a pre-existing
procedure. Target override will not be provided
DEBUG: org.macports.distfiles registered provides 'distfiles', a pre-
existing procedure. Target override will not be provided
DEBUG: adding the default universal variant
DEBUG: Requested variant powerpc is not provided by port lifelines.
DEBUG: Requested variant darwin is not provided by port lifelines.
DEBUG: Requested variant macosx is not provided by port lifelines.
DEBUG: Executing org.macports.main (lifelines)
DEBUG: Executing org.macports.livecheck (lifelines)
DEBUG: Portfile modification date is Thu Oct 09 15:43:57 PDT 2008
DEBUG: Port (livecheck) version is 3.0.46.1
DEBUG: Fetching
http://sourceforge.net/export/rss2_projfiles.php?project=lifelines
DEBUG: The regex is "<title>lifelines (.*) released.*</title>"
DEBUG: The regex matched "<title>lifelines 3.0.62 released (Sat, 06 Oct
2007 22:02:33 GMT)</title>", extracted "3.0.62"
DEBUG: The regex matched "<title>lifelines 3.0.61 released (Wed, 08 Aug
2007 14:38:03 GMT)</title>", extracted "3.0.61"
DEBUG: The regex matched "<title>lifelines 3.0.60 released (Fri, 06 Jul
2007 22:23:48 GMT)</title>", extracted "3.0.60"
DEBUG: The regex matched "<title>lifelines 3.0.59 released (Fri, 11 May
2007 19:39:36 GMT)</title>", extracted "3.0.59"
DEBUG: The regex matched "<title>lifelines beta versions 3.0.58 released
(Sun, 06 May 2007 23:34:25 GMT)</title>", extracted "beta versions 3.0.58"
DEBUG: The regex matched "<title>lifelines beta versions 3.0.57 released
(Sun, 22 Apr 2007 19:47:44 GMT)</title>", extracted "beta versions 3.0.57"
DEBUG: The regex matched "<title>lifelines beta versions 3.0.56 released
(Thu, 19 Apr 2007 21:53:27 GMT)</title>", extracted "beta versions 3.0.56"
DEBUG: The regex matched "<title>lifelines beta versions 3.0.55 released
(Fri, 13 Apr 2007 22:21:46 GMT)</title>", extracted "beta versions 3.0.55"
DEBUG: The regex matched "<title>lifelines beta versions 3.0.54 released
(Tue, 10 Apr 2007 01:26:34 GMT)</title>", extracted "beta versions 3.0.54"
DEBUG: The regex matched "<title>lifelines beta versions 3.0.53 released
(Wed, 04 Apr 2007 23:34:14 GMT)</title>", extracted "beta versions 3.0.53"
DEBUG: Extracted version "3.0.62" is newer than livecheck version
"3.0.46.1"
lifelines seems to have been updated (port version: 3.0.46.1, new version:
3.0.62)
}}}
which is correct.
I don't think this is a risky change but since this is my first effort at
mucking around with base files, I'd appreciate it if someone with more
experience would review this fix prior to committing to svn.
Thanks
--
Ticket URL: <http://trac.macports.org/ticket/17041#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list