sup 1.1 → 1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/checks.yml +27 -39
  3. data/CONTRIBUTORS +3 -1
  4. data/History.txt +16 -3
  5. data/Manifest.txt +22 -0
  6. data/README.md +0 -1
  7. data/bin/sup-sync-back-maildir +1 -1
  8. data/contrib/nix/Gemfile +22 -0
  9. data/contrib/nix/Gemfile.lock +80 -0
  10. data/contrib/nix/README +7 -0
  11. data/contrib/nix/gem-install-shell.nix +12 -0
  12. data/contrib/nix/gemset.nix +339 -0
  13. data/contrib/nix/ruby2.4-Gemfile.lock +81 -0
  14. data/contrib/nix/ruby2.4-gemset.nix +309 -0
  15. data/contrib/nix/ruby2.4-shell.nix +30 -0
  16. data/contrib/nix/ruby2.5-Gemfile.lock +81 -0
  17. data/contrib/nix/ruby2.5-gemset.nix +309 -0
  18. data/contrib/nix/ruby2.5-shell.nix +30 -0
  19. data/contrib/nix/ruby2.6-Gemfile.lock +83 -0
  20. data/contrib/nix/ruby2.6-gemset.nix +319 -0
  21. data/contrib/nix/ruby2.6-shell.nix +30 -0
  22. data/contrib/nix/ruby2.7-shell.nix +23 -0
  23. data/contrib/nix/ruby3.0-shell.nix +23 -0
  24. data/contrib/nix/ruby3.1-shell.nix +23 -0
  25. data/contrib/nix/ruby3.2-shell.nix +23 -0
  26. data/contrib/nix/ruby3.3-shell.nix +23 -0
  27. data/contrib/nix/test-all-rubies.sh +6 -0
  28. data/doc/Hooks.txt +1 -1
  29. data/ext/mkrf_conf_xapian.rb +2 -2
  30. data/lib/sup/crypto.rb +1 -1
  31. data/lib/sup/index.rb +2 -2
  32. data/lib/sup/maildir.rb +1 -1
  33. data/lib/sup/mbox.rb +1 -1
  34. data/lib/sup/message.rb +2 -2
  35. data/lib/sup/modes/console_mode.rb +1 -1
  36. data/lib/sup/thread.rb +20 -20
  37. data/lib/sup/util.rb +3 -5
  38. data/lib/sup/version.rb +1 -1
  39. data/man/sup-add.1 +27 -27
  40. data/man/sup-config.1 +23 -19
  41. data/man/sup-dump.1 +28 -29
  42. data/man/sup-import-dump.1 +24 -20
  43. data/man/sup-psych-ify-config-files.1 +23 -19
  44. data/man/sup-recover-sources.1 +23 -19
  45. data/man/sup-sync-back-maildir.1 +23 -19
  46. data/man/sup-sync.1 +23 -19
  47. data/man/sup-tweak-labels.1 +23 -19
  48. data/man/sup.1 +23 -19
  49. data/shell.nix +1 -0
  50. data/test/integration/test_maildir.rb +3 -0
  51. data/test/integration/test_mbox.rb +3 -0
  52. data/test/integration/test_sup-sync-back-maildir.rb +40 -0
  53. data/test/test_header_parsing.rb +2 -2
  54. metadata +26 -3
@@ -0,0 +1,309 @@
1
+ {
2
+ ast = {
3
+ groups = ["default"];
4
+ platforms = [];
5
+ source = {
6
+ remotes = ["https://rubygems.org"];
7
+ sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y";
8
+ type = "gem";
9
+ };
10
+ version = "2.4.2";
11
+ };
12
+ chronic = {
13
+ groups = ["default"];
14
+ platforms = [];
15
+ source = {
16
+ remotes = ["https://rubygems.org"];
17
+ sha256 = "1hrdkn4g8x7dlzxwb1rfgr8kw3bp4ywg5l4y4i9c2g5cwv62yvvn";
18
+ type = "gem";
19
+ };
20
+ version = "0.10.2";
21
+ };
22
+ coderay = {
23
+ groups = ["default"];
24
+ platforms = [];
25
+ source = {
26
+ remotes = ["https://rubygems.org"];
27
+ sha256 = "0jvxqxzply1lwp7ysn94zjhh57vc14mcshw1ygw14ib8lhc00lyw";
28
+ type = "gem";
29
+ };
30
+ version = "1.1.3";
31
+ };
32
+ gpgme = {
33
+ dependencies = ["mini_portile2"];
34
+ groups = ["default"];
35
+ platforms = [];
36
+ source = {
37
+ remotes = ["https://rubygems.org"];
38
+ sha256 = "0xbgh9d8nbvsvyzqnd0mzhz0nr9hx4qn025kmz6d837lry4lc6gw";
39
+ type = "gem";
40
+ };
41
+ version = "2.0.20";
42
+ };
43
+ highline = {
44
+ groups = ["default"];
45
+ platforms = [];
46
+ source = {
47
+ remotes = ["https://rubygems.org"];
48
+ sha256 = "0yclf57n2j3cw8144ania99h1zinf8q3f5zrhqa754j6gl95rp9d";
49
+ type = "gem";
50
+ };
51
+ version = "2.0.3";
52
+ };
53
+ locale = {
54
+ groups = ["default"];
55
+ platforms = [];
56
+ source = {
57
+ remotes = ["https://rubygems.org"];
58
+ sha256 = "0997465kxvpxm92fiwc2b16l49mngk7b68g5k35ify0m3q0yxpdn";
59
+ type = "gem";
60
+ };
61
+ version = "2.1.3";
62
+ };
63
+ lockfile = {
64
+ groups = ["default"];
65
+ platforms = [];
66
+ source = {
67
+ remotes = ["https://rubygems.org"];
68
+ sha256 = "0dij3ijywylvfgrpi2i0k17f6w0wjhnjjw0k9030f54z56cz7jrr";
69
+ type = "gem";
70
+ };
71
+ version = "2.1.3";
72
+ };
73
+ method_source = {
74
+ groups = ["default"];
75
+ platforms = [];
76
+ source = {
77
+ remotes = ["https://rubygems.org"];
78
+ sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp";
79
+ type = "gem";
80
+ };
81
+ version = "1.0.0";
82
+ };
83
+ mime-types = {
84
+ dependencies = ["mime-types-data"];
85
+ groups = ["default"];
86
+ platforms = [];
87
+ source = {
88
+ remotes = ["https://rubygems.org"];
89
+ sha256 = "0ipw892jbksbxxcrlx9g5ljq60qx47pm24ywgfbyjskbcl78pkvb";
90
+ type = "gem";
91
+ };
92
+ version = "3.4.1";
93
+ };
94
+ mime-types-data = {
95
+ groups = ["default"];
96
+ platforms = [];
97
+ source = {
98
+ remotes = ["https://rubygems.org"];
99
+ sha256 = "003gd7mcay800k2q4pb2zn8lwwgci4bhi42v2jvlidm8ksx03i6q";
100
+ type = "gem";
101
+ };
102
+ version = "3.2022.0105";
103
+ };
104
+ mini_portile2 = {
105
+ groups = ["default"];
106
+ platforms = [];
107
+ source = {
108
+ remotes = ["https://rubygems.org"];
109
+ sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
110
+ type = "gem";
111
+ };
112
+ version = "2.8.0";
113
+ };
114
+ minitest = {
115
+ groups = ["default"];
116
+ platforms = [];
117
+ source = {
118
+ remotes = ["https://rubygems.org"];
119
+ sha256 = "14a9ign0hj3z3j4cpfplj2djaskx3skzyx4fl3x53d7saxmhrgn1";
120
+ type = "gem";
121
+ };
122
+ version = "5.16.2";
123
+ };
124
+ ncursesw = {
125
+ groups = ["default"];
126
+ platforms = [];
127
+ source = {
128
+ remotes = ["https://rubygems.org"];
129
+ sha256 = "0qlfhp9b445g0qp9kkdiylfjlpfzrv6nqvry4ar6y0yacn0zr5y8";
130
+ type = "gem";
131
+ };
132
+ version = "1.4.11";
133
+ };
134
+ optimist = {
135
+ groups = ["default"];
136
+ platforms = [];
137
+ source = {
138
+ remotes = ["https://rubygems.org"];
139
+ sha256 = "1vg2chy1cfmdj6c1gryl8zvjhhmb3plwgyh1jfnpq4fnfqv7asrk";
140
+ type = "gem";
141
+ };
142
+ version = "3.0.1";
143
+ };
144
+ parallel = {
145
+ groups = ["default"];
146
+ platforms = [];
147
+ source = {
148
+ remotes = ["https://rubygems.org"];
149
+ sha256 = "07vnk6bb54k4yc06xnwck7php50l09vvlw1ga8wdz0pia461zpzb";
150
+ type = "gem";
151
+ };
152
+ version = "1.22.1";
153
+ };
154
+ parser = {
155
+ dependencies = ["ast"];
156
+ groups = ["default"];
157
+ platforms = [];
158
+ source = {
159
+ remotes = ["https://rubygems.org"];
160
+ sha256 = "0xhfghgidj8cbdnqp01f7kvnrv1f60izpkd9dhxsvpdzkfsdg97d";
161
+ type = "gem";
162
+ };
163
+ version = "3.1.2.0";
164
+ };
165
+ pry = {
166
+ dependencies = ["coderay" "method_source"];
167
+ groups = ["default"];
168
+ platforms = [];
169
+ source = {
170
+ remotes = ["https://rubygems.org"];
171
+ sha256 = "0m445x8fwcjdyv2bc0glzss2nbm1ll51bq45knixapc7cl3dzdlr";
172
+ type = "gem";
173
+ };
174
+ version = "0.14.1";
175
+ };
176
+ rainbow = {
177
+ groups = ["default"];
178
+ platforms = [];
179
+ source = {
180
+ remotes = ["https://rubygems.org"];
181
+ sha256 = "0smwg4mii0fm38pyb5fddbmrdpifwv22zv3d3px2xx497am93503";
182
+ type = "gem";
183
+ };
184
+ version = "3.1.1";
185
+ };
186
+ rake = {
187
+ groups = ["default"];
188
+ platforms = [];
189
+ source = {
190
+ remotes = ["https://rubygems.org"];
191
+ sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w";
192
+ type = "gem";
193
+ };
194
+ version = "13.0.6";
195
+ };
196
+ regexp_parser = {
197
+ groups = ["default"];
198
+ platforms = [];
199
+ source = {
200
+ remotes = ["https://rubygems.org"];
201
+ sha256 = "1rfd3q17p7q7pa67844q8b16ipy6ksh8mkzynpm1zldqbb9x4xm0";
202
+ type = "gem";
203
+ };
204
+ version = "2.5.0";
205
+ };
206
+ rexml = {
207
+ groups = ["default"];
208
+ platforms = [];
209
+ source = {
210
+ remotes = ["https://rubygems.org"];
211
+ sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
212
+ type = "gem";
213
+ };
214
+ version = "3.2.5";
215
+ };
216
+ rmail = {
217
+ groups = ["default"];
218
+ platforms = [];
219
+ source = {
220
+ remotes = ["https://rubygems.org"];
221
+ sha256 = "0m5npkmv764m725wzjzasgf3k8q5anf3vfr6k2cac1xj6jc8lcqi";
222
+ type = "gem";
223
+ };
224
+ version = "1.1.4";
225
+ };
226
+ rr = {
227
+ groups = ["default"];
228
+ platforms = [];
229
+ source = {
230
+ remotes = ["https://rubygems.org"];
231
+ sha256 = "1n9g78ba4c2zzmz8cdb97c38h1xm0clircag00vbcxwqs4dq0ymp";
232
+ type = "gem";
233
+ };
234
+ version = "1.2.1";
235
+ };
236
+ rubocop = {
237
+ dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
238
+ groups = ["default"];
239
+ platforms = [];
240
+ source = {
241
+ remotes = ["https://rubygems.org"];
242
+ sha256 = "0xxkghaph53200mfria115swdq6j7p5ssc6gqr1xwvnqiw8g96qd";
243
+ type = "gem";
244
+ };
245
+ version = "1.28.2";
246
+ };
247
+ rubocop-ast = {
248
+ dependencies = ["parser"];
249
+ groups = ["default"];
250
+ platforms = [];
251
+ source = {
252
+ remotes = ["https://rubygems.org"];
253
+ sha256 = "1k9izkr5rhw3zc309yjp17z7496l74j4li3zrcgpgqfnqwz695qx";
254
+ type = "gem";
255
+ };
256
+ version = "1.17.0";
257
+ };
258
+ rubocop-packaging = {
259
+ dependencies = ["rubocop"];
260
+ groups = ["default"];
261
+ platforms = [];
262
+ source = {
263
+ remotes = ["https://rubygems.org"];
264
+ sha256 = "0bzjd1077v96pyp62jg7s8ndxqbdhfnrdpdnmgi7h88xw22fp5xf";
265
+ type = "gem";
266
+ };
267
+ version = "0.5.1";
268
+ };
269
+ ruby-progressbar = {
270
+ groups = ["default"];
271
+ platforms = [];
272
+ source = {
273
+ remotes = ["https://rubygems.org"];
274
+ sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc";
275
+ type = "gem";
276
+ };
277
+ version = "1.11.0";
278
+ };
279
+ unicode = {
280
+ groups = ["default"];
281
+ platforms = [];
282
+ source = {
283
+ remotes = ["https://rubygems.org"];
284
+ sha256 = "1v8kxmq9i85agjpl7pnl72688901xhs8wxhmj6lpy16a8xz3nzxk";
285
+ type = "gem";
286
+ };
287
+ version = "0.4.4.4";
288
+ };
289
+ unicode-display_width = {
290
+ groups = ["default"];
291
+ platforms = [];
292
+ source = {
293
+ remotes = ["https://rubygems.org"];
294
+ sha256 = "1nlfck6z986fngp0r74maswmyb1rcksc8xc3mfpw9cj23c3s8zwn";
295
+ type = "gem";
296
+ };
297
+ version = "2.2.0";
298
+ };
299
+ xapian-ruby = {
300
+ groups = ["default"];
301
+ platforms = [];
302
+ source = {
303
+ remotes = ["https://rubygems.org"];
304
+ sha256 = "1z8arjkd0nlj6zv9in2sihmbwpbd17a10lsv7nwii7z0jjscyxpp";
305
+ type = "gem";
306
+ };
307
+ version = "1.4.18";
308
+ };
309
+ }
@@ -0,0 +1,30 @@
1
+ let
2
+ pkgs = import (builtins.fetchGit {
3
+ url = "https://github.com/danc86/nixpkgs";
4
+ ref = "refs/heads/old-rubies-for-sup";
5
+ rev = "a19c3284e36dd21c032f3495afdc6f8919b59497";
6
+ }) {};
7
+ gems = pkgs.bundlerEnv {
8
+ name = "ruby2.5-gems-for-sup";
9
+ ruby = pkgs.ruby_2_5.override { useRailsExpress = false; };
10
+ gemfile = ./Gemfile;
11
+ lockfile = ./ruby2.5-Gemfile.lock;
12
+ gemset = ./ruby2.5-gemset.nix;
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
+ ];
20
+ };
21
+ # Workaround: remove rake from nativeBuildInputs, otherwise it causes
22
+ # xapian-bindings to build against the default Ruby version
23
+ # instead of our chosen version.
24
+ xapian-ruby = attrs: pkgs.defaultGemConfig.xapian-ruby attrs // {
25
+ dependencies = [ "rake" ];
26
+ nativeBuildInputs = [ pkgs.pkg-config ];
27
+ };
28
+ };
29
+ };
30
+ in pkgs.mkShell { nativeBuildInputs = [ gems gems.wrappedRuby pkgs.pandoc ]; }
@@ -0,0 +1,83 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ ast (2.4.2)
5
+ chronic (0.10.2)
6
+ coderay (1.1.3)
7
+ gpgme (2.0.23)
8
+ mini_portile2 (~> 2.7)
9
+ highline (2.0.3)
10
+ json (2.6.2)
11
+ locale (2.1.3)
12
+ lockfile (2.1.3)
13
+ method_source (1.0.0)
14
+ mime-types (3.4.1)
15
+ mime-types-data (~> 3.2015)
16
+ mime-types-data (3.2022.0105)
17
+ mini_portile2 (2.8.5)
18
+ minitest (5.16.2)
19
+ ncursesw (1.4.11)
20
+ optimist (3.0.1)
21
+ parallel (1.22.1)
22
+ parser (3.1.2.0)
23
+ ast (~> 2.4.1)
24
+ pry (0.14.1)
25
+ coderay (~> 1.1)
26
+ method_source (~> 1.0)
27
+ rainbow (3.1.1)
28
+ rake (13.0.6)
29
+ regexp_parser (2.5.0)
30
+ rexml (3.2.5)
31
+ rmail (1.1.4)
32
+ rr (1.2.1)
33
+ rubocop (1.32.0)
34
+ json (~> 2.3)
35
+ parallel (~> 1.10)
36
+ parser (>= 3.1.0.0)
37
+ rainbow (>= 2.2.2, < 4.0)
38
+ regexp_parser (>= 1.8, < 3.0)
39
+ rexml (>= 3.2.5, < 4.0)
40
+ rubocop-ast (>= 1.19.1, < 2.0)
41
+ ruby-progressbar (~> 1.7)
42
+ unicode-display_width (>= 1.4.0, < 3.0)
43
+ rubocop-ast (1.19.1)
44
+ parser (>= 3.1.1.0)
45
+ rubocop-packaging (0.5.1)
46
+ rubocop (>= 0.89, < 2.0)
47
+ ruby-progressbar (1.11.0)
48
+ unicode (0.4.4.4)
49
+ unicode-display_width (2.2.0)
50
+ xapian-ruby (1.4.18)
51
+
52
+ PLATFORMS
53
+ aarch64-linux
54
+ x86_64-darwin-17
55
+ x86_64-darwin-18
56
+ x86_64-darwin-19
57
+ x86_64-darwin-20
58
+ x86_64-darwin-21
59
+ x86_64-darwin-22
60
+ x86_64-linux
61
+
62
+ DEPENDENCIES
63
+ bundler (>= 1.3, < 3)
64
+ chronic
65
+ gpgme (>= 2.0.2)
66
+ highline
67
+ locale (~> 2.0)
68
+ lockfile
69
+ mime-types (> 2.0)
70
+ minitest (~> 5.5)
71
+ ncursesw (~> 1.4.0)
72
+ optimist
73
+ pry
74
+ rake
75
+ rmail (>= 1.1.2, < 2)
76
+ rr (~> 1.1)
77
+ rubocop-packaging
78
+ unicode (~> 0.4.4)
79
+ unicode-display_width
80
+ xapian-ruby (~> 1.2)
81
+
82
+ BUNDLED WITH
83
+ 2.3.9