623 Commits

Author SHA1 Message Date
Christoph Reiter
aa0637d87b CI: Update actions/cache 2024-02-01 20:25:36 +01:00
Christoph Reiter
d5779cd65d CI: Update actions/setup-python 2024-01-30 07:24:44 +01:00
Christoph Reiter
1c45f2ab2e Update deps 2024-01-10 08:22:56 +01:00
Christoph Reiter
0eca067dd7 Update deps 2023-12-07 11:32:22 +01:00
Christoph Reiter
1ed7c15c97 flake8 fixes 2023-10-22 16:19:57 +02:00
Christoph Reiter
dae5e305db CI: Update to actions/checkout@v4 2023-10-22 16:16:45 +02:00
Christoph Reiter
1d8af300c4 Move flake8 config from setup.cfg to .flake8
We don't use setuptools, so this makes things clearer
2023-10-22 16:07:49 +02:00
Christoph Reiter
1f4971c293 Drop support for Python 3.8/9 2023-10-22 16:03:57 +02:00
Christoph Reiter
fd1d5cc9ef Update deps 2023-10-22 15:54:52 +02:00
Christoph Reiter
e6700d2089 Disable the new pygithub read throttling
It seems a bit excessive and doesn't take into account that
lots of our request hit the cache via etags.
2023-10-16 20:28:22 +02:00
Christoph Reiter
d1048413f8 Update pygithub to v2
It now has its own default retry logic that fits the GH API,
so no longer pass our own and assume it handles things better.

The datetimes are now timezone aware, so we no longer have to fix
them.
2023-10-16 20:21:47 +02:00
Christoph Reiter
3e0391eb26 Update mypy 2023-10-16 19:44:28 +02:00
Christoph Reiter
049635cd1a Handle disabling certain build types
Even it the API returns them, if they are not in the active list they
will be ignored.
2023-10-16 18:58:08 +02:00
Christoph Reiter
ca30448b74 Update deps 2023-10-16 18:28:03 +02:00
Christoph Reiter
a79a8c4c7a Update deps 2023-09-25 21:39:59 +02:00
Christoph Reiter
3f5f60aa62 Remove Alexpux from uploaders
He hasn't required this in a while, so remove.

Feel free to ask to be re-added.
2023-09-16 14:07:08 +02:00
Christoph Reiter
79a45bf6c7 Require a user confirmation for manual uploads
We currently allow some users to manually upload packages (in case
they take too long for CI, or to bootstrap things).

In case of an account takeover this would allow an attacker to upload/replace
files in staging. To reduce the risk a bit ask for confirmation when downloading
the manually uploaded files.

Also add a "--noconfirm" option so we can avoid the questions in the staging
download script.

Ideally we would require users to sign their files, but this helps a bit at least.
2023-09-16 14:07:08 +02:00
Christoph Reiter
0852421d17 Update deps 2023-08-29 07:38:58 +02:00
Christoph Reiter
f368fb4951 update_status: handle github returning 404 for assets returned by the API
some time after replacing the file it randomly returns 200 and 404 a few times
until it settles on 200.
2023-08-19 23:11:54 +02:00
Christoph Reiter
0af6deb998 CI: allow the "Configure Pagefile" step to fail
it's only a requirement for some packages (flang), and there is a much higher
chance that it fails for a job that doesn't need it currently.
2023-08-16 20:55:46 +02:00
Christoph Reiter
c9fb5c61ab Update dependencies 2023-08-16 20:53:29 +02:00
Christoph Reiter
a3a5c1da40 update-status: only replace the status file if something has changed
Before uploading the status file we make a cached request for the old status
content and if there is no difference we don't upload anything.

This reduces the amount of write API calls and the amount of useless
packages.msys2.org refreshes a bit.
2023-08-16 20:40:22 +02:00
Christoph Reiter
1f1fabade2 clean-assets: only re-create releases if there are many assets
re-creating causes notifications for users. While users can disable them
let's just limit it to larger rebuilds, like the Python rebuilds

Fixes #77
2023-08-01 08:07:23 +02:00
Christoph Reiter
4db4e22d09 clean-assets: delete release in case all assets need to be deleted
In case a release has hundreds of files that need to be deleted this
requires quite a bit of time and also works against the API rate limiting.

In case we want to delete all assets of an release just delete and
re-create the whole release instead.

Fixes #77
2023-07-30 15:00:23 +02:00
Christoph Reiter
5b61a937a1 Update dependencies 2023-07-29 21:10:41 +02:00
Christoph Reiter
edc9089808 clean-assets: fewer parallel deletes
we are still hitting the secondary rate limit
2023-07-29 21:05:00 +02:00
Christoph Reiter
a1540964f5 Remove winjitdebug again
things should be fixed with Python 3.11
2023-07-24 18:22:19 +02:00
Christoph Reiter
95ab14dfe7 Update requirements.txt 2023-06-30 22:04:57 +02:00
Christoph Reiter
d68ad18de2 Port to new pygithub auth API 2023-06-30 22:00:01 +02:00
Christoph Reiter
305e7b4c68 Update dependencies 2023-06-30 21:57:33 +02:00
Christoph Reiter
79096b753c build: disable setup-msys2 caching for the arm64 runner
it's not really helping in case of self-hosted runners,
so just disable it there.
2023-05-28 21:02:12 +02:00
Christoph Reiter
6d6d83ea3e CI: Python 3.10 -> 3.11
looks like all dependencies have wheels for 3.11 now
2023-05-27 08:54:06 +02:00
Christoph Reiter
f78c47f441 Update dependencies 2023-05-26 22:49:17 +02:00
مهدي شينون (Mehdi Chinoune)
13b6b27fea Enable autobuild for qt5-static 2023-05-20 19:10:29 +02:00
Christoph Reiter
dfc132af9d download_text_asset: don't use the cache
This gets called in a threadpool and something in requests_cache
deadlocks.
2023-05-08 09:15:06 +02:00
Christoph Reiter
1a8a881082 build: try to make all files writable if git clean fails
I'm again not sure if this helps, but let's see..
2023-04-13 18:03:47 +02:00
Christoph Reiter
aa61bfdedd Update dependencies 2023-04-07 19:29:24 +02:00
Christoph Reiter
b51cfd02af Avoid upload_asset()
git fails to delete files we have uploaded, and I'm wondering if
upload_asset() is somehow keeping a handle open. While I can't find
anything suspicious in pygithub let's make the file handling explicit
and open/close ourselves.
2023-04-07 19:21:42 +02:00
Christoph Reiter
76a815c145 build: enable core.longpaths for the git repo
so "git clean" can potentially remove overly long paths created
during build time.
2023-04-07 19:12:47 +02:00
Christoph Reiter
236220ef8e typo 2023-04-07 10:43:40 +02:00
Christoph Reiter
60a287290d build: try to run git clean multiple times before giving up
For example it failed with:

warning: failed to remove B/mingw-w64-clang-i686-seacas-2023.02.03-2-any.pkg.tar.zst: Invalid argument

We now always use the same build directory, so if files can't be removed
we fail. Retry git clean/reset a few times before giving up and also
try before we start so in case it is fixed while the job isn't running on
a self-hosted runner we can continue automatically.
2023-04-07 10:41:49 +02:00
Christoph Reiter
cc301e1e62 build: shorter build paths
see https://github.com/msys2/msys2-autobuild/issues/71
2023-04-06 08:53:11 +02:00
Christoph Reiter
f3bf1b80b0 Revert "CI: run every 2 hours instead of 3"
This reverts commit 3116e844bee9bb9515ea892b37238e54cf2fcb98.
2023-04-05 16:58:30 +02:00
Christoph Reiter
3ef72c5eed CI: try per-job concurrency
so that we start jobs even if other jobs from a previous workflow are still running
2023-04-05 16:52:08 +02:00
Christoph Reiter
ccaad93b62 Don't ignore rdeps for mingw-w64-qt6-static
let's try
2023-04-05 07:43:58 +02:00
Christoph Reiter
fb16cedabf config: re-enable automatic builds for mingw-w64-qt6-static
see https://github.com/msys2/MINGW-packages/pull/16637#issuecomment-1496360513
2023-04-05 07:42:33 +02:00
Christoph Reiter
3116e844be CI: run every 2 hours instead of 3 2023-03-24 17:18:21 +01:00
Christoph Reiter
e3bb36afac more type annotations 2023-03-24 14:09:24 +01:00
Christoph Reiter
30fbfffb96 CI: installing wheel shouldn't be needed anymore
pip pulls it in now if needed
2023-03-24 13:44:21 +01:00
Christoph Reiter
8cb3c65f55 turns out matrix in needs is broken
https://github.com/orgs/community/discussions/25364
2023-03-24 13:27:50 +01:00