Skip to content

Commit 92f3307

Browse files
author
Arnaud Riess
committed
Merge upstream main into feat/generate-sn6-schema-validation
Resolved conflicts in 4 files: - score_sync_toml/__init__.py: keep needscfg_exclude_vars (PR) + use .append() (upstream) - score_metamodel/__init__.py: use upstream SN6 API (needs_links/needs_fields), remove Any import - score_source_code_linker/__init__.py: use upstream module_grouped_needs.repo + 2-arg get_github_link - requirements.rst: keep needextend for metamodel.yaml source_code_link (PR feature)
2 parents f46007a + b6d8d39 commit 92f3307

116 files changed

Lines changed: 10373 additions & 2719 deletions

File tree

Some content is hidden

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

.bazelversion

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8.3.0
1+
8.4.2

.devcontainer/devcontainer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"name": "eclipse-s-core",
3-
"image": "ghcr.io/eclipse-score/devcontainer:1.0.0",
3+
"image": "ghcr.io/eclipse-score/devcontainer:v1.2.0",
44
"updateContentCommand": "bazel run //:ide_support"
55
}

.github/actions/link-check/action.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2026 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
113
name: 'Link Check and Automated Issue'
214
description: 'Checks links, parses results, and creates or updates an issue with findings.'
315
inputs:
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
11
#!/usr/bin/env bash
2+
# *******************************************************************************
3+
# Copyright (c) 2026 Contributors to the Eclipse Foundation
4+
#
5+
# See the NOTICE file(s) distributed with this work for additional
6+
# information regarding copyright ownership.
7+
#
8+
# This program and the accompanying materials are made available under the
9+
# terms of the Apache License Version 2.0 which is available at
10+
# https://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# SPDX-License-Identifier: Apache-2.0
13+
# *******************************************************************************
214
set -e
315
bazel run //:docs_link_check > linkcheck_output.txt || true

.github/actions/link-check/link_parser.py

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2026 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
113
import argparse
214
import re
315
import sys
@@ -51,18 +63,16 @@ def generate_markdown_table(broken_links: list[BrokenLink]) -> str:
5163
table += "|----------|-------------|-----------|\n"
5264

5365
for link in broken_links:
54-
table += (
55-
f"| {link.location} | {link.line_nr} | {link.reasoning} |\n"
56-
)
66+
table += f"| {link.location} | {link.line_nr} | {link.reasoning} |\n"
5767

5868
return table
5969

6070

6171
def generate_issue_body(broken_links: list[BrokenLink]) -> str:
6272
markdown_table = generate_markdown_table(broken_links)
6373
return f"""
64-
# Broken Links Report.
65-
**Last updated: {datetime.now().strftime('%d-%m-%Y %H:%M')}**
74+
# Broken Links Report.
75+
**Last updated: {datetime.now().strftime("%d-%m-%Y %H:%M")}**
6676
6777
The following broken links were detected in the documentation:
6878
{markdown_table}
@@ -71,9 +81,10 @@ def generate_issue_body(broken_links: list[BrokenLink]) -> str:
7181
7282
> To test locally if all link issues are resolved use `bazel run //:docs_link_check`
7383
74-
---
84+
---
7585
This issue will be auto updated regularly if link issues are found.
76-
You may close it if you wish, though a new one will be created if link issues are still present.
86+
You may close it if you wish.
87+
Though a new one will be created if link issues are still present.
7788
7889
"""
7990

@@ -85,11 +96,11 @@ def strip_ansi_codes(text: str) -> str:
8596

8697

8798
if __name__ == "__main__":
88-
argparse = argparse.ArgumentParser(
99+
arg = argparse.ArgumentParser(
89100
description="Parse broken links from Sphinx log and generate issue body."
90101
)
91-
argparse.add_argument("logfile", type=str, help="Path to the Sphinx log file.")
92-
args = argparse.parse_args()
102+
arg.add_argument("logfile", type=str, help="Path to the Sphinx log file.")
103+
args = arg.parse_args()
93104
with open(args.logfile) as f:
94105
log_content_raw = f.read()
95106
log_content = strip_ansi_codes(log_content_raw)
Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,19 @@
1010
#
1111
# SPDX-License-Identifier: Apache-2.0
1212
# *******************************************************************************
13-
14-
name: Copyright checks
13+
name: Bzlmod Lockfile Check
14+
permissions:
15+
contents: read
1516
on:
1617
pull_request:
1718
types: [opened, reopened, synchronize]
1819
merge_group:
1920
types: [checks_requested]
21+
push:
22+
branches:
23+
- main
2024
jobs:
21-
copyright-check:
22-
uses: eclipse-score/cicd-workflows/.github/workflows/copyright.yml@main
25+
bzlmod-lock:
26+
uses: eclipse-score/cicd-workflows/.github/workflows/bzlmod-lock-check.yml@c1c90b1a82a1fab0fc202979dde6686b2162d5a8 # v0.0.0
2327
with:
24-
bazel-target: "run //:copyright.check"
28+
working-directory: .

.github/workflows/consumer_test.yml

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,19 +33,38 @@ jobs:
3333

3434
- name: Prepare Python
3535
run: |
36-
bazel run //:ide_support
36+
bazel run --lockfile_mode=error //:ide_support
3737
3838
- name: Prepare report directory
3939
run: |
4040
mkdir -p reports
4141
42-
# The pipefail ensures that non 0 exit codes inside the pytest execution get carried into the pipe
42+
# The pipefail ensures that non 0 exit codes inside the pytest execution get carried into the pipe
4343
# & make the tests red in the end. Without this we only would check the exit code of the 'tee' command.
4444
- name: Run Consumer tests
4545

4646
run: |
47-
set -o pipefail
48-
.venv_docs/bin/python -m pytest -s -v src/tests/ --repo="$CONSUMER" --junitxml="reports/${{ matrix.consumer }}.xml" | tee "reports/${{ matrix.consumer }}.log"
47+
pytest_rc=0
48+
.venv_docs/bin/python -m pytest -vv src/tests/ \
49+
--repo="$CONSUMER" \
50+
--junitxml="reports/${{ matrix.consumer }}.xml" \
51+
|| pytest_rc=$?
52+
53+
54+
if [ -f "consumer_test.log" ]; then
55+
src_log="consumer_test.log"
56+
else
57+
echo "consumer_test.log not found; expected at ./consumer_test.log"
58+
exit ${pytest_rc:-1}
59+
fi
60+
61+
dest_log="reports/${{ matrix.consumer }}.log"
62+
mv "$src_log" "$dest_log"
63+
64+
tail -n 15 "$dest_log" >> "$GITHUB_STEP_SUMMARY"
65+
66+
cat "$dest_log"
67+
exit $pytest_rc
4968
env:
5069
FORCE_COLOR: "1"
5170
TERM: xterm-256color

.github/workflows/daily.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# *******************************************************************************
2+
# Copyright (c) 2026 Contributors to the Eclipse Foundation
3+
#
4+
# See the NOTICE file(s) distributed with this work for additional
5+
# information regarding copyright ownership.
6+
#
7+
# This program and the accompanying materials are made available under the
8+
# terms of the Apache License Version 2.0 which is available at
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# SPDX-License-Identifier: Apache-2.0
12+
# *******************************************************************************
13+
14+
name: Daily Maintenance
15+
16+
permissions:
17+
contents: write
18+
issues: write
19+
pull-requests: write
20+
pages: write
21+
id-token: write
22+
23+
on:
24+
# Runs every day at midnight UTC
25+
schedule:
26+
- cron: '0 0 * * *'
27+
28+
# On changes to this workflow file
29+
pull_request:
30+
branches:
31+
- main
32+
paths:
33+
- '.github/workflows/daily.yml'
34+
35+
# Manually trigger the workflow from the GitHub UI
36+
workflow_dispatch: {}
37+
38+
jobs:
39+
maintenance:
40+
uses: eclipse-score/cicd-workflows/.github/workflows/daily.yml@829b3e11ccbf924a5782f7bfed647cb1619fdf78 # v0.0.1

.github/workflows/format.yml

Lines changed: 0 additions & 41 deletions
This file was deleted.

.github/workflows/license_check.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ permissions:
2525

2626
jobs:
2727
license-check:
28-
uses: eclipse-score/cicd-workflows/.github/workflows/license-check.yml@main
28+
uses: eclipse-score/cicd-workflows/.github/workflows/license-check.yml@c1c90b1a82a1fab0fc202979dde6686b2162d5a8 # v0.0.0
2929
with:
3030
repo-url: "${{ github.server_url }}/${{ github.repository }}"
31-
bazel-target: "run //src:license-check"
31+
bazel-target: "run --lockfile_mode=error //src:license-check"
3232
secrets:
3333
dash-api-token: ${{ secrets.ECLIPSE_GITLAB_API_TOKEN }}

0 commit comments

Comments
 (0)