[programming]
View customize plugin の v3.0.1 をリリースしました。 onozaty/redmine-view-customize - GitHub DBマイグレーションが戻せなくなっていたのを直しています。 前田さんからPull Requestいただきました。ありがとうございます。 Fixes the migration 008 is…
下記の問い合わせがあって作ったサンプルです。 一部のユーザでしか管理者を作成できないようにするといったものです。 許可されたユーザ以外だと、Administratorのチェックボックスを無効にします。 コード内容は下記にまとめています。 https://github.com…
下記の問い合わせがあって作ったサンプルです。 ステータスを終了から他のステータスに変えた時に、期日をクリアするといったものになります。 コード内容は下記にまとめています。 https://github.com/onozaty/redmine-view-customize-scripts/blob/master/…
指定した値をファイルに埋め込むemvというCLIのツールをGoで作りました。 GitHub - onozaty/emv: Embedding specified values in files ビルドツール自体にGitのタグなどを利用してバージョン番号を埋め込むといった方法が提供されているものも多いですが、…
Redmine Advent Calendar 2021 - Adventar の7日目の記事になります。 View customizeのコード例を雑多に置いていたプロジェクトを整理しました。 View customizeとRedmineのバージョンが上がっていくにつれ、 もっと簡潔に書けるようになっている Redmine自…
チケットの担当者が変わったときに、SlackやRocket.Chat、Teamsなどに通知するプラグイン、Redmine issue assign notice pluginのv2.0.0をリリースしました。 GitHub - onozaty/redmine_issue_assign_notice: It is a plugin of Redmine that notifies Slack…
View customize plugin の v3.0.0 をリリースしました。 onozaty/redmine-view-customize - GitHub 下記2つの対応を行っています。 Zeitwerk が有効になった場合に動作しない箇所の修正 ViewCustomize.contextにプロジェクトのIDを追加 Zeitwerk が有効にな…
社内勉強会で「今からでも遅くないDBマイグレーション」というタイトルで、FlywayとSchemaSpyの紹介をしました。 今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 - from onozaty FlywayはCLIツール&SQLで書くので、DBマイグレーション…
Online Bookmark Incremental Search の v2.0.3 をリリースしました。 大量のブックマークがあると、Chrome版でlocalStorage APIの制限(5,242,880バイト)に引っかかり、ブックマークが保存されないという問題に対応しています。 unlimitedStorage という権限…
Online Bookmark Incremental Search の v2.0.2 をリリースしました。 はてなブックマークで動作しなくなっていたのを修正しています。 Online Bookmark Incremental Search は、オンラインブックマーク(Google Bookmarks, Pinboard, はてなブックマーク)を…
CSVファイルを処理するcsvtというCLIのツールをGoで作りました。 作り始める時点で用意しようと思っていた機能が揃ったので紹介します。 (2021-12-07追記) その後欲しい機能が増えて、サブコマンドが倍増したので、現在の情報で更新します。 csvt GitHub - o…
第20回 redmine.tokyo にて、『Redmine issue assign notice plugin の紹介』というタイトルでLTさせていただきました。 第20回勉強会 - redmine.tokyo 資料はこちら。 Redmine issue assign notice plugin の紹介 from onozaty Redmine issue assign notice…
社内勉強会で最近作ったものってタイトルで、Goで作ったツールやRedmine issue assign notice pluginについて発表しました。 最近作ったもの from onozaty www.slideshare.net 在宅勤務で通勤時間&肉体的な負荷が無くなったことで、趣味でコード書ける時間…
Goの勉強も兼ねて、適当な課題見つけてCLIツールをちょこちょこ作っているのですが、他の人が使っても便利かもしれないものが出来たので紹介します。 GitHub - onozaty/filist: Displays a list of files. 指定したディレクトリ配下のファイル一覧を再帰的に…
チケットの担当者が変わったときに、SlackやRocket.Chat、Teamsなどに通知するプラグイン、Redmine issue assign notice pluginのv1.2.0をリリースしました。 GitHub - onozaty/redmine_issue_assign_notice Google Chatのメンションに対応しました。 Google…
View customize plugin の v2.8.1 をリリースしました。 onozaty/redmine-view-customize - GitHub Redmine 3系(Rails4)+View customize 2.7.0以降でPath PatternとCommentsにおかしな文字が入る問題を修正しています。デフォルト値がおかしくなってしまい…
社内勉強会でSelenium入門ってタイトルで、Seleniumについて発表(LT)しました。 Selenium入門 from onozaty www.slideshare.net SeleniumはSelenium1の頃によく遊んでいた(Selenium Auto Exec Server(AES)っての作ったりしてた)のですが、Selenium IDEが一度…
チケットの担当者が変わったときに、SlackやRocket.Chat、Teamsなどに通知するプラグイン、Redmine issue assign notice pluginのv1.1.2をリリースしました。 GitHub - onozaty/redmine_issue_assign_notice 担当者にグループをアサインするとエラーとなると…
JavaのDBマイグレーションライブラリとしてFlywayを愛用していますが、マイグレーションが全て完了した後に、特定のSQLを流せないかなと調べてみたところ、Callbackという仕組みがあることがわかりました。 Callbacks - Callbacks - Flyway by Redgate • Dat…
この記事はRedmine Advent Calendar 2020 17日目の記事です。 Redmine Advent Calendar 2020 - Adventar チケットの担当者が変わったときに、SlackやRocket.Chatなどに通知するプラグインを作りました。 チケットの担当者が変わった時に、下記のようなメッセ…
View customize plugin の v2.8.0 をリリースしました。 onozaty/redmine-view-customize - GitHub Insertion position として Bottom of all pages が選べるようになりました。 HTML bodyの末尾に埋め込まれるような形になります。これを利用すると、Redmin…
ブラウザでのテストだけではなく、ちょっとしたブラウザ操作の自動化にもSeleniumを利用するのですが、久しぶりに起動すると、各ブラウザのDriverが古くでエラーになる、、みたいなことが多々発生していました。 今更ながら、他の方々はどうやってこの問題を…
SeleniumでChromeDriverで実行した際に、ヘッドレスモードだとエラー、ヘッドレスモードにしないと成功するといったテストがありました。 エラー内容は下記のような感じで、要素が操作できないといったものでした。 org.openqa.selenium.ElementNotInteracta…
XMLをCSVに変換するツールxml2csvを作りました。 JUnitのXMLをCSVに変換する処理書いていて、これは汎用的にできるなーってことで、Goの勉強も兼ねて書きました。 マッピング情報を元に、XMLからCSVに変換します。 $ xml2csv -i input.xml -m mapping.json -…
特定ユーザに対して一部管理者メニューを非表示にしたいといった要望です。(2つあって、2つ目の方) 一律非表示ならば、CSSで出来るのですが、特定ユーザに対してのみ適用したいのでJavaScriptで書く必要があります。 以下のサンプルでは、ユーザID:10のユー…
初期ユーザ(user_id=1)を、削除やロックできないようにしたいという要望です。(2つあって1つ目の方) ボタンを非表示にするだけなので、CSSで対応します。 設定内容 Insertion position: Head of all pages a[data-method="put"][href="/users/1?user%5Bstatu…
Redmine Japan 2020というイベントでView customize pluginについて発表しました。 資料はこちら。 Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020 from onozaty まつもとさんの基調講演、前田さんの招待講演…
JUnitの結果を一覧で見たいなーってことで、CSVファイルに変換するツールを作りました。遅いテストを探すのに、EXCELでソートしたかったからです。 JUnitの結果XMLファイルが配置されているディレクトリ(Gradleだとbuild/test-results/testとか)と、出力ファ…
redmine.org には、プラグインの情報を登録できる仕組みがあります。 登録したものは、下記で公開されます。 Plugins - Redmine プラグインには、Identiferというプラグインを一意に表す識別子があり、上記サイトでもIdentiferを入力し、それがURLになるよう…
上記の問い合わせに対応したサンプルコードを書いてみました。 チェックボックスをチェックしたら、テキストボックスを無効化します。 設定内容 Insertion position: Bottom of issue form $(function() { const checkbox = $('#issue_custom_field_values_1…