Age | Commit message (Collapse) | Author |
|
Don't import dirq unless we actually need it, i.e. if the experimental
option --queuedir is used.
Also remove dirq from setuptools requires
|
|
Permit the upload of a compressed empty file as a package file
Adjust a test pacakge to exercise that case
|
|
|
|
Report the offending packages if they aren't listed as past mistakes
|
|
Update tests appropriately:
- Remove naim test package, it's no longer valid
- Change to using arc package to test no sha512.sum behaviour
|
|
|
|
Removing a package doesn't make much sense currently.
We can't remove a package when it has been replaced by another one, all we
can do is replace it with an empty, obsolete one which depends on it's
replacement, so existing installs are updated to that.
Removing a package which is no longer relevant (i.e. an old soversion of a
shared library which has no users left) is permissible, but the files it
contains will linger forever in any existing installs.
|
|
This was an experiment
|
|
Fix the check if an uploaded file already exists in the release area.
This was broken by noarch changes.
|
|
Log an error if we need to access a package file in the release area which
isn't a valid compressed archive. Ideally, we'd use tarfile.is_tarfile() to
check that, but that can propagate exceptions from the decompressor.
(Perhaps we should also ignore these invalid files, but I'm not sure that is
a good idea.)
Note that we avoid opening the package files in the release area unless
unavoidable, as it's expensive. Validating a tar file involves reading the
entire file.
Always validate uploaded package files, and reject attempts to upload such
invalid files
Add appropriate tests
|
|
|
|
For noarch, we moved to a single timestamp per maintainer, but still reset
it if it wasn't checked for an individual arch
Pull the timestamp updating out to the maintainer class, so we can only
reset it if there were no reminders for any arch
|
|
|
|
Rather than adding a hint to indicate that a package is on the self-source
list and then later checking for that hint, directly check if it's on the
self-source list.
|
|
Rearrange file layout for python packaging
Add setup.py
Use python3 style relative imports
Add calm and mksetupini script entry points
Fix tests to locate testdata in the same directory
|
|
The versions containing hyphens are no longer present.
|
|
- Unfold process() as we need to validate both x86 and x86_64 before we can
move uploaded noarch packages to relarea
- Add arch as an argument to upload.scan(), package.write_setup_ini(),
pkg2html.update_package_listing() etc. rather than passing it around in args
- Use paths relative to relarea, rather than relarea/arch
- Generalize package merge to merge more than 2 sets of packages
- Remove uploads-scan script used in working-up
- Move the !reminder-timestamp file up to maintainer home dir
- Add a noarch package to testdata
- Update tests
|
|
|
|
Don't consider empty install packages as using any source they refer to, so
source files which are only used by empty install packages are reported as
effectively unused.
Log rather than throwing an exception when writing setup.ini in the
unexpected situation where an external-source is expected to exist, but
doesn't.
Add more reasonable test packages for keychain.
Update tests appropriately.
|
|
Remove filenames containing glob metacharacters aren't supported, it's
unclear that they ever actually worked correctly, and they are very hard to
implement safely. Report an erorr if an attempt is made to use them.
Also report an error if the remove file isn't empty
|
|
* _autorebase has a source package
* terminfo no longer has a hyphen in it's version
|
|
Even if the maintainer is just removing packages, we still have something to
do.
|
|
|
|
Also rename testdata/x86.hints to testdata/hints/x86
|
|
Rather than an unwieldy 6-tuple, return a named tuple from uploads.scan()
|
|
|
|
testpackage is supposedly a valid package, but doesn't have a setup.hint
update tests appropriately
add altering the setup.hint to upload test
|
|
Add an --okmissing option to mksetupini, modelled after genini
Add the okmissing token require-package, which disables checking that
required packages exist
This makes mksetupini a little more generally useful
|
|
Make --pkglist optional in mksetupini, and don't check package names
against the package list it is used.
|
|
|
|
Saying 'replacing' confuses people into thinking that we are moving the
file now, which isn't the case.
We'll warn about any differences in setup.hint before we do that move, which
is more informative, anyhow
|
|
Place a copy of each package upload into a filesystem queue, to be processed
by something else which does checks on the package
|
|
Also fix typos of 'warning' for 'warnings'
v2:
Fix typo
|
|
Tolerate and ignore random files in the homes directory
Add appropriate test
|
|
... if we had any
|
|
Shuffle the logging level of the message about apparently forgotten uploaded
files, emitted on every run, which is supposed to be suppresed from
maintainer mail, down to DEBUG
|
|
Add AbeyanceHandler(), which stores log messages and discards them if a
severity threshold is not crossed.
Use that with a threshold of ERROR for leads_mail (so it is silent unless
errors occured) and INFO for maintainer_mail (so it reports file moves).
Also, move mail_logs to a more logical place
|
|
This makes errors stand out more
|
|
Shuffle around logging levels a bit, so that moving files can be at INFO level
Also, add missing verbs to some log messages to make sentences
|
|
Include the hostname which sent the mail to make distinguishing mails coming
from test instances easier.
|
|
|
|
If we didn't have to ignore any files because there is no !ready, we no
longer need the timestamp of the last reminder about that, so we can remove
the !reminder-timestamp file.
This means that for a given maintainer, if another instance of missing
!ready occurs, the reminder is issued immediately, rather than being delayed
until the time the reminder for the first instance was scheduled.
|
|
Periodically emit warnings about apparently forgotten upload files which are
being ignored, but not on every run
v2:
Don't count dryruns
|
|
|
|
|
|
- match case-insensitively
- try harder to manufacture a 'package basename'
- ignore whitespace before ':'
- look for 'packagename -' as well
|
|
Don't just warn, also fix any sdesc which end with '.'
Update tests
|
|
Some sdesc erroneously contained multiple spaces between words.
|
|
This avoids having to treat requires: specially when showing differences,
which wasn't doing quite the right thing anyhow, as that was writing
a setup.ini based on the sorted requires, leading to a differences of
ordering on the next run...
|
|
|