Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
a51f162
Update rubocop requirement from 1.63.4 to 1.63.5 (#949)
dependabot[bot] May 23, 2024
86f9e3c
Update rubocop requirement from 1.63.5 to 1.64.1 (#953)
dependabot[bot] Jun 6, 2024
2d6a3f5
Rename team (#957)
dgsuarez Jul 10, 2024
7b4ae30
Update rubocop requirement from 1.64.1 to 1.65.0 (#958)
dependabot[bot] Jul 18, 2024
0c50cb8
Update rubocop requirement from 1.65.0 to 1.65.1 (#961)
dependabot[bot] Aug 7, 2024
84c0eed
ElasticSearch v. 8 upgrade (#962)
ql Aug 30, 2024
d2c38f7
Bump chewy version to 8.0.0-beta (#963)
Sep 4, 2024
5193d28
Assign dependabot PR's to sre (#966)
ebeagusamuel Sep 13, 2024
17597e6
Adding Ruby 3.3 and Rails 7.2 to CI matrix (#967)
jotolo Sep 30, 2024
21c5407
updating ruby and active record versions based on test suite (#968)
jotolo Oct 7, 2024
6a2176f
Fix id conversion issue in delayed_sidekiq strategy (#964)
sundus-y Oct 8, 2024
7b09b20
Add Ruby 3.4 to CI matrix
tylerwillingham Oct 14, 2025
8d8c778
Add Rails 8.0 to CI matrix
tylerwillingham Oct 14, 2025
6b202d5
Remove EOL Ruby versions 3.0 and 3.1 from CI matrix
tylerwillingham Oct 14, 2025
18132fe
Update codeowners
bbatsov Nov 21, 2025
c4624f0
[Fix #980] Remove mention of journal_name from the docs
bbatsov Nov 21, 2025
767c850
Tweak some wording
bbatsov Nov 21, 2025
e55bfc1
Bump the copyright years
bbatsov Nov 21, 2025
fde2fdc
Bump the copyright years
bbatsov Nov 21, 2025
be79f8f
Drop support for Rails <= 7.1
bbatsov Feb 25, 2026
23b5721
Update RuboCop to 1.84.2 and regenerate todo
bbatsov Feb 25, 2026
eb591ec
Update sqlite3 to ~> 2.1 and pin unparser to ~> 0.6.15
bbatsov Feb 25, 2026
b25cfc0
Modernize GitHub Actions and docker-compose setup
bbatsov Feb 25, 2026
cd5fd71
Fix FrozenError in Syncer when mutating frozen arrays
bbatsov Feb 25, 2026
ca10cc7
Fix specs broken by Ruby 3.4 Hash#inspect format change
bbatsov Feb 25, 2026
010e129
Update README compatibility to reflect current Ruby/Rails support
bbatsov Feb 25, 2026
f7b606d
Add note about Ruby/Rails version support policy
bbatsov Feb 25, 2026
845f34c
Fix typos and grammar in documentation
bbatsov Feb 25, 2026
2d07d48
Split README into focused documentation files
bbatsov Feb 25, 2026
f74a271
Improve documentation: cross-links, troubleshooting, docs index
bbatsov Feb 25, 2026
8b4bd31
Modernize test suite: replace deprecated syntax, remove dead tests
bbatsov Feb 25, 2026
4c8d17f
Release Chewy 8.0.0
bbatsov Feb 25, 2026
2d0b089
Update gemspec files
ericproulx Jan 11, 2025
a7719e0
Add CHANGELOG.md entry
ericproulx Jan 12, 2025
259089f
Capture output in rake helper spec
mjankowski Feb 25, 2026
7049f57
Drop rspec-its dependency
bbatsov Feb 25, 2026
423a8d0
Add non-Rails usage guide and FAQ section
bbatsov Feb 26, 2026
ced6168
Add getting-started tutorial
bbatsov Feb 26, 2026
2c99c51
Improve querying, indexing and testing docs
bbatsov Feb 26, 2026
40f3a58
Add rails 8.1 to CI matrix
mjankowski Feb 26, 2026
884b1f3
Replace parser gem with prism for Witchcraft AST parsing on Ruby 3.3+…
t6n Mar 4, 2026
677b694
Add missing specs for untested source files
bbatsov Feb 26, 2026
f6e3bff
Allow ruby version 4.0 (#1003)
mjankowski Mar 12, 2026
8aef6af
Release Chewy 8.0.1 (#1005)
AlfonsoUceda Mar 12, 2026
6f4beeb
Remove dead Code Climate and Inch CI badges
bbatsov Mar 15, 2026
d4ee71f
Improve contributing documentation (#1014)
mattmenefee Mar 25, 2026
619f895
Switch rubocop CI output to GitHub annotations format (#1012)
mattmenefee Mar 25, 2026
7206c18
Replace deprecated Sidekiq testing API with new Sidekiq 8.1+ API (#1011)
mattmenefee Mar 25, 2026
f5793b4
Silence AR Migration output during spec runs (#1006)
mjankowski Mar 25, 2026
ac0cba3
Fix the drop_indices helper for ES version portability (#1013)
mattmenefee Mar 25, 2026
ba6a0d0
Activate and fix rubocop-rake plugin cops (#1015)
mjankowski Mar 25, 2026
4ed5132
Add Chewy 7/ES 7 to Chewy 8/ES 8 migration guide (#1010)
mattmenefee Mar 25, 2026
764528b
Promote Elasticsearch to a native GitHub Actions service (#1008)
mattmenefee Mar 25, 2026
0ce311b
Update rubocop to version 1.86.0 (#1016)
mjankowski Mar 25, 2026
70de104
Raise error in #scroll_batches when search backend returns a failure …
tomdev Mar 26, 2026
ebf0cf9
[PF] Rubocop offenses are corrected, CHANGELOG entries are added (#1017)
AlfonsoUceda Mar 26, 2026
dd57163
Add runtime_mappings support (#887)
TakuyaKurimoto Mar 27, 2026
149a28b
Chewy::Stash::Journal.for uses a single terms filter (#1018)
AlfonsoUceda May 28, 2026
c793fb0
Add context: option to import for passing custom data to crutches and…
dimitrikochnev May 28, 2026
3835ffe
Context parallel fix (#1020)
AlfonsoUceda May 28, 2026
6f49e72
v8.1.0 is released (#1019)
AlfonsoUceda May 28, 2026
b196a10
reset! alias swap is atomic (#1021)
AlfonsoUceda May 29, 2026
8b78426
Import progressbar feature is reintroduced (#1022)
AlfonsoUceda May 29, 2026
6ab53cc
Replace deprecated ZRANGEBYSCORE in delayed_sidekiq worker (#1024)
AlfonsoUceda May 29, 2026
129e2c8
update_fields: [] is treated as a no-op (#1023)
AlfonsoUceda May 29, 2026
11728e5
v8.2.0 is released (#1025)
AlfonsoUceda May 29, 2026
1e92209
import_count on multi-select relations is corrected (#1026)
AlfonsoUceda May 29, 2026
599305f
v8.2.1 is released (#1027)
AlfonsoUceda Jun 1, 2026
ca71816
Remove obsolete _type field references (#1028)
mattmenefee Jun 2, 2026
e4ef3f6
Fix misspelled extract_lambdas in Witchcraft (#1030)
mattmenefee Jun 2, 2026
a31b9cf
Compiled compose path replaces witchcraft! as the default (#1032)
AlfonsoUceda Jun 3, 2026
3376c21
v8.3.0 is released (#1033)
AlfonsoUceda Jun 3, 2026
83e71a6
Gemfiles are simplified (#1035)
AlfonsoUceda Jun 4, 2026
7bd98a6
Scroll context for an empty result is cleared (#1037)
AlfonsoUceda Jun 5, 2026
ca4f6f5
v8.3.1 is released (#1038)
AlfonsoUceda Jun 5, 2026
e3f46f0
Chewy.close_client closes Elasticsearch connections (#1036)
AlfonsoUceda Jun 8, 2026
d113e7e
delayed_sidekiq Array type error on Sidekiq 7+ is corrected (#1034)
AlfonsoUceda Jun 8, 2026
ef4ec3d
[OPS-3702] Add bundler cooldown of 7 days (#1039)
AlfonsoUceda Jun 15, 2026
9029b5b
v8.4.0 is released (#1040)
AlfonsoUceda Jun 17, 2026
99b1982
[Fix #1042] Symbol#to_proc field values on the compiled compose path …
AlfonsoUceda Jun 19, 2026
5885239
Bump actions/checkout from 6 to 7 (#1044)
dependabot[bot] Jun 24, 2026
2dbc54e
Update dependabot (#1046)
AlfonsoUceda Jul 13, 2026
21594c8
Bump ruby/setup-ruby from 1 to 1.316.0 (#1047)
dependabot[bot] Jul 15, 2026
67fbbd5
Dev/test dependency cleanup (#1048)
AlfonsoUceda Jul 15, 2026
ff766e4
Bump ruby/setup-ruby from 1.316.0 to 1.319.0 (#1049)
dependabot[bot] Jul 22, 2026
7616b35
Pin GitHub Actions to commit SHAs (#1050)
Totara-thib Jul 23, 2026
65c8a25
Add Plumber to watch workflow security (#1051)
Totara-thib Aug 3, 2026
75c170c
Bump ruby/setup-ruby from 1.319.0 to 1.321.0 (#1052)
dependabot[bot] Aug 3, 2026
73897f5
Update Plumber to v0.4.28 and drop the local config (#1053)
Totara-thib Aug 4, 2026
95cd54a
Bump getplumber/plumber from 0.4.28 to 0.4.30 (#1054)
dependabot[bot] Aug 12, 2026
f9d22ef
Bump getplumber/plumber from 0.4.30 to 0.4.36 (#1055)
dependabot[bot] Aug 19, 2026
4e7d702
Bump getplumber/plumber from 0.4.36 to 0.4.39 (#1056)
dependabot[bot] Aug 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1 @@
.github/workflows @toptal/platform-sre
* @toptal/platform-foundation
8 changes: 4 additions & 4 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ updates:
interval: "weekly"
day: "wednesday"
time: "07:00"
cooldown:
default-days: 7
pull-request-branch-name:
separator: "-"
labels:
- "no-jira"
- "ruby"
- "dependencies"
reviewers:
- "toptal/devx"
registries:
- toptal-github
insecure-external-code-execution: allow
Expand All @@ -31,12 +31,12 @@ updates:
interval: "weekly"
day: "wednesday"
time: "07:00"
cooldown:
default-days: 7
pull-request-branch-name:
separator: "-"
labels:
- "no-jira"
- "dependencies"
- "gha"
reviewers:
- "toptal/devx"
open-pull-requests-limit: 3
34 changes: 34 additions & 0 deletions .github/workflows/plumber.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Plumber

on:
push:
branches: [master]
pull_request:

permissions:
contents: read

jobs:
plumber:
runs-on: ubuntu-latest
timeout-minutes: 10
permissions:
contents: read
security-events: write
# Needed by score-push to publish the score for the README badge.
id-token: write
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- uses: getplumber/plumber@031bc86d1e5f661626e2000f4f8779912d608d5f # v0.4.39
with:
# Code scanning upload needs security-events write, which PRs
# from forks do not get. The report stays available as a
# workflow artifact there.
upload-sarif: ${{ github.event.pull_request.head.repo.fork != true }}
# Publishes the score to score.getplumber.io, which feeds the
# badge in the README. A failed push never fails the run.
score-push: true
# Gate at 85 points instead of the all-or-nothing default,
# leaves room for a small finding without blocking PRs.
min-points: 85
48 changes: 34 additions & 14 deletions .github/workflows/ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,30 @@ name: CI
on:
push:
branches: [master]
workflow_dispatch:
pull_request:
types: [
synchronize, # PR was updated
opened, # PR was open
reopened # PR was reopened
]

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
ruby-3:
test:
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
ruby: [ '3.0', '3.1', '3.2' ]
gemfile: [rails.6.1.activerecord, rails.7.0.activerecord, rails.7.1.activerecord]
ruby: [ '3.2', '3.3', '3.4', '4.0' ]
gemfile: [rails.7.2.activerecord, rails.8.0.activerecord, rails.8.1.activerecord]
name: ${{ matrix.ruby }}-${{ matrix.gemfile }}

env:
Expand All @@ -35,26 +44,37 @@ jobs:
--health-interval 10s
--health-timeout 5s
--health-retries 5
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:8.19.13
ports:
- '9250:9200'
env:
discovery.type: single-node
xpack.security.enabled: 'false'
ES_JAVA_OPTS: '-Xms500m -Xmx500m'
# Set health checks to wait until Elasticsearch has started
options: >-
--health-cmd "curl -sf http://localhost:9200/_cluster/health?wait_for_status=yellow&timeout=5s"
--health-interval 10s
--health-timeout 5s
--health-retries 10

steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run Elasticsearch
uses: elastic/elastic-github-actions/elasticsearch@9de0f78f306e4ebc0838f057e6b754364685e759
with:
stack-version: 7.10.1
port: 9250
- name: Tests
run: bundle exec rspec

rubocop:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
with:
ruby-version: 3.0
ruby-version: 3.4
bundler-cache: true
- run: bundle exec rubocop --format simple
- run: bundle exec rubocop --format github
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,4 @@ tmp
_site
.sass-cache
file::memory:?cache=shared
benchmark
9 changes: 8 additions & 1 deletion .rubocop.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
inherit_from: .rubocop_todo.yml

plugins:
- rubocop-rake

AllCops:
NewCops: enable
TargetRubyVersion: 3.0
TargetRubyVersion: 3.2
SuggestExtensions: false

Layout/AccessModifierIndentation:
EnforcedStyle: outdent
Expand Down Expand Up @@ -49,6 +53,9 @@ Style/AndOr:
Style/DoubleNegation:
Enabled: false

Style/RedundantStructKeywordInit:
Enabled: false

Metrics/BlockLength:
Exclude:
- '**/*_spec.rb'
Expand Down
Loading