Skip to content
Open
Show file tree
Hide file tree
Changes from 68 commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
8a51f7f
fix: upgrade core-js from 3.25.1 to 3.45.1
snyk-bot Sep 17, 2025
9ddac6c
fix: upgrade @babel/plugin-proposal-decorators from 7.19.0 to 7.28.0
snyk-bot Sep 17, 2025
3b8790b
fix: upgrade @babel/preset-react from 7.18.6 to 7.27.1
snyk-bot Sep 17, 2025
9f6ebc6
fix: upgrade @babel/helper-string-parser from 7.18.10 to 7.27.1
snyk-bot Sep 17, 2025
6f311ad
fix: upgrade react-bootstrap from 1.3.0 to 1.6.8
snyk-bot Sep 17, 2025
20b3395
Merge pull request #91 from Wbaker7702/snyk-upgrade-37e9b7431e6b54f17…
Wbaker7702 Sep 26, 2025
478f6eb
Merge branch 'main' into snyk-upgrade-14203e4cb95051ff8d07172df422773c
Wbaker7702 Sep 26, 2025
646881c
Merge pull request #90 from Wbaker7702/snyk-upgrade-14203e4cb95051ff8…
Wbaker7702 Sep 26, 2025
dd93007
Merge branch 'main' into snyk-upgrade-492865c46be53b195870ae797a06641a
Wbaker7702 Sep 26, 2025
e22f256
Merge pull request #89 from Wbaker7702/snyk-upgrade-492865c46be53b195…
Wbaker7702 Sep 26, 2025
346f019
Merge branch 'main' into snyk-upgrade-9205f62806316a37eeb007a9218cf7be
Wbaker7702 Sep 26, 2025
fe32fca
Merge pull request #88 from Wbaker7702/snyk-upgrade-9205f62806316a37e…
Wbaker7702 Sep 26, 2025
cd81cfc
Merge branch 'main' into snyk-upgrade-69f9219c4a1e4af19e5314e5c10c2c6c
Wbaker7702 Sep 26, 2025
aaef026
Merge pull request #87 from Wbaker7702/snyk-upgrade-69f9219c4a1e4af19…
Wbaker7702 Sep 26, 2025
4235f1e
Create SECURITY.md
Wbaker7702 Sep 26, 2025
44f2c8e
Potential fix for code scanning alert no. 29: Dependency download usi…
Wbaker7702 Sep 26, 2025
61172c9
Merge pull request #92 from Wbaker7702/alert-autofix-29
Wbaker7702 Sep 26, 2025
97e94e7
Potential fix for code scanning alert no. 2: Useless regular-expressi…
Wbaker7702 Sep 26, 2025
14f9cd6
Merge pull request #93 from Wbaker7702/alert-autofix
Wbaker7702 Sep 26, 2025
9d356f3
Potential fix for code scanning alert no. 23: Incomplete regular expr…
Wbaker7702 Sep 26, 2025
9a5bf9a
Merge pull request #94 from Wbaker7702/alert-autofix-23
Wbaker7702 Sep 26, 2025
10b6da5
Potential fix for code scanning alert no. 24: Clear-text storage of s…
Wbaker7702 Sep 26, 2025
8885ba9
Merge pull request #95 from Wbaker7702/alert-autofix-24
Wbaker7702 Sep 26, 2025
630e8b9
Potential fix for code scanning alert no. 19: CSRF protection weakene…
Wbaker7702 Sep 26, 2025
d5a471b
Merge pull request #96 from Wbaker7702/alert-autofix-19
Wbaker7702 Sep 26, 2025
28b7913
Potential fix for code scanning alert no. 15: DOM text reinterpreted …
Wbaker7702 Sep 26, 2025
3c28cee
Merge pull request #97 from Wbaker7702/alert-autofix-16
Wbaker7702 Sep 26, 2025
e31ca44
Potential fix for code scanning alert no. 28: Workflow does not conta…
Wbaker7702 Sep 26, 2025
3dd0722
Merge pull request #98 from Wbaker7702/alert-autofix-28
Wbaker7702 Sep 26, 2025
d774071
Potential fix for code scanning alert no. 21: Overly permissive regul…
Wbaker7702 Sep 26, 2025
9c88929
Merge pull request #99 from Wbaker7702/alert-autofix-21
Wbaker7702 Sep 26, 2025
389a2d3
fix: upgrade enketo-transformer from 4.1.1 to 4.2.0
snyk-bot Oct 2, 2025
4ff5fb8
Merge pull request #100 from Wbaker7702/snyk-upgrade-cf7c8dbd0249a995…
Wbaker7702 Oct 2, 2025
8d441e8
fix: Gemfile to reduce vulnerabilities
snyk-bot Oct 8, 2025
1418e1c
Merge pull request #101 from Wbaker7702/snyk-fix-908d87151e87cacd97d7…
Wbaker7702 Oct 10, 2025
dc8a13b
feat: Add analytics, audit logs, and form templates
cursoragent Oct 14, 2025
2eb9c14
Merge pull request #103 from Wbaker7702/cursor/add-new-features-to-sy…
Wbaker7702 Oct 14, 2025
e70097d
Refactor: Update dependencies and improve code quality (#104)
Wbaker7702 Oct 14, 2025
02fb916
fix: package.json & yarn.lock to reduce vulnerabilities (#105)
Wbaker7702 Oct 14, 2025
de44d06
[Snyk] Upgrade css-loader from 5.0.0 to 5.2.7 (#106)
Wbaker7702 Oct 15, 2025
0dc63f8
fix: upgrade @babel/plugin-proposal-object-rest-spread from 7.18.9 to…
Wbaker7702 Oct 15, 2025
cefa153
fix: upgrade regenerator-runtime from 0.13.9 to 0.14.0 (#110)
Wbaker7702 Oct 15, 2025
7b117ad
fix: upgrade query-string from 6.13.1 to 6.14.1 (#107)
Wbaker7702 Oct 15, 2025
fb4f33a
ci: run db:migrate during test DB setup to apply pending migrations (…
Wbaker7702 Oct 15, 2025
4ab2c04
fix: upgrade react_ujs from 2.6.1 to 2.7.1 (#108)
Wbaker7702 Oct 16, 2025
955c791
docs: add Ruby gem cache debug documentation (#112)
Wbaker7702 Oct 16, 2025
961b599
Update dependencies, add PostCSS (#113)
Wbaker7702 Oct 16, 2025
8c18641
Potential fix for code scanning alert no. 32: Insecure Mass Assignmen…
Wbaker7702 Oct 16, 2025
5913ccb
Suggest and update new features (#115)
Wbaker7702 Oct 16, 2025
96aa184
Potential fix for code scanning alert no. 35: Insecure Mass Assignmen…
Wbaker7702 Oct 16, 2025
6455d68
Potential fix for code scanning alert no. 31: SQL query built from us…
Wbaker7702 Oct 16, 2025
00ffc9a
Potential fix for code scanning alert no. 36: Code injection (#118)
Wbaker7702 Oct 16, 2025
5c160c2
Potential fix for code scanning alert no. 22: Incomplete regular expr…
Wbaker7702 Oct 16, 2025
80a6ae3
Potential fix for code scanning alert no. 30: CSRF protection weakene…
Wbaker7702 Oct 16, 2025
7e0d4d5
Potential fix for code scanning alert no. 34: Insecure Mass Assignmen…
Wbaker7702 Oct 16, 2025
9c2e346
Potential fix for code scanning alert no. 15: DOM text reinterpreted …
Wbaker7702 Oct 16, 2025
b70908d
Potential fix for code scanning alert no. 13: DOM text reinterpreted …
Wbaker7702 Oct 16, 2025
1b3b5cc
Potential fix for code scanning alert no. 12: DOM text reinterpreted …
Wbaker7702 Oct 16, 2025
0582dee
Potential fix for code scanning alert no. 37: DOM text reinterpreted …
Wbaker7702 Oct 16, 2025
0258910
Potential fix for code scanning alert no. 14: DOM text reinterpreted …
Wbaker7702 Oct 16, 2025
dad19ad
main
Wbaker7702 Oct 16, 2025
99c8807
Create jscrambler-code-integrity.yml (#128)
Wbaker7702 Oct 16, 2025
055dea6
Bump the npm_and_yarn group across 1 directory with 2 updates (#127)
dependabot[bot] Oct 16, 2025
8ecfe11
Potential fix for code scanning alert no. 38: DOM text reinterpreted …
Wbaker7702 Oct 16, 2025
153c895
main
Wbaker7702 Oct 16, 2025
c3e2e51
Merge branch 'main' into Wbaker7702/patch-31952
Wbaker7702 Oct 16, 2025
4f0431d
main
Oct 28, 2025
369d493
main
Wbaker7702 Oct 28, 2025
a08fe3c
main
Wbaker7702 Oct 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 0 additions & 1 deletion .browserslistrc

This file was deleted.

47 changes: 47 additions & 0 deletions .github/workflows/jscrambler-code-integrity.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

# This is a basic workflow to help you get started with Using Jscrambler Code Integrity Action.
# It automates the protection of your JavaScript Applications, so you can run it whenever a new version of your application is built.
# A Jscrambler account is required to use this Workflow.
#
# More info can be found here : https://docs.jscrambler.com/latest/code-integrity/documentation/github-ci-integration

name: Jscrambler Code Integrity

on:
push:
branches: [ "main" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "main" ]

permissions:
contents: read

jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci
- run: npm run build
- name: Jscrambler Code Integrity
id: jscrambler
# the complete list of inputs can be found here: https://github.com/marketplace/actions/jscrambler#inputs
uses: jscrambler/code-integrity-actions/protect@ab65962a2ecffcc362b75a997e24a181d0bde5fb
with:
application-id: ${{ secrets.JSCRAMBLER_APPLICATION_ID }} # This value should be created within your Jscrambler account
secret-key: ${{ secrets.JSCRAMBLER_SECRET_KEY }} # This value can be found in your Jscrambler account
access-key: ${{ secrets.JSCRAMBLER_ACCESS_KEY }} # This value can be found in your Jscrambler account
jscrambler-config-path: jscrambler.json # Download from your Jscrambler account
files-src: | # List of Files to be protected
dist/**/*
files-dest: .
3 changes: 3 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
name: RSpec & JS Tests
permissions:
contents: read
on: [push]
jobs:
tests:
Expand Down Expand Up @@ -67,6 +69,7 @@ jobs:
cp config/database.yml.ci config/database.yml
bin/rails db:drop
bin/rails db:setup
bin/rails db:migrate
bin/rails db:test:prepare
- name: Install Chromedriver
uses: nanasess/setup-chromedriver@v2
Expand Down
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,10 @@ yarn-*.log*
# the recommendation of the gem. We also don't ignore .env since that's where default values for
# configurations will go.
.env*.local

/public/packs
/public/packs-test
/node_modules
/yarn-error.log
yarn-debug.log*
.yarn-integrity
30 changes: 15 additions & 15 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# frozen_string_literal: true

source "http://rubygems.org"
source "https://rubygems.org"

gem "rails", "~> 7.1.0"
gem "rails", "~> 8.0.0"

# Force some gems to older versions to prevent error in prod:
# "You have already activated base64 0.1.1, but your Gemfile requires base64 0.2.0. Since base64 is a default gem, ..."
Expand All @@ -15,7 +15,7 @@ gem "daemons", "~> 1.2"
gem "descriptive_statistics", "~> 2.5", require: "descriptive_statistics/safe" # mean, median, etc.
gem "draper", "~> 4.0"
gem "eventmachine", "~> 1.2", platform: :ruby
gem "exception_notification", "~> 4.2"
gem "exception_notification", "~> 5.0", ">= 5.0.0"
gem "friendly_id", "~> 5.1"
gem "observer"
gem "phony", "~> 2.15"
Expand Down Expand Up @@ -46,9 +46,9 @@ gem "popper_js", "~> 1.14"
gem "rails-backbone", git: "https://github.com/codebrew/backbone-rails.git"
gem "react-rails", "~> 3.0"
gem "select2-rails", "~> 4.0"
gem "spinjs-rails", "~> 1.3.0" # Breaking changes in v1.4 (spin.js v2.0).
gem "shakapacker", "~> 8.0", ">= 8.0.0"
gem "spinjs-rails", "~> 1.4.0" # Breaking changes in v1.4 (spin.js v2.0).
gem "uglifier", "~> 4.2"
gem "shakapacker", "~> 7.0"

# Authz and Authn
gem "authlogic", "~> 6.1"
Expand All @@ -66,7 +66,7 @@ gem "rdiscount", "~> 2.1"
gem "reverse_markdown", "~> 2.0"

# Storage
gem "active_storage_validations", "~> 0.9.3"
gem "active_storage_validations", "~> 1.0.0"
gem "aws-sdk-s3", "~> 1.86", require: false
gem "azure-storage-blob", "~> 2.0", require: false
gem "image_processing", "~> 1.12"
Expand All @@ -81,7 +81,7 @@ gem "versionist", "~> 2.0"
gem "odata_server", github: "sassafrastech/odata_server", branch: "sassafras"

# Configuration
gem "dotenv-rails", "~> 2.7"
gem "dotenv-rails", "~> 3.0", ">= 3.0.0"

# Tree modelling
gem "ancestry", "~> 4.1"
Expand Down Expand Up @@ -115,12 +115,12 @@ gem "whenever", "~> 1.0", require: false
gem "i18n-country-translations", "~> 1.0"
gem "i18n-js", "~> 3.0"
gem "iso-639", "~> 0.3.5"
gem "rails-i18n", "~> 7.0"
gem "rails-i18n", "~> 8.0", ">= 8.0.0"

# Analytics
gem "scout_apm", "~> 5.0"
gem "sentry-ruby", "~> 5.0"
gem "sentry-rails", "~> 5.0" # rubocop:disable Bundler/OrderedGems
gem "sentry-rails", "~> 5.27", ">= 5.27.0" # rubocop:disable Bundler/OrderedGems

gem "sprockets"

Expand All @@ -138,7 +138,7 @@ group :development do
gem "rails-erd", "~> 1.6"

# N+1 detection. Config is in environments/development.rb
gem "bullet", "~> 7.1"
# gem "bullet", "~> 7.1" # Temporarily disabled - not compatible with Rails 8.0

# Great for debugging i18n paths (uncomment temporarily when needed).
# gem "i18n-debug", "~> 1.1"
Expand All @@ -154,17 +154,17 @@ group :development, :test do
# Test framework
gem "rails-controller-testing", "~> 1.0" # Deprecated: Use request or feature specs instead.
gem "rspec-collection_matchers", "~> 1.1"
gem "rspec-rails", "~> 6.0"
gem "rspec-rails", "~> 7.0", ">= 7.0.0"

# Mocking/stubbing/factories
gem "factory_bot_rails", "~> 4.11"
gem "factory_bot_rails", "~> 5.0", ">= 5.0.0"
gem "mocha", "~> 1.1"

# system specs
gem "capybara", "~> 3.30"
gem "launchy", "~> 2.5" # For auto-opening capybara html file
gem "puma", "~> 6.4"
gem "selenium-webdriver", "~> 4.17"
gem "selenium-webdriver", "~> 4.36", ">= 4.36.0"

# External request capture
gem "vcr", "~> 6.0"
Expand All @@ -173,12 +173,12 @@ group :development, :test do
# gem "i18n-debug", "~> 1.1" # Great for debugging i18n paths. Uncomment temporarily when neeeded.

# Misc
gem "annotate", "~> 3.1"
# gem "annotate", "~> 3.2" # Temporarily disabled - not compatible with Rails 8.0
gem "assert_difference", "~> 1.0" # Deprecated: Barely used, convert usage to something else.
gem "awesome_print", "~> 1.6"
gem "db-query-matchers", "~> 0.10"
gem "rubocop"
gem "rubocop-rails", "~> 2.8"
gem "rubocop-rails", "~> 2.33", ">= 2.33.4"
gem "rubocop-rake", "~> 0.6.0"
gem "rubocop-rspec", "~> 2.0"
gem "timecop", "0.9.6" # Timecop 0.9.8 breaks selenium (Selenium::WebDriver::Error::NoSuchWindowError).
Expand Down
Loading