# 🏆MVP ## semantic-releaseを用いたリリースの自動化 先週に[[Conventional Commits]]を採用したので、それを活かしてリリースを自動化するための仕組み [[semantic-release]] を試してみた。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる </div> <div class="link-card-v2-content">Conventional Commitsを採用したので、どこまで自動化できるのかを試してみたい。一番有名そうなsemantic-releaseを試してみる。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/activity.webp" /> <a data-href="📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる" class="internal-link"></a> </div> %%[[📜2024-09-16 semantic-releaseでGitHub管理のパッケージリリースを自動化してみる]]%% 最初の学習コストはやや高めだが、どういう設計をしているかを一度理解してしまえば、そのあとのキャッチアップは似たような感じになるので快適だ。上記ノートでの述べているが、早めにdry runの環境を整えてたほうが捗ると思う。 # 🥈RUP ## Vim駅伝で作成したNeovimプラグインを共有 [[Vim駅伝]]の記事として、はじめて作成した[[Neovimプラグイン]] [[🦉ghostwriter.nvim]]を紹介する記事を書いた。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📘Slackに進捗状況を共有できるNeovimプラグインをつくってみた </div> <div class="link-card-v2-content">Neovimで作成したMarkdownのタスクリストや進捗状況を、Slackに簡単に共有できるプラグイン「ghostwriter.nvim」を紹介します。VimやLua、ターミナル操作、Slack連携、タスク管理、日報・週報作成などに興味がある方はぜひご覧ください。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/%F0%9F%93%98Articles/attachments/2024-09-18.webp" /> <a data-href="📘Slackに進捗状況を共有できるNeovimプラグインをつくってみた" class="internal-link"></a> </div> %%[[📘Slackに進捗状況を共有できるNeovimプラグインをつくってみた]]%% ちょっと癖のあるプラグインだとは思うが、全機能を背景込みで紹介できたので個人的には満足している。仕事とかで[[Slack]]に進捗共有したいけど、都度[[Slack]]を開きたくないし、[[Neovim]]から離れたくない... という方は是非。 # 🪙OPA ## Lazygit 0.44.0 [[Lazygit]]の0.44.0で2つほど便利な機能がリリースされたので紹介。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/favicon-64.png" /> <span class="link-card-v2-site-name">Minerva</span> </div> <div class="link-card-v2-title"> 📰Lazygit 0.44.0を試して気になるポイントを整理してみた </div> <div class="link-card-v2-content">Lazygit 0.44.0の新機能や使い方、diff表示やdelta連携、ハイパーリンク対応など気になるポイントを実際に試して解説する。</div> <img class="link-card-v2-image" src="https://publish-01.obsidian.md/access/35d05cd1bf5cc500e11cc8ba57daaf88/Notes/attachments/report.webp" /> <a data-href="📰Lazygit 0.44.0を試して気になるポイントを整理してみた" class="internal-link"></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-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://github.githubassets.com/favicons/favicon.svg" /> <span class="link-card-v2-site-name">GitHub</span> </div> <div class="link-card-v2-title"> "BREAKING CHANGE:" and "!" after type not properly triggering major release · Issue #231 · semantic-release/commit-analyzer </div> <div class="link-card-v2-content"> I've seen the other issues like this that are already closed (#108)! But I believe this is different. BREAKING C ... </div> <img class="link-card-v2-image" src="https://opengraph.githubassets.com/38554f58dadf7c56057d28c771101ee8bf6b26622ad1ace93089a37c236cdc95/semantic-release/commit-analyzer/issues/231" /> <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-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://cdn.qiita.com/assets/favicons/public/production-c620d3e403342b1022967ba5e3db1aaa.ico" /> <span class="link-card-v2-site-name">Qiita</span> </div> <div class="link-card-v2-title"> エンジニアとして働く中で気づけた大切だと思うこと - Qiita </div> <div class="link-card-v2-content"> はじめに 自分がIT業界に携わって5年ほどが経過しました。 この5年間、SIerからフリーランスエンジニアに転身し、様々なプロジェクトに参加する中で、数々の失敗と成功を経験しました。特に心構えやマインドの部分で多くを学ぶこと ... </div> <img class="link-card-v2-image" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnMzLWFwLW5vcnRoZWFzdC0xLmFtYXpvbmF3cy5jb20lMkZxaWl0YS1pbWFnZS1zdG9yZSUyRjAlMkY2NDc5NDYlMkY4NjMwMDEwMjc1ZDZjYmEyNTM3ZGFlYTA2MzNiNDkwOWVmODQyNTAxJTJGeF9sYXJnZS5wbmclM0YxNjUyMzk5ODI3P2l4bGliPXJiLTQuMC4wJmFyPTElM0ExJmZpdD1jcm9wJm1hc2s9ZWxsaXBzZSZiZz1GRkZGRkYmZm09cG5nMzImcz05YWYzYTRlMzI5ZDlmNWFjODczYzViNTMzNThkYWU5OA%26blend-x%3D120%26blend-y%3D467%26blend-w%3D82%26blend-h%3D82%26blend-mode%3Dnormal%26s%3Dafa1bc96111ee1dbec5509bb3b427aa3?ixlib=rb-4.0.0&w=1200&fm=jpg&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUUzJTgyJUE4JUUzJTgzJUIzJUUzJTgyJUI4JUUzJTgzJThCJUUzJTgyJUEyJUUzJTgxJUE4JUUzJTgxJTk3JUUzJTgxJUE2JUU1JTgzJThEJUUzJTgxJThGJUU0JUI4JUFEJUUzJTgxJUE3JUU2JUIwJTk3JUUzJTgxJUE1JUUzJTgxJTkxJUUzJTgxJTlGJUU1JUE0JUE3JUU1JTg4JTg3JUUzJTgxJUEwJUUzJTgxJUE4JUU2JTgwJTlEJUUzJTgxJTg2JUUzJTgxJTkzJUUzJTgxJUE4JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9ZTNiMTJhYWIyM2E1OGI2Mjg1YTRkNzA1NmZjNTA0Mzg&mark-x=120&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBZT1MwNjAyJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LXBhZD0wJnM9MmY5NGQwOWE2ZmU1MTJlNDc5MTE0OGVkY2IyYmE4Njg&blend-x=242&blend-y=480&blend-w=838&blend-h=46&blend-fit=crop&blend-crop=left%2Cbottom&blend-mode=normal&s=cb54c572fd07491a5ac7ef3aeacde3e5" /> <a href="https://qiita.com/YOS0602/items/916ce3a05336d94e1644"></a> </div> ~~~ よくある話かなーと思って読み始めた。よくある話ではある… けど解像度が高くて読みやすい。リアルな話がよい。 https://qiita.com/YOS0602/items/916ce3a05336d94e1644 ~~~ ## なぜエンジニアのあなたの質問は伝わらないのか? - Qiita <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://cdn.qiita.com/assets/favicons/public/production-c620d3e403342b1022967ba5e3db1aaa.ico" /> <span class="link-card-v2-site-name">Qiita</span> </div> <div class="link-card-v2-title"> なぜエンジニアのあなたの質問は伝わらないのか? - Qiita </div> <div class="link-card-v2-content"> はじめに 包み隠さずオープンに伝えると、投稿主は質問が全然上手ではありません。 多分、この記事を読んでいる皆さんの方が何倍も上手です。 ということで本記事は以上です(冗談です) こちらでは誰よりも質問下手だった投稿主が試行錯 ... </div> <img class="link-card-v2-image" src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-afbab5eb44e0b055cce1258705637a91.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLXByb2ZpbGUtaW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnMzLWFwLW5vcnRoZWFzdC0xLmFtYXpvbmF3cy5jb20lMkZxaWl0YS1pbWFnZS1zdG9yZSUyRjAlMkY2NzcwMDAlMkY0MGQ4NDJmZWM1MjhiNDhjZWJlZjM2NjY0NDc4NGRhMDNmOTQ5YWRhJTJGeF9sYXJnZS5wbmclM0YxNjY5MTYyNjU2P2l4bGliPXJiLTQuMC4wJmFyPTElM0ExJmZpdD1jcm9wJm1hc2s9ZWxsaXBzZSZiZz1GRkZGRkYmZm09cG5nMzImcz01NWUyZThhZGJkYzFiYzZiNDdhN2YwODY0NDhmMmFjOQ%26blend-x%3D120%26blend-y%3D462%26blend-w%3D90%26blend-h%3D90%26blend-mode%3Dnormal%26mark64%3DaHR0cHM6Ly9xaWl0YS1vcmdhbml6YXRpb24taW1hZ2VzLmltZ2l4Lm5ldC9odHRwcyUzQSUyRiUyRnMzLWFwLW5vcnRoZWFzdC0xLmFtYXpvbmF3cy5jb20lMkZxaWl0YS1vcmdhbml6YXRpb24taW1hZ2UlMkYzMzEyZmE3ZDk1NjJkYTc1ZTFmOGE1ZmQxODljN2UzN2FlNzZhMjc0JTJGb3JpZ2luYWwuanBnJTNGMTc1NzU2OTIyMz9peGxpYj1yYi00LjAuMCZ3PTQ0Jmg9NDQmZml0PWNyb3AmbWFzaz1jb3JuZXJzJmNvcm5lci1yYWRpdXM9OCZiZz1GRkZGRkYmYm9yZGVyPTIlMkNGRkZGRkYmZm09cG5nMzImcz1jNzM0N2JmNzQ4ZDIzOThmMzQ1NTY5MmJlYTM2NjAyNA%26mark-x%3D186%26mark-y%3D515%26mark-w%3D40%26mark-h%3D40%26s%3D0b885244add31ed37f535a5585473857?ixlib=rb-4.0.0&w=1200&fm=jpg&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk2MCZoPTMyNCZ0eHQ9JUUzJTgxJUFBJUUzJTgxJTlDJUUzJTgyJUE4JUUzJTgzJUIzJUUzJTgyJUI4JUUzJTgzJThCJUUzJTgyJUEyJUUzJTgxJUFFJUUzJTgxJTgyJUUzJTgxJUFBJUUzJTgxJTlGJUUzJTgxJUFFJUU4JUIzJUFBJUU1JTk1JThGJUUzJTgxJUFGJUU0JUJDJTlEJUUzJTgyJThGJUUzJTgyJTg5JUUzJTgxJUFBJUUzJTgxJTg0JUUzJTgxJUFFJUUzJTgxJThCJUVGJUJDJTlGJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMxRTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LXBhZD0wJnM9OTZmMWNjNDViNGUzODMzMGI2MGU5ODk4ODFmNzhhYjk&mark-x=120&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTgzOCZoPTU4JnR4dD0lNDBrMTJkYSZ0eHQtY29sb3I9JTIzMUUyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1wYWQ9MCZzPTE5M2Y4MTM2OTc1YjZhMzA5MTlmZjIzNWRhZWFjM2M0&blend-x=242&blend-y=454&blend-w=838&blend-h=46&blend-fit=crop&blend-crop=left%2Cbottom&blend-mode=normal&txt64=5qCq5byP5Lya56S-UFJVTQ&txt-x=242&txt-y=539&txt-width=838&txt-clip=end%2Cellipsis&txt-color=%231E2121&txt-font=Hiragino%20Sans%20W6&txt-size=28&s=933d0e2cbfa8e8c29519cab55ba0467a" /> <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を試して気になるポイントを整理してみた]]