Merge staging-next into staging

This commit is contained in:
Wolfgang Walther
2025-11-01 13:10:22 +01:00
42 changed files with 494 additions and 244 deletions
-2
View File
@@ -202,7 +202,6 @@ jobs:
- name: Compare against the target branch
env:
AUTHOR_ID: ${{ github.event.pull_request.user.id }}
TARGET_SHA: ${{ inputs.mergedSha }}
run: |
git -C nixpkgs/trusted diff --name-only "$TARGET_SHA" \
@@ -212,7 +211,6 @@ jobs:
nix-build nixpkgs/trusted/ci --arg nixpkgs ./nixpkgs/trusted-pinned -A eval.compare \
--arg combinedDir ./combined \
--arg touchedFilesJson ./touched-files.json \
--argstr githubAuthorId "$AUTHOR_ID" \
--out-link comparison
cat comparison/step-summary.md >> "$GITHUB_STEP_SUMMARY"
-4
View File
@@ -39,10 +39,6 @@ jobs:
update:
runs-on: ubuntu-24.04-arm
if: github.event_name != 'schedule' || github.repository_owner == 'NixOS'
env:
# TODO: Remove after 2026-03-04, when Node 24 becomes the default.
# https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
steps:
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
with:
+15 -14
View File
@@ -48,7 +48,6 @@ in
{
combinedDir,
touchedFilesJson,
githubAuthorId,
}:
let
# Usually we expect a derivation, but when evaluating in multiple separate steps, we pass
@@ -155,22 +154,19 @@ let
# Only set this label when no other label with indication for staging has been set.
# This avoids confusion whether to target staging or batch this with kernel updates.
lib.last (lib.sort lib.lessThan (lib.attrValues rebuildCountByKernel)) <= 500;
# Set the "11.by: package-maintainer" label to whether all packages directly
# changed are maintained by the PR's author.
"11.by: package-maintainer" =
maintainers ? ${githubAuthorId}
&& lib.all (lib.flip lib.elem maintainers.${githubAuthorId}) (
lib.flatten (lib.attrValues maintainers)
);
};
}
);
maintainers = callPackage ./maintainers.nix { } {
changedattrs = lib.attrNames (lib.groupBy (a: a.name) changedPackagePlatformAttrs);
changedpathsjson = touchedFilesJson;
removedattrs = lib.attrNames (lib.groupBy (a: a.name) removedPackagePlatformAttrs);
};
inherit
(callPackage ./maintainers.nix { } {
changedattrs = lib.attrNames (lib.groupBy (a: a.name) changedPackagePlatformAttrs);
changedpathsjson = touchedFilesJson;
removedattrs = lib.attrNames (lib.groupBy (a: a.name) removedPackagePlatformAttrs);
})
maintainers
packages
;
in
runCommand "compare"
{
@@ -180,7 +176,11 @@ runCommand "compare"
cmp-stats
];
maintainers = builtins.toJSON maintainers;
passAsFile = [ "maintainers" ];
packages = builtins.toJSON packages;
passAsFile = [
"maintainers"
"packages"
];
}
''
mkdir $out
@@ -223,4 +223,5 @@ runCommand "compare"
fi
cp "$maintainersPath" "$out/maintainers.json"
cp "$packagesPath" "$out/packages.json"
''
+5 -5
View File
@@ -105,9 +105,9 @@ let
) attrsWithModifiedFiles;
byMaintainer = lib.groupBy (ping: toString ping.id) listToPing;
packagesPerMaintainer = lib.mapAttrs (
maintainer: packages: map (pkg: pkg.packageName) packages
) byMaintainer;
in
packagesPerMaintainer
{
maintainers = lib.mapAttrs (_: lib.catAttrs "packageName") byMaintainer;
packages = lib.catAttrs "packageName" listToPing;
}
+1 -4
View File
@@ -281,9 +281,6 @@ let
# Whether to evaluate on a specific set of systems, by default all are evaluated
evalSystems ? if quickTest then [ "x86_64-linux" ] else supportedSystems,
baseline,
# Which maintainer should be considered the author?
# Defaults to nixpkgs-ci which is not a maintainer and skips the check.
githubAuthorId ? "nixpkgs-ci",
# What files have been touched? Defaults to none; use the expression below to calculate it.
# ```
# git diff --name-only --merge-base master HEAD \
@@ -307,7 +304,7 @@ let
};
comparisonReport = compare {
combinedDir = combine { diffDir = diffs; };
inherit touchedFilesJson githubAuthorId;
inherit touchedFilesJson;
};
in
comparisonReport;
+122 -10
View File
@@ -3,9 +3,98 @@ module.exports = async ({ github, context, core, dry }) => {
const { DefaultArtifactClient } = require('@actions/artifact')
const { readFile, writeFile } = require('node:fs/promises')
const withRateLimit = require('./withRateLimit.js')
const { classify } = require('../supportedBranches.js')
const artifactClient = new DefaultArtifactClient()
async function downloadMaintainerMap(branch) {
let run
const commits = (
await github.rest.repos.listCommits({
...context.repo,
sha: branch,
// We look at 10 commits to find a maintainer map, but this is an arbitrary number. The
// head commit might not have a map, if the queue was bypassed to merge it. This happens
// frequently on staging-esque branches. The branch with the highest chance of getting
// 10 consecutive bypassing commits is the stable staging-next branch. Luckily, this
// also means that the number of PRs open towards that branch is very low, so falling
// back to slightly imprecise maintainer data from master only has a marginal effect.
per_page: 10,
})
).data
for (const commit of commits) {
const run = (
await github.rest.actions.listWorkflowRuns({
...context.repo,
workflow_id: 'merge-group.yml',
status: 'success',
exclude_pull_requests: true,
per_page: 1,
head_sha: commit.sha,
})
).data.workflow_runs[0]
if (!run) continue
const artifact = (
await github.rest.actions.listWorkflowRunArtifacts({
...context.repo,
run_id: run.id,
name: 'maintainers',
})
).data.artifacts[0]
if (!artifact) continue
await artifactClient.downloadArtifact(artifact.id, {
findBy: {
repositoryName: context.repo.repo,
repositoryOwner: context.repo.owner,
token: core.getInput('github-token'),
},
path: path.resolve(path.join('branches', branch)),
expectedHash: artifact.digest,
})
return JSON.parse(
await readFile(
path.resolve(path.join('branches', branch, 'maintainers.json')),
'utf-8',
),
)
}
// We get here when none of the 10 commits we looked at contained a maintainer map.
// For the master branch, we don't have any fallback options, so we error out.
// For other branches, we select a suitable fallback below.
if (branch === 'master') throw new Error('No maintainer map found.')
const { stable, version } = classify(branch)
const release = `release-${version}`
if (stable && branch !== release) {
// Only fallback to the release branch from *other* stable branches.
// Explicitly avoids infinite recursion.
return await getMaintainerMap(release)
} else {
// Falling back to master as last resort.
// This can either be the case for unstable staging-esque or wip branches,
// or for the primary stable branch (release-XX.YY).
return await getMaintainerMap('master')
}
}
// Simple cache for maintainer maps to avoid downloading the same artifacts
// over and over again. Ultimately returns a promise, so the result must be
// awaited for.
const maintainerMaps = {}
function getMaintainerMap(branch) {
if (!maintainerMaps[branch]) {
maintainerMaps[branch] = downloadMaintainerMap(branch)
}
return maintainerMaps[branch]
}
async function handlePullRequest({ item, stats }) {
const log = (k, v) => core.info(`PR #${item.number} - ${k}: ${v}`)
@@ -177,21 +266,44 @@ module.exports = async ({ github, context, core, dry }) => {
expectedHash: artifact.digest,
})
const maintainers = new Set(
Object.keys(
JSON.parse(
await readFile(`${pull_number}/maintainers.json`, 'utf-8'),
),
).map((m) => Number.parseInt(m, 10)),
)
const evalLabels = JSON.parse(
await readFile(`${pull_number}/changed-paths.json`, 'utf-8'),
).labels
// TODO: Get "changed packages" information from list of changed by-name files
// in addition to just the Eval results, to make this work for these packages
// when Eval results have expired as well.
let packages
try {
packages = JSON.parse(
await readFile(`${pull_number}/packages.json`, 'utf-8'),
)
} catch (e) {
if (e.code !== 'ENOENT') throw e
// TODO: Remove this fallback code once all old artifacts without packages.json
// have expired. This should be the case in ~ February 2026.
packages = Array.from(
new Set(
Object.values(
JSON.parse(
await readFile(`${pull_number}/maintainers.json`, 'utf-8'),
),
).flat(1),
),
)
}
const maintainers = await getMaintainerMap(pull_request.base.ref)
Object.assign(prLabels, evalLabels, {
'12.approved-by: package-maintainer':
maintainers.intersection(approvals).size > 0,
'11.by: package-maintainer':
packages.length &&
packages.every((pkg) =>
maintainers[pkg]?.includes(pull_request.user.id),
),
'12.approved-by: package-maintainer': packages.some((pkg) =>
maintainers[pkg]?.some((m) => approvals.has(m)),
),
})
}
@@ -20,7 +20,7 @@
cpuAcceleration ? null,
}:
# CUDA is only implemented for single precission
# CUDA is only implemented for single precision
assert enableCuda -> singlePrec;
let
+2 -2
View File
@@ -15,13 +15,13 @@
stdenv.mkDerivation rec {
pname = "abracadabra";
version = "3.3.1";
version = "3.3.2";
src = fetchFromGitHub {
owner = "KejPi";
repo = "AbracaDABra";
tag = "v${version}";
hash = "sha256-cx5Kq5V0XTUJdqEDI0iDICIygbYkGu8JwdCACNLMgtY=";
hash = "sha256-QR3wc+eltIpmdNpyzQqJd4Zo40JVlTzRBNSr11tE0X8=";
};
nativeBuildInputs = [
@@ -14,7 +14,7 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "blackmagic-desktop-video";
version = "15.1";
version = "15.2";
buildInputs = [
autoPatchelfHook
@@ -30,7 +30,7 @@ stdenv.mkDerivation (finalAttrs: {
{
outputHashMode = "recursive";
outputHashAlgo = "sha256";
outputHash = "sha256-nZXfUbUyk9PDhBeXUHGt6T95hfMMDEH1oOgcm1wwi3E=";
outputHash = "sha256-OCpzKmwa4HbKTGSeVxBlYXB6TNe5uqLhtowLwAQjIJQ=";
impureEnvVars = lib.fetchers.proxyImpureEnvVars;
+2 -2
View File
@@ -2,8 +2,8 @@
lib,
appimageTools,
fetchurl,
version ? "0.9.12.1",
hash ? "sha256-6Lun0HyfAi7anivgGsGdUPPX9kZrWwh8fq+qvVL/CdU=",
version ? "0.9.12.2",
hash ? "sha256-nhBLtsc9zz1tCFn7BWIqTVD/iTLHFUjXPmnslewoUCw=",
}:
let
+3 -3
View File
@@ -18,18 +18,18 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "lux-cli";
version = "0.18.7";
version = "0.18.8";
src = fetchFromGitHub {
owner = "lumen-oss";
repo = "lux";
tag = "v${finalAttrs.version}";
hash = "sha256-nZslDD09PfETa0a3LuZGXlj7GETXTXK9vH8kpb40i9Y=";
hash = "sha256-AHmIdVkU4a+zmJPWfGkmRI7Mc/NdX+KokKHn9CZ9tOM=";
};
buildAndTestSubdir = "lux-cli";
cargoHash = "sha256-+j0Rs4aO+1BZ5fWN1we+MM9sJcXsupVF3LajhjJeoTA=";
cargoHash = "sha256-noOyrKNxfndkq7VlyxLs8R8FG+1xkwM7MbKu0vO4Nh8=";
nativeInstallCheckInputs = [
versionCheckHook
+2 -2
View File
@@ -162,11 +162,11 @@ let
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "microsoft-edge";
version = "141.0.3537.99";
version = "142.0.3595.53";
src = fetchurl {
url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-XMFAHCa7gGsSu9nFXkgvYX+CMY9nFgQEJLNKf+TodRw=";
hash = "sha256-cSSKWxIkQe8jrv7gL5lX2Cs9roU8eD2MIHuLGQMnycM=";
};
# With strictDeps on, some shebangs were not being patched correctly
+3 -3
View File
@@ -10,16 +10,16 @@
buildGoModule rec {
pname = "myks";
version = "5.0.0";
version = "5.1.0";
src = fetchFromGitHub {
owner = "mykso";
repo = "myks";
tag = "v${version}";
hash = "sha256-W1k65a67/77f8NBGOzHV4eVzoICnynxNeIYAefq+Fzo=";
hash = "sha256-nVm5AmfKfoBDBIFt2g4PXc5Ff2kbrBGTThqdpslpYow=";
};
vendorHash = "sha256-+YMR9Y5iSkpcHEg1IlSN3kB3fZAx5WNcOU71LXHhVV0=";
vendorHash = "sha256-jprXaNd/S2fJcejSG5nH7rvg/yNmRRRgCOkJrUkiwmY=";
subPackages = ".";
+65
View File
@@ -0,0 +1,65 @@
{
lib,
fetchFromGitHub,
python3Packages,
}:
python3Packages.buildPythonApplication rec {
pname = "nemorosa";
version = "0.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "KyokoMiki";
repo = "nemorosa";
tag = version;
hash = "sha256-UBvtff5fU3kH/+Kw426+yyoyJ3aASBIYDPX+X5jqkA8=";
};
# Upstream uses overly strict, fresh version specifiers
pythonRelaxDeps = true;
# `build-system` requirements are seemingly not covered by pythonRelaxDeps
postPatch = ''
sed -i 's/requires = \["uv_build.*"\]/requires = ["uv_build"]/' pyproject.toml
'';
build-system = with python3Packages; [ uv-build ];
dependencies =
with python3Packages;
[
aiolimiter
apscheduler
beautifulsoup4
defusedxml
deluge-client
fastapi
httpx
humanfriendly
msgspec
platformdirs
qbittorrent-api
reflink-copy
sqlalchemy
torf
transmission-rpc
uvicorn
uvloop
]
++ beautifulsoup4.optional-dependencies.lxml
++ msgspec.optional-dependencies.yaml
++ sqlalchemy.optional-dependencies.aiosqlite
++ uvicorn.optional-dependencies.standard;
pythonImportsCheck = [ "nemorosa" ];
meta = {
description = "Specialized cross-seeding tool designed for music torrents";
homepage = "https://github.com/KyokoMiki/nemorosa";
changelog = "https://github.com/KyokoMiki/nemorosa/releases";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ ambroisie ];
mainProgram = "nemorosa";
};
}
+2 -2
View File
@@ -12,7 +12,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "nncp";
version = "8.12.1";
version = "8.13.0";
outputs = [
"out"
"doc"
@@ -21,7 +21,7 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchurl {
url = "http://www.nncpgo.org/download/nncp-${finalAttrs.version}.tar.xz";
hash = "sha256-yTwndQ43aBCned7iKPZm70zCC3zMapf2GXtornjiZos=";
hash = "sha256-jONoDpgAUZjYl14DF2CzqbM75tLWGETHmfd4yiM9BfQ=";
};
nativeBuildInputs = [
+3 -3
View File
@@ -17,13 +17,13 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "polkadot";
version = "2506-1";
version = "2509-1";
src = fetchFromGitHub {
owner = "paritytech";
repo = "polkadot-sdk";
rev = "polkadot-stable${version}";
hash = "sha256-gnPfhdlOakfm9Ieitl8CBLBht1ECkfXhguK9eNeI6k4=";
hash = "sha256-XisQA5WNmFaFfY7T4EMcwlOD8FUfAjmLDV7NSWsh3vA=";
# the build process of polkadot requires a .git folder in order to determine
# the git commit hash that is being built and add it to the version string.
@@ -44,7 +44,7 @@ rustPlatform.buildRustPackage rec {
rm .git_commit
'';
cargoHash = "sha256-f6VI8pWZ+yRyFGO347ASD31k3WyBuRixqIUfzBqIr+s=";
cargoHash = "sha256-QqtLr6SvJGYrY0wGZw196amrGqLZg/Nea+QTYM1RzIs=";
buildType = "production";
buildAndTestSubdir = "polkadot";
+3 -3
View File
@@ -8,16 +8,16 @@
buildGoModule rec {
pname = "spicedb";
version = "1.46.0";
version = "1.46.2";
src = fetchFromGitHub {
owner = "authzed";
repo = "spicedb";
tag = "v${version}";
hash = "sha256-laLUhJkD4XbwKo4wjngBN1PkDpt2fHgMmVv2JTzZl6Q=";
hash = "sha256-4/6u/yYlPB85Et+9Bkv6qsVwIvhHoyvkbYkEtbRdDVM=";
};
vendorHash = "sha256-XqXbQYUAQiOZ0MjWwFSRe0suaQzXb6KQb+KoGAvvceM=";
vendorHash = "sha256-WICi1OPVLrawmo6zW4hOygf0UXsdtuuwl6Cp78yCC9c=";
ldflags = [
"-X 'github.com/jzelinskie/cobrautil/v2.Version=${src.tag}'"
+8 -8
View File
@@ -21,7 +21,7 @@
}:
let
# git rev-list HEAD --count
revision = "3016";
revision = "3042";
year = "2025";
in
@@ -29,18 +29,18 @@ stdenv.mkDerivation {
pname = "tic-80";
# use an untagged version until upstream tags a new version. We want
# 'PREFER_SYSTEM_LIBRARIES', and without it tic-80 won't build
version = "1.1-unstable-2025-05-26";
version = "1.1-unstable-2025-10-21";
src = fetchFromGitHub {
owner = "nesbox";
repo = "TIC-80";
rev = "663d43924abf6fd7620de6bf25c009ce5b30ab83";
hash = "sha256-UjBnXxYZ5gfk58sI1qek5fkKpJ7LzOVmrxdjVgONcXc=";
rev = "a2c875f7275541e7724199ce8e504fb578b819a6";
# TIC-80 vendors its dependencies as submodules. For the following dependencies,
# there are no (or no compatible) packages in nixpkgs yet, so we use the vendored
# ones as a fill-in: wasm, squirrel, pocketpy, argparse, naett,
# sdlgpu, mruby.
fetchSubmodules = true;
hash = "sha256-S/v1WHrvVndW4qHFWRJc3dcQkjw5vCU1/mN0PW9Wfkc=";
};
# TIC-80 tries to determine the revision part of the version using its Git history.
@@ -101,7 +101,7 @@ stdenv.mkDerivation {
SDL2
];
meta = with lib; {
meta = {
description = "Free and open source fantasy computer for making, playing and sharing tiny games";
longDescription = ''
TIC-80 is a free and open source fantasy computer for making, playing and
@@ -119,9 +119,9 @@ stdenv.mkDerivation {
channel sound and etc.
'';
homepage = "https://github.com/nesbox/TIC-80";
license = licenses.mit;
platforms = with platforms; linux ++ darwin;
license = lib.licenses.mit;
platforms = with lib.platforms; linux ++ darwin;
mainProgram = "tic80";
maintainers = with maintainers; [ blinry ];
maintainers = with lib.maintainers; [ blinry ];
};
}
@@ -0,0 +1,7 @@
{
zandronum,
}:
zandronum.override {
serverOnly = true;
}
@@ -358,13 +358,13 @@
buildPythonPackage rec {
pname = "boto3-stubs";
version = "1.40.62";
version = "1.40.64";
pyproject = true;
src = fetchPypi {
pname = "boto3_stubs";
inherit version;
hash = "sha256-73hYe2ywyLnoKoq52RDa8pagC8p2Wt6eNMxuj50bDvo=";
hash = "sha256-r0p/tnvaDBJ3r81FolBlYFVn0mCor9NLvfF5nSSSM08=";
};
build-system = [ setuptools ];
@@ -9,13 +9,13 @@
buildPythonPackage rec {
pname = "botocore-stubs";
version = "1.40.62";
version = "1.40.64";
pyproject = true;
src = fetchPypi {
pname = "botocore_stubs";
inherit version;
hash = "sha256-fZXH1kEflCQ/I3cp4NJ8W645GDoHcYPgW2PlKREJF6I=";
hash = "sha256-m6tH000Oxxg+BKM1bj+i3/wRru+oRFs3qzV8cJg4/xQ=";
};
nativeBuildInputs = [ setuptools ];
@@ -7,22 +7,22 @@
transaction,
zope-testrunner,
python,
pythonOlder,
setuptools,
}:
buildPythonPackage rec {
pname = "btrees";
version = "6.1";
format = "setuptools";
disabled = pythonOlder "3.7";
version = "6.2";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-4YdG+GQYaaIPRTKMm1+X3GxxoRlZYDVq72O3X1yNRF8=";
hash = "sha256-SnxwN2aEfrD6tYrpudacyAWIy/1uNFcrur1FU+B5/is=";
};
propagatedBuildInputs = [
build-system = [ setuptools ];
dependencies = [
persistent
zope-interface
];
@@ -34,7 +34,9 @@ buildPythonPackage rec {
checkPhase = ''
runHook preCheck
${python.interpreter} -m zope.testrunner --test-path=src --auto-color --auto-progress
runHook postCheck
'';
@@ -48,6 +50,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Scalable persistent components";
homepage = "http://packages.python.org/BTrees";
changelog = "https://github.com/zopefoundation/BTrees/blob/${version}/CHANGES.rst";
license = licenses.zpl21;
maintainers = [ ];
};
@@ -22,14 +22,14 @@
buildPythonPackage rec {
pname = "cyclonedx-python-lib";
version = "11.4.0";
version = "11.5.0";
pyproject = true;
src = fetchFromGitHub {
owner = "CycloneDX";
repo = "cyclonedx-python-lib";
tag = "v${version}";
hash = "sha256-fCumFp9ubzCtTrO0r/R/OF83cc0v4XX5K/2vfxQrT84=";
hash = "sha256-AN3PjJ1HAERDXlmE9K8k2OGLAh5vs1286EhJShH0xE4=";
};
pythonRelaxDeps = [ "py-serializable" ];
@@ -17,14 +17,14 @@
buildPythonPackage rec {
pname = "cyclopts";
version = "4.1.0";
version = "4.2.1";
pyproject = true;
src = fetchFromGitHub {
owner = "BrianPugh";
repo = "cyclopts";
tag = "v${version}";
hash = "sha256-829a2THiOszIiwJDh6WiAU8jZG84so0Jy1xD42ZSZgc=";
hash = "sha256-dBI7ax7ljmCrE7ymcMa/B9uMtLyRTC42unrKBJ9QYQg=";
};
build-system = [
@@ -51,14 +51,14 @@
buildPythonPackage rec {
pname = "datalad";
version = "1.2.2";
version = "1.2.3";
pyproject = true;
src = fetchFromGitHub {
owner = "datalad";
repo = "datalad";
tag = version;
hash = "sha256-OjWOWdfAQoCQzc2EH5hBhJ3G/Z62U9oRgv8tp23L/Qw=";
hash = "sha256-VkHTX0j963N2HMwHoJv8M314SykXFB9u4eqIUDeJ+tw=";
};
postPatch = ''
@@ -8,14 +8,14 @@
buildPythonPackage rec {
pname = "disposable-email-domains";
version = "0.0.143";
version = "0.0.145";
pyproject = true;
# No tags on GitHub
src = fetchPypi {
pname = "disposable_email_domains";
inherit version;
hash = "sha256-AOQbmUHx6nQYnKzOlPSh+r/Fzn2r2CtsTGYswnJI05E=";
hash = "sha256-l8Il11KKgYUNKNCg9sDJ0Wsucaq+Hat5l7DnkTBjmzY=";
};
build-system = [
@@ -41,14 +41,14 @@
buildPythonPackage rec {
pname = "dvclive";
version = "3.48.5";
version = "3.49.0";
pyproject = true;
src = fetchFromGitHub {
owner = "iterative";
repo = "dvclive";
tag = version;
hash = "sha256-ucMtYHDwdpyYnnC7QCn5T6gCS8SarohKh6lxFXtPXgc=";
hash = "sha256-jjYglvXPtwPJEp2Qo309QeRLYooUmsDhO1Dc1S3OjQg=";
};
build-system = [ setuptools-scm ];
@@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "elkm1-lib";
version = "2.2.11";
version = "2.2.12";
pyproject = true;
disabled = pythonOlder "3.11";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "gwww";
repo = "elkm1";
tag = version;
hash = "sha256-wi115LppK628EBw3AFeQHNnLv51dcfaZZi5R6S9+WJE=";
hash = "sha256-66Yen8QZAIKzMePFzxOgeprTIMKj3fanicMCBeqhyO4=";
};
build-system = [ hatchling ];
@@ -23,14 +23,14 @@ let
in
buildPythonPackage rec {
pname = "hyperscan";
version = "0.7.25";
version = "0.7.28";
pyproject = true;
src = fetchFromGitHub {
owner = "darvid";
repo = "python-hyperscan";
tag = "v${version}";
hash = "sha256-YFT/SPAI/H6D7paWL/9rMyvY1s7ffE9bDHcQ9TbbA6w=";
hash = "sha256-U7MGa3xzNzx0TCeSaO1yaDEgOSFwoSm02yqskmOIMiM=";
};
env.CMAKE_ARGS = "-DHS_SRC_ROOT=${pkgs.hyperscan.src} -DHS_BUILD_LIB_ROOT=${lib-deps}/lib";
@@ -2,7 +2,6 @@
lib,
buildPythonPackage,
fetchPypi,
pythonOlder,
# build-system
cmake,
@@ -21,14 +20,12 @@
buildPythonPackage rec {
pname = "iminuit";
version = "2.31.1";
format = "pyproject";
disabled = pythonOlder "3.6";
version = "2.31.3";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-1eAE8f/YPSoHZAn79KeWkeehfJ1zlQu2NGWvMuEE3hg=";
hash = "sha256-/7Oust4mxADQr/fit0V/ZM1gmklMRe5Xnv/ugbG8XXg=";
};
nativeBuildInputs = [
@@ -40,7 +37,7 @@ buildPythonPackage rec {
pyproject-metadata
];
propagatedBuildInputs = [ numpy ];
dependencies = [ numpy ];
dontUseCmakeConfigure = true;
@@ -48,6 +45,7 @@ buildPythonPackage rec {
meta = with lib; {
homepage = "https://github.com/scikit-hep/iminuit";
changelog = "https://github.com/scikit-hep/iminuit/releases/tag/v{version}";
description = "Python interface for the Minuit2 C++ library";
license = with licenses; [
mit
@@ -3,7 +3,22 @@
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
attrs,
coverage,
furo,
ipython,
msgpack,
mypy,
pre-commit,
pyright,
pytest,
pyyaml,
setuptools,
sphinx,
sphinx-copybutton,
sphinx-design,
tomli,
tomli-w,
}:
buildPythonPackage rec {
@@ -26,6 +41,36 @@ buildPythonPackage rec {
build-system = [ setuptools ];
optional-dependencies = {
dev = [
coverage
mypy
pre-commit
pyright
]
++ optional-dependencies.doc
++ optional-dependencies.test;
doc = [
furo
ipython
sphinx
sphinx-copybutton
sphinx-design
];
test = [
attrs
msgpack
pytest
]
++ optional-dependencies.yaml
++ optional-dependencies.toml;
toml = [
tomli-w
]
++ lib.optional (pythonOlder 3.11) tomli;
yaml = [ pyyaml ];
};
# Requires libasan to be accessible
doCheck = false;
@@ -62,8 +62,8 @@ in
"sha256-MqxsI64KEyipR0iiaifc42HQLHsVIFMmtvN2/Vx1EJU=";
mypy-boto3-amp =
buildMypyBoto3Package "amp" "1.40.55"
"sha256-21GPpp3jvggAtA6U8dKuaSIc9UBObYSDhEzp3KWiK5c=";
buildMypyBoto3Package "amp" "1.40.63"
"sha256-CWtt4C1qln56Wzu5I9NOaCoJgMwGNX7iZnD5XkZQC34=";
mypy-boto3-amplify =
buildMypyBoto3Package "amplify" "1.40.54"
@@ -78,8 +78,8 @@ in
"sha256-ZqZTg/CLPUBTcZ5mbZJsA9f2sdIkgwQDn83xVWLrWpY=";
mypy-boto3-apigateway =
buildMypyBoto3Package "apigateway" "1.40.0"
"sha256-mfMTQ3XSVHDjTjQEY/EL1xq4t0KRaPwG2Nu0Pwsbk3o=";
buildMypyBoto3Package "apigateway" "1.40.63"
"sha256-X2wxkeKYvNCGbgFwA2jWSrAdPg5Pc7XCOvTauiZlLaQ=";
mypy-boto3-apigatewaymanagementapi =
buildMypyBoto3Package "apigatewaymanagementapi" "1.40.54"
@@ -90,8 +90,8 @@ in
"sha256-C0MDOmvUXvJN3FuDsDm8fZQZUFFzACdw+0EpWCIpjEc=";
mypy-boto3-appconfig =
buildMypyBoto3Package "appconfig" "1.40.0"
"sha256-n0P3k9Bs7ckTEim/cHXLQzt5qsjxzq59TYlOair61mU=";
buildMypyBoto3Package "appconfig" "1.40.63"
"sha256-5mjQ5qZjHW67dP9S34ojNIcwgNN8xbwuVwKo+7PtkeI=";
mypy-boto3-appconfigdata =
buildMypyBoto3Package "appconfigdata" "1.40.55"
@@ -102,8 +102,8 @@ in
"sha256-X7RcwPwiYMSaj7QN8NHekxaLyzG7A+LcvJSElkeKZm0=";
mypy-boto3-appflow =
buildMypyBoto3Package "appflow" "1.40.17"
"sha256-eBbaAv0NU/VcaZNNPaBvU2pt7rXNm2DwqZ0xtoX2WwU=";
buildMypyBoto3Package "appflow" "1.40.63"
"sha256-/JAEmxuUuHyGeoehZY6LZjUEk0k0WxuR/48kEc7SmsE=";
mypy-boto3-appintegrations =
buildMypyBoto3Package "appintegrations" "1.40.55"
@@ -118,12 +118,12 @@ in
"sha256-JWzHe+4UxLenKYXdNXhShTGWTGDFgWx6O8TAfxEaWPI=";
mypy-boto3-applicationcostprofiler =
buildMypyBoto3Package "applicationcostprofiler" "1.40.20"
"sha256-owSt/dJ4jtYwAjvi7/gKHqdn9ZdlXrdVggeqP09/GI8=";
buildMypyBoto3Package "applicationcostprofiler" "1.40.63"
"sha256-FjGdsXuu/NPABrsl5JK3sPsOHGnAwTvIIv+G3MRxZxg=";
mypy-boto3-appmesh =
buildMypyBoto3Package "appmesh" "1.40.0"
"sha256-ZMDdjJse4uyAnWIy/cwQQuAemTrUBdm8PYQp0LTuHgE=";
buildMypyBoto3Package "appmesh" "1.40.63"
"sha256-jGO22gbzqaa9VcBKyyEo8QLVf/Uia6RrQGaHgIApQPQ=";
mypy-boto3-apprunner =
buildMypyBoto3Package "apprunner" "1.40.54"
@@ -134,8 +134,8 @@ in
"sha256-l1Zrigv4T4W9z+9MrZTTcTeeVISb5wnjepBpfSv554g=";
mypy-boto3-appsync =
buildMypyBoto3Package "appsync" "1.40.0"
"sha256-NgOa+Na/gU7IrtEJ8bVMJaSCNgTnGreX2TsjsAlIN+Y=";
buildMypyBoto3Package "appsync" "1.40.63"
"sha256-KRa98jsQ6MPZBWwZbPAmxmSgUvO9Y6XGkWngL1p5L7I=";
mypy-boto3-arc-zonal-shift =
buildMypyBoto3Package "arc-zonal-shift" "1.40.55"
@@ -146,8 +146,8 @@ in
"sha256-hBkW8prNkpdP+7ZEY5YIs540fPDZX1sqbHzEHDWcZgw=";
mypy-boto3-auditmanager =
buildMypyBoto3Package "auditmanager" "1.40.1"
"sha256-p8jnTJigD8QuLe3vjZwE7ZyGgBblpSdM0II0Cr/xFS8=";
buildMypyBoto3Package "auditmanager" "1.40.63"
"sha256-dzUf+/dAnrEsjxTcm2AZOqJeeWmQ8///8ORR8/o52S4=";
mypy-boto3-autoscaling =
buildMypyBoto3Package "autoscaling" "1.40.57"
@@ -186,8 +186,8 @@ in
"sha256-vV/nuOJeFelanrZSHeP7m92h1yf4Eg9hlURXzGqZNGA=";
mypy-boto3-chime =
buildMypyBoto3Package "chime" "1.40.19"
"sha256-j90U6EWrV/zhn0KTitm4/WMV8xh+wm4yjKWFaQ0C4UA=";
buildMypyBoto3Package "chime" "1.40.63"
"sha256-KpeAk7Kt3wZwgvGv8fOilXyx0FimkX6XFBEqEDvb5Zo=";
mypy-boto3-chime-sdk-identity =
buildMypyBoto3Package "chime-sdk-identity" "1.40.60"
@@ -210,20 +210,20 @@ in
"sha256-yJHnaO8KvjYYWiJF8c4lrnf6Px2FyjSsMZsSjVFdkE0=";
mypy-boto3-cleanrooms =
buildMypyBoto3Package "cleanrooms" "1.40.45"
"sha256-a4FbYJ7O9YpOfT90vAZdxmDDdDHsITCwLjNSAeYtrco=";
buildMypyBoto3Package "cleanrooms" "1.40.63"
"sha256-qmN6w6OGOBjOfEcb7bb24niw4cgot1UPyzFPmZeHgXM=";
mypy-boto3-cloud9 =
buildMypyBoto3Package "cloud9" "1.40.61"
"sha256-iS3jyYE2WKaSTegaRLK9jnWd2UxzqPR9F1dpuB2D1mo=";
mypy-boto3-cloudcontrol =
buildMypyBoto3Package "cloudcontrol" "1.40.0"
"sha256-38IFJI1enFd6XnWe81zuf80N23Orfl1CUCRt57g0zEE=";
buildMypyBoto3Package "cloudcontrol" "1.40.63"
"sha256-oFy3Q1W7tGdeXbMphjF7pYJjs1WVbKRQok/GQbjwbGs=";
mypy-boto3-clouddirectory =
buildMypyBoto3Package "clouddirectory" "1.40.16"
"sha256-fFnHwgB8r239cpVnWSfeiGO1MNOxkXn9MNMUA5ohm04=";
buildMypyBoto3Package "clouddirectory" "1.40.63"
"sha256-icJPjlbaZhbXRImXTU+guTKyEln0Dg/VCbQLOVKhZvw=";
mypy-boto3-cloudformation =
buildMypyBoto3Package "cloudformation" "1.40.57"
@@ -242,8 +242,8 @@ in
"sha256-T9ek0te0KDC5Z3kdsprbEm9LvmlfbSW7Nnoi5s4hGWg=";
mypy-boto3-cloudsearch =
buildMypyBoto3Package "cloudsearch" "1.40.17"
"sha256-bnLdoUOM0daHl74qUUfv6RO6Mqkk8Su97RzCjKettQQ=";
buildMypyBoto3Package "cloudsearch" "1.40.63"
"sha256-EdwdwO83n4Gx3zcDeQtW9vHj0mg/wVXL+/REyWvNjK8=";
mypy-boto3-cloudsearchdomain =
buildMypyBoto3Package "cloudsearchdomain" "1.40.61"
@@ -258,8 +258,8 @@ in
"sha256-ywvJwaPTrQIoZ6xrQtK1/7FFVMM59ls1HOCUFSA9Pv0=";
mypy-boto3-cloudwatch =
buildMypyBoto3Package "cloudwatch" "1.40.38"
"sha256-JCKTfyeEvYsw8b2EOGJVh+Y6lgpzMFecj2y35o3K9Mo=";
buildMypyBoto3Package "cloudwatch" "1.40.63"
"sha256-rIshJJ2HohBPXYlWF+y3KY7GuS5adzYWrjll0Y7HqZU=";
mypy-boto3-codeartifact =
buildMypyBoto3Package "codeartifact" "1.40.60"
@@ -270,16 +270,16 @@ in
"sha256-IluCF13Ch70pP6vikKKgr0eN/SeiFLb8Cnxio6S58AU=";
mypy-boto3-codecatalyst =
buildMypyBoto3Package "codecatalyst" "1.40.0"
"sha256-cPLylCvda6iHWRcPMVaL/qEkeg7EzBs38G2mX1eP0ZI=";
buildMypyBoto3Package "codecatalyst" "1.40.63"
"sha256-ecfKyHRa435PMsQppEie2wFYN9CE1HcQUZSd3TLe7z8=";
mypy-boto3-codecommit =
buildMypyBoto3Package "codecommit" "1.40.18"
"sha256-+T9NGuE7gN1OjOBhIU8QCo09FiAQ1qdiABitoQpDZrk=";
buildMypyBoto3Package "codecommit" "1.40.63"
"sha256-jKSLa9U393dahneBYIzFpHPa57EtcqJ3rJvB62EsKlU=";
mypy-boto3-codedeploy =
buildMypyBoto3Package "codedeploy" "1.40.20"
"sha256-1YBZlgDBAmYmkSgI0BGWAlyDGwSEjISd+NDqk2PPlbI=";
buildMypyBoto3Package "codedeploy" "1.40.63"
"sha256-sD53LSKVeYIipxKLw8SBR2zcxksM01zfVQhHtW5fZkA=";
mypy-boto3-codeguru-reviewer =
buildMypyBoto3Package "codeguru-reviewer" "1.40.57"
@@ -318,8 +318,8 @@ in
"sha256-TgZlbzlU4ZPk3/aQQrwhTbXvV167tgahtfy23D1v0y4=";
mypy-boto3-cognito-sync =
buildMypyBoto3Package "cognito-sync" "1.40.16"
"sha256-NFaYYsnZD0MlDKl7t9FCMLV2eo/WH34ach4o6N/xrm0=";
buildMypyBoto3Package "cognito-sync" "1.40.63"
"sha256-PzwZSGvdN1+tNmWZPOlZErP5WWk2eE0pE7XCh2/5AJc=";
mypy-boto3-comprehend =
buildMypyBoto3Package "comprehend" "1.40.60"
@@ -330,8 +330,8 @@ in
"sha256-P/frAydh31frX9xNis2vyi2XbswpcA0BJXW8TJKncFg=";
mypy-boto3-compute-optimizer =
buildMypyBoto3Package "compute-optimizer" "1.40.0"
"sha256-CSfC9Kg73LydRU5aH4kqdc0pJWqEf98ebu6FOBE7oVU=";
buildMypyBoto3Package "compute-optimizer" "1.40.63"
"sha256-9dwQLNrI8jlK7ay0r8rfNRLIgJhptrtMi94iZW+YzA8=";
mypy-boto3-config =
buildMypyBoto3Package "config" "1.40.58"
@@ -350,8 +350,8 @@ in
"sha256-q5aHrusyuFPI1ItuoaFskLoRQmDkBLwjV/Sch+G2l+U=";
mypy-boto3-connectcases =
buildMypyBoto3Package "connectcases" "1.40.44"
"sha256-T4E5rin+Y0DJWARRqzA7agLwcF11v4CGy/Fe/x/F7vY=";
buildMypyBoto3Package "connectcases" "1.40.64"
"sha256-qizL2lYo7Un0mJtAdyksYV4dSsk3T4p+9F+9AvQLHmk=";
mypy-boto3-connectparticipant =
buildMypyBoto3Package "connectparticipant" "1.40.57"
@@ -398,8 +398,8 @@ in
"sha256-qekCLt6+vbE6AKkuNG6x/0m72NDOK2v8uCAP6gYWHTY=";
mypy-boto3-devops-guru =
buildMypyBoto3Package "devops-guru" "1.40.17"
"sha256-cDV8kPjBB3Mu5cqsAVsRjTk6KMozwEMHx/Fu0SRp5EQ=";
buildMypyBoto3Package "devops-guru" "1.40.63"
"sha256-saiHuNzlpD9LKnRpQVRaqIz1KPdWbB0wUm1kchmSqGI=";
mypy-boto3-directconnect =
buildMypyBoto3Package "directconnect" "1.40.57"
@@ -418,8 +418,8 @@ in
"sha256-wGVRK+B6DoxsK++kNZEWQdWozrpPHr7jGOzq3D52xE4=";
mypy-boto3-docdb =
buildMypyBoto3Package "docdb" "1.40.59"
"sha256-/GawEPC2vYYqQ0ISSjTebM7a/NsCUyDMDa4xTZHOFjg=";
buildMypyBoto3Package "docdb" "1.40.63"
"sha256-N0RWxdWolQadRfOC2zoJrixVNjtcZdA6hlmwjbeKUrQ=";
mypy-boto3-docdb-elastic =
buildMypyBoto3Package "docdb-elastic" "1.40.58"
@@ -446,8 +446,8 @@ in
"sha256-eKwS+FXicnxiHr2aTDG+ih6kDxQ24NLCkI9XPt2LjvQ=";
mypy-boto3-ec2 =
buildMypyBoto3Package "ec2" "1.40.61"
"sha256-NfY+6/jTnWgQs8g+RSst9fqojvaXgC0Ulzd+VBlMq0E=";
buildMypyBoto3Package "ec2" "1.40.64"
"sha256-6+jjuG6iqXLjjuztY1FX/exSl5BjdKsrg1EOQM1w0Io=";
mypy-boto3-ec2-instance-connect =
buildMypyBoto3Package "ec2-instance-connect" "1.40.57"
@@ -462,8 +462,8 @@ in
"sha256-gyNKT8yjYFgDgEvBgUIvC0iVKIOLaCbLWcF9eYzQWUQ=";
mypy-boto3-ecs =
buildMypyBoto3Package "ecs" "1.40.61"
"sha256-bVLBi8CzUkmzE7oWyj4KLAcFs4P8lvwrUGMpl30AEXI=";
buildMypyBoto3Package "ecs" "1.40.63"
"sha256-4cZrAPPo9rol9c+KFPYKaZZK1vQB2WYl34TiJfEbWco=";
mypy-boto3-efs =
buildMypyBoto3Package "efs" "1.40.61"
@@ -478,8 +478,8 @@ in
"sha256-duU3LIeW3FNiplVmduZsNXBoDK7vbO6ecrBt1Y7C9rU=";
mypy-boto3-elasticache =
buildMypyBoto3Package "elasticache" "1.40.19"
"sha256-YaNGVCO/MGDn/9YQBquhqqg1YHmJK3grdk/wVdF4erQ=";
buildMypyBoto3Package "elasticache" "1.40.63"
"sha256-o4EYOb30TxE+tLIKdEMVSEyyRSJ082ZwkavHHeUDr+0=";
mypy-boto3-elasticbeanstalk =
buildMypyBoto3Package "elasticbeanstalk" "1.40.60"
@@ -498,16 +498,16 @@ in
"sha256-TGc78KsQ4y8QSFutN+/cj/gr2iJWi7fYh52OYFCFwho=";
mypy-boto3-emr =
buildMypyBoto3Package "emr" "1.40.56"
"sha256-Khke6Z4btoZe5VlLDLJEmwxDD3o/uOYImj/bUy92Wdc=";
buildMypyBoto3Package "emr" "1.40.64"
"sha256-NxYFJHvE3QifWP6csT3Rp/R0Yd2hYXjSjfe6ds3UQz0=";
mypy-boto3-emr-containers =
buildMypyBoto3Package "emr-containers" "1.40.61"
"sha256-uIOqO9W5VRFJtm1iZQsVdWIUomuHnbO6imSNBNBosMA=";
mypy-boto3-emr-serverless =
buildMypyBoto3Package "emr-serverless" "1.40.0"
"sha256-9Iz9FapUQCWa9bjmH0Ar9O1mtTv+ovWlxikddb5+Wlc=";
buildMypyBoto3Package "emr-serverless" "1.40.63"
"sha256-6UY8UreMCPqP2EA/HJNwXLmVnbtSM1rA/iRm/r/+Ng4=";
mypy-boto3-entityresolution =
buildMypyBoto3Package "entityresolution" "1.40.60"
@@ -534,16 +534,16 @@ in
"sha256-CQzN5qc5N34JKeF0gKoIzVb5wtdc8r2uar+Q6Y2Gd3g=";
mypy-boto3-firehose =
buildMypyBoto3Package "firehose" "1.40.0"
"sha256-Zzp7VoPaVIHX3KccxlFILesGNJP7f1p63uXLwN3rLcs=";
buildMypyBoto3Package "firehose" "1.40.63"
"sha256-IdEuluW+mpjEDeuhptskEGDRoqQjylHCv9B2j8sYtrY=";
mypy-boto3-fis =
buildMypyBoto3Package "fis" "1.40.59"
"sha256-FEBW/Vtx+MooC2lNBh9xFA8mWpbLK7qqBWWAnG80kvg=";
mypy-boto3-fms =
buildMypyBoto3Package "fms" "1.40.20"
"sha256-yBhVmfeAexcJzkxC3AdtWOC4PjCoTDozxYT6qrgEHJ8=";
buildMypyBoto3Package "fms" "1.40.64"
"sha256-TxHLddGOy2Pa0bld44WQCnkvhb1Gl6ohckI1TNG56uc=";
mypy-boto3-forecast =
buildMypyBoto3Package "forecast" "1.40.60"
@@ -554,12 +554,12 @@ in
"sha256-isp1Xxwze6EL2Be4I881yiGnQh9zcXVPXZ768Cz/Y68=";
mypy-boto3-frauddetector =
buildMypyBoto3Package "frauddetector" "1.40.19"
"sha256-BpY3WWeFvaGfDaGk/dxJijSK3giz7wrgvHk/lKOaxzk=";
buildMypyBoto3Package "frauddetector" "1.40.63"
"sha256-Qex9NGctqp5L2XkIxw6J9t4C5rqVzDmNCKWzQLI+040=";
mypy-boto3-fsx =
buildMypyBoto3Package "fsx" "1.40.42"
"sha256-phgje7MZt9KoKUb6bQYqZ4/BqjYflEDPJ/uN7J04zuE=";
buildMypyBoto3Package "fsx" "1.40.64"
"sha256-b3G9urLiNhC/8SnEqRBTlm/ns1vi7KtVqZzZ2U8G6kw=";
mypy-boto3-gamelift =
buildMypyBoto3Package "gamelift" "1.40.54"
@@ -574,8 +574,8 @@ in
"sha256-NkEe4fOx9ZH6SHfa3A8UHXLyxIgjVGvy4UL+HkUiCDA=";
mypy-boto3-glue =
buildMypyBoto3Package "glue" "1.40.50"
"sha256-1LgvvSs/ZFxrCT/7MhZDATFUI6az5yTAhuc41QQ1kGk=";
buildMypyBoto3Package "glue" "1.40.63"
"sha256-1nuI+XZIfxrcCxdyyK090Gqq6UojBGkkq9TRu1PbJLk=";
mypy-boto3-grafana =
buildMypyBoto3Package "grafana" "1.40.54"
"sha256-GeYE+d3wv+KTcS0ve0ftTLXazGS5a5KMQmVMXMl9jtM=";
@@ -585,8 +585,8 @@ in
"sha256-+H/q11j6CwdS40V1BO8890nBwOYKo2JCz/plaemZHJY=";
mypy-boto3-greengrassv2 =
buildMypyBoto3Package "greengrassv2" "1.40.15"
"sha256-/O+fM3MU2HtFIt1S8+yE3RG59dsHKwJbnINaVmYUnD0=";
buildMypyBoto3Package "greengrassv2" "1.40.63"
"sha256-Q4Qxdpy59x3JkyJ3I54xRvGk789J6mhWtpLZcSWqr/A=";
mypy-boto3-groundstation =
buildMypyBoto3Package "groundstation" "1.40.61"
@@ -597,8 +597,8 @@ in
"sha256-gTfRwvZekeaQ8V7QgepE4S+i134YQiJ1UXDTU+otVZ8=";
mypy-boto3-health =
buildMypyBoto3Package "health" "1.40.0"
"sha256-c/QCgM8mWIAe76C7e3+g9z3i/ukvOz9QGungofo2hY8=";
buildMypyBoto3Package "health" "1.40.64"
"sha256-sakRBiIRCBnOmEy171tY5496TT8GpWvw4IH0Su0plXk=";
mypy-boto3-healthlake =
buildMypyBoto3Package "healthlake" "1.40.58"
@@ -665,8 +665,8 @@ in
"sha256-j/LzJRyYqyThvR4MzPrSVJvlpHDhFkb4Hm5TjXdeWqY=";
mypy-boto3-iotevents-data =
buildMypyBoto3Package "iotevents-data" "1.40.15"
"sha256-CIr9UTs6qHRvEWrlHLooTOYzFKaWA+BwG/N8Fp+XTJg=";
buildMypyBoto3Package "iotevents-data" "1.40.63"
"sha256-jhLj/7AWoC9oqprKhm+vCnwFSWU1aMBK8tmL3rX9sSA=";
mypy-boto3-iotfleethub =
buildMypyBoto3Package "iotfleethub" "1.40.17"
@@ -729,8 +729,8 @@ in
"sha256-NLkf8t9W/ZKA7S9qc/qJ1u4bzh87unvsQLUeh92sbvg=";
mypy-boto3-kinesis =
buildMypyBoto3Package "kinesis" "1.40.60"
"sha256-mMh6y7S68A7epORt0CkJ5U9Y0w8UwJmVf6L8d/G0HUA=";
buildMypyBoto3Package "kinesis" "1.40.64"
"sha256-5g/KLB69FD9/lojdZ5S3vWPuHBgdOjyrXxyDh0RZd8k=";
mypy-boto3-kinesis-video-archived-media =
buildMypyBoto3Package "kinesis-video-archived-media" "1.40.58"
@@ -761,16 +761,16 @@ in
"sha256-lViXLfbEMpMenVxZmcp2cfhd0SqH2IiMPOIaOdimU00=";
mypy-boto3-kms =
buildMypyBoto3Package "kms" "1.40.54"
"sha256-0+dJmIiBbQPcy6xbmn/qjvAyI84YF5AvGJFzZBQAP3g=";
buildMypyBoto3Package "kms" "1.40.63"
"sha256-TI+hBy1rbDzEaxb4aTQ5PbZyhGNChowdlmjDvVKltIU=";
mypy-boto3-lakeformation =
buildMypyBoto3Package "lakeformation" "1.40.55"
"sha256-IcUBufhnr3GfgJ0FG/JTwo0EgNZBtgKvTd6TtyttWRQ=";
mypy-boto3-lambda =
buildMypyBoto3Package "lambda" "1.40.61"
"sha256-ffnXUIpAaIsKSLQ23Wh3fyL7CVgg/RIneMGFN9cAn7k=";
buildMypyBoto3Package "lambda" "1.40.64"
"sha256-w4xoyD1wEmYcn1V5zjNg2J5Zxe45QffCKsz9qQ0UCR8=";
mypy-boto3-lex-models =
buildMypyBoto3Package "lex-models" "1.40.54"
@@ -793,8 +793,8 @@ in
"sha256-d9i0AUux2ChlTnW2UWJ/de9KRYc8HtvLSFENETuy72U=";
mypy-boto3-license-manager-linux-subscriptions =
buildMypyBoto3Package "license-manager-linux-subscriptions" "1.40.0"
"sha256-pfIQS9as02Gm4mHUc3q3gMKRHz+wT/lRKHWUc2ugt1s=";
buildMypyBoto3Package "license-manager-linux-subscriptions" "1.40.63"
"sha256-5nHjl/kDJHf0QvaWqQVFSDkYxJpH78sQA+ilMCzu6DQ=";
mypy-boto3-license-manager-user-subscriptions =
buildMypyBoto3Package "license-manager-user-subscriptions" "1.40.55"
@@ -809,8 +809,8 @@ in
"sha256-mQBymsl2+/hka8QiR+AzxS7gtONHroTgY3qmgt+YKOw=";
mypy-boto3-logs =
buildMypyBoto3Package "logs" "1.40.32"
"sha256-udjRe+Pb6Yvbh6OHYs32VCTddkrAo/y1Se32A+FM1/M=";
buildMypyBoto3Package "logs" "1.40.64"
"sha256-XWGsDqlDWAmh4treGhQDb9t0QF8cAKWRdkJwY62qdOY=";
mypy-boto3-lookoutequipment =
buildMypyBoto3Package "lookoutequipment" "1.40.54"
@@ -845,8 +845,8 @@ in
"sha256-YC5sNBnH5wS6JSCfPK7cp08WXgBLaDypDRBALMciLQQ=";
mypy-boto3-marketplace-catalog =
buildMypyBoto3Package "marketplace-catalog" "1.40.55"
"sha256-UqI1ypP3nBu8cc1bFg4RWtOUm5BbE4lA2zvAvbWTQac=";
buildMypyBoto3Package "marketplace-catalog" "1.40.64"
"sha256-Gla00GNkoQ9C/AocSEkHQwTK1JP51F+pnhmRfQRFCpg=";
mypy-boto3-marketplace-entitlement =
buildMypyBoto3Package "marketplace-entitlement" "1.40.54"
@@ -861,8 +861,8 @@ in
"sha256-18sD6lfs5Y9BBp3j8c/TVjI/3KZbO6pKuYPYKir1NQY=";
mypy-boto3-mediaconvert =
buildMypyBoto3Package "mediaconvert" "1.40.56"
"sha256-oxrbkvlpIII2Ib8hMF0UnZ6PNFYnDHceA6V9M1thF18=";
buildMypyBoto3Package "mediaconvert" "1.40.64"
"sha256-TRr19ppRe4jRZNMHPQmXwUXXmtt/vzwLjc5Xq+H/RYw=";
mypy-boto3-medialive =
buildMypyBoto3Package "medialive" "1.40.57"
@@ -941,8 +941,8 @@ in
"sha256-84N2KuK/XAPJqnmeDuWNpC5X6NRodH0luXfP+ZjH0pQ=";
mypy-boto3-neptune =
buildMypyBoto3Package "neptune" "1.40.38"
"sha256-3vbUWdYw7jqTM5TPM3btPROlXPW1xR+3cI29ImVrt1w=";
buildMypyBoto3Package "neptune" "1.40.63"
"sha256-oo88POk9T+Ys/awYIRLRw0JwFfFtyyrKC2t/lclKE2I=";
mypy-boto3-neptunedata =
buildMypyBoto3Package "neptunedata" "1.40.58"
@@ -965,8 +965,8 @@ in
"sha256-jobSOTxwJ6mzhr4O+opLrCvGuq4MMRe+zjhHWpq4JsA=";
mypy-boto3-omics =
buildMypyBoto3Package "omics" "1.40.58"
"sha256-weugGpAmdljYGGImQm7Ic46FH/H1RrQqe0Vkc0sWhTQ=";
buildMypyBoto3Package "omics" "1.40.64"
"sha256-hjgvlTcA18OeMpJIgpl+ml4zSc73HXrUrM0adOzScl4=";
mypy-boto3-opensearch =
buildMypyBoto3Package "opensearch" "1.40.61"
@@ -1001,8 +1001,8 @@ in
"sha256-Rf6XuOTE/09pKpotR/AY6526gfPP+pP2Y9WAfhBSL6E=";
mypy-boto3-payment-cryptography =
buildMypyBoto3Package "payment-cryptography" "1.40.59"
"sha256-7B7yO41CKkQPBxY4hDwVt5LmkbweyLZtCkeO+B0OLmc=";
buildMypyBoto3Package "payment-cryptography" "1.40.64"
"sha256-4jXXEaS2Uy+k+FQScXyaLToUC6E3+poejhOLAOGBFdg=";
mypy-boto3-payment-cryptography-data =
buildMypyBoto3Package "payment-cryptography-data" "1.40.59"
@@ -1093,8 +1093,8 @@ in
"sha256-tPhLjs0Gw9CunnNhnWc9UMyOwY7f1B9V/XzEHOOoLg4=";
mypy-boto3-redshift =
buildMypyBoto3Package "redshift" "1.40.40"
"sha256-S2Kq4+up5zWfLS2rM14qwmzLd1h13hz8YURBq9O715w=";
buildMypyBoto3Package "redshift" "1.40.64"
"sha256-FyWVufVC/yjEMju/Zdj382CqZgOEGNDCJ64I7jbGu7E=";
mypy-boto3-redshift-data =
buildMypyBoto3Package "redshift-data" "1.40.57"
@@ -1121,8 +1121,8 @@ in
"sha256-ZKa2t6TPCQBID9YGi6vkYnw9icZQinedflGoqFyXqc0=";
mypy-boto3-resourcegroupstaggingapi =
buildMypyBoto3Package "resourcegroupstaggingapi" "1.40.17"
"sha256-y80XkJoge5ED3oj4562wlG8GaXcCzTI8It58RW+skRQ=";
buildMypyBoto3Package "resourcegroupstaggingapi" "1.40.64"
"sha256-zcNW4Ll7oTzeZIL+fV7DaP/YYTjmSzvPhnDukyVFGog=";
mypy-boto3-robomaker =
buildMypyBoto3Package "robomaker" "1.40.59"
@@ -1169,12 +1169,12 @@ in
"sha256-yyzFGMna0sVQnoc/xQSXTMO/RR1RiyQuWHeiVHHk7ZI=";
mypy-boto3-s3outposts =
buildMypyBoto3Package "s3outposts" "1.40.15"
"sha256-HPAyUwvfUNZl3Ts3H0evVO7UifAiiwrDPyYJ4titkqA=";
buildMypyBoto3Package "s3outposts" "1.40.63"
"sha256-AL/XZLrWVNvZXxHvFXCsR/7L0F+9gCS20AhyJOSk5XE=";
mypy-boto3-sagemaker =
buildMypyBoto3Package "sagemaker" "1.40.61"
"sha256-qHC0znSbcBD0eNkq5b9Hq2h8+iM7BiQIAdm+2JOEuZo=";
buildMypyBoto3Package "sagemaker" "1.40.64"
"sha256-voJIB6srDcuVmJJ3d+gJrOSC5X/I7FqOmNqiFzhunxM=";
mypy-boto3-sagemaker-a2i-runtime =
buildMypyBoto3Package "sagemaker-a2i-runtime" "1.40.57"
@@ -1197,20 +1197,20 @@ in
"sha256-7Z+kgd+6TYaE5cNmcJi2eWeAsCs0kSv+c+CLr3c9FnU=";
mypy-boto3-sagemaker-runtime =
buildMypyBoto3Package "sagemaker-runtime" "1.40.17"
"sha256-NuIRRV2eq/OSMyeqKuZXGFfjzGQpX41Gx5Tv9l/2jOo=";
buildMypyBoto3Package "sagemaker-runtime" "1.40.63"
"sha256-QbpaTAAmqvN4Vo6vq3U25bcYLgTGZUTvgaxl6BGbxZQ=";
mypy-boto3-savingsplans =
buildMypyBoto3Package "savingsplans" "1.40.58"
"sha256-hwVYt4TCYXK6G8N0x52swjdf/k1roNzwRhYl8JO4VM0=";
buildMypyBoto3Package "savingsplans" "1.40.64"
"sha256-o9l8b3o+Z+ft+t5UBUleHbOfHexY6UBUo10ko6Ru/IA=";
mypy-boto3-scheduler =
buildMypyBoto3Package "scheduler" "1.40.60"
"sha256-ckZ45QZgelh3hVVmMrxdFO0I9qRs8f4EmmRizHB8MVk=";
mypy-boto3-schemas =
buildMypyBoto3Package "schemas" "1.40.19"
"sha256-cNAGZVXZKDxfU1x92cBHYa2MlVFCaFTVENt3pbsYpcY=";
buildMypyBoto3Package "schemas" "1.40.63"
"sha256-QV0qMR8NdhDx4WR3okTGpYvkosZfD3QslmegvvPyvZQ=";
mypy-boto3-sdb =
buildMypyBoto3Package "sdb" "1.40.0"
@@ -1229,16 +1229,16 @@ in
"sha256-bwX8OJWCayO3dpMuhB9VelSzhl/y+vVch0hY8w2NFm0=";
mypy-boto3-serverlessrepo =
buildMypyBoto3Package "serverlessrepo" "1.40.17"
"sha256-1YK+zUZhTf37giAyXYuZDJ8Gmg4LUZO1FwaAGViIXos=";
buildMypyBoto3Package "serverlessrepo" "1.40.63"
"sha256-zj7R0tvQvheGrQIAuXQsHBJrm01lQlkoCxkJLZDJR/8=";
mypy-boto3-service-quotas =
buildMypyBoto3Package "service-quotas" "1.40.48"
"sha256-9lvZvist3G5plkmsvZ4iHM2iBim8V3BmCYTbk6xDrmc=";
mypy-boto3-servicecatalog =
buildMypyBoto3Package "servicecatalog" "1.40.0"
"sha256-NQpBAN1iSAgS0TcKWe8GURwxKVdjmslcfkpF8rEL3G4=";
buildMypyBoto3Package "servicecatalog" "1.40.63"
"sha256-fKcu/kTLFF/SCXN37pnaKidNi+KxUCnF7FsKTYRucrA=";
mypy-boto3-servicecatalog-appregistry =
buildMypyBoto3Package "servicecatalog-appregistry" "1.40.61"
@@ -1281,8 +1281,8 @@ in
"sha256-n9fTVYvwyPnGIkLjHpALZ1nqZC6XrClJltHicNbgd1k=";
mypy-boto3-snowball =
buildMypyBoto3Package "snowball" "1.40.17"
"sha256-MVXzb+7NvziTkEQuuo3GQdoHrrnL9859f0i07qQGnYc=";
buildMypyBoto3Package "snowball" "1.40.64"
"sha256-G4DP0bpdEItLqe8nNyQIrH9YjaLsQulihQh85yT4nt0=";
mypy-boto3-sns =
buildMypyBoto3Package "sns" "1.40.57"
@@ -1309,8 +1309,8 @@ in
"sha256-KPj/5+bRGnfGct08/e50UhrR14xm+HDYVxoM+U6ugec=";
mypy-boto3-sso =
buildMypyBoto3Package "sso" "1.40.20"
"sha256-XlnYeHhZ5IttMBKIa2rsk22QDRp2M72x1nAeJ3CiKa0=";
buildMypyBoto3Package "sso" "1.40.63"
"sha256-sNbfCSaPWCpF67SQcKcy290OSiMPdHpJsYTUq7uaeyU=";
mypy-boto3-sso-admin =
buildMypyBoto3Package "sso-admin" "1.40.60"
@@ -1329,8 +1329,8 @@ in
"sha256-aRgrg0Mpzc+gk2GIPjofavpf6IkMNW3kB+vU6aNelhk=";
mypy-boto3-sts =
buildMypyBoto3Package "sts" "1.40.0"
"sha256-61XlCWCuYZTQlIhGTDAhljkt9xKmpfQwi2oOJCRM/Vw=";
buildMypyBoto3Package "sts" "1.40.63"
"sha256-O3TsxQZwDrBQKZP2JMqqKGVZ417H4FrTjuPxdR4KCiQ=";
mypy-boto3-support =
buildMypyBoto3Package "support" "1.40.17"
@@ -1349,8 +1349,8 @@ in
"sha256-naC16by9nRoZvRfSIIYJdk4jT/lxqUDeogtGb+q+avk=";
mypy-boto3-textract =
buildMypyBoto3Package "textract" "1.40.0"
"sha256-hMLxKQ6aMwdquw2oOgeB33OigX25MOQFJhGEBfEyf7U=";
buildMypyBoto3Package "textract" "1.40.64"
"sha256-KPHmg5J3t6O7SsukkdqnLiNxHpnbS81kPjCD5gxlrzs=";
mypy-boto3-timestream-query =
buildMypyBoto3Package "timestream-query" "1.40.54"
@@ -1389,8 +1389,8 @@ in
"sha256-39fPl4F2Xiz6+AN8HeGi33Yjj9mfxvU3ZmklLY0STMk=";
mypy-boto3-waf =
buildMypyBoto3Package "waf" "1.40.20"
"sha256-ypvb9EgrioTSxnTcoiEO7XV5xACxGhY9HUPbOeWVFBI=";
buildMypyBoto3Package "waf" "1.40.64"
"sha256-6hFX0XgzB+dMqyaEUJQADjivNJH71oD4KG4KulkqRjE=";
mypy-boto3-waf-regional =
buildMypyBoto3Package "waf-regional" "1.40.60"
@@ -4,21 +4,18 @@
buildPythonPackage,
fetchFromGitHub,
poetry-core,
pythonOlder,
}:
buildPythonPackage rec {
pname = "pynordpool";
version = "0.3.1";
version = "0.3.2";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "gjohansson-ST";
repo = "pynordpool";
tag = "v${version}";
hash = "sha256-4s43E3VUO0EOTte4c2ZnWY2fccyVAgqSOVPpxz0+L5s=";
hash = "sha256-3yMVhdfjl2l56WzI+uRMUwFuYafSH3YfabYqKSK25Y4=";
};
build-system = [ poetry-core ];
@@ -0,0 +1,41 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
rustPlatform,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "reflink-copy";
version = "0.3.3";
pyproject = true;
src = fetchFromGitHub {
owner = "iterative";
repo = "reflink-copy";
tag = version;
hash = "sha256-HxUAsqV5kjstfBfY/nEGJ3epUVT5WXoTqKerUggKDyo=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-TBKVf0kRRYn+1aYvhQHCHmJEsT0khFxp8iuyEWX9xyI=";
};
nativeBuildInputs = with rustPlatform; [
cargoSetupHook
maturinBuildHook
];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "reflink_copy" ];
meta = with lib; {
description = "Python wrapper for reflink_copy Rust library";
homepage = "https://github.com/iterative/reflink-copy";
license = licenses.asl20;
maintainers = with maintainers; [ ambroisie ];
};
}
@@ -2,23 +2,21 @@
lib,
buildPythonPackage,
fetchPypi,
# build-system
flit-core,
}:
buildPythonPackage rec {
pname = "stdlib-list";
version = "0.11.1";
format = "pyproject";
version = "0.12.0";
pyproject = true;
src = fetchPypi {
pname = "stdlib_list";
inherit version;
hash = "sha256-levR1z2pMzu6A8zAl/W6wF46oD5oIqDAKQ+H4QR/GFc=";
hash = "sha256-UXgk8n7onlkdiufB3Z/zT2curlDuiG6jG7iBbXdTVnU=";
};
nativeBuildInputs = [ flit-core ];
build-system = [ flit-core ];
pythonImportsCheck = [ "stdlib_list" ];
@@ -26,9 +24,9 @@ buildPythonPackage rec {
doCheck = false;
meta = with lib; {
changelog = "https://github.com/pypi/stdlib-list/releases/tag/v${version}";
description = "List of Python Standard Libraries";
homepage = "https://github.com/jackmaney/python-stdlib-list";
changelog = "https://github.com/pypi/stdlib-list/releases/tag/v${version}";
license = licenses.mit;
maintainers = [ ];
};
+2 -12
View File
@@ -12994,18 +12994,6 @@ with pkgs;
vanillara = callPackage ../by-name/va/vanillatd/package.nix { appName = "vanillara"; };
### GAMES/DOOM-PORTS
enyo-launcher = libsForQt5.callPackage ../games/doom-ports/enyo-launcher { };
zandronum = callPackage ../games/doom-ports/zandronum { };
zandronum-server = zandronum.override {
serverOnly = true;
};
fmodex = callPackage ../games/doom-ports/zandronum/fmod.nix { };
anki-utils = callPackage ../by-name/an/anki/addons/anki-utils.nix { };
ankiAddons = recurseIntoAttrs (callPackage ../by-name/an/anki/addons { });
@@ -13639,6 +13627,7 @@ with pkgs;
gromacsDouble = lowPrio (
gromacs.override {
singlePrec = false;
enableCuda = false; # CUDA is only implemented for single precision
fftw = fftw;
}
);
@@ -13646,6 +13635,7 @@ with pkgs;
gromacsDoubleMpi = lowPrio (
gromacs.override {
singlePrec = false;
enableCuda = false; # CUDA is only implemented for single precision
enableMpi = true;
fftw = fftw;
}
+2
View File
@@ -15923,6 +15923,8 @@ self: super: with self; {
reflink = callPackage ../development/python-modules/reflink { };
reflink-copy = callPackage ../development/python-modules/reflink-copy { };
refoss-ha = callPackage ../development/python-modules/refoss-ha { };
regenmaschine = callPackage ../development/python-modules/regenmaschine { };