activerecord-setops 0.1.7 → 1.0.0

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: 19f77a7a5a20214036dc0394e28556788dcbbf95a9c78f8b502fe52fb551ec66
4
- data.tar.gz: 9393dd62ceb050cd2605b9b112b7d3cd442e677398fb3ca1d13e7ec8cb836fca
3
+ metadata.gz: 70c39529d33485dd3cbcd0820870cdd8d73e2db9d70acab7ca84d4e50f3e539b
4
+ data.tar.gz: ffacade3e925a20c850be2c25be1a36e2a31d0aebcf81ac7ae9f40b61627f23a
5
5
  SHA512:
6
- metadata.gz: 6f52b0afedfca8afa3fe948c831fb0ab6db2e31d37618268ee0246e8248f903fa8e83f70ccc7d785603011d0a7bc836a55fa6badbd7aa29d6eb24834f3647f02
7
- data.tar.gz: 8a8e060c36ab59c0f5b50dabe04d7071a8251fb0835ddecb8aa9682211767c5698000ccd76397f98525fa81217afbcabaa0edc7cad08645bc4a646407ccec420
6
+ metadata.gz: 1ac1cb5ca6ba34b0851221d54750af0670d995c972ac251e4372aeed4c5789473afbf1fae4561e157bb6192e13eeec915162bd7a3b98b33b727f28531393025e
7
+ data.tar.gz: 52bffa93df07b8cf7b47d3cec8ca881f8da646955ccf85e8f7b472e03609859895e15137d44868c1c1dd1c5d41699235f195e6a082bb7bfd1e96c0354c67266b
@@ -1,21 +1,35 @@
1
+ # This workflow uses actions that are not certified by GitHub.
2
+ # They are provided by a third-party and are governed by
3
+ # separate terms of service, privacy policy, and support
4
+ # documentation.
5
+ # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
6
+ # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
7
+
1
8
  name: Ruby
2
9
 
3
- on: [push]
10
+ on:
11
+ push:
12
+ branches: [ master ]
13
+ pull_request:
14
+ branches: [ master ]
4
15
 
5
16
  jobs:
6
- build:
17
+ test:
7
18
 
8
19
  runs-on: ubuntu-latest
20
+ strategy:
21
+ matrix:
22
+ ruby-version: ['2.6', '2.7', '3.0']
9
23
 
10
24
  steps:
11
25
  - uses: actions/checkout@v2
12
- - name: Set up Ruby 2.6
13
- uses: actions/setup-ruby@v1
26
+ - name: Set up Ruby
27
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
28
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
29
+ # uses: ruby/setup-ruby@v1
30
+ uses: ruby/setup-ruby@473e4d8fe5dd94ee328fdfca9f8c9c7afc9dae5e
14
31
  with:
15
- ruby-version: 2.6.x
16
- - name: Build and test with Rake
17
- run: |
18
- sudo apt-get install libsqlite3-dev
19
- gem install bundler
20
- bundle install --jobs 4 --retry 3
21
- bundle exec rake
32
+ ruby-version: ${{ matrix.ruby-version }}
33
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
34
+ - name: Run tests
35
+ run: bundle exec rake
@@ -1,9 +1,14 @@
1
1
  # Changelog
2
2
 
3
- ## 0.1.5
3
+ ## 0.1.7
4
4
 
5
- - Added `lib/activerecord-setops.rb`
5
+ - alias `union_all` as `+`
6
6
 
7
7
  ## 0.1.6
8
8
 
9
9
  - Removed `except` can still be called as `difference` or `-`.
10
+
11
+
12
+ ## 0.1.5
13
+
14
+ - Added `lib/activerecord-setops.rb`
data/Gemfile CHANGED
@@ -4,3 +4,10 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
4
4
 
5
5
  # Specify your gem's dependencies in activerecord-setoperations.gemspec
6
6
  gemspec
7
+
8
+ gem 'gen-test', github: 'delonnewman/gen-test'
9
+ gem 'contracts-gen', github: 'delonnewman/contracts-gen'
10
+
11
+ gem 'activerecord', '>= 5.2'
12
+ gem 'activesupport', '>= 5.2'
13
+ gem 'sqlite3', '~> 1.4.2'
@@ -1,71 +1,80 @@
1
+ GIT
2
+ remote: https://github.com/delonnewman/contracts-gen
3
+ revision: 48f5d08cf2df0f2f21df887b77022b5793c7017e
4
+ specs:
5
+ contracts-gen (0.2.0)
6
+ contracts (~> 0.16.0)
7
+ faker (~> 1.9.6)
8
+ gen-test (~> 0.2)
9
+
10
+ GIT
11
+ remote: https://github.com/delonnewman/gen-test
12
+ revision: 3279faed9301ac6f7accf137d58ff6dae124b834
13
+ specs:
14
+ gen-test (0.2.0)
15
+ faker (~> 1.9.6)
16
+ regexp-examples (~> 1.5.0)
17
+
1
18
  PATH
2
19
  remote: .
3
20
  specs:
4
- activerecord-setops (0.1.7)
21
+ activerecord-setops (1.0.0)
5
22
 
6
23
  GEM
7
24
  remote: https://rubygems.org/
8
25
  specs:
9
- activemodel (5.2.4.3)
10
- activesupport (= 5.2.4.3)
11
- activerecord (5.2.4.3)
12
- activemodel (= 5.2.4.3)
13
- activesupport (= 5.2.4.3)
14
- arel (>= 9.0)
15
- activesupport (5.2.4.3)
26
+ activemodel (6.1.1)
27
+ activesupport (= 6.1.1)
28
+ activerecord (6.1.1)
29
+ activemodel (= 6.1.1)
30
+ activesupport (= 6.1.1)
31
+ activesupport (6.1.1)
16
32
  concurrent-ruby (~> 1.0, >= 1.0.2)
17
- i18n (>= 0.7, < 2)
18
- minitest (~> 5.1)
19
- tzinfo (~> 1.1)
20
- arel (9.0.0)
21
- concurrent-ruby (1.1.6)
33
+ i18n (>= 1.6, < 2)
34
+ minitest (>= 5.1)
35
+ tzinfo (~> 2.0)
36
+ zeitwerk (~> 2.3)
37
+ concurrent-ruby (1.1.8)
22
38
  contracts (0.16.0)
23
- contracts-gen (0.1.1)
24
- contracts (~> 0.16.0)
25
- faker (~> 1.9.6)
26
- gen-test (~> 0.1.0)
27
- diff-lcs (1.3)
39
+ diff-lcs (1.4.4)
28
40
  faker (1.9.6)
29
41
  i18n (>= 0.7)
30
- gen-test (0.1.1)
31
- faker (~> 1.9.6)
32
- regexp-examples (~> 1.5.0)
33
- i18n (1.8.2)
42
+ i18n (1.8.7)
34
43
  concurrent-ruby (~> 1.0)
35
- minitest (5.14.1)
36
- rake (13.0.1)
44
+ minitest (5.14.3)
45
+ rake (13.0.3)
37
46
  regexp-examples (1.5.1)
38
- rspec (3.9.0)
39
- rspec-core (~> 3.9.0)
40
- rspec-expectations (~> 3.9.0)
41
- rspec-mocks (~> 3.9.0)
42
- rspec-core (3.9.1)
43
- rspec-support (~> 3.9.1)
44
- rspec-expectations (3.9.0)
47
+ rspec (3.10.0)
48
+ rspec-core (~> 3.10.0)
49
+ rspec-expectations (~> 3.10.0)
50
+ rspec-mocks (~> 3.10.0)
51
+ rspec-core (3.10.1)
52
+ rspec-support (~> 3.10.0)
53
+ rspec-expectations (3.10.1)
45
54
  diff-lcs (>= 1.2.0, < 2.0)
46
- rspec-support (~> 3.9.0)
47
- rspec-mocks (3.9.1)
55
+ rspec-support (~> 3.10.0)
56
+ rspec-mocks (3.10.1)
48
57
  diff-lcs (>= 1.2.0, < 2.0)
49
- rspec-support (~> 3.9.0)
50
- rspec-support (3.9.2)
58
+ rspec-support (~> 3.10.0)
59
+ rspec-support (3.10.1)
51
60
  sqlite3 (1.4.2)
52
- thread_safe (0.3.6)
53
- tzinfo (1.2.7)
54
- thread_safe (~> 0.1)
61
+ tzinfo (2.0.4)
62
+ concurrent-ruby (~> 1.0)
63
+ zeitwerk (2.4.2)
55
64
 
56
65
  PLATFORMS
57
66
  ruby
58
67
 
59
68
  DEPENDENCIES
60
- activerecord (>= 5.2.4.3, < 6)
69
+ activerecord (>= 5.2)
61
70
  activerecord-setops!
62
- activesupport (>= 5.2.4.3, < 6)
63
- bundler (~> 1.17)
64
- contracts-gen (~> 0.1.1)
65
- gen-test (~> 0.1.1)
71
+ activesupport (>= 5.2)
72
+ bundler (~> 2.1)
73
+ contracts-gen!
74
+ gen-test!
66
75
  rake (~> 13.0)
67
76
  rspec (~> 3.0)
68
77
  sqlite3 (~> 1.4.2)
69
78
 
70
79
  BUNDLED WITH
71
- 1.17.3
80
+ 2.2.3
data/README.md CHANGED
@@ -45,17 +45,15 @@ If you'd like the functionality, but would prefer to avoid yet another dependenc
45
45
  ```ruby
46
46
  module ActiveRecord
47
47
  class Relation
48
- # Performs a set theoretic union works like `Array#+` but puts the load on the database
49
- # and allows you to chain more relation operations.
50
48
  def union(other)
51
49
  binary_operation(Arel::Nodes::Union, other)
52
50
  end
53
51
  alias | union
54
- alias + union
55
52
 
56
53
  def union_all(other)
57
54
  binary_operation(Arel::Nodes::UnionAll, other)
58
55
  end
56
+ alias + union_all
59
57
 
60
58
  def intersect(other)
61
59
  binary_operation(Arel::Nodes::Intersect, other)
@@ -36,12 +36,7 @@ Gem::Specification.new do |spec|
36
36
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
37
37
  spec.require_paths = ["lib"]
38
38
 
39
- spec.add_development_dependency "bundler", "~> 1.17"
39
+ spec.add_development_dependency "bundler", "~> 2.1"
40
40
  spec.add_development_dependency "rake", "~> 13.0"
41
41
  spec.add_development_dependency "rspec", "~> 3.0"
42
- spec.add_development_dependency "gen-test", "~> 0.1.1"
43
- spec.add_development_dependency "contracts-gen", "~> 0.1.1"
44
- spec.add_development_dependency "activerecord", [">= 5.2.4.3", "< 6"]
45
- spec.add_development_dependency "activesupport", [">= 5.2.4.3", "< 6"]
46
- spec.add_development_dependency "sqlite3", "~> 1.4.2"
47
42
  end
@@ -1,5 +1,5 @@
1
1
  module ActiveRecord
2
2
  module Setops
3
- VERSION = "0.1.7"
3
+ VERSION = "1.0.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-setops
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Delon Newman
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-11-10 00:00:00.000000000 Z
11
+ date: 2021-01-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.17'
19
+ version: '2.1'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.17'
26
+ version: '2.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -52,88 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '3.0'
55
- - !ruby/object:Gem::Dependency
56
- name: gen-test
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: 0.1.1
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: 0.1.1
69
- - !ruby/object:Gem::Dependency
70
- name: contracts-gen
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: 0.1.1
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: 0.1.1
83
- - !ruby/object:Gem::Dependency
84
- name: activerecord
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: 5.2.4.3
90
- - - "<"
91
- - !ruby/object:Gem::Version
92
- version: '6'
93
- type: :development
94
- prerelease: false
95
- version_requirements: !ruby/object:Gem::Requirement
96
- requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- version: 5.2.4.3
100
- - - "<"
101
- - !ruby/object:Gem::Version
102
- version: '6'
103
- - !ruby/object:Gem::Dependency
104
- name: activesupport
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - ">="
108
- - !ruby/object:Gem::Version
109
- version: 5.2.4.3
110
- - - "<"
111
- - !ruby/object:Gem::Version
112
- version: '6'
113
- type: :development
114
- prerelease: false
115
- version_requirements: !ruby/object:Gem::Requirement
116
- requirements:
117
- - - ">="
118
- - !ruby/object:Gem::Version
119
- version: 5.2.4.3
120
- - - "<"
121
- - !ruby/object:Gem::Version
122
- version: '6'
123
- - !ruby/object:Gem::Dependency
124
- name: sqlite3
125
- requirement: !ruby/object:Gem::Requirement
126
- requirements:
127
- - - "~>"
128
- - !ruby/object:Gem::Version
129
- version: 1.4.2
130
- type: :development
131
- prerelease: false
132
- version_requirements: !ruby/object:Gem::Requirement
133
- requirements:
134
- - - "~>"
135
- - !ruby/object:Gem::Version
136
- version: 1.4.2
137
55
  description: Union, Intersection, and Difference operations for ActiveRecord
138
56
  email:
139
57
  - contact@delonnewman.name
@@ -178,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
178
96
  - !ruby/object:Gem::Version
179
97
  version: '0'
180
98
  requirements: []
181
- rubygems_version: 3.0.6
99
+ rubygems_version: 3.2.3
182
100
  signing_key:
183
101
  specification_version: 4
184
102
  summary: Set operations for ActiveRecord