Giter Site home page Giter Site logo

ivangabriele / wersion Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 3.13 MB

Makes bumping your monorepos workspaces version a breeze ๐ŸŒฌ๏ธ.

License: MIT License

Shell 4.77% JavaScript 52.32% TypeScript 42.90%
bump lerna monorepo monorepos monorepository pnpm version versioning workspace workspaces

wersion's Introduction

Wersion

MIT License NPM Version

Makes bumping your monorepos workspaces version a breeze ๐ŸŒฌ๏ธ.

It's mostly useful for those using Yarn Berry (v2/v3), but you can use it with npm, pnpm and Yarn Classic (v1).



Features

  • prewersion & postwersion scripts
  • npm, pnpm, Yarn Classic (v1) & Yarn Berry (v2, v3) package managers
  • --dry-run CLI option

Roadmap

  • allowedBranches configuration key
  • Specified version support (i.e. wersion 1.2.3)

Installation

Prerequisites

  • npm, pnpm or Yarn v1/v3
  • Setting the workspaces field in your package.json file (i.e. `"workspaces": ["packages/*"]``)

First Setup

First, install Wersion:

yarn add -DE wersion
# or
pnpm i -DE wersion
# or
npm i -DE wersion
# or
npm i -g wersion # to install it globally

Usage

Simply run:

yarn wersion <release>
# or
pnpm wersion <release>
# or
npx wersion <release>
# or
wersion <release> # if installed globally

<release> can be one of: "patch", "minor", "major", "prepatch", "preminor", "premajor" or "prewersion".

You can run it with --dry-run or -d to see what would happen without actually bumping your packages versions.

Pre & Post Scripts

In your package.json:

{
  "scripts": {
    "prewersion": "echo \"The version will be bumped from v${PREVIOUS_VERSION} to v${NEXT_VERSION}.\"",
    "postwersion": "echo \"The version has been bumped from v${PREVIOUS_VERSION} to v${NEXT_VERSION}.\""
  }
}

wersion's People

Contributors

ivangabriele avatar renovate[bot] avatar

Stargazers

 avatar

Watchers

 avatar

wersion's Issues

Consider adding only modified tracked files

Nice package!

One problem which I found is that you run git add . while adding changes, as this can lead to adding some trash files in the commit (when they were not in .gitignore) - especially if someone is running this manually, and not in the CI. I think that sticking to modified files only would be equally good.

Best regards,
G.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • build(dev-deps): update commitlint monorepo to v19 (major) (@commitlint/cli, @commitlint/config-conventional)
  • build(dev-deps): update dependency @ivangabriele/eslint-config-typescript-base to v10
  • build(dev-deps): update dependency @ivangabriele/prettier-config to v5
  • build(dev-deps): update dependency @ivangabriele/semantic-release-config-base to v4
  • build(dev-deps): update dependency @ivangabriele/tsconfig-node to v2
  • build(dev-deps): update dependency commander to v12
  • build(dev-deps): update dependency eslint-config-airbnb-typescript to v18
  • build(dev-deps): update dependency husky to v9
  • build(dev-deps): update dependency pkg-up to v5
  • build(dev-deps): update dependency semantic-release to v23
  • build(dev-deps): update typescript-eslint monorepo to v7 (major) (@typescript-eslint/eslint-plugin, @typescript-eslint/parser)
  • chore(deps): update actions/checkout action to v4
  • chore(deps): update actions/setup-node action to v4
  • chore(deps): update peter-evans/create-pull-request action to v6
  • chore(deps): update yarn to v4
  • ๐Ÿ” Create all rate-limited PRs at once ๐Ÿ”

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/check.yml
  • actions/checkout v3
  • actions/setup-node v3
  • actions/checkout v3
  • actions/setup-node v3
.github/workflows/merge_release_pull_request.yml
  • pascalgn/automerge-action v0.16.2
.github/workflows/release.yml
  • actions/checkout v3
  • actions/setup-node v3
  • peter-evans/create-pull-request v4
npm
package.json
  • @commitlint/cli 18.6.1
  • @commitlint/config-conventional 18.6.2
  • @ivangabriele/commitlint-config 1.1.0
  • @ivangabriele/eslint-config-typescript-base 7.1.1
  • @ivangabriele/prettier-config 3.2.0
  • @ivangabriele/semantic-release-config-base 3.0.3
  • @ivangabriele/tsconfig-node 1.2.2
  • @rollup/plugin-commonjs 25.0.7
  • @rollup/plugin-json 6.1.0
  • @rollup/plugin-node-resolve 15.2.3
  • @swc/core 1.4.2
  • @types/node 20.11.19
  • @types/semver 7.5.7
  • @typescript-eslint/eslint-plugin 5.62.0
  • @typescript-eslint/parser 5.62.0
  • chalk 5.3.0
  • commander 11.1.0
  • eslint 8.56.0
  • eslint-config-airbnb 19.0.4
  • eslint-config-airbnb-typescript 17.1.0
  • eslint-config-prettier 8.10.0
  • eslint-plugin-import 2.29.1
  • eslint-plugin-jest 27.9.0
  • eslint-plugin-no-null 1.0.2
  • eslint-plugin-prettier 4.2.1
  • eslint-plugin-sort-destructure-keys 1.5.0
  • eslint-plugin-sort-keys-fix 1.1.2
  • eslint-plugin-typescript-sort-keys 2.3.0
  • esm-path 1.0.1
  • execa 7.2.0
  • fast-glob 3.3.2
  • husky 8.0.3
  • lint-staged 13.3.0
  • ora 6.3.1
  • pkg-up 4.0.0
  • prettier 2.8.8
  • rollup 3.29.4
  • rollup-plugin-add-shebang 0.3.1
  • rollup-plugin-swc3 0.11.0
  • semantic-release 21.1.2
  • semver 7.6.0
  • typescript 5.3.3
  • yaml 2.3.4
  • node >=18
  • yarn 3.8.0

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.