super_tools 3.0.1 → 4.0.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4e679f4b41ffa1f04baee132e45b854efa2317e03b6300d747968f858caab6a6
4
- data.tar.gz: 4e635e119e9dfd2bcf058be7db40418e0874eaef755b3892048ec7c54bda3011
3
+ metadata.gz: 1d1e0b59e703770a0f9814a9c2cdf430c8c59ad2c829f051c225efc391371d62
4
+ data.tar.gz: 6ed2cd40f528a32dac21da1a8e989e23aa3934b8738202081bc06c46692d86c9
5
5
  SHA512:
6
- metadata.gz: 32a411a0cd5e85fb222c5d1224e6e67b22fabdc2a3918ff757a4f816ff3c1e705ac79d8d83f753eb6256852f9286e6c7debb20a260e598bdb6ec5719dc5020be
7
- data.tar.gz: d7c222e501cd6d8877cadaf6b2524428b5c478d02f61572fc6ec063a0d5243db1b36fee4181050e4dd68628c44447023af68995616b497dca71d35cd72241f84
6
+ metadata.gz: 65b7559d21d89aee15e0cc5e4c524cd75337da56653a3ddcf8b1bc9bf686a2cad32b31c3c9683daa89fb64368d58e5db20c05a5cc775f8d66327fc2d203f0059
7
+ data.tar.gz: 6cdf1ddf5bf91ed407a3881bddfd041df0ad68e7e73e554461ac2d741c45aa4c478d3e974d0df493bdc953ccb0f650867a2b5ac756bdd62821dac77bb4d1ddfb
@@ -6,16 +6,38 @@ on:
6
6
  - 'feat-**'
7
7
  - develop
8
8
  - master
9
+ pull_request:
9
10
 
10
11
  jobs:
11
12
  test:
12
13
  runs-on: ubuntu-latest
14
+ strategy:
15
+ fail-fast: false
16
+ matrix:
17
+ include:
18
+ # Ruby 2.7.6
19
+ - ruby: '2.7.6'
20
+ gemfile: gemfiles/ruby_2.7_rails_6.gemfile
21
+ - ruby: '2.7.6'
22
+ gemfile: gemfiles/ruby_2.7_rails_7.gemfile
23
+ # Ruby 3.0.7
24
+ - ruby: '3.0.7'
25
+ gemfile: gemfiles/ruby_3.0_rails_6.gemfile
26
+ - ruby: '3.0.7'
27
+ gemfile: gemfiles/ruby_3.0_rails_7.gemfile
28
+ # Ruby 3.1.7
29
+ - ruby: '3.1.7'
30
+ gemfile: gemfiles/ruby_3.1_rails_6.gemfile
31
+ - ruby: '3.1.7'
32
+ gemfile: gemfiles/ruby_3.1_rails_7.gemfile
33
+ env:
34
+ BUNDLE_GEMFILE: ${{ matrix.gemfile }}
13
35
  steps:
14
36
  - uses: actions/checkout@v3
15
37
  with:
16
38
  fetch-depth: 1
17
39
  - uses: ruby/setup-ruby@v1
18
40
  with:
41
+ ruby-version: ${{ matrix.ruby }}
19
42
  bundler-cache: true
20
- - run: bundle
21
43
  - run: bundle exec rake t
data/.gitignore CHANGED
@@ -11,3 +11,4 @@ vendor
11
11
  .DS_Store
12
12
  db/
13
13
  log/
14
+ /gemfiles/*.lock
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.0.4
1
+ 2.7.6
data/Appraisals ADDED
@@ -0,0 +1,29 @@
1
+ # Ruby 2.7.6 with Rails 6
2
+ appraise "ruby-2.7-rails-6" do
3
+ gem "rails", "~> 6.1.0"
4
+ end
5
+
6
+ # Ruby 2.7.6 with Rails 7
7
+ appraise "ruby-2.7-rails-7" do
8
+ gem "rails", "~> 7.0.0"
9
+ end
10
+
11
+ # Ruby 3.0.7 with Rails 6
12
+ appraise "ruby-3.0-rails-6" do
13
+ gem "rails", "~> 6.1.0"
14
+ end
15
+
16
+ # Ruby 3.0.7 with Rails 7
17
+ appraise "ruby-3.0-rails-7" do
18
+ gem "rails", "~> 7.0.0"
19
+ end
20
+
21
+ # Ruby 3.1.7 with Rails 6
22
+ appraise "ruby-3.1-rails-6" do
23
+ gem "rails", "~> 6.1.0"
24
+ end
25
+
26
+ # Ruby 3.1.7 with Rails 7
27
+ appraise "ruby-3.1-rails-7" do
28
+ gem "rails", "~> 7.0.0"
29
+ end
data/Gemfile CHANGED
@@ -5,4 +5,4 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
5
5
  # Specify your gem's dependencies in super_tools.gemspec
6
6
  gemspec
7
7
 
8
- gem "reform-rails", github: "superlanding/reform-rails", branch: "fix-infinite-parent-loop"
8
+ gem "reform-rails", github: "superlanding/reform-rails", tag: "v0.2.6.f"
data/Gemfile.lock CHANGED
@@ -1,22 +1,22 @@
1
1
  GIT
2
2
  remote: https://github.com/superlanding/reform-rails
3
- revision: 66240539260e6969dc01a77cf181b39109ebb941
4
- branch: fix-infinite-parent-loop
3
+ revision: 9309677a20293133167fe992e9795f367732b08f
4
+ tag: v0.2.6.f
5
5
  specs:
6
- reform-rails (0.2.2)
6
+ reform-rails (0.2.6)
7
7
  activemodel (>= 5.0)
8
8
  reform (>= 2.3.1, < 3.0.0)
9
9
 
10
10
  PATH
11
11
  remote: .
12
12
  specs:
13
- super_tools (3.0.0)
13
+ super_tools (4.0.0)
14
14
  dry-logic (= 1.2.0)
15
15
  dry-types (= 1.5.1)
16
16
  fast_excel
17
17
  forwardable
18
18
  nokogiri (>= 1.6)
19
- rails (> 6, < 7)
19
+ rails (>= 6.1, < 8)
20
20
  reform (= 2.6.2)
21
21
  reform-rails
22
22
  roo
@@ -24,7 +24,7 @@ PATH
24
24
  searchkick
25
25
  spreadsheet
26
26
  virtus (~> 1.0.5)
27
- warehouse_items (~> 0.3.0)
27
+ warehouse_items (>= 0.3.0)
28
28
 
29
29
  GEM
30
30
  remote: https://rubygems.org/
@@ -88,30 +88,34 @@ GEM
88
88
  minitest (>= 5.1)
89
89
  tzinfo (~> 2.0)
90
90
  zeitwerk (~> 2.3)
91
+ appraisal (2.5.0)
92
+ bundler
93
+ rake
94
+ thor (>= 0.14.0)
91
95
  axiom-types (0.1.1)
92
96
  descendants_tracker (~> 0.0.4)
93
97
  ice_nine (~> 0.11.0)
94
98
  thread_safe (~> 0.3, >= 0.3.1)
95
- builder (3.2.4)
99
+ base64 (0.3.0)
100
+ bigdecimal (4.0.1)
101
+ builder (3.3.0)
96
102
  coercible (1.0.0)
97
103
  descendants_tracker (~> 0.0.1)
98
- concurrent-ruby (1.1.10)
104
+ concurrent-ruby (1.3.6)
99
105
  crass (1.0.6)
106
+ date (3.5.1)
100
107
  declarative (0.0.20)
101
108
  descendants_tracker (0.0.4)
102
109
  thread_safe (~> 0.3, >= 0.3.1)
103
110
  disposable (0.6.3)
104
111
  declarative (>= 0.0.9, < 1.0.0)
105
112
  representable (>= 3.1.1, < 4)
106
- dry-configurable (0.15.0)
113
+ dry-container (0.11.0)
107
114
  concurrent-ruby (~> 1.0)
108
- dry-core (~> 0.6)
109
- dry-container (0.9.0)
115
+ dry-core (0.9.1)
110
116
  concurrent-ruby (~> 1.0)
111
- dry-configurable (~> 0.13, >= 0.13.0)
112
- dry-core (0.7.1)
113
- concurrent-ruby (~> 1.0)
114
- dry-inflector (0.2.1)
117
+ zeitwerk (~> 2.6)
118
+ dry-inflector (0.3.0)
115
119
  dry-logic (1.2.0)
116
120
  concurrent-ruby (~> 1.0)
117
121
  dry-core (~> 0.5, >= 0.5)
@@ -122,34 +126,49 @@ GEM
122
126
  dry-inflector (~> 0.1, >= 0.1.2)
123
127
  dry-logic (~> 1.0, >= 1.0.2)
124
128
  equalizer (0.0.11)
125
- erubi (1.10.0)
126
- fast_excel (0.4.0)
129
+ erubi (1.13.1)
130
+ fast_excel (0.5.0)
127
131
  ffi (> 1.9, < 2)
128
- ffi (1.15.5)
129
- forwardable (1.3.2)
130
- globalid (1.0.0)
131
- activesupport (>= 5.0)
132
- hashie (5.0.0)
133
- i18n (1.10.0)
132
+ ffi (1.17.3)
133
+ forwardable (1.4.0)
134
+ globalid (1.3.0)
135
+ activesupport (>= 6.1)
136
+ hashie (5.1.0)
137
+ logger
138
+ i18n (1.14.8)
134
139
  concurrent-ruby (~> 1.0)
135
140
  ice_nine (0.11.2)
136
- loofah (2.18.0)
141
+ logger (1.7.0)
142
+ loofah (2.25.0)
137
143
  crass (~> 1.0.2)
138
- nokogiri (>= 1.5.9)
139
- mail (2.7.1)
144
+ nokogiri (>= 1.12.0)
145
+ mail (2.9.0)
146
+ logger
140
147
  mini_mime (>= 0.1.1)
141
- marcel (1.0.2)
142
- method_source (1.0.0)
143
- mini_mime (1.1.2)
144
- minitest (5.16.2)
145
- nio4r (2.5.8)
146
- nokogiri (1.13.6-arm64-darwin)
148
+ net-imap
149
+ net-pop
150
+ net-smtp
151
+ marcel (1.1.0)
152
+ method_source (1.1.0)
153
+ mini_mime (1.1.5)
154
+ minitest (5.26.1)
155
+ net-imap (0.4.23)
156
+ date
157
+ net-protocol
158
+ net-pop (0.1.2)
159
+ net-protocol
160
+ net-protocol (0.2.2)
161
+ timeout
162
+ net-smtp (0.5.1)
163
+ net-protocol
164
+ nio4r (2.7.5)
165
+ nokogiri (1.15.7-arm64-darwin)
147
166
  racc (~> 1.4)
148
- nokogiri (1.13.6-x86_64-linux)
167
+ nokogiri (1.15.7-x86_64-linux)
149
168
  racc (~> 1.4)
150
- racc (1.6.0)
151
- rack (2.2.4)
152
- rack-test (2.0.2)
169
+ racc (1.8.1)
170
+ rack (2.2.21)
171
+ rack-test (2.2.0)
153
172
  rack (>= 1.3)
154
173
  rails (6.1.6)
155
174
  actioncable (= 6.1.6)
@@ -166,11 +185,13 @@ GEM
166
185
  bundler (>= 1.15.0)
167
186
  railties (= 6.1.6)
168
187
  sprockets-rails (>= 2.0.0)
169
- rails-dom-testing (2.0.3)
170
- activesupport (>= 4.2.0)
188
+ rails-dom-testing (2.3.0)
189
+ activesupport (>= 5.0.0)
190
+ minitest
171
191
  nokogiri (>= 1.6)
172
- rails-html-sanitizer (1.4.3)
173
- loofah (~> 2.3)
192
+ rails-html-sanitizer (1.6.2)
193
+ loofah (~> 2.21)
194
+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
174
195
  railties (6.1.6)
175
196
  actionpack (= 6.1.6)
176
197
  activesupport (= 6.1.6)
@@ -186,33 +207,37 @@ GEM
186
207
  declarative (< 0.1.0)
187
208
  trailblazer-option (>= 0.1.1, < 0.2.0)
188
209
  uber (< 0.2.0)
189
- roo (2.9.0)
210
+ roo (2.10.1)
190
211
  nokogiri (~> 1)
191
212
  rubyzip (>= 1.3.0, < 3.0.0)
192
213
  roo-xls (1.2.0)
193
214
  nokogiri
194
215
  roo (>= 2.0.0, < 3)
195
216
  spreadsheet (> 0.9.0)
196
- ruby-ole (1.2.12.2)
197
- rubyzip (2.3.2)
198
- searchkick (5.0.4)
217
+ ruby-ole (1.2.13.1)
218
+ rubyzip (2.4.1)
219
+ searchkick (5.2.4)
199
220
  activemodel (>= 5.2)
200
221
  hashie
201
222
  shoulda-context (2.0.0)
202
- spreadsheet (1.3.0)
223
+ spreadsheet (1.3.4)
224
+ bigdecimal
225
+ logger
203
226
  ruby-ole
204
- sprockets (4.1.1)
227
+ sprockets (4.2.2)
205
228
  concurrent-ruby (~> 1.0)
206
- rack (> 1, < 3)
207
- sprockets-rails (3.4.2)
208
- actionpack (>= 5.2)
209
- activesupport (>= 5.2)
229
+ logger
230
+ rack (>= 2.2.4, < 4)
231
+ sprockets-rails (3.5.2)
232
+ actionpack (>= 6.1)
233
+ activesupport (>= 6.1)
210
234
  sprockets (>= 3.0.0)
211
235
  sqlite3 (1.4.4)
212
236
  thor (1.2.1)
213
237
  thread_safe (0.3.6)
238
+ timeout (0.6.0)
214
239
  trailblazer-option (0.1.2)
215
- tzinfo (2.0.4)
240
+ tzinfo (2.0.6)
216
241
  concurrent-ruby (~> 1.0)
217
242
  uber (0.1.0)
218
243
  virtus (1.0.5)
@@ -220,19 +245,21 @@ GEM
220
245
  coercible (~> 1.0)
221
246
  descendants_tracker (~> 0.0, >= 0.0.3)
222
247
  equalizer (~> 0.0, >= 0.0.9)
223
- warehouse_items (0.3.0)
248
+ warehouse_items (1.0.0)
224
249
  activesupport
225
250
  warning (1.2.1)
226
- websocket-driver (0.7.5)
251
+ websocket-driver (0.8.0)
252
+ base64
227
253
  websocket-extensions (>= 0.1.0)
228
254
  websocket-extensions (0.1.5)
229
- zeitwerk (2.6.0)
255
+ zeitwerk (2.6.18)
230
256
 
231
257
  PLATFORMS
232
258
  arm64-darwin-21
233
259
  x86_64-linux
234
260
 
235
261
  DEPENDENCIES
262
+ appraisal
236
263
  bundler (>= 2, < 3)
237
264
  minitest (~> 5.0)
238
265
  rake (>= 12.2)
@@ -243,4 +270,4 @@ DEPENDENCIES
243
270
  warning
244
271
 
245
272
  BUNDLED WITH
246
- 2.3.16
273
+ 2.3.14
@@ -0,0 +1,170 @@
1
+ # Multi-Ruby Version Testing Guide
2
+
3
+ 本專案已設定支援多個 Ruby 版本(2.7.6, 3.0.7, 3.1.7)與 Rails 版本(6.x, 7.x)的測試環境。
4
+
5
+ ## 支援的版本組合
6
+
7
+ ### Ruby 版本
8
+ - **Ruby 2.7.6**
9
+ - **Ruby 3.0.7**
10
+ - **Ruby 3.1.7**
11
+
12
+ ### Rails 版本
13
+ - **Rails 6.1.x**
14
+ - **Rails 7.0.x**
15
+
16
+ ### 測試矩陣(共 6 個組合)
17
+ 1. Ruby 2.7.6 + Rails 6.1
18
+ 2. Ruby 2.7.6 + Rails 7.0
19
+ 3. Ruby 3.0.7 + Rails 6.1
20
+ 4. Ruby 3.0.7 + Rails 7.0
21
+ 5. Ruby 3.1.7 + Rails 6.1
22
+ 6. Ruby 3.1.7 + Rails 7.0
23
+
24
+ ## 專案結構
25
+
26
+ ```
27
+ .
28
+ ├── Appraisals # Appraisal 設定檔
29
+ ├── gemfiles/ # 各版本組合的 Gemfile
30
+ │ ├── ruby_2.7_rails_6.gemfile
31
+ │ ├── ruby_2.7_rails_7.gemfile
32
+ │ ├── ruby_3.0_rails_6.gemfile
33
+ │ ├── ruby_3.0_rails_7.gemfile
34
+ │ ├── ruby_3.1_rails_6.gemfile
35
+ │ └── ruby_3.1_rails_7.gemfile
36
+ ├── bin/test_all # 本地測試所有版本的腳本
37
+ └── .github/workflows/test.yml # GitHub Actions 設定
38
+ ```
39
+
40
+ ## 本地測試
41
+
42
+ ### 測試所有組合
43
+
44
+ ```bash
45
+ bin/test_all
46
+ ```
47
+
48
+ 此腳本會依序測試所有 6 個 Ruby + Rails 版本組合。
49
+
50
+ ### 測試特定組合
51
+
52
+ ```bash
53
+ # Ruby 2.7.6 + Rails 6
54
+ bundle exec appraisal ruby-2.7-rails-6 rake t
55
+
56
+ # Ruby 2.7.6 + Rails 7
57
+ bundle exec appraisal ruby-2.7-rails-7 rake t
58
+
59
+ # Ruby 3.0.7 + Rails 6
60
+ bundle exec appraisal ruby-3.0-rails-6 rake t
61
+
62
+ # Ruby 3.0.7 + Rails 7
63
+ bundle exec appraisal ruby-3.0-rails-7 rake t
64
+
65
+ # Ruby 3.1.7 + Rails 6
66
+ bundle exec appraisal ruby-3.1-rails-6 rake t
67
+
68
+ # Ruby 3.1.7 + Rails 7
69
+ bundle exec appraisal ruby-3.1-rails-7 rake t
70
+ ```
71
+
72
+ ### 安裝所有版本的依賴
73
+
74
+ ```bash
75
+ bundle install
76
+ bundle exec appraisal install
77
+ ```
78
+
79
+ ## GitHub Actions
80
+
81
+ 當你推送程式碼到以下分支時,GitHub Actions 會自動測試所有版本組合:
82
+ - `fix-**`
83
+ - `feat-**`
84
+ - `develop`
85
+ - `master`
86
+ - Pull Requests
87
+
88
+ 測試矩陣會執行所有 6 個 Ruby + Rails 版本組合測試。
89
+
90
+ ### CI 配置
91
+
92
+ GitHub Actions 使用明確的版本號:
93
+ - Ruby: `2.7.6`, `3.0.7`, `3.1.7`
94
+ - Rails: `~> 6.1.0`, `~> 7.0.0`
95
+
96
+ ## 依賴套件相容性
97
+
98
+ 所有主要依賴套件都支援 Ruby 2.7+ 和 Rails 6/7:
99
+
100
+ ### 核心依賴
101
+ - **Rails** - 支援 6.1.x 和 7.0.x
102
+ - **nokogiri** >= 1.6 - 支援 Ruby 2.7+
103
+ - **fast_excel** - 支援 Ruby 2.5+
104
+ - **roo** - 支援 Ruby 2.5+
105
+ - **dry-types** 1.5.1 - 支援 Ruby 2.7+
106
+ - **dry-logic** 1.2.0 - 支援 Ruby 2.7+
107
+ - **reform** 2.6.2 - 支援 Ruby 2.5+
108
+ - **reform-rails** - 支援 Rails 6/7
109
+ - **searchkick** - 支援 Ruby 2.6+
110
+ - **virtus** ~> 1.0.5 - 支援 Ruby 2.7+
111
+
112
+ ### Rails 7 特定依賴
113
+ Rails 7 會自動引入以下額外依賴:
114
+ - `benchmark`
115
+ - `drb`
116
+ - `mutex_m`
117
+ - `securerandom`
118
+
119
+ ## 更新依賴
120
+
121
+ 當你需要更新 gemfiles 時:
122
+
123
+ ```bash
124
+ # 編輯 Appraisals 檔案
125
+ # 然後重新生成 gemfiles
126
+ bundle exec appraisal install
127
+ ```
128
+
129
+ 如需更新某個特定組合的依賴:
130
+
131
+ ```bash
132
+ bundle exec appraisal ruby-3.1-rails-7 bundle update
133
+ ```
134
+
135
+ ## 開發建議
136
+
137
+ 1. **本地開發環境**:建議使用 Ruby 2.7.6 作為預設開發版本(見 `.ruby-version`)
138
+
139
+ 2. **提交前測試**:在提交 PR 前,建議至少測試以下組合:
140
+ - 最低版本:Ruby 2.7.6 + Rails 6.1
141
+ - 最高版本:Ruby 3.1.7 + Rails 7.0
142
+
143
+ 3. **新增依賴**:確保新增的依賴套件都支援:
144
+ - Ruby >= 2.7.0
145
+ - Rails >= 6.1, < 8
146
+
147
+ ## 注意事項
148
+
149
+ - `gemfiles/*.lock` 檔案已加入 `.gitignore`,不會被 commit
150
+ - `gemfiles/*.gemfile` 檔案會被 commit,確保 CI/CD 環境一致性
151
+ - gemspec 中 Rails 版本範圍設定為 `">= 6.1", "< 8"`,支援 Rails 6 和 7
152
+ - 確保新增的依賴套件都支援 Ruby 2.7+ 和 Rails 6/7
153
+
154
+ ## 疑難排解
155
+
156
+ ### 問題:bundle install 失敗
157
+
158
+ ```bash
159
+ # 清理並重新安裝
160
+ rm -rf gemfiles/.bundle
161
+ bundle exec appraisal install
162
+ ```
163
+
164
+ ### 問題:某個組合測試失敗
165
+
166
+ ```bash
167
+ # 重新安裝該組合的依賴
168
+ bundle exec appraisal ruby-3.1-rails-7 bundle install
169
+ bundle exec appraisal ruby-3.1-rails-7 rake t
170
+ ```
data/bin/test_all ADDED
@@ -0,0 +1,35 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -e
4
+
5
+ echo "=== Testing all Ruby versions with Rails 6 & 7 ==="
6
+ echo ""
7
+
8
+ # Check if appraisal is installed
9
+ if ! bundle exec appraisal -h > /dev/null 2>&1; then
10
+ echo "Error: appraisal gem not found. Please run 'bundle install' first."
11
+ exit 1
12
+ fi
13
+
14
+ # Test each combination
15
+ combinations=(
16
+ "ruby-2.7-rails-6:Ruby 2.7.6 + Rails 6"
17
+ "ruby-2.7-rails-7:Ruby 2.7.6 + Rails 7"
18
+ "ruby-3.0-rails-6:Ruby 3.0.7 + Rails 6"
19
+ "ruby-3.0-rails-7:Ruby 3.0.7 + Rails 7"
20
+ "ruby-3.1-rails-6:Ruby 3.1.7 + Rails 6"
21
+ "ruby-3.1-rails-7:Ruby 3.1.7 + Rails 7"
22
+ )
23
+
24
+ for combo in "${combinations[@]}"; do
25
+ IFS=':' read -r appraisal_name display_name <<< "$combo"
26
+ echo "===================================="
27
+ echo "Testing: $display_name"
28
+ echo "===================================="
29
+ bundle exec appraisal $appraisal_name rake t
30
+ echo ""
31
+ done
32
+
33
+ echo "===================================="
34
+ echo "All tests completed!"
35
+ echo "===================================="
@@ -0,0 +1,2 @@
1
+ ---
2
+ BUNDLE_RETRY: "1"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "reform-rails", tag: "v0.2.6.f", git: "https://github.com/superlanding/reform-rails"
6
+ gem "rails", "~> 6.1.0"
7
+
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "reform-rails", tag: "v0.2.6.f", git: "https://github.com/superlanding/reform-rails"
6
+ gem "rails", "~> 7.0.0"
7
+
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "reform-rails", tag: "v0.2.6.f", git: "https://github.com/superlanding/reform-rails"
6
+ gem "rails", "~> 6.1.0"
7
+
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "reform-rails", tag: "v0.2.6.f", git: "https://github.com/superlanding/reform-rails"
6
+ gem "rails", "~> 7.0.0"
7
+
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "reform-rails", tag: "v0.2.6.f", git: "https://github.com/superlanding/reform-rails"
6
+ gem "rails", "~> 6.1.0"
7
+
8
+ gemspec path: "../"
@@ -0,0 +1,8 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "https://rubygems.org"
4
+
5
+ gem "reform-rails", tag: "v0.2.6.f", git: "https://github.com/superlanding/reform-rails"
6
+ gem "rails", "~> 7.0.0"
7
+
8
+ gemspec path: "../"
@@ -1,3 +1,3 @@
1
1
  module SuperTools
2
- VERSION = "3.0.1"
2
+ VERSION = "4.0.1"
3
3
  end
data/super_tools.gemspec CHANGED
@@ -12,6 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.description = %q{Rails 開發環境常用工具 Forms/Process/Spreadsheet}
13
13
  spec.homepage = "https://github.com/superlanding/super_tools"
14
14
  spec.license = "MIT"
15
+ spec.required_ruby_version = ">= 2.7.0"
15
16
 
16
17
  # Specify which files should be added to the gem when it is released.
17
18
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -28,8 +29,9 @@ Gem::Specification.new do |spec|
28
29
  spec.add_development_dependency "shoulda-context"
29
30
  spec.add_development_dependency "warning"
30
31
  spec.add_development_dependency "sqlite3", "1.4.4"
32
+ spec.add_development_dependency "appraisal"
31
33
 
32
- spec.add_dependency "rails", "> 6", "< 7"
34
+ spec.add_dependency "rails", ">= 6.1", "< 8"
33
35
  spec.add_dependency "nokogiri", ">= 1.6"
34
36
  spec.add_dependency "fast_excel"
35
37
  spec.add_dependency "roo"
@@ -37,7 +39,7 @@ Gem::Specification.new do |spec|
37
39
  spec.add_dependency "spreadsheet"
38
40
  spec.add_dependency "virtus", "~> 1.0.5"
39
41
  spec.add_dependency "forwardable"
40
- spec.add_dependency "warehouse_items", "~> 1.0.0"
42
+ spec.add_dependency "warehouse_items", ">= 0.3.0"
41
43
  spec.add_dependency "searchkick"
42
44
 
43
45
  spec.add_dependency "reform", "2.6.2"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: super_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 4.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - eddie
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-08-08 00:00:00.000000000 Z
11
+ date: 2026-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -100,26 +100,40 @@ dependencies:
100
100
  - - '='
101
101
  - !ruby/object:Gem::Version
102
102
  version: 1.4.4
103
+ - !ruby/object:Gem::Dependency
104
+ name: appraisal
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
103
117
  - !ruby/object:Gem::Dependency
104
118
  name: rails
105
119
  requirement: !ruby/object:Gem::Requirement
106
120
  requirements:
107
- - - ">"
121
+ - - ">="
108
122
  - !ruby/object:Gem::Version
109
- version: '6'
123
+ version: '6.1'
110
124
  - - "<"
111
125
  - !ruby/object:Gem::Version
112
- version: '7'
126
+ version: '8'
113
127
  type: :runtime
114
128
  prerelease: false
115
129
  version_requirements: !ruby/object:Gem::Requirement
116
130
  requirements:
117
- - - ">"
131
+ - - ">="
118
132
  - !ruby/object:Gem::Version
119
- version: '6'
133
+ version: '6.1'
120
134
  - - "<"
121
135
  - !ruby/object:Gem::Version
122
- version: '7'
136
+ version: '8'
123
137
  - !ruby/object:Gem::Dependency
124
138
  name: nokogiri
125
139
  requirement: !ruby/object:Gem::Requirement
@@ -222,16 +236,16 @@ dependencies:
222
236
  name: warehouse_items
223
237
  requirement: !ruby/object:Gem::Requirement
224
238
  requirements:
225
- - - "~>"
239
+ - - ">="
226
240
  - !ruby/object:Gem::Version
227
- version: 1.0.0
241
+ version: 0.3.0
228
242
  type: :runtime
229
243
  prerelease: false
230
244
  version_requirements: !ruby/object:Gem::Requirement
231
245
  requirements:
232
- - - "~>"
246
+ - - ">="
233
247
  - !ruby/object:Gem::Version
234
- version: 1.0.0
248
+ version: 0.3.0
235
249
  - !ruby/object:Gem::Dependency
236
250
  name: searchkick
237
251
  requirement: !ruby/object:Gem::Requirement
@@ -313,14 +327,24 @@ files:
313
327
  - ".gitignore"
314
328
  - ".ruby-version"
315
329
  - ".travis.yml"
330
+ - Appraisals
316
331
  - Gemfile
317
332
  - Gemfile.lock
318
333
  - LICENSE.txt
334
+ - MULTI_RUBY_TESTING.md
319
335
  - README.md
320
336
  - Rakefile
321
337
  - bin/console
322
338
  - bin/setup
339
+ - bin/test_all
323
340
  - dependabot.yml
341
+ - gemfiles/.bundle/config
342
+ - gemfiles/ruby_2.7_rails_6.gemfile
343
+ - gemfiles/ruby_2.7_rails_7.gemfile
344
+ - gemfiles/ruby_3.0_rails_6.gemfile
345
+ - gemfiles/ruby_3.0_rails_7.gemfile
346
+ - gemfiles/ruby_3.1_rails_6.gemfile
347
+ - gemfiles/ruby_3.1_rails_7.gemfile
324
348
  - lib/super_form/basic.rb
325
349
  - lib/super_form/concerns/atomic_save.rb
326
350
  - lib/super_form/reform.rb
@@ -374,14 +398,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
374
398
  requirements:
375
399
  - - ">="
376
400
  - !ruby/object:Gem::Version
377
- version: '0'
401
+ version: 2.7.0
378
402
  required_rubygems_version: !ruby/object:Gem::Requirement
379
403
  requirements:
380
404
  - - ">="
381
405
  - !ruby/object:Gem::Version
382
406
  version: '0'
383
407
  requirements: []
384
- rubygems_version: 3.2.33
408
+ rubygems_version: 3.1.6
385
409
  signing_key:
386
410
  specification_version: 4
387
411
  summary: Rails 開發環境常用工具 Forms/Process/Spreadsheet