Commit Graph

1005345 Commits

Author SHA1 Message Date
R. Ryantm 089ef3cffb cloudfox: 2.0.4 -> 2.0.5 2026-05-26 15:52:48 +00:00
Kerstin Humm 90e103778c vouch-proxy: 0.45.1 -> 0.47.2 (#522857) 2026-05-26 12:15:20 +00:00
Stefan Frijters 9a8b8a00eb zod: move env variables into env (#524007) 2026-05-26 11:51:13 +00:00
Yt 29cc695b5d redpanda-client: 26.1.8 -> 26.1.9 (#524296) 2026-05-26 11:40:20 +00:00
Maximilian Bosch 53530cba09 roundcube: 1.7.0 -> 1.7.1 (#523952) 2026-05-26 11:36:35 +00:00
yaya fb49005c74 gitlab-runner: 18.11.2 -> 18.11.3 (#519748) 2026-05-26 11:34:26 +00:00
Robert Hensing 8d10ccfc53 owners: Add @tfc to nixos test driver modules folder (#524366) 2026-05-26 10:34:47 +00:00
Felix Bargfeldt 0922f564f0 clorinde: 1.4.1 -> 2.0.0 (#524276) 2026-05-26 10:27:08 +00:00
Fabian Affolter ba6417ec9a python3Packages.iamdata: 0.1.202605251 -> 0.1.202605261 (#524374) 2026-05-26 10:23:14 +00:00
Fabian Affolter eea4c1113f python3Packages.pyyardian: 1.2.0 -> 1.3.3 (#524372) 2026-05-26 10:22:16 +00:00
Fabian Affolter e185b4d423 vunnel: 0.57.0 -> 0.58.0 (#524204) 2026-05-26 10:20:38 +00:00
Fabian Affolter c875358f28 python3Packages.types-awscrt: 0.31.3 -> 0.33.0 (#524292) 2026-05-26 10:19:44 +00:00
Fabian Affolter 848f02a8ee python3Packages.gehomesdk: 2026.2.0 -> 2026.5.1 (#524322) 2026-05-26 10:19:11 +00:00
Fabian Affolter a0d758fd0b python3Packages.langchain-google-genai: 4.2.2 -> 4.2.3 (#524358) 2026-05-26 10:14:54 +00:00
misuzu 551c1360ba qsv: 19.1.0 -> 20.1.0 (#524329) 2026-05-26 10:14:04 +00:00
kirillrdy 1e5ab898db faiss: 1.14.1 -> 1.14.2 (#524120) 2026-05-26 10:09:26 +00:00
Jonas Chevalier eed9211bb4 lib.sources.sourceByGlobs: init function (#462272) 2026-05-26 10:05:54 +00:00
zimbatm df1b67fdfd purescript.tests.minimal-module: use lib.sources.sourceByGlobs
Filter src to the .purs and .js files actually compiled, dropping
default.nix from the closure.
2026-05-26 21:53:50 +12:00
kirillrdy 87fcb8ea8b python3Packages.numpy-quaternion: init at 2024.0.13 (#524057) 2026-05-26 09:53:40 +00:00
Luke Granger-Brown bf36a43961 prometheus-bird-exporter: 1.4.3 -> 1.4.5 (#516082) 2026-05-26 09:49:51 +00:00
zimbatm 1b47667776 vimPluginsUpdater: use lib.sources.sourceByGlobs
Filter PYTHONPATH source to .py files only, dropping the 6 sibling
.nix files from the closure.
2026-05-26 21:49:00 +12:00
zimbatm edb4b053f5 pkgs.formats.javaProperties: use lib.sources.sourceByGlobs
Uses the cleaner expression
2026-05-26 21:49:00 +12:00
zimbatm 01bdc186ae lib.sources.sourceByGlobs: address review comments 2026-05-26 21:49:00 +12:00
adisbladis 59d55cbaa3 lib.sources.sourceByGlobs: init function
Adds a source filtering function inspired by [doublestar](https://github.com/bmatcuk/doublestar).

This has been in used in a few private repositories since the last ~6 months with success.

- Testing

This was originally tested with the nix-unit testsuite:
```
let
  inherit (import ./internal.nix) mkSourceFilter mkMatcher;
in
{
  mkMatcher = {
    empty = {
      testMatch = {
        expr = mkMatcher "" "" "regular";
        expected = true;
      };

      testNoMatch = {
        expr = mkMatcher "" "foo" "regular";
        expected = false;
      };
    };

    simple = {
      testMatch = {
        expr = mkMatcher "foo" "foo" "regular";
        expected = true;
      };

      testNoMatch = {
        expr = mkMatcher "foo" "bar" "regular";
        expected = false;
      };
    };

    singleStar = {
      testMatch = {
        expr = mkMatcher "*.js" "foo.js" "regular";
        expected = true;
      };

      testNoMatch = {
        expr = mkMatcher "*.js" "foo.py" "regular";
        expected = false;
      };
    };

    doubleStar = {
      testMatch = {
        expr = mkMatcher "foo/**/bar" "foo/baz/bar" "regular";
        expected = true;
      };

      testNoMatch = {
        expr = mkMatcher "foo/**/bar" "foo/bar/baz" "regular";
        expected = false;
      };

      testMultiMatch = {
        expr = mkMatcher "foo/**/bar" "foo/baz/xyz/bar" "regular";
        expected = true;
      };

      testMultiMatchDoubleGlob = {
        expr = mkMatcher "foo/**/**/bar" "foo/baz/xyz/bar" "regular";
        expected = true;
      };

      testInfixMatch = {
        expr = mkMatcher "foo/**/qux/**/bar" "foo/baz/qux/baz/bar" "regular";
        expected = true;
      };

      testInfixNoMatch = {
        expr = mkMatcher "foo/**/xyz/**/bar" "foo/baz/qux/baz/bar" "regular";
        expected = false;
      };

      # Technically a partial match
      testInfixDirMatch = {
        expr = mkMatcher "foo/**/xyz/**/bar" "foo/baz/qux/baz/bar" "directory";
        expected = true;
      };
    };
  };

  mkSourceFilter = {
    testSourceFilter = {
      expr = mkSourceFilter ./fixtures [
        "bar/*.js"
      ] "bar/bar.js" "regular";
      expected = true;
    };
  };
}
```
but it was dropped in this nixpkgs contribution as the structure of nixpkgs lib testing is too primitive to incorp this without more extensive refactoring than I'd like at the momment.

- Performance

It's hard to benchmark this against anything else meaningful except [globsset](https://github.com/pdtpartners/globset), which has a very similar API.

`sourceByGlobs` avoids performance pitfalls by:

  - Using `builtins.filterSource`

      This is more performant than the fileset API.
      The downside compared to the fileset API is that any directory which matches the filter will be added to the build, even if it's empty.

  - Match paths component by component

      By splitting each pattern into a token per / separator.
      This is much faster in Nix than the doublestar algorithm.

- Globset source

```json
{
    "cpuTime": 0.8585879802703857,
    "envs": {
        "bytes": 148252864,
        "elements": 11899843,
        "number": 6631765
    },
    "gc": {
        "heapSize": 402915328,
        "totalBytes": 671288560
    },
    "list": {
        "bytes": 3358664,
        "concats": 28658,
        "elements": 419833
    },
    "nrAvoided": 11562713,
    "nrFunctionCalls": 4816963,
    "nrLookups": 4316209,
    "nrOpUpdateValuesCopied": 5686407,
    "nrOpUpdates": 464060,
    "nrPrimOpCalls": 2966970,
    "nrThunks": 7796186,
    "sets": {
        "bytes": 196404672,
        "elements": 10837802,
        "number": 1437490
    },
    "sizes": {
        "Attr": 16,
        "Bindings": 16,
        "Env": 8,
        "Value": 24
    },
    "symbols": {
        "bytes": 340652,
        "number": 32026
    },
    "values": {
        "bytes": 207367440,
        "number": 8640310
    }
}
```

- Glob-filter source

```json
{
    "cpuTime": 0.3904629945755005,
    "envs": {
        "bytes": 13263440,
        "elements": 1005877,
        "number": 652053
    },
    "gc": {
        "heapSize": 402915328,
        "totalBytes": 146914896
    },
    "list": {
        "bytes": 3032168,
        "concats": 5899,
        "elements": 379021
    },
    "nrAvoided": 1666598,
    "nrFunctionCalls": 484399,
    "nrLookups": 112698,
    "nrOpUpdateValuesCopied": 3432135,
    "nrOpUpdates": 13426,
    "nrPrimOpCalls": 1041954,
    "nrThunks": 1205792,
    "sets": {
        "bytes": 64304800,
        "elements": 3978167,
        "number": 40883
    },
    "sizes": {
        "Attr": 16,
        "Bindings": 16,
        "Env": 8,
        "Value": 24
    },
    "symbols": {
        "bytes": 285306,
        "number": 28864
    },
    "values": {
        "bytes": 42963240,
        "number": 1790135
    }
}
```
2026-05-26 21:48:59 +12:00
Rémi NICOLE 60dd3b28f0 knewave: use installFonts (#523796) 2026-05-26 09:41:44 +00:00
Fabian Affolter 8c7a7542c1 python3Packages.aiolichess: 1.2.0 -> 1.3.0 (#524375) 2026-05-26 09:39:15 +00:00
Weijia Wang 5a1bed9680 python3Packages.eigenpy: 3.12.0 -> 3.13.0 (#523923) 2026-05-26 09:39:00 +00:00
Fabian Affolter 98352fe2f0 python3Packages.pyyardian: modernize 2026-05-26 11:37:12 +02:00
Bruno BELANYI 71b6c3bf34 upsies: 2026.05.14 -> 2026.05.24 (#524282) 2026-05-26 09:33:10 +00:00
Fabian Affolter 9c526e0077 python3Packages.iamdata: 0.1.202605251 -> 0.1.202605261
Diff: https://github.com/cloud-copilot/iam-data-python/compare/v0.1.202605251...v0.1.202605261

Changelog: https://github.com/cloud-copilot/iam-data-python/releases/tag/v0.1.202605261
2026-05-26 11:29:58 +02:00
nixpkgs-ci[bot] 9f7fdd3a43 gemini-cli: 0.42.0 -> 0.43.0 (#524359) 2026-05-26 09:28:33 +00:00
nixpkgs-ci[bot] 4ddabe8496 vivaldi: 8.0.4033.26 -> 8.0.4033.34 (#524344) 2026-05-26 09:28:29 +00:00
nixpkgs-ci[bot] df5303e7c0 netgen-vlsi: 1.5.319 -> 1.5.320 (#524313) 2026-05-26 09:28:23 +00:00
nixpkgs-ci[bot] 7b62391d9c tsukimi: 0.21.0 -> 26.5.3 (#524300) 2026-05-26 09:28:22 +00:00
nixpkgs-ci[bot] 8fc5885235 gefyra: 2.4.3 -> 2.4.4 (#523493) 2026-05-26 09:27:51 +00:00
K900 99737c6d9b Revert "scx.cscheds: move env variable into env for structuredAttrs" (#524373) 2026-05-26 09:24:34 +00:00
R. Ryantm e7d163b4e6 python3Packages.aiolichess: 1.2.0 -> 1.3.0 2026-05-26 09:23:57 +00:00
K900 520c7a1e49 Revert "scx.cscheds: move env variable into env for structuredAttrs" 2026-05-26 12:19:21 +03:00
Weijia Wang f44f7788c8 a2ps: 4.15.7 -> 4.15.8 (#523867) 2026-05-26 09:13:58 +00:00
Weijia Wang c707058ed4 nvc: 1.20.1 -> 1.21.0 (#523380) 2026-05-26 09:13:14 +00:00
R. Ryantm e39dcee4ed python3Packages.pyyardian: 1.2.0 -> 1.3.3 2026-05-26 09:12:03 +00:00
Weijia Wang 6a5d17ec11 sarasa-gothic: 1.0.37 -> 1.0.39 (#523731) 2026-05-26 09:09:08 +00:00
Thiago Kenji Okada 12897ff37a libretro.mame2003-plus: 0-unstable-2026-05-15 -> 0-unstable-2026-05-23 (#524249) 2026-05-26 09:00:49 +00:00
zowoq 0b62ee1217 terraform-providers.newrelic_newrelic: 3.87.3 -> 3.90.0 (#524365) 2026-05-26 08:58:45 +00:00
Rémi NICOLE 0b336db6e5 gelly: 1.1.2 -> 1.3.0 (#522469) 2026-05-26 08:58:18 +00:00
Jacek Galowicz 22253f78ec owners: Add @tfc to nixos test driver modules folder 2026-05-26 10:52:50 +02:00
R. Ryantm 9636984bdc terraform-providers.newrelic_newrelic: 3.87.3 -> 3.90.0 2026-05-26 08:42:32 +00:00
2kybe3 b944d102ee prometheus-bird-exporter: 1.4.3 -> 1.4.5
Diff: https://github.com/czerwonk/bird_exporter/compare/1.4.3...v1.4.5

Changelogs:

- https://github.com/czerwonk/bird_exporter/releases/tag/v1.4.5
- https://github.com/czerwonk/bird_exporter/releases/tag/v1.4.4
2026-05-26 10:33:17 +02:00
Martin Weinelt a9e6d52a04 home-assistant-custom-components.browser-mod: 2.13.3 -> 2.13.4 (#524349) 2026-05-26 08:31:34 +00:00
Martin Weinelt c058380123 gonic: 0.20.1 -> 0.21.0 (#524205) 2026-05-26 08:22:21 +00:00