Releases: exasol/extension-manager-interface
0.4.3: Improve virtual schema name parameter
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
Dependency Updates
Development Dependency Updates
- Added
typescript-eslint:^7.8.0
0.4.2: Improve error message for existing virtual schema
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
to5.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
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
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 SCRIPT
s, 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
to5.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
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
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
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
to5.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
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
to5.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
Summary
This release contains the following changes:
- Remove the
instanceParameters
field from theInstallation
interface - Add function
getInstanceParameters()
function - Rename function
readInstanceParameters()
toreadInstanceParameterValues()
- Add parameter
extensionVersion
to functionreadInstanceParameterValues()
- Add parameter
extensionVersion
to functiondeleteInstance()
- Update type of the
options
field ofSelectParameter
from a map to a list of objects - The
installableVersions
now is a list ofExtensionVersion
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
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 ofInstallation
Features
- #31: Refactored uninstall function