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

feat: Add testing suite to example app, fix bundler edge-cases with default exports, module links and relative wildcard exports #30

Merged
merged 138 commits into from
Oct 8, 2023

Conversation

JorgenVatle
Copy link
Collaborator

@JorgenVatle JorgenVatle commented Feb 19, 2023

Fixes

Additions

  • TypeScript type export for the Vite config using zodern:types

Vue Example App

For package development, I've added a client-side testing suite to the Vue example app to make it easier to determine what's working as it should. The terminal output is transmitted to the server so you don't need to exit your editor while testing. 👌

image

This approach should allow the production build step and ev HMR server to share the same worker code.
For example:
module.export({
    default: () => '...'
})

This would previously be turned into:
export const default = '...'
        ^^^

Now it should be formatted correctly:
export default '...'
@JorgenVatle
Copy link
Collaborator Author

I'll go ahead and add a GitHub Actions workflow for validating that builds are at the very least passing.
If you feel it's not a good fit, you should have write permissions on the branch to remove the workflow @Akryum 🙌

The pull request should be ready to be merged now. I've pulled the bundler into a fairly large project with a bunch of Atmosphere dependencies - and production builds appear to be working great. But I'm sure there's a list of other edge cases, not covered by my repo left to be worked out. 😅

@Akryum
Copy link
Owner

Akryum commented Mar 7, 2023

I guess this supersedes #28?

@JorgenVatle
Copy link
Collaborator Author

That is correct. 👍

@red-meadow
Copy link
Contributor

@JorgenVatle , thank you very much for your effort! We are trying to use your fork in our app.

There is still at least one issue related to exports: this one. If you replace export { default as ReExportedDefault, other, subOther } from './other' with export * from './other' , it doesn't break the app, but subOther cannot be imported from meteor/test:modules anymore.

@red-meadow red-meadow mentioned this pull request Jun 23, 2023
3 tasks
@JorgenVatle
Copy link
Collaborator Author

I see! Thanks for the heads up. I'll try to find the time hopefully this or next week to look into it.

@JorgenVatle
Copy link
Collaborator Author

Alright, @red-meadow, so I've had quite a lot of time to work on this. Maybe a little too much to be honest. 😅

There's a little bit left to do in terms of refactoring and double-checking that there isn't something I've missed. It is functional however in case you want to try it out. 👍

#38

@red-meadow
Copy link
Contributor

@JorgenVatle , thank you very much! I'll test it ASAP.

@JorgenVatle
Copy link
Collaborator Author

It still hasn't touched a production environment yet, so there's bound to be some breaking issues. But the foundation is there and I don't imagine fixes being more than a line or two 👌 Do let me know how it goes 😄

@Akryum Akryum changed the title Add testing suite to example app, fix bundler edge-cases with default exports, module links and relative wildcard exports feat: Add testing suite to example app, fix bundler edge-cases with default exports, module links and relative wildcard exports Oct 8, 2023
@Akryum Akryum merged commit afe2d24 into Akryum:main Oct 8, 2023
Akryum pushed a commit that referenced this pull request Oct 10, 2023
@JorgenVatle JorgenVatle deleted the add-test-suite branch January 18, 2024 05:18
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 this pull request may close these issues.

3 participants