Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gentoo-bumpchecker:master commit in: modules/
Date: Fri, 03 Mar 2017 23:50:57
Message-Id: 1488575018.a92c21c23496c06f0a7056f37db8d8f097f8aa1f.leio@gentoo
1 commit: a92c21c23496c06f0a7056f37db8d8f097f8aa1f
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Fri Mar 3 21:02:35 2017 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Fri Mar 3 21:03:38 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/gentoo-bumpchecker.git/commit/?id=a92c21c2
7
8 gnome: Remove some old scraping related code we won't need
9
10 gnome includes a JSON file for each package with all the versions that
11 many other tools rely on now, so we won't need full scraping again
12
13 modules/gnome_module.py | 103 ------------------------------------------------
14 1 file changed, 103 deletions(-)
15
16 diff --git a/modules/gnome_module.py b/modules/gnome_module.py
17 index 911391a..062fed7 100644
18 --- a/modules/gnome_module.py
19 +++ b/modules/gnome_module.py
20 @@ -34,10 +34,6 @@ class GNOME:
21 self.gnome_release = ".".join(gnome_release_list[:2])
22
23 self.ftpserver = "download.gnome.org"
24 - self.release_directories = ["admin/" + self.major_release + "/" + self.full_release + "/",
25 - "platform/" + self.major_release + "/" + self.full_release + "/",
26 - "desktop/" + self.major_release + "/" + self.full_release + "/",
27 - "bindings/" + self.major_release + "/" + self.full_release + "/"]
28 self.latest_versions_file_path = 'http://www.gnome.org/~vuntz/tmp/versions/'
29 self.latest_versions_url = self.latest_versions_file_path + 'versions-' + self.gnome_release
30 self.release_versions_file_path = 'https://download.gnome.org/teams/releng/'
31 @@ -71,105 +67,6 @@ class GNOME:
32 def generate_data_release(self):
33 return self.generate_data_from_versions_markup(self.release_versions_file_path + self.full_release + '/versions')
34
35 - """ We might want to modify this later to an extra fallback and/or for non-official modules whose tarballs are hosted on GNOME or compatible FTP
36 - def generate_data_ftp(self):
37 - # Deprecated: connect to ftp and get the list of all the packages in the release directories
38 - walker = ftp_module.FTPWalker(self.ftpserver,"anonymous","test@××××.com")
39 -
40 - files = []
41 - for directory in self.release_directories:
42 - f_files = ftp_module.find_files(walker, directory,"","")
43 - files.extend(f_files)
44 -
45 - # filter out bad files
46 - files = self.filter_files(files)
47 -
48 - # create package objects for the files
49 - release_packages = [] # the packages that are required for a release
50 - for package_name in files:
51 - release_package = package_module.Package(package_name)
52 - release_packages.append(release_package)
53 -
54 - # while connected, find out the latest version of the packages that we found in the
55 - # release directories
56 - latest_packages = [] # the latest versions of packages on the gnome ftp.
57 - for package in release_packages:
58 - file_list = ftp_module.find_files(walker, "pub/GNOME/sources" + "/" + package.raw_name + "/" + package.major_minor,"","")
59 -
60 - # if maintainers release tarballs late, they will not get picked up
61 - # therefore, if the tarball is 1 less than the y of the x.y you
62 - # specify, lets also check to see if there are any files for
63 - # the actual release number.
64 - major = package.major_minor.split(".")[0]
65 - minor = package.major_minor.split(".")[1]
66 - options = clioptions_module.Options()
67 - args = options.get_arguments()
68 - release_minor = args.release_number.split(".")[1]
69 -
70 - if int(minor) == (int(release_minor) -1):
71 - file_list_future = ftp_module.find_files(walker, "pub/GNOME/sources" + "/" + package.raw_name + "/" + major + "." + str(int(minor)+1),"","")
72 -
73 - # if there are results, replace the old list.
74 - if len(file_list_future) > 0:
75 - file_list = file_list_future
76 - elif self.nextrev == True:
77 - # Try to find minor+1
78 - file_list_future = ftp_module.find_files(walker, "pub/GNOME/sources" + "/" + package.raw_name + "/" + major + "." + str(int(minor)+1),"","")
79 -
80 - # if there are results, replace the old list.
81 - if len(file_list_future) > 0:
82 - file_list = file_list_future
83 -
84 - # make sure we don't try to do this on directories with no files,
85 - # or on directories that don't exist
86 -
87 - # create package objects for the files
88 - if len(file_list) > 0:
89 - latest = self.filter_latest_only(file_list)
90 - latest_package = package_module.Package(package.name + "-" + latest)
91 - latest_packages.append(latest_package)
92 -
93 - # disconnect from the ftp
94 -
95 - # cache the results
96 - cache = simple_cache_module.SimpleCache()
97 - for release_package in release_packages:
98 - latest_package = portage_module.findpackage(release_package.name, latest_packages)
99 - if latest_package != None:
100 - cache.write_to_queue(release_package.name_plus_version_plus_revision, latest_package.name_plus_version_plus_revision)
101 - else:
102 - print "No matching latest package!" + str(release_package.name)
103 - cache.flush_queue()
104 -
105 - return (release_packages, latest_packages)
106 - """
107 -
108 - def filter_files(self, files):
109 - # we want to filter out all the bad files.
110 - newfiles = []
111 - for file in files:
112 - # only keep files with .tar.bz2 ending.
113 - if 0 < file.find(".tar.") and 0 < file.find(".bz2"):
114 - file = file.replace(".tar.bz2", "")
115 - newfiles.append(file)
116 -
117 - return newfiles
118 -
119 - # this needs to be fixed so that if a directory doesn't have LATEST-IS-, it returns an error
120 - def filter_latest_only(self, lines):
121 - latest_string = "LATEST-IS-"
122 - latest = ""
123 - for item in lines:
124 - if 0 <= item.string.rfind(latest_string):
125 - latest = item
126 -
127 - try:
128 - return_latest = latest[10:]
129 - except:
130 - return_latest = ""
131 -
132 - return return_latest
133 -
134 import portage_module
135 def compare_packages(release_packages, latest_packages, packages_in_portage):
136 # we care about 5 cases