Skip to content
Merged

v8.3.0 #6751

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
115 commits
Select commit Hold shift + click to select a range
29619a8
Add controller, policy and views for CarePlus exports and Export details
jf-x-dev Apr 8, 2026
0f94d22
Store whether careplus tab should appear in reporting app in cookie
jf-x-dev Apr 14, 2026
95b3983
Readd existing navigation cookie (to be reverted)
jf-x-dev Apr 20, 2026
0458e12
Rename `notify` throttle configuration
thomasleese Apr 24, 2026
b0547a3
Organise job schedule configuration
thomasleese Apr 24, 2026
9494c93
Remove `import_concurrency_per_server` feature flag
thomasleese Apr 26, 2026
4d9d600
Add Imports::JoinRecords service
misaka Mar 30, 2026
8c00ef7
Rename processed? to processed_at?
misaka Mar 30, 2026
98b4630
It's cohort-imports not cohort_imports
misaka Apr 17, 2026
fcb426e
Fix `NoMethodError` in `SearchImmsAPIJob`
alistair-white-horne-tng Apr 27, 2026
608f94c
Merge pull request #6698 from NHSDigital/remove-import-concurrency-pe…
thomasleese Apr 27, 2026
c814fb5
Merge pull request #6692 from NHSDigital/reorder-sidekiq-schedule
thomasleese Apr 27, 2026
3dfc186
Merge pull request #6691 from NHSDigital/rename-notify-rate-limit
thomasleese Apr 27, 2026
44c2c52
Wait for fanned-out search jobs in testing API
benilovj Apr 27, 2026
c88d3ea
Merge pull request #6711 from NHSDigital/fix-testing-api-for-imms-sea…
benilovj Apr 27, 2026
2a684b1
Bump ruby/setup-ruby from 1.303.0 to 1.305.0
dependabot[bot] Apr 28, 2026
ab5b350
Bump actions/setup-node from 6.3.0 to 6.4.0
dependabot[bot] Apr 28, 2026
a315b47
Bump aws-sdk-ec2 from 1.611.0 to 1.612.0
dependabot[bot] Apr 28, 2026
1e2d5ce
Add CIS2 info values to UI on login failure to help with debugging
mikejamesthompson Apr 21, 2026
3830d3a
Add activity codes to CIS2 debug output
mikejamesthompson Apr 28, 2026
f6c0388
Merge pull request #6712 from NHSDigital/dependabot/github_actions/ne…
thomasleese Apr 28, 2026
1178a7e
Merge pull request #6713 from NHSDigital/dependabot/github_actions/ne…
thomasleese Apr 28, 2026
9f64520
Merge pull request #6714 from NHSDigital/dependabot/bundler/next/aws-…
thomasleese Apr 28, 2026
0aeb2bb
Add indexes to improve join table performance
jhenderson Apr 28, 2026
737570f
Merge pull request #6645 from NHSDigital/add-reverse-indexes-to-impor…
jhenderson Apr 28, 2026
1574faf
Update ImmunisationImport status after post_commit!
chrislo Apr 27, 2026
5a5f0d1
Merge pull request #6701 from NHSDigital/update-immunisation-import-s…
chrislo Apr 28, 2026
5150094
Add `LocationPositionUpdater`
thomasleese Apr 23, 2026
b583eff
Add `LocationPositionUpdaterJob`
thomasleese Apr 23, 2026
83edff4
Add `EnqueueLocationPositionUpdaterJob`
thomasleese Apr 23, 2026
ea4c433
Fetch location positions on creation
thomasleese Apr 23, 2026
1da9396
Merge pull request #6628 from NHSDigital/fix-cohort-imports-url
misaka Apr 28, 2026
a9b57dc
Merge pull request #6637 from NHSDigital/rename-processed-to-processe…
misaka Apr 28, 2026
1feba03
Merge pull request #6695 from NHSDigital/add-imports-join-records
misaka Apr 28, 2026
495f154
Merge pull request #6680 from NHSDigital/fetch-location-lat-lng
thomasleese Apr 28, 2026
87977d3
Refactor `EnqueueAutomatedCareplusReportsJob`
thomasleese Apr 28, 2026
8db199c
Merge pull request #6715 from NHSDigital/refactor-enqueue-automatic-c…
thomasleese Apr 28, 2026
8e92a0b
Merge pull request #6665 from NHSDigital/mike/cis2-ui-debug
mikejamesthompson Apr 28, 2026
0d0727f
Only report `LocationPositionUpdater::NoResults` in production
thomasleese Apr 28, 2026
a6d3278
Fix issue matching locations to positions
thomasleese Apr 28, 2026
9fdeea5
Merge pull request #6716 from NHSDigital/location-no-results-production
thomasleese Apr 28, 2026
58083d6
Remove unused method in PatientStatusUpdater
floehopper Apr 28, 2026
39736a3
Merge pull request #6717 from NHSDigital/remove-unused-method-in-pati…
floehopper Apr 28, 2026
7942b43
Merge pull request #6705 from NHSDigital/alistair/imms-api-fix-nil-se…
alistair-white-horne-tng Apr 28, 2026
b374411
Fix Imms API location encoding issue with `generic_school`
alistair-white-horne-tng Apr 23, 2026
c1a726c
Don't require Action Mailer
thomasleese Apr 28, 2026
3c9a00d
Merge pull request #6719 from NHSDigital/remove-action-mailer-railtie
thomasleese Apr 28, 2026
0a8ec55
Merge pull request #6580 from NHSDigital/add-ui-for-careplus-exports
jf-x-dev Apr 29, 2026
05d1bdd
Add normalisation on address columns
thomasleese Apr 29, 2026
679c8eb
Merge pull request #6721 from NHSDigital/normalise-address
thomasleese Apr 29, 2026
eb23ef4
Remove `job_id`
thomasleese Apr 29, 2026
0632da6
Rename throttling concerns
thomasleese Apr 29, 2026
37588a4
Add `ImmunisationsAPIThrottlingConcern`
thomasleese Apr 29, 2026
cb50211
Refactor job concerns to not contain Active Job
thomasleese Apr 28, 2026
6efa179
Merge pull request #6720 from NHSDigital/refactor-job-concerns
thomasleese Apr 29, 2026
d7e2184
Moving logic to validations
misaka Apr 8, 2026
185d044
Add specs for PatientImport#check_rows_are_unique
chrisroos Apr 20, 2026
796eaf5
Add specs for aggregating row-level errors
chrisroos Apr 22, 2026
3859611
Extract validators for import row uniqueness
chrisroos Apr 20, 2026
54cb0ca
Avoid validating twice in *ImportsController
chrisroos Apr 21, 2026
e4498c1
Only perform some validations on create in CSVImportable
chrisroos Apr 21, 2026
c7dfc12
Add parse_rows context to validations
misaka Apr 24, 2026
5f017e0
Inline rows_are_valid validation
misaka Apr 24, 2026
603de90
Adding private section to CSVImportable
misaka Apr 24, 2026
5b1cf61
Make #csv method a one-liner
misaka Apr 27, 2026
292bb76
Display helpful message if gias import file doesn't exist
chrisroos Apr 27, 2026
4cd3ffa
Drop the outcome step from the already had flow
stevehook Apr 16, 2026
f7fc9d7
Merge pull request #6710 from NHSDigital/add-error-message-to-gias-im…
chrisroos Apr 29, 2026
a76b4cc
Merge pull request #6708 from NHSDigital/refactor-import-validations
misaka Apr 29, 2026
494a5b4
Merge pull request #6613 from NHSDigital/remove-unecessary-outcome-st…
stevehook Apr 29, 2026
8e6e3b4
Merge pull request #6704 from NHSDigital/alistair/fix-fhir-generic-sc…
alistair-white-horne-tng Apr 29, 2026
ffdcfe5
Add `PatientDeleter` service class
alistair-white-horne-tng Apr 20, 2026
dfc1446
Refactor `reset_national_reporting` to use `PatientDeleter`
alistair-white-horne-tng Apr 20, 2026
e3ee8f4
Refactor test reset endpoint to use `PatientDeleter`
alistair-white-horne-tng Apr 20, 2026
4b5f5f5
Remove extra logging from `destroy_locations`
alistair-white-horne-tng Apr 27, 2026
fe9c641
Default `Team` factory to create NR teams with a cutoff date
alistair-white-horne-tng Apr 22, 2026
8e79a69
Explicitly handle `ImportantNotice`s in `PatientMerger`
alistair-white-horne-tng Apr 27, 2026
65bdc4f
Don't reset NR teams with no cutoff date
alistair-white-horne-tng Apr 22, 2026
3db02d3
Remove destroy hooks on `Patient`
alistair-white-horne-tng Apr 27, 2026
1ed7c05
Only reset NR objects created before a team's cutoff date
alistair-white-horne-tng Apr 22, 2026
89ba017
Set `academic_year` in patient factory
thomasleese Apr 29, 2026
08bf14c
Fetch `team_location` as part of consent notifications
thomasleese Apr 29, 2026
c4e5e2c
Ensure consent requests are sent each academic year
thomasleese Apr 29, 2026
979ce0a
Ensure consent reminders are sent each academic year
thomasleese Apr 29, 2026
9911f10
Fix for parent_relationships_controller.rb and patient_programme_stat…
CodeCorvin Apr 15, 2026
6d8022c
Merge pull request #6596 from NHSDigital/patient-status-update-when-a…
CodeCorvin Apr 29, 2026
8b94f32
Merge pull request #6723 from NHSDigital/fix-missing-consent-notifica…
thomasleese Apr 29, 2026
1466715
Merge pull request #6664 from NHSDigital/alistair/patient-deleter
alistair-white-horne-tng Apr 29, 2026
6075796
Merge pull request #6666 from NHSDigital/alistair/national-reporting-…
alistair-white-horne-tng Apr 29, 2026
5b6d74c
Store `hint[:exception]` in to a variable
thomasleese Apr 29, 2026
d909e92
Merge pull request #6724 from NHSDigital/refactor-sentry-config
thomasleese Apr 29, 2026
3b073a0
Add missing space in safe to vaccinate message for flu
mikejamesthompson Apr 29, 2026
ce6fcdd
Remove `--force` flag on national reporting reset CLI tool
alistair-white-horne-tng Apr 29, 2026
72123cd
Merge pull request #6729 from NHSDigital/mike/add-missing-space-in-co…
mikejamesthompson Apr 29, 2026
8dc6491
Merge pull request #6730 from NHSDigital/alistair/national-reporting-…
alistair-white-horne-tng Apr 29, 2026
cab3d06
Bump aws-sdk-s3 from 1.219.0 to 1.220.0
dependabot[bot] Apr 29, 2026
2959e42
Bump aws-actions/amazon-ecr-login from 2.1.3 to 2.1.4
dependabot[bot] Apr 29, 2026
2224113
Bump aws-sdk-ec2 from 1.612.0 to 1.613.0
dependabot[bot] Apr 29, 2026
a8be09e
Destroy `SchoolMoves` when destroying team locations
thomasleese Apr 29, 2026
b3a4c15
Merge pull request #6731 from NHSDigital/dependabot/bundler/next/aws-…
thomasleese Apr 30, 2026
0ba9ea6
Merge pull request #6732 from NHSDigital/dependabot/github_actions/ne…
thomasleese Apr 30, 2026
d035392
Merge pull request #6733 from NHSDigital/dependabot/bundler/next/aws-…
thomasleese Apr 30, 2026
38b37e6
Merge pull request #6727 from NHSDigital/delete-school-moves-location
thomasleese Apr 30, 2026
b5b2330
Rename `have_delivered` matchers
thomasleese Apr 30, 2026
eb94913
Use `delivery` matchers
thomasleese Apr 30, 2026
60496a1
Convert `/api/testing/refresh-reporting` specs
thomasleese Apr 30, 2026
3d8ab8a
Convert `/api/testing/teams` specs
thomasleese Apr 30, 2026
a8026f2
Merge pull request #6734 from NHSDigital/refactor-notify-matchers
thomasleese Apr 30, 2026
e00291c
Merge pull request #6735 from NHSDigital/testing-api-request-specs
thomasleese Apr 30, 2026
1e331fe
Refactor `ApplicationJob`
thomasleese Apr 28, 2026
c1a0ecf
Add logging to `PatientDeleter`
alistair-white-horne-tng Apr 29, 2026
bb71dc3
Add indexes to more patient join tables
alistair-white-horne-tng Apr 29, 2026
dbdc3b0
Use batching in `PatientDeleter` and reset CLI
alistair-white-horne-tng Apr 29, 2026
acd5f2f
Merge pull request #6736 from NHSDigital/refactor-application-job
thomasleese Apr 30, 2026
7de67c7
Merge pull request #6737 from NHSDigital/alistair/patient-deleter-add…
alistair-white-horne-tng Apr 30, 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
6 changes: 3 additions & 3 deletions .github/workflows/build-and-push-database-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
with:
ref: ${{ inputs.github_ref || github.ref_name == 'next' && 'next' || github.ref_name }}
repository: nhsdigital/manage-vaccinations-in-schools
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version-file: .tool-versions
cache: yarn
Expand All @@ -57,7 +57,7 @@ jobs:
echo "Waiting for postgres..."
sleep 2
done'
- uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
- uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true
- name: Set up database for testing
Expand All @@ -72,7 +72,7 @@ jobs:
aws-region: eu-west-2
- name: Login to ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@376925c9d111252e87ae59691e5a442dd100ef6a # v2.1.3
uses: aws-actions/amazon-ecr-login@19d944daaa35f0fa1d3f7f8af1d3f2e5de25c5b7 # v2.1.4
# yamllint disable rule:line-length
- name: Get image tag
id: get-image-tag
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-and-push-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ jobs:
aws-region: eu-west-2
- name: Login to ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@376925c9d111252e87ae59691e5a442dd100ef6a # v2.1.3
uses: aws-actions/amazon-ecr-login@19d944daaa35f0fa1d3f7f8af1d3f2e5de25c5b7 # v2.1.4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
# yamllint disable rule:line-length
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/deploy-documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
- uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/end-to-end-tests-aws.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ jobs:
aws-region: eu-west-2
- name: Login to ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@376925c9d111252e87ae59691e5a442dd100ef6a # v2.1.3
uses: aws-actions/amazon-ecr-login@19d944daaa35f0fa1d3f7f8af1d3f2e5de25c5b7 # v2.1.4
- name: Build and push mavis/development docker image
# yamllint disable rule:line-length
run: |
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/end-to-end-tests-local.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ jobs:
with:
ref: ${{ github.base_ref }}
- name: Setup Node.js on base branch
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version-file: .tool-versions
cache: yarn
- name: Setup Ruby on base branch
uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true
- name: Install JS dependencies on base branch
Expand All @@ -43,12 +43,12 @@ jobs:
with:
ref: ${{ github.head_ref }}
- name: Setup Node.js on head branch
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version-file: .tool-versions
cache: yarn
- name: Setup Ruby on head branch
uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true
- name: Install JS dependencies on head branch
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ jobs:

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
- uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
cache: yarn
node-version-file: .tool-versions
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@ jobs:
DATABASE_PASSWORD: postgres
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version-file: .tool-versions
cache: yarn
- uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
- uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true
- name: Precompile assets
Expand Down Expand Up @@ -64,11 +64,11 @@ jobs:
postgis://postgres:postgres@localhost:5432/manage_vaccinations_development
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version-file: .tool-versions
cache: yarn
- uses: ruby/setup-ruby@60ecfba8750476ff216b59eee3b88218bb5111cc # v1.303.0
- uses: ruby/setup-ruby@0cb964fd540e0a24c900370abf38a33466142735 # v1.305.0
with:
bundler-cache: true
- name: Run seeds
Expand All @@ -79,7 +79,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version-file: .tool-versions
cache: yarn
Expand Down
6 changes: 0 additions & 6 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,12 +66,6 @@ RSpec/ContextWording:
RSpec/ImplicitExpect:
EnforcedStyle: should

RSpec/VerifiedDoubles:
Exclude:
- spec/controllers/concerns/consent_form_mailer_concern_spec.rb
- spec/controllers/concerns/triage_mailer_concern_spec.rb
- spec/controllers/concerns/vaccination_mailer_concern_spec.rb

Style/FrozenStringLiteralComment:
Enabled: true
EnforcedStyle: always_true
Expand Down
8 changes: 4 additions & 4 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ GEM
protocol-websocket (~> 0.17)
attr_required (1.0.2)
aws-eventstream (1.4.0)
aws-partitions (1.1240.0)
aws-partitions (1.1242.0)
aws-sdk-accessanalyzer (1.88.0)
aws-sdk-core (~> 3, >= 3.244.0)
aws-sigv4 (~> 1.5)
Expand All @@ -193,7 +193,7 @@ GEM
bigdecimal
jmespath (~> 1, >= 1.6.1)
logger
aws-sdk-ec2 (1.611.0)
aws-sdk-ec2 (1.613.0)
aws-sdk-core (~> 3, >= 3.244.0)
aws-sigv4 (~> 1.5)
aws-sdk-ecr (1.125.0)
Expand All @@ -202,13 +202,13 @@ GEM
aws-sdk-iam (1.142.0)
aws-sdk-core (~> 3, >= 3.244.0)
aws-sigv4 (~> 1.5)
aws-sdk-kms (1.123.0)
aws-sdk-kms (1.124.0)
aws-sdk-core (~> 3, >= 3.244.0)
aws-sigv4 (~> 1.5)
aws-sdk-rds (1.311.0)
aws-sdk-core (~> 3, >= 3.244.0)
aws-sigv4 (~> 1.5)
aws-sdk-s3 (1.219.0)
aws-sdk-s3 (1.220.0)
aws-sdk-core (~> 3, >= 3.244.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.5)
Expand Down
2 changes: 1 addition & 1 deletion app/components/app_import_summary_component.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
import.parent_relationships.present? %>
<% if import.removing_parent_relationships? %>
<p class="nhsuk-u-secondary-text-colour">Parent-child relationships are currently being removed from this import</p>
<% elsif import.processed? && import.parent_relationships.any? %>
<% elsif import.processed_at? && import.parent_relationships.any? %>
<p>
<%= link_to "Remove all parent-child relationships from import", imports_bulk_remove_parents_path(import.class.name.underscore, import.id) %>
</p>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# frozen_string_literal: true

class API::Testing::ReportingRefreshController < API::Testing::BaseController
class API::Testing::RefreshReportingController < API::Testing::BaseController
def create
if params[:wait].present?
ReportingAPI::RefreshJob.perform_now
Expand Down
Loading
Loading