All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
1.99.0 (2025-01-06)
- mainapp: avoid to raise a ZodError when starting the application (155c314)
- mainapp: typing (4848622)
1.98.2 (2024-12-20)
1.98.1 (2024-12-20)
1.98.0 (2024-12-20)
- api: GET and POST metadata (7139090)
- mainapp/graphManagement: disable metadata editing for read only sources (ba37ba7)
- mainapp/graphManagement: display metadata modal (98b4cdf)
1.97.0 (2024-12-20)
- graphManagement: standard searchbar (d6f29c2)
- docs: build doc on master branch only (35765bc)
- mainapp/configeditor: do not validate own source prefix in edit mode (d5b1781)
- mainapp/plugin: do not show the error snack when fetching was successful (9cb0cc8)
- mainapp: correctly select the group in edit mode with the Source editor (fb9047f)
- mainapp: disable autocomplete on searchbars (47870ac)
1.96.0 (2024-12-11)
Important
Updating to 1.96.0 require a data migration. Execute the following script after upgrade.
npm run migrate
- graphManagement: copy paste file durring upload instead of rename (391206f)
- graphManagement: default is ok when downloading (d23ada4)
1.95.0 (2024-11-28)
1.94.0 (2024-11-27)
Important
Updating to 1.94.0 require a manual operation to upgrade to virtuoso 7.2.14. Execute the following script before upgrade.
docker compose exec virtuoso sh
# on the virtuoso container
isql-v
# on the isql console
exec('checkpoint');
# back on the virtuoso container
rm virtuoso.trx
# back on host
docker compose up -d
- api/jowl: activate jowlServer when the enabled flag is true (b0c791b)
- mainapp: activate slsApi when the enabled flag is true (8a28581)
- compose: upgrade virtuoso version to 7.2.14 (218f9709)
1.93.1 (2024-11-25)
- package: restore node-graphviz in package.json (28fed65)
1.93.0 (2024-11-25)
- model/config: improve the readibility of the validation errors report (e51b4f2)
- model/config: do not retrieve empty values for the root category (255bb08)
1.92.0 (2024-11-20)
1.91.2 (2024-11-18)
1.91.1 (2024-11-18)
- public: use an empty list for the selector when the config is missing (7884c3d)
1.91.0 (2024-11-18)
- express: use zod to validate the mainConfig.json at startup (31f98d1)
- mainapp: update ElasticSearch indexes when uploading a graph (5ebd876)
- optional entries in mainconfig (b9566f5)
- public/vocables: sort tools selector from the tools_available field (37f7494)
- strict mainconfig validation (db19adf)
- configEditor: SourcesDialog: prefix must be uniq (99cab17)
- mainapp: ensure to checkout the plugin repository with an empty version (f6e7b0b)
- mainapp: show the reason of the error when a plugin cannot be fetched (2a6c0da)
1.90.0 (2024-10-22)
- mainapp: reload the sources in the window.Config constant (5876ba0)
1.89.0 (2024-10-18)
1.88.0 (2024-10-16)
Important
Updating to 1.88.0 require a data migration. Execute the following script after upgrade.
npm run migrate
- mainapp: add prefix field on SourcesDialog (e12c334)
- mainapp: add the Lineage Predicates accordion to Source form dialog (9261836)
- migrations: add prefix field in sources.json (e8950a1)
- mainapp: add the missing imports field in the Source form dialog (5d89cb8)
- mainapp: fix group validation (33f8134)
- mainapp: handle predicates correctly (7859f0b)
- mainapp: set error string to helperText (c741a88)
1.87.0 (2024-10-11)
- lineage: add edit source dialog (7940f8b)
- lineage: check if source is owned by user to show the edit source btn (3d6b53d)
- mainapp: move the UserSources delete dialog to a dedicated component (d9dd873)
- mainapp: rewrite the form to edit Source in the ConfigEditor (1ca4a35)
- public: use upload graph modal in onto creator (898e893)
1.86.3 (2024-10-01)
- api: add missing parameters in elasticsearch search query (ee798bc)
1.86.2 (2024-10-01)
- api: add route to perfom a batched search query on elasticsearch (53d6f44)
- vocables: use elastic/search api to search terms on multiple sources (1449b00)
1.86.1 (2024-09-30)
- graphManagement: preventDefault when submit upload/download form (76e0e06)
1.86.0 (2024-09-27)
Important
Updating to 1.86.0 require a data migration. Execute the following script after upgrade.
npm run migrate
- ConfigEditor: add AllowedTools in profiles table (3c8ea46)
1.85.0 (2024-09-23)
- api: add api/sources for user (7b9d068)
- mainapp: allow downloading graph management as csv (060b2d0)
- api/config: don't get all config even if user is admin (95af912)
- userManagement: use user routes for fetching sources (cba02fd)
1.84.1 (2024-09-30)
- graphManagement: preventDefault when submit upload/download form (333509a)
1.84.0 (2024-09-20)
1.83.0 (2024-09-17)
- mainapp: add snackbar messages with the token renewal in UserManagement (7c63fa2)
- mainapp: allow downloading individual db/source (4e0fdd6)
- mainapp: make json downloads prettier (73ef151)
- mainapp: move UserManagement in the main dialog (c336b18)
- mainapp: revamp the UserManagement to allow sources edition (1162940)
- model: load default graph on start (7f0c947)
- api: the token renewal needs to fetch the login identifier from the body (c3d00a1)
- app: check config.auth before isAuthenticated (345eab6)
- mainapp: use the repository object when updating Plugin Repository (a9a8721)
1.82.1 (2024-09-03)
- plugins route are create dynamically (740003e)
- req.isAuthenticated is a function and it must be called (df46ed2)
1.82.0 (2024-09-03)
- auth: implements Auth0 authentication strategy with passport (98005e7)
- auth: implements auth0 roles retrieving from API (cfb1770)
- mainapp: add json download for sources and databases (9f9ec2c)
- mainapp: replace filter autocomplete by input (e6596a4)
- packages: install the module passport-auth0 (a76ee05)
1.81.1 (2024-08-27)
Important
Updating to 1.81.1 require a data migration. Execute the following script after upgrade.
npm run migrate
1.81.0 (2024-08-26)
- api: add the routes to manage repositories of plugins (cadde8d)
- api: rename the admin endpoint /plugins to /plugins/config (9e08934)
- mainapp: allow to sort and filter the repositories table (75c095b)
- mainapp: implements the plugins repositories management interface (f3a93f2)
- mainapp: implements the repositories API with Plugin module (e575fd2)
- api: always fetch repositories (9416c8e)
- api: don't create symlink for multiple plugins repo (88ed68d)
- mainapp: add the name property on the PasswordField component (cd212f6)
- model: fetch, not pull plugins repo (97e296e)
- test: change tools number (f2fefae)
1.80.1 (2024-08-01)
- ConfigEditor: Missing Mui module usage with the SourcesTable component (cf66f00)
- ConfigEditor: Missins Mui module usage with CircularProgress (7e15474)
- ConfigEditor: the logs API will now return a message with 500 error (44b5113)
- model/profiles: load the config before setting the theme (ddc01df)
1.80.0 (2024-07-24)
- model/databases: use one connection when batchSelect (4ebb4e4)
- model/tools: only retrieve plugins directory when using git repo (ca629d9)
1.79.0 (2024-07-19)
- ConfigEditor: add an API entry to save the plugins configuration (b7100f1)
- configEditor: add the plugin tab (e3734c8)
- ConfigEditor: implements the PluginsForm (39cfc15)
- model/config: add readMainConfig function and use it (856b4b5)
- model/tools: convert the option during writeConfig (b7e189f)
- model/utils: add convertType function to cast string in JS types (ce3ccc9)
- model/tools: add the config property to all the plugins (dd3047a)
- tests: configure jest to use CONFIG_PATH environment variable (d8456aa)
1.78.2 (2024-07-11)
1.78.1 (2024-07-09)
- model/databases: use one connection when batchSelect (ce492ec)
1.78.0 (2024-07-04)
- add mainConfig.js model and allow editing settings (2f1e01a)
- center save button of Settings form (617a74f)
- ConfigEditor: add a settings tab to configure basic mainConfig options (cc9905a)
- extract tool logic into model/tools.js (a585c3d)
- mainapp: add a Tool.ts file to connect to admin/all-tools endpoint (f8615e7)
- make all known tools retrievable on admin/all-tools route (9f4998a)
- manage tools server side (6f5be84)
- remove dividers (4feaa9f)
- show feedback when saving settings (e0667af)
- use checkboxes to render settings Select options (5b5c287)
- add missing theme property to Profile type declaration (9d05bee)
- correct specification of Profile zod schema (39d22f0)
- pass models to model constructors and update tests (17466a7)
1.77.1 (2024-07-04)
- api: allow user to get rdf graphs (only allowed graphs) (a52db6a)
1.77.0 (2024-07-03)
- KGquery: Add a generic configuration to define links between tools (62573d1), closes #777
- tools: toTools is defined plugin side (a709430)
1.76.0 (2024-07-01)
- logs: don't zip old logs (f5aa6a7)
1.75.2 (2024-06-27)
- KGbuilder: batch select data in database (63c9120)
1.75.1 (2024-06-19)
1.75.0 (2024-06-19)
1.74.2 (2024-06-12)
1.74.1 (2024-06-12)
1.74.0 (2024-06-12)
- ConfigEditor: move all the promises in the same block (fe46d7e)
- ConfigEditor: store the tab index in the URL for futher usage (db9b8c4)
- graphManagement: set chunk size to 10Mo (1dac8f8)
- UI: set or replace tool params when a tool is selected (45154b9)
- prevent infinite rendering by moving state update outside of render flow (8bb95d2)
1.73.0 (2024-06-05)
- configEditor: Do not allow to publish source in PRIVATE group (2a69032)
- ConfigEditor: store database events in the main log (c900052)
- ConfigEditor: store profile events in the main log (b2195d2)
- ConfigEditor: store source events in the main log (db113d5)
- ConfigEditor: store user events in the main log (f7f179e)
- GraphManagement: write log events during upload and download process (e7bab68)
- logs: add action to logs (73fa031)
- logs: log tools with his source (if available) (3025b71)
- mainapp: add a function to write event in the vocables.log (b58ad96)
- migrations: add a field to vocables log (action) (0204031)
- responsive: remove useless logs (7796e01)
1.72.1 (2024-05-22)
1.72.0 (2024-05-21)
- api: add a route to retrieve the log from a period (8db082c)
- api: logs: add a query parameter to get a log file (cb2e590)
- ConfigEditor: add the possibility to visualize logs period (443bd57)
- logger: only keep 12 log files with winston (6c92247)
- logging: rotate logs every month (8e63158)
- migrations: migrate log files (9125f5d)
1.71.0 (2024-05-16)
- allow to configure tools served as plugins (534e902)
- configEditor: display graph size (1b9bca0)
- graphManagement: display graph size (a67628c)
- graphManagement: restore sorting table + add graph size sorting (3c0bbba)
- migrations: create a empty pluginsConfig file if not exists (f15323c)
- ConfigEditor: add the missing identifier header in DatabasesTable (b9300b5)
- ConfigEditor: do not crash when select the Source tab again (3200368)
- graphManagement: restore searchbar (0bb78d9)
1.70.2 (2024-05-02)
- api/health: remove sqlserver from health check (externaly managed now) (74dc868)
1.70.1 (2024-05-02)
- graphManagement: typo in infobox (178e95c)
1.70.0 (2024-04-30)
- GraphManagement: catch unexpected errors during upload/download (cb5b8fd), closes #701
- graphManagement: display message to warn user that upload/download can be long (7743566)
- GraphManagement: don't allow closing upload/download dialog while processing (a807c8a), closes #699
- GraphManagement: set upload to 95% during last post (9258bb9)
- GraphManagement: stop progressing to 100% inconditionally on download (f6403fd), closes #700
1.69.0 (2024-04-30)
1.68.1 (2024-04-29)
1.68.0 (2024-04-29)
1.67.0 (2024-04-26)
1.66.1 (2024-04-25)
1.66.0 (2024-04-25)
1.65.0 (2024-04-24)
- ConfigEditor: add missing sort column in database, profiles and users tables (e60ee4b)
- configEditor: set owner and published in source form (ef1d820)
- ConfigEditor: show the database identifier in the table (024165c)
- mainapp: migrate the GraphManagement component to MaterialUI (6c59daa)
- mainapp: migrate the kg-upload-app component to MaterialUI (50b0127)
- mainapp: migrate the UserManagement component to MaterialUI (32c2ec0)
- configEditor: fix group form (f18840a)
- model/users: getUserAccounts: don't return tokens (c886f72)
- remove a console.log (33a6a29)
- set owner=me and published=false if user is not admin (c83f0cc)
1.64.0 (2024-04-18)
1.63.1 (2024-04-17)
- add missing databases.json.default to config_templates (bab4c66)
- ConfigEditor: fix default theme being selected instead of current theme in profile form (a95c939)
- migration: use fast-glob instead of glob (10b25d6)
1.63.0 (2024-04-16)
- add the api routes and models for databases configuration (acc24aa)
- add the databases.json file to the config module (412ade9)
- api: add user databases route (aee6943)
- api: implements database management with kgcreator (6d1965d)
- api: move database api to admin section and resrict usage to admin (4a483a5)
- configEditor: cleanup the sourcesTable component and show the source group (e0d4104)
- configEditor: use the same interface for all the tabs (2eba224)
- database: allow to try database connection from the configEditor (06a9e5c)
- implements add and update database actions (09ad09d)
- implements the databases tab in the configEditor (09660e1)
- kgcreator: implement the new database system (b2310bc)
- kg: implements database management for KGBuilder (cd2f329)
- KG: start to works on knex integration for the KGCreator tool (196a0a5)
- mainapp: add the PasswordField component to the configEditor (c2fc82a)
- migration: migrate all config files (e55eae8)
- migrations: migrate databases (038f780)
- migrations: migrate mappings files (742f05d)
- migrations: migrate SQLServer from mainConfig.json to databases.json (e291c95)
- model/databases: add query method and use it in api/v1/admin/databases/test (fd93769)
- model: add an API route to retrieve a specific database (63628f8)
- api: remove the useless _type attribute from Database schema (f44cfcf)
- UserManagement: import after timeout (00b0261)
1.62.1 (2024-04-03)
- user/model: fix idAdmin method
1.62.0 (2024-04-03)
- CHANGELOG: fix duplicated release (63cf72f)
1.61.0 (2024-03-29)
- ConfigEditor: autocomplete group in the edit source form (dc610d7)
- configEditor: sort sources by graphURI and Groups (7e01253)
- configEditor: source is readOnly by default (af79e14)
- graphManagement: filter sources (4cd1d51)
- graphManagement: use mui table with sorting (1027a84)
- remove console.log (54aee8e)
- user/model: fix idAdmin method
- Rename KgqueryQueryTab.html to KGqueryQueryTab.html
- /api/v1/databases is restrictLoggedUser
- /api/v1/users/theme return defaultTheme if no theme is found
Important
Updating to 1.57 require a data migration. Execute the following script after upgrade.
npm run migrate
Important
Updating to 1.56 require a data migration. Execute the following script after upgrade.
npm run migrate
- Theme: Theme is set on user's profile
- GraphManagement -> Graphmanagement and TimeLine -> Timeline
- Configure default theme in
mainConfig.json
- Show/Hide theme selector in
mainConfig.json
Important
Updating to Unrelease require a data migration. Execute the following script after upgrade.
npm run migrate
Important
Updating to Unrelease require a data migration. Execute the following script after upgrade.
npm run migrate
- npm run migrate command to play migrations
- Add allowSourceCreation and maxNumberCreatedSource to users.json entries
- Add owner and published to sources.json entries
1.50.0 - 2023-12-22
- Add a button to copy the token in the clipboard
- Sort the sources list in the GraphManagement tool
1.49.0 - 2023-12-19
- Interface to manage token
- token are generated with ulid and hash of login to avoid collision
1.48.0 - 2023-12-18
- Use token to authenticate with API
- Use Authorization barear intead of x-token
1.47.1 - 2023-12-12
1.47.0 - 2023-12-12
1.46.2 - 2023-12-05
- Unit tests
1.46.1 - 2023-12-05
Important
Updating to Unrelease require a data migration. Execute the following script after upgrade.
node scripts/migrations/migration_1.45_users.js -f config/users/users.json -w
- GraphManagement using
sls-api
use the user token
1.46.0 - 2023-12-05
- GraphManagement tools: download and upload RDF graph
- Add new entries in
mainConfig.json
:souslesensUrlForVirtuoso
: Souslesens URL from virtuoso (optional, will usesouslesensUrl
if not defined)slsApi
:sls-api
info if an instance ofsls-api
is used.
Example:
"souslesensUrlForVirtuoso" : "http://host.docker.internal:3010",
"slsApi": {
"url": "http://localhost:8000"
}
1.45.0 - 2023-12-05
1.44.0 - 2023-11-27
Important
Updating to Unrelease require a data migration. Execute the following script after upgrade.
node scripts/migrations/migration_1.44_config.js -c config -w
- Remove
blender
field fromsources.json
- Remove
default_sparql_url
frommainConfig.json
1.43.1 - 2023-11-22
1.43.0 - 2023-11-20
- Add trailing / to COPY instruction in Dockerfile
- Disable name field when editing source/profile form
- Source form: group cannot start with a /
- Replace groups in the Users table with profiles
- Remove
blender
from profiles
- help button on all fields of the source form
1.42.3 - 2023-10-11
- KGcreator upload form is now displayed
1.42.2 - 2023-10-10
npm ci
install both node app and mainapp.
1.42.1 - 2023-10-10
- Remove unused
node-pty
from npm dependencies
1.42.0 - 2023-10-10
Important
This release change the npm
command to start the application. See package.json
and
README.md
to get the new commands
- Add
ElasticSearch.skipSslVerify
option to mainConfig.json to disable ssl check when using an ElasticSearch instance with self-signed certificate - This
CHANGELOG.md
- Rename
loginScheme
torestrictLoggedUser
- Use vitejs to build mainapp
- Reorder docker instruction to build image faster
- Change
npm
commands
Important
Updating to 1.37.0 require a data migration. Execute the following script after upgrade.
node scripts/migrations/migration_1.37_sources.js -c config -w
Important
Updating to 1.33.0 require a data migration. Execute the following script after upgrade.
node scripts/migrations/remove_admin_profile_migration.js -c config -w
Important
Updating to 1.30.0 require a data migration. Execute the following script after upgrade.
node scripts/migrations/controller-migration.js -c config -w
Important
Updating to 1.27.0 require a data migration. Execute the following script after upgrade.
node scripts/migrations/sources_access_control_migration_treeview.js -c config -w