activerecord-ejection_seat 0.1.0 → 0.2.0
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/.rubocop.yml +1 -0
- data/Gemfile +11 -3
- data/Gemfile.lock +99 -35
- data/README.md +4 -0
- data/Rakefile +14 -2
- data/lib/activerecord-ejection_seat/ejectable.rb +2 -1
- data/lib/activerecord-ejection_seat/props_builder.rb +44 -0
- data/lib/activerecord-ejection_seat/version.rb +2 -1
- data/lib/activerecord-ejection_seat.rb +3 -1
- data/sorbet/config +3 -0
- data/sorbet/rbi/annotations/activerecord.rbi +18 -0
- data/sorbet/rbi/annotations/activesupport.rbi +52 -0
- data/sorbet/rbi/annotations/rainbow.rbi +269 -0
- data/sorbet/rbi/gems/activemodel@7.0.4.rbi +8 -0
- data/sorbet/rbi/gems/activerecord@7.0.4.rbi +11 -0
- data/sorbet/rbi/gems/activesupport@7.0.4.rbi +93 -0
- data/sorbet/rbi/gems/ast@2.4.2.rbi +584 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi +8 -0
- data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +1064 -0
- data/sorbet/rbi/gems/i18n@1.12.0.rbi +8 -0
- data/sorbet/rbi/gems/io-console@0.6.0.rbi +8 -0
- data/sorbet/rbi/gems/irb@1.6.2.rbi +342 -0
- data/sorbet/rbi/gems/json@2.6.3.rbi +1541 -0
- data/sorbet/rbi/gems/language_server-protocol@3.17.0.2.rbi +8 -0
- data/sorbet/rbi/gems/minitest@5.16.3.rbi +8 -0
- data/sorbet/rbi/gems/netrc@0.11.0.rbi +158 -0
- data/sorbet/rbi/gems/parallel@1.22.1.rbi +277 -0
- data/sorbet/rbi/gems/parser@3.1.3.0.rbi +6878 -0
- data/sorbet/rbi/gems/prettier_print@1.1.0.rbi +8 -0
- data/sorbet/rbi/gems/rainbow@3.1.1.rbi +397 -0
- data/sorbet/rbi/gems/rake@13.0.6.rbi +2946 -0
- data/sorbet/rbi/gems/rbi@0.0.16.rbi +3008 -0
- data/sorbet/rbi/gems/regexp_parser@2.6.1.rbi +3126 -0
- data/sorbet/rbi/gems/reline@0.3.2.rbi +8 -0
- data/sorbet/rbi/gems/rexml@3.2.5.rbi +4660 -0
- data/sorbet/rbi/gems/rspec-core@3.12.0.rbi +10588 -0
- data/sorbet/rbi/gems/rspec-expectations@3.12.1.rbi +7817 -0
- data/sorbet/rbi/gems/rspec-mocks@3.12.1.rbi +4994 -0
- data/sorbet/rbi/gems/rspec-support@3.12.0.rbi +1477 -0
- data/sorbet/rbi/gems/rspec@3.12.0.rbi +10 -0
- data/sorbet/rbi/gems/rubocop-ast@1.24.0.rbi +6790 -0
- data/sorbet/rbi/gems/rubocop-rake@0.6.0.rbi +354 -0
- data/sorbet/rbi/gems/rubocop-rspec@2.16.0.rbi +7650 -0
- data/sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi +1014 -0
- data/sorbet/rbi/gems/rubocop@1.41.0.rbi +52148 -0
- data/sorbet/rbi/gems/ruby-lsp@0.3.7.rbi +13 -0
- data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +1212 -0
- data/sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi +16 -0
- data/sorbet/rbi/gems/spoom@1.1.15.rbi +2383 -0
- data/sorbet/rbi/gems/sqlite3@1.5.4.rbi +1600 -0
- data/sorbet/rbi/gems/syntax_tree@4.3.0.rbi +8 -0
- data/sorbet/rbi/gems/tapioca@0.10.4.rbi +3032 -0
- data/sorbet/rbi/gems/thor@1.2.1.rbi +3950 -0
- data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +8 -0
- data/sorbet/rbi/gems/unicode-display_width@2.3.0.rbi +46 -0
- data/sorbet/rbi/gems/unparser@0.6.5.rbi +4265 -0
- data/sorbet/rbi/gems/webrick@1.7.0.rbi +2498 -0
- data/sorbet/rbi/gems/yard-sorbet@0.7.0.rbi +391 -0
- data/sorbet/rbi/gems/yard@0.9.28.rbi +17033 -0
- data/sorbet/rbi/todo.rbi +9 -0
- data/sorbet/tapioca/config.yml +2 -0
- data/sorbet/tapioca/require.rb +4 -0
- metadata +71 -4
- data/activerecord-ejection_seat.gemspec +0 -39
data/sorbet/rbi/todo.rbi
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
# DO NOT EDIT MANUALLY
|
2
|
+
# This is an autogenerated file for unresolved constants.
|
3
|
+
# Please instead update this file by running `bin/tapioca todo`.
|
4
|
+
|
5
|
+
# typed: false
|
6
|
+
|
7
|
+
module ActiveRecord::ConnectionAdapters::DatabaseStatements; end
|
8
|
+
module ActiveRecord::ConnectionAdapters::SchemaStatements; end
|
9
|
+
module ActiveRecord::DatabaseConfigurations::HashConfig; end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-ejection_seat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Max VelDink
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-12-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '5.2'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: sorbet-runtime
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
description: When working with ActiveRecord models, sometimes you want to eject to
|
28
42
|
a simpler, safer object. Enter Sorbet's T::Struct. This gem
|
29
43
|
makes it much easier to target a Sorbet T::Struct and eject
|
@@ -44,10 +58,63 @@ files:
|
|
44
58
|
- LICENSE.txt
|
45
59
|
- README.md
|
46
60
|
- Rakefile
|
47
|
-
- activerecord-ejection_seat.gemspec
|
48
61
|
- lib/activerecord-ejection_seat.rb
|
49
62
|
- lib/activerecord-ejection_seat/ejectable.rb
|
63
|
+
- lib/activerecord-ejection_seat/props_builder.rb
|
50
64
|
- lib/activerecord-ejection_seat/version.rb
|
65
|
+
- sorbet/config
|
66
|
+
- sorbet/rbi/annotations/activerecord.rbi
|
67
|
+
- sorbet/rbi/annotations/activesupport.rbi
|
68
|
+
- sorbet/rbi/annotations/rainbow.rbi
|
69
|
+
- sorbet/rbi/gems/activemodel@7.0.4.rbi
|
70
|
+
- sorbet/rbi/gems/activerecord@7.0.4.rbi
|
71
|
+
- sorbet/rbi/gems/activesupport@7.0.4.rbi
|
72
|
+
- sorbet/rbi/gems/ast@2.4.2.rbi
|
73
|
+
- sorbet/rbi/gems/concurrent-ruby@1.1.10.rbi
|
74
|
+
- sorbet/rbi/gems/diff-lcs@1.5.0.rbi
|
75
|
+
- sorbet/rbi/gems/i18n@1.12.0.rbi
|
76
|
+
- sorbet/rbi/gems/io-console@0.6.0.rbi
|
77
|
+
- sorbet/rbi/gems/irb@1.6.2.rbi
|
78
|
+
- sorbet/rbi/gems/json@2.6.3.rbi
|
79
|
+
- sorbet/rbi/gems/language_server-protocol@3.17.0.2.rbi
|
80
|
+
- sorbet/rbi/gems/minitest@5.16.3.rbi
|
81
|
+
- sorbet/rbi/gems/netrc@0.11.0.rbi
|
82
|
+
- sorbet/rbi/gems/parallel@1.22.1.rbi
|
83
|
+
- sorbet/rbi/gems/parser@3.1.3.0.rbi
|
84
|
+
- sorbet/rbi/gems/prettier_print@1.1.0.rbi
|
85
|
+
- sorbet/rbi/gems/rainbow@3.1.1.rbi
|
86
|
+
- sorbet/rbi/gems/rake@13.0.6.rbi
|
87
|
+
- sorbet/rbi/gems/rbi@0.0.16.rbi
|
88
|
+
- sorbet/rbi/gems/regexp_parser@2.6.1.rbi
|
89
|
+
- sorbet/rbi/gems/reline@0.3.2.rbi
|
90
|
+
- sorbet/rbi/gems/rexml@3.2.5.rbi
|
91
|
+
- sorbet/rbi/gems/rspec-core@3.12.0.rbi
|
92
|
+
- sorbet/rbi/gems/rspec-expectations@3.12.1.rbi
|
93
|
+
- sorbet/rbi/gems/rspec-mocks@3.12.1.rbi
|
94
|
+
- sorbet/rbi/gems/rspec-support@3.12.0.rbi
|
95
|
+
- sorbet/rbi/gems/rspec@3.12.0.rbi
|
96
|
+
- sorbet/rbi/gems/rubocop-ast@1.24.0.rbi
|
97
|
+
- sorbet/rbi/gems/rubocop-rake@0.6.0.rbi
|
98
|
+
- sorbet/rbi/gems/rubocop-rspec@2.16.0.rbi
|
99
|
+
- sorbet/rbi/gems/rubocop-sorbet@0.6.11.rbi
|
100
|
+
- sorbet/rbi/gems/rubocop@1.41.0.rbi
|
101
|
+
- sorbet/rbi/gems/ruby-lsp@0.3.7.rbi
|
102
|
+
- sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi
|
103
|
+
- sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi
|
104
|
+
- sorbet/rbi/gems/spoom@1.1.15.rbi
|
105
|
+
- sorbet/rbi/gems/sqlite3@1.5.4.rbi
|
106
|
+
- sorbet/rbi/gems/syntax_tree@4.3.0.rbi
|
107
|
+
- sorbet/rbi/gems/tapioca@0.10.4.rbi
|
108
|
+
- sorbet/rbi/gems/thor@1.2.1.rbi
|
109
|
+
- sorbet/rbi/gems/tzinfo@2.0.5.rbi
|
110
|
+
- sorbet/rbi/gems/unicode-display_width@2.3.0.rbi
|
111
|
+
- sorbet/rbi/gems/unparser@0.6.5.rbi
|
112
|
+
- sorbet/rbi/gems/webrick@1.7.0.rbi
|
113
|
+
- sorbet/rbi/gems/yard-sorbet@0.7.0.rbi
|
114
|
+
- sorbet/rbi/gems/yard@0.9.28.rbi
|
115
|
+
- sorbet/rbi/todo.rbi
|
116
|
+
- sorbet/tapioca/config.yml
|
117
|
+
- sorbet/tapioca/require.rb
|
51
118
|
homepage: https://github.com/AudaciousAardvark/activerecord-ejection_seat
|
52
119
|
licenses:
|
53
120
|
- MIT
|
@@ -72,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
72
139
|
- !ruby/object:Gem::Version
|
73
140
|
version: '0'
|
74
141
|
requirements: []
|
75
|
-
rubygems_version: 3.3.
|
142
|
+
rubygems_version: 3.3.26
|
76
143
|
signing_key:
|
77
144
|
specification_version: 4
|
78
145
|
summary: Eject from an ActiveRecord model to a Sorbet T::Struct, or buckle back in.
|
@@ -1,39 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative "lib/activerecord-ejection_seat/version"
|
4
|
-
|
5
|
-
Gem::Specification.new do |spec|
|
6
|
-
spec.name = "activerecord-ejection_seat"
|
7
|
-
spec.version = ActiveRecord::EjectionSeat::VERSION
|
8
|
-
spec.authors = ["Max VelDink"]
|
9
|
-
spec.email = ["max@audaciousaardvark.com"]
|
10
|
-
|
11
|
-
spec.summary = "Eject from an ActiveRecord model to a Sorbet T::Struct, or buckle back in."
|
12
|
-
spec.description = "When working with ActiveRecord models, sometimes you want to eject to a simpler, safer object. \
|
13
|
-
Enter Sorbet's T::Struct. This gem makes it much easier to target a \
|
14
|
-
Sorbet T::Struct and eject from an ActiveRecord model into the struct. \
|
15
|
-
It also allows you to buckle in from a simple struct to a new ActiveRecord model instance."
|
16
|
-
spec.homepage = "https://github.com/AudaciousAardvark/activerecord-ejection_seat"
|
17
|
-
spec.license = "MIT"
|
18
|
-
spec.required_ruby_version = ">= 2.7.0"
|
19
|
-
|
20
|
-
spec.metadata["allowed_push_host"] = "https://rubygems.org"
|
21
|
-
spec.metadata["rubygems_mfa_required"] = "true"
|
22
|
-
|
23
|
-
spec.metadata["homepage_uri"] = spec.homepage
|
24
|
-
spec.metadata["source_code_uri"] = spec.homepage
|
25
|
-
spec.metadata["changelog_uri"] = "https://github.com/AudaciousAardvark/activerecord-ejection_seat/blob/main/CHANGELOG.md"
|
26
|
-
|
27
|
-
# Specify which files should be added to the gem when it is released.
|
28
|
-
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
29
|
-
spec.files = Dir.chdir(__dir__) do
|
30
|
-
`git ls-files -z`.split("\x0").reject do |f|
|
31
|
-
(f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
|
32
|
-
end
|
33
|
-
end
|
34
|
-
spec.bindir = "exe"
|
35
|
-
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
36
|
-
spec.require_paths = ["lib"]
|
37
|
-
|
38
|
-
spec.add_runtime_dependency "activerecord", ">= 5.2"
|
39
|
-
end
|