Description
In version v0.6 a part of the extension depends on functionality introduced with utPLSQL version 3.0.4.
It is expected that an official API will be introduced in a future utPLSQL version (>3.1.2) to replace the functionality provided by the UT_ANNOTATION_MANAGER
package.
The following version numbers are used in released versions of utPLSQL:
Date | Name | Value of UT.VERSION |
---|---|---|
2017-01-18 | v3.0.0.0-Alpha1 | |
2017-05-15 | v3.0.0-beta | utPLSQL - Version v3.0.0.708-beta |
2017-05-18 | utPLSQL v3.0.0 | utPLSQL - Version v3.0.0 |
2017-06-14 | utPLSQL v3.0.1 | utPLSQL - Version v3.0.1.798 |
2017-07-18 | utPLSQL v3.0.2 | utPLSQL - Version v3.0.2.938 |
2017-08-30 | utPLSQL v3.0.3 | v3.0.3.1266 |
2017-11-03 | utPLSQL v3.0.4 | v3.0.4.1372 |
2018-04-25 | utPLSQL v3.1.0 | v3.1.0.1849-develop |
2018-04-29 | utPLSQL v3.1.1 | v3.1.1.1868 |
2018-07-22 | utPLSQL v3.1.2 | v3.1.2.2134 |
... | ... | ... |
Instead of querying for the existence of UT_ANNOTATION_MANAGER
the return value of the function UT.VERSION
should be used to determine if a certain feature is available or not. Versions of utPLSQL without a UT.VERSION
function are not supported (e.g. v3.0.0.0-Alpha1).
Features are disabled if not available in a version (context menus, oddgen generators) and a error message is written to the error log (visible in the logging pane). If not feasible an error message is shown when executing an enabled but not supported feature.
Activity
pesse commentedon Oct 26, 2018
We already have a solution for "Optional Features" in java-API:
https://github.com/utPLSQL/utPLSQL-java-api/blob/develop/src/main/java/org/utplsql/api/compatibility/OptionalFeatures.java
Would be easy to add
ANNOTATION_MANAGER
which requires 3.0.4.1372 or higher.You can also use the Version-Object (https://github.com/utPLSQL/utPLSQL-java-api/blob/develop/src/main/java/org/utplsql/api/Version.java) for easier Version comparison/handling.
They can either be instantiated with a String or you can use
DatabaseInformation.getUtPlsqlFrameworkVersion()
to get the Version-Object from given Connection.PhilippSalvisberg commentedon Oct 26, 2018
I think we should provide make a wrapper of
UT_ANNOTATION_MANAGER
part of the the core API first. Providing internals should not become part of the Java API.I'd like to get rid of the use of
UT_ANNOTATION_MANAGER
a.s.a.p. Once an adequate functionality is available in the core, I will adapt this extension accordingly. Then I will decide if I base the solution on the Java API (additional dependency) or the PL/SQL API.However, the
getUtplsqlFrameworkVersion()
is nice.