Commits on Source 6
-
No need to crash with a stacktrace when the slave is gone and the pipe to it is broken. Just log this and exit 1. Fixes: Traceback (most recent call last): File "/srv/piuparts.debian.org/share/piuparts/piuparts-master-backend", line 433, in <module> main() File "/srv/piuparts.debian.org/share/piuparts/piuparts-master-backend", line 423, in main m = Master(sys.stdin, sys.stdout) File "/srv/piuparts.debian.org/share/piuparts/piuparts-master-backend", line 154, in __init__ self._writeline("hello") File "/srv/piuparts.debian.org/share/piuparts/piuparts-master-backend", line 111, in _writeline self._output.flush() BrokenPipeError: [Errno 32] Broken pipe Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'> BrokenPipeError: [Errno 32] Broken pipe Signed-off-by:Holger Levsen <holger@layer-acht.org>
-
During the port to python3 piupartslib was changed to no longer auto-import some of its submodules. Import the required submodules directly where now needed. Fixes: Traceback (most recent call last): File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1910, in <module> main() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1849, in main section = Section(section_name, master_directory, doc_root, packagedb_cache=packagedb_cache) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 827, in __init__ self._load_package_database(section, master_directory) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 859, in _load_package_database db = piupartslib.packagesdb.PackagesDB(prefix=sectiondir) AttributeError: module 'piupartslib' has no attribute 'packagesdb' Signed-off-by:Holger Levsen <holger@layer-acht.org>
-
In python3 dict().keys() returns a dict_keys() view and not a list as in python2. Replace the now unavailable remove() by a set subtraction. Fixes: Traceback (most recent call last): File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1911, in <module> main() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1851, in main section.generate_output(output_directory, section_names, problem_list, web_host) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1660, in generate_output self.generate_html() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1574, in generate_html self.cleanup_removed_packages(logs_by_dir) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1536, in cleanup_removed_packages vdirs.remove("reserved") AttributeError: 'dict_keys' object has no attribute 'remove' Signed-off-by:Holger Levsen <holger@layer-acht.org>
-
Fixes: Traceback (most recent call last): File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1911, in <module> main() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1851, in main section.generate_output(output_directory, section_names, problem_list, web_host) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1660, in generate_output self.generate_html() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1580, in generate_html self.print_by_dir(self._output_directory, logs_by_dir) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 943, in print_by_dir desc_by_dir[vdir], vlist) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 930, in write_log_list_page "logrows": "".join(lines), File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 890, in _write_template_html write_template_html(filename, body, mapping, defer_if_unmodified=defer_if_unmodified, md5cache=self._md5cache) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 714, in write_template_html content_md5 = hashlib.md5(htmlpage.safe_substitute(mapping)).hexdigest() TypeError: Unicode-objects must be encoded before hashing Signed-off-by:Holger Levsen <holger@layer-acht.org>
-
Fixes: Traceback (most recent call last): File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1911, in <module> main() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1851, in main section.generate_output(output_directory, section_names, problem_list, web_host) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1660, in generate_output self.generate_html() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1600, in generate_html pickle.dump(self._md5cache['new'], f) TypeError: write() argument must be str, not bytes Signed-off-by:Holger Levsen <holger@layer-acht.org>
-
Do not error out if the cache file is empty. Fixes: Traceback (most recent call last): File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1911, in <module> main() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1851, in main section.generate_output(output_directory, section_names, problem_list, web_host) File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1660, in generate_output self.generate_html() File "/srv/piuparts.debian.org/share/piuparts/piuparts-report", line 1563, in generate_html self._md5cache['old'] = pickle.load(f) EOFError: Ran out of input Signed-off-by:Holger Levsen <holger@layer-acht.org>