Skip to content

Releases: exasol/extension-manager-interface

0.4.3: Improve virtual schema name parameter

27 May 06:56
ebeb1ce
Compare
Choose a tag to compare

Summary

This release improves name and regular expression for the virtual schema name parameter in the virtual schema base extensions. The new regular expression now forbids leading underscores _ and numbers because the Exasol DB does not support these names.

This release also reduces code duplication by generating version.ts containing the version number from package.json.

The release enforces naming conventions for extension parameters. To avoid issues with form IDs in Angular applications, parameter IDs must not contain a dot .. To verify that extensions conform to this and other conventions, please call the following function in the extension test:

import { testJavaVirtualSchemaBaseExtension } from '@exasol/extension-manager-interface/dist/base-vs-test/vsTestBase';
import { createExtension } from "./extension";

// ...

testJavaVirtualSchemaBaseExtension(createExtension);

See the readme for details.

Bugfixes

  • #56: Restricted pattern for parameter virtual schema name

Refactoring

  • #36: Generated API version from package.json
  • #59: Enforced naming conventions for parameter IDs

Dependency Updates

Development Dependency Updates

  • Added typescript-eslint:^7.8.0

0.4.2: Improve error message for existing virtual schema

07 May 07:03
30134e6
Compare
Choose a tag to compare

Summary

This release checks if a virtual schema already exists with the same name (case-insensitive) before creating a new one. This improves the error message for the user.

The test is case-insensitive because we create a new CONNECTION for virtual schemas based on the virtual schema name, and Exasol CONNECTION names are also case-insensitive.

Bugfix

  • #54: Improved error handling for creating a virtual schema

Dependency Updates

Development Dependency Updates

  • Updated eslint:^8.53.0 to ^8.57.0
  • Updated @typescript-eslint/parser:^6.10.0 to ^7.8.0
  • Updated ts-jest:^29.1.1 to ^29.1.2
  • Updated typescript:5.2.2 to 5.4.5
  • Updated @typescript-eslint/eslint-plugin:^6.10.0 to ^7.8.0
  • Updated ts-node:^10.9.1 to ^10.9.2

0.4.1: Support JDBC based extensions

09 Nov 15:20
280bcab
Compare
Choose a tag to compare

Summary

This release adds support for JDBC based virtual schema extensions that use two separate JARs: the adapter and the JDBC driver. The base extension allows specifying multiple files that are then all included in the ADAPTER SCRIPT definition as %jar directives.

The release also allows extensions to ignore the file size for JDBC driver JAR files by omitting the file size.

Features

  • #51: Added support for JDBC based extensions

Dependency Updates

Development Dependency Updates

  • Updated eslint:^8.52.0 to ^8.53.0
  • Updated @typescript-eslint/parser:^6.9.1 to ^6.10.0
  • Updated @typescript-eslint/eslint-plugin:^6.9.1 to ^6.10.0

0.4.0: Simplify Virtual Schema Extensions

03 Nov 08:53
4f0f1e2
Compare
Choose a tag to compare

Summary

This release simplifies creating extension definitions for Java-based virtual schemas. To use it, simply create your ExasolExtension by calling convertVirtualSchemaBaseExtension(baseExtension: JavaVirtualSchemaBaseExtension). This works similar to convertBaseExtension(baseExtension: JavaBaseExtension) for Java-based script extensions. No need to implement all extension methods yourself, just configure required SCRIPTs, CONNECTION parameters and VIRTUAL SCHEMA properties. See the the S3 Virtual Schema extension updated in #139 as an example.

Features

  • #49: Extracted common code for virtual schema extensions

Dependency Updates

Development Dependency Updates

  • Updated eslint:^8.47.0 to ^8.52.0
  • Updated @jest/globals:^29.6.3 to ^29.7.0
  • Updated @typescript-eslint/parser:^6.4.1 to ^6.9.1
  • Updated typescript:5.1.6 to 5.2.2
  • Updated @typescript-eslint/eslint-plugin:^6.4.1 to ^6.9.1
  • Updated jest:^29.6.3 to ^29.7.0

0.3.1: Simplify Java Extensions

24 Aug 08:16
b44160d
Compare
Choose a tag to compare

Summary

This release adds a module that simplifies writing Java-based extensions and avoids code duplication.

Features

  • #47: Added common code for extensions

Dependency Updates

Development Dependency Updates

  • Updated eslint:^8.45.0 to ^8.47.0
  • Added @jest/globals:^29.6.3
  • Updated @typescript-eslint/parser:^6.2.0 to ^6.4.1
  • Updated @typescript-eslint/eslint-plugin:^6.2.0 to ^6.4.1
  • Updated jest:^29.6.2 to ^29.6.3
  • Removed @types/jest:^29.5.3

0.3.0: Upgrade extensions

27 Jul 14:27
358a844
Compare
Choose a tag to compare

Summary

This release allows extensions to upgrade their installations to the latest version by implementing the upgrade() function.

The release also allows extensions to read from table SYS.EXA_ALL_SCRIPTS using context.metadata.getScriptByName('name').

Features

  • #44: Added support for upgrading extensions

Dependency Updates

Development Dependency Updates

  • Added eslint:^8.45.0
  • Updated @typescript-eslint/parser:^5.60.1 to ^6.2.0
  • Updated ts-jest:^29.1.0 to ^29.1.1
  • Updated @types/jest:^29.5.2 to ^29.5.3
  • Updated @typescript-eslint/eslint-plugin:^5.60.1 to ^6.2.0
  • Updated jest:^29.5.0 to ^29.6.2

0.2.0: Extension Categories

29 Jun 12:10
e84ed10
Compare
Choose a tag to compare

Summary

This release adds a field for a category to the extension. This allows extensions to specify a category like "virtual schema" or "cloud storage".

Features

  • #42: Added category field

Dependency Updates

Development Dependency Updates

  • Updated @typescript-eslint/parser:^5.57.0 to ^5.60.1
  • Updated @types/jest:^29.5.0 to ^29.5.2
  • Updated typescript:5.0.3 to 5.1.6
  • Updated @typescript-eslint/eslint-plugin:^5.57.0 to ^5.60.1

0.1.16: Upgrade dependencies on top of 0.1.15

04 Apr 06:20
ad8126d
Compare
Choose a tag to compare

Summary

This release fixes CVE-2022-46175 in build time dependency json5 and adds project-keeper.

Bugfixes

  • #38: Upgraded dependencies & added project-keeper

Refactoring

  • #3: Automated release process

Dependency Updates

Development Dependency Updates

  • Updated @typescript-eslint/parser:^5.31.0 to ^5.57.0
  • Updated ts-jest:^28.0.8 to ^29.1.0
  • Updated @types/jest:^28.1.8 to ^29.5.0
  • Updated typescript:4.8.2 to 5.0.3
  • Updated jest:^28.1.3 to ^29.5.0
  • Updated @typescript-eslint/eslint-plugin:^5.31.0 to ^5.57.0

0.1.15: Get parameters

16 Sep 13:12
c7467e3
Compare
Choose a tag to compare

Summary

This release contains the following changes:

  • Remove the instanceParameters field from the Installation interface
  • Add function getInstanceParameters() function
  • Rename function readInstanceParameters() to readInstanceParameterValues()
  • Add parameter extensionVersion to function readInstanceParameterValues()
  • Add parameter extensionVersion to function deleteInstance()
  • Update type of the options field of SelectParameter from a map to a list of objects
  • The installableVersions now is a list of ExtensionVersion objects instead of strings
  • Added error NotFoundError with status 404

Features

  • #34: Added request for getting parameters of an extension, mark versions as deprecated/latest

0.1.14: Uninstall extension

13 Sep 07:29
2d7ecee
Compare
Choose a tag to compare

Extension Manager Interface 0.1.14, released 2022-09-13

Code name: Uninstall extension

Summary

This release contains the following changes:

  • uninstall() function now gets the extension version as argument instead of Installation

Features

  • #31: Refactored uninstall function