Skip to content

Commit 699124f

Browse files
authored
Merge pull request #383 from com-pas/chore/sync-with-upstream-0.39.0
chore: Sync with upstream 0.39.0
2 parents 449b84a + c190e7d commit 699124f

File tree

96 files changed

+47974
-30618
lines changed

Some content is hidden

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

96 files changed

+47974
-30618
lines changed

.husky/commit-msg

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
npx --no -- commitlint --edit $1

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"packages/openscd": "0.37.0",
33
"packages/core": "0.1.4",
4-
".": "0.38.0"
4+
".": "0.39.0"
55
}

CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,34 @@
11
# Changelog
22

3+
## [0.39.0](https://github.com/openscd/open-scd/compare/v0.38.1...v0.39.0) (2025-05-28)
4+
5+
6+
### Features
7+
8+
* add commit lint to OpenSCD ([#1676](https://github.com/openscd/open-scd/issues/1676)) ([fffd1a7](https://github.com/openscd/open-scd/commit/fffd1a766f175044f78f34b0d833079dba34e085))
9+
* add subscriber later binding plugin ([#1664](https://github.com/openscd/open-scd/issues/1664)) ([26f6900](https://github.com/openscd/open-scd/commit/26f690007cb5e7fe42b22f7fc46f18035d934008))
10+
* move gse smv between connectedAPs ([#1680](https://github.com/openscd/open-scd/issues/1680)) ([da8324e](https://github.com/openscd/open-scd/commit/da8324e08483a3b45dc7436d7c2e22381fa3c9e8))
11+
* remove communication from the substation editor and use oscd-publisher plugin ([#1650](https://github.com/openscd/open-scd/issues/1650)) ([c850088](https://github.com/openscd/open-scd/commit/c8500880bfdffd87cf014a5ad1d9fcef89a5ba41))
12+
13+
14+
### Bug Fixes
15+
16+
* change pattern definition of tIDNaming to non-whitespace characters ([#1670](https://github.com/openscd/open-scd/issues/1670)) ([5476bd0](https://github.com/openscd/open-scd/commit/5476bd08711ae94341802db0636dcfd0e231cd41))
17+
* Fix handle activate editor ([#1651](https://github.com/openscd/open-scd/issues/1651)) ([3847944](https://github.com/openscd/open-scd/commit/384794420292a9e5192eac937d907238a6113120))
18+
* modify start script to clear snowpack cache ([#1654](https://github.com/openscd/open-scd/issues/1654)) ([ff699e3](https://github.com/openscd/open-scd/commit/ff699e357442593f07bf9665473b1fbc499606b0))
19+
* Move menu item content outside drawer ([#1683](https://github.com/openscd/open-scd/issues/1683)) ([15b2872](https://github.com/openscd/open-scd/commit/15b287240a015ab49590d6a4ab094f9180a16917))
20+
* update deprecated ubuntu image in pr-preview workflow ([#1665](https://github.com/openscd/open-scd/issues/1665)) ([f9f5e45](https://github.com/openscd/open-scd/commit/f9f5e450dee98fe3c5192f50d8ecb302be666705))
21+
22+
## [0.38.1](https://github.com/openscd/open-scd/compare/v0.38.0...v0.38.1) (2025-03-05)
23+
24+
25+
### Bug Fixes
26+
27+
* Attach release files in release please ([#1636](https://github.com/openscd/open-scd/issues/1636)) ([f2e6a1d](https://github.com/openscd/open-scd/commit/f2e6a1d8b8fc49b03c75e94dfeed565eeb1bda2f))
28+
* Build entire project and attach distribution to build output ([#1639](https://github.com/openscd/open-scd/issues/1639)) ([bd554e7](https://github.com/openscd/open-scd/commit/bd554e72f308a3c6e60f4ee1d98fa4884fc5d8f8))
29+
* continue to upload assets job even if npm publish step fails ([#1638](https://github.com/openscd/open-scd/issues/1638)) ([bc7571e](https://github.com/openscd/open-scd/commit/bc7571e8351d2a1770e19c58eabf91404cf1726e))
30+
* rename releases_created into release_created for release_please_action@V4 ([#1641](https://github.com/openscd/open-scd/issues/1641)) ([81801cc](https://github.com/openscd/open-scd/commit/81801cc776311ff996c512ea2f441b2b9cc5e2cd))
31+
332
## [0.38.0](https://github.com/openscd/open-scd/compare/v0.37.1...v0.38.0) (2025-02-26)
433

534

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,4 @@ A high-level overview of how it’s organized will help you know where to look f
4242

4343
## CC-EULA license
4444

45-
Some of the files in this repository are subject to the CC-EULA License. Please check the [disclaimer](./packages/openscd/public/xml/Disclaimer.md) to to see what his means
45+
Some of the files in this repository are subject to the CC-EULA License. Please check the [disclaimer](./packages/openscd/public/xml/Disclaimer.md) to to see what his means.

commitlint.config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
module.exports = {
2+
extends: ['@commitlint/config-conventional']
3+
};

docs/core-api/edit-api-flow.png

64.1 KB
Loading

docs/core-api/edit-api.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
Open SCD offers an API for editing the scd document which can be used with [Html Custom Events](https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent). The main Open SCD components listens to events of the type `oscd-edit-v2`, applies the changes to the `doc` and updates the `editCount` property.
44

5+
![EditApiFlow](./edit-api-flow.png)
6+
57
The edits to the `doc` will be done in place, e.g. the `doc` changes but will keep the same reference. If your plugin needs to react to changes in the doc, you should listen to changes in the `editCount` property.
68

79
## Event factory

docs/how-to/commiting.md

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# 📝 Commit Message Guidelines
2+
3+
## Purpose
4+
5+
To maintain a clean, readable, and automated commit history, we enforce the [Conventional Commits ↗](https://www.conventionalcommits.org/en/v1.0.0/) specification across this repository.
6+
7+
All commits **must** follow the format described below. Commits that do not comply will be automatically rejected by our Git hooks.
8+
9+
---
10+
11+
## 📋 Commit Format
12+
13+
```
14+
<type>(<scope>): <subject>
15+
```
16+
17+
- `type`: the kind of change you're committing.
18+
- `scope`: the specific part of the codebase affected (optional but encouraged).
19+
- `subject`: a brief description of the change.
20+
21+
---
22+
## ✏️ Examples
23+
24+
Good examples:
25+
```
26+
feat(core): add authentication module
27+
fix(openSCD): resolve login redirect bug
28+
docs: update contributing guidelines
29+
chore: update eslint config
30+
```
31+
32+
Bad examples (these would be rejected):
33+
```
34+
"fix bug"
35+
"updated stuff"
36+
"small changes"
37+
```
38+
39+
---
40+
## 🔖 Some of the allowed Types
41+
42+
⚠️ Disclaimer: For a full list please visit the [conventional commits ↗](https://www.conventionalcommits.org/en/v1.0.0/) page
43+
44+
| Type | Purpose |
45+
|------------|-----------------------------------------------------------|
46+
| feat | A new feature |
47+
| fix | A bug fix |
48+
| docs | Documentation only changes |
49+
| style | Changes that do not affect meaning (formatting, etc.) |
50+
| refactor | Code change that neither fixes a bug nor adds a feature |
51+
| perf | A code change that improves performance |
52+
| test | Adding or correcting tests |
53+
| chore | Maintenance tasks (build process, tooling, dependencies) |
54+
55+
---
56+
57+
## 🧠 Additional Notes
58+
59+
- The commit hook will automatically validate your message.
60+
- If your commit is rejected, edit your message and try again.
61+
- For complex changes, you can add a longer body after the subject, separated by a blank line.
62+
63+
Example:
64+
```
65+
feat(core): support new user roles
66+
67+
This adds support for multiple user role types in the core module. Also refactors the existing permission system to be more scalable.
68+
```
69+
70+
---
71+
72+
# ✅ Quick Checklist Before Committing
73+
74+
- [ ] Is my commit message following the format?
75+
- [ ] Is the type correct (`feat`, `fix`, `chore`, etc.)?
76+
- [ ] Did I specify the correct scope (`core`, `openSCD`, `distribution`, etc...) if applicable?
77+
- [ ] Is the message short, clear, and imperative?
78+

docs/how-to/release.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Release Process
2+
3+
This document outlines the steps involved in the release process for the OpenSCD project.
4+
5+
## Automated Release Workflow
6+
7+
The release process is automated using GitHub Actions and the `release-please` workflow. Below is an overview of the steps:
8+
9+
1. **Triggering the Workflow**:
10+
- The workflow is triggered on a push to the `main` branch.
11+
12+
2. **Release Creation**:
13+
- The `googleapis/release-please-action` is used to create a new release. It determines the version bump (major, minor, or patch) based on conventional commits.
14+
15+
3. **NPM Publication**:
16+
- When a release is created, the `packages/core` package is published to the NPM registry.
17+
18+
4. **Build Assets**:
19+
- The workflow creates zipped and tarred build assets from the `packages/distribution/build/`, that are attached to the GitHub release.
20+
21+
## Manual Steps - Verify the Release
22+
- After the workflow completes, a pull request (PR) is automatically opened with the relevant changes.
23+
- Review the PR to ensure the correct version and assets are included.
24+
- Once verified, merge the PR to finalise the release.
25+
26+
## Notes
27+
28+
- The release process relies on conventional commits to determine versioning. Ensure commit messages follow the [Conventional Commits](https://www.conventionalcommits.org/) specification or read more [here](./commiting.md).
29+
30+
## Versioning Strategy
31+
32+
- The version in the root `package.json` represents the official release version of the distribution. This version is also reflected in `packages/distribution/manifest.json`.
33+
- The version in `packages/core/package.json` is used to publish the `core` package to the NPM registry.
34+
- The version in `packages/openscd/package.json` is used to manage the versioning of the `openscd` package.
35+
- These versions are updated automatically by the `release-please` action during the release process. Version numbers are updated automatically based on conventional commits.
36+

docs/plug-ins.md

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,6 @@ implemented in these plugins.
6161
> https://openscd.github.io/plugins/src/editors/GooseSubscriberDataBinding.js
6262
> ```
6363
64-
### Subscriber Later Binding (GOOSE)
65-
66-
> <kbd>✅ Official</kbd> | <kbd>Editor</kbd> | by [OpenSCD](https://github.com/openscd) | [Repository](https://github.com/openscd/open-scd/)
67-
>
68-
> ```
69-
> https://openscd.github.io/plugins/src/editors/GooseSubscriberLaterBinding.js
70-
> ```
71-
7264
### Subscriber Message Binding (SMV)
7365
7466
> <kbd>✅ Official</kbd> | <kbd>Editor</kbd> | by [OpenSCD](https://github.com/openscd) | [Repository](https://github.com/openscd/open-scd/)
@@ -85,14 +77,6 @@ implemented in these plugins.
8577
> https://openscd.github.io/plugins/src/editors/SMVSubscriberDataBinding.js
8678
> ```
8779
88-
### Subscriber Later Binding (SMV)
89-
90-
> <kbd>✅ Official</kbd> | <kbd>Editor</kbd> | by [OpenSCD](https://github.com/openscd) | [Repository](https://github.com/openscd/open-scd/)
91-
>
92-
> ```
93-
> https://openscd.github.io/plugins/src/editors/SMVSubscriberLaterBinding.js
94-
> ```
95-
9680
### Communication
9781
9882
> <kbd>✅ Official</kbd> | <kbd>Editor</kbd> | by [OpenSCD](https://github.com/openscd) | [Repository](https://github.com/openscd/open-scd/)
@@ -119,10 +103,10 @@ implemented in these plugins.
119103
120104
### Publisher
121105
122-
> <kbd>✅ Official</kbd> | <kbd>Editor</kbd> | by [OpenSCD](https://github.com/openscd) | [Repository](https://github.com/openscd/open-scd/)
123-
>
106+
> <kbd>✅ Official</kbd> | <kbd>Editor</kbd> | by [OpenSCD](https://github.com/openscd) | [Repository](https://github.com/openscd/oscd-publisher/)
107+
>
124108
> ```
125-
> https://openscd.github.io/plugins/src/editors/Publisher.js
109+
> https://openscd.github.io/external-plugins/oscd-publisher/oscd-publisher.js
126110
> ```
127111
128112
### Cleanup

0 commit comments

Comments
 (0)