metaractor 3.3.2 → 3.3.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cbcfbfe6d5747efa204a9b2213e1b25a1579ab80d6ea200b73d66af38e4da26c
4
- data.tar.gz: 96523e7f340d36266de4a3e4170c2a400cf847c153897806e62d10853ca5986b
3
+ metadata.gz: 3321611d056a60e545e40ad71e66f4512657fd44a0d6ce9a2758e2f08116895b
4
+ data.tar.gz: 4172b472e1a0d3fa3802452a3a0ee0b17b7d0bb975b630c32281c40cb5fd9063
5
5
  SHA512:
6
- metadata.gz: 87493268ef51c78e87e19fd2afec14ee0338602a39ded8a58ec1045afa1f0b334908fe3bcddb08f7c3197fb4a64d6a3954a25f38e0879dfd03d4f76e8404ddf3
7
- data.tar.gz: 27dc794eea32848f07a7ae6c75173d18ff4ccce2a8a0485a0579043cf5b485ca5d7fdf9379d2a8e6a9fbc835d59759a4dc5f57379793a32c99a0144dd593dc6c
6
+ metadata.gz: 7d77a4cfd87cd12955d73835cd8a060eb3f7c027c9a424cfd14a41c6c45e4f259303ffb9c25cf1bd200af48e775aacfc7c81549a851e578576f4d9c0c4cd972e
7
+ data.tar.gz: 10ea3e5a506caf3f47ab26a971c5a9f15d25fce14c53a18a25547cc9551bbebd6bf849fb2091bde67526805cea470388a24c77cc47d301d4f2c5e421ca5bd9b3
data/.envrc CHANGED
@@ -1,3 +1,5 @@
1
- source_url "https://raw.githubusercontent.com/cachix/devenv/d1f7b48e35e6dee421cfd0f51481d17f77586997/direnvrc" "sha256-YBzqskFZxmNb3kYVoKD9ZixoPXJh1C9ZvTLGFRkauZ0="
1
+ if ! has nix_direnv_version || ! nix_direnv_version 2.3.0; then
2
+ source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.3.0/direnvrc" "sha256-Dmd+j63L84wuzgyjITIfSxSD57Tx7v51DMxVZOsiUD8="
3
+ fi
2
4
 
3
- use devenv
5
+ use flake . --impure
data/README.md CHANGED
@@ -346,16 +346,58 @@ For more examples of all of the above approaches, please see the specs.
346
346
 
347
347
  ## Development
348
348
 
349
- - `docker compose build --pull`
350
- - `docker compose run --rm metaractor` to run specs
349
+ - Install nix:
350
+ ```sh
351
+ sh <(curl -L https://nixos.org/nix/install)
352
+ ```
353
+
354
+ - Configure nix:
355
+ ```sh
356
+ sudo tee -a /etc/nix/nix.conf <<EOF
357
+ auto-optimise-store = true
358
+ bash-prompt-prefix = (nix:$name)\040
359
+ experimental-features = nix-command flakes
360
+ extra-nix-path = nixpkgs=flake:nixpkgs
361
+ trusted-users = root $USER
362
+ EOF
363
+
364
+ sudo pkill nix-daemon
365
+ ```
366
+
367
+ - Set up cachix:
368
+ ```sh
369
+ nix profile install 'nixpkgs#cachix'
370
+ cachix use devenv
371
+ ```
372
+
373
+ - Install devenv:
374
+ ```sh
375
+ nix profile install --accept-flake-config github:cachix/devenv/latest
376
+ ```
377
+
378
+ - Install direnv:
379
+ ```sh
380
+ brew install direnv
381
+ ```
382
+
383
+ - Add the following lines to your ~/.zshrc:
384
+ ```sh
385
+ # Nix
386
+ if [ -e '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh' ]; then
387
+ . '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh'
388
+ fi
389
+ # End Nix
390
+
391
+ export DIRENV_LOG_FORMAT=
392
+ eval "$(direnv hook zsh)"
393
+ ```
351
394
 
352
- or with the Deskfile loaded:
353
- - `rspec spec`
395
+ - `direnv allow`
396
+ - `rspec spec` to run specs
354
397
 
355
398
  To release a new version:
356
399
  - Update the version number in `version.rb` and commit the result.
357
- - `docker compose build --pull`
358
- - `docker compose run --rm release`
400
+ - `rake release`
359
401
 
360
402
  ## Contributing
361
403
 
data/flake.lock ADDED
@@ -0,0 +1,417 @@
1
+ {
2
+ "nodes": {
3
+ "dev-cli": {
4
+ "inputs": {
5
+ "flake-compat": "flake-compat",
6
+ "flake-parts": "flake-parts",
7
+ "nixpkgs": [
8
+ "nixpkgs"
9
+ ]
10
+ },
11
+ "locked": {
12
+ "lastModified": 1688133858,
13
+ "narHash": "sha256-UeibsB2V5vozsqJAazx36d9oRmzXqlid8cpRdE9Hj1c=",
14
+ "owner": "detaso",
15
+ "repo": "dev-cli",
16
+ "rev": "bb6f0c892a67e90efd8119d5ceb0873b48b28e68",
17
+ "type": "github"
18
+ },
19
+ "original": {
20
+ "owner": "detaso",
21
+ "repo": "dev-cli",
22
+ "type": "github"
23
+ }
24
+ },
25
+ "devenv": {
26
+ "inputs": {
27
+ "flake-compat": "flake-compat_2",
28
+ "nix": "nix",
29
+ "nixpkgs": "nixpkgs",
30
+ "pre-commit-hooks": "pre-commit-hooks"
31
+ },
32
+ "locked": {
33
+ "lastModified": 1688639977,
34
+ "narHash": "sha256-nLpc6Qr3HB+xGVTkl9lrEpr06vGf4khuxG/7ay3gNuI=",
35
+ "owner": "cachix",
36
+ "repo": "devenv",
37
+ "rev": "b98d24ddc6d46252df1920fea44241f8fb6e45b2",
38
+ "type": "github"
39
+ },
40
+ "original": {
41
+ "owner": "cachix",
42
+ "repo": "devenv",
43
+ "type": "github"
44
+ }
45
+ },
46
+ "flake-compat": {
47
+ "flake": false,
48
+ "locked": {
49
+ "lastModified": 1673956053,
50
+ "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
51
+ "owner": "edolstra",
52
+ "repo": "flake-compat",
53
+ "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
54
+ "type": "github"
55
+ },
56
+ "original": {
57
+ "owner": "edolstra",
58
+ "repo": "flake-compat",
59
+ "type": "github"
60
+ }
61
+ },
62
+ "flake-compat_2": {
63
+ "flake": false,
64
+ "locked": {
65
+ "lastModified": 1673956053,
66
+ "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
67
+ "owner": "edolstra",
68
+ "repo": "flake-compat",
69
+ "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
70
+ "type": "github"
71
+ },
72
+ "original": {
73
+ "owner": "edolstra",
74
+ "repo": "flake-compat",
75
+ "type": "github"
76
+ }
77
+ },
78
+ "flake-compat_3": {
79
+ "flake": false,
80
+ "locked": {
81
+ "lastModified": 1673956053,
82
+ "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
83
+ "owner": "edolstra",
84
+ "repo": "flake-compat",
85
+ "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
86
+ "type": "github"
87
+ },
88
+ "original": {
89
+ "owner": "edolstra",
90
+ "repo": "flake-compat",
91
+ "type": "github"
92
+ }
93
+ },
94
+ "flake-parts": {
95
+ "inputs": {
96
+ "nixpkgs-lib": "nixpkgs-lib"
97
+ },
98
+ "locked": {
99
+ "lastModified": 1687762428,
100
+ "narHash": "sha256-DIf7mi45PKo+s8dOYF+UlXHzE0Wl/+k3tXUyAoAnoGE=",
101
+ "owner": "hercules-ci",
102
+ "repo": "flake-parts",
103
+ "rev": "37dd7bb15791c86d55c5121740a1887ab55ee836",
104
+ "type": "github"
105
+ },
106
+ "original": {
107
+ "owner": "hercules-ci",
108
+ "repo": "flake-parts",
109
+ "type": "github"
110
+ }
111
+ },
112
+ "flake-parts_2": {
113
+ "inputs": {
114
+ "nixpkgs-lib": "nixpkgs-lib_2"
115
+ },
116
+ "locked": {
117
+ "lastModified": 1688466019,
118
+ "narHash": "sha256-VeM2akYrBYMsb4W/MmBo1zmaMfgbL4cH3Pu8PGyIwJ0=",
119
+ "owner": "hercules-ci",
120
+ "repo": "flake-parts",
121
+ "rev": "8e8d955c22df93dbe24f19ea04f47a74adbdc5ec",
122
+ "type": "github"
123
+ },
124
+ "original": {
125
+ "id": "flake-parts",
126
+ "type": "indirect"
127
+ }
128
+ },
129
+ "flake-utils": {
130
+ "inputs": {
131
+ "systems": "systems"
132
+ },
133
+ "locked": {
134
+ "lastModified": 1685518550,
135
+ "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
136
+ "owner": "numtide",
137
+ "repo": "flake-utils",
138
+ "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
139
+ "type": "github"
140
+ },
141
+ "original": {
142
+ "owner": "numtide",
143
+ "repo": "flake-utils",
144
+ "type": "github"
145
+ }
146
+ },
147
+ "flake-utils_2": {
148
+ "locked": {
149
+ "lastModified": 1667395993,
150
+ "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
151
+ "owner": "numtide",
152
+ "repo": "flake-utils",
153
+ "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
154
+ "type": "github"
155
+ },
156
+ "original": {
157
+ "owner": "numtide",
158
+ "repo": "flake-utils",
159
+ "type": "github"
160
+ }
161
+ },
162
+ "gitignore": {
163
+ "inputs": {
164
+ "nixpkgs": [
165
+ "devenv",
166
+ "pre-commit-hooks",
167
+ "nixpkgs"
168
+ ]
169
+ },
170
+ "locked": {
171
+ "lastModified": 1660459072,
172
+ "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
173
+ "owner": "hercules-ci",
174
+ "repo": "gitignore.nix",
175
+ "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
176
+ "type": "github"
177
+ },
178
+ "original": {
179
+ "owner": "hercules-ci",
180
+ "repo": "gitignore.nix",
181
+ "type": "github"
182
+ }
183
+ },
184
+ "lowdown-src": {
185
+ "flake": false,
186
+ "locked": {
187
+ "lastModified": 1633514407,
188
+ "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=",
189
+ "owner": "kristapsdz",
190
+ "repo": "lowdown",
191
+ "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8",
192
+ "type": "github"
193
+ },
194
+ "original": {
195
+ "owner": "kristapsdz",
196
+ "repo": "lowdown",
197
+ "type": "github"
198
+ }
199
+ },
200
+ "nix": {
201
+ "inputs": {
202
+ "lowdown-src": "lowdown-src",
203
+ "nixpkgs": [
204
+ "devenv",
205
+ "nixpkgs"
206
+ ],
207
+ "nixpkgs-regression": "nixpkgs-regression"
208
+ },
209
+ "locked": {
210
+ "lastModified": 1676545802,
211
+ "narHash": "sha256-EK4rZ+Hd5hsvXnzSzk2ikhStJnD63odF7SzsQ8CuSPU=",
212
+ "owner": "domenkozar",
213
+ "repo": "nix",
214
+ "rev": "7c91803598ffbcfe4a55c44ac6d49b2cf07a527f",
215
+ "type": "github"
216
+ },
217
+ "original": {
218
+ "owner": "domenkozar",
219
+ "ref": "relaxed-flakes",
220
+ "repo": "nix",
221
+ "type": "github"
222
+ }
223
+ },
224
+ "nixpkgs": {
225
+ "locked": {
226
+ "lastModified": 1678875422,
227
+ "narHash": "sha256-T3o6NcQPwXjxJMn2shz86Chch4ljXgZn746c2caGxd8=",
228
+ "owner": "NixOS",
229
+ "repo": "nixpkgs",
230
+ "rev": "126f49a01de5b7e35a43fd43f891ecf6d3a51459",
231
+ "type": "github"
232
+ },
233
+ "original": {
234
+ "owner": "NixOS",
235
+ "ref": "nixpkgs-unstable",
236
+ "repo": "nixpkgs",
237
+ "type": "github"
238
+ }
239
+ },
240
+ "nixpkgs-lib": {
241
+ "locked": {
242
+ "dir": "lib",
243
+ "lastModified": 1685564631,
244
+ "narHash": "sha256-8ywr3AkblY4++3lIVxmrWZFzac7+f32ZEhH/A8pNscI=",
245
+ "owner": "NixOS",
246
+ "repo": "nixpkgs",
247
+ "rev": "4f53efe34b3a8877ac923b9350c874e3dcd5dc0a",
248
+ "type": "github"
249
+ },
250
+ "original": {
251
+ "dir": "lib",
252
+ "owner": "NixOS",
253
+ "ref": "nixos-unstable",
254
+ "repo": "nixpkgs",
255
+ "type": "github"
256
+ }
257
+ },
258
+ "nixpkgs-lib_2": {
259
+ "locked": {
260
+ "dir": "lib",
261
+ "lastModified": 1688049487,
262
+ "narHash": "sha256-100g4iaKC9MalDjUW9iN6Jl/OocTDtXdeAj7pEGIRh4=",
263
+ "owner": "NixOS",
264
+ "repo": "nixpkgs",
265
+ "rev": "4bc72cae107788bf3f24f30db2e2f685c9298dc9",
266
+ "type": "github"
267
+ },
268
+ "original": {
269
+ "dir": "lib",
270
+ "owner": "NixOS",
271
+ "ref": "nixos-unstable",
272
+ "repo": "nixpkgs",
273
+ "type": "github"
274
+ }
275
+ },
276
+ "nixpkgs-regression": {
277
+ "locked": {
278
+ "lastModified": 1643052045,
279
+ "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
280
+ "owner": "NixOS",
281
+ "repo": "nixpkgs",
282
+ "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
283
+ "type": "github"
284
+ },
285
+ "original": {
286
+ "owner": "NixOS",
287
+ "repo": "nixpkgs",
288
+ "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
289
+ "type": "github"
290
+ }
291
+ },
292
+ "nixpkgs-ruby": {
293
+ "inputs": {
294
+ "flake-compat": "flake-compat_3",
295
+ "flake-utils": "flake-utils_2",
296
+ "nixpkgs": [
297
+ "nixpkgs"
298
+ ]
299
+ },
300
+ "locked": {
301
+ "lastModified": 1688103575,
302
+ "narHash": "sha256-VkkUAm6U9sogXYFGhru0xIb0KI+mrVbk5PKjCD8rnV4=",
303
+ "owner": "bobvanderlinden",
304
+ "repo": "nixpkgs-ruby",
305
+ "rev": "e6ae16647947d0858a99e033ce695c33d6212852",
306
+ "type": "github"
307
+ },
308
+ "original": {
309
+ "owner": "bobvanderlinden",
310
+ "repo": "nixpkgs-ruby",
311
+ "type": "github"
312
+ }
313
+ },
314
+ "nixpkgs-stable": {
315
+ "locked": {
316
+ "lastModified": 1685801374,
317
+ "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
318
+ "owner": "NixOS",
319
+ "repo": "nixpkgs",
320
+ "rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
321
+ "type": "github"
322
+ },
323
+ "original": {
324
+ "owner": "NixOS",
325
+ "ref": "nixos-23.05",
326
+ "repo": "nixpkgs",
327
+ "type": "github"
328
+ }
329
+ },
330
+ "nixpkgs_2": {
331
+ "locked": {
332
+ "lastModified": 1688585123,
333
+ "narHash": "sha256-+xFOB4WaRUHuZI7H1tWHTrwY4BnbPmh8M1n/XhPRH0w=",
334
+ "owner": "NixOS",
335
+ "repo": "nixpkgs",
336
+ "rev": "23de9f3b56e72632c628d92b71c47032e14a3d4d",
337
+ "type": "github"
338
+ },
339
+ "original": {
340
+ "owner": "NixOS",
341
+ "ref": "nixpkgs-unstable",
342
+ "repo": "nixpkgs",
343
+ "type": "github"
344
+ }
345
+ },
346
+ "pre-commit-hooks": {
347
+ "inputs": {
348
+ "flake-compat": [
349
+ "devenv",
350
+ "flake-compat"
351
+ ],
352
+ "flake-utils": "flake-utils",
353
+ "gitignore": "gitignore",
354
+ "nixpkgs": [
355
+ "devenv",
356
+ "nixpkgs"
357
+ ],
358
+ "nixpkgs-stable": "nixpkgs-stable"
359
+ },
360
+ "locked": {
361
+ "lastModified": 1688056373,
362
+ "narHash": "sha256-2+SDlNRTKsgo3LBRiMUcoEUb6sDViRNQhzJquZ4koOI=",
363
+ "owner": "cachix",
364
+ "repo": "pre-commit-hooks.nix",
365
+ "rev": "5843cf069272d92b60c3ed9e55b7a8989c01d4c7",
366
+ "type": "github"
367
+ },
368
+ "original": {
369
+ "owner": "cachix",
370
+ "repo": "pre-commit-hooks.nix",
371
+ "type": "github"
372
+ }
373
+ },
374
+ "root": {
375
+ "inputs": {
376
+ "dev-cli": "dev-cli",
377
+ "devenv": "devenv",
378
+ "flake-parts": "flake-parts_2",
379
+ "nixpkgs": "nixpkgs_2",
380
+ "nixpkgs-ruby": "nixpkgs-ruby",
381
+ "systems": "systems_2"
382
+ }
383
+ },
384
+ "systems": {
385
+ "locked": {
386
+ "lastModified": 1681028828,
387
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
388
+ "owner": "nix-systems",
389
+ "repo": "default",
390
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
391
+ "type": "github"
392
+ },
393
+ "original": {
394
+ "owner": "nix-systems",
395
+ "repo": "default",
396
+ "type": "github"
397
+ }
398
+ },
399
+ "systems_2": {
400
+ "locked": {
401
+ "lastModified": 1681028828,
402
+ "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
403
+ "owner": "nix-systems",
404
+ "repo": "default",
405
+ "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
406
+ "type": "github"
407
+ },
408
+ "original": {
409
+ "owner": "nix-systems",
410
+ "repo": "default",
411
+ "type": "github"
412
+ }
413
+ }
414
+ },
415
+ "root": "root",
416
+ "version": 7
417
+ }
data/flake.nix ADDED
@@ -0,0 +1,67 @@
1
+ {
2
+ inputs = {
3
+ nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
4
+ systems.url = "github:nix-systems/default";
5
+ devenv.url = "github:cachix/devenv";
6
+ nixpkgs-ruby.url = "github:bobvanderlinden/nixpkgs-ruby";
7
+ nixpkgs-ruby.inputs.nixpkgs.follows = "nixpkgs";
8
+ dev-cli.url = "github:detaso/dev-cli";
9
+ dev-cli.inputs.nixpkgs.follows = "nixpkgs";
10
+ };
11
+
12
+ outputs = inputs@{ flake-parts, ... }:
13
+ flake-parts.lib.mkFlake { inherit inputs; } {
14
+ imports = [
15
+ inputs.devenv.flakeModule
16
+ ];
17
+ systems = [ "x86_64-linux" "aarch64-linux" "aarch64-darwin" "x86_64-darwin" ];
18
+
19
+ perSystem = { config, self', inputs', pkgs, system, ... }: {
20
+ # Per-system attributes can be defined here. The self' and inputs'
21
+ # module parameters provide easy access to attributes of the same
22
+ # system.
23
+
24
+ devenv.shells.default = let
25
+ dev-cli = inputs.dev-cli.packages.${system}.default;
26
+ in {
27
+ # https://devenv.sh/reference/options/
28
+
29
+ packages = with pkgs; [
30
+ git
31
+ nodejs-18_x
32
+ yarn
33
+ postgresql_14
34
+ zlib
35
+ zstd
36
+ libiconv
37
+ tmux
38
+ tmuxPlugins.sensible
39
+ tmuxPlugins.yank
40
+ reattach-to-user-namespace
41
+ ] ++ [
42
+ dev-cli
43
+ ];
44
+
45
+ languages.ruby.enable = true;
46
+ languages.ruby.bundler.enable = false;
47
+ languages.ruby.version = "3.2.2";
48
+
49
+ enterShell = ''
50
+ export BUNDLE_BIN="$DEVENV_ROOT/.devenv/bin"
51
+ export PATH="$DEVENV_PROFILE/bin:$DEVENV_ROOT/bin:$BUNDLE_BIN:$PATH"
52
+ export BOOTSNAP_CACHE_DIR="$DEVENV_ROOT/.devenv/state"
53
+
54
+ if [ ! -f ~/.tmux.conf ] && [ ! -f ~/.config/tmux/tmux.conf ] && [ -f "$DEVENV_ROOT/.overmind.tmux.conf" ]; then
55
+ export OVERMIND_TMUX_CONFIG="$DEVENV_ROOT/.overmind.tmux.conf"
56
+ fi
57
+ '';
58
+
59
+ env.OVERMIND_NO_PORT=1;
60
+ env.OVERMIND_ANY_CAN_DIE=1;
61
+ process.implementation = "overmind";
62
+
63
+ env.RUBY_DEBUG_SOCK_DIR = "/tmp/";
64
+ };
65
+ };
66
+ };
67
+ }
@@ -0,0 +1,10 @@
1
+ module Metaractor
2
+ module Organizer
3
+ def self.included(base)
4
+ base.class_eval do
5
+ include Metaractor
6
+ include Interactor::Organizer
7
+ end
8
+ end
9
+ end
10
+ end
@@ -1,3 +1,3 @@
1
1
  module Metaractor
2
- VERSION = "3.3.2"
2
+ VERSION = "3.3.3"
3
3
  end
data/lib/metaractor.rb CHANGED
@@ -12,6 +12,7 @@ require "metaractor/context_has_key"
12
12
  require "metaractor/failure_output"
13
13
  require "i18n"
14
14
  require "metaractor/namespace"
15
+ require "metaractor/organizer"
15
16
 
16
17
  module Metaractor
17
18
  def self.included(base)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metaractor
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.2
4
+ version: 3.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Schlesinger
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-06-06 00:00:00.000000000 Z
11
+ date: 2023-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: interactor
@@ -158,9 +158,8 @@ files:
158
158
  - LICENSE
159
159
  - README.md
160
160
  - Rakefile
161
- - devenv.lock
162
- - devenv.nix
163
- - devenv.yaml
161
+ - flake.lock
162
+ - flake.nix
164
163
  - lib/metaractor.rb
165
164
  - lib/metaractor/chain_failures.rb
166
165
  - lib/metaractor/context_errors.rb
@@ -171,6 +170,7 @@ files:
171
170
  - lib/metaractor/failure_output.rb
172
171
  - lib/metaractor/handle_errors.rb
173
172
  - lib/metaractor/namespace.rb
173
+ - lib/metaractor/organizer.rb
174
174
  - lib/metaractor/parameters.rb
175
175
  - lib/metaractor/run_with_context.rb
176
176
  - lib/metaractor/spec.rb
data/devenv.lock DELETED
@@ -1,210 +0,0 @@
1
- {
2
- "nodes": {
3
- "devenv": {
4
- "locked": {
5
- "dir": "src/modules",
6
- "lastModified": 1686054274,
7
- "narHash": "sha256-93aebyN7EMmeFFXisFIvp28UEbrozu79vd3pKPjvNR0=",
8
- "owner": "cachix",
9
- "repo": "devenv",
10
- "rev": "c51a56bac8853c019241fe8d821c0a0d82422835",
11
- "type": "github"
12
- },
13
- "original": {
14
- "dir": "src/modules",
15
- "owner": "cachix",
16
- "repo": "devenv",
17
- "type": "github"
18
- }
19
- },
20
- "flake-compat": {
21
- "flake": false,
22
- "locked": {
23
- "lastModified": 1673956053,
24
- "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
25
- "owner": "edolstra",
26
- "repo": "flake-compat",
27
- "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
28
- "type": "github"
29
- },
30
- "original": {
31
- "owner": "edolstra",
32
- "repo": "flake-compat",
33
- "type": "github"
34
- }
35
- },
36
- "flake-compat_2": {
37
- "flake": false,
38
- "locked": {
39
- "lastModified": 1673956053,
40
- "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
41
- "owner": "edolstra",
42
- "repo": "flake-compat",
43
- "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
44
- "type": "github"
45
- },
46
- "original": {
47
- "owner": "edolstra",
48
- "repo": "flake-compat",
49
- "type": "github"
50
- }
51
- },
52
- "flake-utils": {
53
- "locked": {
54
- "lastModified": 1667395993,
55
- "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
56
- "owner": "numtide",
57
- "repo": "flake-utils",
58
- "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
59
- "type": "github"
60
- },
61
- "original": {
62
- "owner": "numtide",
63
- "repo": "flake-utils",
64
- "type": "github"
65
- }
66
- },
67
- "flake-utils_2": {
68
- "inputs": {
69
- "systems": "systems"
70
- },
71
- "locked": {
72
- "lastModified": 1685518550,
73
- "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
74
- "owner": "numtide",
75
- "repo": "flake-utils",
76
- "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
77
- "type": "github"
78
- },
79
- "original": {
80
- "owner": "numtide",
81
- "repo": "flake-utils",
82
- "type": "github"
83
- }
84
- },
85
- "gitignore": {
86
- "inputs": {
87
- "nixpkgs": [
88
- "pre-commit-hooks",
89
- "nixpkgs"
90
- ]
91
- },
92
- "locked": {
93
- "lastModified": 1660459072,
94
- "narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
95
- "owner": "hercules-ci",
96
- "repo": "gitignore.nix",
97
- "rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
98
- "type": "github"
99
- },
100
- "original": {
101
- "owner": "hercules-ci",
102
- "repo": "gitignore.nix",
103
- "type": "github"
104
- }
105
- },
106
- "nixpkgs": {
107
- "locked": {
108
- "lastModified": 1685938391,
109
- "narHash": "sha256-96Jw6TbWDLSopt5jqCW8w1Fc1cjQyZlhfBnJ3OZGpME=",
110
- "owner": "NixOS",
111
- "repo": "nixpkgs",
112
- "rev": "31cd1b4afbaf0b1e81272ee9c31d1ab606503aed",
113
- "type": "github"
114
- },
115
- "original": {
116
- "owner": "NixOS",
117
- "ref": "nixpkgs-unstable",
118
- "repo": "nixpkgs",
119
- "type": "github"
120
- }
121
- },
122
- "nixpkgs-ruby": {
123
- "inputs": {
124
- "flake-compat": "flake-compat",
125
- "flake-utils": "flake-utils",
126
- "nixpkgs": [
127
- "nixpkgs"
128
- ]
129
- },
130
- "locked": {
131
- "lastModified": 1685159223,
132
- "narHash": "sha256-rwHYapZEvxDJ8dw3hMGY/AE9c6qls9CifAUvObnx7e0=",
133
- "owner": "bobvanderlinden",
134
- "repo": "nixpkgs-ruby",
135
- "rev": "dfaf58567eda18bad5340a9432e601d96c497943",
136
- "type": "github"
137
- },
138
- "original": {
139
- "owner": "bobvanderlinden",
140
- "repo": "nixpkgs-ruby",
141
- "type": "github"
142
- }
143
- },
144
- "nixpkgs-stable": {
145
- "locked": {
146
- "lastModified": 1685801374,
147
- "narHash": "sha256-otaSUoFEMM+LjBI1XL/xGB5ao6IwnZOXc47qhIgJe8U=",
148
- "owner": "NixOS",
149
- "repo": "nixpkgs",
150
- "rev": "c37ca420157f4abc31e26f436c1145f8951ff373",
151
- "type": "github"
152
- },
153
- "original": {
154
- "owner": "NixOS",
155
- "ref": "nixos-23.05",
156
- "repo": "nixpkgs",
157
- "type": "github"
158
- }
159
- },
160
- "pre-commit-hooks": {
161
- "inputs": {
162
- "flake-compat": "flake-compat_2",
163
- "flake-utils": "flake-utils_2",
164
- "gitignore": "gitignore",
165
- "nixpkgs": [
166
- "nixpkgs"
167
- ],
168
- "nixpkgs-stable": "nixpkgs-stable"
169
- },
170
- "locked": {
171
- "lastModified": 1686050334,
172
- "narHash": "sha256-R0mczWjDzBpIvM3XXhO908X5e2CQqjyh/gFbwZk/7/Q=",
173
- "owner": "cachix",
174
- "repo": "pre-commit-hooks.nix",
175
- "rev": "6881eb2ae5d8a3516e34714e7a90d9d95914c4dc",
176
- "type": "github"
177
- },
178
- "original": {
179
- "owner": "cachix",
180
- "repo": "pre-commit-hooks.nix",
181
- "type": "github"
182
- }
183
- },
184
- "root": {
185
- "inputs": {
186
- "devenv": "devenv",
187
- "nixpkgs": "nixpkgs",
188
- "nixpkgs-ruby": "nixpkgs-ruby",
189
- "pre-commit-hooks": "pre-commit-hooks"
190
- }
191
- },
192
- "systems": {
193
- "locked": {
194
- "lastModified": 1681028828,
195
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
196
- "owner": "nix-systems",
197
- "repo": "default",
198
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
199
- "type": "github"
200
- },
201
- "original": {
202
- "owner": "nix-systems",
203
- "repo": "default",
204
- "type": "github"
205
- }
206
- }
207
- },
208
- "root": "root",
209
- "version": 7
210
- }
data/devenv.nix DELETED
@@ -1,25 +0,0 @@
1
- { pkgs, ... }:
2
-
3
- {
4
- # https://devenv.sh/packages/
5
- packages = with pkgs; [
6
- git
7
- ];
8
-
9
- # https://devenv.sh/languages/
10
- languages.ruby.enable = true;
11
- # Uses bobvanderlinden/nixpkgs-ruby to supply any version of ruby
12
- languages.ruby.versionFile = ./.ruby-version;
13
-
14
- enterShell = ''
15
- export BUNDLE_BIN="$DEVENV_ROOT/.devenv/bin"
16
- export PATH="$DEVENV_PROFILE/bin:$DEVENV_ROOT/bin:$BUNDLE_BIN:$PATH"
17
- export BOOTSNAP_CACHE_DIR="$DEVENV_ROOT/.devenv/state"
18
- '';
19
-
20
- # The unix socket path can't be "too long".
21
- # Make sure it's short for when we need it.
22
- env.RUBY_DEBUG_SOCK_DIR = "/tmp/";
23
-
24
- # See full reference at https://devenv.sh/reference/options/
25
- }
data/devenv.yaml DELETED
@@ -1,8 +0,0 @@
1
- inputs:
2
- nixpkgs:
3
- url: github:NixOS/nixpkgs/nixpkgs-unstable
4
- nixpkgs-ruby:
5
- url: github:bobvanderlinden/nixpkgs-ruby
6
- inputs:
7
- nixpkgs:
8
- follows: nixpkgs