rigortype 0.3.1 → 0.3.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.
- checksums.yaml +4 -4
- data/README.md +10 -10
- data/data/core_overlay/pathname.rbs +5 -0
- data/data/core_overlay/resolv.rbs +31 -0
- data/data/core_overlay/string_scanner.rbs +5 -0
- data/data/gem_overlay/activesupport/core_ext.rbs +10 -6
- data/data/vendored_gem_sigs/bundler/bundler.rbs +39 -27
- data/data/vendored_gem_sigs/cgi/cgi_extras.rbs +6 -0
- data/data/vendored_gem_sigs/prism/prism_supplement.rbs +7 -0
- data/data/vendored_gem_sigs/racc/racc.rbs +67 -0
- data/data/vendored_gem_sigs/rubygems/rubygems_extras.rbs +20 -9
- data/docs/manual/02-cli-reference.md +71 -11
- data/docs/manual/03-configuration.md +16 -1
- data/docs/manual/04-diagnostics.md +8 -0
- data/docs/manual/12-caching.md +17 -5
- data/docs/manual/15-type-protection-coverage.md +122 -1
- data/docs/manual/plugins/rigor-rbs-inline.md +22 -0
- data/lib/rigor/analysis/check_rules/always_truthy_condition_collector.rb +8 -0
- data/lib/rigor/analysis/check_rules/declaration_sourced_guard.rb +53 -0
- data/lib/rigor/analysis/check_rules/rule_ids.rb +1 -0
- data/lib/rigor/analysis/check_rules/rule_walk.rb +7 -0
- data/lib/rigor/analysis/check_rules.rb +107 -28
- data/lib/rigor/analysis/incremental_session.rb +156 -11
- data/lib/rigor/analysis/plugin_fact_fingerprint.rb +14 -0
- data/lib/rigor/analysis/rule_catalog.rb +5 -1
- data/lib/rigor/analysis/run_cache_key.rb +17 -1
- data/lib/rigor/analysis/runner/buffer_pool_dispatcher.rb +201 -0
- data/lib/rigor/analysis/runner/diagnostic_aggregator.rb +28 -10
- data/lib/rigor/analysis/runner/pool_coordinator.rb +7 -10
- data/lib/rigor/analysis/runner/project_pre_passes.rb +3 -1
- data/lib/rigor/analysis/runner.rb +78 -7
- data/lib/rigor/analysis/severity_stamp.rb +2 -1
- data/lib/rigor/bleeding_edge.rb +132 -7
- data/lib/rigor/cache/descriptor.rb +6 -1
- data/lib/rigor/cache/engine_source.rb +162 -0
- data/lib/rigor/cache/incremental_snapshot.rb +87 -18
- data/lib/rigor/cli/check_command.rb +49 -28
- data/lib/rigor/cli/coverage_command.rb +15 -2
- data/lib/rigor/cli/coverage_mutation.rb +242 -11
- data/lib/rigor/cli/fused_protection_renderer.rb +10 -0
- data/lib/rigor/cli/fused_protection_report.rb +12 -3
- data/lib/rigor/cli/mutation_fork_scan.rb +64 -0
- data/lib/rigor/cli/mutation_protection_renderer.rb +12 -0
- data/lib/rigor/cli/mutation_protection_report.rb +26 -5
- data/lib/rigor/cli/protection_renderer.rb +13 -0
- data/lib/rigor/cli/protection_report.rb +11 -3
- data/lib/rigor/cli/show_bleedingedge_command.rb +17 -4
- data/lib/rigor/cli/sig_gen_command.rb +5 -4
- data/lib/rigor/configuration.rb +45 -6
- data/lib/rigor/environment/bundle_sig_discovery.rb +2 -1
- data/lib/rigor/environment/rbs_coverage_report.rb +1 -1
- data/lib/rigor/environment/rbs_loader.rb +434 -75
- data/lib/rigor/environment.rb +28 -13
- data/lib/rigor/inference/anonymous_meta_class.rb +81 -0
- data/lib/rigor/inference/expression_typer.rb +62 -4
- data/lib/rigor/inference/fork_map.rb +47 -4
- data/lib/rigor/inference/method_dispatcher/constant_folding.rb +50 -2
- data/lib/rigor/inference/method_dispatcher/data_folding.rb +1 -1
- data/lib/rigor/inference/method_dispatcher/member_shape_projection.rb +35 -1
- data/lib/rigor/inference/method_dispatcher/rbs_dispatch.rb +158 -12
- data/lib/rigor/inference/method_dispatcher/regexp_folding.rb +64 -5
- data/lib/rigor/inference/method_dispatcher/shape_dispatch.rb +234 -11
- data/lib/rigor/inference/method_dispatcher/struct_folding.rb +3 -2
- data/lib/rigor/inference/method_dispatcher/uri_folding.rb +124 -1
- data/lib/rigor/inference/method_dispatcher.rb +41 -10
- data/lib/rigor/inference/mutation_widening.rb +30 -25
- data/lib/rigor/inference/narrowing.rb +3 -1
- data/lib/rigor/inference/optimistic_origin.rb +123 -0
- data/lib/rigor/inference/protection_scanner.rb +18 -2
- data/lib/rigor/inference/receiver_alias.rb +57 -0
- data/lib/rigor/inference/scope_indexer.rb +197 -55
- data/lib/rigor/inference/singleton_object_constant.rb +63 -0
- data/lib/rigor/inference/statement_evaluator.rb +55 -4
- data/lib/rigor/language_server/buffer_table.rb +22 -0
- data/lib/rigor/language_server/diagnostic_publisher.rb +203 -4
- data/lib/rigor/language_server/project_context.rb +45 -0
- data/lib/rigor/language_server/publish_batcher.rb +82 -0
- data/lib/rigor/language_server/server.rb +20 -1
- data/lib/rigor/language_server.rb +1 -0
- data/lib/rigor/plugin/node_rule_walk.rb +6 -0
- data/lib/rigor/plugin/source_rbs_synthesis_reporter.rb +9 -3
- data/lib/rigor/protection/closure_kill_oracle.rb +190 -0
- data/lib/rigor/protection/dependency_closure.rb +59 -0
- data/lib/rigor/protection/diagnostic_oracle.rb +12 -8
- data/lib/rigor/protection/discovery_seed.rb +116 -0
- data/lib/rigor/protection/kill_signature.rb +31 -0
- data/lib/rigor/protection/mutation_cache.rb +355 -0
- data/lib/rigor/protection/mutation_scanner.rb +55 -11
- data/lib/rigor/protection/mutator.rb +26 -4
- data/lib/rigor/runtime/jit.rb +63 -1
- data/lib/rigor/scope/discovery_index.rb +9 -0
- data/lib/rigor/scope.rb +114 -10
- data/lib/rigor/sig_gen/generator.rb +130 -31
- data/lib/rigor/sig_gen/layout_index.rb +6 -0
- data/lib/rigor/sig_gen/meta_class_shape.rb +84 -0
- data/lib/rigor/sig_gen/renderer.rb +20 -1
- data/lib/rigor/sig_gen/write_result.rb +6 -4
- data/lib/rigor/sig_gen/writer.rb +12 -0
- data/lib/rigor/sig_gen.rb +1 -0
- data/lib/rigor/source/node_walker.rb +12 -0
- data/lib/rigor/type/anonymous_class_name.rb +40 -0
- data/lib/rigor/type/nominal.rb +5 -2
- data/lib/rigor/type/singleton.rb +4 -1
- data/lib/rigor/version.rb +1 -1
- data/plugins/rigor-activesupport-core-ext/sig/active_support/core_ext.rbs +6 -6
- data/plugins/rigor-dry-schema/lib/rigor/plugin/dry_schema/result_shape.rb +146 -0
- data/plugins/rigor-dry-schema/lib/rigor/plugin/dry_schema/schema_scanner.rb +177 -12
- data/plugins/rigor-dry-schema/lib/rigor/plugin/dry_schema.rb +74 -7
- data/plugins/rigor-dry-validation/lib/rigor/plugin/dry_validation/contract_scanner.rb +257 -0
- data/plugins/rigor-dry-validation/lib/rigor/plugin/dry_validation/params_shape.rb +69 -0
- data/plugins/rigor-dry-validation/lib/rigor/plugin/dry_validation.rb +87 -11
- data/plugins/rigor-rbs-inline/lib/rigor/plugin/rbs_inline.rb +34 -4
- data/sig/rigor/inference/void_origin.rbs +6 -3
- data/sig/rigor/scope.rbs +12 -0
- data/sig/rigor.rbs +4 -0
- metadata +21 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
module Rigor
|
|
2
2
|
module Inference
|
|
3
|
-
# `VoidOrigin = Data.define(:class_name, :method_name, :kind)`. Declared as a `::Data` subclass because
|
|
4
|
-
#
|
|
5
|
-
#
|
|
3
|
+
# `VoidOrigin = Data.define(:class_name, :method_name, :kind)`. Declared as a `::Data` subclass because that
|
|
4
|
+
# is the shape the runtime actually builds. `sig-gen` reads this form since #227 and generates the same
|
|
5
|
+
# structure; the member types are hand-narrowed from the `untyped` only `--params=observed` could improve on.
|
|
6
6
|
class VoidOrigin < ::Data
|
|
7
7
|
attr_reader class_name: String
|
|
8
8
|
attr_reader method_name: Symbol
|
|
@@ -11,6 +11,9 @@ module Rigor
|
|
|
11
11
|
def self.new: (class_name: String, method_name: Symbol, kind: Symbol) -> instance
|
|
12
12
|
| (String class_name, Symbol method_name, Symbol kind) -> instance
|
|
13
13
|
|
|
14
|
+
def self.[]: (class_name: String, method_name: Symbol, kind: Symbol) -> instance
|
|
15
|
+
| (String class_name, Symbol method_name, Symbol kind) -> instance
|
|
16
|
+
|
|
14
17
|
# A human-facing `Class#method` / `Class.method` label for the diagnostic message.
|
|
15
18
|
def label: () -> String
|
|
16
19
|
end
|
data/sig/rigor/scope.rbs
CHANGED
|
@@ -12,10 +12,14 @@ module Rigor
|
|
|
12
12
|
attr_reader local_origins: Hash[Symbol, Symbol]
|
|
13
13
|
attr_reader ivar_origins: Hash[Symbol, Symbol]
|
|
14
14
|
attr_reader void_origins: Hash[untyped, Inference::VoidOrigin]
|
|
15
|
+
attr_reader optimistic_origins: Hash[untyped, Symbol]
|
|
16
|
+
attr_reader optimistic_locals: Hash[Symbol, Symbol]
|
|
17
|
+
attr_reader optimistic_ivars: Hash[Symbol, Symbol]
|
|
15
18
|
attr_reader indexed_narrowings: Hash[IndexedKey, Type::t]
|
|
16
19
|
attr_reader method_chain_narrowings: Hash[ChainKey, Type::t]
|
|
17
20
|
attr_reader source_path: String?
|
|
18
21
|
attr_reader struct_fold_safe_locals: Set[Symbol]
|
|
22
|
+
attr_reader opaque_block_self: bool
|
|
19
23
|
|
|
20
24
|
# ADR-53 Track A — the seed-time discovery tables live on the
|
|
21
25
|
# DiscoveryIndex; Scope keeps per-table readers as delegates.
|
|
@@ -39,6 +43,7 @@ module Rigor
|
|
|
39
43
|
def param_inferred_types: () -> Hash[[String, Symbol, Symbol], Hash[Symbol, Type::t]]
|
|
40
44
|
def run_generation: () -> Object?
|
|
41
45
|
def record_dynamic_origin: (untyped node, Symbol cause) -> Scope
|
|
46
|
+
def record_optimistic_origin: (untyped node, Symbol cause) -> Scope
|
|
42
47
|
|
|
43
48
|
def record_void_origin: (untyped node, Inference::VoidOrigin origin) -> Scope
|
|
44
49
|
|
|
@@ -86,6 +91,8 @@ module Rigor
|
|
|
86
91
|
def with_source_path: (String? path) -> Scope
|
|
87
92
|
def with_struct_fold_safe: (Set[Symbol] locals) -> Scope
|
|
88
93
|
def struct_fold_safe?: (String | Symbol name) -> bool
|
|
94
|
+
def entering_opaque_block: () -> Scope
|
|
95
|
+
def opaque_block_self?: () -> bool
|
|
89
96
|
def with_discovery: (DiscoveryIndex index) -> Scope
|
|
90
97
|
def local: (String | Symbol name) -> Type::t?
|
|
91
98
|
def ivar: (String | Symbol name) -> Type::t?
|
|
@@ -93,9 +100,13 @@ module Rigor
|
|
|
93
100
|
def global: (String | Symbol name) -> Type::t?
|
|
94
101
|
def local_origin: (String | Symbol name) -> Symbol?
|
|
95
102
|
def ivar_origin: (String | Symbol name) -> Symbol?
|
|
103
|
+
def optimistic_local: (String | Symbol name) -> Symbol?
|
|
104
|
+
def optimistic_ivar: (String | Symbol name) -> Symbol?
|
|
96
105
|
def with_local: (String | Symbol name, Type::t type) -> Scope
|
|
97
106
|
def with_ivar: (String | Symbol name, Type::t type) -> Scope
|
|
98
107
|
def with_local_origin: (String | Symbol name, Symbol? cause) -> Scope
|
|
108
|
+
def with_optimistic_local: (String | Symbol name, Symbol? cause) -> Scope
|
|
109
|
+
def with_optimistic_ivar: (String | Symbol name, Symbol? cause) -> Scope
|
|
99
110
|
def with_ivar_origin: (String | Symbol name, Symbol? cause) -> Scope
|
|
100
111
|
def with_cvar: (String | Symbol name, Type::t type) -> Scope
|
|
101
112
|
def with_global: (String | Symbol name, Type::t type) -> Scope
|
|
@@ -115,6 +126,7 @@ module Rigor
|
|
|
115
126
|
def singleton_def_for: (String | Symbol class_name, String | Symbol method_name) -> untyped?
|
|
116
127
|
def user_def_site_for: (String | Symbol class_name, String | Symbol method_name) -> String?
|
|
117
128
|
def top_level_def_for: (String | Symbol method_name) -> untyped?
|
|
129
|
+
def bindable_top_level_def_for: (String | Symbol method_name) -> untyped?
|
|
118
130
|
def toplevel?: () -> bool
|
|
119
131
|
def discovered_method_visibility: (String | Symbol class_name, String | Symbol method_name) -> Symbol?
|
|
120
132
|
def superclass_of: (String | Symbol class_name) -> String?
|
data/sig/rigor.rbs
CHANGED
|
@@ -58,6 +58,10 @@ module Rigor
|
|
|
58
58
|
# `node` / `location` are Prism values, received as `untyped`).
|
|
59
59
|
def self.from_node: (untyped node, path: String, message: String, ?severity: Symbol, ?rule: String?, ?source_family: String, ?receiver_type: untyped, ?method_name: untyped, ?project_definition_site: untyped) -> Rigor::Analysis::Diagnostic
|
|
60
60
|
def self.from_location: (untyped location, path: String, message: String, ?severity: Symbol, ?rule: String?, ?source_family: String, ?receiver_type: untyped, ?method_name: untyped, ?project_definition_site: untyped) -> Rigor::Analysis::Diagnostic
|
|
61
|
+
# `from_message_loc` / `from_name_loc` forward `**` to `from_location`, so their keyword surface is
|
|
62
|
+
# `from_location`'s; only the positional node differs.
|
|
63
|
+
def self.from_message_loc: (untyped node, path: String, message: String, ?severity: Symbol, ?rule: String?, ?source_family: String, ?receiver_type: untyped, ?method_name: untyped, ?project_definition_site: untyped) -> Rigor::Analysis::Diagnostic
|
|
64
|
+
def self.from_name_loc: (untyped node, path: String, message: String, ?severity: Symbol, ?rule: String?, ?source_family: String, ?receiver_type: untyped, ?method_name: untyped, ?project_definition_site: untyped) -> Rigor::Analysis::Diagnostic
|
|
61
65
|
end
|
|
62
66
|
|
|
63
67
|
class Result
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rigortype
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rigor contributors
|
|
@@ -290,6 +290,7 @@ files:
|
|
|
290
290
|
- data/core_overlay/numeric.rbs
|
|
291
291
|
- data/core_overlay/pathname.rbs
|
|
292
292
|
- data/core_overlay/psych.rbs
|
|
293
|
+
- data/core_overlay/resolv.rbs
|
|
293
294
|
- data/core_overlay/string_scanner.rbs
|
|
294
295
|
- data/gem_overlay/activesupport/core_ext.rbs
|
|
295
296
|
- data/vendored_gem_sigs/ast/ast.rbs
|
|
@@ -306,6 +307,7 @@ files:
|
|
|
306
307
|
- data/vendored_gem_sigs/nokogiri/nokogiri_html5.rbs
|
|
307
308
|
- data/vendored_gem_sigs/pg/pg.rbs
|
|
308
309
|
- data/vendored_gem_sigs/prism/prism_supplement.rbs
|
|
310
|
+
- data/vendored_gem_sigs/racc/racc.rbs
|
|
309
311
|
- data/vendored_gem_sigs/redis/errors.rbs
|
|
310
312
|
- data/vendored_gem_sigs/redis/future.rbs
|
|
311
313
|
- data/vendored_gem_sigs/redis/redis.rbs
|
|
@@ -395,6 +397,7 @@ files:
|
|
|
395
397
|
- lib/rigor/analysis/check_rules.rb
|
|
396
398
|
- lib/rigor/analysis/check_rules/always_truthy_condition_collector.rb
|
|
397
399
|
- lib/rigor/analysis/check_rules/dead_assignment_collector.rb
|
|
400
|
+
- lib/rigor/analysis/check_rules/declaration_sourced_guard.rb
|
|
398
401
|
- lib/rigor/analysis/check_rules/duplicate_hash_key_collector.rb
|
|
399
402
|
- lib/rigor/analysis/check_rules/inferred_param_guard.rb
|
|
400
403
|
- lib/rigor/analysis/check_rules/ivar_write_collector.rb
|
|
@@ -428,6 +431,7 @@ files:
|
|
|
428
431
|
- lib/rigor/analysis/run_cache_probe.rb
|
|
429
432
|
- lib/rigor/analysis/run_stats.rb
|
|
430
433
|
- lib/rigor/analysis/runner.rb
|
|
434
|
+
- lib/rigor/analysis/runner/buffer_pool_dispatcher.rb
|
|
431
435
|
- lib/rigor/analysis/runner/diagnostic_aggregator.rb
|
|
432
436
|
- lib/rigor/analysis/runner/pool_coordinator.rb
|
|
433
437
|
- lib/rigor/analysis/runner/project_pre_passes.rb
|
|
@@ -444,6 +448,7 @@ files:
|
|
|
444
448
|
- lib/rigor/builtins/regex_refinement.rb
|
|
445
449
|
- lib/rigor/builtins/static_return_refinements.rb
|
|
446
450
|
- lib/rigor/cache/descriptor.rb
|
|
451
|
+
- lib/rigor/cache/engine_source.rb
|
|
447
452
|
- lib/rigor/cache/file_digest.rb
|
|
448
453
|
- lib/rigor/cache/incremental_snapshot.rb
|
|
449
454
|
- lib/rigor/cache/rbs_cache_producer.rb
|
|
@@ -477,6 +482,7 @@ files:
|
|
|
477
482
|
- lib/rigor/cli/fused_protection_report.rb
|
|
478
483
|
- lib/rigor/cli/lsp_command.rb
|
|
479
484
|
- lib/rigor/cli/mcp_command.rb
|
|
485
|
+
- lib/rigor/cli/mutation_fork_scan.rb
|
|
480
486
|
- lib/rigor/cli/mutation_protection_renderer.rb
|
|
481
487
|
- lib/rigor/cli/mutation_protection_report.rb
|
|
482
488
|
- lib/rigor/cli/options.rb
|
|
@@ -529,6 +535,7 @@ files:
|
|
|
529
535
|
- lib/rigor/flow_contribution/merge_result.rb
|
|
530
536
|
- lib/rigor/flow_contribution/merger.rb
|
|
531
537
|
- lib/rigor/inference/acceptance.rb
|
|
538
|
+
- lib/rigor/inference/anonymous_meta_class.rb
|
|
532
539
|
- lib/rigor/inference/block_parameter_binder.rb
|
|
533
540
|
- lib/rigor/inference/body_fixpoint.rb
|
|
534
541
|
- lib/rigor/inference/budget_trace.rb
|
|
@@ -599,6 +606,7 @@ files:
|
|
|
599
606
|
- lib/rigor/inference/multi_target_binder.rb
|
|
600
607
|
- lib/rigor/inference/mutation_widening.rb
|
|
601
608
|
- lib/rigor/inference/narrowing.rb
|
|
609
|
+
- lib/rigor/inference/optimistic_origin.rb
|
|
602
610
|
- lib/rigor/inference/origin_lookup.rb
|
|
603
611
|
- lib/rigor/inference/parameter_inference_collector.rb
|
|
604
612
|
- lib/rigor/inference/precision_scanner.rb
|
|
@@ -606,7 +614,9 @@ files:
|
|
|
606
614
|
- lib/rigor/inference/project_patched_scanner.rb
|
|
607
615
|
- lib/rigor/inference/protection_scanner.rb
|
|
608
616
|
- lib/rigor/inference/rbs_type_translator.rb
|
|
617
|
+
- lib/rigor/inference/receiver_alias.rb
|
|
609
618
|
- lib/rigor/inference/scope_indexer.rb
|
|
619
|
+
- lib/rigor/inference/singleton_object_constant.rb
|
|
610
620
|
- lib/rigor/inference/statement_evaluator.rb
|
|
611
621
|
- lib/rigor/inference/struct_fold_safety.rb
|
|
612
622
|
- lib/rigor/inference/synthetic_method.rb
|
|
@@ -627,6 +637,7 @@ files:
|
|
|
627
637
|
- lib/rigor/language_server/incremental_sync.rb
|
|
628
638
|
- lib/rigor/language_server/loop.rb
|
|
629
639
|
- lib/rigor/language_server/project_context.rb
|
|
640
|
+
- lib/rigor/language_server/publish_batcher.rb
|
|
630
641
|
- lib/rigor/language_server/selection_range_provider.rb
|
|
631
642
|
- lib/rigor/language_server/server.rb
|
|
632
643
|
- lib/rigor/language_server/signature_help_provider.rb
|
|
@@ -661,7 +672,12 @@ files:
|
|
|
661
672
|
- lib/rigor/plugin/source_rbs_synthesis_reporter.rb
|
|
662
673
|
- lib/rigor/plugin/trust_policy.rb
|
|
663
674
|
- lib/rigor/plugin/type_node_resolver.rb
|
|
675
|
+
- lib/rigor/protection/closure_kill_oracle.rb
|
|
676
|
+
- lib/rigor/protection/dependency_closure.rb
|
|
664
677
|
- lib/rigor/protection/diagnostic_oracle.rb
|
|
678
|
+
- lib/rigor/protection/discovery_seed.rb
|
|
679
|
+
- lib/rigor/protection/kill_signature.rb
|
|
680
|
+
- lib/rigor/protection/mutation_cache.rb
|
|
665
681
|
- lib/rigor/protection/mutation_scanner.rb
|
|
666
682
|
- lib/rigor/protection/mutator.rb
|
|
667
683
|
- lib/rigor/protection/test_suite_oracle.rb
|
|
@@ -677,6 +693,7 @@ files:
|
|
|
677
693
|
- lib/rigor/sig_gen/classification.rb
|
|
678
694
|
- lib/rigor/sig_gen/generator.rb
|
|
679
695
|
- lib/rigor/sig_gen/layout_index.rb
|
|
696
|
+
- lib/rigor/sig_gen/meta_class_shape.rb
|
|
680
697
|
- lib/rigor/sig_gen/method_candidate.rb
|
|
681
698
|
- lib/rigor/sig_gen/observation_collector.rb
|
|
682
699
|
- lib/rigor/sig_gen/observed_call.rb
|
|
@@ -701,6 +718,7 @@ files:
|
|
|
701
718
|
- lib/rigor/type.rb
|
|
702
719
|
- lib/rigor/type/acceptance_router.rb
|
|
703
720
|
- lib/rigor/type/accepts_result.rb
|
|
721
|
+
- lib/rigor/type/anonymous_class_name.rb
|
|
704
722
|
- lib/rigor/type/app.rb
|
|
705
723
|
- lib/rigor/type/bot.rb
|
|
706
724
|
- lib/rigor/type/bound_method.rb
|
|
@@ -776,6 +794,7 @@ files:
|
|
|
776
794
|
- plugins/rigor-devise/lib/rigor/plugin/devise.rb
|
|
777
795
|
- plugins/rigor-dry-schema/lib/rigor-dry-schema.rb
|
|
778
796
|
- plugins/rigor-dry-schema/lib/rigor/plugin/dry_schema.rb
|
|
797
|
+
- plugins/rigor-dry-schema/lib/rigor/plugin/dry_schema/result_shape.rb
|
|
779
798
|
- plugins/rigor-dry-schema/lib/rigor/plugin/dry_schema/schema_scanner.rb
|
|
780
799
|
- plugins/rigor-dry-struct/lib/rigor-dry-struct.rb
|
|
781
800
|
- plugins/rigor-dry-struct/lib/rigor/plugin/dry_struct.rb
|
|
@@ -785,6 +804,7 @@ files:
|
|
|
785
804
|
- plugins/rigor-dry-validation/lib/rigor-dry-validation.rb
|
|
786
805
|
- plugins/rigor-dry-validation/lib/rigor/plugin/dry_validation.rb
|
|
787
806
|
- plugins/rigor-dry-validation/lib/rigor/plugin/dry_validation/contract_scanner.rb
|
|
807
|
+
- plugins/rigor-dry-validation/lib/rigor/plugin/dry_validation/params_shape.rb
|
|
788
808
|
- plugins/rigor-dry-validation/sig/dry_validation.rbs
|
|
789
809
|
- plugins/rigor-factorybot/lib/rigor-factorybot.rb
|
|
790
810
|
- plugins/rigor-factorybot/lib/rigor/plugin/factorybot.rb
|