Skip to content

Commit ae29d81

Browse files
committed
Update releasenotes.md and versions.md
In passing, fix a javadoc typo
1 parent 2d02ff8 commit ae29d81

File tree

3 files changed

+98
-13
lines changed

3 files changed

+98
-13
lines changed

pljava-api/src/main/java/org/postgresql/pljava/Adjusting.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ public interface SetMethod<T>
255255
*<p>
256256
* When {@code get} is called, the head exception on the signaling list,
257257
* if any, is thrown. Otherwise, the head exception on the quiet list,
258-
* if any, is logged at [@code WARNING} level.
258+
* if any, is logged at {@code WARNING} level.
259259
*<p>
260260
* During a chain of adjustments, {@link #lax lax()} can be called to
261261
* tailor the handling of the quiet list. A {@code lax()} call applies

src/site/markdown/build/versions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ advances such as [class data sharing][cds].
2727
Some builds of Java 20 are affected by a bug, [JDK-8309515][]. PL/Java will
2828
report an error if detects it is affected by that bug, and the solution can be
2929
to use a Java version earlier than 20, or one recent enough to have the bug
30-
fixed.
30+
fixed. The bug is fixed in Java 21.
3131

3232
PL/Java has been successfully used with [Oracle Java][orj] and with
3333
[OpenJDK][], which is available with
@@ -67,6 +67,6 @@ The PL/Java 1.6 series does not support PostgreSQL earlier than 9.5.
6767
More current PostgreSQL versions, naturally, are the focus of development
6868
and receive more attention in testing.
6969

70-
PL/Java 1.6.5 has been successfully built and run on at least one platform
71-
with PostgreSQL versions from 15 to 9.5, the latest maintenance
70+
PL/Java 1.6.6 has been successfully built and run on at least one platform
71+
with PostgreSQL versions from 16 to 9.5, the latest maintenance
7272
release for each.

src/site/markdown/releasenotes.md.vm

Lines changed: 94 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,100 @@
1010
#set($ghbug = 'https://github.com/tada/pljava/issues/')
1111
#set($ghpull = 'https://github.com/tada/pljava/pull/')
1212

13+
$h2 PL/Java 1.6.6
14+
15+
This is the sixth minor update in the PL/Java 1.6 series. It adds support
16+
for PostgreSQL 16 and confirms compatibility with Java 21, and fixes some bugs,
17+
with few other notable changes. Further information on the changes may be found
18+
below.
19+
20+
$h3 Version compatibility
21+
22+
PL/Java 1.6.6 can be built against recent PostgreSQL versions including 16, and
23+
older ones back to 9.5, using Java SE 9 or later. The Java version used at
24+
runtime does not have to be the same version used for building. PL/Java itself
25+
can run on any Java version 9 or later. PL/Java functions can be
26+
written for, and use features of, whatever Java version will be loaded at run
27+
time. See [version compatibility][versions] for more detail.
28+
29+
Some builds of Java 20 are affected by a bug, [JDK-8309515][]. PL/Java will
30+
report an error if detects it is affected by that bug, and the solution can be
31+
to use a Java version earlier than 20, or one recent enough to have the bug
32+
fixed. The bug has been fixed in Java 21.
33+
34+
PL/Java 1.6.6 will definitely no longer build on PostgreSQL versions older
35+
than 9.5. It has made no attempt to support them since 1.6.0, and lingering
36+
conditional code for older versions has now been removed.
37+
38+
$h3 Changes
39+
40+
$h4 Changes in XML support
41+
42+
$h5 Java 17's standardized XML feature and property names added
43+
44+
Java 17 added standardized, easy-to-remember names for a number of features and
45+
properties the underlying XML implementations had formerly supported under
46+
implementation-specific names. PL/Java's `Adjusting.XML` API already needed to
47+
know those various other names, to attempt using them to configure the desired
48+
features and properties. Now it tries the new standard names too.
49+
50+
$h5 Better control when a feature or property can't be set as intended
51+
52+
The original documentation for the feature and property setters in the
53+
`Adjusting.XML` API said "the adjusting methods are best-effort and do not
54+
provide an indication of whether the requested adjustment was made". (At the
55+
same time, failures could produce voluminous output to the log.)
56+
57+
The new [`lax(boolean)`][adjlax] method offers more control. If not used,
58+
adjustment failures are logged (as before, but more compactly in the case of
59+
multiple failures in one sequence of adjustments). Or, `lax(true)` can be used
60+
to silently discard any failures up to that point in a sequence of adjustments,
61+
or `lax(false)` to have the exceptions chained together and thrown.
62+
63+
The addition of the new Java 17 standardized names can complicate
64+
version-agnostic configuration of other elements in the Java XML APIs, such as
65+
`Transformer`, that are not directly covered by PL/Java's
66+
`Adjusting.XML.Parsing` methods. Client code may find the new `Adjusting.XML`
67+
method [`setFirstSupported`][adjsfs] convenient for that purpose;
68+
[an example][egsfs] illustrates.
69+
70+
$h4 Packaging / testing
71+
72+
$h5 Support choice of `PGJDBC` or `pgjdbc-ng` in `Node`
73+
74+
The package jar produced as the last step of the build includes a
75+
[test harness](develop/node.html) similar to the `PostgresNode` Perl module.
76+
It formerly worked only with the `pgjdbc-ng` driver. Now it works with either
77+
`PGJDBC` or `pgjdbc-ng`, and provides features for writing test scripts that
78+
do not depend on the driver chosen.
79+
80+
$h4 Source code
81+
82+
* Minor changes to support PostgreSQL 16
83+
* Conditional code supporting PostgreSQL versions older than 9.5 removed
84+
* Old non-HTML5 elements (rejected by Javadoc 17 and later) removed from
85+
doc comments
86+
* The `pureNonVirtualCalled` method removed to quiet warnings from recent
87+
C compilers
88+
* Schema qualification in embedded SQL added to two operators that had been
89+
overlooked in the earlier round of adding such qualification
90+
$h3 Bugs fixed
91+
92+
* [`NEWLINE` pattern can fail to match](${ghbug}455)
93+
94+
[adjlax]: pljava-api/apidocs/org.postgresql.pljava/org/postgresql/pljava/Adjusting.XML.Parsing.html#method.summary
95+
[adjsfs]: pljava-api/apidocs/org.postgresql.pljava/org/postgresql/pljava/Adjusting.XML.html#method.detail
96+
[egsfs]: https://github.com/tada/pljava/blob/V1_6_6/pljava-examples/src/main/java/org/postgresql/pljava/example/annotation/PassXML.java#L528
97+
98+
## A nice thing about using Velocity is that each release can be entered at
99+
## birth using h2 as its main heading, h3 and below within ... and then, when
100+
## it is moved under 'earlier releases', just define those variables to be
101+
## one heading level finer. Here goes:
102+
#set($h2 = '###')
103+
#set($h3 = '####')
104+
#set($h4 = '#####')
105+
#set($h5 = '######')
106+
13107
$h2 PL/Java 1.6.5
14108

15109
This is the fifth minor update in the PL/Java 1.6 series. It adds support
@@ -99,15 +193,6 @@ Tim Van Holder, `aadrian`, `sincatter`, `tayalrun1`.
99193

100194
$h2 Earlier releases
101195

102-
## A nice thing about using Velocity is that each release can be entered at
103-
## birth using h2 as its main heading, h3 and below within ... and then, when
104-
## it is moved under 'earlier releases', just define those variables to be
105-
## one heading level finer. Here goes:
106-
#set($h2 = '###')
107-
#set($h3 = '####')
108-
#set($h4 = '#####')
109-
#set($h5 = '######')
110-
111196
$h2 PL/Java 1.6.4
112197

113198
This is the fourth minor update in the PL/Java 1.6 series. It is a minor

0 commit comments

Comments
 (0)