Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
Showing results for 
Search instead for 
Did you mean: 
Product and Topic Expert
Product and Topic Expert
0 Kudos
We have released new versions of the SAP S/4HANA Cloud SDK, including the first generally available release of the SDK for JavaScript. In detail, the following components are now available in new versions:

In this blog post, we will walk you through the highlights of these releases. For a complete overview, visit our release notes for the Java libraries, for the JavaScript libraries, and for the continuous delivery toolkit. The release notes also include the change log of all our releases so far.
At the end of the article, you will find a set of instructions on how to update to the new versions.

Java Libraries: Release Highlights 2.13.3

You can update your dependencies of the SAP S/4HANA Cloud SDK for Java to version 2.13.3 and consume the new version from Maven Central.

This is a maintenance release with the improvements and fixes listed in the full release notes.

Additionally, we have published a blog post on how to access any REST service with the help of the SAP S/4HANA Cloud SDK (and OpenAPI). An accompanying step-by-step tutorial helps you put this into practice to easily consume REST services described using OpenAPI with the type-safety and convenience of the SAP S/4HANA Cloud SDK.

JavaScript Libraries: Release Highlights 1.0.0

The JavaScript libraries of the SAP S/4HANA Cloud SDK are now generally available, as we have published version 1.0.0. Please check out the separate blog post about the initial release to learn more about the SDK for JavaScript, and study our tutorial series to get started.

The release notes contain a list of the major features in this first release.

Continuous Delivery Toolkit: Release Highlights v17

We have also released version v17 of our out-of-the-box continuous delivery offering consisting of a ready-made Jenkins server and a complete delivery toolkit.

Pipeline for JavaScript projects

Version v17 introduces the first version of the pipeline for Javascript projects, in line with the first release of the SDK for JavaScript. As known from the pipeline for Java projects, this gives you out-of-the-box a complete continuous delivery pipeline. The pipeline builds, tests, and deploys code changes of a JavaScript application in continuous delivery mode. You do not have to write a single line of pipeline code to achieve true continuous delivery and benefit from all the best practices and quality checks that are codified in the pipeline. By adopting the pipeline, you transform your project towards DevOps best practices.

To get started, simply begin with one our our project scaffolds (for TypeScript or JavaScript). They out-of-the-box include everything needed to run the continuous delivery pipeline on a Jenkins server. The only thing left to do is configuring the pipeline for your project (credentials for test systems, deployment targets) and connecting your source code repository to Jenkins.
As before, you can set up and manage the Jenkins build server using the tools provided by the continuous delivery toolkit, as explained in the general tutorial. The approach to configuring the pipeline to your project remains the same as well.
We plan to explain the pipeline for JavaScript and related topics in more detail in an upcoming series of tutorials.

The first release of the pipeline for JavaScript does not yet include all features known from the pipeline for Java projects. For more information, please consult the feature matrix (column NPM). You can start using the pipeline today, as the basic stages of the pipeline are available. Thanks to the auto-updating capabilities of the toolkit, you will automatically get further capabilities as we add them in the future.

Sidecar containers for integration tests

Integration tests have the goal to test the working-together of different components of a system. Depending on the nature of your application, this can include a database or other backend systems. For making integration tests reliable, it is good practice to start from a clean slate and do as much as reasonable locally. This can be done by starting backing systems required for integration tests as a container.
With version v17, we enable integration tests which in this manner rely on other systems that can be started as a local container. For this,you can now specify a sidecar image. The pipeline will start a container for this image before executing the integration test. For more details, consult the documentation on how to configure this feature.

Further improvements

We have set the Chromium browser used during end-to-end tests to the older version 70 to mitigate issues with end-to-end tests.

You can find further fixes and improvements in the complete release notes.

How to Update

Java libraries

To update the version of the SAP S/4HANA Cloud SDK Java libraries used in an existing project, proceed as follows:

  • Open the pom.xml file in the root folder of your project.

  • Locate the dependency management section and therein the sdk-bom dependency.

  • Update the version of that dependency to 2.13.3.

With this, you are already done thanks to the "bill of material" (BOM) approach. Your dependency should look like this:
<!-- possibly further managed dependencies ... -->

If you are using the SAP S/4HANA Cloud SDK in a project of the SAP Cloud Application Programming Model, replace sdk-bom with sdk-modules-bom to only update the version of SDK modules, not further dependencies.
You can now recompile your project (be aware of the compatibility notes, though) and leverage the new features of the SAP S/4HANA Cloud SDK in version 2.13.3.

Of course, you can also generate a new project that uses version 2.13.3 from the start by running the Maven archetypes for Neo or Cloud Foundry with -DarchetypeVersion=2.13.3 (or RELEASE).

JavaScript libraries

To update the version of the SAP S/4HANA Cloud SDK JavaScript libraries used in an existing project, use the command npm update in the root folder of your module. Note that this will also update other modules, unless you explicitly specify which packages to update. If you want to check beforehand what will change, use npm outdated.

Continuous Delivery Toolkit

If you are using the pipeline with a fixed version (as recommended since v7), update the continuous delivery toolkit with the following command, that you run on the server hosting the cx-server:
./cx-server update image