Skip to content

Releases: tada/pljava

PL/Java 1.6.4 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, aggregates, types, operators, etc. in Java.

1.6.4 is the fourth minor update in the 1.6 series, for applications on PostgreSQL 9.5 or later and Java 9 or later. Legacy applications requiring older PostgreSQL or Java versions are supported by the 1.5 series.

1.6.4 is a minor bug-fix release with few other notable changes. Further information on the changes may be found below.

Upcoming changes in Java beyond version 17 will affect PL/Java. For more on those changes and how PL/Java will adapt, please bookmark JEP 411 on the PL/Java wiki.

Current users of a 1.5.x release should also review the 1.6.0 release notes for changes that may require attention before updating to 1.6.x.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Selected changes

  • The recently-added support for functions with OUT parameters now generates the correct SQL declaration for a function with one OUT parameter.
  • A bug is fixed in the recently-added thread-context classloader management. It could be encountered in applications with jars in multiple schemas, nested Java function calls, and set-returning functions.

Please see the release notes for a more complete list of changes.

Availability:

1.6.4 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_6_4

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.6.3 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, aggregates, types, operators, etc. in Java.

1.6.3 is the third minor update in the 1.6 series, for applications on PostgreSQL 9.5 or later and Java 9 or later. Legacy applications requiring older PostgreSQL or Java versions are supported by the 1.5 series.

1.6.3 adds support for PostgreSQL 14, brings a few improvements to the annotation-driven SQL generator and the runtime, and fixes several bugs. It also begins preparation for the impact of changes to Java's permission enforcement coming in Java 17 and later with JEP 411.

For more on those upcoming changes in Java and how PL/Java will adapt, please bookmark JEP 411 on the PL/Java wiki.

Current users of a 1.5.x release should also review the 1.6.0 release notes for changes that may require attention before updating to 1.6.x.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Selected changes

  • Can generate a complete family of cross-type operators related by commutation and negation from a single Java method. A bug kept that from working in 1.6.2.

  • A method parameter can now be annotated so that the PostgreSQL function parameter will default to null. Formerly, only non-null defaults could be specified that way.

  • The current thread's context class loader now has a useful value on entry to a PL/Java function.

Please see the release notes for a more complete list of changes.

Availability:

1.6.3 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_6_3

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.5.8 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java. The 1.5 series supports legacy applications, with PostgreSQL support extending from 14 back to 8.2, and Java back to 8 (7 or 6 with some extra build effort). Its build system targets Java no later than 14, but once built, it can run on later versions.

For applications on PostgreSQL 9.5 or later and Java 9 or later, please consider the more actively developed PL/Java 1.6 series.

1.5.8 brings support for PostgreSQL 14, and fixes two bugs. It also begins preparation for the impact of changes to Java's permission enforcement coming in Java 17 and later with JEP 411.

For more on those upcoming changes in Java and how PL/Java will adapt, please read about JEP 411 on the PL/Java wiki.

Project site: http://tada.github.io/pljava/
Release notes: https://github.com/tada/pljava/blob/V1_5_8/src/site/markdown/releasenotes.md.vm

Availability:

1.5.8 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_5_8

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.6.2 (the Black Friday edition)

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java.

1.6.2 is the second minor update in the 1.6 series, for applications on PostgreSQL 9.5 or later and Java 9 or later. Legacy applications requiring older PostgreSQL or Java versions are supported by the 1.5 series.

1.6.2 fixes two bugs (one of which was likely to be a blocker for many applications). It adds a 'trial' security policy, useful when migrating code from PL/Java 1.5 to identify permission grants that may be needed, and some minor but useful example functionality.

Current users of a 1.5.x release should also review the 1.6.0 release notes for changes that may require attention before updating to 1.6.x.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Selected changes

  • A 'trial' security policy allows code under test to be run in a partially-enforcing mode to determine what permission grants, if any, may need to be added to the production policy.

  • Example functions demonstrating Java's built-in XSLT 1.0 support have been polished to simplify using it for real work. 1.0 is very limited compared to current XSLT versions, but requires no separate download, and Java's implementation can call accessible Java methods and constructors, offering ways around some limits of strict XSLT 1.0.

    One useful stocking-stuffer that results is a simple function to indent XML for readability, just passing a null transform name and indent => true to transformXML.

Please see the release notes for a more complete list of changes.

Availability:

1.6.2 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_6_2

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.6.1 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java.

1.6.1 is the first minor update in the 1.6 series, for applications on PostgreSQL 9.5 or later and Java 9 or later. Legacy applications requiring older PostgreSQL or Java versions are supported by the 1.5 series.

1.6.1 fixes two bugs in 1.6.0, and adds SQL generator support for aggregates, casts, operators, and function OUT parameters.

Current users of a 1.5.x release should also review the 1.6.0 release notes for changes that may require attention before updating to 1.6.x.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Selected changes

  • OUT parameters offer one more way to declare functions returning composite types, with less burden on callers than RETURNS RECORD and less ceremony than declaring a named composite type.

  • New Java source annotations @Aggregate, @Cast, @Operator further reduce the manual effort of maintaining SQL deployment scripts for the Java code.

Please see the release notes for a more complete list of changes.

Availability:

1.6.1 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_6_1

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.5.7 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java. The 1.5 series supports legacy applications, with PostgreSQL support extending from 13 back to 8.2, and Java from 14 back to 8 (7 or 6 with some extra build effort).

1.5.7 is a pure bugfix release correcting one bug in XML Schema handling for some non-en_US locales. Its features are otherwise identical to 1.5.6.

For applications on PostgreSQL 9.5 or later and Java 9 or later, please consider the PL/Java 1.6 series.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Availability:

1.5.7 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_5_7

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.6.0 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java.

1.6.0 is a notably refactored release that requires Java 9 or later and PostgreSQL 9.5 or later, and brings a number of changes from 1.5.x.

Current users of a 1.5.x release should review the 1.6.0 release notes for possibly necessary changes before updating to 1.6.0.

It includes configurable permissions (finer grained than just java versus javaU), a smarter SQL generator, and a much-improved build experience.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Selected changes

  • The Java permissions available to java and javaU functions can be tailored for each case. Language 'aliases' beyond those two can also be set up with CREATE LANGUAGE and have their own associated permissions.

  • The SQL generator no longer needs to be explicitly told about dependencies between a new type and the functions that use it, or are used in its implementation.

  • PL/Java functions can now be variadic.

  • The build system now takes pg_config values such as CFLAGS into account to match the compiler configuration used to build PostgreSQL.

  • Two continuous integration services now routinely build PL/Java for Linux (x86_64 and ppc64le), Mac OS X, and Windows (MinGW-w64 and MSVC), with results visible at GitHub.

Please see the release notes for a more complete list of changes.

Availability:

1.6.0 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_6_0

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.5.6 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java. 1.5.6 adds support for PostgreSQL 13 and a workaround for a build issue on EnterpriseDB 11.

It includes improvements to the java.sql.SQLXML API, an update of the ISO SQL/XML examples based on the Saxon product to Saxon 10, some improvements to internals, and a number of bug fixes.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Selected changes

  • The java.sql.SQLXML API now includes more adjustments to control behavior when processing documents that may be from untrusted sources: resource limits, control of resolution of external documents and entities, validation against a schema, and integration of an XML catalog to locally satisfy requests for external documents.

  • The optional ISO SQL/XML examples based on the Saxon library now use Saxon 10, which now includes support for XML Query higher-order functions in the freely-licensed Saxon-HE.

  • Interoperation between PostgreSQL and Java arrays, while still treating all PostgreSQL arrays as one-dimensional, has been improved. For arrays that correspond to Java primitive types, either a Java primitive array or its boxed counterpart can be used, and a boxed array can include nulls.

Please see the release notes for a more complete list of changes.

Availability:

1.5.6 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_5_6

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.5.5 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java. 1.5.5 supports PostgreSQL through 12 and Java through 13 at build time and run time.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Changes in 1.5.5

  • This is a pure bug-fix release that fixes runtime issues reported in 32-bit i386 builds, some of which would not affect a more common 64-bit architecture, but some of which could under the wrong circumstances, so this release should be used in preference to 1.5.4 or 1.5.3 on any architecture.

Other recent user-visible changes were announced in release 1.5.4 and release 1.5.3.

Please see the release notes for a more complete list of changes.

Availability:

1.5.5 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_5_5

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages

PL/Java 1.5.4 announced

Compare
Choose a tag to compare

PL/Java brings functions, triggers, and types in Java. 1.5.4 supports PostgreSQL through 12 and Java through 13 at build time and run time.

Project site: http://tada.github.io/pljava/
Release notes: http://tada.github.io/pljava/releasenotes.html

Changes in 1.5.4

  • This release follows closely on 1.5.3 to correct some reported build issues
    with Java 11 and 13.
  • A work-in-progress feature that can apply the SQLXML API to other
    tree-structured data types is introduced.
  • Documentation updates cover changes to Application Class Data Sharing in
    recent Hotspot versions, and ahead-of-time compilation using jaotc.

Other recent user-visible changes were announced in release 1.5.3.

Please see the release notes for a more complete list of changes.

Availability:

1.5.4 is available from GitHub as a source release, which builds quickly using Maven:

Release page: https://github.com/tada/pljava/releases/tag/V1_5_4

This wiki page will add links to prebuilt packages that become available:
https://github.com/tada/pljava/wiki/Prebuilt-packages