Skip to content

Commit cd13355

Browse files
authored
Merge branch 'main' into chore/solidus-v.3.1.0-fix
2 parents 512fc62 + 5a8d695 commit cd13355

88 files changed

Lines changed: 1747 additions & 1384 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.circleci/config.yml

Lines changed: 0 additions & 39 deletions
This file was deleted.

.gem_release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
bump:
22
recurse: false
3-
file: 'lib/spree/auth/version.rb'
3+
file: 'lib/solidus_auth_devise/version.rb'
44
message: Bump SolidusAuthDevise to %{version}
55
tag: true

.git-blame-ignore-revs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Ignore standardrb --fix commit
2+
eaba0e4370a03d10a6064466a9197c330bb92c64

.github/stale.yml

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1 @@
1-
# Number of days of inactivity before an issue becomes stale
2-
daysUntilStale: 60
3-
# Number of days of inactivity before a stale issue is closed
4-
daysUntilClose: 7
5-
# Issues with these labels will never be considered stale
6-
exemptLabels:
7-
- pinned
8-
- security
9-
# Label to use when marking an issue as stale
10-
staleLabel: wontfix
11-
# Comment to post when marking an issue as stale. Set to `false` to disable
12-
markComment: >
13-
This issue has been automatically marked as stale because it has not had
14-
recent activity. It will be closed if no further activity occurs. Thank you
15-
for your contributions.
16-
# Comment to post when closing a stale issue. Set to `false` to disable
17-
closeComment: false
1+
_extends: .github

.github/workflows/test.yml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: Test
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
schedule:
9+
- cron: "0 0 * * 4" # every Thursday
10+
11+
concurrency:
12+
group: test-${{ github.ref_name }}
13+
cancel-in-progress: ${{ github.ref_name != 'main' }}
14+
15+
permissions:
16+
contents: read
17+
18+
jobs:
19+
rspec:
20+
name: Solidus ${{ matrix.solidus-branch }}, Rails ${{ matrix.rails-version }} and Ruby ${{ matrix.ruby-version }} on ${{ matrix.database }}
21+
runs-on: ubuntu-24.04
22+
strategy:
23+
fail-fast: false
24+
matrix:
25+
rails-version:
26+
- "7.2"
27+
- "8.0"
28+
ruby-version:
29+
- "3.1"
30+
- "3.4"
31+
solidus-branch:
32+
- "v4.4"
33+
- "v4.5"
34+
- "v4.6"
35+
database:
36+
- "postgresql"
37+
- "mysql"
38+
- "sqlite"
39+
exclude:
40+
- solidus-branch: "v4.5"
41+
ruby-version: "3.1"
42+
- solidus-branch: "v4.6"
43+
ruby-version: "3.1"
44+
- solidus-branch: "v4.4"
45+
rails-version: "8.0"
46+
env:
47+
TEST_RESULTS_PATH: coverage/coverage.xml
48+
CAPYBARA_JAVASCRIPT_DRIVER: selenium_headless
49+
steps:
50+
- uses: actions/checkout@v4
51+
- name: Run extension tests
52+
uses: solidusio/test-solidus-extension@main
53+
with:
54+
database: ${{ matrix.database }}
55+
rails-version: ${{ matrix.rails-version }}
56+
ruby-version: ${{ matrix.ruby-version }}
57+
solidus-branch: ${{ matrix.solidus-branch }}
58+
- name: Upload coverage reports to Codecov
59+
uses: codecov/codecov-action@v5
60+
continue-on-error: true
61+
with:
62+
token: ${{ secrets.CODECOV_TOKEN }}
63+
files: ${{ env.TEST_RESULTS_PATH }}

.github_changelog_generator

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
issues=false
2+
exclude-labels=infrastructure

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,7 @@ pkg
1515
*.swp
1616
spec/dummy
1717
spec/examples.txt
18+
/sandbox
19+
.rvmrc
20+
.ruby-version
21+
.ruby-gemset

CHANGELOG.md

Lines changed: 1 addition & 391 deletions
Large diffs are not rendered by default.

Gemfile

Lines changed: 42 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,56 @@
11
# frozen_string_literal: true
22

3-
source 'https://rubygems.org'
3+
source "https://rubygems.org"
44
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
55

6-
branch = ENV.fetch('SOLIDUS_BRANCH', 'master')
6+
branch = ENV.fetch("SOLIDUS_BRANCH", "main")
7+
gem "solidus", github: "solidusio/solidus", branch: branch
8+
gem "solidus_backend", github: "solidusio/solidus", branch: branch
79

8-
git "https://github.com/solidusio/solidus.git", branch: branch do
9-
gem 'solidus_api'
10-
gem 'solidus_backend'
11-
gem 'solidus_core'
12-
gem 'solidus_frontend'
13-
gem 'solidus_sample'
14-
end
10+
rails_requirement_string = ENV.fetch("RAILS_VERSION", "~> 7.0")
11+
gem "rails", rails_requirement_string
1512

16-
gem 'rails', ENV.fetch('RAILS_VERSION', nil)
13+
# The solidus_frontend gem has been pulled out since v3.2
14+
if branch >= "v3.2"
15+
gem "solidus_frontend"
16+
elsif branch == "main"
17+
gem "solidus_frontend", github: "solidusio/solidus_frontend"
18+
else
19+
gem "solidus_frontend", github: "solidusio/solidus", branch: branch
20+
end
1721

18-
case ENV['DB']
19-
when 'mysql'
20-
gem 'mysql2'
21-
when 'postgresql'
22-
gem 'pg'
22+
case ENV.fetch("DB", nil)
23+
when "mysql"
24+
gem "mysql2"
25+
when "postgresql"
26+
gem "pg"
2327
else
24-
gem 'sqlite3'
28+
rails_version = Gem::Requirement.new(rails_requirement_string).requirements[0][1]
29+
sqlite_version = (rails_version < Gem::Version.new(7.2)) ? "~> 1.4" : "~> 2.0"
30+
31+
gem "sqlite3", sqlite_version
32+
end
33+
34+
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new("3")
35+
# While we still support Ruby < 3 we need to workaround a limitation in
36+
# the 'async' gem that relies on the latest ruby, since RubyGems doesn't
37+
# resolve gems based on the required ruby version.
38+
gem "async", "< 3", require: false
2539
end
2640

27-
gem 'rails-controller-testing', group: :test
41+
# 'net/smtp' is required by 'mail', see:
42+
# - https://github.com/ruby/net-protocol/issues/10
43+
# - https://stackoverflow.com/a/72474475
44+
gem "net-smtp", require: false
2845

2946
gemspec
3047

3148
# Use a local Gemfile to include development dependencies that might not be
32-
# relevant for the project or for other contributors, e.g.: `gem 'pry-debug'`.
33-
eval_gemfile 'Gemfile-local' if File.exist? 'Gemfile-local'
49+
# relevant for the project or for other contributors, e.g. pry-byebug.
50+
#
51+
# We use `send` instead of calling `eval_gemfile` to work around an issue with
52+
# how Dependabot parses projects: https://github.com/dependabot/dependabot-core/issues/1658.
53+
send(:eval_gemfile, "Gemfile-local") if File.exist? "Gemfile-local"
54+
55+
# Pin state_machines
56+
gem "state_machines", "= 0.6.0"

0 commit comments

Comments
 (0)