Skip to content

Commit 96c661c

Browse files
author
Andrea Barbasso
committed
Merge remote-tracking branch 'lyrasis/main' into task/main/CST-15595
# Conflicts: # src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.html # src/app/shared/form/builder/ds-dynamic-form-ui/models/array-group/dynamic-form-array.component.ts # src/assets/i18n/en.json5
2 parents 4fb7f89 + c7ae1d6 commit 96c661c

File tree

329 files changed

+37165
-21285
lines changed

Some content is hidden

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

329 files changed

+37165
-21285
lines changed

.github/dependabot.yml

Lines changed: 298 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,298 @@
1+
#-------------------
2+
# DSpace's dependabot rules. Enables npm updates for all dependencies on a weekly basis
3+
# for main and any maintenance branches. Security updates only apply to main.
4+
#-------------------
5+
version: 2
6+
updates:
7+
###############
8+
## Main branch
9+
###############
10+
# NOTE: At this time, "security-updates" rules only apply if "target-branch" is unspecified
11+
# So, only this first section can include "applies-to: security-updates"
12+
- package-ecosystem: "npm"
13+
directory: "/"
14+
schedule:
15+
interval: "weekly"
16+
# Allow up to 10 open PRs for dependencies
17+
open-pull-requests-limit: 10
18+
# Group together Angular package upgrades
19+
groups:
20+
# Group together all minor/patch version updates for Angular in a single PR
21+
angular:
22+
applies-to: version-updates
23+
patterns:
24+
- "@angular*"
25+
update-types:
26+
- "minor"
27+
- "patch"
28+
# Group together all security updates for Angular. Only accept minor/patch types.
29+
angular-security:
30+
applies-to: security-updates
31+
patterns:
32+
- "@angular*"
33+
update-types:
34+
- "minor"
35+
- "patch"
36+
# Group together all minor/patch version updates for NgRx in a single PR
37+
ngrx:
38+
applies-to: version-updates
39+
patterns:
40+
- "@ngrx*"
41+
update-types:
42+
- "minor"
43+
- "patch"
44+
# Group together all security updates for NgRx. Only accept minor/patch types.
45+
ngrx-security:
46+
applies-to: security-updates
47+
patterns:
48+
- "@ngrx*"
49+
update-types:
50+
- "minor"
51+
- "patch"
52+
# Group together all patch version updates for eslint in a single PR
53+
eslint:
54+
applies-to: version-updates
55+
patterns:
56+
- "@typescript-eslint*"
57+
- "eslint*"
58+
update-types:
59+
- "minor"
60+
- "patch"
61+
# Group together all security updates for eslint.
62+
eslint-security:
63+
applies-to: security-updates
64+
patterns:
65+
- "@typescript-eslint*"
66+
- "eslint*"
67+
update-types:
68+
- "minor"
69+
- "patch"
70+
# Group together any testing related version updates
71+
testing:
72+
applies-to: version-updates
73+
patterns:
74+
- "@cypress*"
75+
- "axe-*"
76+
- "cypress*"
77+
- "jasmine*"
78+
- "karma*"
79+
- "ng-mocks"
80+
update-types:
81+
- "minor"
82+
- "patch"
83+
# Group together any testing related security updates
84+
testing-security:
85+
applies-to: security-updates
86+
patterns:
87+
- "@cypress*"
88+
- "axe-*"
89+
- "cypress*"
90+
- "jasmine*"
91+
- "karma*"
92+
- "ng-mocks"
93+
update-types:
94+
- "minor"
95+
- "patch"
96+
# Group together any postcss related version updates
97+
postcss:
98+
applies-to: version-updates
99+
patterns:
100+
- "postcss*"
101+
update-types:
102+
- "minor"
103+
- "patch"
104+
# Group together any postcss related security updates
105+
postcss-security:
106+
applies-to: security-updates
107+
patterns:
108+
- "postcss*"
109+
update-types:
110+
- "minor"
111+
- "patch"
112+
# Group together any sass related version updates
113+
sass:
114+
applies-to: version-updates
115+
patterns:
116+
- "sass*"
117+
update-types:
118+
- "minor"
119+
- "patch"
120+
# Group together any sass related security updates
121+
sass-security:
122+
applies-to: security-updates
123+
patterns:
124+
- "sass*"
125+
update-types:
126+
- "minor"
127+
- "patch"
128+
# Group together any webpack related version updates
129+
webpack:
130+
applies-to: version-updates
131+
patterns:
132+
- "webpack*"
133+
update-types:
134+
- "minor"
135+
- "patch"
136+
# Group together any webpack related seurity updates
137+
webpack-security:
138+
applies-to: security-updates
139+
patterns:
140+
- "webpack*"
141+
update-types:
142+
- "minor"
143+
- "patch"
144+
ignore:
145+
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
146+
- dependency-name: "*"
147+
update-types: ["version-update:semver-major"]
148+
#####################
149+
## dspace-8_x branch
150+
#####################
151+
- package-ecosystem: "npm"
152+
directory: "/"
153+
target-branch: dspace-8_x
154+
schedule:
155+
interval: "weekly"
156+
# Allow up to 10 open PRs for dependencies
157+
open-pull-requests-limit: 10
158+
# Group together Angular package upgrades
159+
groups:
160+
# Group together all patch version updates for Angular in a single PR
161+
angular:
162+
applies-to: version-updates
163+
patterns:
164+
- "@angular*"
165+
update-types:
166+
- "minor"
167+
- "patch"
168+
# Group together all minor/patch version updates for NgRx in a single PR
169+
ngrx:
170+
applies-to: version-updates
171+
patterns:
172+
- "@ngrx*"
173+
update-types:
174+
- "minor"
175+
- "patch"
176+
# Group together all patch version updates for eslint in a single PR
177+
eslint:
178+
applies-to: version-updates
179+
patterns:
180+
- "@typescript-eslint*"
181+
- "eslint*"
182+
update-types:
183+
- "minor"
184+
- "patch"
185+
# Group together any testing related version updates
186+
testing:
187+
applies-to: version-updates
188+
patterns:
189+
- "@cypress*"
190+
- "axe-*"
191+
- "cypress*"
192+
- "jasmine*"
193+
- "karma*"
194+
- "ng-mocks"
195+
update-types:
196+
- "minor"
197+
- "patch"
198+
# Group together any postcss related version updates
199+
postcss:
200+
applies-to: version-updates
201+
patterns:
202+
- "postcss*"
203+
update-types:
204+
- "minor"
205+
- "patch"
206+
# Group together any sass related version updates
207+
sass:
208+
applies-to: version-updates
209+
patterns:
210+
- "sass*"
211+
update-types:
212+
- "minor"
213+
- "patch"
214+
# Group together any webpack related version updates
215+
webpack:
216+
applies-to: version-updates
217+
patterns:
218+
- "webpack*"
219+
update-types:
220+
- "minor"
221+
- "patch"
222+
ignore:
223+
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
224+
- dependency-name: "*"
225+
update-types: ["version-update:semver-major"]
226+
#####################
227+
## dspace-7_x branch
228+
#####################
229+
- package-ecosystem: "npm"
230+
directory: "/"
231+
target-branch: dspace-7_x
232+
schedule:
233+
interval: "weekly"
234+
# Allow up to 10 open PRs for dependencies
235+
open-pull-requests-limit: 10
236+
# Group together Angular package upgrades
237+
groups:
238+
# Group together all minor/patch version updates for Angular in a single PR
239+
angular:
240+
applies-to: version-updates
241+
patterns:
242+
- "@angular*"
243+
update-types:
244+
- "minor"
245+
- "patch"
246+
# Group together all minor/patch version updates for NgRx in a single PR
247+
ngrx:
248+
applies-to: version-updates
249+
patterns:
250+
- "@ngrx*"
251+
update-types:
252+
- "minor"
253+
- "patch"
254+
# Group together all patch version updates for eslint in a single PR
255+
eslint:
256+
applies-to: version-updates
257+
patterns:
258+
- "@typescript-eslint*"
259+
- "eslint*"
260+
update-types:
261+
- "minor"
262+
- "patch"
263+
# Group together any testing related version updates
264+
testing:
265+
applies-to: version-updates
266+
patterns:
267+
- "@cypress*"
268+
- "axe-*"
269+
- "cypress*"
270+
- "jasmine*"
271+
- "karma*"
272+
- "ng-mocks"
273+
update-types:
274+
- "minor"
275+
- "patch"
276+
# Group together any postcss related version updates
277+
postcss:
278+
applies-to: version-updates
279+
patterns:
280+
- "postcss*"
281+
update-types:
282+
- "minor"
283+
- "patch"
284+
# Group together any sass related version updates
285+
sass:
286+
applies-to: version-updates
287+
patterns:
288+
- "sass*"
289+
update-types:
290+
- "minor"
291+
- "patch"
292+
ignore:
293+
# 7.x Cannot update Webpack past v5.76.1 as later versions not supported by Angular 15
294+
# See also https://github.com/DSpace/dspace-angular/pull/3283#issuecomment-2372488489
295+
- dependency-name: "webpack"
296+
# Ignore all major version updates for all dependencies. We'll only automate minor/patch updates.
297+
- dependency-name: "*"
298+
update-types: ["version-update:semver-major"]

.github/workflows/build.yml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ name: Build
77
on: [push, pull_request]
88

99
permissions:
10-
contents: read # to fetch code (actions/checkout)
10+
contents: read # to fetch code (actions/checkout)
11+
packages: read # to fetch private images from GitHub Container Registry (GHCR)
1112

1213
jobs:
1314
tests:
@@ -35,6 +36,9 @@ jobs:
3536
NODE_OPTIONS: '--max-old-space-size=4096'
3637
# Project name to use when running "docker compose" prior to e2e tests
3738
COMPOSE_PROJECT_NAME: 'ci'
39+
# Docker Registry to use for Docker compose scripts below.
40+
# We use GitHub's Container Registry to avoid aggressive rate limits at DockerHub.
41+
DOCKER_REGISTRY: ghcr.io
3842
strategy:
3943
# Create a matrix of Node versions to test against (in parallel)
4044
matrix:
@@ -114,6 +118,14 @@ jobs:
114118
path: 'coverage/dspace-angular/lcov.info'
115119
retention-days: 14
116120

121+
# Login to our Docker registry, so that we can access private Docker images using "docker compose" below.
122+
- name: Login to ${{ env.DOCKER_REGISTRY }}
123+
uses: docker/login-action@v3
124+
with:
125+
registry: ${{ env.DOCKER_REGISTRY }}
126+
username: ${{ github.repository_owner }}
127+
password: ${{ secrets.GITHUB_TOKEN }}
128+
117129
# Using "docker compose" start backend using CI configuration
118130
# and load assetstore from a cached copy
119131
- name: Start DSpace REST Backend via Docker (for e2e tests)

.github/workflows/docker.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ on:
1616
pull_request:
1717

1818
permissions:
19-
contents: read # to fetch code (actions/checkout)
19+
contents: read # to fetch code (actions/checkout)
20+
packages: write # to write images to GitHub Container Registry (GHCR)
2021

2122
jobs:
2223
#############################################################

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# This image will be published as dspace/dspace-angular
22
# See https://github.com/DSpace/dspace-angular/tree/main/docker for usage details
33

4-
FROM node:18-alpine
4+
FROM docker.io/node:18-alpine
55

66
# Ensure Python and other build tools are available
77
# These are needed to install some node modules, especially on linux/arm64
@@ -22,5 +22,5 @@ ENV NODE_OPTIONS="--max_old_space_size=4096"
2222
# Listen / accept connections from all IP addresses.
2323
# NOTE: At this time it is only possible to run Docker container in Production mode
2424
# if you have a public URL. See https://github.com/DSpace/dspace-angular/issues/1485
25-
ENV NODE_ENV development
25+
ENV NODE_ENV=development
2626
CMD npm run serve -- --host 0.0.0.0

Dockerfile.dist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Test build:
55
# docker build -f Dockerfile.dist -t dspace/dspace-angular:latest-dist .
66

7-
FROM node:18-alpine AS build
7+
FROM docker.io/node:18-alpine AS build
88

99
# Ensure Python and other build tools are available
1010
# These are needed to install some node modules, especially on linux/arm64
@@ -26,6 +26,6 @@ COPY --chown=node:node docker/dspace-ui.json /app/dspace-ui.json
2626

2727
WORKDIR /app
2828
USER node
29-
ENV NODE_ENV production
29+
ENV NODE_ENV=production
3030
EXPOSE 4000
3131
CMD pm2-runtime start dspace-ui.json --json

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ https://wiki.lyrasis.org/display/DSDOC7x/Installing+DSpace
3535
Quick start
3636
-----------
3737

38-
**Ensure you're running [Node](https://nodejs.org) `v16.x` or `v18.x`, [npm](https://www.npmjs.com/) >= `v5.x`**
38+
**Ensure you're running [Node](https://nodejs.org) `v18.x` or `v20.x`, [npm](https://www.npmjs.com/) >= `v10.x`**
3939

4040
```bash
4141
# clone the repo
@@ -90,7 +90,7 @@ Requirements
9090
------------
9191

9292
- [Node.js](https://nodejs.org)
93-
- Ensure you're running node `v16.x` or `v18.x`
93+
- Ensure you're running node `v18.x` or `v20.x`
9494

9595
If you have [`nvm`](https://github.com/creationix/nvm#install-script) or [`nvm-windows`](https://github.com/coreybutler/nvm-windows) installed, which is highly recommended, you can run `nvm install --lts && nvm use` to install and start using the latest Node LTS.
9696

0 commit comments

Comments
 (0)