Skip to content

kufu/tamatebako

tamatebako

Frontend packages for projects at SmartHR

Package Index

Package Version Description
use-bulk-check npm version React hooks for managing the values in the checkbox list
use-virtual-scroll npm version React hooks for virtual scroll
wareki npm version Japanese 'wareki' formatter
create-lint-set npm version Lint installer
next-auth npm version SmartHR's next-auth utility
eslint-config-smarthr npm version ESLint config for SmartHR
eslint-plugin-smarthr npm version ESLint plugin for SmartHR
prettier-config-smarthr npm version Prettier config for SmartHR
stylelint-config-smarthr npm version Stylelint config for SmartHR
i18n npm version Internationalization utility

リリース手順

1. リリース Pull Request をマージする

自動で作成されているリリース Pull Request をマージすると、Github Actions の publish workflow で以下のことが行われます。

  • 各パッケージの package.json 内の version が更新される
  • 各パッケージの CHANGELOG.md が更新される
  • リリースタグが打たれる
  • npm にパッケージが公開される

基本的にはこれでリリースは完了です。

2. publish workflow に失敗した場合は手元でリリースを行う

publish workflow が何かしらの理由で失敗した場合、CHANGELOG.md が更新されたりリリースタグが打たれたりなど Github 上ではリリースが完了している状態になるのに、npm にはパッケージが公開されていない、といったような不整合が起きてしまいます。
これを解消するために、下記の手順で手元でリリースを行う必要があります。

$ git switch --detach xxx # 任意のリリースタグがついているコミットに切り替える
$ pnpm install
$ pnpm release

smarthr の organization に所属していない場合は publish ができないので、申請をするか、すでに所属している人に publish を依頼してください。

新しいパッケージの追加方法

  1. packages ディレクトリに新しいパッケージ用のディレクトリを作成し、必要なファイルを追加します。
  2. Lerna がリリースしてしまわないように、package.jsonprivate: true を追記します。
  3. tsc のビルド対象に含める場合は、packages/tsconfig.jsonreferences に追加します。
  4. 通常通り conventional commits でコミットを行い、プルリクエストを作成します。
  5. プルリクエストをマージしても、リリース用のプルリクエストが作成されないことを確認します。

新しいパッケージのリリース方法

  1. 下記の3つの変更を含んだプルリクエストを作成します。
    • 新しいパッケージの package.jsonversion: "1.0.0" を追記します。
    • 新しいパッケージの package.json から private: true を削除します。
    • release-please がリリース用のプルリクエストを作るように release-please-config.json に下記のような行を追加します。 (もし 0.1.0 などのマイナーバージョンでリリースしたい場合は initial-version を指定し、該当パッケージの package.jsonversion も合わせてください。)
"packages/new-package-name": {},
  1. プルリクエストをマージすると、リリース用のプルリクエストが作成されます。.release-please-manifest.json の差分に表示されているリリースバージョンが正しいことを確認してください。
  2. リリース用のプルリクエストに含まれる CHANGELOG.md には、リリースまでのすべてのプルリクエストの内容が記載されています。それらの記載が不要な場合はリリース用プルリクエストに直接コミットする形で CHANGELOG.md を修正します。()
  3. リリース用のプルリクエストをマージして、Github Actions のリリースのワークフローを見守ります。
  4. リリースが完了したら、npm のパッケージのページで Trusted Publisher と Publishing Access の設定をします。
  • #793 に貼ってあるキャプチャと内容と同じ設定にしてください。

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 25