Closed juliusmarminge closed 1 year ago
There's two reasons:
The practical reason is that features are still experimental and they are not as strictly covered by semver. By forcing them to be inside a gitignore
it gives us more flexibility to make changes without forcing the user to commit updates seemingly randomly updates.
The stylist reason, gitignore
is designed to be nested/inherited and choosing not to do so is a (valid) personal choice. Mono-repo file layouts are still a topic of discussion, but I'm observing that the trend seems to be moving towards having a top level Project configs with App level configs (that inherit from Project). As gitignore
was designed to be nested, and the config we are generating is App specific, I believe it makes sense that the config we are generating should live at the app level (we can provide a flag to disable this behaviour).
I'm going to close this issue and move it to a discussion as I am interested in people's opinions on the subject.
Which package manager are you using? (Yarn is recommended)
pnpm (known issues due to Metro)
Summary
I enabled the experimental typedRoutes features and ever since expo router is generating a
.gitignore
everytime i run dev.I think it's kinda silly to generate this file multiple times, I tend to not have nested gitignores in my monorepos but just keep a general purpose one in root, so having expo-router generate one for me everytime i run dev is kinda annoying
I think it's fair to assume devs can put things in their gitignores themselves, and you don't have to generate it for us.
Minimal reproducible example
Happy to provide one if you deem necessary, for now just check out create-t3-turbo where i have the gitignore in root and don't want one in the expo directory