4 ms·
Might be possible to substitute with `absl::optional` for the time being.
by mehrdada 6y ago
Might be possible to substitute with `absl::optional` for the time being.
- jeffbee 6y agoIt's sort of weird to drag in absl to get a flags library.
- malkia 6y agoI switched from gflags to absl::flags and I like it, though there are recommendations against using them too much - https://abseil.io/tips/45 https://abseil.io/tips/45 and https://abseil.io/tips/103 https://abseil.io/tips/103 (one of my first surprises starting at google, was that binaries (e.g. "exe's") would have thousands of options, just adding a new library to your binary, and more flags are there). I actually like that one, as rather than configuring top-down everything, one can directly "inject" values - for example if you were told to switch from one library to the other, and change your borg template for launching jobs, that new borg template that you've used would have flags set (by another team). Then that team can take it further and modify them if needed, thus allowing them to control their part of the software in your own deployed binary. (This way experiments can be rolled out too, or who knows what else).
- jeffbee 6y agoI don't think it's weird to use absl flags, I think it would be weird to import absl to support some other flags library, and not use absl flags.
- malkia 6y agoI get it, I'm using it in one project myself, and happy. I do wish though if namespaces were kept - e.g. if there is ambiguity in the names, one can resolve with full namespace (but maybe that also creates an issue, as previously existing invocations may help, so it's like - you better don't rely on C++ namespaces as you may need to fully qualify a flag later and that could be problematic).. Hmm..