about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2020-05-21 r/794 refactor(3p/nix/libexpr): Use absl::node_hash_set in SymbolTableVincent Ambo3-32/+39
This replaces the previous use of std::unordered_set with absl::node_hash_set. This type was chosen because the current implementation requires pointer stability. This does not yet touch the 'Attr' struct. As a bonus, the implementation of the SymbolTable struct is now consolidated into a single header/implementation file pair.
2020-05-21 r/793 feat(3p/nix): Wrangle Meson/Nix/CMake into (temporary) submissionVincent Ambo2-11/+45
Meson is unable to use CMake in Nix to determine the internal structure of the Abseil libraries. This commit adds an explicit list of most of the Abseil targets that are relevant (so far) and bundles them into a list that is linked together.
2020-05-21 r/792 chore(third_party): Bump nixpkgs to nixpkgs-unstableVincent Ambo1-3/+3
2020-05-21 r/791 chore(3p/nix): Minor fixes to get rid of warningsVincent Ambo3-7/+3
2020-05-21 r/790 fix(3p/nix): Fix build of derivation if cmake is presentVincent Ambo1-0/+8
cmake automatically runs a configure hook which breaks the build, since this isn't actually a cmake project. This hook is now disabled. Additionally Abseil's sources are linked to an absolute derivation path when the build launches, as opposed to the relative path used for development builds.
2020-05-20 r/789 refactor(3p/nix): Apply clang-tidy's performance-* fixesVincent Ambo60-166/+189
This applies the performance fixes listed here: https://clang.llvm.org/extra/clang-tidy/checks/list.html
2020-05-20 r/788 refactor(3p/nix): Apply clang-tidy's readability-* fixesVincent Ambo78-787/+858
This applies the readability fixes listed here: https://clang.llvm.org/extra/clang-tidy/checks/list.html
2020-05-20 r/787 refactor(3p/nix): Apply clang-tidy's modernize-* fixesVincent Ambo59-321/+349
This applies the modernization fixes listed here: https://clang.llvm.org/extra/clang-tidy/checks/list.html The 'modernize-use-trailing-return-type' fix was excluded due to my personal preference (more specifically, I think the 'auto' keyword is misleading in that position).
2020-05-20 r/786 feat(3p/nix): Add some initial Abseil build targetsVincent Ambo3-10/+13
These make it possible to link to Abseil strings.
2020-05-20 r/785 fix(3p/abseil): Create position independent codeVincent Ambo1-0/+3
This makes it possible to link Abseil into shared libraries, e.g. the various Nix libraries.
2020-05-20 r/784 feat(3p/nix): Add Abseil as a CMAKE subproject to MesonVincent Ambo3-0/+7
Yep. This is accomplished by symlinking the sources into the location expected by Meson for subprojects.
2020-05-20 r/783 chore(fun/dt): Use vendored copy of AbseilVincent Ambo1-2/+2
2020-05-20 r/782 chore(3p/abseil_cpp): Move build derivation into the correct placeVincent Ambo2-12/+6
2020-05-20 r/781 Add 'third_party/abseil_cpp/' from commit ↵Vincent Ambo1276-0/+208196
'768eb2ca2857342673fcd462792ce04b8bac3fa3' git-subtree-dir: third_party/abseil_cpp git-subtree-mainline: ffb2ae54beb5796cd408fbe15d2d2da09ff37adf git-subtree-split: 768eb2ca2857342673fcd462792ce04b8bac3fa3
2020-05-20 r/780 chore(third_party/nix): Dump of minor accumulated changesVincent Ambo5-25/+5
None of these are worthy of a specific commit, or even have a real reason behind them, but I didn't want to lose them.
2020-05-19 r/779 chore: Add an ignoreRevsFile for git blameVincent Ambo1-0/+23
This file contains large-scale changes that should not be included in the git blame layer, such as the reformatting of the Nix codebase.
2020-05-19 r/778 refactor(3p/nix): Make all single-argument constructors explicitVincent Ambo12-31/+31
Implicit constructors can be confusing, especially in a codebase that is already as unintentionally obfuscated as this one. https://google.github.io/styleguide/cppguide.html#Explicit_Constructors
2020-05-19 r/777 style(3p/nix): Final act in the brace-wrapping sagaVincent Ambo84-1556/+2603
This last change set was generated by a full clang-tidy run (including compilation): clang-tidy -p ~/projects/nix-build/ \ -checks=-*,readability-braces-around-statements -fix src/*/*.cc Actually running clang-tidy requires some massaging to make it play nice with Nix + meson, I'll be adding a wrapper or something for that soon.
2020-05-19 r/776 chore(3p/nix): Remove OSX only 'resolve-system-dependencies' toolVincent Ambo4-268/+0
2020-05-19 r/775 style(3p/nix/libstore): Additional if/for bracing fixesVincent Ambo1-7/+11
2020-05-19 r/774 chore(3p/abseil-cpp): Bump version to 20200519-768eb2caVincent Ambo1-3/+3
2020-05-19 r/773 fix(3p/nix/libstore): Fix mistake introduced by bracing changesVincent Ambo1-1/+1
This statement got included in a loop when it shouldn't have been. At least it led to some funny derivation files!
2020-05-19 r/772 style(3p/nix): Add braces around single-line for-loopsVincent Ambo45-142/+426
These were not caught by the previous clang-tidy invocation, but were instead sorted out using amber[0] as such: ambr --regex 'for (\(.+\))\s([a-z].*;)' 'for $1 { $2 }' [0]: https://github.com/dalance/amber
2020-05-19 r/771 style(3p/nix): Add braces around single-line conditionalsVincent Ambo97-753/+2223
These were not caught by the previous clang-tidy invocation, but were instead sorted out using amber[0] as such: ambr --regex 'if (\(.+\))\s([a-z].*;)' 'if $1 { $2 }' [0]: https://github.com/dalance/amber
2020-05-19 r/770 fix(3p/nix/libexpr): Declare value union types explicitlyVincent Ambo1-43/+59
Previously these structs were declared anonymously inside of the - anonymous - union. This is not actually supported by the C++ standard, but is merely a compiler-specific extension. Unfortunately untangling this required a forward-declaration of the Value type.
2020-05-19 r/769 fix(3p/nix/libexpr): Use noexcept instead of throw()Vincent Ambo1-1/+1
2020-05-19 r/768 fix(3p/nix): Fix incorrectly braced conditionals and loopsVincent Ambo16-61/+62
Fixes mistakes introduced by clang-tidy in the previous commit.
2020-05-19 r/767 style(3p/nix): Enforce braces around loops and conditionalsVincent Ambo44-298/+661
This change was generated with: fd -e cc -e hh | xargs -I{} clang-tidy {} -p ~/projects/nix-build/ \ --checks='-*,readability-braces-around-statements' --fix \ -fix-errors Some manual fixes were applied because some convoluted unbraced statements couldn't be untangled by clang-tidy. This commit still includes invalid files, but I decided to clean them up in a subsequent commit so that it becomes more obvious where clang-tidy failed. Maybe this will allow for a bug-report to clang-tidy.
2020-05-19 Export of internal Abseil changesAbseil Team36-834/+974
-- f012012ef78234a6a4585321b67d7b7c92ebc266 by Laramie Leavitt <lar@google.com>: Slight restructuring of absl/random/internal randen implementation. Convert round-keys.inc into randen_round_keys.cc file. Consistently use a 128-bit pointer type for internal method parameters. This allows simpler pointer arithmetic in C++ & permits removal of some constants and casts. Remove some redundancy in comments & constexpr variables. Specifically, all references to Randen algorithm parameters use RandenTraits; duplication in RandenSlow removed. PiperOrigin-RevId: 312190313 -- dc8b42e054046741e9ed65335bfdface997c6063 by Abseil Team <absl-team@google.com>: Internal change. PiperOrigin-RevId: 312167304 -- f13d248fafaf206492c1362c3574031aea3abaf7 by Matthew Brown <matthewbr@google.com>: Cleanup StrFormat extensions a little. PiperOrigin-RevId: 312166336 -- 9d9117589667afe2332bb7ad42bc967ca7c54502 by Derek Mauro <dmauro@google.com>: Internal change PiperOrigin-RevId: 312105213 -- 9a12b9b3aa0e59b8ee6cf9408ed0029045543a9b by Abseil Team <absl-team@google.com>: Complete IGNORE_TYPE macro renaming. PiperOrigin-RevId: 311999699 -- 64756f20d61021d999bd0d4c15e9ad3857382f57 by Gennadiy Rozental <rogeeff@google.com>: Switch to fixed bytes specific default value. This fixes the Abseil Flags for big endian platforms. PiperOrigin-RevId: 311844448 -- bdbe6b5b29791dbc3816ada1828458b3010ff1e9 by Laramie Leavitt <lar@google.com>: Change many distribution tests to use pcg_engine as a deterministic source of entropy. It's reasonable to test that the BitGen itself has good entropy, however when testing the cross product of all random distributions x all the architecture variations x all submitted changes results in a large number of tests. In order to account for these failures while still using good entropy requires that our allowed sigma need to account for all of these independent tests. Our current sigma values are too restrictive, and we see a lot of failures, so we have to either relax the sigma values or convert some of the statistical tests to use deterministic values. This changelist does the latter. PiperOrigin-RevId: 311840096 GitOrigin-RevId: f012012ef78234a6a4585321b67d7b7c92ebc266 Change-Id: Ic84886f38ff30d7d72c126e9b63c9a61eb729a1a
2020-05-19 r/766 style(3p/nix): Reformat all includes to match new styleVincent Ambo119-106/+298
2020-05-19 r/765 style(3p/nix): Change include formatting config for clang-formatVincent Ambo1-2/+7
Changes the configuration to regroup all includes. The include groups will be (in this order): 1. (in .cc): Include of the corresponding header 2. Includes of C++ standard library headers 3. Includes of other external headers 4. Includes of local headers
2020-05-19 r/764 feat(tools/emacs): Configure eglot to shut down automaticallyVincent Ambo1-0/+6
When all buffers related to a specific eglot instance are gone, eglot can shut down.
2020-05-19 r/763 fix(3p/nix): Set C++ style to "Google" in Emacs localsVincent Ambo2-42/+1
2020-05-19 r/762 refactor(3p/nix/nix-*): Replace logging with glog in binariesVincent Ambo21-168/+120
2020-05-19 r/761 refactor(3p/nix/nix-daemon): Remove activities from protocolVincent Ambo2-112/+27
Removes the activity transfer that was previously nulled out from the daemon protocol completely. This might actually break Nix completely, I haven't tried yet, but that's fine because this will be replaced with gRPC.
2020-05-19 r/760 style(3p/nix/libexpr): Reformat with clang-formatVincent Ambo5-6/+7
2020-05-19 r/759 chore(3p/nix/nix): Remove progress bar implementationVincent Ambo2-455/+0
The progress bar has lots of complexity for little benefit. The previous activity tracking stuff has been deleted as part of the logging refactoring and I am not going to implement support for this again for now.
2020-05-19 r/758 refactor(3p/nix/libexpr): Replace logging.h with glogVincent Ambo8-35/+37
2020-05-19 r/757 refactor(3p/nix/libmain): Replace logging.h with glogVincent Ambo4-98/+58
2020-05-19 r/756 refactor(3p/nix/libstore): Replace logging.h with glogVincent Ambo25-464/+514
2020-05-18 Fix build on riscv32 (#675)Khem Raj3-0/+21
2020-05-18 r/755 feat(3p/glog): Update glog versionVincent Ambo2-2/+16
2020-05-18 r/754 refactor(3p/nix/libutil): Replace internal logging library with glogVincent Ambo10-44/+76
2020-05-18 r/753 chore(3p/nix/libutil): Remove logging implementationVincent Ambo3-437/+0
2020-05-17 r/752 feat(ci-builds): Build //third_party/nix in CIVincent Ambo1-0/+1
2020-05-17 r/751 feat(tools/emacs): Install meson-modeVincent Ambo1-0/+1
2020-05-17 r/750 feat(3p/nix): Add glog dependencyVincent Ambo6-73/+87
2020-05-17 r/749 chore: Only exclude //third_party/git from ripgrepVincent Ambo1-1/+1
The other third party folders are actually occasionally relevant.
2020-05-17 r/748 chore(3p/nix): Always enable the garbage collectorVincent Ambo4-64/+10
It's unclear why this toggle existed, now it doesn't.
2020-05-17 r/747 fix(3p/nix): Minor fixes to derivationVincent Ambo2-5/+7
* version must be set to use this as the system Nix * missing busybox path is now set * fixed build output names