habitat
habitat copied to clipboard
Easily configure settings for Crystal projects
This code: ```crystal MyHabitatThing.create do settings anything : String end ``` Causes this error: ``` There was a problem expanding macro 'create_settings_methods' Code in macro 'finished' 1 | Habitat.create_settings_methods(MyHabitatThing) ^...
I used [Lucky Jumpstart](https://github.com/stephendolan/lucky_jumpstart) to get up and running with a new app. It creates a habitat config for application configuration and one place that it uses it is in...
Makes it easy to see what options are available ``` lucky config # => Show list of all modules that can be configured lucky config LuckyWeb::Server # => List all...
A few things we can document in the README: * Using the `Habitat.extend` * How config works for inherited classes * Usage with nilable types * How to use a...
Mentioned by @matthewmcgarvey https://github.com/luckyframework/habitat/pull/59#pullrequestreview-605695502 Right now just toying around with the idea that maybe we allow you to create a class with options, and use that to extend an existing...
Hey folks, I'm integrating this over at [robacarp/mosquito](https://github.com/robacarp/mosquito), which is currently taking configuration from an environment variable. In my current situation, it would be nice to be able to emit...
I really appreciate the engagement and open discussion. On #54 the discussion started to wander into two territories. I'm opening this second issue to share my recent experience with `raise_if_missing_settings`...
Right now the config values and methods are inherited, but are not editable with `temp_config` (and probably `configure` but I haven't tested that)
You may have a setting you want to deprecate: ```crystal @[Deprecate("This is no longer used")] setting old_setting : String ```
I came across a case where the name of the class `Nil` is contained in the module in which the class for which we create the settings is defined. ```crystal...