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/nix
base: 16c485602738
Could not load branches
Nothing to show
Could not load tags
Nothing to show
{{ refName }}
default
...
head repository: NixOS/nix
compare: 872ba75d8b62
Could not load branches
Nothing to show
Could not load tags
Nothing to show
{{ refName }}
default
- 10 commits
- 34 files changed
- 2 contributors
Commits on Feb 23, 2017
-
Explicitly model all settings and fail on unrecognized ones
Previously, the Settings class allowed other code to query for string properties, which led to a proliferation of code all over the place making up new options without any sort of central registry of valid options. This commit pulls all those options back into the central Settings class and removes the public get() methods, to discourage future abuses like that. Furthermore, because we know the full set of options ahead of time, we now fail loudly if someone enters an unrecognized option, thus preventing subtle typos. With some template fun, we could probably also dump the full set of options (with documentation, defaults, etc.) to the command line, but I'm not doing that yet here.
Configuration menu - View commit details
-
Copy full SHA for e7cb284 - Browse repository at this point
Copy the full SHA e7cb284View commit details
Commits on Apr 13, 2017
-
Configuration menu - View commit details
-
Copy full SHA for 31cc936 - Browse repository at this point
Copy the full SHA 31cc936View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6d97d81 - Browse repository at this point
Copy the full SHA 6d97d81View commit details -
Configuration menu - View commit details
-
Copy full SHA for 568a099 - Browse repository at this point
Copy the full SHA 568a099View commit details -
Add a Config class to simplify adding configuration settings
The typical use is to inherit Config and add Setting<T> members: class MyClass : private Config { Setting<int> foo{this, 123, "foo", "the number of foos to use"}; Setting<std::string> bar{this, "blabla", "bar", "the name of the bar"}; MyClass() : Config(readConfigFile("/etc/my-app.conf")) { std::cout << foo << "\n"; // will print 123 unless overriden } }; Currently, this is used by Store and its subclasses for store parameters. You now get a warning if you specify a non-existant store parameter in a store URI.
Configuration menu - View commit details
-
Copy full SHA for 2040240 - Browse repository at this point
Copy the full SHA 2040240View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1860070 - Browse repository at this point
Copy the full SHA 1860070View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0bf34de - Browse repository at this point
Copy the full SHA 0bf34deView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6bd9576 - Browse repository at this point
Copy the full SHA 6bd9576View commit details -
Convert Settings to the new config system
This makes all config options self-documenting. Unknown or unparseable config settings and --option flags now cause a warning.
1Configuration menu - View commit details
-
Copy full SHA for ba9ad29 - Browse repository at this point
Copy the full SHA ba9ad29View commit details -
This dumps the entire Nix configuration, including all options that have default values.
3Configuration menu - View commit details
-
Copy full SHA for 872ba75 - Browse repository at this point
Copy the full SHA 872ba75View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 16c485602738...872ba75d8b62