Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Option to include generated type registry in exports #1067

Open
oliveryasuna opened this issue Jun 30, 2024 · 5 comments · May be fixed by #1070
Open

Option to include generated type registry in exports #1067

oliveryasuna opened this issue Jun 30, 2024 · 5 comments · May be fixed by #1070

Comments

@oliveryasuna
Copy link
Contributor

oliveryasuna commented Jun 30, 2024

With outputIndex=true and outputTypeRegistry=true, the generated index.ts does not export typeRegistry.ts.

It would not make sense to make it export by default because that could break isolated builds. I think a new option would be useful, and perhaps make it default in the next major release. Happy to contribute.

@oliveryasuna
Copy link
Contributor Author

@stephenh #1070

@stephenh
Copy link
Owner

stephenh commented Jul 1, 2024

Hi @oliveryasuna ; just checking, but what do you mean by isolated builds?

Initially I would have guessed that we should just have index.ts output the type registry, if both options are enabled, without needing a new option.

@oliveryasuna
Copy link
Contributor Author

oliveryasuna commented Jul 1, 2024

@stephenh Honestly, I have no idea what I meant by "isolated builds" when I wrote that late last night. Maybe I meant that the generated TS files could be in their own package, and some developers will write their own type registry instead of using the generated one. Therefore, by adding the type registry to the the exports by default, it could introduce namespace conflicts, hence could be viewed as a breaking change.

@oliveryasuna oliveryasuna linked a pull request Jul 1, 2024 that will close this issue
@stephenh
Copy link
Owner

stephenh commented Jul 1, 2024

Ah yeah; you're right that it's a change in behavior, but dunno, personally I don't think a new symbol being exported from index.ts is a breaking change (vs. a previously-exported symbol now becoming non-exported, which ofc is a breaking change).

So, given that, are you fine with updating your PR to not introduce a new options.exportTypeRegistry option, and instead just use the existing outputIndex=true + outputTypeRegistry=true settings to add the additional export?

Thanks!

@oliveryasuna
Copy link
Contributor Author

oliveryasuna commented Jul 1, 2024

@stephenh Either perspective is valid. My concern is an edge edge edge case. Yes, I will update my PR!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants