- 29 Apr, 2021 2 commits
-
-
Julian Andres Klode authored
-
Julian Andres Klode authored
Passing the binary causes it to fail trying to find the `false` compressor when a binary for a given compressor is not installed. Gbp-Dch: full LP: #1926437
-
- 12 Apr, 2021 1 commit
-
-
Julian Andres Klode authored
We disabled that in 2016, but it does not seem necessary anymore, seems to break LTO and possibly reduces security.
-
- 21 Jan, 2021 1 commit
-
-
Helmut Grohne authored
Closes: #980719
-
- 10 Dec, 2020 2 commits
-
-
Julian Andres Klode authored
-
Julian Andres Klode authored
The internal FileFd object now owned the PyObject* that gave us the descriptor but we were never visiting that object during garbage collection, so if there was a cycle, Python could not realize that. Make the objects garbage collectable, by adding VISIT and CLEAR calls for self->Fd, and by making the FileFd object support garbage collection in the first place.
-
- 09 Dec, 2020 2 commits
-
-
Julian Andres Klode authored
correctly The lines that created self->Fd and that then made use of it were swapped, causing a segmentation fault. Also the life of the file object was tracked incorrectly, causing the file to be closed if it was a temporary one. Closes: #977000
-
Julian Andres Klode authored
-
- 01 Dec, 2020 1 commit
-
-
Julian Andres Klode authored
-
- 25 Nov, 2020 2 commits
-
-
Julian Andres Klode authored
-
Julian Andres Klode authored
-
- 24 Nov, 2020 2 commits
-
-
Julian Andres Klode authored
apt_inst.DebFile provides two members `data` and `control` for easy access to those tarballs. Each of those members stores a reference to the DebFile as its owner: v-----------------\ control ----\ | -> deb -| data ----/ | ^-----------------/ This means that whenever a DebFile is successfully constructed, and no longer needed, it won't be collected until the GC runs, which is bad, as the DebFile holds an open FileFd. Introduce a __FileFd wrapper that holds the FileFd and becomes the owner of both control and data, and replaces the direct use of the FileFd in ArArchive/DebFile: v-----------------------------\ control ----\ \ -> __FileFd <- deb -| data ----/ / ^-----------------------------/ This avoids the reference cycle, ensuring the memory and file descriptor are released by the reference counter as soon as the reference count drops to 0. A future version should move `apt_inst.__FileFd` to `apt_pkg.FileFd` and expose all the methods, such that people can make use of FileFd's extensive compression support. We have a similar cycle in TagFile that we have yet to address, the problem there is arguably more frustrating, as the buffer I believe is stored inside the TagFile, and that's really shared between the TagSection objects. This is related to LP: #1899193 and CVE-2020-27351, but an additional hardening measure - the fix for those bugs was for more direct leaks.
-
Julian Andres Klode authored
Fix various file descritor, and memory leaks in ArArchive, DebFile, and TagFile by introducing a new PyApt_UniqueObject smart pointer that is like a unique_ptr, but backportable to older releases, and automatically clears subobjects, so objects with cycles like DebFile and TagFile will be released on error paths. LP: #1899193 GHSL-2020-170 CVE-2020-27351
-
- 28 Oct, 2020 1 commit
-
-
Niels Thykier authored
-
- 27 Oct, 2020 6 commits
-
-
Julian Andres Klode authored
Varying cases and one is just shortened to medium, but oh well, it's all better than the previous words. LP: #1849406
-
Julian Andres Klode authored
-
Julian Andres Klode authored
Do not hardcode Debian + Ubuntu codenames, use distro-info-data See merge request apt-team/python-apt!52
-
Julian Andres Klode authored
Code cleanup I did not want to mix with the actual work. Gbp-Dch: ignore
-
Julian Andres Klode authored
The new name is less confusing, and makes stuff easier, but also harder for pinning, but who cares really.
-
Julian Andres Klode authored
and Ubuntu Read the data from distro-info-data and expand templates in-memory such that we don't have to duplicate data. For Ubuntu, this changes some historical releases a bit more, but the changes do seem correct, and the test suite still passes. Mostly just some reorganization that was done in later releases passed down to older releases. LP: #1727470
-
- 15 Oct, 2020 3 commits
-
-
Julian Andres Klode authored
-
Julian Andres Klode authored
Also remove the APT PPA
-
Julian Andres Klode authored
Mypy 0.790 complains that: apt/package.py:473: error: Variable "builtins.NotImplemented" is not valid as a type apt/package.py:473: note: See https://mypy.readthedocs.io/en/latest/common_issues.html#variables-vs-type-aliases This worked fine in 0.782. As a workaround, use Any instead of NotImplemented. Ugh See https://github.com/python/mypy/issues/4791 for more information.
-
- 14 Oct, 2020 1 commit
-
-
Julian Andres Klode authored
-
- 30 Sep, 2020 2 commits
-
-
Julian Andres Klode authored
Fix some issues reported by lintian See merge request apt-team/python-apt!49
-
Julian Andres Klode authored
Fix sphinx docs See merge request apt-team/python-apt!51
-
- 29 Sep, 2020 6 commits
-
-
Dave Jones authored
Fix a trivial "unused comment" complaint from mypy
-
Dave Jones authored
Squash lots of warnings about improper C syntax by switching the docs to use the sphinx cpp domain instead (which also required switching c:data definitions to cpp:var as the latter domain lacks the "data" definition).
-
Dave Jones authored
The highlightlang directive was deprecated in favour of highlight. Also fix a warning about parsing a code-block (which is actually an e-mail snippet).
-
Dave Jones authored
The HashStringList definition is already automatically including :members: in its output, so the autoattribute:: redundantly re-defines the "usable" attribute, leading to the warning.
-
Dave Jones authored
At some point in its history, sphinx switched from using contents.rst to index.rst as the master document and now warns that if projects aren't using index.rst they need to explicitly set master_doc in their configuration.
-
Dave Jones authored
The defindex.html template has been obsolete for yonks and has been removed, unremoved, deprecated, and finally (definitely?) removed as of sphinx 3. See https://github.com/sphinx-doc/sphinx/issues/2986 for the sordid history :)
-
- 25 Apr, 2020 5 commits
-
-
Debian Janitor authored
Fixes: lintian: out-of-date-standards-version See-also: https://lintian.debian.org/tags/out-of-date-standards-version.html
-
Debian Janitor authored
Fixes: lintian: debian-changelog-line-too-long See-also: https://lintian.debian.org/tags/debian-changelog-line-too-long.html
-
Debian Janitor authored
Fixes: lintian: file-contains-trailing-whitespace See-also: https://lintian.debian.org/tags/file-contains-trailing-whitespace.html
-
Julian Andres Klode authored
-
Julian Andres Klode authored
LP: #1874880
-
- 20 Apr, 2020 3 commits
-
-
Julian Andres Klode authored
-
Julian Andres Klode authored
This includes, but might not be limited to: - explicit version checks - try/except ImportError wrapping of typing imports - referencing imported types like `Type # pyflakes` because older pyflakes stumbled upon them only being used in `# type` comments
-
Julian Andres Klode authored
Doing this via pybuild is somewhat nasty, as it does not allow us to move all the common files into the common package itself, so we have to hack around that. I'd like to more declaratively state which files belong into common, or for pybuild to figure that out itself (it ain't hard), but meh, what can I do? This fixes the problem where the wildcard that was matching debug symbols "d-*" (formerly dm-*) also is matching kfreebsd-, and hence caused FTBFS on freebsd. Closes: #958118
-