Commit Graph
1005345 Commits
Author SHA1 Message Date
R. Ryantm fc6fef42e5 ansel: 0-unstable-2026-05-08 -> 0-unstable-2026-05-26 2026-05-26 15:56:45 +00:00
Kerstin HummandGitHub 90e103778c vouch-proxy: 0.45.1 -> 0.47.2 (#522857) 2026-05-26 12:15:20 +00:00
Stefan FrijtersandGitHub 9a8b8a00eb zod: move env variables into env (#524007) 2026-05-26 11:51:13 +00:00
YtandGitHub 29cc695b5d redpanda-client: 26.1.8 -> 26.1.9 (#524296) 2026-05-26 11:40:20 +00:00
Maximilian BoschandGitHub 53530cba09 roundcube: 1.7.0 -> 1.7.1 (#523952) 2026-05-26 11:36:35 +00:00
yayaandGitHub fb49005c74 gitlab-runner: 18.11.2 -> 18.11.3 (#519748) 2026-05-26 11:34:26 +00:00
Robert HensingandGitHub 8d10ccfc53 owners: Add @tfc to nixos test driver modules folder (#524366) 2026-05-26 10:34:47 +00:00
Felix BargfeldtandGitHub 0922f564f0 clorinde: 1.4.1 -> 2.0.0 (#524276) 2026-05-26 10:27:08 +00:00
Fabian AffolterandGitHub ba6417ec9a python3Packages.iamdata: 0.1.202605251 -> 0.1.202605261 (#524374) 2026-05-26 10:23:14 +00:00
Fabian AffolterandGitHub eea4c1113f python3Packages.pyyardian: 1.2.0 -> 1.3.3 (#524372) 2026-05-26 10:22:16 +00:00
Fabian AffolterandGitHub e185b4d423 vunnel: 0.57.0 -> 0.58.0 (#524204) 2026-05-26 10:20:38 +00:00
Fabian AffolterandGitHub c875358f28 python3Packages.types-awscrt: 0.31.3 -> 0.33.0 (#524292) 2026-05-26 10:19:44 +00:00
Fabian AffolterandGitHub 848f02a8ee python3Packages.gehomesdk: 2026.2.0 -> 2026.5.1 (#524322) 2026-05-26 10:19:11 +00:00
Fabian AffolterandGitHub a0d758fd0b python3Packages.langchain-google-genai: 4.2.2 -> 4.2.3 (#524358) 2026-05-26 10:14:54 +00:00
misuzuandGitHub 551c1360ba qsv: 19.1.0 -> 20.1.0 (#524329) 2026-05-26 10:14:04 +00:00
kirillrdyandGitHub 1e5ab898db faiss: 1.14.1 -> 1.14.2 (#524120) 2026-05-26 10:09:26 +00:00
Jonas ChevalierandGitHub eed9211bb4 lib.sources.sourceByGlobs: init function (#462272) 2026-05-26 10:05:54 +00:00
zimbatmandadisbladis 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
kirillrdyandGitHub 87fcb8ea8b python3Packages.numpy-quaternion: init at 2024.0.13 (#524057) 2026-05-26 09:53:40 +00:00
Luke Granger-BrownandGitHub bf36a43961 prometheus-bird-exporter: 1.4.3 -> 1.4.5 (#516082) 2026-05-26 09:49:51 +00:00
zimbatmandadisbladis 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
zimbatmandadisbladis edb4b053f5 pkgs.formats.javaProperties: use lib.sources.sourceByGlobs
Uses the cleaner expression
2026-05-26 21:49:00 +12:00
zimbatmandadisbladis 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 NICOLEandGitHub 60dd3b28f0 knewave: use installFonts (#523796) 2026-05-26 09:41:44 +00:00
Fabian AffolterandGitHub 8c7a7542c1 python3Packages.aiolichess: 1.2.0 -> 1.3.0 (#524375) 2026-05-26 09:39:15 +00:00
Weijia WangandGitHub 5a1bed9680 python3Packages.eigenpy: 3.12.0 -> 3.13.0 (#523923) 2026-05-26 09:39:00 +00:00
Fabian AffolterandGitHub 98352fe2f0 python3Packages.pyyardian: modernize 2026-05-26 11:37:12 +02:00
Bruno BELANYIandGitHub 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]andGitHub 9f7fdd3a43 gemini-cli: 0.42.0 -> 0.43.0 (#524359) 2026-05-26 09:28:33 +00:00
nixpkgs-ci[bot]andGitHub 4ddabe8496 vivaldi: 8.0.4033.26 -> 8.0.4033.34 (#524344) 2026-05-26 09:28:29 +00:00
nixpkgs-ci[bot]andGitHub df5303e7c0 netgen-vlsi: 1.5.319 -> 1.5.320 (#524313) 2026-05-26 09:28:23 +00:00
nixpkgs-ci[bot]andGitHub 7b62391d9c tsukimi: 0.21.0 -> 26.5.3 (#524300) 2026-05-26 09:28:22 +00:00
nixpkgs-ci[bot]andGitHub 8fc5885235 gefyra: 2.4.3 -> 2.4.4 (#523493) 2026-05-26 09:27:51 +00:00
K900andGitHub 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
K900andGitHub 520c7a1e49 Revert "scx.cscheds: move env variable into env for structuredAttrs" 2026-05-26 12:19:21 +03:00
Weijia WangandGitHub f44f7788c8 a2ps: 4.15.7 -> 4.15.8 (#523867) 2026-05-26 09:13:58 +00:00
Weijia WangandGitHub 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 WangandGitHub 6a5d17ec11 sarasa-gothic: 1.0.37 -> 1.0.39 (#523731) 2026-05-26 09:09:08 +00:00
Thiago Kenji OkadaandGitHub 12897ff37a libretro.mame2003-plus: 0-unstable-2026-05-15 -> 0-unstable-2026-05-23 (#524249) 2026-05-26 09:00:49 +00:00
zowoqandGitHub 0b62ee1217 terraform-providers.newrelic_newrelic: 3.87.3 -> 3.90.0 (#524365) 2026-05-26 08:58:45 +00:00
Rémi NICOLEandGitHub 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 WeineltandGitHub a9e6d52a04 home-assistant-custom-components.browser-mod: 2.13.3 -> 2.13.4 (#524349) 2026-05-26 08:31:34 +00:00
Martin WeineltandGitHub c058380123 gonic: 0.20.1 -> 0.21.0 (#524205) 2026-05-26 08:22:21 +00:00