20 KiB
@openstapps/backend
3.3.0
Minor Changes
688bc5f2: v3.3.0 changes
Patch Changes
- Updated dependencies [
688bc5f2]- @openstapps/core@3.3.0
- @openstapps/core-tools@3.3.0
- @openstapps/logger@3.0.0
3.2.0
Minor Changes
912ae422: Add the ability to filter by existence of a field
Patch Changes
689ac68b: pin alpine version to 3.18 and add healthcheckse8d72683: Backend unit tests break every year- Updated dependencies [
912ae422]- @openstapps/core@4.0.0
- @openstapps/core-tools@3.0.0
- @openstapps/logger@3.0.0
3.1.2
Patch Changes
- Fix backend rejecting plugins
- Fix backend sliently falling back to default configs
3.1.1
Patch Changes
- Fix version history offered by backend
- Updated dependencies
- @openstapps/core@3.1.1
3.1.0
Minor Changes
06b8ca10: Add job portal feature
Patch Changes
- Updated dependencies [
06b8ca10]- @openstapps/core@3.1.0
3.0.1
Patch Changes
- Fix missing dependency
3.0.0
Major Changes
-
64caebaf: Migrate config system to cosmiconfigConfigs are now written using type-checked JavaScript
// @ts-check // This file is now type-safe just like TypeScript, but // without the compilation step /** @type {import('@openstapps/package').Type} */ const foo = {};You can write config files in JavaScript, JSON, or other cosmiconfig-supported formats.
The config files now are
backendrc.{js,json,...}elasticsearchrc.{js,json,...}prometheusrc.{js,json,...}
You can also split them into multiple files, as well as using the
markdown.jshelper inconfig/default/toolsto include markdown files as text (seeconfig/f-u/about-pages) -
64caebaf: Move project to a turbo monorepo & pnpmInternal dependencies are now defined using
"@openstapps/package": "workspace:*"- Removed extraneous files from packages
.npmrc.npmignore.mailmap.gitignoreCONTRIBUTING.mdLICENSE(Project license file is added upon publishing, see pnpm.io)package-lock.json.editorconfig.eslintrc.json(moved eslint config topackage.json).eslintignore.gitlab-ci.yml(Most workflows are workspace-level).gitlab/**(issue templates etc. are now workspace-level).dockerignore(Docker files are determined by which files are deployed withpnpm deploy, as perpackage.json/files)
- TSConfig has been moved to its own package (You can now use
"extends": "@openstapps/tsconfig") - Removed ESLint and Prettier peer dependency hell by injecting them through the
.pnpmfile.cjs - Added syncpack for keeping dependency versions in sync (and consistent key ordering in
package.json) - Replaced conventional changelog with changesets
- Apps with binaries now use a top level
app.js
#!/usr/bin/env node import './lib/app.js'; - Removed extraneous files from packages
-
64caebaf: Migrate to ESMCommonJS is no longer supported in any capacity. To use the new version, you will need to migrate your package to ESM. We recommend using
tsupandNode 18.{ "type": "module" } -
64caebaf: Migrate package to Node 18- Consumers of this package will need to migrate to Node 18 or higher.
- Packages have been migrated from promisified
readFileorreadFileSynctowardsfs/promises - Packages use native
flatMapnow
-
0a7e6af1: Migrate es mapping types from es-mapping-generator to .d.ts next to generated mappings -
64caebaf: Migrate build system totsupAll packages now use an
index.tsfile to expose contents.You will need to migrate paths from
import foo from '@scope/package/lib/footoimport foo from '@scope/package'
Minor Changes
-
64caebaf: Migrate integration tests from docker-compose solution to a shell scriptapi-clino longer builds as a Docker container as a result. -
64caebaf: Migrate tests to C8/Chai/Mocha@testdeckOOP testing has been removed.- Tests have been unified
- CommonJS module mocking has been replaced through refactoring of tests, as ES Modules cannot be mocked (do yourself a favor and don't try to mock them)
- C8 now replaces NYC as a native coverage tool
-
64caebaf: Migrate away from@krlwlfrt/async-poolimport {mapAsyncLimit} from '@openstapps/collection-utils'; await mapAsyncLimit( [1, 2, 3], async it => { await someNetworkRequest(it); }, 5, );
Patch Changes
-
64caebaf: Migrated changelogs to changeset formatimport fs from 'fs'; const path = 'packages/logger/CHANGELOG.md'; fs.writeFileSync(path, fs.readFileSync(path, 'utf8').replace(/^#+\s+\[/gm, '## [')); -
98546a97: Migrate away from @openstapps/configuration -
23481d0d: Update to TypeScript 5.1.6 -
Updated dependencies [
98546a97] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
1f62b5c5] -
Updated dependencies [
98546a97] -
Updated dependencies [
23481d0d] -
Updated dependencies [
0a7e6af1] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97]- @openstapps/core-tools@3.0.0
- @openstapps/logger@3.0.0
- @openstapps/core@3.0.0
3.0.0-next.4
Patch Changes
23481d0d: Update to TypeScript 5.1.6- Updated dependencies [
23481d0d]- @openstapps/core-tools@3.0.0-next.4
- @openstapps/logger@3.0.0-next.4
- @openstapps/core@3.0.0-next.4
3.0.0-next.0
Major Changes
-
64caebaf: Migrate config system to cosmiconfigConfigs are now written using type-checked JavaScript
// @ts-check // This file is now type-safe just like TypeScript, but // without the compilation step /** @type {import('@openstapps/package').Type} */ const foo = {};You can write config files in JavaScript, JSON, or other cosmiconfig-supported formats.
The config files now are
backendrc.{js,json,...}elasticsearchrc.{js,json,...}prometheusrc.{js,json,...}
You can also split them into multiple files, as well as using the
markdown.jshelper inconfig/default/toolsto include markdown files as text (seeconfig/f-u/about-pages) -
64caebaf: Move project to a turbo monorepo & pnpmInternal dependencies are now defined using
"@openstapps/package": "workspace:*"- Removed extraneous files from packages
.npmrc.npmignore.mailmap.gitignoreCONTRIBUTING.mdLICENSE(Project license file is added upon publishing, see pnpm.io)package-lock.json.editorconfig.eslintrc.json(moved eslint config topackage.json).eslintignore.gitlab-ci.yml(Most workflows are workspace-level).gitlab/**(issue templates etc. are now workspace-level).dockerignore(Docker files are determined by which files are deployed withpnpm deploy, as perpackage.json/files)
- TSConfig has been moved to its own package (You can now use
"extends": "@openstapps/tsconfig") - Removed ESLint and Prettier peer dependency hell by injecting them through the
.pnpmfile.cjs - Added syncpack for keeping dependency versions in sync (and consistent key ordering in
package.json) - Replaced conventional changelog with changesets
- Apps with binaries now use a top level
app.js
#!/usr/bin/env node import './lib/app.js'; - Removed extraneous files from packages
-
64caebaf: Migrate to ESMCommonJS is no longer supported in any capacity. To use the new version, you will need to migrate your package to ESM. We recommend using
tsupandNode 18.{ "type": "module" } -
64caebaf: Migrate package to Node 18- Consumers of this package will need to migrate to Node 18 or higher.
- Packages have been migrated from promisified
readFileorreadFileSynctowardsfs/promises - Packages use native
flatMapnow
-
0a7e6af1: Migrate es mapping types from es-mapping-generator to .d.ts next to generated mappings -
64caebaf: Migrate build system totsupAll packages now use an
index.tsfile to expose contents.You will need to migrate paths from
import foo from '@scope/package/lib/footoimport foo from '@scope/package'
Minor Changes
-
64caebaf: Migrate integration tests from docker-compose solution to a shell scriptapi-clino longer builds as a Docker container as a result. -
64caebaf: Migrate tests to C8/Chai/Mocha@testdeckOOP testing has been removed.- Tests have been unified
- CommonJS module mocking has been replaced through refactoring of tests, as ES Modules cannot be mocked (do yourself a favor and don't try to mock them)
- C8 now replaces NYC as a native coverage tool
-
64caebaf: Migrate away from@krlwlfrt/async-poolimport {mapAsyncLimit} from '@openstapps/collection-utils'; await mapAsyncLimit( [1, 2, 3], async it => { await someNetworkRequest(it); }, 5, );
Patch Changes
-
64caebaf: Migrated changelogs to changeset formatimport fs from 'fs'; const path = 'packages/logger/CHANGELOG.md'; fs.writeFileSync(path, fs.readFileSync(path, 'utf8').replace(/^#+\s+\[/gm, '## [')); -
98546a97: Migrate away from @openstapps/configuration -
Updated dependencies [
98546a97] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97] -
Updated dependencies [
0a7e6af1] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
64caebaf] -
Updated dependencies [
98546a97]- @openstapps/core-tools@3.0.0-next.0
- @openstapps/logger@3.0.0-next.0
- @openstapps/core@3.0.0-next.0
1.0.0 (2023-05-08)
Bug Fixes
- openapi docs generation (4ebe44a)
- rename deprecated Gitlab CI variables (3471591)
- semster boosting (515a6ee)
Features
- update to of elasticsearch 8.4 (c9b83b5)
0.6.0 (2023-01-30)
0.5.0 (2022-12-06)
0.4.1 (2022-11-02)
0.4.0 (2022-10-21)
0.3.1 (2022-09-02)
0.3.0 (2022-08-24)
0.2.0 (2022-08-22)
Bug Fixes
- update PAIA API URL (a20200e)
0.1.0 (2022-06-30)
Bug Fixes
- Add default configuration file for prometheus monitoring (7ed2921)
- add prefix to schema names (90822f5)
- apply correct types and tslint rules (0cbf9b2)
- automatically remove invalid characters for aliases generated from index names (6f7e23d)
- Don't force Mapping generation with 'npm start' (4cfb560)
- enhance default search query generation (24a9122)
- error thrown on consecutive connector executions (2259da3), closes #73
- esacpe mappin template filename (496e6c5)
- fix markdown formatting in config (9c5581a)
- fix reading url path as parameters (9b889c8)
- imports from src in config files lead to crash (f6003d7)
- invalid monthly cron execution time (7a9f3ea)
- make config compatible with core, update database version (f11376e)
- make facets work again (d917627)
- make index route work correctly (fa2c9d7)
- properly check if an object exists before update (e165837), closes #70
- remove onlyOnTypes from mustMatch (1d5f99b), closes #83
- replace isProductiveEnvironment with isTestEnvironment (8c48552)
- return syntax error when receiving bad json (12b71ba), closes #3
- return validation error instead of internal server error (24e27c1)
- route for news (7e35fae)
- set config file before accessing it (e17db52), closes #27
- stapps core version in config (32c8a21), closes #74
- take coordinates in right order (bb3be5a), closes #116
- use SCRequestBodyTooLargeError (e70e50a), closes #20
- use specific time from filter if defined (80e6249)
- wait for config file validation (30082f8)
- wrong way alias names are generated (9488451), closes #79
Features
- add backend (16bbb7e)
- add boosting to context based search (dd4be92)
- add catalog menu entry and rearrange (4e42772)
- add default app settings and menus (54301ae)
- add dummy about config (d6f126f)
- add favorites to personal menu (de0617b)
- add feedback to config as menu item (7ba6472)
- add functionality to register plugins via http (3d51ccf), closes #2 #37
- add hebis proxy url (ca1d244), closes #120
- add openapi docs generation to api (614a1b1)
- Add prometheus middleware to express (b42e911)
- add routes doc generation to npm documentation script (4a64f26)
- add schedule route (785813c)
- Add start-debug npm run script (23eb1e2)
- add support for generated elasticsearch mappings (8eab6b8), closes #38
- add support for multiple values in value filter (de60311)
- add support for new availability filter (47f3232)
- add support for range filters (dc16974)
- add support for range filters (dcf7906)
- adjust to changes of SCFacet in core v0.12.0 (2f13010), closes #30
- allow for searching illegal elasticsearch characters (b629d05)
- boost academic terms dynamically (13938ec)
- log registration and removal of plugins (006bbeb), closes #71
- make backend work with automatically generated aggregations (ba2c6f6)
- move EXTERNAL_REQUEST_TIMEOUT to config file (5d6d4b5)
- move up and enable cors (6483221)
- support geo shape filter (dd8a6b3)
- use config file for maxRequestBodySize (d110d60)
- use config for MultiSearchRoute (8278279)
- use new Elasticsearch package (1bad092)
- utilize api-cli for e2e integration test (ce06e73)