{"id":4614,"date":"2021-08-21T10:53:41","date_gmt":"2021-08-21T08:53:41","guid":{"rendered":"http:\/\/www.tutego.de\/blog\/javainsel\/?p=4614"},"modified":"2021-08-21T10:53:41","modified_gmt":"2021-08-21T08:53:41","slug":"querydsl-5-0-0-verfuegbar","status":"publish","type":"post","link":"https:\/\/www.tutego.de\/blog\/javainsel\/2021\/08\/querydsl-5-0-0-verfuegbar\/","title":{"rendered":"QueryDSL  5.0.0 verf\u00fcgbar"},"content":{"rendered":"<p>Aus den Release-Notes: <a href=\"https:\/\/github.com\/querydsl\/querydsl\/releases\/tag\/QUERYDSL_5_0_0\">https:\/\/github.com\/querydsl\/querydsl\/releases\/tag\/QUERYDSL_5_0_0:<\/a><\/p>\n<p>This release of QueryDSL targets Java 8 minimally and comes with various improvements to make QueryDSL ready for the modern Java ecosystem.<br \/>\nThis version also removes <code>joda-time:joda-time<\/code>, <code>com.google.guava:guava<\/code> and <code>com.google.code.findbugs:jsr305<\/code> as required runtime dependencies for using QueryDSL.<\/p>\n<p>QueryDSL 5.0 is the long awaited major release after the QueryDSL project was left mostly unmaintained for over two years.<\/p>\n<h4>New features<\/h4>\n<ul>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/pull\/2672\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"\/querydsl\/querydsl\/pull\/2672\/hovercard\">#2672<\/a> &#8211; Various performance and code improvements possible by targeting Java 8 source level.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/pull\/2672\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"\/querydsl\/querydsl\/pull\/2672\/hovercard\">#2672<\/a> &#8211; Added <code>Fetchable#stream()<\/code> which returns a <code>Stream&lt;T&gt;<\/code>.<br \/>\nMake sure that the returned stream is always closed to free up resources, for example using <em>try-with-resources<\/em>.<br \/>\nIt does not suffice to rely on a terminating operation on the stream for this (i.e. <code>forEach<\/code>, <code>collect<\/code>).<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2324\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2324\/hovercard\">#2324<\/a> &#8211; Removal of Guava as dependency.<br \/>\nAlmost no required transitive dependencies to get started with QueryDSL.<br \/>\nAnd no more conflicts with Guava versions required by your other tools or own application.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2025\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2025\/hovercard\">#2025<\/a> &#8211; <code>joda-time:joda-time<\/code> is no longer a required dependency for <code>querydsl-sql<\/code>.<br \/>\nBy default, the Java 8 date\/time API is used for date\/time operations.<br \/>\nThe <code>joda-time:joda-time<\/code> types will still be registered automatically if they are on the classpath.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2215\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2215\/hovercard\">#2215<\/a> &#8211; MongoDB 4 support through the Document API<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2697\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2697\/hovercard\">#2697<\/a> &#8211; Allow <code>com.querydsl.core.alias.Alias.*<\/code> to be used on a JRE by relying on ECJ as compiler<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2479\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2479\/hovercard\">#2479<\/a> &#8211; Swap out JSR305 for Jetbrains Annotations.<br \/>\nBecause the Jetbrains Annotations, contrary to the JSR305 annotations, use a Class retention level, Jetbrains Annotations<br \/>\ndoes not have to be available at runtime and is not a transitive dependency.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/658\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/658\/hovercard\">#658<\/a> &#8211; Added <code>JPAExpressions#treat<\/code> which can be used to generate JPA 2.1 Treated path expressions.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2666\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2666\/hovercard\">#2666<\/a> &#8211; More descriptive error message when using unsupported query features in JPA.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2106\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2106\/hovercard\">#2106<\/a> &#8211; Support NullsLast ordering in <code>querydsl-collections<\/code>.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2404\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2404\/hovercard\">#2404<\/a> &#8211; Upgrade of JTS \/ Geolatte in <code>querydsl-spatial<\/code><\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2320\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2320\/hovercard\">#2320<\/a> &#8211; Make Spatial support available to <code>HibernateDomainExporter<\/code> and <code>JPADomainExporter<\/code>.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/2612\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/2612\/hovercard\">#2612<\/a> &#8211; Support jakarta.* packages for new Jakarta EE releases (available through the<code>jakarta<\/code> classifiers for Maven)<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/1376\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/1376\/hovercard\">#1376<\/a> &#8211; Return typed expression from <code>nullif<\/code> and <code>coalesce<\/code> methods.<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/issues\/1828\" data-hovercard-type=\"issue\" data-hovercard-url=\"\/querydsl\/querydsl\/issues\/1828\/hovercard\">#1828<\/a> &#8211; Kotlin Codegen support<\/li>\n<li><a href=\"https:\/\/github.com\/querydsl\/querydsl\/pull\/2798\" data-hovercard-type=\"pull_request\" data-hovercard-url=\"\/querydsl\/querydsl\/pull\/2798\/hovercard\">#2798<\/a> &#8211; Java Record support<\/li>\n<\/ul>\n<p>Wie ist denn der Einsatz bei euch von QueryDSL? Eine wichtiger Baustein in eurer Unternehmensanwendung?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Aus den Release-Notes: https:\/\/github.com\/querydsl\/querydsl\/releases\/tag\/QUERYDSL_5_0_0: This release of QueryDSL targets Java 8 minimally and comes with various improvements to make QueryDSL ready for the modern Java ecosystem. This version also removes joda-time:joda-time, com.google.guava:guava and com.google.code.findbugs:jsr305 as required runtime dependencies for using QueryDSL. QueryDSL 5.0 is the long awaited major release after the QueryDSL project was left [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[66,4],"tags":[],"class_list":["post-4614","post","type-post","status-publish","format-standard","hentry","category-java-8","category-open-source"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4614","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/comments?post=4614"}],"version-history":[{"count":1,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4614\/revisions"}],"predecessor-version":[{"id":4615,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/4614\/revisions\/4615"}],"wp:attachment":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/media?parent=4614"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/categories?post=4614"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/tags?post=4614"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}