diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 77dcb98..88d853d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,6 +31,14 @@ jobs: rails: '7.1' - ruby: '3.3' rails: '7.1' + - ruby: '3.3' + rails: '8.0' + - ruby: '3.3' + rails: '8.1' + - ruby: '3.4' + rails: '8.0' + - ruby: '3.4' + rails: '8.1' env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/ruby_${{ matrix.ruby }}_rails_${{ matrix.rails }}.gemfile diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..0cb43fc --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,121 @@ +name: Publish gem + +# master 上 gemspec 版本號尚未發佈到 rubygems.org 時,自動以 Trusted Publishing (OIDC) 發佈。 +# 版本已存在則跳過;不使用任何儲存的 RubyGems API key。 +on: + push: + branches: + - master + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: publish-gem-${{ github.repository }} + cancel-in-progress: false + +env: + # 與 ci.yml 矩陣中最新的 Ruby 3.4 / Rails 8.1 組合一致 + RUBY_VERSION: '3.4.11' + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/ruby_3.4_rails_8.1.gemfile + GEM_NAME: export_to + GEMSPEC: export_to.gemspec + +jobs: + check: + name: Check version on rubygems.org + runs-on: ubuntu-latest + outputs: + should_publish: ${{ steps.check.outputs.should_publish }} + gem_name: ${{ steps.spec.outputs.name }} + gem_version: ${{ steps.spec.outputs.version }} + steps: + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - uses: ruby/setup-ruby@b1da4809b005e0178fe08a1d57317bffc00b7b4c # v1.332.0 + with: + ruby-version: ${{ env.RUBY_VERSION }} + + - name: Read gem name and version from gemspec + id: spec + run: | + ruby -e 'spec = Gem::Specification.load(ENV.fetch("GEMSPEC")) or abort("cannot load #{ENV["GEMSPEC"]}"); abort("gemspec name #{spec.name} != #{ENV["GEM_NAME"]}") unless spec.name == ENV["GEM_NAME"]; puts "name=#{spec.name}"; puts "version=#{spec.version}"' >> "$GITHUB_OUTPUT" + cat "$GITHUB_OUTPUT" + + - name: Check whether this version already exists on rubygems.org + id: check + env: + GEM_NAME: ${{ steps.spec.outputs.name }} + GEM_VERSION: ${{ steps.spec.outputs.version }} + run: | + set -euo pipefail + status=$(curl -sS -o versions.json -w '%{http_code}' "https://rubygems.org/api/v1/versions/${GEM_NAME}.json") + if [ "$status" = "404" ]; then + echo "Gem ${GEM_NAME} not found on rubygems.org; will publish." + echo "should_publish=true" >> "$GITHUB_OUTPUT" + exit 0 + fi + if [ "$status" != "200" ]; then + echo "::error::rubygems.org API returned HTTP ${status}" + exit 1 + fi + if jq -e --arg v "$GEM_VERSION" 'any(.[]; .number == $v)' versions.json > /dev/null; then + echo "${GEM_NAME} ${GEM_VERSION} already on rubygems.org; skip publish." + echo "should_publish=false" >> "$GITHUB_OUTPUT" + else + echo "${GEM_NAME} ${GEM_VERSION} not on rubygems.org yet; will publish." + echo "should_publish=true" >> "$GITHUB_OUTPUT" + fi + + test: + name: Test (Ruby 3.4 / Rails 8.1) + needs: check + if: needs.check.outputs.should_publish == 'true' + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - uses: ruby/setup-ruby@b1da4809b005e0178fe08a1d57317bffc00b7b4c # v1.332.0 + with: + ruby-version: ${{ env.RUBY_VERSION }} + bundler-cache: true + + - run: bundle exec rake test + + publish: + name: Publish ${{ needs.check.outputs.gem_name }} ${{ needs.check.outputs.gem_version }} + needs: [check, test] + if: needs.check.outputs.should_publish == 'true' && github.ref == 'refs/heads/master' + runs-on: ubuntu-latest + environment: gem-publish + permissions: + id-token: write # Trusted Publishing (OIDC) + contents: write # rake release 推送 vX.Y.Z tag + steps: + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + with: + persist-credentials: false + + - uses: ruby/setup-ruby@b1da4809b005e0178fe08a1d57317bffc00b7b4c # v1.332.0 + with: + ruby-version: ${{ env.RUBY_VERSION }} + bundler-cache: true + + # setup-ruby 的 bundler-cache 會把 BUNDLE_PATH 等設定寫進 .bundle/config, + # 若該檔被 git 追蹤,rake release 的 guard_clean 會判定工作目錄不乾淨。 + # 目前此 repo 沒有追蹤任何 .bundle/config;這一步對「有追蹤才標記」做容錯處理, + # 日後若加入 gemfiles/.bundle/config 或 .bundle/config 也不會讓發佈失敗。 + - name: Ignore CI-only bundler config change + run: | + git status --porcelain + git ls-files -z '*.bundle/config' | xargs -0 -r git update-index --assume-unchanged + git status --porcelain + + # 透過 rubygems/configure-rubygems-credentials 取得短效 OIDC token, + # 再執行 bundle exec rake release(build、建立並推送 vX.Y.Z tag、push gem) + - uses: rubygems/release-gem@7f9650160c1a4e7989fdc9855807bdbd421d8b6b # v1.4.1 diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..4d060f6 --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,9 @@ +# CLAUDE.md + +## 發版規則(Ruby gem) + +- 這個 gem(`export_to`,gemspec:`export_to.gemspec`)在 master 收到「新版本號」時,由 GitHub Actions(`.github/workflows/publish.yml`)自動發佈到 rubygems.org(Trusted Publishing,不使用 API key)。 +- **每一個 PR 都必須跳版號**(改 `lib/export_to/version.rb`),除非這個 PR 只改文件、CI 或 CLAUDE.md 且明確不需要發版。沒跳版號的 PR 合進 master 後不會發佈。 +- 跳版規則(Semantic Versioning):修 bug 跳 patch(x.y.Z);新增相容功能跳 minor(x.Y.0);不相容變更跳 major(X.0.0)。 +- 版號只改在 PR 裡。AI 帳號只能開 branch 與 PR,不得合併到 master;只有真人帳號可以合併。合併就等於批准發佈。 +- 不得為了讓測試通過而改變程式原本的行為。 diff --git a/Gemfile.lock b/Gemfile.lock index 259c628..3f7cff6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,8 +1,9 @@ PATH remote: . specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) + export_to (1.2.1) + activesupport (>= 6.0, < 8.2) + csv fast_excel (~> 0.4) iconv (~> 1.0) spreadsheet (~> 1.3) @@ -29,14 +30,15 @@ GEM minitest (>= 5.1) tzinfo (~> 2.0) zeitwerk (~> 2.3) - bigdecimal (4.0.1) + bigdecimal (4.1.3) builder (3.2.4) concurrent-ruby (1.2.0) crass (1.0.6) + csv (3.3.6) erubi (1.12.0) fast_excel (0.5.0) ffi (> 1.9, < 2) - ffi (1.17.3) + ffi (1.17.4) i18n (1.12.0) concurrent-ruby (~> 1.0) iconv (1.1.1) @@ -68,7 +70,7 @@ GEM rake (13.0.6) ruby-ole (1.2.13.1) shoulda-context (1.2.2) - spreadsheet (1.3.4) + spreadsheet (1.3.5) bigdecimal logger ruby-ole diff --git a/export_to.gemspec b/export_to.gemspec index 9b09885..618cf0f 100644 --- a/export_to.gemspec +++ b/export_to.gemspec @@ -14,7 +14,7 @@ Gem::Specification.new do |spec| spec.homepage = "https://github.com/superlanding/export_to" spec.license = "MIT" - spec.required_ruby_version = ">= 2.7.0", "< 3.4.0" + spec.required_ruby_version = ">= 2.7.0" # Specify which files should be added to the gem when it is released. # The `git ls-files -z` loads the files in the RubyGem that have been added into git. @@ -33,5 +33,6 @@ Gem::Specification.new do |spec| spec.add_dependency "fast_excel", "~> 0.4" spec.add_dependency "spreadsheet", "~> 1.3" spec.add_dependency "iconv", "~> 1.0" - spec.add_dependency "activesupport", ">= 6.0", "< 8" + spec.add_dependency "activesupport", ">= 6.0", "< 8.2" + spec.add_dependency "csv" end diff --git a/gemfiles/ruby_2.7_rails_6.1.gemfile.lock b/gemfiles/ruby_2.7_rails_6.1.gemfile.lock deleted file mode 100644 index d6e22fb..0000000 --- a/gemfiles/ruby_2.7_rails_6.1.gemfile.lock +++ /dev/null @@ -1,97 +0,0 @@ -PATH - remote: .. - specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) - fast_excel (~> 0.4) - iconv (~> 1.0) - spreadsheet (~> 1.3) - -GEM - remote: https://rubygems.org/ - specs: - actionpack (6.1.7.10) - actionview (= 6.1.7.10) - activesupport (= 6.1.7.10) - rack (~> 2.0, >= 2.0.9) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actionview (6.1.7.10) - activesupport (= 6.1.7.10) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activesupport (6.1.7.10) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 1.6, < 2) - minitest (>= 5.1) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) - bigdecimal (4.0.1) - builder (3.3.0) - concurrent-ruby (1.3.6) - crass (1.0.6) - erubi (1.13.1) - fast_excel (0.5.0) - ffi (> 1.9, < 2) - ffi (1.17.3) - i18n (1.14.8) - concurrent-ruby (~> 1.0) - iconv (1.1.1) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - method_source (1.1.0) - minitest (5.26.1) - nokogiri (1.15.7-arm64-darwin) - racc (~> 1.4) - nokogiri (1.15.7-x86_64-linux) - racc (~> 1.4) - racc (1.8.1) - rack (2.2.21) - rack-test (2.2.0) - rack (>= 1.3) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - 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) - railties (6.1.7.10) - actionpack (= 6.1.7.10) - activesupport (= 6.1.7.10) - method_source - rake (>= 12.2) - thor (~> 1.0) - rake (13.3.1) - ruby-ole (1.2.13.1) - shoulda-context (2.0.0) - spreadsheet (1.3.4) - bigdecimal - logger - ruby-ole - thor (1.5.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - zeitwerk (2.6.18) - -PLATFORMS - arm64-darwin-21 - x86_64-linux - -DEPENDENCIES - activesupport (~> 6.1.0) - bundler (>= 2.0.0) - export_to! - logger (~> 1.5) - minitest (~> 5.0) - railties (~> 6.1.0) - rake (>= 13) - shoulda-context - -BUNDLED WITH - 2.3.14 diff --git a/gemfiles/ruby_3.0_rails_6.1.gemfile.lock b/gemfiles/ruby_3.0_rails_6.1.gemfile.lock deleted file mode 100644 index 0e7dc8c..0000000 --- a/gemfiles/ruby_3.0_rails_6.1.gemfile.lock +++ /dev/null @@ -1,97 +0,0 @@ -PATH - remote: .. - specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) - fast_excel (~> 0.4) - iconv (~> 1.0) - spreadsheet (~> 1.3) - -GEM - remote: https://rubygems.org/ - specs: - actionpack (6.1.7.10) - actionview (= 6.1.7.10) - activesupport (= 6.1.7.10) - rack (~> 2.0, >= 2.0.9) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actionview (6.1.7.10) - activesupport (= 6.1.7.10) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activesupport (6.1.7.10) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 1.6, < 2) - minitest (>= 5.1) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) - bigdecimal (4.0.1) - builder (3.3.0) - concurrent-ruby (1.3.6) - crass (1.0.6) - erubi (1.13.1) - fast_excel (0.5.0) - ffi (> 1.9, < 2) - ffi (1.17.3) - i18n (1.14.8) - concurrent-ruby (~> 1.0) - iconv (1.1.1) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - method_source (1.1.0) - minitest (5.26.1) - nokogiri (1.17.2-arm64-darwin) - racc (~> 1.4) - nokogiri (1.17.2-x86_64-linux) - racc (~> 1.4) - racc (1.8.1) - rack (2.2.21) - rack-test (2.2.0) - rack (>= 1.3) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - 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) - railties (6.1.7.10) - actionpack (= 6.1.7.10) - activesupport (= 6.1.7.10) - method_source - rake (>= 12.2) - thor (~> 1.0) - rake (13.3.1) - ruby-ole (1.2.13.1) - shoulda-context (2.0.0) - spreadsheet (1.3.4) - bigdecimal - logger - ruby-ole - thor (1.5.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - zeitwerk (2.6.18) - -PLATFORMS - arm64-darwin-21 - x86_64-linux - -DEPENDENCIES - activesupport (~> 6.1.0) - bundler (>= 2.0.0) - export_to! - logger (~> 1.5) - minitest (~> 5.0) - railties (~> 6.1.0) - rake (>= 13) - shoulda-context - -BUNDLED WITH - 2.2.33 diff --git a/gemfiles/ruby_3.0_rails_7.0.gemfile.lock b/gemfiles/ruby_3.0_rails_7.0.gemfile.lock deleted file mode 100644 index 9e439b7..0000000 --- a/gemfiles/ruby_3.0_rails_7.0.gemfile.lock +++ /dev/null @@ -1,110 +0,0 @@ -PATH - remote: .. - specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) - fast_excel (~> 0.4) - iconv (~> 1.0) - spreadsheet (~> 1.3) - -GEM - remote: https://rubygems.org/ - specs: - actionpack (7.0.10) - actionview (= 7.0.10) - activesupport (= 7.0.10) - racc - rack (~> 2.0, >= 2.2.4) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actionview (7.0.10) - activesupport (= 7.0.10) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activesupport (7.0.10) - base64 - benchmark (>= 0.3) - bigdecimal - concurrent-ruby (~> 1.0, >= 1.0.2) - drb - i18n (>= 1.6, < 2) - logger (>= 1.4.2) - minitest (>= 5.1) - mutex_m - securerandom (>= 0.3) - tzinfo (~> 2.0) - base64 (0.3.0) - benchmark (0.5.0) - bigdecimal (4.0.1) - builder (3.3.0) - concurrent-ruby (1.3.6) - crass (1.0.6) - drb (2.2.3) - erubi (1.13.1) - fast_excel (0.5.0) - ffi (> 1.9, < 2) - ffi (1.17.3) - i18n (1.14.8) - concurrent-ruby (~> 1.0) - iconv (1.1.1) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - method_source (1.1.0) - minitest (5.26.1) - mutex_m (0.3.0) - nokogiri (1.17.2-arm64-darwin) - racc (~> 1.4) - nokogiri (1.17.2-x86_64-linux) - racc (~> 1.4) - racc (1.8.1) - rack (2.2.21) - rack-test (2.2.0) - rack (>= 1.3) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - 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) - railties (7.0.10) - actionpack (= 7.0.10) - activesupport (= 7.0.10) - method_source - rake (>= 12.2) - thor (~> 1.0) - zeitwerk (~> 2.5) - rake (13.3.1) - ruby-ole (1.2.13.1) - securerandom (0.3.2) - shoulda-context (2.0.0) - spreadsheet (1.3.4) - bigdecimal - logger - ruby-ole - thor (1.5.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - zeitwerk (2.6.18) - -PLATFORMS - arm64-darwin-21 - x86_64-linux - -DEPENDENCIES - activesupport (~> 7.0.0) - bundler (>= 2.0.0) - export_to! - logger (~> 1.5) - minitest (~> 5.0) - railties (~> 7.0.0) - rake (>= 13) - shoulda-context - -BUNDLED WITH - 2.2.33 diff --git a/gemfiles/ruby_3.1_rails_6.1.gemfile.lock b/gemfiles/ruby_3.1_rails_6.1.gemfile.lock deleted file mode 100644 index 714ee3e..0000000 --- a/gemfiles/ruby_3.1_rails_6.1.gemfile.lock +++ /dev/null @@ -1,98 +0,0 @@ -PATH - remote: .. - specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) - fast_excel (~> 0.4) - iconv (~> 1.0) - spreadsheet (~> 1.3) - -GEM - remote: https://rubygems.org/ - specs: - actionpack (6.1.7.10) - actionview (= 6.1.7.10) - activesupport (= 6.1.7.10) - rack (~> 2.0, >= 2.0.9) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.0, >= 1.2.0) - actionview (6.1.7.10) - activesupport (= 6.1.7.10) - builder (~> 3.1) - erubi (~> 1.4) - rails-dom-testing (~> 2.0) - rails-html-sanitizer (~> 1.1, >= 1.2.0) - activesupport (6.1.7.10) - concurrent-ruby (~> 1.0, >= 1.0.2) - i18n (>= 1.6, < 2) - minitest (>= 5.1) - tzinfo (~> 2.0) - zeitwerk (~> 2.3) - bigdecimal (4.0.1) - builder (3.3.0) - concurrent-ruby (1.3.6) - crass (1.0.6) - erubi (1.13.1) - fast_excel (0.5.0) - ffi (> 1.9, < 2) - ffi (1.17.3-arm64-darwin) - ffi (1.17.3-x86_64-linux-gnu) - i18n (1.14.8) - concurrent-ruby (~> 1.0) - iconv (1.1.1) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - method_source (1.1.0) - minitest (5.27.0) - nokogiri (1.18.10-arm64-darwin) - racc (~> 1.4) - nokogiri (1.18.10-x86_64-linux-gnu) - racc (~> 1.4) - racc (1.8.1) - rack (2.2.21) - rack-test (2.2.0) - rack (>= 1.3) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - 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) - railties (6.1.7.10) - actionpack (= 6.1.7.10) - activesupport (= 6.1.7.10) - method_source - rake (>= 12.2) - thor (~> 1.0) - rake (13.3.1) - ruby-ole (1.2.13.1) - shoulda-context (2.0.0) - spreadsheet (1.3.4) - bigdecimal - logger - ruby-ole - thor (1.5.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - zeitwerk (2.6.18) - -PLATFORMS - arm64-darwin-21 - x86_64-linux - -DEPENDENCIES - activesupport (~> 6.1.0) - bundler (>= 2.0.0) - export_to! - logger (~> 1.5) - minitest (~> 5.0) - railties (~> 6.1.0) - rake (>= 13) - shoulda-context - -BUNDLED WITH - 2.3.27 diff --git a/gemfiles/ruby_3.1_rails_7.0.gemfile.lock b/gemfiles/ruby_3.1_rails_7.0.gemfile.lock index f5ed5d6..78f7bd4 100644 --- a/gemfiles/ruby_3.1_rails_7.0.gemfile.lock +++ b/gemfiles/ruby_3.1_rails_7.0.gemfile.lock @@ -1,8 +1,9 @@ PATH remote: .. specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) + export_to (1.2.1) + activesupport (>= 6.0, < 8.2) + csv fast_excel (~> 0.4) iconv (~> 1.0) spreadsheet (~> 1.3) @@ -38,17 +39,18 @@ GEM tzinfo (~> 2.0) base64 (0.3.0) benchmark (0.5.0) - bigdecimal (4.0.1) + bigdecimal (4.1.3) builder (3.3.0) - concurrent-ruby (1.3.6) + concurrent-ruby (1.3.8) crass (1.0.6) + csv (3.3.6) drb (2.2.3) erubi (1.13.1) fast_excel (0.5.0) ffi (> 1.9, < 2) - ffi (1.17.3-arm64-darwin) - ffi (1.17.3-x86_64-linux-gnu) - i18n (1.14.8) + ffi (1.17.4-arm64-darwin) + ffi (1.17.4-x86_64-linux-gnu) + i18n (1.15.2) concurrent-ruby (~> 1.0) iconv (1.1.1) logger (1.7.0) @@ -84,7 +86,7 @@ GEM ruby-ole (1.2.13.1) securerandom (0.4.1) shoulda-context (2.0.0) - spreadsheet (1.3.4) + spreadsheet (1.3.5) bigdecimal logger ruby-ole @@ -108,4 +110,4 @@ DEPENDENCIES shoulda-context BUNDLED WITH - 2.3.27 + 2.4.22 diff --git a/gemfiles/ruby_3.1_rails_7.1.gemfile.lock b/gemfiles/ruby_3.1_rails_7.1.gemfile.lock deleted file mode 100644 index 975bc85..0000000 --- a/gemfiles/ruby_3.1_rails_7.1.gemfile.lock +++ /dev/null @@ -1,147 +0,0 @@ -PATH - remote: .. - specs: - export_to (1.1.2) - activesupport (>= 6.0, < 8) - fast_excel (~> 0.4) - iconv (~> 1.0) - spreadsheet (~> 1.3) - -GEM - remote: https://rubygems.org/ - specs: - actionpack (7.1.6) - actionview (= 7.1.6) - activesupport (= 7.1.6) - cgi - nokogiri (>= 1.8.5) - racc - rack (>= 2.2.4) - rack-session (>= 1.0.1) - rack-test (>= 0.6.3) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - actionview (7.1.6) - activesupport (= 7.1.6) - builder (~> 3.1) - cgi - erubi (~> 1.11) - rails-dom-testing (~> 2.2) - rails-html-sanitizer (~> 1.6) - activesupport (7.1.6) - base64 - benchmark (>= 0.3) - bigdecimal - concurrent-ruby (~> 1.0, >= 1.0.2) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - logger (>= 1.4.2) - minitest (>= 5.1) - mutex_m - securerandom (>= 0.3) - tzinfo (~> 2.0) - base64 (0.3.0) - benchmark (0.5.0) - bigdecimal (4.0.1) - builder (3.3.0) - cgi (0.5.1) - concurrent-ruby (1.3.6) - connection_pool (2.5.5) - crass (1.0.6) - date (3.5.1) - drb (2.2.3) - erb (4.0.4) - cgi (>= 0.3.3) - erubi (1.13.1) - fast_excel (0.5.0) - ffi (> 1.9, < 2) - ffi (1.17.3-arm64-darwin) - ffi (1.17.3-x86_64-linux-gnu) - i18n (1.14.8) - concurrent-ruby (~> 1.0) - iconv (1.1.1) - io-console (0.8.2) - irb (1.16.0) - pp (>= 0.6.0) - rdoc (>= 4.0.0) - reline (>= 0.4.2) - logger (1.7.0) - loofah (2.25.0) - crass (~> 1.0.2) - nokogiri (>= 1.12.0) - minitest (5.27.0) - mutex_m (0.3.0) - nokogiri (1.18.10-arm64-darwin) - racc (~> 1.4) - nokogiri (1.18.10-x86_64-linux-gnu) - racc (~> 1.4) - pp (0.6.3) - prettyprint - prettyprint (0.2.0) - psych (5.3.1) - date - stringio - racc (1.8.1) - rack (3.2.4) - rack-session (2.1.1) - base64 (>= 0.1.0) - rack (>= 3.0.0) - rack-test (2.2.0) - rack (>= 1.3) - rackup (2.3.1) - rack (>= 3) - rails-dom-testing (2.3.0) - activesupport (>= 5.0.0) - minitest - nokogiri (>= 1.6) - rails-html-sanitizer (1.6.2) - loofah (~> 2.21) - 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) - railties (7.1.6) - actionpack (= 7.1.6) - activesupport (= 7.1.6) - cgi - irb - rackup (>= 1.0.0) - rake (>= 12.2) - thor (~> 1.0, >= 1.2.2) - tsort (>= 0.2) - zeitwerk (~> 2.6) - rake (13.3.1) - rdoc (7.0.3) - erb - psych (>= 4.0.0) - tsort - reline (0.6.3) - io-console (~> 0.5) - ruby-ole (1.2.13.1) - securerandom (0.4.1) - shoulda-context (2.0.0) - spreadsheet (1.3.4) - bigdecimal - logger - ruby-ole - stringio (3.2.0) - thor (1.5.0) - tsort (0.2.0) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - zeitwerk (2.6.18) - -PLATFORMS - arm64-darwin-21 - x86_64-linux - -DEPENDENCIES - activesupport (~> 7.1.0) - bundler (>= 2.0.0) - export_to! - logger (~> 1.5) - minitest (~> 5.0) - railties (~> 7.1.0) - rake (>= 13) - shoulda-context - -BUNDLED WITH - 2.3.27 diff --git a/gemfiles/ruby_3.3_rails_8.0.gemfile b/gemfiles/ruby_3.3_rails_8.0.gemfile new file mode 100644 index 0000000..bcef8a3 --- /dev/null +++ b/gemfiles/ruby_3.3_rails_8.0.gemfile @@ -0,0 +1,10 @@ +source "https://rubygems.org" + +git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } + +gemspec path: ".." + +gem "activesupport", "8.0.5.1" +gem "railties", "8.0.5.1" +gem "rake", ">= 13" +gem "logger", "~> 1.5" diff --git a/gemfiles/ruby_3.3_rails_8.0.gemfile.lock b/gemfiles/ruby_3.3_rails_8.0.gemfile.lock new file mode 100644 index 0000000..aa8c0a7 --- /dev/null +++ b/gemfiles/ruby_3.3_rails_8.0.gemfile.lock @@ -0,0 +1,171 @@ +PATH + remote: .. + specs: + export_to (1.2.1) + activesupport (>= 6.0, < 8.2) + csv + fast_excel (~> 0.4) + iconv (~> 1.0) + spreadsheet (~> 1.3) + +GEM + remote: https://rubygems.org/ + specs: + actionpack (8.0.5.1) + actionview (= 8.0.5.1) + activesupport (= 8.0.5.1) + nokogiri (>= 1.8.5) + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actionview (8.0.5.1) + activesupport (= 8.0.5.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activesupport (8.0.5.1) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + base64 (0.3.0) + benchmark (0.5.0) + bigdecimal (4.1.3) + builder (3.3.0) + concurrent-ruby (1.3.8) + connection_pool (3.0.2) + crass (1.0.7) + csv (3.3.6) + drb (2.2.3) + erb (6.0.7) + erubi (1.13.1) + fast_excel (0.5.0) + ffi (> 1.9, < 2) + ffi (1.17.4-aarch64-linux-gnu) + ffi (1.17.4-aarch64-linux-musl) + ffi (1.17.4-arm-linux-gnu) + ffi (1.17.4-arm-linux-musl) + ffi (1.17.4-arm64-darwin) + ffi (1.17.4-x86_64-darwin) + ffi (1.17.4-x86_64-linux-gnu) + ffi (1.17.4-x86_64-linux-musl) + i18n (1.15.2) + concurrent-ruby (~> 1.0) + iconv (1.1.1) + io-console (0.9.4) + irb (1.18.0) + pp (>= 0.6.0) + prism (>= 1.3.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + logger (1.7.0) + loofah (2.25.2) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + minitest (5.27.0) + nokogiri (1.19.4-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-musl) + racc (~> 1.4) + pp (0.6.4) + prettyprint + prettyprint (0.2.0) + prism (1.9.0) + racc (1.8.1) + rack (3.2.7) + rack-session (2.1.2) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.3.1) + rack (>= 3) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.7.1) + loofah (~> 2.25, >= 2.25.2) + 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) + railties (8.0.5.1) + actionpack (= 8.0.5.1) + activesupport (= 8.0.5.1) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) + zeitwerk (~> 2.6) + rake (13.4.2) + rbs (4.2.0) + logger + prism (>= 1.6.0) + tsort + rdoc (8.0.0) + erb + prism (>= 1.6.0) + rbs (>= 4.0.0) + tsort + reline (0.7.0) + io-console (~> 0.5) + ruby-ole (1.2.13.1) + securerandom (0.4.1) + shoulda-context (2.0.0) + spreadsheet (1.3.5) + bigdecimal + logger + ruby-ole + thor (1.5.0) + tsort (0.2.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uri (1.1.1) + useragent (0.16.11) + zeitwerk (2.8.3) + +PLATFORMS + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-gnu + arm-linux-musl + arm64-darwin + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + activesupport (= 8.0.5.1) + bundler (>= 2.0.0) + export_to! + logger (~> 1.5) + minitest (~> 5.0) + railties (= 8.0.5.1) + rake (>= 13) + shoulda-context + +BUNDLED WITH + 2.7.2 diff --git a/gemfiles/ruby_3.3_rails_8.1.gemfile b/gemfiles/ruby_3.3_rails_8.1.gemfile new file mode 100644 index 0000000..aeeb7cb --- /dev/null +++ b/gemfiles/ruby_3.3_rails_8.1.gemfile @@ -0,0 +1,10 @@ +source "https://rubygems.org" + +git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } + +gemspec path: ".." + +gem "activesupport", "8.1.3.1" +gem "railties", "8.1.3.1" +gem "rake", ">= 13" +gem "logger", "~> 1.5" diff --git a/gemfiles/ruby_3.3_rails_8.1.gemfile.lock b/gemfiles/ruby_3.3_rails_8.1.gemfile.lock new file mode 100644 index 0000000..4dcfcd9 --- /dev/null +++ b/gemfiles/ruby_3.3_rails_8.1.gemfile.lock @@ -0,0 +1,171 @@ +PATH + remote: .. + specs: + export_to (1.2.1) + activesupport (>= 6.0, < 8.2) + csv + fast_excel (~> 0.4) + iconv (~> 1.0) + spreadsheet (~> 1.3) + +GEM + remote: https://rubygems.org/ + specs: + actionpack (8.1.3.1) + actionview (= 8.1.3.1) + activesupport (= 8.1.3.1) + nokogiri (>= 1.8.5) + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actionview (8.1.3.1) + activesupport (= 8.1.3.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activesupport (8.1.3.1) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + json + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + base64 (0.3.0) + bigdecimal (4.1.3) + builder (3.3.0) + concurrent-ruby (1.3.8) + connection_pool (3.0.2) + crass (1.0.7) + csv (3.3.6) + drb (2.2.3) + erb (6.0.7) + erubi (1.13.1) + fast_excel (0.5.0) + ffi (> 1.9, < 2) + ffi (1.17.4-aarch64-linux-gnu) + ffi (1.17.4-aarch64-linux-musl) + ffi (1.17.4-arm-linux-gnu) + ffi (1.17.4-arm-linux-musl) + ffi (1.17.4-arm64-darwin) + ffi (1.17.4-x86_64-darwin) + ffi (1.17.4-x86_64-linux-gnu) + ffi (1.17.4-x86_64-linux-musl) + i18n (1.15.2) + concurrent-ruby (~> 1.0) + iconv (1.1.1) + io-console (0.9.4) + irb (1.18.0) + pp (>= 0.6.0) + prism (>= 1.3.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (3.0.2) + logger (1.7.0) + loofah (2.25.2) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + minitest (5.27.0) + nokogiri (1.19.4-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-musl) + racc (~> 1.4) + pp (0.6.4) + prettyprint + prettyprint (0.2.0) + prism (1.9.0) + racc (1.8.1) + rack (3.2.7) + rack-session (2.1.2) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.3.1) + rack (>= 3) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.7.1) + loofah (~> 2.25, >= 2.25.2) + 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) + railties (8.1.3.1) + actionpack (= 8.1.3.1) + activesupport (= 8.1.3.1) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) + zeitwerk (~> 2.6) + rake (13.4.2) + rbs (4.2.0) + logger + prism (>= 1.6.0) + tsort + rdoc (8.0.0) + erb + prism (>= 1.6.0) + rbs (>= 4.0.0) + tsort + reline (0.7.0) + io-console (~> 0.5) + ruby-ole (1.2.13.1) + securerandom (0.4.1) + shoulda-context (2.0.0) + spreadsheet (1.3.5) + bigdecimal + logger + ruby-ole + thor (1.5.0) + tsort (0.2.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uri (1.1.1) + useragent (0.16.11) + zeitwerk (2.8.3) + +PLATFORMS + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-gnu + arm-linux-musl + arm64-darwin + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + activesupport (= 8.1.3.1) + bundler (>= 2.0.0) + export_to! + logger (~> 1.5) + minitest (~> 5.0) + railties (= 8.1.3.1) + rake (>= 13) + shoulda-context + +BUNDLED WITH + 2.7.2 diff --git a/gemfiles/ruby_3.4_rails_8.0.gemfile b/gemfiles/ruby_3.4_rails_8.0.gemfile new file mode 100644 index 0000000..bcef8a3 --- /dev/null +++ b/gemfiles/ruby_3.4_rails_8.0.gemfile @@ -0,0 +1,10 @@ +source "https://rubygems.org" + +git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } + +gemspec path: ".." + +gem "activesupport", "8.0.5.1" +gem "railties", "8.0.5.1" +gem "rake", ">= 13" +gem "logger", "~> 1.5" diff --git a/gemfiles/ruby_3.4_rails_8.0.gemfile.lock b/gemfiles/ruby_3.4_rails_8.0.gemfile.lock new file mode 100644 index 0000000..9856941 --- /dev/null +++ b/gemfiles/ruby_3.4_rails_8.0.gemfile.lock @@ -0,0 +1,238 @@ +PATH + remote: .. + specs: + export_to (1.2.1) + activesupport (>= 6.0, < 8.2) + csv + fast_excel (~> 0.4) + iconv (~> 1.0) + spreadsheet (~> 1.3) + +GEM + remote: https://rubygems.org/ + specs: + actionpack (8.0.5.1) + actionview (= 8.0.5.1) + activesupport (= 8.0.5.1) + nokogiri (>= 1.8.5) + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actionview (8.0.5.1) + activesupport (= 8.0.5.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activesupport (8.0.5.1) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + base64 (0.3.0) + benchmark (0.5.0) + bigdecimal (4.1.3) + builder (3.3.0) + concurrent-ruby (1.3.8) + connection_pool (3.0.2) + crass (1.0.7) + csv (3.3.6) + drb (2.2.3) + erb (6.0.7) + erubi (1.13.1) + fast_excel (0.5.0) + ffi (> 1.9, < 2) + ffi (1.17.4-aarch64-linux-gnu) + ffi (1.17.4-aarch64-linux-musl) + ffi (1.17.4-arm-linux-gnu) + ffi (1.17.4-arm-linux-musl) + ffi (1.17.4-arm64-darwin) + ffi (1.17.4-x86_64-darwin) + ffi (1.17.4-x86_64-linux-gnu) + ffi (1.17.4-x86_64-linux-musl) + i18n (1.15.2) + concurrent-ruby (~> 1.0) + iconv (1.1.1) + io-console (0.9.4) + irb (1.18.0) + pp (>= 0.6.0) + prism (>= 1.3.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + logger (1.7.0) + loofah (2.25.2) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + minitest (5.27.0) + nokogiri (1.19.4-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-musl) + racc (~> 1.4) + pp (0.6.4) + prettyprint + prettyprint (0.2.0) + prism (1.9.0) + racc (1.8.1) + rack (3.2.7) + rack-session (2.1.2) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.3.1) + rack (>= 3) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.7.1) + loofah (~> 2.25, >= 2.25.2) + 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) + railties (8.0.5.1) + actionpack (= 8.0.5.1) + activesupport (= 8.0.5.1) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) + zeitwerk (~> 2.6) + rake (13.4.2) + rbs (4.2.0) + logger + prism (>= 1.6.0) + tsort + rdoc (8.0.0) + erb + prism (>= 1.6.0) + rbs (>= 4.0.0) + tsort + reline (0.7.0) + io-console (~> 0.5) + ruby-ole (1.2.13.1) + securerandom (0.4.1) + shoulda-context (2.0.0) + spreadsheet (1.3.5) + bigdecimal + logger + ruby-ole + thor (1.5.0) + tsort (0.2.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uri (1.1.1) + useragent (0.16.11) + zeitwerk (2.8.3) + +PLATFORMS + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-gnu + arm-linux-musl + arm64-darwin + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + activesupport (= 8.0.5.1) + bundler (>= 2.0.0) + export_to! + logger (~> 1.5) + minitest (~> 5.0) + railties (= 8.0.5.1) + rake (>= 13) + shoulda-context + +CHECKSUMS + actionpack (8.0.5.1) sha256=a5595c9d824d68884ddc4d3965ab78c897760d3752e190df7efe897371caa1eb + actionview (8.0.5.1) sha256=472a108b9cc2295c4ac3ff09b028045e619875801f48c556f0085210b9cb1440 + activesupport (8.0.5.1) sha256=329a4280c4fbcfcf338ae2cb9df28b0b14527929dba105e10b3604516d998710 + base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b + benchmark (0.5.0) sha256=465df122341aedcb81a2a24b4d3bd19b6c67c1530713fd533f3ff034e419236c + bigdecimal (4.1.3) sha256=61ebe1e5e559bdc3cc6f2c0ee7f427321fc838f59611c294356eb04d6e21cf66 + builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f + bundler (4.0.21) sha256=7cbf5499b426076aa16c8d28a59e4c2c3aad5a438402abcd961f0119f29f1dd0 + concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1 + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a + crass (1.0.7) sha256=94868719948664c89ddcaf0a37c65048413dfcb1c869470a5f7a7ceb5390b295 + csv (3.3.6) sha256=aba61e7e507a66f03d45cb1f3c4b6359861c3504038b422962875dce099e4456 + drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 + erb (6.0.7) sha256=c5ca6dc25b0ef974a44dc8f59fe847577122483b1968a38dec305c60bf91ee92 + erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + export_to (1.2.1) + fast_excel (0.5.0) sha256=59c418bdcf586a6030798d4e3a9f575742badaceaf7bb90f38eee5feb5bdc478 + ffi (1.17.4-aarch64-linux-gnu) sha256=b208f06f91ffd8f5e1193da3cae3d2ccfc27fc36fba577baf698d26d91c080df + ffi (1.17.4-aarch64-linux-musl) sha256=9286b7a615f2676245283aef0a0a3b475ae3aae2bb5448baace630bb77b91f39 + ffi (1.17.4-arm-linux-gnu) sha256=d6dbddf7cb77bf955411af5f187a65b8cd378cb003c15c05697f5feee1cb1564 + ffi (1.17.4-arm-linux-musl) sha256=9d4838ded0465bef6e2426935f6bcc93134b6616785a84ffd2a3d82bc3cf6f95 + ffi (1.17.4-arm64-darwin) sha256=19071aaf1419251b0a46852abf960e77330a3b334d13a4ab51d58b31a937001b + ffi (1.17.4-x86_64-darwin) sha256=aa70390523cf3235096cf64962b709b4cfbd5c082a2cb2ae714eb0fe2ccda496 + ffi (1.17.4-x86_64-linux-gnu) sha256=9d3db14c2eae074b382fa9c083fe95aec6e0a1451da249eab096c34002bc752d + ffi (1.17.4-x86_64-linux-musl) sha256=3fdf9888483de005f8ef8d1cf2d3b20d86626af206cbf780f6a6a12439a9c49e + i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5 + iconv (1.1.1) sha256=6ac2b9e060d1ed3a18f4cd1ef262f90d3700d3151ead875ffc664180f968350d + io-console (0.9.4) sha256=a403304f32928ee85e56d457b4612ca43f2703b561a3258844992bd24085fbb1 + irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3 + logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203 + loofah (2.25.2) sha256=2007f746959ac65552456e04b433e83deb22759ab38c838b4445c70e43425918 + minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + nokogiri (1.19.4-aarch64-linux-gnu) sha256=1269fb644a6de405057a53dd5c762b1209b43ca7424f839454d3dbc677c31a8f + nokogiri (1.19.4-aarch64-linux-musl) sha256=35c65b9ce72b3bb03207bdbe7067915019dc18c1b9b59139684bd6690fdd01af + nokogiri (1.19.4-arm-linux-gnu) sha256=a301313e38bb065d68239e79734bcd6f56fb6efaacebde29e9abf2a4735340ca + nokogiri (1.19.4-arm-linux-musl) sha256=588923c101bcfa78869734d247d25b598674323e7f22474fc468f6e5647311eb + nokogiri (1.19.4-arm64-darwin) sha256=a46db9853286e6597b36ebc6953817d15acf3a299583eb3f89fdc6f91dd63527 + nokogiri (1.19.4-x86_64-darwin) sha256=7fd17057d3e1f00e9954a74b3cd76595d3d4a5ef233b7ed9599047c204f70551 + nokogiri (1.19.4-x86_64-linux-gnu) sha256=379fae440b28915e3f19d752ce2dcf8465ed2b2fbefd2a7ca0dd497bc981a06a + nokogiri (1.19.4-x86_64-linux-musl) sha256=17dfb7c1fa194ae02fbf7c51a7afc8d278045ab3fdacfd86f91d02d7b274470b + pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570 + prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 + prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 + racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f + rack (3.2.7) sha256=93e13e1c24f93556671d85d2d79fa228c3485815c50d7e2f265b5330c6528fb7 + rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 + rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 + rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 + rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d + rails-html-sanitizer (1.7.1) sha256=e797a7c9b01e567307e317c576b49ab4168017e63eea4dba9ce3cb587e2f22c2 + railties (8.0.5.1) sha256=da1958e1d9dab04691a2f8721b3ff7fab323715d37f103c19972dedfd644d5c7 + rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701 + rbs (4.2.0) sha256=51f7b886dcc05bc09e10b901daa6a81829f6adc03101d6ca9ea4aac6103e0674 + rdoc (8.0.0) sha256=03bf8c08a9639658855a0cfd77c0abca8325c227693f7f33f82957811348c469 + reline (0.7.0) sha256=5b012d8e55dbf9d450f12bde2cf7d15ff546ae80b3f8f3b30e570d431815583d + ruby-ole (1.2.13.1) sha256=578d10dd2a797a2b35a1286c6fb2c9525f67c24791346fc8015d39f0ffa3cb72 + securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 + shoulda-context (2.0.0) sha256=7adf45342cd800f507d2a053658cb1cce2884b616b26004d39684b912ea32c34 + spreadsheet (1.3.5) sha256=cd83ea66803d9cae4ac258dfe16cd8c2b85da33eec18a6d7b48fd4a45840ab7d + thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f + tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b + uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6 + useragent (0.16.11) sha256=700e6413ad4bb954bb63547fa098dddf7b0ebe75b40cc6f93b8d54255b173844 + zeitwerk (2.8.3) sha256=2c85125a8467ce069e20123d1e709a08955c9d29c118c25b46b7b7fafdbb92e5 + +BUNDLED WITH + 4.0.21 diff --git a/gemfiles/ruby_3.4_rails_8.1.gemfile b/gemfiles/ruby_3.4_rails_8.1.gemfile new file mode 100644 index 0000000..aeeb7cb --- /dev/null +++ b/gemfiles/ruby_3.4_rails_8.1.gemfile @@ -0,0 +1,10 @@ +source "https://rubygems.org" + +git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } + +gemspec path: ".." + +gem "activesupport", "8.1.3.1" +gem "railties", "8.1.3.1" +gem "rake", ">= 13" +gem "logger", "~> 1.5" diff --git a/gemfiles/ruby_3.4_rails_8.1.gemfile.lock b/gemfiles/ruby_3.4_rails_8.1.gemfile.lock new file mode 100644 index 0000000..e72dec1 --- /dev/null +++ b/gemfiles/ruby_3.4_rails_8.1.gemfile.lock @@ -0,0 +1,238 @@ +PATH + remote: .. + specs: + export_to (1.2.1) + activesupport (>= 6.0, < 8.2) + csv + fast_excel (~> 0.4) + iconv (~> 1.0) + spreadsheet (~> 1.3) + +GEM + remote: https://rubygems.org/ + specs: + actionpack (8.1.3.1) + actionview (= 8.1.3.1) + activesupport (= 8.1.3.1) + nokogiri (>= 1.8.5) + rack (>= 2.2.4) + rack-session (>= 1.0.1) + rack-test (>= 0.6.3) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + useragent (~> 0.16) + actionview (8.1.3.1) + activesupport (= 8.1.3.1) + builder (~> 3.1) + erubi (~> 1.11) + rails-dom-testing (~> 2.2) + rails-html-sanitizer (~> 1.6) + activesupport (8.1.3.1) + base64 + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + json + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + base64 (0.3.0) + bigdecimal (4.1.3) + builder (3.3.0) + concurrent-ruby (1.3.8) + connection_pool (3.0.2) + crass (1.0.7) + csv (3.3.6) + drb (2.2.3) + erb (6.0.7) + erubi (1.13.1) + fast_excel (0.5.0) + ffi (> 1.9, < 2) + ffi (1.17.4-aarch64-linux-gnu) + ffi (1.17.4-aarch64-linux-musl) + ffi (1.17.4-arm-linux-gnu) + ffi (1.17.4-arm-linux-musl) + ffi (1.17.4-arm64-darwin) + ffi (1.17.4-x86_64-darwin) + ffi (1.17.4-x86_64-linux-gnu) + ffi (1.17.4-x86_64-linux-musl) + i18n (1.15.2) + concurrent-ruby (~> 1.0) + iconv (1.1.1) + io-console (0.9.4) + irb (1.18.0) + pp (>= 0.6.0) + prism (>= 1.3.0) + rdoc (>= 4.0.0) + reline (>= 0.4.2) + json (3.0.2) + logger (1.7.0) + loofah (2.25.2) + crass (~> 1.0.2) + nokogiri (>= 1.12.0) + minitest (5.27.0) + nokogiri (1.19.4-aarch64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-aarch64-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-arm-linux-musl) + racc (~> 1.4) + nokogiri (1.19.4-arm64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-gnu) + racc (~> 1.4) + nokogiri (1.19.4-x86_64-linux-musl) + racc (~> 1.4) + pp (0.6.4) + prettyprint + prettyprint (0.2.0) + prism (1.9.0) + racc (1.8.1) + rack (3.2.7) + rack-session (2.1.2) + base64 (>= 0.1.0) + rack (>= 3.0.0) + rack-test (2.2.0) + rack (>= 1.3) + rackup (2.3.1) + rack (>= 3) + rails-dom-testing (2.3.0) + activesupport (>= 5.0.0) + minitest + nokogiri (>= 1.6) + rails-html-sanitizer (1.7.1) + loofah (~> 2.25, >= 2.25.2) + 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) + railties (8.1.3.1) + actionpack (= 8.1.3.1) + activesupport (= 8.1.3.1) + irb (~> 1.13) + rackup (>= 1.0.0) + rake (>= 12.2) + thor (~> 1.0, >= 1.2.2) + tsort (>= 0.2) + zeitwerk (~> 2.6) + rake (13.4.2) + rbs (4.2.0) + logger + prism (>= 1.6.0) + tsort + rdoc (8.0.0) + erb + prism (>= 1.6.0) + rbs (>= 4.0.0) + tsort + reline (0.7.0) + io-console (~> 0.5) + ruby-ole (1.2.13.1) + securerandom (0.4.1) + shoulda-context (2.0.0) + spreadsheet (1.3.5) + bigdecimal + logger + ruby-ole + thor (1.5.0) + tsort (0.2.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uri (1.1.1) + useragent (0.16.11) + zeitwerk (2.8.3) + +PLATFORMS + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-gnu + arm-linux-musl + arm64-darwin + x86_64-darwin + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + activesupport (= 8.1.3.1) + bundler (>= 2.0.0) + export_to! + logger (~> 1.5) + minitest (~> 5.0) + railties (= 8.1.3.1) + rake (>= 13) + shoulda-context + +CHECKSUMS + actionpack (8.1.3.1) sha256=974cb7154548e81f470b1b0f247b99cb38e87825899dca58610596e2817723d0 + actionview (8.1.3.1) sha256=2da68b8414c47b43bfbed1ce69c5afe1c04f78c267aacb5660a4cab5ca12cfb6 + activesupport (8.1.3.1) sha256=85458765f25ea48b9019c46b6bb3fa5683197bf4280d9f06710a6e8d7a831376 + base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b + bigdecimal (4.1.3) sha256=61ebe1e5e559bdc3cc6f2c0ee7f427321fc838f59611c294356eb04d6e21cf66 + builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f + bundler (4.0.21) sha256=7cbf5499b426076aa16c8d28a59e4c2c3aad5a438402abcd961f0119f29f1dd0 + concurrent-ruby (1.3.8) sha256=b2f1be836e968ccc78ccfce277ea79c72a88633f22306782c16ff23fb415d1e1 + connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a + crass (1.0.7) sha256=94868719948664c89ddcaf0a37c65048413dfcb1c869470a5f7a7ceb5390b295 + csv (3.3.6) sha256=aba61e7e507a66f03d45cb1f3c4b6359861c3504038b422962875dce099e4456 + drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373 + erb (6.0.7) sha256=c5ca6dc25b0ef974a44dc8f59fe847577122483b1968a38dec305c60bf91ee92 + erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9 + export_to (1.2.1) + fast_excel (0.5.0) sha256=59c418bdcf586a6030798d4e3a9f575742badaceaf7bb90f38eee5feb5bdc478 + ffi (1.17.4-aarch64-linux-gnu) sha256=b208f06f91ffd8f5e1193da3cae3d2ccfc27fc36fba577baf698d26d91c080df + ffi (1.17.4-aarch64-linux-musl) sha256=9286b7a615f2676245283aef0a0a3b475ae3aae2bb5448baace630bb77b91f39 + ffi (1.17.4-arm-linux-gnu) sha256=d6dbddf7cb77bf955411af5f187a65b8cd378cb003c15c05697f5feee1cb1564 + ffi (1.17.4-arm-linux-musl) sha256=9d4838ded0465bef6e2426935f6bcc93134b6616785a84ffd2a3d82bc3cf6f95 + ffi (1.17.4-arm64-darwin) sha256=19071aaf1419251b0a46852abf960e77330a3b334d13a4ab51d58b31a937001b + ffi (1.17.4-x86_64-darwin) sha256=aa70390523cf3235096cf64962b709b4cfbd5c082a2cb2ae714eb0fe2ccda496 + ffi (1.17.4-x86_64-linux-gnu) sha256=9d3db14c2eae074b382fa9c083fe95aec6e0a1451da249eab096c34002bc752d + ffi (1.17.4-x86_64-linux-musl) sha256=3fdf9888483de005f8ef8d1cf2d3b20d86626af206cbf780f6a6a12439a9c49e + i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5 + iconv (1.1.1) sha256=6ac2b9e060d1ed3a18f4cd1ef262f90d3700d3151ead875ffc664180f968350d + io-console (0.9.4) sha256=a403304f32928ee85e56d457b4612ca43f2703b561a3258844992bd24085fbb1 + irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3 + json (3.0.2) sha256=8e6d7e7b11384c21230430cef90b71f14849a34a1f4452796670f7c981bd19df + logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203 + loofah (2.25.2) sha256=2007f746959ac65552456e04b433e83deb22759ab38c838b4445c70e43425918 + minitest (5.27.0) sha256=2d3b17f8a36fe7801c1adcffdbc38233b938eb0b4966e97a6739055a45fa77d5 + nokogiri (1.19.4-aarch64-linux-gnu) sha256=1269fb644a6de405057a53dd5c762b1209b43ca7424f839454d3dbc677c31a8f + nokogiri (1.19.4-aarch64-linux-musl) sha256=35c65b9ce72b3bb03207bdbe7067915019dc18c1b9b59139684bd6690fdd01af + nokogiri (1.19.4-arm-linux-gnu) sha256=a301313e38bb065d68239e79734bcd6f56fb6efaacebde29e9abf2a4735340ca + nokogiri (1.19.4-arm-linux-musl) sha256=588923c101bcfa78869734d247d25b598674323e7f22474fc468f6e5647311eb + nokogiri (1.19.4-arm64-darwin) sha256=a46db9853286e6597b36ebc6953817d15acf3a299583eb3f89fdc6f91dd63527 + nokogiri (1.19.4-x86_64-darwin) sha256=7fd17057d3e1f00e9954a74b3cd76595d3d4a5ef233b7ed9599047c204f70551 + nokogiri (1.19.4-x86_64-linux-gnu) sha256=379fae440b28915e3f19d752ce2dcf8465ed2b2fbefd2a7ca0dd497bc981a06a + nokogiri (1.19.4-x86_64-linux-musl) sha256=17dfb7c1fa194ae02fbf7c51a7afc8d278045ab3fdacfd86f91d02d7b274470b + pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570 + prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193 + prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85 + racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f + rack (3.2.7) sha256=93e13e1c24f93556671d85d2d79fa228c3485815c50d7e2f265b5330c6528fb7 + rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8 + rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463 + rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868 + rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d + rails-html-sanitizer (1.7.1) sha256=e797a7c9b01e567307e317c576b49ab4168017e63eea4dba9ce3cb587e2f22c2 + railties (8.1.3.1) sha256=2388a232579a00cefea4487de66c8553c3408c1300abdc6cf1799d86ffb04487 + rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701 + rbs (4.2.0) sha256=51f7b886dcc05bc09e10b901daa6a81829f6adc03101d6ca9ea4aac6103e0674 + rdoc (8.0.0) sha256=03bf8c08a9639658855a0cfd77c0abca8325c227693f7f33f82957811348c469 + reline (0.7.0) sha256=5b012d8e55dbf9d450f12bde2cf7d15ff546ae80b3f8f3b30e570d431815583d + ruby-ole (1.2.13.1) sha256=578d10dd2a797a2b35a1286c6fb2c9525f67c24791346fc8015d39f0ffa3cb72 + securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1 + shoulda-context (2.0.0) sha256=7adf45342cd800f507d2a053658cb1cce2884b616b26004d39684b912ea32c34 + spreadsheet (1.3.5) sha256=cd83ea66803d9cae4ac258dfe16cd8c2b85da33eec18a6d7b48fd4a45840ab7d + thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73 + tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f + tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b + uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6 + useragent (0.16.11) sha256=700e6413ad4bb954bb63547fa098dddf7b0ebe75b40cc6f93b8d54255b173844 + zeitwerk (2.8.3) sha256=2c85125a8467ce069e20123d1e709a08955c9d29c118c25b46b7b7fafdbb92e5 + +BUNDLED WITH + 4.0.21 diff --git a/lib/export_to/version.rb b/lib/export_to/version.rb index d6ab29c..f2e25e6 100644 --- a/lib/export_to/version.rb +++ b/lib/export_to/version.rb @@ -1,3 +1,3 @@ module ExportTo - VERSION = "1.2.0" + VERSION = "1.2.1" end