Skip to content

Commit 83eee58

Browse files
Logendedependabot[bot]Devesh0129
authored
Release 2.3.0 (#937)
* Update e2e tests to run on push/PR to develop (#914) * Bump picomatch in /meta_configurator (#916) Bumps and [picomatch](https://github.com/micromatch/picomatch). These dependencies needed to be updated together. Updates `picomatch` from 4.0.3 to 4.0.4 - [Release notes](https://github.com/micromatch/picomatch/releases) - [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md) - [Commits](micromatch/picomatch@4.0.3...4.0.4) Updates `picomatch` from 2.3.1 to 2.3.2 - [Release notes](https://github.com/micromatch/picomatch/releases) - [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md) - [Commits](micromatch/picomatch@4.0.3...4.0.4) Updates `picomatch` from 3.0.1 to 3.0.2 - [Release notes](https://github.com/micromatch/picomatch/releases) - [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md) - [Commits](micromatch/picomatch@4.0.3...4.0.4) Updates `picomatch` from 4.0.2 to 4.0.4 - [Release notes](https://github.com/micromatch/picomatch/releases) - [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md) - [Commits](micromatch/picomatch@4.0.3...4.0.4) --- updated-dependencies: - dependency-name: picomatch dependency-version: 4.0.4 dependency-type: indirect - dependency-name: picomatch dependency-version: 2.3.2 dependency-type: indirect - dependency-name: picomatch dependency-version: 3.0.2 dependency-type: indirect - dependency-name: picomatch dependency-version: 4.0.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump handlebars from 4.7.8 to 4.7.9 in /meta_configurator (#920) Bumps [handlebars](https://github.com/handlebars-lang/handlebars.js) from 4.7.8 to 4.7.9. - [Release notes](https://github.com/handlebars-lang/handlebars.js/releases) - [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/v4.7.9/release-notes.md) - [Commits](handlebars-lang/handlebars.js@v4.7.8...v4.7.9) --- updated-dependencies: - dependency-name: handlebars dependency-version: 4.7.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump yaml from 2.7.0 to 2.8.3 in /meta_configurator (#917) Bumps [yaml](https://github.com/eemeli/yaml) from 2.7.0 to 2.8.3. - [Release notes](https://github.com/eemeli/yaml/releases) - [Commits](eemeli/yaml@v2.7.0...v2.8.3) --- updated-dependencies: - dependency-name: yaml dependency-version: 2.8.3 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Felix Neubauer <[email protected]> * 884 implement word wrap for text view (#918) * initial comit for wordwrap in text view * word wrap - handling resize * update comment --------- Co-authored-by: Felix Neubauer <[email protected]> * add experimental tag for experimental versions (#923) * add experimental tag for experimental versions * apply formatting changes --------- Co-authored-by: Logende <[email protected]> * 922 auto detect feature increment in version number and then auto create new tag (#924) * update version and changelog * add workflow to automatically create version tag on merge if version is incremented * 895 refactor to use visitor pattern for json schema traversal (#925) * add new json schema visitor * adjust code to use json schema visitor * simplify test setup * add test for json schema visitor * add test for feature detection * make variables and parameters more descriptive * apply formatting changes --------- Co-authored-by: Logende <[email protected]> * Misc refactorings and improvements (#927) * remove STML mapping (was only prototype, much weaker than Jsonata) * reduce logging * extract required utils to own file * remove outdated todo, as the feature now exists * fix schema diagram not showing 0 value in enum component * reduce API key persistence due to potential security risks * fix test case * apply formatting changes --------- Co-authored-by: Logende <[email protected]> * Update README.md (#929) * Add schema diagram tests and fix 2 bugs (#935) * Add schema diagram tests and fix 2 bugs * update documentation generation tests * apply formatting changes --------- Co-authored-by: Logende <[email protected]> * update version and changelog (#936) --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Devesh Talsania <[email protected]> Co-authored-by: Logende <[email protected]>
1 parent 924ad98 commit 83eee58

51 files changed

Lines changed: 1317 additions & 1752 deletions

Some content is hidden

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

.github/workflows/e2e.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ name: E2E Tests
22

33
on:
44
push:
5-
branches: [main]
5+
branches: [develop]
66
pull_request:
7-
branches: [main]
7+
branches: [develop]
88

99
jobs:
1010
e2e:

.github/workflows/github-pages.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ jobs:
1818
env:
1919
USE_META_CONFIGURATOR_BASE_PATH: true # Set to true for GitHub Pages deployment
2020
VITE_FRONTEND_HOSTNAME: https://metaconfigurator.github.io/meta-configurator
21+
EXPERIMENTAL: true
2122
run: |
2223
cd meta_configurator
2324
npm ci

.github/workflows/tag-version.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Tag Version
2+
on:
3+
push:
4+
branches:
5+
- main
6+
- develop
7+
permissions:
8+
contents: write
9+
jobs:
10+
tag-version:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v6
15+
with:
16+
fetch-depth: 0
17+
18+
- name: Create tag if version is new
19+
run: |
20+
VERSION=$(node -p "require('./meta_configurator/package.json').version")
21+
TAG="v$VERSION"
22+
if git rev-parse "$TAG" >/dev/null 2>&1; then
23+
echo "Tag $TAG already exists, skipping."
24+
else
25+
git tag "$TAG"
26+
git push origin "$TAG"
27+
echo "Created and pushed tag $TAG."
28+
fi

CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88

99
---
1010

11+
## [2.3.0] - 2026-04-14
12+
13+
### Changed
14+
15+
- Remove prototypical STML mapping in favor of more powerful Jsonata
16+
- Refactor the code base to use a newly implemented JSON Schema visitor pattern instead of having schema traversal logic implemented in different places
17+
18+
### Fixed
19+
20+
- Fix schema diagram: it now correctly draws multiple edges if a sub-schema defines its own structure and additionally has a reference
21+
22+
## [2.2.0] - 2026-03-27
23+
24+
### Added
25+
26+
- Add word-wrap for text editor
27+
- Add `experimental` tag in the About page for the experimental deployment
28+
- Add workflow to automatically generate a git tag when a PR is merged into `main` or `develop` with an incremented version in the package.json
29+
30+
### Changed
31+
32+
- Update multiple dependencies (picomatch, handlebars, yaml)
33+
1134
## [2.1.0] - 2026-03-25
1235

1336
Initial versioned release. Introduces semantic versioning, a structured branching model (`develop` / `main`), and contribution guidelines.

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,9 @@ pages = {1--9}
136136

137137
MetaConfigurator runs entirely **inside your browser** - it does **not** send your schemas, data, or anything you type to any server. The website itself is just a static page delivered by GitHub Pages (like downloading a PDF or image), and all the work happens locally on your computer.
138138

139-
The only exception is if you **click the “Share Snapshot” button**. Then, and only then, the snapshot you create is sent to a **University of Stuttgart** server so you can share a unique link with others.
139+
The exception is if you **click the “Share Snapshot” button**. Then, and only then, the snapshot you create is sent to a **University of Stuttgart** server so you can share a unique link with others.
140+
141+
Additionally, if you use the optional AI assistance functionality, relevant subsets of your schema and data are shared with the AI endpoint you configure in the MetaConfigurator settings (by default OpenAI). This will not accidentally happen, as an authentification key from the AI endpoint provider is needed to use the AI assistance features.
140142

141143
**See our [full Privacy Policy](PRIVACY.md)** for more information.
142144

meta_configurator/env.d.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
/// <reference types="vite/client" />
22

33
declare const __APP_VERSION__: string;
4+
declare const __APP_EXPERIMENTAL__: boolean;

meta_configurator/package-lock.json

Lines changed: 28 additions & 21 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

meta_configurator/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "meta-configurator",
3-
"version": "2.1.0",
3+
"version": "2.3.0",
44
"private": true,
55
"scripts": {
66
"dev": "vite",
@@ -42,7 +42,7 @@
4242
"dagrejs": "^0.2.1",
4343
"fast-xml-parser": "^5.0.8",
4444
"flowbite": "^1.6.5",
45-
"handlebars": "^4.7.8",
45+
"handlebars": "^4.7.9",
4646
"js-yaml": "^4.1.0",
4747
"json-cst": "^1.2.0",
4848
"json-pointer": "^0.6.2",
@@ -62,7 +62,7 @@
6262
"vue": "^3.5.13",
6363
"vue-flow": "^0.3.0",
6464
"vue-router": "^4.3.2",
65-
"yaml": "^2.3.1"
65+
"yaml": "^2.8.3"
6666
},
6767
"devDependencies": {
6868
"@ls-lint/ls-lint": "^2.2.3",

meta_configurator/src/components/panels/ai-prompts/ApiKey.vue

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,14 @@ Component for displaying the OpenAI API key input.
55
import {type Ref, ref} from 'vue';
66
import Password from 'primevue/password';
77
import SelectButton from 'primevue/selectbutton';
8-
import {getApiKeyRef, getIsPersistKeyRef} from '@/utility/ai/apiKey';
9-
10-
const isShowPersistOption = false; // currently the option of whether to persist the key is not shown because without persistence the key currently can not be accessed
8+
import {getApiKeyRef, getRememberInTabRef} from '@/utility/ai/apiKey';
119
1210
const apiKey: Ref<string> = getApiKeyRef();
13-
const isPersistKey: Ref<boolean> = getIsPersistKeyRef();
11+
const rememberInTab: Ref<boolean> = getRememberInTabRef();
1412
15-
const persistOptions = ref([
16-
{name: 'true', value: true},
17-
{name: 'false', value: false},
13+
const rememberOptions = ref([
14+
{name: 'Remember in this tab', value: true},
15+
{name: 'Forget on refresh', value: false},
1816
]);
1917
</script>
2018

@@ -28,17 +26,18 @@ const persistOptions = ref([
2826
possible without permanently connecting your credit card with your account. Check this
2927
<a href="https://platform.openai.com/docs/pricing" target="_blank">link</a> for pricing.
3028
<br />
31-
<br />
3229
MetaConfigurator by default uses the gpt-4o-mini model, which has very low cost. For improved
3330
results you can change to more performant models in the settings tab.
31+
<br />
32+
<br />
33+
Your key is stored only in your browser and sent directly to your chosen provider. It is never
34+
sent to MetaConfigurator servers.
3435
<span class="api-key-container">
3536
<span>Key:</span>
36-
<Password v-model="apiKey" placeholder="Enter your OpenAI API Key" :feedback="false" />
37-
<span v-show="isShowPersistOption">Persist:</span>
37+
<Password v-model="apiKey" placeholder="Enter your API Key" :feedback="false" />
3838
<SelectButton
39-
v-show="isShowPersistOption"
40-
v-model="isPersistKey"
41-
:options="persistOptions"
39+
v-model="rememberInTab"
40+
:options="rememberOptions"
4241
option-label="name"
4342
option-value="value" />
4443
</span>

meta_configurator/src/components/panels/ai-prompts/aiPromptUtils.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,4 @@ function hasMoreOpeningBrackets(input: string): boolean {
3838
return openingCount > closingCount;
3939
}
4040

41-
export function getApiKey(): string {
42-
return localStorage.getItem('openai_api_key') || '';
43-
}
41+
export {getApiKey} from '@/utility/ai/apiKey';

0 commit comments

Comments
 (0)