diff --git a/jOOQ-release/release/template/RELEASENOTES.txt b/jOOQ-release/release/template/RELEASENOTES.txt index acd4b55bd7..4edf2ee769 100644 --- a/jOOQ-release/release/template/RELEASENOTES.txt +++ b/jOOQ-release/release/template/RELEASENOTES.txt @@ -21,44 +21,46 @@ bring you even more compile-time typesafety on a record-level. In SQL, you can typesafely write +
SELECT * FROM t WHERE (t.a, t.b) = (1, 2) SELECT * FROM t WHERE (t.a, t.b) OVERLAPS (date1, date2) SELECT * FROM t WHERE (t.a, t.b) IN (SELECT x, y FROM t2) UPDATE t SET (a, b) = (SELECT x, y FROM t2 WHERE ...) INSERT INTO t (a, b) VALUES (1, 2) +In jOOQ, you can now (also typesafely!) write +
select().from(t).where(row(t.a, t.b).eq(1, 2)); // Type-check here: -----------------> ^^^^ - select().from(t).where(row(t.a, t.b).overlaps(date1, date2)); // Type-check here: ------------------------> ^^^^^^^^^^^^ - select().from(t).where(row(t.a, t.b).in(select(t2.x, t2.y).from(t2))); // Type-check here: -------------------------> ^^^^^^^^^^ - update(t).set(row(t.a, t.b), select(t2.x, t2.y).where(...)); // Type-check here: --------------> ^^^^^^^^^^ - insertInto(t, t.a, t.b).values(1, 2); // Type-check here: ---------> ^^^^ +This also applies for existing API, which doesn't involve row value expressions: +
select().from(t).where(t.a.eq(select(t2.x).from(t2)); // Type-check here: ---------------> ^^^^ - select().from(t).where(t.a.eq(any(select(t2.x).from(t2))); // Type-check here: -------------------> ^^^^ - select().from(t).where(t.a.in(select(t2.x).from(t2)); // Type-check here: ---------------> ^^^^ +And for UNIONs +
select(t1.a, t1.b).from(t1).union(select(t2.a, t2.b).from(t2)); // Type-check here: -------------------> ^^^^^^^^^^ +These type-checks are preformed by your Java compiler, considering the generic type information of your SQL statement's Record data types. These include: diff --git a/jOOQ-website/inc/RELEASENOTES-3.0.txt b/jOOQ-website/inc/RELEASENOTES-3.0.txt index acd4b55bd7..4edf2ee769 100644 --- a/jOOQ-website/inc/RELEASENOTES-3.0.txt +++ b/jOOQ-website/inc/RELEASENOTES-3.0.txt @@ -21,44 +21,46 @@ bring you even more compile-time typesafety on a record-level. In SQL, you can typesafely write +
SELECT * FROM t WHERE (t.a, t.b) = (1, 2) SELECT * FROM t WHERE (t.a, t.b) OVERLAPS (date1, date2) SELECT * FROM t WHERE (t.a, t.b) IN (SELECT x, y FROM t2) UPDATE t SET (a, b) = (SELECT x, y FROM t2 WHERE ...) INSERT INTO t (a, b) VALUES (1, 2) +In jOOQ, you can now (also typesafely!) write +
select().from(t).where(row(t.a, t.b).eq(1, 2)); // Type-check here: -----------------> ^^^^ - select().from(t).where(row(t.a, t.b).overlaps(date1, date2)); // Type-check here: ------------------------> ^^^^^^^^^^^^ - select().from(t).where(row(t.a, t.b).in(select(t2.x, t2.y).from(t2))); // Type-check here: -------------------------> ^^^^^^^^^^ - update(t).set(row(t.a, t.b), select(t2.x, t2.y).where(...)); // Type-check here: --------------> ^^^^^^^^^^ - insertInto(t, t.a, t.b).values(1, 2); // Type-check here: ---------> ^^^^ +This also applies for existing API, which doesn't involve row value expressions: +
select().from(t).where(t.a.eq(select(t2.x).from(t2)); // Type-check here: ---------------> ^^^^ - select().from(t).where(t.a.eq(any(select(t2.x).from(t2))); // Type-check here: -------------------> ^^^^ - select().from(t).where(t.a.in(select(t2.x).from(t2)); // Type-check here: ---------------> ^^^^ +And for UNIONs +
select(t1.a, t1.b).from(t1).union(select(t2.a, t2.b).from(t2)); // Type-check here: -------------------> ^^^^^^^^^^ +These type-checks are preformed by your Java compiler, considering the generic type information of your SQL statement's Record data types. These include: diff --git a/jOOQ-website/inc/RELEASENOTES.txt b/jOOQ-website/inc/RELEASENOTES.txt index acd4b55bd7..4edf2ee769 100644 --- a/jOOQ-website/inc/RELEASENOTES.txt +++ b/jOOQ-website/inc/RELEASENOTES.txt @@ -21,44 +21,46 @@ bring you even more compile-time typesafety on a record-level. In SQL, you can typesafely write +
SELECT * FROM t WHERE (t.a, t.b) = (1, 2) SELECT * FROM t WHERE (t.a, t.b) OVERLAPS (date1, date2) SELECT * FROM t WHERE (t.a, t.b) IN (SELECT x, y FROM t2) UPDATE t SET (a, b) = (SELECT x, y FROM t2 WHERE ...) INSERT INTO t (a, b) VALUES (1, 2) +In jOOQ, you can now (also typesafely!) write +
select().from(t).where(row(t.a, t.b).eq(1, 2)); // Type-check here: -----------------> ^^^^ - select().from(t).where(row(t.a, t.b).overlaps(date1, date2)); // Type-check here: ------------------------> ^^^^^^^^^^^^ - select().from(t).where(row(t.a, t.b).in(select(t2.x, t2.y).from(t2))); // Type-check here: -------------------------> ^^^^^^^^^^ - update(t).set(row(t.a, t.b), select(t2.x, t2.y).where(...)); // Type-check here: --------------> ^^^^^^^^^^ - insertInto(t, t.a, t.b).values(1, 2); // Type-check here: ---------> ^^^^ +This also applies for existing API, which doesn't involve row value expressions: +
select().from(t).where(t.a.eq(select(t2.x).from(t2)); // Type-check here: ---------------> ^^^^ - select().from(t).where(t.a.eq(any(select(t2.x).from(t2))); // Type-check here: -------------------> ^^^^ - select().from(t).where(t.a.in(select(t2.x).from(t2)); // Type-check here: ---------------> ^^^^ +And for UNIONs +
select(t1.a, t1.b).from(t1).union(select(t2.a, t2.b).from(t2)); // Type-check here: -------------------> ^^^^^^^^^^ +These type-checks are preformed by your Java compiler, considering the generic type information of your SQL statement's Record data types. These include: diff --git a/jOOQ-website/notes.php b/jOOQ-website/notes.php index 1784457878..041d16a6bf 100644 --- a/jOOQ-website/notes.php +++ b/jOOQ-website/notes.php @@ -107,7 +107,7 @@ function printContent() { function markup($value) { $value = htmlentities($value); - $value = preg_replace('%<pre>%', '
', $value);
+ $value = preg_replace('%<pre( class="(.*?)")?>%', '', $value);
$value = preg_replace('%</pre>%', '', $value);
$value = preg_replace('%(https?://\S+)%', '$1', $value);
return $value;