Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
75992e3
Fix incorrect translation of "withdraw" (#1191)
Paurikova2 Feb 10, 2026
f9ddc44
UFAL/Removed green line from the home page (#1204)
milanmajchrak Feb 10, 2026
c794f52
UFAL/Added import-5 to deploy (#1206)
Paurikova2 Feb 12, 2026
1b769b9
UFAL/Removed unused github docker registry (#1212)
milanmajchrak Feb 18, 2026
d4d84cb
internal/Renamed dspace-import to dspace-import-clarin in import acti…
Paurikova2 Feb 18, 2026
0ee58b2
UFAL/Editing similar process parameters (#1195)
Paurikova2 Feb 18, 2026
2f14694
UFAL/Display all versions in version history (#1213)
Kasinhou Feb 19, 2026
aac563e
UFAL/Missing translation for new curation task (#1208)
kosarko Feb 19, 2026
0434ff9
UFAL/We expect (in metadata) the path to be "licence" (#1193)
kosarko Feb 19, 2026
99637f0
UFAL/Rewrite OAI links in static page HTML with rest.baseUrl (ufal/ds…
kosarko Feb 19, 2026
d6ed972
Update path for dspace-import in action.yml (#1216)
Kasinhou Feb 23, 2026
6fc73d8
Refactor erase-db action to clean up comments
vidiecan Feb 24, 2026
911bb36
Use `dspace:dspace` permissions for the assetstore - not ubuntu:ubunt…
milanmajchrak Feb 24, 2026
f7e63c4
First version of agents.md
Feb 25, 2026
1dd1127
UFAL/Fix: generate correct curl download URLs using backend handle en…
milanmajchrak Feb 26, 2026
6ea61f9
UFAL/CURL downloads issue - fix integration test
milanmajchrak Feb 26, 2026
31adb31
UFAL/Fix: preserve namespace in OAI link rewrite on static pages (#12…
milanmajchrak Feb 27, 2026
6628aaf
UFAL/Resolve duplicate HTML element IDs across pages (#1221)
Kasinhou Mar 2, 2026
4bc3119
Refactor running rest tests in deploy
Mar 4, 2026
d175c4a
Commented playwright for testing
Mar 4, 2026
6e743aa
UFAL/Successfully downloaded collection file when the file is downloa…
Paurikova2 Mar 4, 2026
dcce53c
Removed dynamic string interpolation from URL
Mar 4, 2026
03e534b
Updated agents.md script
Mar 4, 2026
24717a5
Allows running playwright tests again
Mar 9, 2026
eed7d30
UFAL/Resolve duplicate html IDs in submission form (#1234)
Kasinhou Mar 9, 2026
b920059
Merge pull request #1233 from dataquest-dev/ufal/update-rest-tests-ca…
Kasinhou Mar 9, 2026
39abed3
Revert "UFAL/Refactor running rest tests in deploy" (#1238)
Kasinhou Mar 9, 2026
602a261
UFAL/Broken matomo tracking with custom dimensions (#1237)
milanmajchrak Mar 10, 2026
546bd07
Upstream/EN language - fixing spaces (#1249)
Kasinhou Mar 11, 2026
2348c56
Using gh actions instead of curl-based approach to call rest tests
Mar 17, 2026
c0ea2ef
Uncommented deploy and playwright
Mar 17, 2026
9f40456
Improve finding the id of rest tests
Mar 17, 2026
917906a
Reduced the amount of code
Mar 17, 2026
5ed7cfd
Merge pull request #1223 from dataquest-dev/agents-md-script
Kasinhou Mar 17, 2026
ac1a04c
Trying new return output from gh workflow run
Mar 17, 2026
b6b5fd1
Use directly output from gh workflow run
Mar 17, 2026
ba19c25
Uncommented playwright and deploy - not testing
Mar 17, 2026
dc52d23
Merge pull request #1252 from dataquest-dev/deploy-workflow-update
Kasinhou Mar 18, 2026
164c424
UFAL/stabilize form array reorder/delete behavior (ufal/dspace-angula…
kosarko Mar 27, 2026
4914924
UFAL/stabilize form array reorder/delete behavior (ufal/dspace-angula…
kosarko Mar 27, 2026
e7ab712
UFAL/Defined logdir input (#1276)
Kasinhou Apr 20, 2026
7aca074
[Port to dtq-dev] Improve back navigation logic in ItemComponent (#1184)
kosarko May 6, 2026
cb7e1bb
UFAL/Reset pagination on search term change (#1281)
kosarko May 6, 2026
3a95a85
UFAL/Updated components to display `dc.description` instead of `dc.de…
milanmajchrak May 21, 2026
0645e7e
UFAL/Separate CLARIN license payload from sections.license (#1292)
milanmajchrak May 27, 2026
f5d0d67
UFAL/123 selecting language from dropdown in submission form is broke…
kosarko Jun 2, 2026
96e594a
re-evaluate type-bind visibility when bind model loads late (ufal/ds…
kosarko Jun 2, 2026
f46cb9c
UFAL/Add New version button for archived submission items (#1278)
kosarko Jun 3, 2026
3a219e4
[Port to dtq-dev] Refresh file listings on breadcrumb navigation afte…
kosarko Jun 3, 2026
f8495ea
[Port to dtq-dev] static pages - SSR render; 404 behavior (#1241)
kosarko Jun 3, 2026
f2fe67b
Refactor license contract page and improve collection display (ufal/c…
kosarko Jun 3, 2026
a616eaf
UFAL/Remove Clarin Matomo statistics component (#1229)
kosarko Jun 3, 2026
2b87775
Created workflow to label new issues (#1302)
Kasinhou Jun 9, 2026
d8c5d54
Make Solr heap tunable via SOLR_HEAP (default 4g, no behavior change)…
vidiecan Jun 15, 2026
9c5a8be
Skipped jcu until there will be tests (#1322)
Kasinhou Jun 23, 2026
714c92b
UFAL/fix(bitstream): restore item UUID in edit redirect (ufal/dspace-…
kosarko Jun 23, 2026
1c285b4
UFAL/[Port to dtq-dev] Add 'Add URL bitstream' feature to workspace i…
kosarko Jun 23, 2026
778d878
AI-Skills/Chore: wire private AI skills submodule (.dspace-skills) (#…
jr-rk Jun 25, 2026
50a0e30
UFAL/Lost license in workflow edit (ufal#144) (#1301)
kosarko Jun 26, 2026
d154682
UFAL/Accessibility existing issues all (ufal/dspace-angular#139) (#1300)
kosarko Jun 26, 2026
66a278c
[Port to dtq-dev] license management (#1299)
kosarko Jun 29, 2026
fecfa07
[Port to dtq-dev] Add search icon to community and collection (ufal/d…
kosarko Jun 29, 2026
d5167c0
test: fix flaky DSDynamicTypeBindRelationService spec (double spyOn) …
milanmajchrak Jul 1, 2026
0ac3e53
UFAL/Locale names for SimpleRORAuthority (ufal/dspace-angular#135) (#…
kosarko Jul 1, 2026
41ead07
UFAL/fix(submission): keep dc.type dropdown display after change (ufa…
kosarko Jul 1, 2026
192e845
Merge branch 'customer/lindat' of github.com:dataquest-dev/dspace-ang…
milanmajchrak Jul 2, 2026
f193571
Merge branch 'dtq-dev' into ufal/release-2026-july-02
milanmajchrak Jul 2, 2026
db14a57
Revert unwanted change
milanmajchrak Jul 2, 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
1 change: 1 addition & 0 deletions .dspace-skills
Submodule .dspace-skills added at 2a62a2
5 changes: 5 additions & 0 deletions .github/actions/import-db/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ inputs:
description: 'Admin password for DSpace'
required: true
type: string
LOGDIR:
description: 'Directory for log files'
required: false
type: string
default: ''

runs:
using: "composite"
Expand Down
47 changes: 3 additions & 44 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,48 +109,6 @@ jobs:
/bin/bash -c 'while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' http://dev-5.pc:8$INSTANCE/repository/server/api)" != "200" ]]; do sleep 5; done'


import-5:
runs-on: dspace-dep-1
if: inputs.IMPORT
needs: deploy-5
env:
INSTANCE: '5'
ENVFILE: /opt/dspace-envs/.env.dspace.dev-5
steps:
- uses: ./.github/actions/import-db
with:
INSTANCE: ${{ env.INSTANCE }}
DATADIR: /opt/dspace-data/clarin-dspace-oxford/
ASSETSTORE: /opt/dspace-data/clarin-dspace-oxford/assetstore/
LOGDIR: /log/
ADMIN_PASSWORD: ${{ secrets.DSPACE_ADMIN_PASSWORD }}

- name: dspace basic command
run: |
export DNAME=dspace$INSTANCE
docker logs -n 50 $DNAME

echo "dspace version:"
docker exec $DNAME /bin/bash -c "cd /dspace/bin && ./dspace version"

echo "dspace cleanup:"
docker exec $DNAME /bin/bash -c "cd /dspace/bin && ./dspace cleanup -v"

echo "dspace reindex solr:"
docker exec $DNAME /bin/bash -c "cd /dspace/bin && ./dspace index-discovery -b"

echo "dspace reindex OAI-PMH:"
docker exec $DNAME /bin/bash -c "cd /dspace/bin && ./dspace oai import -c"

echo "dspace checker:"
docker exec $DNAME /bin/bash -c "cd /dspace/bin && ./dspace checker -v -l"

- name: dspace healthcheck
run: |
export DNAME=dspace$INSTANCE
echo "dspace healthcheck:"
docker exec $DNAME /bin/bash -c "cd /dspace/bin && ./dspace healthcheck -v"

import-8:
runs-on: dspace-dep-1
if: inputs.IMPORT
Expand Down Expand Up @@ -202,6 +160,7 @@ jobs:
rest-tests-after-deploy8:
runs-on: ubuntu-latest
needs: playwright-after-deploy8
if: '!inputs.IMPORT'
timeout-minutes: 120
env:
GH_TOKEN: ${{ secrets.DEPLOY_DEV5_GH_ACTION_DISPATCH }}
Expand All @@ -214,7 +173,7 @@ jobs:
--repo "$REPO" \
--ref master \
-f CUSTOMER="${{ github.ref_name }}" \
-f URL="http://dev-5.pc:85/repository/server/api" 2>&1)
-f URL="http://dev-5.pc:88/repository/server/api" 2>&1)

RUN_ID=$(echo "$OUTPUT" | grep -oE '/runs/[0-9]+' | grep -oE '[0-9]+')

Expand Down Expand Up @@ -243,7 +202,7 @@ jobs:
--repo "$REPO" \
--ref master \
-f CUSTOMER="${{ github.ref_name }}" \
-f URL="http://dev-5.pc:85/repository/server/api" 2>&1)
-f URL="http://dev-5.pc:88/repository/server/api" 2>&1)

RUN_ID=$(echo "$OUTPUT" | grep -oE '/runs/[0-9]+' | grep -oE '[0-9]+')

Expand Down
17 changes: 17 additions & 0 deletions .github/workflows/new_issue_label.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Auto Label New Issues

on:
issues:
types: [opened]

jobs:
label-issue:
runs-on: ubuntu-latest
permissions:
issues: write

steps:
- name: Auto Label
uses: dataquest-dev/gh-actions/start@main
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
2 changes: 1 addition & 1 deletion .github/workflows/trigger-ui-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:

git fetch --prune origin
BRANCHES=$(git ls-remote --heads origin | awk -F'/' '{print $3"/"$4}' | grep '^customer/')
SKIP_BRANCHES=("customer/uk" "customer/mendelu-v7" "customer/palo-docker" "customer/palo-docker-rebase" "customer/palo-docker-typo-fix")
SKIP_BRANCHES=("customer/jcu" "customer/uk" "customer/mendelu-v7" "customer/palo-docker" "customer/palo-docker-rebase" "customer/palo-docker-typo-fix")

for branch in $(echo "$BRANCHES" | sed -e 's/[\[\]"]//g' -e 's/,/\n/g'); do
if [[ " ${SKIP_BRANCHES[@]} " =~ " ${branch} " ]]; then
Expand Down
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
[submodule "python_data_import/lib"]
path = python_data_import/lib
url = https://github.com/dataquest-dev/dspace-blackbox-testing.git
[submodule ".dspace-skills"]
path = .dspace-skills
url = git@github.com:dataquest-dev/dspace-skills.git
branch = main
16 changes: 16 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

<!-- dspace-skills:begin -->
## Private team playbooks (dataquest)

This repo vendors dataquest's private AI knowledge base as the `.dspace-skills/` git submodule. **If
`.dspace-skills/` is present**, treat **`.dspace-skills/AGENTS.md`** as the authoritative agent guide for this repo:
read it first, then load the matching profile (`.dspace-skills/profiles/frontend.md` for dspace-angular,
`.dspace-skills/profiles/backend.md` for DSpace) and pull skills from `.dspace-skills/skills/` on demand. Start any
PR/backport/test task from `.dspace-skills/SKILLS.md`.

If `.dspace-skills/` is empty (you don't have access, e.g. an outside contributor), ignore this section
and proceed with the public project conventions.

To enable: `git submodule update --init .dspace-skills` (requires access to
`dataquest-dev/dspace-skills`).
<!-- dspace-skills:end -->
16 changes: 16 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

<!-- dspace-skills:begin -->
## Private team playbooks (dataquest)

This repo vendors dataquest's private AI knowledge base as the `.dspace-skills/` git submodule. **If
`.dspace-skills/` is present**, treat **`.dspace-skills/AGENTS.md`** as the authoritative agent guide for this repo:
read it first, then load the matching profile (`.dspace-skills/profiles/frontend.md` for dspace-angular,
`.dspace-skills/profiles/backend.md` for DSpace) and pull skills from `.dspace-skills/skills/` on demand. Start any
PR/backport/test task from `.dspace-skills/SKILLS.md`.

If `.dspace-skills/` is empty (you don't have access, e.g. an outside contributor), ignore this section
and proceed with the public project conventions.

To enable: `git submodule update --init .dspace-skills` (requires access to
`dataquest-dev/dspace-skills`).
<!-- dspace-skills:end -->
1 change: 1 addition & 0 deletions angular.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
"aot": true,
"assets": [
"src/assets",
"src/static-files",
"src/robots.txt"
],
"styles": [
Expand Down
10 changes: 9 additions & 1 deletion cypress/e2e/submission-ui.cy.ts
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,12 @@ describe('Create a new submission', () => {
// DON'T upload any file - just check the license section is accessible
createItemProcess.checkLicenseSelectionValue('Select a License ...');

// Allow frontend to propagate the initial section status (no file => valid)
// before asserting the header icon. Mirrors the pattern used in the
// sibling "license validation when file is uploaded" test above.
cy.wait(1000);
cy.get('div[id="section_clarin-license"]').find('.card-header').should('be.visible');

// Verify warning and error icons do NOT exist
cy.get('div[id="section_clarin-license"]')
.find('.card-header')
Expand All @@ -294,9 +300,11 @@ describe('Create a new submission', () => {
.find('.fa-exclamation-circle.text-danger')
.should('not.exist');

// Green check must eventually appear (retry-ability with a longer timeout
// handles any remaining async settle of the section status observable).
cy.get('div[id="section_clarin-license"]')
.find('.card-header')
.find('.fa-check-circle.text-success')
.find('.fa-check-circle.text-success', { timeout: 15000 })
.should('be.visible');
});

Expand Down
2 changes: 1 addition & 1 deletion docker/docker-compose-rest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ services:
cp -r /opt/solr/server/solr/configsets/search/* search
precreate-core statistics /opt/solr/server/solr/configsets/statistics
cp -r /opt/solr/server/solr/configsets/statistics/* statistics
exec solr -p 8983 -f -m 4g
exec solr -p 8983 -f -m "${SOLR_HEAP:-4g}"
volumes:
# Commented out because there are a lot of files in the assetstore
assetstore:
Expand Down
Loading
Loading