This repository was archived by the owner on Apr 12, 2021. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 105
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: a6f3555ccb0f
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: NixOS/nixpkgs-channels
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 35fe837b6259
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 9 commits
- 10 files changed
- 6 contributors
Commits on Mar 27, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 176cb5c - Browse repository at this point
Copy the full SHA 176cb5cView commit details -
Configuration menu - View commit details
-
Copy full SHA for d940214 - Browse repository at this point
Copy the full SHA d940214View commit details
Commits on Mar 28, 2020
-
ion: 1.0.5 -> unstable-2020-03-22
The app is still maintained upstream, but they aren't cutting releases on crates.io anymore: https://crates.io/crates/ion-shell This fixes the build with the latest Rust toolchain by upgrading to the current commit off the project's `master`. ZHF: #80379 (cherry picked from commit 16cdff0)
Configuration menu - View commit details
-
Copy full SHA for 409e70d - Browse repository at this point
Copy the full SHA 409e70dView commit details -
Merge pull request #83550 from bhipple/bp/ion
[20.03] ion: 1.0.5 -> unstable-2020-03-22
Configuration menu - View commit details
-
Copy full SHA for 3488803 - Browse repository at this point
Copy the full SHA 3488803View commit details -
python27Packages.gym: 0.15.4 -> 0.16.0
Fixes broken build by backporting NixOS/nixpkgs#81577 and previous update. CC @NixOS/nixos-release-managers ZHF: #80379 (cherry picked from commit 908c6e8214a3933d43f55f5c4ae6df0572c34568)
Configuration menu - View commit details
-
Copy full SHA for 9bd852f - Browse repository at this point
Copy the full SHA 9bd852fView commit details -
(cherry picked from commit 88e4258)
Configuration menu - View commit details
-
Copy full SHA for 34b75d1 - Browse repository at this point
Copy the full SHA 34b75d1View commit details -
Merge pull request #83558 from bhipple/bp/pounce
[20.03] pounce: 1.0p1 -> 1.1 to fix build
Configuration menu - View commit details
-
Copy full SHA for 7780ba4 - Browse repository at this point
Copy the full SHA 7780ba4View commit details -
Merge pull request #83553 from bhipple/bp/gym
[20.03] python27Packages.gym: 0.15.4 -> 0.16.0 to fix build
Configuration menu - View commit details
-
Copy full SHA for 16d4f17 - Browse repository at this point
Copy the full SHA 16d4f17View commit details -
nginx: Fix ETag patch to ignore realpath(3) error
While our ETag patch works pretty fine if it comes to serving data off store paths, it unfortunately broke something that might be a bit more common, namely when using regexes to extract path components of location directives for example. Recently, @devhell has reported a bug with a nginx location directive like this: location ~^/\~([a-z0-9_]+)(/.*)?$" { alias /home/$1/public_html$2; } While this might look harmless at first glance, it does however cause issues with our ETag patch. The alias directive gets broken up by nginx like this: *2 http script copy: "/home/" *2 http script capture: "foo" *2 http script copy: "/public_html/" *2 http script capture: "bar.txt" In our patch however, we use realpath(3) to get the canonicalised path from ngx_http_core_loc_conf_s.root, which returns the *configured* value from the root or alias directive. So in the example above, realpath(3) boils down to the following syscalls: lstat("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("/home/$1", 0x7ffd08da6f60) = -1 ENOENT (No such file or directory) During my review[1] of the initial patch, I didn't actually notice that what we're doing here is returning NGX_ERROR if the realpath(3) call fails, which in turn causes an HTTP 500 error. Since our patch actually made the canonicalisation (and thus additional syscalls) necessary, we really shouldn't introduce an additional error so let's - at least for now - silently skip return value if realpath(3) has failed. However since we're using the unaltered root from the config we have another issue, consider this root: /nix/store/...-abcde/$1 Calling realpath(3) on this path will fail (except if there's a file called "$1" of course), so even this fix is not enough because it results in the ETag not being set to the store path hash. While this is very ugly and we should fix this very soon, it's not as serious as getting HTTP 500 errors for serving static files. I added a small NixOS VM test, which uses the example above as a regression test. It seems that my memory is failing these days, since apparently I *knew* about this issue since digging for existing issues in nixpkgs, I found this similar pull request which I even reviewed: NixOS/nixpkgs#66532 However, since the comments weren't addressed and the author hasn't responded to the pull request, I decided to keep this very commit and do a follow-up pull request. [1]: NixOS/nixpkgs#48337 Signed-off-by: aszlig <aszlig@nix.build> Reported-by: @devhell Acked-by: @7c6f434c Acked-by: @yorickvP Merges: NixOS/nixpkgs#80671 Fixes: NixOS/nixpkgs#66532 (cherry picked from commit e1d63ad)
Configuration menu - View commit details
-
Copy full SHA for 35fe837 - Browse repository at this point
Copy the full SHA 35fe837View commit details
There are no files selected for viewing
Large diffs are not rendered by default.