[programming]

ShortcutKey2URLの新バージョン(Chrome版1.4.0、Firefox版4.3.1)をリリースしました

ShortcutKey2URLの新バージョンをリリースしました。 2つの機能追加を行っています。どちらも利用者の方から要望があったものになります。 候補のインタラクティブな絞り込み ショートカットキーの候補をインタラクティブに絞り込んで表示できるようにしまし…

期日近くになったら警告を表示する(Redmine View Customize Plugin)

上記の問い合わせに対応したサンプルコードを書いてみました。(これが求めているものなのかはちょっと怪しいかも...) 期日まで残り3日になったらチケット画面に警告を表示します。 設定内容 Path pattern: .* Insertion position: Bottom of issue detail $(…

PostgreSQL COPY Helper を作りました

PostgreSQLのCOPYコマンドをJavaで簡単に利用するためのライブラリとして、PostgreSQL COPY Helper を作りました。 登録したいデータの構造を表すクラスを定義しておいて、、 @Table("items") public class Item { @Column("id") private final int id; @Col…

Redmine: View customize plugin の v2.6.0 をリリースしました

View customize plugin の v2.6.0 をリリースしました。 onozaty/redmine-view-customize - GitHub 中国語のマージリクエストをいただいたので、そちらをマージしてのリリースとなります。

java.sql.Timeとjava.time.LocalTime間の変換でミリ秒が破棄される

java.sql.Timeには、下記のようなLocalTimeとの間で変換を行うメソッドがあります。 public LocalTime toLocalTime() Time java.sql.Time.valueOf(LocalTime time) ただ、これらメソッドは秒までしか対象にしておらず、ミリ秒が破棄されています。 /** * Obt…

親のカスタムフィールドが選択されたら、子のカスタムフィールドを有効化する(Redmine View Customize Plugin)

github.com 上記の問い合わせに対応したサンプルコードを書いてみました。 親のカスタムフィールド(キーバリュー形式のリスト)が選択されたら、子のカスタムフィールドを有効化するコードです。 Redmineのデフォルトのスタイルだと、input:disabledのbackgro…

RDBMS上でデータの整合性を保つこと

先日Twitter上で外部キーが話題にあがっていました。自分も大昔は外部キーを重要視していませんでしたが、1x年以上たった今では、様々な制約等を使って、RDBMS上でデータの整合性を保つべきと考えています。 なぜ制約を使うのか データの不整合を、プログラ…

カスタムフィールドを3カラムで表示する(Redmine View Customize Plugin)

上記の問い合わせの中で、カスタムフィールドを3カラム表示したいといったのがあったので、サンプルコードを書いてみました。 設定内容 Path pattern: .* Insertion position: Bottom of issue form $(function() { const field1 = $('#issue_custom_field_v…

特定のプロジェクトでファイル添付を無効にする(Redmine View Customize Plugin)

この記事はRedmine Advent Calendar 2019 19日目の記事です。 Redmine Advent Calendar 2019 - Adventar Redmine Users (Japanese)のメーリングリストで流れていた件で、既にJavaScriptで解決する方法が他の方から出ていましたが、CSSでもできるのでCSSで書…

プロジェクト切り替え時にウォッチャーを変更する(Redmine View Customize Plugin)

プロジェクト切り替え時にウォッチャーを変えたいのだけどうまくいかないといった問い合わせもらったので、サンプルコード書いてみました。 入力フォーム差し替えと絡んでハマりそうな箇所なので、他の方の参考にもなればと思います。 入力フォームの差し替…

gitlab-project-member-exporter - GitLabからプロジェクト毎のメンバー一覧をエクスポートするツールを作った

この記事はGitLab Advent Calendar 2019の2日目の記事です。 GitLab Advent Calendar 2019 - Qiita GitLabからプロジェクト毎のメンバー一覧をエクスポートするツール、gitlab-project-member-exporter を作りました。 なぜ作ったか GitLabでグループ、メン…

GitLabのAPIを利用して、ユーザが参照できるプロジェクト一覧を作成する

GitLab上で、誰がどのプロジェクトを参照可能かを一覧化したかったので、GitLabのAPIを利用して一覧化してみます。 GitLab Community Editionを利用して確認しました。 GItLabのAPI APIの情報は下記ドキュメントにまとまっています。 API Docs | GitLab 認証…

ShortcutKey2URLでショートカット一覧のエクスポート、インポートに対応しました

要望のあったショートカット一覧のエクスポート、インポートに対応しました。 Firefox版(v4.3.0)、Chrome版(v1.3.0)ともに対応しています。(Chrome版は、この記事を書いているタイミングでは審査待ちです) Firefox版、Chrome版ともにフォーマットは同じです…

redmine-issue-loader のバージョン2.2.0をリリースしました

CSVを読み込んでRedmineのチケットを新規作成、更新するツール、redmine-issue-loaderのバージョン2.2.0をリリースしました。 Basic認証に対応しています。(APIアクセスキーを使うか、Basic認証のどちらかを選択可能に)

JavaScriptでファイルのインポート、エクスポートを実装する

Chrome/Firefoxの拡張機能で、設定をインポート、エクスポートする機能が欲しいといった要望があったので、まずはどんな感じにインポート、エクスポートすれば良いんだっけ、、ってことでJavaScriptで簡単なサンプル書いてみました。 コード 下記のようなHTM…

Redmine: View customize plugin の v2.5.0 をリリースしました

View customize plugin の v2.5.0 をリリースしました。 onozaty/redmine-view-customize - GitHub 今回のリリースでの変更点は下記の2つとなります。 ViewCustomize.context にユーザの最終ログイン日時を追加 Add user's last_login_on time to ViewCustom…

redmine-issue-loader のバージョン2.1.0をリリースしました

CSVを読み込んでRedmineのチケットを新規作成、更新するツール、redmine-issue-loaderのバージョン2.1.0をリリースしました。 対象のフィールドを増やして欲しいとの要望があったので、今回下記のフィールドを追加しました。これで全部対応できたはず、、 担…

ShortcutKey2URL for Chrome のバージョン1.2.0をリリースしました

ShortcutKey2URL for Chrome のバージョン1.2.0をリリースしました。 ShortcutKey2URL は、ショートカットキーを使用してURLを開いたり、移動したり、JavaScriptを実行できる拡張機能です。 スタートアップキーであらかじめ設定しておいた動作の一覧を表示し…

ShortcutKey2URL(Firefox版)の 4.1.0 をリリースしました

バージョン4.1.0 を先ほどリリースしました。 今回の大きな変更点として、Scriptにjavascriptスキームのまま書けるようにしました。 ブックマークレットを登録する際に、javascriptスキームで書かれたものをそのまま登録してしまい、うまく動かないといった…

Redmine: View customize plugin の v2.4.0 をリリースしました

View customize plugin の v2.4.0 をリリースしました。 onozaty/redmine-view-customize - GitHub 下記の2つに対応しています。 マルチバイトのWikiページにてエラーが発生する問題対処 Internal error · Issue #40 · onozaty/redmine-view-customize · Git…

Redmine: View customize plugin の v2.3.0 をリリースしました

View customize plugin の v2.3.0 をリリースしました。 onozaty/redmine-view-customize - GitHub ViewCustomize.contextへプロジェクトのカスタムフィールドを追加しています。 ViewCustomize.contextへの追加基準ですが、いまのところ下記のように考えて…

ShortcutKey2URL for Chrome のバージョン1.1.0をリリースしました

ShortcutKey2URL for Chrome のバージョン1.1.0をリリースしました。 ShortcutKey2URL は、ショートカットキーを使用してURLを開いたり、移動したり、JavaScriptを実行できる拡張機能です。 スタートアップキーであらかじめ設定しておいた動作の一覧を表示し…

Redmine: View customize plugin の v2.2.0 をリリースしました

View customize plugin の v2.2.0 をリリースしました。 onozaty/redmine-view-customize - GitHub Easy Redmineへの対応となります。 EasyRedmine support by jaryn-kubik · Pull Request #41 · onozaty/redmine-view-customize · GitHub

CSVファイルをPostgreSQLにロードするツール(csv2postgresql)を作りました

CSVファイルをPostgreSQLにロードするツールを作りました。 事前にテーブルを作っておく必要は無いので、とりあえずCSVファイルをPostgreSQLにロードしていじりたいって時に便利かと思います。 テーブルはCSVのヘッダに記載のフィールド名を元に作成されます…

REST APIを利用して複数の関連チケットをまとめて作成する(Redmine View Customize Plugin)

チケットを作成して、関連付けを行いたいという問い合わせがあったので書いてみました。 チケットの関連付けには下記のAPIを使います。 https://www.redmine.org/projects/redmine/wiki/Rest_IssueRelations 設定内容 Path pattern: .* Insertion position: …

テキストエリアで入力補完 (Redmine View Customize Plugin)

先日2.1.0をリリースしてHTMLをそのまま埋め込めるようになったので、それを利用したサンプルということで、テキストエリアで入力補完的なことを行うサンプルを書いてみました。 やっていることは、下記のGreasemonkeyで行っていたものと基本的には同じです…

Redmine: View customize plugin の v2.1.0 をリリースしました

View customize plugin の v2.1.0 をリリースしました。 onozaty/redmine-view-customize - GitHub cat-in-136 さんからいただいたプルリクエストを取り込み、種別にHTMLが追加されました。 add "Html" customize type by cat-in-136 · Pull Request #38 · o…

社内勉強会で「View customize plugin for Redmineの紹介(2019年版)」というタイトルで発表しました

社内勉強会でView customizeについて発表(LT)しました。 View customize plugin for Redmineの紹介 (2019年版) from onozaty www.slideshare.net 例がメインで、しかも最後のほうはアニメーションGIFです。Slideshareにアップロードするとアニメーションじゃ…

クリップボードから画像を貼り付ける(Redmine View Customize Plugin)

Redmine 4.1で使えるようになる予定のクリップボードからの画像ペースト、実は少しのJavaScriptのコードの追加だけでできてるので、もしかしてView customizeで3.4や4.0でも使えるようにできるのでは?https://t.co/9h3vuUELnw— MAEDA Go (@g_maeda) 2019年3…

Spring BootでgRPCとRESTを比べてみる

前回gRPCを試したので、RESTとgRPCで同じAPIのパフォーマンスを比較してみます。 受け取ったメッセージをそのまま返す単純なAPIです。 REST package com.example.server; import org.springframework.web.bind.annotation.PostMapping; import org.springfra…