Java 27: What's New?

(loicmathieu.fr)

37 points | by loicmathieu 3 hours ago

10 comments

  • Alifatisk 1 hour ago
    Java 27 already? I just learned about Java 26. But I’m not complaining, the JEPs that is getting introduced on every release are quite exciting features. I highly recommend following the Java official YouTube channel, they publish entertaining, yet informative videos/shorts about tips/tricks/features.
  • nerdile 25 minutes ago
    > tests showed that for environments with one CPU (or fewer)

    Article seems AI generated. Is there an official announcement we could be discussing instead?

    • stanac 14 minutes ago
      It's probably comment on shared CPUs. Like in kubernetes where you can assign 300 milliCPUs.

      I didn't read the article, it doesn't open for me (HN hug?).

    • atomicnumber3 19 minutes ago
      I wonder if it's a joke about oversubscribed environments (cloud VPS) or a real remark about fractional CPU budgets in container environments
  • throwaw12 18 minutes ago
    Give us some break we just recently migrated to Java 11 from Java 8
    • ivanjermakov 8 minutes ago
      Don't be scared of a big number, since 2018 they do 2 releases each year.
    • samus 7 minutes ago
      [delayed]
  • mountainriver 32 minutes ago
    The best thing to ever happen to the software world was Oracle buying Sun and consequently Java.

    Java was great at its time but then had to go. Oracle gaining control over them sped up this process.

    Poor Android got caught up and now half our phones don’t work

    • UltraSane 27 minutes ago
      What are you trying to say?
      • stanac 17 minutes ago
        I think they are saying Java is dead?! Not sure how else to interpret the comment. If that's the case I have to disagree. There are probably billions of lines of Java in enterprise, it will never die.
        • chasd00 8 minutes ago
          my standard Java analogy is it's like a garbage truck. Java is out there every day doing a job that's absolutely critical but rarely, if ever, in the lime light.
        • UltraSane 12 minutes ago
          Java is still very popular and even being used for new projects.
  • StefanBatory 1 hour ago
    Does the website have geoblocking or did HN gave it a hug of death?
  • zelphirkalt 1 hour ago
    Is it just my personal feeling, or are Java version numbers becoming as inflationary as browser version numbers?
    • doikor 1 hour ago
      They moved to a schedule instead of waiting for features to be finished.

      Basically we get a new major version release on a schedule. Everything that is finished gets packaged in and everything else pushed to the next release.

      The issue before was that they marked beforehand "version X will contain feature Y" and then feature Y got delayed by 3 years which means everything else in version X also got delayed by 3 years even though they were done 6 months ago.

      • this_user 1 hour ago
        It's too many releases now. At some points, the numbers just become noise. I think most people will stick to the LTS releases, but even those come out every two years.
        • the-smug-one 9 minutes ago
          Why? Just upgrade. Make it so that your org can deal with it.
        • bmacho 52 minutes ago
          The numbers have become meaningless noise already. This release should've been called 26.1, then 27.0, 27.1, 28.0 and so on. Year.version. How Canonical does it with Ubuntu.

          The current numbering scheme is annoying and distracting, bears no information yet is still error prone.

          • the-smug-one 10 minutes ago
            I don't see the point, just increment it every release. Don't see what errors are prone either
          • samus 19 minutes ago
            I believe that's by design: applications are encouraged to upgrade often. That's usually a smooth process for standard-conforming applications.

            Applications that need to move slower can stick to LTS versions. LTS hopping has become a little bit more viable since the interval has been shortened to two years, i.e., four major versions.

        • OtomotO 53 minutes ago
          Unless you're forced at gunpoint, how can there be too many releases?

          Rust releases every 6 weeks, since 2016...

          If you don't want to update, just don't?

          If you feel (!) pressured, you should work on that.

          • ptx 44 minutes ago
            With each new Java release the previous one becomes instantly unsupported (meaning that it receives no security updates), unless you pay Oracle (or another vendor). So you are forced to update if you want security updates (or run only LTS releases, or pay a vendor).
            • pgwhalen 24 minutes ago
              So if the matters to you, run the LTS release, right? I'm not sure I follow the concern.
          • robertjpayne 48 minutes ago
            Rust releases are just compiler toolchain, maybe some new syntax features. Java includes the JVM which is subject to way more security issues and needs much more frequent updating.
            • wtetzner 35 minutes ago
              But can't you continue to run older bytecode versions on newer JVMs? I think you can also specify the source version separately.
              • samus 15 minutes ago
                Yes, you can. There is no need to recompile, unless you're interested in new language features.

                Maintaining binary compatibility is a principal goal of the platform which continues to constrain design decisions for all future changes.

            • OtomotO 22 minutes ago
              > Java includes the JVM which is subject to way more security issues and needs much more frequent updating.

              Then releasing more often is better, because the security fixes get out of the door faster?!

              If previously a Java Update took 3 years, then the corresponding JVM version would be 3 years old as well.

              If there were patch release in between, I see no difference to now.

              • samus 14 minutes ago
                Patches are released continuously. The upstream versions get them immediately and they are then backported to LTS versions. Whether the patches actually become available simultaneously I cannot say without.
        • ivan_gammel 51 minutes ago
          [dead]
      • mountainriver 36 minutes ago
        Do they have backwards compatibility guarantees?

        Otherwise what are we doing here?

        • cogman10 29 minutes ago
          They do, some of the best of any language.

          That said backwards compatibility problems still hit as some libraries enjoy using internal APIs.

          It's not an every time thing and it's been easier and easier with updates.

        • collabs 29 minutes ago
          I work with dotnet but my understanding is that some applications/ teams are still on java 8 with spring boot or whatever so it isn't like they aren't modernizing but they are choosing to do so at their own time which is fine I think
    • mkurz 1 hour ago
      Its just your personal feeling.
  • robmccoll 30 minutes ago
    Non-nullable reference types at the language level? Null coalescing operator? Safe navigation accessors? Record composition?
  • Borborygymus 39 minutes ago
    Java is swell and all, but having seen how the vendor treats even their large customers, I could never in good conscience recommend them to anyone I do business with. Better to miss out on the latest features and work with more respectful vendors IMO.
    • speed_spread 18 minutes ago
      What vendor? OpenJDK is free and libre. If you mean Oracle, then that's a choice your employer made and yeah, you're SoL, especially for working in such a place.