-
Notifications
You must be signed in to change notification settings - Fork 157
Migrate to monorepo to split Vue 2 and Vue 3 packages #355
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
Comments
Ultimately, it will have the same structure as the branch in this repository.. |
Thanks for putting together this document. It's really good. Here's my thoughts: ConsiderationPackage name
I think this makes sense. Evan agrees, too. We will just need to ensure that I'm not sure if npm has the concept of an alias, but I think there should be some way to set this up. Use semver or not
I think it makes sense to match the Jest version. Currently we have Deprecates
|
@lmiller1990 I'll send PRs for monorepo, but please do not "Squash Merge". |
Sounds good, I'll look forward to the PR. I'll make sure not to squash merge that PR. |
Ok, those are both merged. What's next? Let's update the plan:
We will not use I think the next step is having So
Does this sound correct? |
@lmiller1990 Yes, That's right! Please add the following text to the README of each packages. Like ts-jest, We DOES NOT use Semantic Versioning.
It is recommended for users to pin version as below: "devDependencies": {
"vue2-jest": "^27.1.1", // Not recommended. It means 27.1.1 <= x < 28.0.0
"vue2-jest": "27.1.x", // 27.1.0 <= x < 27.2.0
"vue2-jest": "~27.1", // 27.1.0 <= x < 27.2.0
"vue2-jest": "~27.1.1" // 27.1.1 <= x < 27.2.0
} |
@lmiller1990 To resolve conflicts, I did:
|
Great. Can you make the PR against this repo? Let's get this merged up. |
Hmm it looks like someone stole the namespace 20 days ago before publish and published a malware on Otherwise maybe it would be possible to use the official org repo? |
The |
I like @Tofandel's suggestion, but with one tweak. Starting a package name with a number after the scope part just looks wrong. I think it makes sense to go with the original complete names prepended with the scopes. I don't think anyone will mind the redundancy. |
That would work too. I'm sure we can ask npm for the package name |
Related #343
Currently, the structure of this repository is as follows:
In Jest 27, breaking changes have came. (#344, #348, #351)
To accommodate it, this package also requires breaking changes. (and need to increment semver)
But,
vue-jest@4
cannot increment because of 5.x exists.So we should split it to another package.
If you want to keep the package name different, I don't think it is necessary to divide the version by branch. (ex. CI/CD)
@lmiller1990
Could you tell us your thoughts on the items in the "Consideration" section?
Details
Package naming & Support version
vue-jest
vue2-jest@26
vue-jest
vue3-jest@26
instead)vue-jest
vue2-jest@27
nowvue2-jest
vue-jest@4
vue3-jest
vue-jest@5
vue2-jest
vue3-jest
Versioning
Like ts-jest, We DOES NOT use Semantic Versioning.
xx
: Equals supported Jest major versionyy
: Compliant with semVer major & patch version (ie included BREAKING CHANGE)zz
: Compliant with semVer patch versionIt is recommended for users to pin version as below:
Repository Structures
.github/
e2e/
2.x/
3.x/
packages/
vue2-jest/
src/
test/
package.json
README.md
vue3-jest/
src/
test/
package.json
README.md
core/
src/
test/
package.json
.editorconfig
.eslintrc
.prettierignore
LICENSE
package.json
README.md
yarn.lock
Tasks
/e2e
projectsmaster
branch (fix(deps): add missing devDependencies in e2e/ projects (for 4.x) #356)next
branch (chore(deps): bump postcss from 7.0.27 to 7.0.36 #357)master
branch (build: migrate to monorepo (for vue-jest@4) #360)/packages/vue2-jest
vue2-jest
/e2e/2.x
next
branch (build: migrate to monorepo (for vue-jest@5) #361)/packages/vue3-jest
vue3-jest
/e2e/3.x
next
branch intomaster
(build: merge 'next' (Vue 3) branch into 'master' (Vue 2) for monorepo #363)/packages/vue-jest-core
)vue-jest
package that wrapsvue2-jest@latest
vue-jest
vue2-jest
vue3-jest
vue2-jest
,vue3-jest
, andvue-jest-core
Consideration (Resolved)
Package name
vue2-jest
,vue-jest
vue2-jest
,vue3-jest
vue2-jest
,vue3-jest
,vue-jest
(alias ofvue3-jest
)Use semver or not
Deprecates vue-jest or not
vue-jest
as alias of latest Vue + Jest package (currentlyvue3-jest@latest
)The text was updated successfully, but these errors were encountered: