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 |