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

Switching to SWC 🐎 #877

Merged
merged 14 commits into from
Mar 12, 2023
Merged

Switching to SWC 🐎 #877

merged 14 commits into from
Mar 12, 2023

Conversation

RobinTail
Copy link
Owner

@RobinTail RobinTail commented Mar 12, 2023

Once again I'm trying this thing...

However, this time it's gone well.

Achievements

Metric Before After Diff
Tests 61-64s 41-48s –29% ⬇️
Test + Build 99-133s 52-72s –46% ⬇️
Overall CI 152-215s 92-142s –36% ⬇️

Problems

@RobinTail RobinTail added coverage Additional tests CI/CD labels Mar 12, 2023
@RobinTail RobinTail marked this pull request as ready for review March 12, 2023 22:07
Copy link
Owner Author

@RobinTail RobinTail left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's actually ready, looks nice, seems to be stable

@RobinTail RobinTail added this to the v10 milestone Mar 12, 2023
@RobinTail RobinTail added the refactoring The better way to achieve the same result label Mar 12, 2023
@RobinTail RobinTail mentioned this pull request Mar 12, 2023
21 tasks
@RobinTail RobinTail changed the title Experiment: SWC 🐎 Switching to SWC 🐎 Mar 12, 2023
@RobinTail RobinTail merged commit 0e8e851 into v10-beta Mar 12, 2023
@RobinTail RobinTail deleted the try-swc branch March 12, 2023 23:40
RobinTail added a commit that referenced this pull request Mar 20, 2023
* Moving proprietary schemas into ez namespace. (#850)

* Stop re-exporting `zod` (#865)

* Stop reexporting zod.

* Temp enabling the workflows.

* Moving zod to dev and peers.

* Add zod into ESM and intergration package generator.

* Readme: adjusting the quick start which is used for integration test generator.

* Making `express` a peer (#866)

* Making express to be a peer and dev dependency.

* Making @types/express an optional peer.

* Making typescript dev and peer. (#867)

* Ref: listing the new dev dependencies more loose.

* Switching to `tsup` (#584)

* Installing tsup and including the sample configuration.

* Changing the build approach.

* Changing paths in package.json.

* Changing path to the ESM package in the ESM package generator.

* Removing the deleted folder from ignores.

* Moving the ESM package tool to onSuccess of the tsup config.

* Using minify.

* Preserving DTS split by tsc.

* Fix int and esm tests.

* Min Node version 14.18.0.

* Upgrading tsup.

* No need for the cleanup command.

* Using the DTS generator of TSUP (finally).

* Validate types in test command.

* Shorten commands.

* More advanced esm test preparation and details.

* Revert "More advanced esm test preparation and details."

This reverts commit 32c6539.

* Min typescript version (peer) is 4.9.3.

* Changelog: the upcoming version 10.0.0-beta1.

* Readme: changing the installation instruction and import examples.

* 10.0.0-beta1

* Integration and ESM tests: install peers according to the lib package.json.

* Revert: no peers needed — it leads to lack of regular dependencies, like mime.

* Immutable `withMeta` (#852)

* Sample implementation for making withMeta immutable.

* Adjusting the first test.

* Fix: utilizing ramda/clone to ensure immutable example() method.

* Fix: making copyMeta() immutable.

* Fix: making getFinalEndpointInputSchema() immutable.

* Fix: making defaultResultHandler::getPositiveResponse() immutable.

* Add the specific test provided by the issue author.

* Optimizing for single meta.

* Minor: naming.

* Ref: more elegant defaultResultHandler.

* Ref: more elegant implementation for getFinalEndpointInputSchema().

* Minor: rem excessive type param.

* Minor: comment.

* Ref: no need to deconstruct in cloneSchemaForMeta().

* Security: introducing the 10x.

* v10 is for Gisberta Salce Júnior.

* Changelog: upcoming 10.0.0-beta2.

* 10.0.0-beta2

* Breaking: Client constructor now accepts object of parameters.

* Changelog: upcoming 10.0.0-beta3.

* Readme: Listing the breaking change to Client.

* Changelog: updating desc of 10.0.0-beta3.

* 10.0.0-beta3

* Fix .npmignore against prev ESM dist location.

* Changelog: 10.0.0-beta4.

* 10.0.0-beta4

* Fix dts path in package.json.

* Switching to SWC 🐎  (#877)

* Using SWC for tests.

* Fixing express mocking.

* Easier express mock.

* Removing redundant beforeEach and export of mocker.

* Easier mock (2).

* Removing ts-jest.

* Enabling SWC for ts-node.

* Minor adjustments.

* Fix unused export.

* Exclude index.ts from coverage evaluation.

* Fixed another unused export.

* Testing the exports of index entrypoint.

* ESLint: allow all imports in tests.

* Ref: better implementation for index test.

* Test on 19.7.

* Security: update link.

* CHangelog: upcoming 10.0.0-beta5.

* 10.0.0-beta5

* Revert "Test on 19.7."

This reverts commit 0a2b228.

* Revert "Revert "Test on 19.7.""

This reverts commit b77a9b7.

* Revert "Test on 19.7."

This reverts commit 0a2b228.

* Changelog: upcoming 10.0.0-beta6.

* 10.0.0-beta6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI/CD coverage Additional tests refactoring The better way to achieve the same result
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant