there are many issues about TS path aliases not fully "working", so
they should be removed from the templates until they are completely
"working"
instead of shipping templates with a partially "broken" and
confusing configuration enabled
especially confusing to users because editors will auto-complete
with the absolute path instead of the relative path
and the fact that these paths are unresolved at build or test time
means that it's not understood that this is "broken" until later in
the process
this is a very common misconception with TS users that paths
rewrites/transforms imports during compilation, but it actually does
not change any absolute paths to relative, it leaves them as is
it just resolves type information to help on platforms that import
differently
basically, it's somewhat of a legacy option, but folks think it's
used for aliases and does transforms
and folks seem to want it to work that way too
it actually does the reverse, it supports the usage of
aliases/import rewrites elsewhere
unfortunately this misconception made its way into the very first
template, causing lots of confusion and issues reported since
so paths isn't "broken" per se, it just doesn't do what people
think it does (including template authors)
well it is broken for standard TSDX usage out-of-the-box
since TSDX doesn't output for platforms where it makes sense
out-of-the-box
as a result, for aliases to be fully supported by TSDX, we'd have to
add some sort of transformation(s) for build, test, and lint
until then this shouldn't be in the templates
but don't give an error on it because there are
methods/"workarounds" to support aliasing/import rewrites using
the configuration in paths
and if one is using import rewrites, paths is necessary for
TS to not give errors
also removes an inconsistency in the Storybook template that used
"@/*" as an alias, even though the other templates didn't have that
while this is a supported alias by some libraries in the community,
oversight in code review when Storybook templates were added and
caused some confusion for users
also removes these options from all test fixtures
Long time coming for this one, these have been in the codebase since the very first template was added in 9010ecbda5 and have caused much confusion since then.
Fixes the root cause of #91, #699, #516, #139, #133, etc, but doesn't add an import/rewrite mechanism, which has been requested in some of those issues. Does fix confusion / bugs due to the faulty templates. Specifically:
there are many issues about TS path aliases not fully "working", so they should be removed from the templates until they are completely "working"
this is a very common misconception with TS users that
paths
rewrites/transforms imports during compilation, but it actually does not change any absolute paths to relative, it leaves them as isso
paths
isn't "broken" per se, it just doesn't do what people think it does (including template authors)as a result, for aliases to be fully supported by TSDX, we'd have to add some sort of transformation(s) for build, test, and lint
paths
paths
is necessary for TS to not give errorsalso removes an inconsistency in the Storybook template that used "@/*" as an alias, even though the other templates didn't have that
while this is a supported alias by some libraries in the community,
oversight in code review when Storybook templates were added and caused some confusion for users
also removes these options from all test fixtures
Long time coming for this one, these have been in the codebase since the very first template was added in 9010ecbda5 and have caused much confusion since then.
Fixes the root cause of #91, #699, #516, #139, #133, etc, but doesn't add an import/rewrite mechanism, which has been requested in some of those issues. Does fix confusion / bugs due to the faulty templates. Specifically:
Full support for aliases, i.e. an import rewrite/transform mechanism, will be added eventually, keep an eye on #91 for that.