# 🏆MVP ## semantic-releaseを用いたリリースの自動化 先週に[[Conventional Commits]]を採用したので、それを活かしてリリースを自動化するための仕組み [[semantic-release]] を試してみた。 <div class="link-card"> <div class="link-card-header"> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" class="link-card-site-icon"/> <span class="link-card-site-name">minerva.mamansoft.net</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる</p> <p class="link-card-description">Conventional Commitsを採用したので、どこまで自動化できるのかを試してみたい。一番有名そうなsemantic-releaseを試してみる。</p> </div> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/activity.webp" class="link-card-image" /> </div> <a class="internal-link" data-href="Notes/📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる.md"></a> </div> %%[[📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる]]%% 最初の学習コストはやや高めだが、どういう設計をしているかを一度理解してしまえば、そのあとのキャッチアップは似たような感じになるので快適だ。上記ノートでの述べているが、早めにdry runの環境を整えてたほうが捗ると思う。 # 🥈RUP ## Vim駅伝で作成したNeovimプラグインを共有 [[Vim駅伝]]の記事として、はじめて作成した[[Neovimプラグイン]] [[🦉ghostwriter.nvim]]を紹介する記事を書いた。 <div class="link-card"> <div class="link-card-header"> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" class="link-card-site-icon"/> <span class="link-card-site-name">minerva.mamansoft.net</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">📘Slackに進捗状況を共有できるNeovimプラグインをつくってみた</p> <p class="link-card-description">人生で初めてつくったNeovimプラグイン、ghostwriter.nvimについて紹介させてください。</p> </div> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/%F0%9F%93%98Articles/attachments/2024-09-18.webp" class="link-card-image" /> </div> <a class="internal-link" data-href="📘Articles/📘Slackに進捗状況を共有できるNeovimプラグインをつくってみた.md"></a> </div> %%[[📘Slackに進捗状況を共有できるNeovimプラグインをつくってみた]]%% ちょっと癖のあるプラグインだとは思うが、全機能を背景込みで紹介できたので個人的には満足している。仕事とかで[[Slack]]に進捗共有したいけど、都度[[Slack]]を開きたくないし、[[Neovim]]から離れたくない... という方は是非。 # 🪙OPA ## Lazygit 0.44.0 [[Lazygit]]の0.44.0で2つほど便利な機能がリリースされたので紹介。 <div class="link-card"> <div class="link-card-header"> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" class="link-card-site-icon"/> <span class="link-card-site-name">minerva.mamansoft.net</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">📰Lazygit 0.44.0を試して気になるポイントを整理してみた</p> <p class="link-card-description">Lazygitのv0.44.0は気になるポイントがいくつかあったので試してみた。実際のバージョンは0.44.1。</p> </div> <img src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/report.webp" class="link-card-image" /> </div> <a class="internal-link" data-href="Notes/📰Lazygit 0.44.0を試して気になるポイントを整理してみた.md"></a> </div> %%[[📰Lazygit 0.44.0を試して気になるポイントを整理してみた]]%% 1つ目は[[コミットグラフ]]で複数コミットを選択した場合に、それらすべての差分をマージして表示する機能。2つ目は[[delta]]の出力にクリックでファイルに移動するハイパーリンクを付ける機能。特に2つ目は、[[delta]]でこんなことができるのか... と勉強になった。 # 🚀Releases - [[🦉ghostwriter.nvim]] - [ghostwriter.nvim v0.4.0リリース](https://github.com/tadashi-aikawa/ghostwriter.nvim/releases/tag/v0.4.0) - `GhostwriterPost`コマンドの第2引数以降の文字列をヘッダとして投稿できるように - [ghostwriter.nvim v0.3.0リリース](https://github.com/tadashi-aikawa/ghostwriter.nvim/releases/tag/v0.3.0) - `GhostwriterPost`コマンドと`GhostwriterWrite`コマンドの2つができた - `GhostwriterPost` は選択範囲の内容をchannelにポストする - `GhostwriterWrite`は現在のセクションを1行目で指定した宛先にポストする # 👀Reading ## "BREAKING CHANGE:" and "!" after type not properly triggering major release · Issue #231 · semantic-release/commit-analyzer <div class="link-card"> <div class="link-card-header"> <img src="https://github.githubassets.com/favicons/favicon.svg" class="link-card-site-icon"/> <span class="link-card-site-name">GitHub</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">"BREAKING CHANGE:" and "!" after type not properly triggering major release · Issue #231 · semantic-release/commit-analyzer</p> <p class="link-card-description"> ... </p> </div> <img src="https://opengraph.githubassets.com/21a6b3b40c6a4d274bf7e8c5ca2899857ed24a8595f0cbd4638f357fb4000442/semantic-release/commit-analyzer/issues/231" class="link-card-image" /> </div> <a href="https://github.com/semantic-release/commit-analyzer/issues/231"></a> </div> ~~~ 結構ハマってしまった。。やっぱ実験は大事。 https://github.com/semantic-release/commit-analyzer/issues/231 ~~~ ## エンジニアとして働く中で気づけた大切だと思うこと - Qiita <div class="link-card"> <div class="link-card-header"> <img src="https://cdn.qiita.com/assets/favicons/public/production-c620d3e403342b1022967ba5e3db1aaa.ico" class="link-card-site-icon"/> <span class="link-card-site-name">Qiita</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">エンジニアとして働く中で気づけた大切だと思うこと - Qiita</p> <p class="link-card-description">はじめに自分がIT業界に携わって5年ほどが経過しました。この5年間、SIerからフリーランスエンジニアに転身し、様々なプロジェクトに参加する中で、数々の失敗と成功を経験しました。特に心構えやマイ… ... </p> </div> <img src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgyJUE4JUUzJTgzJUIzJUUzJTgyJUI4JUUzJTgzJThCJUUzJTgyJUEyJUUzJTgxJUE4JUUzJTgxJTk3JUUzJTgxJUE2JUU1JTgzJThEJUUzJTgxJThGJUU0JUI4JUFEJUUzJTgxJUE3JUU2JUIwJTk3JUUzJTgxJUE1JUUzJTgxJTkxJUUzJTgxJTlGJUU1JUE0JUE3JUU1JTg4JTg3JUUzJTgxJUEwJUUzJTgxJUE4JUU2JTgwJTlEJUUzJTgxJTg2JUUzJTgxJTkzJUUzJTgxJUE4JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz02ZjlhNWRiYWM2Yzc0NTA2Y2ZhZDY3OWE4NWM1ZjJkYQ&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBZT1MwNjAyJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz02ZTliMTJiM2U4ZjZmZmI2ZWU1MTA1MWMwODBiOTJiOA&blend-x=142&blend-y=486&blend-mode=normal&s=f21578ac328f646ef72de0daf311b74d" class="link-card-image" /> </div> <a href="https://qiita.com/YOS0602/items/916ce3a05336d94e1644"></a> </div> ~~~ よくある話かなーと思って読み始めた。よくある話ではある… けど解像度が高くて読みやすい。リアルな話がよい。 https://qiita.com/YOS0602/items/916ce3a05336d94e1644 ~~~ ## なぜエンジニアのあなたの質問は伝わらないのか? - Qiita <div class="link-card"> <div class="link-card-header"> <img src="https://cdn.qiita.com/assets/favicons/public/production-c620d3e403342b1022967ba5e3db1aaa.ico" class="link-card-site-icon"/> <span class="link-card-site-name">Qiita</span> </div> <div class="link-card-body"> <div class="link-card-content"> <p class="link-card-title">なぜエンジニアのあなたの質問は伝わらないのか? - Qiita</p> <p class="link-card-description">はじめに包み隠さずオープンに伝えると、投稿主は質問が全然上手ではありません。多分、この記事を読んでいる皆さんの方が何倍も上手です。ということで本記事は以上です(冗談です)こちらでは誰よりも質… ... </p> </div> <img src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9JUUzJTgxJUFBJUUzJTgxJTlDJUUzJTgyJUE4JUUzJTgzJUIzJUUzJTgyJUI4JUUzJTgzJThCJUUzJTgyJUEyJUUzJTgxJUFFJUUzJTgxJTgyJUUzJTgxJUFBJUUzJTgxJTlGJUUzJTgxJUFFJUU4JUIzJUFBJUU1JTk1JThGJUUzJTgxJUFGJUU0JUJDJTlEJUUzJTgyJThGJUUzJTgyJTg5JUUzJTgxJUFBJUUzJTgxJTg0JUUzJTgxJUFFJUUzJTgxJThCJUVGJUJDJTlGJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1hZDNiYTJjYWRjZTM5YTkxMzg0YTUxNWY1ODQwNWNmYQ&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBrMTJkYSZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MWE4N2IxNzZkODAyNzY3ZDBkNmNmYWYyZmZmZTA4YTE&blend-x=142&blend-y=436&blend-mode=normal&txt64=aW4g5qCq5byP5Lya56S-UFJVTQ&txt-width=770&txt-clip=end%2Cellipsis&txt-color=%231E2121&txt-font=Hiragino%20Sans%20W6&txt-size=36&txt-x=156&txt-y=536&s=64b7aec264dcecaf5a710de23babd25e" class="link-card-image" /> </div> <a href="https://qiita.com/k12da/items/4b04c3f514906e4cca8c"></a> </div> ~~~ 1往復で回答を得たいという前提や、回答者の時間のみを考慮するという前提なら完全同意。ただ、質問者の時間を必要以上に使ってまで完璧な質問してもらうべきかはケースバイケースかなと思う。どっちの時間がより貴重か、コミュニケーションキャッチボールのコスト次第かなぁ。 https://qiita.com/k12da/items/4b04c3f514906e4cca8c ~~~ # 📚New Notes - [[Semantic Release Action (GitHub Actions)]] - [[Task list items (GFM)]] - [[commit-analyzer]] - [[npx]] - [[pnpm exec]] - [[pnpxはnpxとは違う]] - [[semantic-release]] - [[カスタムコマンドを定義 (Lazygit)]] - [[カレントバッファファイルの相対パスをクリップボードレジスタにコピー (Neovim)]] - [[クリップボードレジスタ]] - [[ジェスチャーパッド]] - [[ディップスイッチ]] - [[プラグイン (semantic-release)]] - [[📕git pushの前にtestやlintコマンドを実行して失敗した中断させる]] - [[📕よく使う.releaserc.mjs]] - [[📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる]] - [[📝AutoHotkeyで最後にスペース(空白)の入る文字列がSendできない]] - [[📝commit-analyzerがコミットメッセージtype後の!をbreaking changeとして認識してくれない]] - [[📰2024年38週 Weekly Report]] - [[📰Lazygit 0.44.0を試して気になるポイントを整理してみた]]