Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [rdf4j-dev] Breaking change in latest minor release (4.3.0)?
  • From: "Bart Hanssens (BOSA)" <bart.hanssens@xxxxxxxxxxxx>
  • Date: Sun, 21 May 2023 11:54:39 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bosa.fgov.be; dmarc=pass action=none header.from=bosa.fgov.be; dkim=pass header.d=bosa.fgov.be; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LFKkcjeuCAhcOcCoJ2zBlTXcepemGdqXZhb/hBSsR1E=; b=ibQi7SbHRY2/FrRW77y2IU6PPYRFgZCVjdVHS9s0YlHEBVAzvx1SWWCeAOrfrRRPqTLQnH5L0K4octjV4boF0pGJIaMYBMXRC8F0G27lj/0cIwCIS4p8frBTwp5zIOu0ts8zODaliZ1HhTONrhXtYLkbdE1z0IWbhGssoiQMn4BkB3TybPR3uOCHx0ez8YKx1Wtn31+/R+yUmzKOlC03zhbCdJYebrhh2xmAnQ94BExry6HpCaOLi00V2YhUgK4sGcdeChhEfsNeT2uLunSpxgBvhQeTq3uQykk/TYi731rbAY7ZD0L8dzmO3wgv8gQX5uKU8L2lA2NUtmqyUM2TOw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Mz/oLH0fbFsslJkIYrio6pFs+Xk+0nnVIGrlmptOv4MDMyn/nw5MxWFkZvrHOwewlhRQwSKotOzaWrQWBE36WWUKVnOXA5ltaJnuPdyUFV5LlawX83ufWcBIuyUXCKNdbnSE1S3p84p5QmSDzqhWMu9mKS6IZZ9BtTNwHh+dn5wf9GvngFYv1hQjnZ9XUj8xsS3W65ihPSdthBV8EPKAZzicYi8/9UFbQh43eA4mMjMiTHPM5YbMsD0RcgijYlMdBywIwW4bn1MtwI5vwULHt12ZCiW746lweL9Jy7hsnx3nXqrVbl9TTaIzO5OfM3+iK89QW3ppZhotA9+6x8DoLg==
  • Delivered-to: rdf4j-dev@xxxxxxxxxxx
  • List-archive: <https://www.eclipse.org/mailman/private/rdf4j-dev/>
  • List-help: <mailto:rdf4j-dev-request@eclipse.org?subject=help>
  • List-subscribe: <https://www.eclipse.org/mailman/listinfo/rdf4j-dev>, <mailto:rdf4j-dev-request@eclipse.org?subject=subscribe>
  • List-unsubscribe: <https://www.eclipse.org/mailman/options/rdf4j-dev>, <mailto:rdf4j-dev-request@eclipse.org?subject=unsubscribe>
  • Thread-index: AQHZiyxW84CA2lCOtEeUbvzUU2xOZa9jQfgAgAAEjgCAADcUsIAAARUAgAAJ/4CAAQ0lgIAAA6oAgAAEo/A=
  • Thread-topic: [rdf4j-dev] Breaking change in latest minor release (4.3.0)?

So uhm, full rollback ?

The original idea was to make it a bit easier to have different parsers/writers for the same serialization format, in particular JSON-LD

(otherwise some dependencies will trickle down via the helpers package)

But if the idea would be to switch to Titanium JSON-LD library in 5.0 and remove the current (unmaintained ?) JSON-LD Java library,

moving the settings might not be worth the effort …

 

Best regards,

 

Bart

 

From: rdf4j-dev <rdf4j-dev-bounces@xxxxxxxxxxx> On Behalf Of Erik Godding Boye
Sent: zondag 21 mei 2023 13:32
To: rdf4j developer discussions <rdf4j-dev@xxxxxxxxxxx>
Subject: Re: [rdf4j-dev] Breaking change in latest minor release (4.3.0)?

 

I agree, at least to a certain extent. Deprecating something without a migration/replacement is not very user-friendly, and will create a lot of "noise" (deprecation warnings that a user cannot do anything about). I tried to come up with something that allowed us to fulfill Barts intensions in the PR, but enums I Java are extremely painful, and should not be used in a public API IMO. I am working a lot with Kuberntes controllers, and even if enums also exists in Golang, it is NOT recommended to use them in an API.

 

Erik

 

On Sun, May 21, 2023 at 1:19 PM Håvard Ottestad <hmottestad@xxxxxxxxx> wrote:

I took a look at the PR where the various parser/writer settings are deprecated and I’m a bit worried about there being side effects that are hard to predict if the code assumes that the new settings are used instead of the deprecated ones. It’s also hard for me to see how it would affect classes that are extending the current parsers and writers. 

 

We haven’t published a news item about the current release, so I’m inclined to remove the new settings and just keep the deprecations. That will make 5.0.0 a bit more of a hard transition, but at least we don’t inadvertently break something in 4.3. I can’t really unpublish the 4.3.0 release, but I think that if we release 4.3.1 asap and then note in the release notes that we recommend using 4.3.1 instead of 4.3.0 it should be fine. 

 

Håvard



On 20 May 2023, at 21:16, Erik Godding Boye <egboye@xxxxxxxxx> wrote:



Here is a PR to fix the issue: https://github.com/eclipse/rdf4j/pull/4578 PTAL!

 

On Sat, May 20, 2023 at 8:40 PM Erik Godding Boye <egboye@xxxxxxxxx> wrote:

I have a simple reproducer test here: https://github.com/eclipse/rdf4j/pull/4578

 

Any idea how to fix this?

 

On Sat, May 20, 2023 at 8:38 PM Bart Hanssens (BOSA) via rdf4j-dev <rdf4j-dev@xxxxxxxxxxx> wrote:

Hmz, existing code should still work, the idea is to deprecate the settings in the helper packages (to be removed in 5.0),

and move them to parser-specific ones

 

Bart

 

From: rdf4j-dev <rdf4j-dev-bounces@xxxxxxxxxxx> On Behalf Of Erik Godding Boye
Sent: zaterdag 20 mei 2023 17:19
To: rdf4j developer discussions <rdf4j-dev@xxxxxxxxxxx>
Subject: Re: [rdf4j-dev] Breaking change in latest minor release (4.3.0)?

 

It seems like the classes are duplicated, and I think the relevant changes are in this PR: https://github.com/eclipse/rdf4j/pull/4332

 

No compiler error, but one of our tests were failing with the following error:

 

30261 [ERROR] verifyDatatypeReasoning  Time elapsed: 0.026 s  <<< ERROR!
java.lang.ClassCastException: class org.eclipse.rdf4j.rio.helpers.JSONLDMode cannot be cast to class org.eclipse.rdf4j.rio.jsonld.JSONLDMode (org.eclipse.rdf4j.rio.helpers.JSONLDMode and org.eclipse.rdf4j.rio.jsonld.JSONLDMode are in unnamed module of loader 'app')
at no.statnett.rdf4j.rio.DatatypeReasonerRDFHandlerTest.verifyDatatypeReasoning(DatatypeReasonerRDFHandlerTest.java:54)

 

On Sat, May 20, 2023 at 5:03 PM Håvard Ottestad <hmottestad@xxxxxxxxx> wrote:

It’s a bit hard to read the diff in an email, but it looks like a package has moved?

-import org.eclipse.rdf4j.rio.helpers.JSONLDMode;
-import org.eclipse.rdf4j.rio.helpers.JSONLDSettings;
+import org.eclipse.rdf4j.rio.jsonld.JSONLDMode;
+import org.eclipse.rdf4j.rio.jsonld.JSONLDSettings;

Håvard

> On 20 May 2023, at 16:52, Erik Godding Boye <egboye@xxxxxxxxx> wrote:
>
> 
> Hi all,
>
> In one of our projects, I had to modify code upgrading to rdf4j 4.3.0, see the patch below.
> Is that expected? It appears like a breaking change to me. 🤔
>
> Erik
>
> Subject: [PATCH] chore: upgrade rdf4j to version 4.3.0
>
> ---
>  pom.xml                                            | 2 +-
>  src/test/java/no/statnett/rdf4j/utils/Writers.java | 4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/pom.xml b/pom.xml
> index d04aba1..ff31423 100644
> --- a/pom.xml
> +++ b/pom.xml
> @@ -19,7 +19,7 @@
>      <properties>
>          <spring-boot.version>2.7.12</spring-boot.version>
>          <graphdb.version>10.2.1</graphdb.version>
> -        <rdf4j.version>4.2.4</rdf4j.version>
> +        <rdf4j.version>4.3.0</rdf4j.version>
>          <cxf.version>3.6.0</cxf.version>

>          <graphdb.dist.folder>${project.build.directory}/graphdb-${graphdb.version}</graphdb.dist.folder>
> diff --git a/src/test/java/no/statnett/rdf4j/utils/Writers.java b/src/test/java/no/statnett/rdf4j/utils/Writers.java
> index fe450ab..03a2091 100644
> --- a/src/test/java/no/statnett/rdf4j/utils/Writers.java
> +++ b/src/test/java/no/statnett/rdf4j/utils/Writers.java
> @@ -4,8 +4,8 @@
>  import org.eclipse.rdf4j.rio.RDFWriter;
>  import org.eclipse.rdf4j.rio.Rio;
>  import org.eclipse.rdf4j.rio.helpers.BasicWriterSettings;
> -import org.eclipse.rdf4j.rio.helpers.JSONLDMode;
> -import org.eclipse.rdf4j.rio.helpers.JSONLDSettings;
> +import org.eclipse.rdf4j.rio.jsonld.JSONLDMode;
> +import org.eclipse.rdf4j.rio.jsonld.JSONLDSettings;

>  import java.net.URISyntaxException;

> --
> _______________________________________________
> rdf4j-dev mailing list
> rdf4j-dev@xxxxxxxxxxx
> To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/rdf4j-dev
_______________________________________________
rdf4j-dev mailing list
rdf4j-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/rdf4j-dev

_______________________________________________
rdf4j-dev mailing list
rdf4j-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/rdf4j-dev

_______________________________________________
rdf4j-dev mailing list
rdf4j-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/rdf4j-dev

_______________________________________________
rdf4j-dev mailing list
rdf4j-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/rdf4j-dev


Back to the top