diff --git a/.github/workflows/linux-build-and-test-compatibility.yml b/.github/workflows/linux-build-and-test-compatibility.yml index 94acc8ac..e881ea95 100644 --- a/.github/workflows/linux-build-and-test-compatibility.yml +++ b/.github/workflows/linux-build-and-test-compatibility.yml @@ -16,7 +16,7 @@ jobs: steps: - name: Setup ROS2 - uses: ros-tooling/setup-ros@v0.3 + uses: ros-tooling/setup-ros@v0.4 with: required-ros-distributions: ${{ matrix.ros_distribution }} @@ -41,14 +41,14 @@ jobs: strategy: fail-fast: false matrix: - node-version: [10.X, 12.x, 14.X, 16.X, 17.X] + node-version: [10.X, 12.x, 14.X, 16.X, 17.X, 18.X, 19.X] ros_distribution: - foxy - galactic steps: - name: Setup ROS2 - uses: ros-tooling/setup-ros@v0.3 + uses: ros-tooling/setup-ros@v0.4 with: required-ros-distributions: ${{ matrix.ros_distribution }} diff --git a/.github/workflows/linux-build-and-test.yml b/.github/workflows/linux-build-and-test.yml index edd4a8a1..28c40b6f 100644 --- a/.github/workflows/linux-build-and-test.yml +++ b/.github/workflows/linux-build-and-test.yml @@ -26,7 +26,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [10.X, 12.X, 14.X, 16.11.X, 17.X] + node-version: [10.X, 12.X, 14.X, 16.11.X, 17.X, 18.X, 19.X] steps: - name: Setup Node.js ${{ matrix.node-version }} uses: actions/setup-node@v2 @@ -34,7 +34,7 @@ jobs: node-version: ${{ matrix.node-version }} - name: Setup ROS2 - uses: ros-tooling/setup-ros@v0.3 + uses: ros-tooling/setup-ros@v0.4 with: required-ros-distributions: ${{ needs.identify-ros-distro.outputs.distro }} diff --git a/.github/workflows/windows-build-and-test-compatibility.yml b/.github/workflows/windows-build-and-test-compatibility.yml index e9f0bd3c..6f0104a8 100644 --- a/.github/workflows/windows-build-and-test-compatibility.yml +++ b/.github/workflows/windows-build-and-test-compatibility.yml @@ -10,7 +10,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [10.X, 12.X, 14.X, 16.11.X, 17.X] + node-version: [10.X, 12.X, 14.X, 16.11.X, 17.X, 18.X, 19.X] ros_distribution: # - foxy - galactic @@ -23,7 +23,7 @@ jobs: node-version: ${{ matrix.node-version }} - name: Setup ROS2 - uses: ros-tooling/setup-ros@v0.3 + uses: ros-tooling/setup-ros@v0.4 with: required-ros-distributions: ${{ matrix.ros_distribution }} diff --git a/.github/workflows/windows-build-and-test.yml b/.github/workflows/windows-build-and-test.yml index 76631b63..aeaebd5e 100644 --- a/.github/workflows/windows-build-and-test.yml +++ b/.github/workflows/windows-build-and-test.yml @@ -26,7 +26,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [10.X, 12.X, 14.X, 16.11.X, 17.X] + node-version: [10.X, 12.X, 14.X, 16.11.X, 17.X, 18.X, 19.X] steps: - name: Setup Node.js ${{ matrix.node-version }} uses: actions/setup-node@v2 @@ -34,7 +34,7 @@ jobs: node-version: ${{ matrix.node-version }} - name: Setup ROS2 - uses: ros-tooling/setup-ros@v0.3 + uses: ros-tooling/setup-ros@v0.4 with: required-ros-distributions: ${{ needs.identify-ros-distro.outputs.distro }} diff --git a/README.md b/README.md index d913ee7f..c64d2208 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ rclnodejs.init().then(() => { Before installing `rclnodejs` please ensure the following software is installed and configured on your system: -- [Nodejs](https://nodejs.org/en/) version between 10.23.1 - 17.x. +- [Nodejs](https://nodejs.org/en/) version between 10.23.1 - 19.x. - [ROS 2 SDK](https://index.ros.org/doc/ros2/Installation/) for details. **DON'T FORGET TO [SOURCE THE ROS 2 SETUP FILE](https://index.ros.org/doc/ros2/Tutorials/Configuring-ROS2-Environment/#source-the-setup-files)** diff --git a/binding.gyp b/binding.gyp index d9404cf7..0ed01e81 100644 --- a/binding.gyp +++ b/binding.gyp @@ -59,7 +59,7 @@ 'OS_LINUX' ], 'cflags_cc': [ - '-std=c++14' + '-std=c++17' ], 'include_dirs': [ @@ -100,7 +100,7 @@ 'OS_WINDOWS' ], 'cflags_cc': [ - '-std=c++14' + '-std=c++17' ], 'include_dirs': [ './src/third_party/dlfcn-win32/', @@ -156,7 +156,7 @@ 'GCC_ENABLE_CPP_EXCEPTIONS': 'YES', 'CLANG_CXX_LIBRARY': 'libc++', 'MACOS_DEPLOYMENT_TARGET': '10.12', - 'CLANG_CXX_LANGUAGE_STANDARD': 'c++14' + 'CLANG_CXX_LANGUAGE_STANDARD': 'c++17' } } ], diff --git a/docs/BUILDING.md b/docs/BUILDING.md index e4b38406..b176431d 100644 --- a/docs/BUILDING.md +++ b/docs/BUILDING.md @@ -13,12 +13,12 @@ Alternatively, you can build ROS 2 from scratch. Please select the platform you ### Install `Node.js` **Notice:** -`rclnodejs` should only be used with node versions between 8.12 - 17.x. The lowest LTS Node.js we used to verify the unit tests is `8.12.0`. And there is a known issue installing rclnodejs with versions of node >= 18.0. +`rclnodejs` should only be used with node versions between 10.23.1 - 19.x. The lowest LTS Node.js we used to verify the unit tests is `10.23.1`. -The `Node.js` version we selected is the LTS [`Gallium`](https://nodejs.org/download/release/latest-gallium/) (16.x). You can install it: +I install Nodejs from either: -- Download from Node.js offical [website](https://nodejs.org/en/), and install it. -- Use the Node Version Manager ([nvm](https://github.com/creationix/nvm)) to install it. +- Node.js offical [website](https://nodejs.org/en/) +- Node Version Manager ([nvm](https://github.com/creationix/nvm)) ### Get Code diff --git a/package.json b/package.json index 03a9c145..3e637180 100644 --- a/package.json +++ b/package.json @@ -89,6 +89,6 @@ ] }, "engines": { - "node": ">= 10.23.1 <18.0.0" + "node": ">= 10.23.1 <20.0.0" } }