Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#51: Added support for JDBC based extensions #52

Merged
merged 4 commits into from
Nov 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions doc/changes/changelog.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 21 additions & 0 deletions doc/changes/changes_0.4.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Extension Manager Interface 0.4.1, released 2023-11-09

Code name: 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`
146 changes: 73 additions & 73 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@exasol/extension-manager-interface",
"version": "0.4.0",
"version": "0.4.1",
"main": "dist/api.js",
"types": "dist/api.d.ts",
"description": "Interface for extensions for the Exasol extension manager.",
Expand All @@ -14,9 +14,9 @@
},
"devDependencies": {
"@jest/globals": "^29.7.0",
"@typescript-eslint/eslint-plugin": "^6.9.1",
"@typescript-eslint/parser": "^6.9.1",
"eslint": "^8.52.0",
"@typescript-eslint/eslint-plugin": "^6.10.0",
"@typescript-eslint/parser": "^6.10.0",
"eslint": "^8.53.0",
"jest": "^29.7.0",
"ts-jest": "^29.1.1",
"ts-node": "^10.9.1",
Expand Down
10 changes: 4 additions & 6 deletions src/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { BadRequestError, NotFoundError, PreconditionFailedError } from "./error
import { ExaMetadata } from "./exasolSchema";
import { Parameter } from "./parameters";

export const CURRENT_API_VERSION = "0.4.0";
export const CURRENT_API_VERSION = "0.4.1";

/**
* This class represents an extension that can be installed and managed with the extension-manager.
Expand Down Expand Up @@ -182,12 +182,10 @@ export interface ParameterValue {
export interface BucketFSUpload {
/** Human-readable name or short description of the file */
name: string
downloadUrl: string
licenseUrl: string
/** Default: false */
licenseAgreementRequired?: boolean
downloadUrl?: string
licenseUrl?: string
bucketFsFilename: string
/** File size in bytes */
/** File size in bytes. Use `-1` to make Extension Manager ignore the file size. */
fileSize: number
}

Expand Down
4 changes: 2 additions & 2 deletions src/base-vs/test-vs-utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ export function emptyBaseVsExtension(): JavaVirtualSchemaBaseExtension {
version: "v0",
category: "test-category",
description: "Testing base extension",
file: {
files: [{
name: "test-ext.jar",
size: 12345
},
}],
scripts: [{ name: adapterName, type: "SCALAR", parameters: "...", emitParameters: "...", scriptClass: "com.exasol.TestingAdapter" }],
scriptVersionExtractor: () => successResult("dummy version"),
virtualSchemaAdapterScript: adapterName,
Expand Down
Loading