Commit graph

1044 commits

Author SHA1 Message Date
Jakob Beckmann
f7d136fea7 chore: add luajitPackages.sofa 2025-06-07 22:27:16 +02:00
Wolfgang Walther
ad4b36d2d2
ci/check-cherry-picks: move from maintainers/scripts
The script is part of CI and changes to it should be reviewed by the CI
owners. Thus moving it to ci/ is the most sensible thing to do.
2025-05-28 12:52:36 +02:00
Wolfgang Walther
642de212a6
maintainer/scripts/check-cherry-picks: fix calling from outside nixpkgs
The CI job calls this as trusted/maintainers/..., i.e. with a working
directory outside the checkout. The git commands inside the script
assume to be inside the checkout, though, so let's force that.
2025-05-27 20:00:24 +02:00
Wolfgang Walther
d283c3b36f
maintainer/scripts/check-cherry-picks: propagate git errors instead of passing silently
Bash will not propagate the exit code from a subshell within a
herestring, so the script silently passes when git throws an error
there. Re-arranging things a bit and an error will now be thrown.
2025-05-27 19:59:28 +02:00
Simon Hollingshead
6b6e23bfda
treewide: maintainers-list.nix -> maintainer-list.nix (#409585) 2025-05-22 15:42:16 +05:30
Austin Horstman
31bc320fd1
pluginupdate: fix AttributeError when handling HTTPResponse objects
Fix an issue in the vim-plugins-updater where it was trying to access the

'normalized_name' attribute on an HTTPResponse object, causing the updater

to crash with:

AttributeError: 'HTTPResponse' object has no attribute 'normalized_name'

The fix adds type checking to ensure we only access normalized_name on

Plugin objects, and properly handle other types like Exceptions and

HTTPResponse objects.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-05-18 09:06:48 -05:00
Austin Horstman
9831a2b6c3
pluginupdate.py: GITHUB_API_TOKEN -> GITHUB_TOKEN
Should use the standard token variable that github and the rest of the
codebase uses.
2025-05-18 01:02:23 -05:00
nixpkgs-ci[bot]
7b793f256a
Merge master into staging-next 2025-05-08 18:05:13 +00:00
K900
2ea454c9aa maintainers/scripts/kde: fix Rust update logic 2025-05-08 15:04:52 +03:00
Jan Tojnar
bfe2ceeb18 Merge branch 'staging-next' into staging 2025-05-07 02:00:46 +02:00
Jan Tojnar
2e0c34649b maintainers/scripts/update.nix: Fix reverse toposort with independent packages
When updating GNOME packages in reverse topological order using the following command:

    nix-shell maintainers/scripts/update.nix --arg predicate '(path: pkg: builtins.any (team: team.shortName == "GNOME") pkg.meta.teams or [])' --argstr order reverse-topological

the `update.py` script would crash with `ValueError` on calling `ordered.index("adwaita-fonts")`.

This happened because the `adwaita-fonts` does not depend on any other GNOME package, nor it is depended upon by one.
As a result, it had been discarded by the `reverse_edges` function.

Co-authored-by: Philip Taron <philip.taron@gmail.com>
2025-05-07 00:49:25 +02:00
Wolfgang Walther
224de839f1
workflows/check-maintainers-sorted: drop and replace with keep-sorted
We already have a generic keep-sorted workflow, so we don't need to roll
our own for the maintainers list.

This will result in a slightly different order, because the nix script
ignored "-" and "_", while keep-sorted sorts them first. But, the order
is consistent and that's what matters.
2025-05-06 21:29:26 +02:00
nixpkgs-ci[bot]
c283e7a623
Merge staging-next into staging 2025-05-01 06:06:34 +00:00
K900
24e0fd90ea Merge remote-tracking branch 'origin/master' into staging-next 2025-05-01 08:20:39 +03:00
Anton Tetov
bcb6da4a23 luaPackages.http: 0.3.0->0.4.0 2025-05-01 01:06:59 +02:00
Gaétan Lepage
d12267ab0a
luaPackages.luv: 1.48.0-2 -> 1.50.0-1 (#393966) 2025-04-26 09:13:12 +02:00
K900
c8c30c91d5 Merge remote-tracking branch 'origin/master' into staging-next 2025-04-25 16:12:45 +03:00
aleksana
80e51660ea maintainers/scripts/bootstrap-files: Add loongarch64 to CROSS_TARGETS 2025-04-23 22:57:38 +08:00
aleksana
9d2c9b5be4 maintainers/scripts/bootstrap-files: fix generated file formatting 2025-04-23 22:57:37 +08:00
nixpkgs-ci[bot]
30095bf054
Merge 21c17995f5 into haskell-updates 2025-04-22 00:19:52 +00:00
Tristan Ross
88f0276649
check-meta: add a teams attribute (#394797) 2025-04-20 16:17:39 -07:00
sternenseemann
6eafb08399 Merge commit ee446f457b into haskell-updates 2025-04-19 20:48:13 +02:00
K900
61f47d87d6
kdePackages: Gear 24.12 -> 25.04, assorted cleanups (#399446) 2025-04-18 13:22:35 +03:00
Morgan Jones
0173b12099
maintainers/scripts: add get-maintainer-pings-between.sh
Sometimes it is useful to see which maintainers your change will ping,
to know who you are going to spam in advance.
2025-04-17 23:54:30 -07:00
K900
6045aeb8e0 maintainers/scripts/kde: support updating cargoDeps 2025-04-17 13:19:36 +03:00
Pol Dellaiera
8a61921ea9
typst: add initial support for typst packages (#369283) 2025-04-17 09:43:04 +00:00
nixpkgs-ci[bot]
73a1ced090
Merge c73deb7619 into haskell-updates 2025-04-17 00:19:30 +00:00
Austin Horstman
ec2ff51350
luaPackages.bit32: 5.3.0-1 -> 5.3.5.1-1
Switches from the archived lua-compat-5.2 repository to the maintained
lua-compat-5.3 version.
2025-04-16 08:58:31 -05:00
nixpkgs-ci[bot]
f1ca36684b
Merge aed881aa96 into haskell-updates 2025-04-11 00:19:43 +00:00
Matthieu C.
446feb2c0c luaPackages.grug-far-nvim: init at 20250304
I've added the tests because I like the ability to check the behavior of
the plugin when run in the sandbox without my crazy config.
It also helps documenting how to check the plugin when running updates.
2025-04-10 19:06:35 +02:00
Wolfgang Walther
c1e7bdadb0
maintainers/scripts/haskell/regenerate-hackage-packages.sh: run nixfmt without --fast as well 2025-04-06 11:35:14 +02:00
Gongqi Huang
c47a2a8ac7 typst: add support to instantiate typst with a set of typst packages 2025-04-06 09:02:03 +02:00
Gongqi Huang
d976d61d9e typst: add typst packages from typst universe 2025-04-06 09:01:58 +02:00
Wolfgang Walther
4b1644526a
maintainers/scripts/haskell/regenerate-hackage-packages.sh: run nixfmt on hackage-packages.nix 2025-04-05 14:20:08 +02:00
Stanislav Asunkin
51934865ad luaPackages.luv: use manual packaging
* add tests
* add update script
* build with shared libluv
2025-04-03 23:32:32 +03:00
Stanislav Asunkin
317e618079 luaPackages.luv: 1.48.0-2 -> 1.50.0-1 2025-04-03 23:24:43 +03:00
nixpkgs-ci[bot]
caaed78d07
Merge e607ef1af0 into haskell-updates 2025-03-12 00:18:31 +00:00
Jan Tojnar
1238304c25
Merge maintainers/scripts/update: Allow updating in (reverse) topological order (#386490) 2025-03-11 11:28:44 +01:00
nixpkgs-ci[bot]
7a8e4b332f
Merge 1eeeaa0843 into haskell-updates 2025-03-05 00:18:32 +00:00
Matthieu C.
3b33c51443 vimPlugins.mini-test: build from lua package
I needed the lua package to run the tests for grug-far-nvim
2025-03-04 22:47:32 +01:00
Jan Tojnar
ce96c79779 maintainers/scripts/update: Allow updating in (reverse) topological order
Previously, when updating multiple packages, we just updated them in arbitrary order. However, when some of those packages depended on each other, it could happen that some of the intermediary commits would not build because of version constraints on dependencies.

If we want each commit in the history to build when feasible, we need to consider four different scenarios:

1. Updated dependant is compatible with both the old and the new version of the dependency. Order of commits does not matter. But updating dependents first (i.e. reverse topological order) is useful since it allows building each package on the commit that updates it with minimal rebuilds.
2. Updated dependant raises the minimal dependency version. Dependency needs to be updated first (i.e. topological order).
3. Old dependant sets the maximal dependency version. Dependant needs to be updated first (i.e. reverse topological order).
4. Updated dependant depends on exact version of dependency and they are expected to be updated in lockstep. The earlier commit will be broken no matter the order.

This change allows selecting the order of updates to facilitate the first three scenarios. Since most package sets only have loose version constraints, the reverse topological order will generally be the most convenient. In major package set updates like bumping GNOME release, there will be exceptions (e.g. libadwaita typically requires GTK 4 from the same release) but those were probably in broken order before as well.

The downside of this feature is that it is quite slow – it requires instantiating each package and then querying Nix store for requisites.
It may also fail to detect dependency if there are multiple variants of the package and dependant uses a different one than the canonical one.

Testing with:

    env GNOME_UPDATE_STABILITY=unstable NIX_PATH=nixpkgs=$HOME/Projects/nixpkgs nix-shell maintainers/scripts/update.nix --arg predicate '(path: pkg: path == ["gnome-shell"] || path == ["mutter"] || path == ["glib"] || path == ["gtk3"] || path == ["pango"] || path == ["gnome-text-editor"])' --argstr order reverse-topological --argstr commit true --argstr max-workers 4
2025-03-03 00:46:17 +01:00
Jan Tojnar
1d2c1810eb maintainers/scripts/update: Prepare for ordered updates
Just minor refactorings:

- Extract `updater_tasks` into a variable.
- Make `main` itself async.
2025-03-03 00:46:17 +01:00
Jan Tojnar
f54d20c3a1 maintainers/scripts/update: Do not try to print error when there is not one
This can happen e.g. due to an error during `merge_changes` since we do not do `stderr=PIPE` for git commands.
2025-03-03 00:46:06 +01:00
Jan Tojnar
e3772a9bcb maintainers/scripts/update: Mark queue jobs as done
I believe this is only relevant if we were to `join` the queue itself but it is a good practice anyway.
https://docs.python.org/3/library/asyncio-queue.html#asyncio.Queue.task_done
2025-03-02 23:03:12 +01:00
Jan Tojnar
fdea10b433 maintainers/scripts/update: Fix update_info type
This was revealed when we added return type to `check_subprocess_output`.
2025-03-02 23:03:12 +01:00
Jan Tojnar
76f44542a8 maintainers/scripts/update: Add missing type hints 2025-03-02 23:03:12 +01:00
Jan Tojnar
81aed8eb80 maintainers/scripts/update: Modernize types
`list`, `dict` and `tuple` can accept generic arguments since Python 3.9:
https://docs.python.org/3.9/whatsnew/3.9.html#type-hinting-generics-in-standard-collections

`T | None` can be used instead of `Optional` since 3.10:
https://docs.python.org/3.10/whatsnew/3.10.html#pep-604-new-type-union-operator
2025-03-02 23:03:12 +01:00
Jan Tojnar
b91cb89649 maintainers/scripts/update: Format with black 2025-03-02 23:03:12 +01:00
nixpkgs-ci[bot]
183c86b4a8
Merge f03c983c83 into haskell-updates 2025-03-02 00:19:46 +00:00
Austin Horstman
b81fe3458f luarocks-packages: fix papis.nvim name 2025-03-01 12:29:26 +01:00