Configuration ignores files generated by the init command

Every time I use init to generate a new project, I manually remove LICENSE and .travis.yml. It would be nice if you could ignore them by modifying the crystal’s configuration file. But now crystal seems to be unable to configure.

I agree, but there is no crytal configuration file…

Maybe it could only generate the bare minimum (no ci / license / etc…) with crystal init and have some flags like --add-license or --add-ci (with interactivity to select circleci &/ travis &/ other…).

The minimal crystal init would have a message at the end to tell the user what to do if he wants a licence / ci scripts / etc

Crystal is doing good work for newbies - I wouldn’t consider adding CI, or MIT license, or Readme, or specs to my projects if Crystal didn’t add them by default.
So i think default behaviour should stay the same.
Maybe env vars, like CRYSTAL_INIT_CONFIG="–no-license" could be marginally useful, but i think manually deleting two files isn’t much harder.

1 Like

It seems weird that init would generate a travis ci since it is a specific vendor. I guess there is no generic ci file that could be generated.

1 Like

crystal init is a really basic tool. It’s meant to be a good place to start for newcomers, so it adds a few obviously opinionated features which should help to get you started.

I don’t think it should be made more complex by allowing to much customization. Experienced developers would have very specific expectations for this tool anyway. I think they’re best met by a completely custom init script, which is simple enough to set up.

1 Like