You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I was trying to use plop to scaffold a new server, and I saw that addMany had some strange behavior on dockerfiles. When my template directory contained a Dockerfile.hbs and Dockerfile.test.hbs, the target directory contains Dockerfile.hbs and Dockerfile.test. Plop strips the extension from the test file, but not the main one.
I think the reason is that the main file only has the .hbs extension. Looking at the implementation, it looks like extension stripping only works if there's still an extension left after the .hbs is removed.
Is this a bug? Or is it a feature? And either way, would you accept a pull request to change that behavior?
The text was updated successfully, but these errors were encountered:
I looked at the implementation and I agree that it doesn't seem right. I'm not sure why we have it check to be sure there's an extension after the strip happens. Maybe there was an assumption that a no-extension file is not a valid state?
Yeah, looking at the original issue and original PR it looks like the behavior was intentional. The author called it out in their examples and tests.
I think that making it so that stripExtensions: ['hbs'] turns 'Dockerfile.hbs' -> 'Dockerfile' is a straightforward improvement. But this would definitely be a breaking change for stripExtensions: true (I'm not totally sure why you'd ever have so many template extensions you couldn't just list them, but someone thought it was worth it to build that option).
I think I'll raise a PR to update the behavior when stripExtensions is an array, but preserve existing behavior if it's a boolean.
Hi!
I was trying to use plop to scaffold a new server, and I saw that
addMany
had some strange behavior on dockerfiles. When my template directory contained aDockerfile.hbs
andDockerfile.test.hbs
, the target directory containsDockerfile.hbs
andDockerfile.test
. Plop strips the extension from the test file, but not the main one.I think the reason is that the main file only has the
.hbs
extension. Looking at the implementation, it looks like extension stripping only works if there's still an extension left after the.hbs
is removed.Is this a bug? Or is it a feature? And either way, would you accept a pull request to change that behavior?
The text was updated successfully, but these errors were encountered: