sup 1.2 → 1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/checks.yml +16 -2
  3. data/.gitmodules +1 -0
  4. data/History.txt +16 -0
  5. data/Manifest.txt +12 -1
  6. data/contrib/nix/Gemfile +2 -0
  7. data/contrib/nix/Gemfile.lock +37 -16
  8. data/contrib/nix/gem-install-shell.nix +2 -0
  9. data/contrib/nix/gemset.nix +83 -31
  10. data/contrib/nix/ruby2.4-Gemfile.lock +5 -1
  11. data/contrib/nix/ruby2.4-gemset.nix +22 -2
  12. data/contrib/nix/ruby2.4-shell.nix +2 -6
  13. data/contrib/nix/ruby2.5-Gemfile.lock +5 -1
  14. data/contrib/nix/ruby2.5-gemset.nix +22 -2
  15. data/contrib/nix/ruby2.5-shell.nix +2 -6
  16. data/contrib/nix/ruby2.6-Gemfile.lock +5 -1
  17. data/contrib/nix/ruby2.6-gemset.nix +22 -2
  18. data/contrib/nix/ruby2.6-shell.nix +2 -6
  19. data/contrib/nix/ruby2.7-Gemfile.lock +91 -0
  20. data/contrib/nix/ruby2.7-gemset.nix +359 -0
  21. data/contrib/nix/ruby2.7-shell.nix +2 -11
  22. data/contrib/nix/ruby3.0-Gemfile.lock +91 -0
  23. data/contrib/nix/ruby3.0-gemset.nix +359 -0
  24. data/contrib/nix/ruby3.0-shell.nix +2 -11
  25. data/contrib/nix/ruby3.1-shell.nix +9 -7
  26. data/contrib/nix/ruby3.2-shell.nix +9 -7
  27. data/contrib/nix/ruby3.3-shell.nix +9 -7
  28. data/contrib/nix/ruby3.4-shell.nix +36 -0
  29. data/contrib/nix/test-all-rubies.sh +1 -1
  30. data/lib/sup/crypto.rb +7 -5
  31. data/lib/sup/maildir.rb +4 -0
  32. data/lib/sup/mbox.rb +25 -7
  33. data/lib/sup/message.rb +13 -10
  34. data/lib/sup/modes/edit_message_mode.rb +5 -5
  35. data/lib/sup/util.rb +9 -2
  36. data/lib/sup/version.rb +1 -1
  37. data/man/sup-add.1 +15 -15
  38. data/man/sup-config.1 +9 -9
  39. data/man/sup-dump.1 +13 -12
  40. data/man/sup-import-dump.1 +20 -20
  41. data/man/sup-psych-ify-config-files.1 +11 -11
  42. data/man/sup-recover-sources.1 +18 -18
  43. data/man/sup-sync-back-maildir.1 +18 -17
  44. data/man/sup-sync.1 +29 -29
  45. data/man/sup-tweak-labels.1 +22 -21
  46. data/man/sup.1 +21 -21
  47. data/sup.gemspec +2 -0
  48. data/test/dummy_source.rb +6 -0
  49. data/test/fixtures/embedded-message-rfc6532.eml +33 -0
  50. data/test/fixtures/invalid-date.eml +8 -0
  51. data/test/gnupg_test_home/private-keys-v1.d/26C05E44706A8E230B3255BB9532B34DC9420232.key +42 -0
  52. data/test/gnupg_test_home/private-keys-v1.d/D187ADC90EC4DEB7047678EAA37E33A53A465D47.key +5 -0
  53. data/test/gnupg_test_home/private-keys-v1.d/FB2D9BD3B1BE90B5BCF697781F8404224B0FCF5B.key +5 -0
  54. data/test/gnupg_test_home/pubring.gpg +0 -0
  55. data/test/gnupg_test_home/receiver_pubring.gpg +0 -0
  56. data/test/gnupg_test_home/receiver_secring.gpg +0 -0
  57. data/test/gnupg_test_home/regen_keys.sh +11 -2
  58. data/test/gnupg_test_home/secring.gpg +0 -0
  59. data/test/gnupg_test_home/sup-test-2@foo.bar.asc +20 -20
  60. data/test/integration/test_maildir.rb +15 -1
  61. data/test/integration/test_mbox.rb +10 -0
  62. data/test/test_crypto.rb +108 -71
  63. data/test/test_message.rb +42 -0
  64. data/test/unit/test_contact.rb +1 -1
  65. data/test/unit/test_edit_message_mode.rb +94 -0
  66. data/test/unit/test_person.rb +3 -3
  67. data/test/unit/test_rmail_message.rb +36 -0
  68. data/test/unit/util/test_string.rb +3 -3
  69. metadata +50 -5
  70. data/test/gnupg_test_home/private-keys-v1.d/306D2EE90FF0014B5B9FD07E265C751791674140.key +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b3d74175eddced998ccf3d918989ba1f90781bb0f2432df5cc11ae2cf3a5ba9
4
- data.tar.gz: f415405432adaa8fcfa9a10640107da0cce2575afee758902b934b137e1077e3
3
+ metadata.gz: 3a01c7e42026b08f66082ec94ced164f0be41c86e9a5cc01a4894b61f712efb9
4
+ data.tar.gz: dfd7da5b3742dac1e07d2c55530cb539f543a26a48f716e1ee878474d43a1671
5
5
  SHA512:
6
- metadata.gz: 1e3f012755517d29e9c2c0f5df80eac0432390bcbdd3108e32f921794aeafb2e791e9e6ff64b0663d1c1495b0040ebb1bbe8c006113380b787715ba85edf34dd
7
- data.tar.gz: bc829f5939d98acd30f8c241b4f4defd3d6e8c09bde0a39802e28a5a2ecb78a15d7d7e4f25aa7456e0ddd6e20d01453d0715d8947942c74808c65037720fb25b
6
+ metadata.gz: e4b15c43896ff49fe700c1aa4c63f85cf7dc3241f1bdc258e34e8053dddcaff733b951b5f2883cfde05b73c001f94c1bb8102b4e0413eab1a3de99a4aad8a263
7
+ data.tar.gz: 4c3834600e0eb738500029b797076c6f0a7d52d29609b4ef7168d0ff56a9b34b902ee7c647afccc7c9fa0cd6962116df3fe6e3c5a943f257a8bd46b7b96e2a28
@@ -15,7 +15,7 @@ jobs:
15
15
  matrix:
16
16
  os:
17
17
  - ubuntu-latest
18
- - macos-latest
18
+ - macos-14
19
19
  ruby-version:
20
20
  - '2.4'
21
21
  - '2.5'
@@ -25,6 +25,20 @@ jobs:
25
25
  - '3.1'
26
26
  - '3.2'
27
27
  - '3.3'
28
+ - '3.4'
29
+ exclude:
30
+ # We use xapian-bindings 1.4.22 for Ruby < 3.1, but it does not link on MacOS 14:
31
+ # https://github.com/Garaio-REM/xapian-ruby/issues/10
32
+ - os: macos-14
33
+ ruby-version: '2.4'
34
+ - os: macos-14
35
+ ruby-version: '2.5'
36
+ - os: macos-14
37
+ ruby-version: '2.6'
38
+ - os: macos-14
39
+ ruby-version: '2.7'
40
+ - os: macos-14
41
+ ruby-version: '3.0'
28
42
  runs-on: ${{ matrix.os }}
29
43
  env:
30
44
  nixfile: "contrib/nix/ruby${{ matrix.ruby-version }}-shell.nix"
@@ -46,7 +60,7 @@ jobs:
46
60
  run: brew install bash
47
61
  if: runner.os == 'macOS'
48
62
  - name: Install nix
49
- uses: nixbuild/nix-quick-install-action@v21
63
+ uses: nixbuild/nix-quick-install-action@v30
50
64
  - name: Import nix cache
51
65
  run: |
52
66
  if [ -f /tmp/nixcache ] ; then
data/.gitmodules CHANGED
@@ -1,3 +1,4 @@
1
1
  [submodule "doc/wiki"]
2
2
  path = doc/wiki
3
3
  url = https://github.com/sup-heliotrope/sup.wiki.git
4
+ branch = master
data/History.txt CHANGED
@@ -1,3 +1,19 @@
1
+ == 1.3 / 2025-04-21
2
+
3
+ * #596: If a message lacks a Date header, or the Date header is not in valid
4
+ RFC2822 format, the local delivery timestamp of the message will now be used
5
+ instead. Fixes a bug where such messages would constantly jump to the top of
6
+ the thread list.
7
+ * #502: Fixed incorrect Content-Transfer-Encoding headers when sending GPG
8
+ signed or encrypted messages with attachments.
9
+ * #522: Sup now uses the configured signing key when sending a message that is
10
+ both signed and encrypted. Previously it would ignore the configured key and
11
+ use the GPG default signing key.
12
+ * #489: Attachments are now encoded if they have lines longer than 998
13
+ characters.
14
+ * #602: The message/global MIME type is now recognised as an embedded message.
15
+ * Sup is now tested on Ruby 3.4.
16
+
1
17
  == 1.2 / 2024-04-21
2
18
 
3
19
  * #619: Sup is now compatible with and tested on Ruby 3.2 and Ruby 3.3.
data/Manifest.txt CHANGED
@@ -37,11 +37,16 @@ contrib/nix/ruby2.5-shell.nix
37
37
  contrib/nix/ruby2.6-Gemfile.lock
38
38
  contrib/nix/ruby2.6-gemset.nix
39
39
  contrib/nix/ruby2.6-shell.nix
40
+ contrib/nix/ruby2.7-Gemfile.lock
41
+ contrib/nix/ruby2.7-gemset.nix
40
42
  contrib/nix/ruby2.7-shell.nix
43
+ contrib/nix/ruby3.0-Gemfile.lock
44
+ contrib/nix/ruby3.0-gemset.nix
41
45
  contrib/nix/ruby3.0-shell.nix
42
46
  contrib/nix/ruby3.1-shell.nix
43
47
  contrib/nix/ruby3.2-shell.nix
44
48
  contrib/nix/ruby3.3-shell.nix
49
+ contrib/nix/ruby3.4-shell.nix
45
50
  contrib/nix/test-all-rubies.sh
46
51
  devel/console.sh
47
52
  devel/count-loc.sh
@@ -127,7 +132,9 @@ test/fixtures/bad-content-transfer-encoding-1.eml
127
132
  test/fixtures/binary-content-transfer-encoding-2.eml
128
133
  test/fixtures/blank-header-fields.eml
129
134
  test/fixtures/contacts.txt
135
+ test/fixtures/embedded-message-rfc6532.eml
130
136
  test/fixtures/embedded-message.eml
137
+ test/fixtures/invalid-date.eml
131
138
  test/fixtures/mailing-list-header.eml
132
139
  test/fixtures/malicious-attachment-names.eml
133
140
  test/fixtures/missing-from-to.eml
@@ -144,7 +151,9 @@ test/fixtures/utf8-header.eml
144
151
  test/fixtures/zimbra-quote-with-bottom-post.eml
145
152
  test/gnupg_test_home/.gpg-v21-migrated
146
153
  test/gnupg_test_home/gpg.conf
147
- test/gnupg_test_home/private-keys-v1.d/306D2EE90FF0014B5B9FD07E265C751791674140.key
154
+ test/gnupg_test_home/private-keys-v1.d/26C05E44706A8E230B3255BB9532B34DC9420232.key
155
+ test/gnupg_test_home/private-keys-v1.d/D187ADC90EC4DEB7047678EAA37E33A53A465D47.key
156
+ test/gnupg_test_home/private-keys-v1.d/FB2D9BD3B1BE90B5BCF697781F8404224B0FCF5B.key
148
157
  test/gnupg_test_home/pubring.gpg
149
158
  test/gnupg_test_home/receiver_pubring.gpg
150
159
  test/gnupg_test_home/receiver_secring.gpg
@@ -163,9 +172,11 @@ test/test_messages_dir.rb
163
172
  test/test_yaml_regressions.rb
164
173
  test/unit/service/test_label_service.rb
165
174
  test/unit/test_contact.rb
175
+ test/unit/test_edit_message_mode.rb
166
176
  test/unit/test_horizontal_selector.rb
167
177
  test/unit/test_locale_fiddler.rb
168
178
  test/unit/test_person.rb
179
+ test/unit/test_rmail_message.rb
169
180
  test/unit/util/test_query.rb
170
181
  test/unit/util/test_string.rb
171
182
  test/unit/util/test_uri.rb
data/contrib/nix/Gemfile CHANGED
@@ -12,6 +12,8 @@ gem "chronic"
12
12
  gem "unicode", "~> 0.4.4"
13
13
  gem "unicode-display_width"
14
14
  gem "string-scrub" if /^2\.0\./ =~ RUBY_VERSION
15
+ gem "benchmark"
16
+ gem "fiddle"
15
17
 
16
18
  gem "bundler", ">= 1.3", "< 3"
17
19
  gem "rake"
@@ -1,35 +1,43 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- ast (2.4.2)
4
+ ast (2.4.3)
5
+ benchmark (0.4.0)
5
6
  chronic (0.10.2)
6
7
  coderay (1.1.3)
8
+ fiddle (1.1.6)
7
9
  gpgme (2.0.24)
8
10
  mini_portile2 (~> 2.7)
9
- highline (3.0.1)
10
- json (2.7.2)
11
- language_server-protocol (3.17.0.3)
11
+ highline (3.1.2)
12
+ reline
13
+ io-console (0.8.0)
14
+ json (2.10.2)
15
+ language_server-protocol (3.17.0.4)
12
16
  locale (2.1.4)
13
17
  lockfile (2.1.3)
18
+ logger (1.7.0)
14
19
  method_source (1.1.0)
15
- mime-types (3.5.2)
20
+ mime-types (3.6.2)
21
+ logger
16
22
  mime-types-data (~> 3.2015)
17
- mime-types-data (3.2024.0305)
18
- mini_portile2 (2.8.6)
19
- minitest (5.22.3)
23
+ mime-types-data (3.2025.0402)
24
+ mini_portile2 (2.8.8)
25
+ minitest (5.25.5)
20
26
  ncursesw (1.4.11)
21
- optimist (3.1.0)
22
- parallel (1.24.0)
23
- parser (3.3.0.5)
27
+ optimist (3.2.1)
28
+ parallel (1.26.3)
29
+ parser (3.3.7.4)
24
30
  ast (~> 2.4.1)
25
31
  racc
26
- pry (0.14.2)
32
+ pry (0.15.2)
27
33
  coderay (~> 1.1)
28
34
  method_source (~> 1.0)
29
- racc (1.7.3)
35
+ racc (1.8.1)
30
36
  rainbow (3.1.1)
31
37
  rake (13.2.1)
32
38
  regexp_parser (2.9.0)
39
+ reline (0.6.1)
40
+ io-console (~> 0.5)
33
41
  rexml (3.2.6)
34
42
  rmail (1.1.4)
35
43
  rr (1.2.1)
@@ -49,16 +57,29 @@ GEM
49
57
  rubocop-packaging (0.5.2)
50
58
  rubocop (>= 1.33, < 2.0)
51
59
  ruby-progressbar (1.13.0)
52
- unicode (0.4.4.4)
60
+ unicode (0.4.4.5)
53
61
  unicode-display_width (2.5.0)
54
- xapian-ruby (1.4.22)
62
+ xapian-ruby (1.4.27)
55
63
 
56
64
  PLATFORMS
57
65
  aarch64-linux
66
+ arm64-darwin-24
67
+ ruby
68
+ x86_64-darwin-17
69
+ x86_64-darwin-18
70
+ x86_64-darwin-19
71
+ x86_64-darwin-20
72
+ x86_64-darwin-21
73
+ x86_64-darwin-22
74
+ x86_64-darwin-23
75
+ x86_64-darwin-24
76
+ x86_64-linux
58
77
 
59
78
  DEPENDENCIES
79
+ benchmark
60
80
  bundler (>= 1.3, < 3)
61
81
  chronic
82
+ fiddle
62
83
  gpgme (>= 2.0.2)
63
84
  highline
64
85
  locale (~> 2.0)
@@ -77,4 +98,4 @@ DEPENDENCIES
77
98
  xapian-ruby (~> 1.2)
78
99
 
79
100
  BUNDLED WITH
80
- 2.4.22
101
+ 2.5.22
@@ -3,6 +3,8 @@ pkgs.mkShell {
3
3
  packages = with pkgs; [
4
4
  ncurses
5
5
  ncurses.dev
6
+ libffi
7
+ libffi.dev
6
8
  libuuid
7
9
  libuuid.dev
8
10
  ruby_3_2
@@ -4,10 +4,20 @@
4
4
  platforms = [];
5
5
  source = {
6
6
  remotes = ["https://rubygems.org"];
7
- sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
7
+ sha256 = "10yknjyn0728gjn6b5syynvrvrwm66bhssbxq8mkhshxghaiailm";
8
8
  type = "gem";
9
9
  };
10
- version = "2.4.2";
10
+ version = "2.4.3";
11
+ };
12
+ benchmark = {
13
+ groups = ["default"];
14
+ platforms = [];
15
+ source = {
16
+ remotes = ["https://rubygems.org"];
17
+ sha256 = "0jl71qcgamm96dzyqk695j24qszhcc7liw74qc83fpjljp2gh4hg";
18
+ type = "gem";
19
+ };
20
+ version = "0.4.0";
11
21
  };
12
22
  chronic = {
13
23
  groups = ["default"];
@@ -29,6 +39,16 @@
29
39
  };
30
40
  version = "1.1.3";
31
41
  };
42
+ fiddle = {
43
+ groups = ["default"];
44
+ platforms = [];
45
+ source = {
46
+ remotes = ["https://rubygems.org"];
47
+ sha256 = "1as92bp6pgkab73kj3mh5d1idjr9wykczz7r9i1pkn82wq4xks3r";
48
+ type = "gem";
49
+ };
50
+ version = "1.1.6";
51
+ };
32
52
  gpgme = {
33
53
  dependencies = ["mini_portile2"];
34
54
  groups = ["default"];
@@ -41,34 +61,45 @@
41
61
  version = "2.0.24";
42
62
  };
43
63
  highline = {
64
+ dependencies = ["reline"];
44
65
  groups = ["default"];
45
66
  platforms = [];
46
67
  source = {
47
68
  remotes = ["https://rubygems.org"];
48
- sha256 = "02ghhvigqbq4252gsi4w8a9klkdkybmbz29ghfp1y6sqzlcb466a";
69
+ sha256 = "0jmvyhjp2v3iq47la7w6psrxbprnbnmzz0hxxski3vzn356x7jv7";
49
70
  type = "gem";
50
71
  };
51
- version = "3.0.1";
72
+ version = "3.1.2";
73
+ };
74
+ io-console = {
75
+ groups = ["default"];
76
+ platforms = [];
77
+ source = {
78
+ remotes = ["https://rubygems.org"];
79
+ sha256 = "18pgvl7lfjpichdfh1g50rpz0zpaqrpr52ybn9liv1v9pjn9ysnd";
80
+ type = "gem";
81
+ };
82
+ version = "0.8.0";
52
83
  };
53
84
  json = {
54
85
  groups = ["default"];
55
86
  platforms = [];
56
87
  source = {
57
88
  remotes = ["https://rubygems.org"];
58
- sha256 = "0b4qsi8gay7ncmigr0pnbxyb17y3h8kavdyhsh7nrlqwr35vb60q";
89
+ sha256 = "01lbdaizhkxmrw4y8j3wpvsryvnvzmg0pfs56c52laq2jgdfmq1l";
59
90
  type = "gem";
60
91
  };
61
- version = "2.7.2";
92
+ version = "2.10.2";
62
93
  };
63
94
  language_server-protocol = {
64
95
  groups = ["default"];
65
96
  platforms = [];
66
97
  source = {
67
98
  remotes = ["https://rubygems.org"];
68
- sha256 = "0gvb1j8xsqxms9mww01rmdl78zkd72zgxaap56bhv8j45z05hp1x";
99
+ sha256 = "0scnz2fvdczdgadvjn0j9d49118aqm3hj66qh8sd2kv6g1j65164";
69
100
  type = "gem";
70
101
  };
71
- version = "3.17.0.3";
102
+ version = "3.17.0.4";
72
103
  };
73
104
  locale = {
74
105
  groups = ["default"];
@@ -90,6 +121,16 @@
90
121
  };
91
122
  version = "2.1.3";
92
123
  };
124
+ logger = {
125
+ groups = ["default"];
126
+ platforms = [];
127
+ source = {
128
+ remotes = ["https://rubygems.org"];
129
+ sha256 = "00q2zznygpbls8asz5knjvvj2brr3ghmqxgr83xnrdj4rk3xwvhr";
130
+ type = "gem";
131
+ };
132
+ version = "1.7.0";
133
+ };
93
134
  method_source = {
94
135
  groups = ["default"];
95
136
  platforms = [];
@@ -101,45 +142,45 @@
101
142
  version = "1.1.0";
102
143
  };
103
144
  mime-types = {
104
- dependencies = ["mime-types-data"];
145
+ dependencies = ["logger" "mime-types-data"];
105
146
  groups = ["default"];
106
147
  platforms = [];
107
148
  source = {
108
149
  remotes = ["https://rubygems.org"];
109
- sha256 = "1r64z0m5zrn4k37wabfnv43wa6yivgdfk6cf2rpmmirlz889yaf1";
150
+ sha256 = "1bv08jvx1g9ifjdyrp5hgalxkv7qxwfmfx0ba43ncrbfda7182b1";
110
151
  type = "gem";
111
152
  };
112
- version = "3.5.2";
153
+ version = "3.6.2";
113
154
  };
114
155
  mime-types-data = {
115
156
  groups = ["default"];
116
157
  platforms = [];
117
158
  source = {
118
159
  remotes = ["https://rubygems.org"];
119
- sha256 = "00x7w5xqsj9m33v3vkmy23wipkkysafksib53ypzn27p5g81w455";
160
+ sha256 = "1h0rhy0zf4ssrdr6cyliqijxga94cd64ij2gkw6jdx3bww1cap25";
120
161
  type = "gem";
121
162
  };
122
- version = "3.2024.0305";
163
+ version = "3.2025.0402";
123
164
  };
124
165
  mini_portile2 = {
125
166
  groups = ["default"];
126
167
  platforms = [];
127
168
  source = {
128
169
  remotes = ["https://rubygems.org"];
129
- sha256 = "149r94xi6b3jbp6bv72f8383b95ndn0p5sxnq11gs1j9jadv0ajf";
170
+ sha256 = "0x8asxl83msn815lwmb2d7q5p29p7drhjv5va0byhk60v9n16iwf";
130
171
  type = "gem";
131
172
  };
132
- version = "2.8.6";
173
+ version = "2.8.8";
133
174
  };
134
175
  minitest = {
135
176
  groups = ["default"];
136
177
  platforms = [];
137
178
  source = {
138
179
  remotes = ["https://rubygems.org"];
139
- sha256 = "07lq26b86giy3ha3fhrywk9r1ajhc2pm2mzj657jnpnbj1i6g17a";
180
+ sha256 = "0mn7q9yzrwinvfvkyjiz548a4rmcwbmz2fn9nyzh4j1snin6q6rr";
140
181
  type = "gem";
141
182
  };
142
- version = "5.22.3";
183
+ version = "5.25.5";
143
184
  };
144
185
  ncursesw = {
145
186
  groups = ["default"];
@@ -156,20 +197,20 @@
156
197
  platforms = [];
157
198
  source = {
158
199
  remotes = ["https://rubygems.org"];
159
- sha256 = "0q4jqq3v1bxlfr9jgqmahnygkvl81lr6s1rhm8qg66c9xr9nz241";
200
+ sha256 = "0kp3f8g7g7cbw5vfkmpdv71pphhpcxk3lpc892mj9apkd7ys1y4c";
160
201
  type = "gem";
161
202
  };
162
- version = "3.1.0";
203
+ version = "3.2.1";
163
204
  };
164
205
  parallel = {
165
206
  groups = ["default"];
166
207
  platforms = [];
167
208
  source = {
168
209
  remotes = ["https://rubygems.org"];
169
- sha256 = "15wkxrg1sj3n1h2g8jcrn7gcapwcgxr659ypjf75z1ipkgxqxwsv";
210
+ sha256 = "1vy7sjs2pgz4i96v5yk9b7aafbffnvq7nn419fgvw55qlavsnsyq";
170
211
  type = "gem";
171
212
  };
172
- version = "1.24.0";
213
+ version = "1.26.3";
173
214
  };
174
215
  parser = {
175
216
  dependencies = ["ast" "racc"];
@@ -177,10 +218,10 @@
177
218
  platforms = [];
178
219
  source = {
179
220
  remotes = ["https://rubygems.org"];
180
- sha256 = "11r6kp8wam0nkfvnwyc1fmvky102r1vcfr84vi2p1a2wa0z32j3p";
221
+ sha256 = "1awq9rswd3mj8sr5acp1ca6nbkk57zpw8388j7w163i8fhi2h9ib";
181
222
  type = "gem";
182
223
  };
183
- version = "3.3.0.5";
224
+ version = "3.3.7.4";
184
225
  };
185
226
  pry = {
186
227
  dependencies = ["coderay" "method_source"];
@@ -188,20 +229,20 @@
188
229
  platforms = [];
189
230
  source = {
190
231
  remotes = ["https://rubygems.org"];
191
- sha256 = "0k9kqkd9nps1w1r1rb7wjr31hqzkka2bhi8b518x78dcxppm9zn4";
232
+ sha256 = "0ssv704qg75mwlyagdfr9xxbzn1ziyqgzm0x474jkynk8234pm8j";
192
233
  type = "gem";
193
234
  };
194
- version = "0.14.2";
235
+ version = "0.15.2";
195
236
  };
196
237
  racc = {
197
238
  groups = ["default"];
198
239
  platforms = [];
199
240
  source = {
200
241
  remotes = ["https://rubygems.org"];
201
- sha256 = "01b9662zd2x9bp4rdjfid07h09zxj7kvn7f5fghbqhzc625ap1dp";
242
+ sha256 = "0byn0c9nkahsl93y9ln5bysq4j31q8xkf2ws42swighxd4lnjzsa";
202
243
  type = "gem";
203
244
  };
204
- version = "1.7.3";
245
+ version = "1.8.1";
205
246
  };
206
247
  rainbow = {
207
248
  groups = ["default"];
@@ -233,6 +274,17 @@
233
274
  };
234
275
  version = "2.9.0";
235
276
  };
277
+ reline = {
278
+ dependencies = ["io-console"];
279
+ groups = ["default"];
280
+ platforms = [];
281
+ source = {
282
+ remotes = ["https://rubygems.org"];
283
+ sha256 = "1yvm0svcdk6377ng6l00g39ldkjijbqg4whdg2zcsa8hrgbwkz0s";
284
+ type = "gem";
285
+ };
286
+ version = "0.6.1";
287
+ };
236
288
  rexml = {
237
289
  groups = ["default"];
238
290
  platforms = [];
@@ -311,10 +363,10 @@
311
363
  platforms = [];
312
364
  source = {
313
365
  remotes = ["https://rubygems.org"];
314
- sha256 = "1v8kxmq9i85agjpl7pnl72688901xhs8wxhmj6lpy16a8xz3nzxk";
366
+ sha256 = "1mx9lwzy021lpcqql5kn4yi20njhf5h7c7wxm2fx51p1r2zr9wj2";
315
367
  type = "gem";
316
368
  };
317
- version = "0.4.4.4";
369
+ version = "0.4.4.5";
318
370
  };
319
371
  unicode-display_width = {
320
372
  groups = ["default"];
@@ -331,9 +383,9 @@
331
383
  platforms = [];
332
384
  source = {
333
385
  remotes = ["https://rubygems.org"];
334
- sha256 = "0xlzgk2sis7nnasiplpg6x7mdvqa17ahq2d27i8fd5hs8dmqcsh2";
386
+ sha256 = "0070gc3q3j41wxajakhj8vpyp2p18j1rhl20cpcj645vccgvqd21";
335
387
  type = "gem";
336
388
  };
337
- version = "1.4.22";
389
+ version = "1.4.27";
338
390
  };
339
391
  }
@@ -2,8 +2,10 @@ GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
4
  ast (2.4.2)
5
+ benchmark (0.4.0)
5
6
  chronic (0.10.2)
6
7
  coderay (1.1.3)
8
+ fiddle (1.0.9)
7
9
  gpgme (2.0.20)
8
10
  mini_portile2 (~> 2.3)
9
11
  highline (2.0.3)
@@ -43,7 +45,7 @@ GEM
43
45
  rubocop-packaging (0.5.1)
44
46
  rubocop (>= 0.89, < 2.0)
45
47
  ruby-progressbar (1.11.0)
46
- unicode (0.4.4.4)
48
+ unicode (0.4.4.5)
47
49
  unicode-display_width (2.2.0)
48
50
  xapian-ruby (1.4.18)
49
51
 
@@ -58,8 +60,10 @@ PLATFORMS
58
60
  x86_64-linux
59
61
 
60
62
  DEPENDENCIES
63
+ benchmark
61
64
  bundler (>= 1.3, < 3)
62
65
  chronic
66
+ fiddle
63
67
  gpgme (>= 2.0.2)
64
68
  highline
65
69
  locale (~> 2.0)
@@ -9,6 +9,16 @@
9
9
  };
10
10
  version = "2.4.2";
11
11
  };
12
+ benchmark = {
13
+ groups = ["default"];
14
+ platforms = [];
15
+ source = {
16
+ remotes = ["https://rubygems.org"];
17
+ sha256 = "0jl71qcgamm96dzyqk695j24qszhcc7liw74qc83fpjljp2gh4hg";
18
+ type = "gem";
19
+ };
20
+ version = "0.4.0";
21
+ };
12
22
  chronic = {
13
23
  groups = ["default"];
14
24
  platforms = [];
@@ -29,6 +39,16 @@
29
39
  };
30
40
  version = "1.1.3";
31
41
  };
42
+ fiddle = {
43
+ groups = ["default"];
44
+ platforms = [];
45
+ source = {
46
+ remotes = ["https://rubygems.org"];
47
+ sha256 = "1d2y2qh6xml4w6p15kaz1v2ryb8p3nm6yy5x5mfygdrxgpsc63rd";
48
+ type = "gem";
49
+ };
50
+ version = "1.0.9";
51
+ };
32
52
  gpgme = {
33
53
  dependencies = ["mini_portile2"];
34
54
  groups = ["default"];
@@ -281,10 +301,10 @@
281
301
  platforms = [];
282
302
  source = {
283
303
  remotes = ["https://rubygems.org"];
284
- sha256 = "1v8kxmq9i85agjpl7pnl72688901xhs8wxhmj6lpy16a8xz3nzxk";
304
+ sha256 = "1mx9lwzy021lpcqql5kn4yi20njhf5h7c7wxm2fx51p1r2zr9wj2";
285
305
  type = "gem";
286
306
  };
287
- version = "0.4.4.4";
307
+ version = "0.4.4.5";
288
308
  };
289
309
  unicode-display_width = {
290
310
  groups = ["default"];
@@ -11,12 +11,8 @@ let
11
11
  lockfile = ./ruby2.4-Gemfile.lock;
12
12
  gemset = ./ruby2.4-gemset.nix;
13
13
  gemConfig = pkgs.defaultGemConfig // {
14
- # Workaround for a new error in clang 16 (MacOS):
15
- # https://github.com/blackwinter/unicode/pull/11
16
- unicode = attrs: {
17
- buildFlags = [
18
- "--with-cflags=-Wno-incompatible-function-pointer-types"
19
- ];
14
+ fiddle = attrs: {
15
+ buildInputs = [ pkgs.libffi ];
20
16
  };
21
17
  # Workaround: remove rake from nativeBuildInputs, otherwise it causes
22
18
  # xapian-bindings to build against the default Ruby version
@@ -2,8 +2,10 @@ GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
4
  ast (2.4.2)
5
+ benchmark (0.4.0)
5
6
  chronic (0.10.2)
6
7
  coderay (1.1.3)
8
+ fiddle (1.0.9)
7
9
  gpgme (2.0.20)
8
10
  mini_portile2 (~> 2.3)
9
11
  highline (2.0.3)
@@ -43,7 +45,7 @@ GEM
43
45
  rubocop-packaging (0.5.1)
44
46
  rubocop (>= 0.89, < 2.0)
45
47
  ruby-progressbar (1.11.0)
46
- unicode (0.4.4.4)
48
+ unicode (0.4.4.5)
47
49
  unicode-display_width (2.2.0)
48
50
  xapian-ruby (1.4.18)
49
51
 
@@ -58,8 +60,10 @@ PLATFORMS
58
60
  x86_64-linux
59
61
 
60
62
  DEPENDENCIES
63
+ benchmark
61
64
  bundler (>= 1.3, < 3)
62
65
  chronic
66
+ fiddle
63
67
  gpgme (>= 2.0.2)
64
68
  highline
65
69
  locale (~> 2.0)
@@ -9,6 +9,16 @@
9
9
  };
10
10
  version = "2.4.2";
11
11
  };
12
+ benchmark = {
13
+ groups = ["default"];
14
+ platforms = [];
15
+ source = {
16
+ remotes = ["https://rubygems.org"];
17
+ sha256 = "0jl71qcgamm96dzyqk695j24qszhcc7liw74qc83fpjljp2gh4hg";
18
+ type = "gem";
19
+ };
20
+ version = "0.4.0";
21
+ };
12
22
  chronic = {
13
23
  groups = ["default"];
14
24
  platforms = [];
@@ -29,6 +39,16 @@
29
39
  };
30
40
  version = "1.1.3";
31
41
  };
42
+ fiddle = {
43
+ groups = ["default"];
44
+ platforms = [];
45
+ source = {
46
+ remotes = ["https://rubygems.org"];
47
+ sha256 = "1d2y2qh6xml4w6p15kaz1v2ryb8p3nm6yy5x5mfygdrxgpsc63rd";
48
+ type = "gem";
49
+ };
50
+ version = "1.0.9";
51
+ };
32
52
  gpgme = {
33
53
  dependencies = ["mini_portile2"];
34
54
  groups = ["default"];
@@ -281,10 +301,10 @@
281
301
  platforms = [];
282
302
  source = {
283
303
  remotes = ["https://rubygems.org"];
284
- sha256 = "1v8kxmq9i85agjpl7pnl72688901xhs8wxhmj6lpy16a8xz3nzxk";
304
+ sha256 = "1mx9lwzy021lpcqql5kn4yi20njhf5h7c7wxm2fx51p1r2zr9wj2";
285
305
  type = "gem";
286
306
  };
287
- version = "0.4.4.4";
307
+ version = "0.4.4.5";
288
308
  };
289
309
  unicode-display_width = {
290
310
  groups = ["default"];