Skip to content

fragments containing quotes are not parsed correctly anymore. #13772

@NobbZ

Description

@NobbZ

Describe the bug

If a fragment is used that contains quotes, then it won't be parsed correctly and all of a sudden nix tries to use the flakeref as a local relative path, this breaks home-manager as well as nixos-rebuild, which quote their config name in the expanded attribute path.

This happens since d905339 (bisection log in context)

This happens since bd1d2d1 (bisect log in first comment)

Steps To Reproduce

  1. run nix build 'github:nobbz/nixos-config?ref=4187e0413a4b0ecf503d4c22bbdcb7e449c927d4#homeConfigurations."nmelzer@phoebe".activationPackage' or something.
  2. See it fail with an error like this:
    error: getting status of '/home/nmelzer/Projects/Personal/nix/github:nobbz/nixos-config': No such file or directory
    

Expected behavior

The build succeeds, as it dif with nix 2.30 and before!

Metadata

Nix nightly, for quite some time now, more details in the bisection log.

Additional context

Messed up bisection log
git bisect start
# status: waiting for both good and bad commits
# bad: [9fb62805b04fbfc94393f08fcd7ce601c478d3fd] Merge pull request #13749 from Mic92/merge-queues
git bisect bad 9fb62805b04fbfc94393f08fcd7ce601c478d3fd
# status: waiting for good commit(s), bad commit known
# good: [e8314e69ab481c2023034006d3d2366cf9325c1a] Merge pull request #13460 from m4dc4p/m4dc4p/handle-expired-tokens
git bisect good e8314e69ab481c2023034006d3d2366cf9325c1a
# bad: [664f06c94c53fc41094bae2889d2d7510fcd8d92] Merge pull request #13699 from xokdvium/fix-dev-shell-build
git bisect bad 664f06c94c53fc41094bae2889d2d7510fcd8d92
# good: [f0695e177f22e888fa3d4a2b362efb63cbfdc561] ci: Make it actually possible to disable dogfooding
git bisect good f0695e177f22e888fa3d4a2b362efb63cbfdc561
# good: [5db50e3f777888b18336e9dcc065ef0e9057c6cf] meson: Disable PCH for GCC
git bisect good 5db50e3f777888b18336e9dcc065ef0e9057c6cf
# bad: [23c87d8a210ec3ffe29a14d7ceb3f4e87ab4fa90] Encapsulate `invalidBase32`, avoid 0xFF magic number
git bisect bad 23c87d8a210ec3ffe29a14d7ceb3f4e87ab4fa90
# good: [7abfc9b92a2dee8d668f9e835f9219d52ae1bee3] Merge pull request #13682 from xokdvium/refscan-benchmark
git bisect good 7abfc9b92a2dee8d668f9e835f9219d52ae1bee3
# bad: [bd1d2d1041a321284efcf22e11beb86ede08648d] libutil: Use Boost.URL in parseURL
git bisect bad bd1d2d1041a321284efcf22e11beb86ede08648d
# bad: [d9053390cec37cfb199cb3db256e43657a097465] libutil-test-support: Add HasSubstrIgnoreANSIMatcher
git bisect bad d9053390cec37cfb199cb3db256e43657a097465
# good: [ffc9bfb66d0b8d5da4e94ab1ac4580657b6352eb] lib{store,flake}-tests: Add test for spaces in URIs
git bisect good ffc9bfb66d0b8d5da4e94ab1ac4580657b6352eb
# first bad commit: [d9053390cec37cfb199cb3db256e43657a097465] libutil-test-support: Add HasSubstrIgnoreANSIMatcher

Bad commits failed the nix build from the example, Good ones succeeded.

I messed up bisection in the first run, correct log in comment

Checklist


Add 👍 to issues you find important.

Metadata

Metadata

Assignees

Labels

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions