Files
openstapps/backend/backend/CHANGELOG.md
Rainer Killinger 5050ac90eb docs: update changelogs for release
ci: publish release
2024-06-28 09:28:39 +02:00

20 KiB

@openstapps/backend

3.3.0

Minor 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 healthchecks
  • e8d72683: 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

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 cosmiconfig

    Configs 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.js helper in config/default/tools to include markdown files as text (see config/f-u/about-pages)

  • 64caebaf: Move project to a turbo monorepo & pnpm

    Internal dependencies are now defined using "@openstapps/package": "workspace:*"

    • Removed extraneous files from packages
      • .npmrc
      • .npmignore
      • .mailmap
      • .gitignore
      • CONTRIBUTING.md
      • LICENSE (Project license file is added upon publishing, see pnpm.io)
      • package-lock.json
      • .editorconfig
      • .eslintrc.json (moved eslint config to package.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 with pnpm deploy, as per package.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';
    
  • 64caebaf: Migrate to ESM

    CommonJS is no longer supported in any capacity. To use the new version, you will need to migrate your package to ESM. We recommend using tsup and Node 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 readFile or readFileSync towards fs/promises
    • Packages use native flatMap now
  • 0a7e6af1: Migrate es mapping types from es-mapping-generator to .d.ts next to generated mappings

  • 64caebaf: Migrate build system to tsup

    All packages now use an index.ts file to expose contents.

    You will need to migrate paths from import foo from '@scope/package/lib/foo to import foo from '@scope/package'

Minor Changes

  • 64caebaf: Migrate integration tests from docker-compose solution to a shell script

    api-cli no longer builds as a Docker container as a result.

  • 64caebaf: Migrate tests to C8/Chai/Mocha

    • @testdeck OOP 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-pool

    import {mapAsyncLimit} from '@openstapps/collection-utils';
    
    await mapAsyncLimit(
      [1, 2, 3],
      async it => {
        await someNetworkRequest(it);
      },
      5,
    );
    

Patch Changes

  • 64caebaf: Migrated changelogs to changeset format

    import 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 cosmiconfig

    Configs 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.js helper in config/default/tools to include markdown files as text (see config/f-u/about-pages)

  • 64caebaf: Move project to a turbo monorepo & pnpm

    Internal dependencies are now defined using "@openstapps/package": "workspace:*"

    • Removed extraneous files from packages
      • .npmrc
      • .npmignore
      • .mailmap
      • .gitignore
      • CONTRIBUTING.md
      • LICENSE (Project license file is added upon publishing, see pnpm.io)
      • package-lock.json
      • .editorconfig
      • .eslintrc.json (moved eslint config to package.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 with pnpm deploy, as per package.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';
    
  • 64caebaf: Migrate to ESM

    CommonJS is no longer supported in any capacity. To use the new version, you will need to migrate your package to ESM. We recommend using tsup and Node 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 readFile or readFileSync towards fs/promises
    • Packages use native flatMap now
  • 0a7e6af1: Migrate es mapping types from es-mapping-generator to .d.ts next to generated mappings

  • 64caebaf: Migrate build system to tsup

    All packages now use an index.ts file to expose contents.

    You will need to migrate paths from import foo from '@scope/package/lib/foo to import foo from '@scope/package'

Minor Changes

  • 64caebaf: Migrate integration tests from docker-compose solution to a shell script

    api-cli no longer builds as a Docker container as a result.

  • 64caebaf: Migrate tests to C8/Chai/Mocha

    • @testdeck OOP 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-pool

    import {mapAsyncLimit} from '@openstapps/collection-utils';
    
    await mapAsyncLimit(
      [1, 2, 3],
      async it => {
        await someNetworkRequest(it);
      },
      5,
    );
    

Patch Changes

  • 64caebaf: Migrated changelogs to changeset format

    import 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

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)