LTS – Devstyler.io https://devstyler.io News for developers from tech to lifestyle Tue, 08 Mar 2022 09:02:46 +0000 en-US hourly 1 https://wordpress.org/?v=6.5.5 AWS Lambda with Support for .NET 6 https://devstyler.io/blog/2022/03/08/aws-lambda-with-support-for-net-6/ Tue, 08 Mar 2022 09:02:46 +0000 https://devstyler.io/?p=82121 ...]]> AWS Lambda recently added support for .NET 6, as both a managed runtime and a container base image. The new runtime introduces new .NET language features and performance optimizations, improves logging and simplifies function definition using top-level statements, according to InfoQ.

.NET 6 is the latest long-term support (LTS) release of .NET and will be supported for security and bug fixes until November 2024. AWS will automatically apply updates to the .NET 6 managed runtime and to the AWS-provided .NET 6 base image, as they become available.

The .NET 6 runtime is available in all Regions where Lambda is available, except for the AWS China Regions, as noted in an AWS publication.

]]>
What to expect in Java 18 https://devstyler.io/blog/2021/09/22/what-to-expect-in-java-18/ Wed, 22 Sep 2021 08:00:52 +0000 https://devstyler.io/?p=71907 ...]]> Java 18 is still six months away but is already taking shape, with four feature proposals anticipated for it so far, the latest being a third incubation of the vector API.

The OpenJDK page for Java Development Kit (JDK) 18 lists the vector API, code snippets, and the UTF-8 charset as proposed to target JDK 18, as of September 20. The JEP (JDK Enhancement Proposal) index of Java technologies also cites the record patterns and array patterns proposal as eyed for JDK 18, although it has not been officially targeted yet.

While JDK 17, published September 14, was long-term support (LTS) release that will receive at least eight years of support from Oracle, JDK 18, expected in March 2022, will be a short-term feature release that is supported for six months. Early-access builds of JDK 18 can be found for Linux, Windows, and macOS at java.net.

Specifics of the three JDK 18 proposals include:

  • The vector API would be incubated for a third time in JDK 18, having previously been incubated in JDK 16 and JDK 17. This proposal would express vector computations that compile at run time to optimal vector instructions on supported CPU architectures, achieving performance superior to equivalent scalar computations. Vector operations express a degree of parallelization enabling more work to be done on a single CPU cycle, thus producing significant performance improvements. The platform-agnostic vector API aims to provide a way to write complex algorithms in Java, using the existing HotSpot auto-vectorizer but with a user model that makes vectorization more predictable. JDK 18 would also add support for the ARM Scalar Vector Extension platform and improve the performance of vector operations that accept masks on architectures that support masking in hardware.
  • A preview of record patterns and array patterns, in which the Java language would be enhanced with record patterns, to deconstruct record values, and array patterns, to deconstruct array values. Record patterns, array patterns, and type patterns, which were featured in JDK 16, can be nested so as to significantly enhance the expressiveness and utility of pattern matching. The goals of the proposal include extending pattern matching to express more sophisticated, composable data queries, and not changing the syntax or semantics of type patterns.
  • Specifying UTF-8 as the default charset of the standard Java APIs. UTF-8 is a variable-wide character encoding for electronic communication and is considered the web’s standard charset. The charset is a character encoding capable of encoding all characters on the web. Through this change, APIs that depend on the default charset will behave consistently across all implementations, operating systems, locales, and configurations. The proposal is not intended to define new Java-standard or JDK-specific APIs. Proponents of the proposal expect that applications in many environments will see no impact from Java’s choice of UTF-8, like MacOS, many Linux distributions, and many server applications already support UTF-8. However, there is risk in other environments, the most obvious being that applications depending on the default charset will behave incorrectly when processing data produced when the default charset was unspecified. Data corruption may silently occur. The main impact is expected to befall users of Windows systems in Asian locales and possibly some server environments in Asia and other locales.
  • Code snippets in Java API documentation, involving the introduction of an @snippet tag for JavaDoc’s Standard Doclet, to simplify the inclusion of example source code in the API documentation. Among the goals of the plan is facilitating the validation of source code fragments by providing API access to those fragments. While correctness is the responsibility of the author, enhanced support in JavaDoc and related tools can make it easier to achieve. Other goals include enabling modern styling, such as syntax highlighting, as well as the automatic linkage of names to declarations, and enabling better IDE support for creating and editing snippets. The proposal notes that authors of API documentation often include fragments of source code in documentation comments.

Other potential features that could target JDK 18 include pattern matching for switch expressions and statements, which is being previewed in the JDK 17 release, and a foreign function and memory API, which is in an incubator stage in JDK 17.

]]>
Node.js 14 Released – What’s New? https://devstyler.io/blog/2020/04/25/node-js-14-released-what-s-new/ Fri, 24 Apr 2020 21:35:54 +0000 https://devstyler.io/?p=10956 ...]]> Version 14 now becomes the current ‘release’ line with it becoming a LTS (Long Term Support) release in October. 

“As per the release schedule (https://github.com/nodejs/Release#release-schedule), Node.js 14 will be the `Current` release for the next 6 months, and then promoted to Long-term Support (LTS) in October 2020”, Michael Dawson and Bethany Griggs said in the official blog post.

In fact both Node.js 12 and Node.js 10 will remain in long-term support until April 2022 and April 2021 respectively.

The highlights in this release include:

  • improved diagnostics
  • an upgrade of V8
  • an experimental Async Local Storage API
  • hardening of the streams APIs
  • removal of the Experimental Modules warning
  • and the removal of some long deprecated APIs.

A quick look on GitHub shows that “Removal of Experimental Modules Warning” is explained very well. EcmaScript Modules (ESM) are one step closer to stable (but not yet). At least Node.js won’t bother you with a warning.

The new version of Node.js also brings the expected V8 upgrade to V8 8.1 🙂

“As always a new version of the V8 JavaScript engine brings performance tweaks and improvements as well as keeping Node.js up with the ongoing improvements in the language and runtime. This time we also have some naming fun with it being version 8 of V8 (“V8 of V8”)”, Michael Dawson and Bethany Griggs wrote in their post. 

Highlights of the new JavaScript features include:

  • Optional Chaining — MDN
  • Nullish Coalescing — MDN
  • Intl.DisplayNames — MDN
  • Enables calendar and numberingSystem options for Intl.DateTimeFormat — MDN

You can download the latest version here: https://nodejs.org/en/download/current/

If you are curious about all new features in v.14, visit the official Node.js post on Medium.

]]>