Skip to content

Commit 5625bcb

Browse files
committed
Merge branch 'main' into Issue/3985
2 parents 415fb2d + e98e176 commit 5625bcb

35 files changed

Lines changed: 724 additions & 384 deletions

.github/dependabot.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,17 @@ updates:
9696
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
9797
- dependency-name: "*"
9898
update-types: ["version-update:semver-major"]
99+
# Also automatically update all our GitHub actions on the main branch
100+
- package-ecosystem: "github-actions"
101+
directory: "/"
102+
# Monthly dependency updates
103+
schedule:
104+
interval: "monthly"
105+
time: "05:00"
106+
# Allow updates to be delayed for a configurable number of days to mitigate
107+
# some classes of supply chain attacks
108+
cooldown:
109+
default-days: 7
99110
#####################
100111
## dspace-9_x branch
101112
#####################
@@ -187,6 +198,18 @@ updates:
187198
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
188199
- dependency-name: "*"
189200
update-types: ["version-update:semver-major"]
201+
# Also automatically update all our GitHub actions on the dspace-9_x branch
202+
- package-ecosystem: "github-actions"
203+
directory: "/"
204+
target-branch: dspace-9_x
205+
# Monthly dependency updates
206+
schedule:
207+
interval: "monthly"
208+
time: "05:00"
209+
# Allow updates to be delayed for a configurable number of days to mitigate
210+
# some classes of supply chain attacks
211+
cooldown:
212+
default-days: 7
190213
#####################
191214
## dspace-8_x branch
192215
#####################
@@ -277,6 +300,18 @@ updates:
277300
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
278301
- dependency-name: "*"
279302
update-types: ["version-update:semver-major"]
303+
# Also automatically update all our GitHub actions on the dspace-8_x branch
304+
- package-ecosystem: "github-actions"
305+
directory: "/"
306+
target-branch: dspace-8_x
307+
# Monthly dependency updates
308+
schedule:
309+
interval: "monthly"
310+
time: "05:00"
311+
# Allow updates to be delayed for a configurable number of days to mitigate
312+
# some classes of supply chain attacks
313+
cooldown:
314+
default-days: 7
280315
#####################
281316
## dspace-7_x branch
282317
#####################
@@ -362,3 +397,15 @@ updates:
362397
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
363398
- dependency-name: "*"
364399
update-types: ["version-update:semver-major"]
400+
# Also automatically update all our GitHub actions on the dspace-7_x branch
401+
- package-ecosystem: "github-actions"
402+
directory: "/"
403+
target-branch: dspace-7_x
404+
# Monthly dependency updates
405+
schedule:
406+
interval: "monthly"
407+
time: "05:00"
408+
# Allow updates to be delayed for a configurable number of days to mitigate
409+
# some classes of supply chain attacks
410+
cooldown:
411+
default-days: 7

.github/workflows/build.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,11 @@ jobs:
5151
steps:
5252
# https://github.com/actions/checkout
5353
- name: Checkout codebase
54-
uses: actions/checkout@v4
54+
uses: actions/checkout@v6
5555

5656
# https://github.com/actions/setup-node
5757
- name: Install Node.js ${{ matrix.node-version }}
58-
uses: actions/setup-node@v4
58+
uses: actions/setup-node@v6
5959
with:
6060
node-version: ${{ matrix.node-version }}
6161

@@ -80,7 +80,7 @@ jobs:
8080
id: npm-cache-dir
8181
run: echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
8282
- name: Cache NPM dependencies
83-
uses: actions/cache@v4
83+
uses: actions/cache@v5
8484
with:
8585
# Cache entire NPM cache directory (see previous step)
8686
path: ${{ steps.npm-cache-dir.outputs.dir }}
@@ -113,7 +113,7 @@ jobs:
113113
# so that it can be shared with the 'codecov' job (see below)
114114
# NOTE: Angular CLI only supports code coverage for specs. See https://github.com/angular/angular-cli/issues/6286
115115
- name: Upload code coverage report to Artifact
116-
uses: actions/upload-artifact@v4
116+
uses: actions/upload-artifact@v7
117117
if: matrix.node-version == '20.x'
118118
with:
119119
name: coverage-report-${{ matrix.node-version }}
@@ -155,7 +155,7 @@ jobs:
155155
# Cypress always creates a video of all e2e tests (whether they succeeded or failed)
156156
# Save those in an Artifact
157157
- name: Upload e2e test videos to Artifacts
158-
uses: actions/upload-artifact@v4
158+
uses: actions/upload-artifact@v7
159159
if: always()
160160
with:
161161
name: e2e-test-videos-${{ matrix.node-version }}
@@ -164,7 +164,7 @@ jobs:
164164
# If e2e tests fail, Cypress creates a screenshot of what happened
165165
# Save those in an Artifact
166166
- name: Upload e2e test failure screenshots to Artifacts
167-
uses: actions/upload-artifact@v4
167+
uses: actions/upload-artifact@v7
168168
if: failure()
169169
with:
170170
name: e2e-test-screenshots-${{ matrix.node-version }}
@@ -316,19 +316,19 @@ jobs:
316316
runs-on: ubuntu-latest
317317
steps:
318318
- name: Checkout
319-
uses: actions/checkout@v4
319+
uses: actions/checkout@v6
320320

321321
# Download artifacts from previous 'tests' job
322322
- name: Download coverage artifacts
323-
uses: actions/download-artifact@v4
323+
uses: actions/download-artifact@v8
324324

325325
# Now attempt upload to Codecov using its action.
326326
# NOTE: We use a retry action to retry the Codecov upload if it fails the first time.
327327
#
328328
# Retry action: https://github.com/marketplace/actions/retry-action
329329
# Codecov action: https://github.com/codecov/codecov-action
330330
- name: Upload coverage to Codecov.io
331-
uses: Wandalen/wretry.action@v1.3.0
331+
uses: Wandalen/wretry.action@v3.8.0
332332
with:
333333
action: codecov/codecov-action@v4
334334
# Ensure codecov-action throws an error when it fails to upload

.github/workflows/codescan.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,19 +35,19 @@ jobs:
3535
steps:
3636
# https://github.com/actions/checkout
3737
- name: Checkout repository
38-
uses: actions/checkout@v4
38+
uses: actions/checkout@v6
3939

4040
# Initializes the CodeQL tools for scanning.
4141
# https://github.com/github/codeql-action
4242
- name: Initialize CodeQL
43-
uses: github/codeql-action/init@v3
43+
uses: github/codeql-action/init@v4
4444
with:
4545
languages: javascript
4646

4747
# Autobuild attempts to build any compiled languages
4848
- name: Autobuild
49-
uses: github/codeql-action/autobuild@v3
49+
uses: github/codeql-action/autobuild@v4
5050

5151
# Perform GitHub Code Scanning.
5252
- name: Perform CodeQL Analysis
53-
uses: github/codeql-action/analyze@v3
53+
uses: github/codeql-action/analyze@v4

.github/workflows/docker.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,10 @@ jobs:
7777
steps:
7878
# Checkout our codebase (to get access to Docker Compose scripts)
7979
- name: Checkout codebase
80-
uses: actions/checkout@v4
80+
uses: actions/checkout@v6
8181
# Download Docker image artifacts (which were just built by reusable-docker-build.yml)
8282
- name: Download Docker image artifacts
83-
uses: actions/download-artifact@v4
83+
uses: actions/download-artifact@v8
8484
with:
8585
# Download all amd64 Docker images (TAR files) into the /tmp/docker directory
8686
pattern: docker-image-*-linux-amd64

.github/workflows/issue_opened.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
# Only add to project board if issue is flagged as "needs triage" or has no labels
1717
# NOTE: By default we flag new issues as "needs triage" in our issue template
1818
if: (contains(github.event.issue.labels.*.name, 'needs triage') || join(github.event.issue.labels.*.name) == '')
19-
uses: actions/add-to-project@v1.0.0
19+
uses: actions/add-to-project@v1.0.2
2020
# Note, the authentication token below is an ORG level Secret.
2121
# It must be created/recreated manually via a personal access token with admin:org, project, public_repo permissions
2222
# See: https://docs.github.com/en/actions/configuring-and-managing-workflows/authenticating-with-the-github_token#permissions-for-the-github_token

.github/workflows/port_merged_pull_request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
if: github.event.pull_request.merged
2424
steps:
2525
# Checkout code
26-
- uses: actions/checkout@v4
26+
- uses: actions/checkout@v6
2727
# Port PR to other branch (ONLY if labeled with "port to")
2828
# See https://github.com/korthout/backport-action
2929
- name: Create backport pull requests

.github/workflows/pull_request_opened.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,4 @@ jobs:
2121
# Assign the PR to whomever created it. This is useful for visualizing assignments on project boards
2222
# See https://github.com/toshimaru/auto-author-assign
2323
- name: Assign PR to creator
24-
uses: toshimaru/auto-author-assign@v2.1.0
24+
uses: toshimaru/auto-author-assign@v3.0.1

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,7 @@ If you run into odd test errors, see the Angular guide to debugging tests: https
285285

286286
E2E tests (aka integration tests) use [Cypress.io](https://www.cypress.io/). Configuration for cypress can be found in the `cypress.json` file in the root directory.
287287

288-
The test files can be found in the `./cypress/integration/` folder.
288+
The test files can be found in the `./cypress/e2e/` folder.
289289

290290
Before you can run e2e tests, two things are REQUIRED:
291291
1. You MUST be running the DSpace backend (i.e. REST API) locally. The e2e tests will *NOT* succeed if run against our demo/sandbox REST API (https://demo.dspace.org/server/ or https://sandbox.dspace.org/server/), as those sites may have content added/removed at any time.
@@ -313,7 +313,7 @@ The `ng e2e` command will start Cypress and allow you to select the browser you
313313
314314
#### Writing E2E Tests
315315
316-
All E2E tests must be created under the `./cypress/integration/` folder, and must end in `.spec.ts`. Subfolders are allowed.
316+
All E2E tests must be created under the `./cypress/e2e/` folder, and must end in `.spec.ts`. Subfolders are allowed.
317317
318318
* The easiest way to start creating new tests is by running `ng e2e`. This builds the app and brings up Cypress.
319319
* From here, if you are editing an existing test file, you can either open it in your IDE or run it first to see what it already does.
@@ -392,9 +392,9 @@ dspace-angular
392392
├── config *
393393
│ └── config.yml * Default app config
394394
├── cypress * Folder for Cypress (https://cypress.io/) / e2e tests
395-
│ ├── downloads *
396-
│ ├── fixtures * Folder for e2e/integration test files
397-
│ ├── integration * Folder for any fixtures needed by e2e tests
395+
│ ├── downloads * (Optional) Folder for files downloaded during e2e tests
396+
│ ├── e2e * Folder for e2e/integration test files
397+
│ ├── fixtures * Folder for reusable static test data (JSON, images, etc.)
398398
│ ├── plugins * Folder for Cypress plugins (if any)
399399
│ ├── support * Folder for global e2e test actions/commands (run for all tests)
400400
│ └── tsconfig.json * TypeScript configuration file for e2e tests

lint/src/rules/html/no-disabled-attribute-on-button.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ export const info = {
3838
} as DSpaceESLintRuleInfo;
3939

4040
export const rule = ESLintUtils.RuleCreator.withoutDocs({
41-
...info,
41+
meta: info.meta,
42+
defaultOptions: info.defaultOptions,
4243
create(context: TSESLint.RuleContext<Message, unknown[]>) {
4344
const parserServices = getSourceCode(context).parserServices as TemplateParserServices;
4445

lint/src/rules/html/themed-component-usages.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,8 @@ The only exception to this rule are unit tests, where we may want to use the bas
5353
} as DSpaceESLintRuleInfo;
5454

5555
export const rule = ESLintUtils.RuleCreator.withoutDocs({
56-
...info,
56+
meta: info.meta,
57+
defaultOptions: info.defaultOptions,
5758
create(context: RuleContext<Message, unknown[]>): RuleListener {
5859
if (getFilename(context).includes('.spec.ts')) {
5960
// skip inline templates in unit tests

0 commit comments

Comments
 (0)