From 8391b2c6abf96b208b98f6b144a1a66c89f0b76d Mon Sep 17 00:00:00 2001 From: Felix Singer Date: Sat, 23 Mar 2024 21:23:08 +0100 Subject: [PATCH 1/6] nixos/redmine: Adjust database password conditionally The commands for writing the database password string into the final configuration file are ran in any case, even if it's not needed. Make that conditional on if a password file is set. Signed-off-by: Felix Singer --- nixos/modules/services/misc/redmine.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix index c1209e34a92b..d49e0856c875 100644 --- a/nixos/modules/services/misc/redmine.nix +++ b/nixos/modules/services/misc/redmine.nix @@ -395,9 +395,13 @@ in # handle database.passwordFile & permissions - DBPASS=${optionalString (cfg.database.passwordFile != null) "$(head -n1 ${cfg.database.passwordFile})"} cp -f ${databaseYml} "${cfg.stateDir}/config/database.yml" - sed -e "s,#dbpass#,$DBPASS,g" -i "${cfg.stateDir}/config/database.yml" + + ${optionalString (cfg.database.passwordFile != null) '' + DBPASS="$(head -n1 ${cfg.database.passwordFile})" + sed -e "s,#dbpass#,$DBPASS,g" -i "${cfg.stateDir}/config/database.yml" + ''} + chmod 440 "${cfg.stateDir}/config/database.yml" From 0b11c8f47c29c8ef93631ca2fd077a661d30addb Mon Sep 17 00:00:00 2001 From: Felix Singer Date: Sun, 24 Mar 2024 02:40:39 +0100 Subject: [PATCH 2/6] nixos/redmine: Use attribute set for storing database settings Signed-off-by: Felix Singer --- nixos/modules/services/misc/redmine.nix | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix index d49e0856c875..1873d7da4cb9 100644 --- a/nixos/modules/services/misc/redmine.nix +++ b/nixos/modules/services/misc/redmine.nix @@ -10,16 +10,21 @@ let format = pkgs.formats.yaml {}; bundle = "${cfg.package}/share/redmine/bin/bundle"; - databaseYml = pkgs.writeText "database.yml" '' - production: - adapter: ${cfg.database.type} - database: ${cfg.database.name} - host: ${if (cfg.database.type == "postgresql" && cfg.database.socket != null) then cfg.database.socket else cfg.database.host} - port: ${toString cfg.database.port} - username: ${cfg.database.user} - password: #dbpass# - ${optionalString (cfg.database.type == "mysql2" && cfg.database.socket != null) "socket: ${cfg.database.socket}"} - ''; + databaseSettings = { + production = { + adapter = cfg.database.type; + database = cfg.database.name; + host = if (cfg.database.type == "postgresql" && cfg.database.socket != null) then cfg.database.socket else cfg.database.host; + port = cfg.database.port; + username = cfg.database.user; + } // optionalAttrs (cfg.database.passwordFile != null) { + password = "#dbpass#"; + } // optionalAttrs (cfg.database.type == "mysql2" && cfg.database.socket != null) { + socket = cfg.database.socket; + }; + }; + + databaseYml = format.generate "database.yml" databaseSettings; configurationYml = format.generate "configuration.yml" cfg.settings; additionalEnvironment = pkgs.writeText "additional_environment.rb" cfg.extraEnv; From 19edccb0eed14b297863817cbc032932600f5203 Mon Sep 17 00:00:00 2001 From: Felix Singer Date: Sat, 23 Mar 2024 16:44:43 +0100 Subject: [PATCH 3/6] redmine: Add sqlite3 gem In preparation to adding SQLite support to the NixOS module, add the sqlite3 gem to Gemfile. While on it, remove the unused import `defaultGemConfig`. Signed-off-by: Felix Singer --- .../version-management/redmine/Gemfile | 1 + .../version-management/redmine/Gemfile.lock | 50 +++++---- .../version-management/redmine/default.nix | 2 +- .../version-management/redmine/gemset.nix | 106 ++++++++++-------- 4 files changed, 90 insertions(+), 69 deletions(-) diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile index 326f0e0bab0b..425a671ba9c7 100644 --- a/pkgs/applications/version-management/redmine/Gemfile +++ b/pkgs/applications/version-management/redmine/Gemfile @@ -68,6 +68,7 @@ require 'erb' require 'yaml' gem "mysql2", "~> 0.5.0", :platforms => [:mri, :mingw, :x64_mingw] gem "pg", "~> 1.4.2", :platforms => [:mri, :mingw, :x64_mingw] +gem "sqlite3", "~> 1.4.0", :platforms => [:mri, :mingw, :x64_mingw] group :development do gem 'listen', '~> 3.3' diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock index f9efc5ecede6..d9095173c27b 100644 --- a/pkgs/applications/version-management/redmine/Gemfile.lock +++ b/pkgs/applications/version-management/redmine/Gemfile.lock @@ -63,7 +63,7 @@ GEM minitest (>= 5.1) tzinfo (~> 2.0) zeitwerk (~> 2.3) - addressable (2.8.5) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) ast (2.4.2) builder (3.2.4) @@ -79,11 +79,11 @@ GEM childprocess (3.0.0) chunky_png (1.4.0) commonmarker (0.23.10) - concurrent-ruby (1.2.2) + concurrent-ruby (1.2.3) crass (1.0.6) css_parser (1.16.0) addressable - csv (3.2.8) + csv (3.2.9) deckar01-task_list (2.3.2) html-pipeline digest (3.1.1) @@ -98,7 +98,7 @@ GEM htmlentities (4.3.4) i18n (1.10.0) concurrent-ruby (~> 1.0) - listen (3.8.0) + listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) loofah (2.22.0) @@ -106,17 +106,17 @@ GEM nokogiri (>= 1.12.0) mail (2.7.1) mini_mime (>= 0.1.1) - marcel (1.0.2) + marcel (1.0.4) matrix (0.4.2) method_source (1.0.0) mini_magick (4.11.0) mini_mime (1.1.5) mini_portile2 (2.8.5) - minitest (5.20.0) + minitest (5.22.3) mocha (2.1.0) ruby2_keywords (>= 0.0.5) - mysql2 (0.5.5) - net-imap (0.2.3) + mysql2 (0.5.6) + net-imap (0.2.4) digest net-protocol strscan @@ -125,22 +125,22 @@ GEM net-protocol net-protocol (0.2.2) timeout - net-smtp (0.3.3) + net-smtp (0.3.4) net-protocol - nio4r (2.6.1) - nokogiri (1.15.5) + nio4r (2.7.1) + nokogiri (1.15.6) mini_portile2 (~> 2.8.2) racc (~> 1.4) - parallel (1.23.0) - parser (3.2.2.4) + parallel (1.24.0) + parser (3.3.0.5) ast (~> 2.4.1) racc pg (1.4.6) public_suffix (5.0.4) - puma (6.4.0) + puma (6.4.2) nio4r (~> 2.0) racc (1.7.3) - rack (2.2.8) + rack (2.2.9) rack-test (2.1.0) rack (>= 1.3) rails (6.1.7.6) @@ -181,11 +181,11 @@ GEM rbpdf-font (~> 1.19.0) rbpdf-font (1.19.1) redcarpet (3.5.1) - regexp_parser (2.8.2) + regexp_parser (2.9.0) request_store (1.5.1) rack (>= 1.4) rexml (3.2.6) - roadie (5.2.0) + roadie (5.2.1) css_parser (~> 1.4) nokogiri (~> 1.15) roadie-rails (3.0.0) @@ -206,8 +206,8 @@ GEM rubocop-ast (>= 1.16.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.30.0) - parser (>= 3.2.1.0) + rubocop-ast (1.31.2) + parser (>= 3.3.0.4) rubocop-performance (1.13.3) rubocop (>= 1.7.0, < 2.0) rubocop-ast (>= 0.4.0) @@ -237,8 +237,9 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - strscan (3.0.7) - thor (1.3.0) + sqlite3 (1.4.4) + strscan (3.1.0) + thor (1.3.1) timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) @@ -253,8 +254,8 @@ GEM websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - yard (0.9.34) - zeitwerk (2.6.12) + yard (0.9.36) + zeitwerk (2.6.13) PLATFORMS ruby @@ -301,6 +302,7 @@ DEPENDENCIES sanitize (~> 6.0) selenium-webdriver (~> 3.142.7) simplecov (~> 0.21.2) + sqlite3 (~> 1.4.0) tzinfo-data webdrivers (= 4.6.1) webrick @@ -310,4 +312,4 @@ RUBY VERSION ruby 3.1.4p223 BUNDLED WITH - 2.4.12 + 2.4.22 diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix index 1235df9f6720..2d06be35466a 100644 --- a/pkgs/applications/version-management/redmine/default.nix +++ b/pkgs/applications/version-management/redmine/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, bundlerEnv, ruby, defaultGemConfig, makeWrapper, nixosTests }: +{ lib, stdenv, fetchurl, bundlerEnv, ruby, makeWrapper, nixosTests }: let version = "5.0.6"; diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix index bfd433274b05..1babe5faca5a 100644 --- a/pkgs/applications/version-management/redmine/gemset.nix +++ b/pkgs/applications/version-management/redmine/gemset.nix @@ -137,10 +137,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "05r1fwy487klqkya7vzia8hnklcxy4vr92m9dmni3prfwk6zpw33"; + sha256 = "0irbdwkkjwzajq1ip6ba46q49sxnrl2cw7ddkdhsfhb6aprnm3vr"; type = "gem"; }; - version = "2.8.5"; + version = "2.8.6"; }; ast = { groups = ["default" "test"]; @@ -208,10 +208,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0krcwb6mn0iklajwngwsg850nk8k9b35dhmc2qkbdqvmifdi2y9q"; + sha256 = "1qh1b14jwbbj242klkyz5fc7npd4j0mvndz62gajhvl1l3wd7zc2"; type = "gem"; }; - version = "1.2.2"; + version = "1.2.3"; }; crass = { groups = ["common_mark" "default"]; @@ -239,10 +239,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1zmrgngggg4yvdbggdx9p3z4wcav4vxfigramxxvjh3hi7l12pig"; + sha256 = "1fp986v5xfpzcj9v3dyvdd26fcnmbbzjwcp66pz34hv6g86z66a9"; type = "gem"; }; - version = "3.2.8"; + version = "3.2.9"; }; deckar01-task_list = { dependencies = ["html-pipeline"]; @@ -354,10 +354,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "13rgkfar8pp31z1aamxf5y7cfq88wv6rxxcwy7cmm177qq508ycn"; + sha256 = "0rwwsmvq79qwzl6324yc53py02kbrcww35si720490z5w0j497nv"; type = "gem"; }; - version = "3.8.0"; + version = "3.9.0"; }; loofah = { dependencies = ["crass" "nokogiri"]; @@ -386,10 +386,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0kky3yiwagsk8gfbzn3mvl2fxlh3b39v6nawzm4wpjs6xxvvc4x0"; + sha256 = "190n2mk8m1l708kr88fh6mip9sdsh339d2s6sgrik3sbnvz4jmhd"; type = "gem"; }; - version = "1.0.2"; + version = "1.0.4"; }; matrix = { groups = ["default" "test"]; @@ -446,10 +446,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bkmfi9mb49m0fkdhl2g38i3xxa02d411gg0m8x0gvbwfmmg5ym3"; + sha256 = "07lq26b86giy3ha3fhrywk9r1ajhc2pm2mzj657jnpnbj1i6g17a"; type = "gem"; }; - version = "5.20.0"; + version = "5.22.3"; }; mocha = { dependencies = ["ruby2_keywords"]; @@ -475,10 +475,10 @@ }]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1gjvj215qdhwk3292sc7xsn6fmwnnaq2xs35hh5hc8d8j22izlbn"; + sha256 = "0cysv1wdfdbizwkd0d9s16s832khdwv31pgp01mw2g3bbpa4gx3h"; type = "gem"; }; - version = "0.5.5"; + version = "0.5.6"; }; net-imap = { dependencies = ["digest" "net-protocol" "strscan"]; @@ -486,10 +486,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1rl79ykmxa2k4dlk6ykrb9l0a4h101q1gd8c4qv3cl0p9h68zmbn"; + sha256 = "0wkawmda0iawc3f6klmfzj727phwy66yydqksvfzpjwg69jfmcvn"; type = "gem"; }; - version = "0.2.3"; + version = "0.2.4"; }; net-ldap = { groups = ["ldap"]; @@ -529,20 +529,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1c6md06hm5bf6rv53sk54dl2vg038pg8kglwv3rayx0vk2mdql9x"; + sha256 = "0hwiqplhi29kfjl8jm0rhl51qv6wmxfynl4qap1dhv9xdwc4bm1x"; type = "gem"; }; - version = "0.3.3"; + version = "0.3.4"; }; nio4r = { groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1y99dfzlb3kgzh7pfk8km0p5zjiblxyh5rm8yal9h523vi5awji8"; + sha256 = "15iwbiij52x6jhdbl0rkcldnhfndmsy0sbnsygkr9vhskfqrp72m"; type = "gem"; }; - version = "2.6.1"; + version = "2.7.1"; }; nokogiri = { dependencies = ["mini_portile2" "racc"]; @@ -550,20 +550,20 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "004ip9x9281fxhpipwi8di1sb1dnabscq9dy1p3cxgdwbniqqi12"; + sha256 = "023f2j0q8makgmmfj4pv2fhwgcbh9y8s678za1cb68ry9fdpkkkh"; type = "gem"; }; - version = "1.15.5"; + version = "1.15.6"; }; parallel = { groups = ["default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0jcc512l38c0c163ni3jgskvq1vc3mr8ly5pvjijzwvfml9lf597"; + sha256 = "15wkxrg1sj3n1h2g8jcrn7gcapwcgxr659ypjf75z1ipkgxqxwsv"; type = "gem"; }; - version = "1.23.0"; + version = "1.24.0"; }; parser = { dependencies = ["ast" "racc"]; @@ -571,10 +571,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0r69dbh6h6j4d54isany2ir4ni4gf2ysvk3k44awi6amz18nggpd"; + sha256 = "11r6kp8wam0nkfvnwyc1fmvky102r1vcfr84vi2p1a2wa0z32j3p"; type = "gem"; }; - version = "3.2.2.4"; + version = "3.3.0.5"; }; pg = { groups = ["default"]; @@ -610,10 +610,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1y8jcw80zcxvdq0id329lzmp5pzx7hpac227d7sgjkblc89s3pfm"; + sha256 = "0i2vaww6qcazj0ywva1plmjnj6rk23b01szswc5jhcq7s2cikd1y"; type = "gem"; }; - version = "6.4.0"; + version = "6.4.2"; }; racc = { groups = ["common_mark" "default" "test"]; @@ -630,10 +630,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "15rdwbyk71c9nxvd527bvb8jxkcys8r3dj3vqra5b3sa63qs30vv"; + sha256 = "0hj0rkw2z9r1lcg2wlrcld2n3phwrcgqcp7qd1g9a7hwgalh2qzx"; type = "gem"; }; - version = "2.2.8"; + version = "2.2.9"; }; rack-test = { dependencies = ["rack"]; @@ -767,10 +767,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1d9a5s3qrjdy50ll2s32gg3qmf10ryp3v2nr5k718kvfadp50ray"; + sha256 = "1ndxm0xnv27p4gv6xynk6q41irckj76q1jsqpysd9h6f86hhp841"; type = "gem"; }; - version = "2.8.2"; + version = "2.9.0"; }; request_store = { dependencies = ["rack"]; @@ -799,10 +799,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1qs594ybaz0lh2sakh95syzvhva4jms8xyiwhgjfncf3ri0qxp7l"; + sha256 = "1mh1a0m0i0xrm20nry4d3gf0q5kbmm5lp15n52r93gcjwwfgd974"; type = "gem"; }; - version = "5.2.0"; + version = "5.2.1"; }; roadie-rails = { dependencies = ["railties" "roadie"]; @@ -873,10 +873,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1cs9cc5p9q70valk4na3lki4xs88b52486p2v46yx3q1n5969bgs"; + sha256 = "1v3q8n48w8h809rqbgzihkikr4g3xk72m1na7s97jdsmjjq6y83w"; type = "gem"; }; - version = "1.30.0"; + version = "1.31.2"; }; rubocop-performance = { dependencies = ["rubocop" "rubocop-ast"]; @@ -1005,25 +1005,43 @@ }; version = "3.4.2"; }; + sqlite3 = { + groups = ["default"]; + platforms = [{ + engine = "maglev"; + } { + engine = "mingw"; + } { + engine = "mingw"; + } { + engine = "ruby"; + }]; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1z1wa639c278bsipczn6kv8b13fj85pi8gk7x462chqx6k0wm0ax"; + type = "gem"; + }; + version = "1.4.4"; + }; strscan = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0w2lc1mqia13x43ajzhih419r40ppddg936ydhawz57f63ab6fll"; + sha256 = "0mamrl7pxacbc79ny5hzmakc9grbjysm3yy6119ppgsg44fsif01"; type = "gem"; }; - version = "3.0.7"; + version = "3.1.0"; }; thor = { groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1hx77jxkrwi66yvs10wfxqa8s25ds25ywgrrf66acm9nbfg7zp0s"; + sha256 = "1vq1fjp45az9hfp6fxljhdrkv75cvbab1jfrwcw738pnsiqk8zps"; type = "gem"; }; - version = "1.3.0"; + version = "1.3.1"; }; timeout = { groups = ["default"]; @@ -1114,19 +1132,19 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "013yrnwx1zhzhn1fnc19zck22a1qgimsaglp2iwgf5bz9l8h93js"; + sha256 = "1r0b8w58p7gy06wph1qdjv2p087hfnmhd9jk23vjdj803dn761am"; type = "gem"; }; - version = "0.9.34"; + version = "0.9.36"; }; zeitwerk = { groups = ["common_mark" "default" "test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1gir0if4nryl1jhwi28669gjwhxb7gzrm1fcc8xzsch3bnbi47jn"; + sha256 = "1m67qmsak3x8ixs8rb971azl3l7wapri65pmbf5z886h46q63f1d"; type = "gem"; }; - version = "2.6.12"; + version = "2.6.13"; }; } From ddd15dc2d92f52138b8cac9be2a2f5e6c277b1c0 Mon Sep 17 00:00:00 2001 From: Felix Singer Date: Sat, 23 Mar 2024 16:47:24 +0100 Subject: [PATCH 4/6] nixos/redmine: Allow using SQLite as database backend Signed-off-by: Felix Singer --- nixos/modules/services/misc/redmine.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/nixos/modules/services/misc/redmine.nix b/nixos/modules/services/misc/redmine.nix index 1873d7da4cb9..957571944b28 100644 --- a/nixos/modules/services/misc/redmine.nix +++ b/nixos/modules/services/misc/redmine.nix @@ -13,11 +13,12 @@ let databaseSettings = { production = { adapter = cfg.database.type; - database = cfg.database.name; + database = if cfg.database.type == "sqlite3" then "${cfg.stateDir}/database.sqlite3" else cfg.database.name; + } // optionalAttrs (cfg.database.type != "sqlite3") { host = if (cfg.database.type == "postgresql" && cfg.database.socket != null) then cfg.database.socket else cfg.database.host; port = cfg.database.port; username = cfg.database.user; - } // optionalAttrs (cfg.database.passwordFile != null) { + } // optionalAttrs (cfg.database.type != "sqlite3" && cfg.database.passwordFile != null) { password = "#dbpass#"; } // optionalAttrs (cfg.database.type == "mysql2" && cfg.database.socket != null) { socket = cfg.database.socket; @@ -150,7 +151,7 @@ in database = { type = mkOption { - type = types.enum [ "mysql2" "postgresql" ]; + type = types.enum [ "mysql2" "postgresql" "sqlite3" ]; example = "postgresql"; default = "mysql2"; description = lib.mdDoc "Database engine to use."; @@ -266,7 +267,7 @@ in config = mkIf cfg.enable { assertions = [ - { assertion = cfg.database.passwordFile != null || cfg.database.socket != null; + { assertion = cfg.database.type != "sqlite3" -> cfg.database.passwordFile != null || cfg.database.socket != null; message = "one of services.redmine.database.socket or services.redmine.database.passwordFile must be set"; } { assertion = cfg.database.createLocally -> cfg.database.user == cfg.user; @@ -275,7 +276,7 @@ in { assertion = pgsqlLocal -> cfg.database.user == cfg.database.name; message = "services.redmine.database.user and services.redmine.database.name must be the same when using a local postgresql database"; } - { assertion = cfg.database.createLocally -> cfg.database.socket != null; + { assertion = cfg.database.createLocally -> cfg.database.type != "sqlite3" && cfg.database.socket != null; message = "services.redmine.database.socket must be set if services.redmine.database.createLocally is set to true"; } { assertion = cfg.database.createLocally -> cfg.database.host == "localhost"; @@ -402,7 +403,7 @@ in # handle database.passwordFile & permissions cp -f ${databaseYml} "${cfg.stateDir}/config/database.yml" - ${optionalString (cfg.database.passwordFile != null) '' + ${optionalString ((cfg.database.type != "sqlite3") && (cfg.database.passwordFile != null)) '' DBPASS="$(head -n1 ${cfg.database.passwordFile})" sed -e "s,#dbpass#,$DBPASS,g" -i "${cfg.stateDir}/config/database.yml" ''} From a803b32736dab14d441edaed5bf695e9a7d3362e Mon Sep 17 00:00:00 2001 From: Felix Singer Date: Sun, 24 Mar 2024 04:39:30 +0100 Subject: [PATCH 5/6] redmine: 5.0.6 -> 5.1.2 Signed-off-by: Felix Singer --- .../version-management/redmine/Gemfile | 89 +++---- .../version-management/redmine/Gemfile.lock | 222 ++++++++-------- .../version-management/redmine/default.nix | 4 +- .../version-management/redmine/gemset.nix | 243 ++++++++++-------- 4 files changed, 294 insertions(+), 264 deletions(-) diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile index 425a671ba9c7..e29e240c75b7 100644 --- a/pkgs/applications/version-management/redmine/Gemfile +++ b/pkgs/applications/version-management/redmine/Gemfile @@ -1,35 +1,27 @@ source 'https://rubygems.org' -ruby '>= 2.5.0', '< 3.2.0' -gem 'bundler', '>= 1.12.0' +ruby '>= 2.7.0', '< 3.3.0' -gem 'rails', '6.1.7.6' -gem 'globalid', '~> 0.4.2' if Gem.ruby_version < Gem::Version.new('2.6.0') -gem 'rouge', '~> 3.28.0' +gem 'rails', '6.1.7.7' +gem 'rouge', '~> 4.2.0' gem 'request_store', '~> 1.5.0' gem 'mini_mime', '~> 1.1.0' gem "actionpack-xml_parser" -gem 'roadie-rails', (Gem.ruby_version < Gem::Version.new('2.6.0') ? '~> 2.2.0' : '~> 3.0.0') +gem 'roadie-rails', '~> 3.1.0' gem 'marcel' -gem "mail", "~> 2.7.1" -gem 'csv', '~> 3.2.0' -gem 'nokogiri', (if Gem.ruby_version < Gem::Version.new('2.6.0') - '~> 1.12.5' - elsif Gem.ruby_version < Gem::Version.new('2.7.0') - '~> 1.13.10' - else - '~> 1.15.2' - end) -gem "rexml", require: false if Gem.ruby_version >= Gem::Version.new('3.0') -gem 'i18n', '~> 1.10.0' +gem 'mail', '~> 2.8.1' +gem 'nokogiri', '~> 1.15.2' +gem 'i18n', '~> 1.14.1' gem 'rbpdf', '~> 1.21.3' gem 'addressable' gem 'rubyzip', '~> 2.3.0' -gem 'net-smtp', '~> 0.3.0' -gem 'net-imap', '~> 0.2.2' -gem 'net-pop', '~> 0.1.1' -# Rails 6.1.6.1 does not work with Pysch 3.0.2, which is installed by default with Ruby 2.5. See https://github.com/rails/rails/issues/45590 -gem 'psych', '>= 3.1.0' if Gem.ruby_version < Gem::Version.new('2.6.0') + +# Ruby Standard Gems +gem 'csv', '~> 3.2.6' +gem 'net-imap', '~> 0.3.4' +gem 'net-pop', '~> 0.1.2' +gem 'net-smtp', '~> 0.3.3' +gem 'rexml', require: false if Gem.ruby_version >= Gem::Version.new('3.0') # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin] @@ -38,6 +30,10 @@ gem 'tzinfo-data', platforms: [:mingw, :x64_mingw, :mswin] gem 'rotp', '>= 5.0.0' gem 'rqrcode' +# HTML pipeline and sanitization +gem "html-pipeline", "~> 2.13.2" +gem "sanitize", "~> 6.0" + # Optional gem for LDAP authentication group :ldap do gem 'net-ldap', '~> 0.17.0' @@ -45,30 +41,27 @@ end # Optional gem for exporting the gantt to a PNG file group :minimagick do - gem 'mini_magick', '~> 4.11.0' + gem 'mini_magick', '~> 4.12.0' end -# Optional Markdown support, not for JRuby -# ToDo: Remove common_mark group when common_mark is decoupled from markdown. See defect (#36892) for more details. -gem 'redcarpet', '~> 3.5.1', groups: [:markdown, :common_mark] +# Optional Markdown support +group :markdown do + gem 'redcarpet', '~> 3.6.0' +end # Optional CommonMark support, not for JRuby group :common_mark do - gem "html-pipeline", "~> 2.13.2" - gem "commonmarker", (Gem.ruby_version < Gem::Version.new('2.6.0') ? '0.21.0' : '~> 0.23.8') - gem "sanitize", "~> 6.0" + gem "commonmarker", '~> 0.23.8' gem 'deckar01-task_list', '2.3.2' end -# webrick -gem 'webrick' - # Include database gems for the database adapters NixOS supports require 'erb' require 'yaml' gem "mysql2", "~> 0.5.0", :platforms => [:mri, :mingw, :x64_mingw] -gem "pg", "~> 1.4.2", :platforms => [:mri, :mingw, :x64_mingw] -gem "sqlite3", "~> 1.4.0", :platforms => [:mri, :mingw, :x64_mingw] +gem "with_advisory_lock" +gem 'pg', '~> 1.5.3', :platforms => [:mri, :mingw, :x64_mingw] +gem 'sqlite3', '~> 1.6.0', :platforms => [:mri, :mingw, :x64_mingw] group :development do gem 'listen', '~> 3.3' @@ -78,25 +71,25 @@ end group :test do gem "rails-dom-testing" gem 'mocha', '>= 2.0.1' - gem 'simplecov', '~> 0.21.2', :require => false + gem 'simplecov', '~> 0.22.0', :require => false gem "ffi", platforms: [:mri, :mingw, :x64_mingw, :mswin] # For running system tests - gem 'puma', (Gem.ruby_version < Gem::Version.new('2.7') ? '< 6.0.0' : '>= 0') - gem 'capybara', (if Gem.ruby_version < Gem::Version.new('2.6') - '~> 3.35.3' - elsif Gem.ruby_version < Gem::Version.new('2.7') - '~> 3.36.0' - else - '~> 3.38.0' - end) - gem "selenium-webdriver", "~> 3.142.7" - gem 'webdrivers', '4.6.1', require: false + gem 'puma' + gem "capybara", ">= 3.39" + if Gem.ruby_version < Gem::Version.new('3.0') + gem "selenium-webdriver", "<= 4.9.0" + gem "webdrivers", require: false + else + gem "selenium-webdriver", ">= 4.11.0" + end # RuboCop - gem 'rubocop', '~> 1.26.0' - gem 'rubocop-performance', '~> 1.13.0' - gem 'rubocop-rails', '~> 2.14.0' + gem 'rubocop', '~> 1.57.0', require: false + gem 'rubocop-performance', '~> 1.19.0', require: false + gem 'rubocop-rails', '~> 2.22.1', require: false end +gem "webrick" + local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local") if File.exist?(local_gemfile) eval_gemfile local_gemfile diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock index d9095173c27b..c1600850c9a7 100644 --- a/pkgs/applications/version-management/redmine/Gemfile.lock +++ b/pkgs/applications/version-management/redmine/Gemfile.lock @@ -1,28 +1,28 @@ GEM remote: https://rubygems.org/ specs: - actioncable (6.1.7.6) - actionpack (= 6.1.7.6) - activesupport (= 6.1.7.6) + actioncable (6.1.7.7) + actionpack (= 6.1.7.7) + activesupport (= 6.1.7.7) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.7.6) - actionpack (= 6.1.7.6) - activejob (= 6.1.7.6) - activerecord (= 6.1.7.6) - activestorage (= 6.1.7.6) - activesupport (= 6.1.7.6) + actionmailbox (6.1.7.7) + actionpack (= 6.1.7.7) + activejob (= 6.1.7.7) + activerecord (= 6.1.7.7) + activestorage (= 6.1.7.7) + activesupport (= 6.1.7.7) mail (>= 2.7.1) - actionmailer (6.1.7.6) - actionpack (= 6.1.7.6) - actionview (= 6.1.7.6) - activejob (= 6.1.7.6) - activesupport (= 6.1.7.6) + actionmailer (6.1.7.7) + actionpack (= 6.1.7.7) + actionview (= 6.1.7.7) + activejob (= 6.1.7.7) + activesupport (= 6.1.7.7) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.7.6) - actionview (= 6.1.7.6) - activesupport (= 6.1.7.6) + actionpack (6.1.7.7) + actionview (= 6.1.7.7) + activesupport (= 6.1.7.7) rack (~> 2.0, >= 2.0.9) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) @@ -30,34 +30,34 @@ GEM actionpack-xml_parser (2.0.1) actionpack (>= 5.0) railties (>= 5.0) - actiontext (6.1.7.6) - actionpack (= 6.1.7.6) - activerecord (= 6.1.7.6) - activestorage (= 6.1.7.6) - activesupport (= 6.1.7.6) + actiontext (6.1.7.7) + actionpack (= 6.1.7.7) + activerecord (= 6.1.7.7) + activestorage (= 6.1.7.7) + activesupport (= 6.1.7.7) nokogiri (>= 1.8.5) - actionview (6.1.7.6) - activesupport (= 6.1.7.6) + actionview (6.1.7.7) + activesupport (= 6.1.7.7) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.7.6) - activesupport (= 6.1.7.6) + activejob (6.1.7.7) + activesupport (= 6.1.7.7) globalid (>= 0.3.6) - activemodel (6.1.7.6) - activesupport (= 6.1.7.6) - activerecord (6.1.7.6) - activemodel (= 6.1.7.6) - activesupport (= 6.1.7.6) - activestorage (6.1.7.6) - actionpack (= 6.1.7.6) - activejob (= 6.1.7.6) - activerecord (= 6.1.7.6) - activesupport (= 6.1.7.6) + activemodel (6.1.7.7) + activesupport (= 6.1.7.7) + activerecord (6.1.7.7) + activemodel (= 6.1.7.7) + activesupport (= 6.1.7.7) + activestorage (6.1.7.7) + actionpack (= 6.1.7.7) + activejob (= 6.1.7.7) + activerecord (= 6.1.7.7) + activesupport (= 6.1.7.7) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (6.1.7.6) + activesupport (6.1.7.7) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -66,17 +66,17 @@ GEM addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) ast (2.4.2) + base64 (0.2.0) builder (3.2.4) - capybara (3.38.0) + capybara (3.40.0) addressable matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) - childprocess (3.0.0) chunky_png (1.4.0) commonmarker (0.23.10) concurrent-ruby (1.2.3) @@ -84,9 +84,9 @@ GEM css_parser (1.16.0) addressable csv (3.2.9) + date (3.3.4) deckar01-task_list (2.3.2) html-pipeline - digest (3.1.1) docile (1.4.0) erubi (1.12.0) ffi (1.16.3) @@ -96,30 +96,34 @@ GEM activesupport (>= 2) nokogiri (>= 1.4) htmlentities (4.3.4) - i18n (1.10.0) + i18n (1.14.4) concurrent-ruby (~> 1.0) + json (2.7.1) + language_server-protocol (3.17.0.3) listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) loofah (2.22.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) - mail (2.7.1) + mail (2.8.1) mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp marcel (1.0.4) matrix (0.4.2) method_source (1.0.0) - mini_magick (4.11.0) + mini_magick (4.12.0) mini_mime (1.1.5) mini_portile2 (2.8.5) minitest (5.22.3) mocha (2.1.0) ruby2_keywords (>= 0.0.5) mysql2 (0.5.6) - net-imap (0.2.4) - digest + net-imap (0.3.7) + date net-protocol - strscan net-ldap (0.17.1) net-pop (0.1.2) net-protocol @@ -135,7 +139,7 @@ GEM parser (3.3.0.5) ast (~> 2.4.1) racc - pg (1.4.6) + pg (1.5.6) public_suffix (5.0.4) puma (6.4.2) nio4r (~> 2.0) @@ -143,20 +147,20 @@ GEM rack (2.2.9) rack-test (2.1.0) rack (>= 1.3) - rails (6.1.7.6) - actioncable (= 6.1.7.6) - actionmailbox (= 6.1.7.6) - actionmailer (= 6.1.7.6) - actionpack (= 6.1.7.6) - actiontext (= 6.1.7.6) - actionview (= 6.1.7.6) - activejob (= 6.1.7.6) - activemodel (= 6.1.7.6) - activerecord (= 6.1.7.6) - activestorage (= 6.1.7.6) - activesupport (= 6.1.7.6) + rails (6.1.7.7) + actioncable (= 6.1.7.7) + actionmailbox (= 6.1.7.7) + actionmailer (= 6.1.7.7) + actionpack (= 6.1.7.7) + actiontext (= 6.1.7.7) + actionview (= 6.1.7.7) + activejob (= 6.1.7.7) + activemodel (= 6.1.7.7) + activerecord (= 6.1.7.7) + activestorage (= 6.1.7.7) + activesupport (= 6.1.7.7) bundler (>= 1.15.0) - railties (= 6.1.7.6) + railties (= 6.1.7.7) sprockets-rails (>= 2.0.0) rails-dom-testing (2.2.0) activesupport (>= 5.0.0) @@ -165,9 +169,9 @@ GEM rails-html-sanitizer (1.6.0) loofah (~> 2.21) nokogiri (~> 1.14) - railties (6.1.7.6) - actionpack (= 6.1.7.6) - activesupport (= 6.1.7.6) + railties (6.1.7.7) + actionpack (= 6.1.7.7) + activesupport (= 6.1.7.7) method_source rake (>= 12.2) thor (~> 1.0) @@ -180,7 +184,7 @@ GEM htmlentities rbpdf-font (~> 1.19.0) rbpdf-font (1.19.1) - redcarpet (3.5.1) + redcarpet (3.6.0) regexp_parser (2.9.0) request_store (1.5.1) rack (>= 1.4) @@ -188,43 +192,48 @@ GEM roadie (5.2.1) css_parser (~> 1.4) nokogiri (~> 1.15) - roadie-rails (3.0.0) - railties (>= 5.1, < 7.1) + roadie-rails (3.1.0) + railties (>= 5.1, < 8.0) roadie (~> 5.0) rotp (6.3.0) - rouge (3.28.0) + rouge (4.2.1) rqrcode (2.2.0) chunky_png (~> 1.0) rqrcode_core (~> 1.0) rqrcode_core (1.2.0) - rubocop (1.26.1) + rubocop (1.57.2) + json (~> 2.3) + language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.1.0.0) + parser (>= 3.2.2.4) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) - rexml - rubocop-ast (>= 1.16.0, < 2.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.1, < 2.0) ruby-progressbar (~> 1.7) - unicode-display_width (>= 1.4.0, < 3.0) + unicode-display_width (>= 2.4.0, < 3.0) rubocop-ast (1.31.2) parser (>= 3.3.0.4) - rubocop-performance (1.13.3) + rubocop-performance (1.19.1) rubocop (>= 1.7.0, < 2.0) rubocop-ast (>= 0.4.0) - rubocop-rails (2.14.2) + rubocop-rails (2.22.2) activesupport (>= 4.2.0) rack (>= 1.1) - rubocop (>= 1.7.0, < 2.0) + rubocop (>= 1.33.0, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) rubyzip (2.3.2) sanitize (6.1.0) crass (~> 1.0.2) nokogiri (>= 1.12.0) - selenium-webdriver (3.142.7) - childprocess (>= 0.5, < 4.0) - rubyzip (>= 1.2.2) - simplecov (0.21.2) + selenium-webdriver (4.18.1) + base64 (~> 0.2) + rexml (~> 3.2, >= 3.2.5) + rubyzip (>= 1.2.2, < 3.0) + websocket (~> 1.0) + simplecov (0.22.0) docile (~> 1.1) simplecov-html (~> 0.11) simplecov_json_formatter (~> 0.1) @@ -237,21 +246,21 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.4.4) - strscan (3.1.0) + sqlite3 (1.6.9) + mini_portile2 (~> 2.8.0) thor (1.3.1) timeout (0.4.1) tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) - webdrivers (4.6.1) - nokogiri (~> 1.6) - rubyzip (>= 1.3.0) - selenium-webdriver (>= 3.0, < 4.0) webrick (1.8.1) + websocket (1.2.10) websocket-driver (0.7.6) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) + with_advisory_lock (5.1.0) + activerecord (>= 6.1) + zeitwerk (>= 2.6) xpath (3.2.0) nokogiri (~> 1.8) yard (0.9.36) @@ -263,49 +272,48 @@ PLATFORMS DEPENDENCIES actionpack-xml_parser addressable - bundler (>= 1.12.0) - capybara (~> 3.38.0) + capybara (>= 3.39) commonmarker (~> 0.23.8) - csv (~> 3.2.0) + csv (~> 3.2.6) deckar01-task_list (= 2.3.2) ffi html-pipeline (~> 2.13.2) - i18n (~> 1.10.0) + i18n (~> 1.14.1) listen (~> 3.3) - mail (~> 2.7.1) + mail (~> 2.8.1) marcel - mini_magick (~> 4.11.0) + mini_magick (~> 4.12.0) mini_mime (~> 1.1.0) mocha (>= 2.0.1) mysql2 (~> 0.5.0) - net-imap (~> 0.2.2) + net-imap (~> 0.3.4) net-ldap (~> 0.17.0) - net-pop (~> 0.1.1) - net-smtp (~> 0.3.0) + net-pop (~> 0.1.2) + net-smtp (~> 0.3.3) nokogiri (~> 1.15.2) - pg (~> 1.4.2) + pg (~> 1.5.3) puma - rails (= 6.1.7.6) + rails (= 6.1.7.7) rails-dom-testing rbpdf (~> 1.21.3) - redcarpet (~> 3.5.1) + redcarpet (~> 3.6.0) request_store (~> 1.5.0) rexml - roadie-rails (~> 3.0.0) + roadie-rails (~> 3.1.0) rotp (>= 5.0.0) - rouge (~> 3.28.0) + rouge (~> 4.2.0) rqrcode - rubocop (~> 1.26.0) - rubocop-performance (~> 1.13.0) - rubocop-rails (~> 2.14.0) + rubocop (~> 1.57.0) + rubocop-performance (~> 1.19.0) + rubocop-rails (~> 2.22.1) rubyzip (~> 2.3.0) sanitize (~> 6.0) - selenium-webdriver (~> 3.142.7) - simplecov (~> 0.21.2) - sqlite3 (~> 1.4.0) + selenium-webdriver (>= 4.11.0) + simplecov (~> 0.22.0) + sqlite3 (~> 1.6.0) tzinfo-data - webdrivers (= 4.6.1) webrick + with_advisory_lock yard RUBY VERSION diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix index 2d06be35466a..9329c0a111e6 100644 --- a/pkgs/applications/version-management/redmine/default.nix +++ b/pkgs/applications/version-management/redmine/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchurl, bundlerEnv, ruby, makeWrapper, nixosTests }: let - version = "5.0.6"; + version = "5.1.2"; rubyEnv = bundlerEnv { name = "redmine-env-${version}"; @@ -16,7 +16,7 @@ in src = fetchurl { url = "https://www.redmine.org/releases/${pname}-${version}.tar.gz"; - hash = "sha256-SI/gjzeo6xARQVkiqOp0O3842Kel+IIpUKNKN13PCO4="; + hash = "sha256-JsDKCpqu4c65g4Jb8SZsmbCFC/ATwXhxP1o7AIABISM="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix index 1babe5faca5a..10c5de5ed7e2 100644 --- a/pkgs/applications/version-management/redmine/gemset.nix +++ b/pkgs/applications/version-management/redmine/gemset.nix @@ -5,10 +5,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1fdbks9byqqlkd6glj6lkz5f1z6948hh8fhv9x5pzqciralmz142"; + sha256 = "1br4vjv1si1gvhh8p96r95crljqwbx3nlzbkkdqg21xq8f9106kl"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; actionmailbox = { dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail"]; @@ -16,10 +16,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1rfya6qgsl14cm9l2w7h7lg4znsyg3gqiskhqr8wn76sh0x2hln0"; + sha256 = "1i21621aiv233pa8fp1pvibwgbzzdddp0bx44qqn16yca6z35zrj"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; actionmailer = { dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "rails-dom-testing"]; @@ -27,10 +27,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0jr9jpf542svzqz8x68s08jnf30shxrrh7rq1a0s7jia5a5zx3qd"; + sha256 = "0irkj00z2mzsvbrpdl8sd08k04hz5lhvy8rfkzhx2sqq5x1n155a"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; actionpack = { dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"]; @@ -38,10 +38,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0vf6ncs647psa9p23d2108zgmlf0pr7gcjr080yg5yf68gyhs53k"; + sha256 = "15jp9a1mgz8xjm618s8g69d70w19nn2svav4fhz3aarjwfbkvwj7"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; actionpack-xml_parser = { dependencies = ["actionpack" "railties"]; @@ -60,10 +60,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1i8s3v6m8q3y17c40l6d3k2vs1mdqr0y1lfm7i6dfbj2y673lk9r"; + sha256 = "0hjm6vapqq1f7addwl71qwzn72lnmq686ypnbyhd873hqlnzangf"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; actionview = { dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"]; @@ -71,10 +71,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1s4c1n5lv31sc7w4w74xz8gzyq3sann00bm4l7lxgy3vgi2wqkid"; + sha256 = "1hkdqf299dx8bgvgpgknf37kcbprqgq0iy8xdipww6pmbbc45bwk"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; activejob = { dependencies = ["activesupport" "globalid"]; @@ -82,10 +82,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1641003plszig5ybhrqy90fv43l1vcai5h35qmhh9j12byk5hp26"; + sha256 = "06rp7kks22wrc55vric8yh0kg137jsiwd62jimdiqhh9bp48jbbm"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; activemodel = { dependencies = ["activesupport"]; @@ -93,10 +93,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "148szdj5jlnfpv3nmy8cby8rxgpdvs43f3rzqby1f7a0l2knd3va"; + sha256 = "0zz32997k2fsyd0fzrh8f79yjr6hv3i4j9wykkxncl02j8dhrkay"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; activerecord = { dependencies = ["activemodel" "activesupport"]; @@ -104,10 +104,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0n7hg582ajdncilfk1kkw8qfdchymp2gqgkad1znlhlmclihsafr"; + sha256 = "0qzymgyrvw2k32ldabp2jr0zgp6z9w8smyb946qgvs9zfs4n2qnn"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; activestorage = { dependencies = ["actionpack" "activejob" "activerecord" "activesupport" "marcel" "mini_mime"]; @@ -115,10 +115,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "16pylwnqsbvq2wxhl7k1rnravbr3dgpjmnj0psz5gijgkydd52yc"; + sha256 = "12i033l3m41vr3qs7msy4p88a6pglx9vnsh5nakp0b6abf6mv5mk"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; activesupport = { dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"]; @@ -126,10 +126,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1nhrdih0rk46i0s6x7nqhbypmj1hf23zl5gfl9xasb6k4r2a1dxk"; + sha256 = "0r2i9b0pm0b1dy8fc7kyls1g7f0bcnyq53v825rykibzdqfqdfgp"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; addressable = { dependencies = ["public_suffix"]; @@ -152,6 +152,16 @@ }; version = "2.4.2"; }; + base64 = { + groups = ["default" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "01qml0yilb9basf7is2614skjp8384h2pycfx86cr8023arfj98g"; + type = "gem"; + }; + version = "0.2.0"; + }; builder = { groups = ["default"]; platforms = []; @@ -168,20 +178,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "123198zk2ak8mziwa5jc3ckgpmsg08zn064n3aywnqm9s1bwjv3v"; + sha256 = "1vxfah83j6zpw3v5hic0j70h519nvmix2hbszmjwm8cfawhagns2"; type = "gem"; }; - version = "3.38.0"; - }; - childprocess = { - groups = ["default" "test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5"; - type = "gem"; - }; - version = "3.0.0"; + version = "3.40.0"; }; chunky_png = { groups = ["default"]; @@ -214,7 +214,7 @@ version = "1.2.3"; }; crass = { - groups = ["common_mark" "default"]; + groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; @@ -244,6 +244,16 @@ }; version = "3.2.9"; }; + date = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "149jknsq999gnhy865n33fkk22s0r447k76x9pmcnnwldfv2q7wp"; + type = "gem"; + }; + version = "3.3.4"; + }; deckar01-task_list = { dependencies = ["html-pipeline"]; groups = ["common_mark"]; @@ -255,16 +265,6 @@ }; version = "2.3.2"; }; - digest = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "01qkpbkxq83ip3iysfh2kjrg9sh2n2q91prhyxh3vq10lcfzv9l1"; - type = "gem"; - }; - version = "3.1.1"; - }; docile = { groups = ["default" "test"]; platforms = []; @@ -318,7 +318,7 @@ }; html-pipeline = { dependencies = ["activesupport" "nokogiri"]; - groups = ["common_mark"]; + groups = ["common_mark" "default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; @@ -343,10 +343,30 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0b2qyvnk4yynlg17ymkq4g5xgr275637fhl1mjh0valw3cb1fhhg"; + sha256 = "0lbm33fpb3w06wd2231sg58dwlwgjsvym93m548ajvl6s3mfvpn7"; type = "gem"; }; - version = "1.10.0"; + version = "1.14.4"; + }; + json = { + groups = ["default" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0r9jmjhg2ly3l736flk7r2al47b5c8cayh0gqkq0yhjqzc9a6zhq"; + type = "gem"; + }; + version = "2.7.1"; + }; + language_server-protocol = { + groups = ["default" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gvb1j8xsqxms9mww01rmdl78zkd72zgxaap56bhv8j45z05hp1x"; + type = "gem"; + }; + version = "3.17.0.3"; }; listen = { dependencies = ["rb-fsevent" "rb-inotify"]; @@ -371,15 +391,15 @@ version = "2.22.0"; }; mail = { - dependencies = ["mini_mime"]; + dependencies = ["mini_mime" "net-imap" "net-pop" "net-smtp"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc"; + sha256 = "1bf9pysw1jfgynv692hhaycfxa8ckay1gjw5hz3madrbrynryfzc"; type = "gem"; }; - version = "2.7.1"; + version = "2.8.1"; }; marcel = { groups = ["default"]; @@ -416,10 +436,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1aj604x11d9pksbljh0l38f70b558rhdgji1s9i763hiagvvx2hs"; + sha256 = "0slh78f9z6n0l1i2km7m48yz7l4fjrk88sj1f4mh1wb39sl2yc37"; type = "gem"; }; - version = "4.11.0"; + version = "4.12.0"; }; mini_mime = { groups = ["default" "test"]; @@ -433,7 +453,15 @@ }; mini_portile2 = { groups = ["common_mark" "default" "test"]; - platforms = []; + platforms = [{ + engine = "maglev"; + } { + engine = "mingw"; + } { + engine = "mingw"; + } { + engine = "ruby"; + }]; source = { remotes = ["https://rubygems.org"]; sha256 = "1kl9c3kdchjabrihdqfmcplk3lq4cw1rr9f378y6q22qwy5dndvs"; @@ -481,15 +509,15 @@ version = "0.5.6"; }; net-imap = { - dependencies = ["digest" "net-protocol" "strscan"]; + dependencies = ["date" "net-protocol"]; groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0wkawmda0iawc3f6klmfzj727phwy66yydqksvfzpjwg69jfmcvn"; + sha256 = "0lf7wqg7czhaj51qsnmn28j7jmcxhkh3m28rl1cjrqsgjxhwj7r3"; type = "gem"; }; - version = "0.2.4"; + version = "0.3.7"; }; net-ldap = { groups = ["ldap"]; @@ -589,10 +617,10 @@ }]; source = { remotes = ["https://rubygems.org"]; - sha256 = "07m6lxljabw9kyww5k5lgsxsznsm1v5l14r1la09gqka9b5kv3yr"; + sha256 = "071b55bhsz7mivlnp2kv0a11msnl7xg5awvk8mlflpl270javhsb"; type = "gem"; }; - version = "1.4.6"; + version = "1.5.6"; }; public_suffix = { groups = ["default" "test"]; @@ -652,10 +680,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0gf5dqabzd0mf0q39a07kf0smdm2cv2z5swl3zr4cz50yb85zz3l"; + sha256 = "0jqp5fggkxbjm4rhsywa7j5rvwkzp6gbaa1mg4k8zxrbfczhxwwl"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; rails-dom-testing = { dependencies = ["activesupport" "minitest" "nokogiri"]; @@ -685,10 +713,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1vq4ahyg9hraixxmmwwypdnpcylpvznvdxhj4xa23xk45wzbl3h7"; + sha256 = "07qxgrd92yq0cckrmzx54glvjdd1xx87xysgvaqd75hn50klp8ip"; type = "gem"; }; - version = "6.1.7.6"; + version = "6.1.7.7"; }; rainbow = { groups = ["default" "test"]; @@ -753,14 +781,14 @@ version = "1.19.1"; }; redcarpet = { - groups = ["common_mark" "markdown"]; + groups = ["markdown"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0bvk8yyns5s1ls437z719y5sdv9fr8kfs8dmr6g8s761dv5n8zvi"; + sha256 = "1sg9sbf9pm91l7lac7fs4silabyn0vflxwaa2x3lrzsm0ff8ilca"; type = "gem"; }; - version = "3.5.1"; + version = "3.6.0"; }; regexp_parser = { groups = ["default" "test"]; @@ -810,10 +838,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "16j1cjhq8xqr77vyf7m7ip2132619wdnpvlbig4cnn96yyi0cnan"; + sha256 = "08fycjfbg9rqksk3bch8qv76g7acd1jbxy2y68lsqz1gxfky2ias"; type = "gem"; }; - version = "3.0.0"; + version = "3.1.0"; }; rotp = { groups = ["default"]; @@ -830,10 +858,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "080fswzii68wnbsg7pgq55ba7p289sqjlxwp4vch0h32qy1f8v8d"; + sha256 = "1zd1pdldi6h8x27dqim7cy8m69xr01aw5c8k1zhkz497n4np6wgk"; type = "gem"; }; - version = "3.28.0"; + version = "4.2.1"; }; rqrcode = { dependencies = ["chunky_png" "rqrcode_core"]; @@ -857,15 +885,15 @@ version = "1.2.0"; }; rubocop = { - dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"]; + dependencies = ["json" "language_server-protocol" "parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"]; groups = ["test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "06105yrqajpm5l07fng1nbk55y9490hny542zclnan8hg841pjgl"; + sha256 = "06qnp5zs233j4f59yyqrg8al6hr9n4a7vcdg3p31v0np8bz9srwg"; type = "gem"; }; - version = "1.26.1"; + version = "1.57.2"; }; rubocop-ast = { dependencies = ["parser"]; @@ -884,21 +912,21 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "17ny81dy5gjrvris8mni7la8yjg57snphyg9nmvnc3al7yhwr74x"; + sha256 = "1pzsrnjmrachdjxzl9jpw47cydicn3408vgdg3a4bss4v5r42rjj"; type = "gem"; }; - version = "1.13.3"; + version = "1.19.1"; }; rubocop-rails = { - dependencies = ["activesupport" "rack" "rubocop"]; + dependencies = ["activesupport" "rack" "rubocop" "rubocop-ast"]; groups = ["test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "14xagb3jbms5mlcf932kx1djn2q4k952d4xia75ll36vh7xf2fpp"; + sha256 = "0ym0h2w97b8c2h6zl44m22lzg253qkmim0ali32aiy58ddvbj0mm"; type = "gem"; }; - version = "2.14.2"; + version = "2.22.2"; }; ruby-progressbar = { groups = ["default" "test"]; @@ -932,7 +960,7 @@ }; sanitize = { dependencies = ["crass" "nokogiri"]; - groups = ["common_mark"]; + groups = ["default"]; platforms = []; source = { remotes = ["https://rubygems.org"]; @@ -942,15 +970,15 @@ version = "6.1.0"; }; selenium-webdriver = { - dependencies = ["childprocess" "rubyzip"]; + dependencies = ["base64" "rexml" "rubyzip" "websocket"]; groups = ["test"]; platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "0adcvp86dinaqq3nhf8p3m0rl2g6q0a4h52k0i7kdnsg1qz9k86y"; + sha256 = "1asysih4l1mv24wqxrbnz0c0454kw3dhqaj6nsa8pyn9fjjdms5b"; type = "gem"; }; - version = "3.142.7"; + version = "4.18.1"; }; simplecov = { dependencies = ["docile" "simplecov-html" "simplecov_json_formatter"]; @@ -958,10 +986,10 @@ platforms = []; source = { remotes = ["https://rubygems.org"]; - sha256 = "1hrv046jll6ad1s964gsmcq4hvkr3zzr6jc7z1mns22mvfpbc3cr"; + sha256 = "198kcbrjxhhzca19yrdcd6jjj9sb51aaic3b0sc3pwjghg3j49py"; type = "gem"; }; - version = "0.21.2"; + version = "0.22.0"; }; simplecov-html = { groups = ["default" "test"]; @@ -1006,6 +1034,7 @@ version = "3.4.2"; }; sqlite3 = { + dependencies = ["mini_portile2"]; groups = ["default"]; platforms = [{ engine = "maglev"; @@ -1018,20 +1047,10 @@ }]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1z1wa639c278bsipczn6kv8b13fj85pi8gk7x462chqx6k0wm0ax"; + sha256 = "08irz5llz31im8pmkk5k0kw433jyyji1qa98xkdmpphncdjr38am"; type = "gem"; }; - version = "1.4.4"; - }; - strscan = { - groups = ["default"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "0mamrl7pxacbc79ny5hzmakc9grbjysm3yy6119ppgsg44fsif01"; - type = "gem"; - }; - version = "3.1.0"; + version = "1.6.9"; }; thor = { groups = ["default"]; @@ -1074,17 +1093,6 @@ }; version = "2.5.0"; }; - webdrivers = { - dependencies = ["nokogiri" "rubyzip" "selenium-webdriver"]; - groups = ["test"]; - platforms = []; - source = { - remotes = ["https://rubygems.org"]; - sha256 = "1naymcfmm9pkf0f67xd99d9f6dpv477ggyvc1c04gxifirynfydp"; - type = "gem"; - }; - version = "4.6.1"; - }; webrick = { groups = ["default"]; platforms = []; @@ -1095,6 +1103,16 @@ }; version = "1.8.1"; }; + websocket = { + groups = ["default" "test"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1a4zc8d0d91c3xqwapda3j3zgpfwdbj76hkb69xn6qvfkfks9h9c"; + type = "gem"; + }; + version = "1.2.10"; + }; websocket-driver = { dependencies = ["websocket-extensions"]; groups = ["default"]; @@ -1116,6 +1134,17 @@ }; version = "0.1.5"; }; + with_advisory_lock = { + dependencies = ["activerecord" "zeitwerk"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1mzy29advrdczf88j2ffvck4kf8sfhxn07sym9ciq9rv061cv4h6"; + type = "gem"; + }; + version = "5.1.0"; + }; xpath = { dependencies = ["nokogiri"]; groups = ["default" "test"]; From 187a5f88dc3f2cc04610a19a6780b33134197a90 Mon Sep 17 00:00:00 2001 From: Felix Singer Date: Sun, 24 Mar 2024 22:13:04 +0100 Subject: [PATCH 6/6] redmine: Move package files into pkgs/by-name directory Signed-off-by: Felix Singer --- .../re}/redmine/0001-python3.patch | 0 .../version-management => by-name/re}/redmine/Gemfile | 0 .../version-management => by-name/re}/redmine/Gemfile.lock | 0 .../version-management => by-name/re}/redmine/gemset.nix | 0 .../redmine/default.nix => by-name/re/redmine/package.nix} | 0 .../version-management => by-name/re}/redmine/update.sh | 0 pkgs/top-level/all-packages.nix | 2 -- 7 files changed, 2 deletions(-) rename pkgs/{applications/version-management => by-name/re}/redmine/0001-python3.patch (100%) rename pkgs/{applications/version-management => by-name/re}/redmine/Gemfile (100%) rename pkgs/{applications/version-management => by-name/re}/redmine/Gemfile.lock (100%) rename pkgs/{applications/version-management => by-name/re}/redmine/gemset.nix (100%) rename pkgs/{applications/version-management/redmine/default.nix => by-name/re/redmine/package.nix} (100%) rename pkgs/{applications/version-management => by-name/re}/redmine/update.sh (100%) diff --git a/pkgs/applications/version-management/redmine/0001-python3.patch b/pkgs/by-name/re/redmine/0001-python3.patch similarity index 100% rename from pkgs/applications/version-management/redmine/0001-python3.patch rename to pkgs/by-name/re/redmine/0001-python3.patch diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/by-name/re/redmine/Gemfile similarity index 100% rename from pkgs/applications/version-management/redmine/Gemfile rename to pkgs/by-name/re/redmine/Gemfile diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/by-name/re/redmine/Gemfile.lock similarity index 100% rename from pkgs/applications/version-management/redmine/Gemfile.lock rename to pkgs/by-name/re/redmine/Gemfile.lock diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/by-name/re/redmine/gemset.nix similarity index 100% rename from pkgs/applications/version-management/redmine/gemset.nix rename to pkgs/by-name/re/redmine/gemset.nix diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/by-name/re/redmine/package.nix similarity index 100% rename from pkgs/applications/version-management/redmine/default.nix rename to pkgs/by-name/re/redmine/package.nix diff --git a/pkgs/applications/version-management/redmine/update.sh b/pkgs/by-name/re/redmine/update.sh similarity index 100% rename from pkgs/applications/version-management/redmine/update.sh rename to pkgs/by-name/re/redmine/update.sh diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d3bab087bf0a..d4c28d05aa48 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12529,8 +12529,6 @@ with pkgs; redir = callPackage ../tools/networking/redir { }; - redmine = callPackage ../applications/version-management/redmine { }; - redpanda-client = callPackage ../servers/redpanda { }; redpanda-server = redpanda-client.server;