RicketyCricket
RicketyCricket t1_je5ky7l wrote
Reply to comment by DigThatData in [D] Alternatives to fb Hydra? by alyflex
As the developer of Spock (posted in another comment) -- OmegaConf is also an awesome choice and super useful. I'd suggest checking it out too!
You can go even closer to metal and use the attrs library as well (https://www.attrs.org/en/stable/)
RicketyCricket t1_je5kgy4 wrote
Reply to comment by RicketyCricket in [D] Alternatives to fb Hydra? by alyflex
second favorite:
https://fidelity.github.io/spock/advanced_features/Post-Hooks
Basically lets you do any validation necessary on your configs. Spock provides some basics (greater than, within bounds, etc) but it's totally up to the user via any simple asserts or validation functions a user wants to write.
RicketyCricket t1_je5jchr wrote
Reply to comment by RicketyCricket in [D] Alternatives to fb Hydra? by alyflex
This being my favorite hidden one:
RicketyCricket t1_je5j2n9 wrote
Reply to comment by _Arsenie_Boca_ in [D] Alternatives to fb Hydra? by alyflex
Most of the cool stuff is buried in the docs under advanced features :-)
https://fidelity.github.io/spock/advanced_features/Composition
(full transparency I'm the author/maintainer/core-developer. I know the docs need a re-org to surface more of the useful features)
RicketyCricket t1_je9lp7z wrote
Reply to comment by _Arsenie_Boca_ in [D] Alternatives to fb Hydra? by alyflex
Mainly that Spock is much lighter weight and really focuses on just configuration management and stateful ness. Hydra has all these crazy bells and whistles (Ray integration etc) that could be useful for certain things but kinda starts meandering from the original purpose of configuration management imo. Hydra is great and if it works for you then use it. We built Spock internally when I was at Fidelity because Hydra didn’t exist… just so happens that FB/Meta was doing the same thing at the same time so both libraries end up covering a very similar usage space