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

refactor: ✨ Create TS monorepo structure #3091

Merged
merged 20 commits into from
Dec 11, 2024
Merged

refactor: ✨ Create TS monorepo structure #3091

merged 20 commits into from
Dec 11, 2024

Conversation

timbrinded
Copy link
Contributor

What does it do?

Structures the TS packges of this repo so they share package versions and tooling. This will simplify releases by reducing the amount of steps.

What value does it bring to the blockchain users?

More frequent and reliable NPM packages

@timbrinded timbrinded added B0-silent Changes should not be mentioned in any release notes D2-notlive PR doesn't change runtime code (so can't be audited) labels Dec 9, 2024
Copy link
Contributor

github-actions bot commented Dec 9, 2024

WASM runtime size check:

Compared to target branch

Moonbase runtime: 2260 KB (no changes) ✅

Moonbeam runtime: 2248 KB (no changes) ✅

Moonriver runtime: 2240 KB (no changes) ✅

Compared to latest release (runtime-3400)

Moonbase runtime: 2260 KB (+232 KB compared to latest release) ⚠️

Moonbeam runtime: 2248 KB (+236 KB compared to latest release) ⚠️

Moonriver runtime: 2240 KB (+228 KB compared to latest release) ⚠️

Copy link
Contributor

github-actions bot commented Dec 9, 2024

Coverage Report

@@                 Coverage Diff                 @@
##           master   feat/ts-monorepo     +/-   ##
===================================================
  Coverage   74.58%             74.58%   0.00%     
  Files         375                375             
  Lines       95682              95682             
===================================================
  Hits        71359              71359             
  Misses      24323              24323             
Files Changed Coverage

Coverage generated Wed Dec 11 09:37:57 UTC 2024

@timbrinded timbrinded marked this pull request as ready for review December 9, 2024 16:39
@timbrinded timbrinded requested review from a team as code owners December 9, 2024 16:39
@RomarQ
Copy link
Contributor

RomarQ commented Dec 9, 2024

I think we should be able improve the reliability of the packages in some other way, having generated code committed is usually a bad practice.

Cons:

  • This will make reviews more complicated, a good example will be polkadot-sdk dependency updates, which will produce a huge diff;
  • Unnecessary merge conflicts;
  • Large commits will significantly inflate the size of the repo, which will make cloning, fetching slower.

Pros:

  • Detecting metadata changes in the PR that changes it.
  • Reduces the amount of steps in some workflows.

Copy link
Contributor

@RomarQ RomarQ left a comment

Choose a reason for hiding this comment

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

Overall looks good, but having dependencies using any version can be unstable. It will be fine if we no longer plan to publish the packages to npm

moonbeam-types-bundle/package.json Show resolved Hide resolved
@timbrinded
Copy link
Contributor Author

It's not using any dep version, it's fixed in the top level.

We use * so that ALL sub projects use the SAME version to stop inconsistencies of the past from breaking publish

RomarQ
RomarQ previously approved these changes Dec 10, 2024
@RomarQ RomarQ merged commit 276c527 into master Dec 11, 2024
40 checks passed
@RomarQ RomarQ deleted the feat/ts-monorepo branch December 11, 2024 20:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B0-silent Changes should not be mentioned in any release notes D2-notlive PR doesn't change runtime code (so can't be audited)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants