From c538bdef991498cae4c59a51757c021621767194 Mon Sep 17 00:00:00 2001 From: fpagliughi Date: Wed, 3 Jul 2024 13:22:49 -0400 Subject: [PATCH] Removed legacy CI files for Travis and AppVeyor --- .travis.yml | 166 ------------------ CHANGELOG.md | 14 +- appveyor.yml | 37 ---- .../install_catch2.sh | 0 .../install_paho_mqtt_c.sh | 0 travis_build.sh | 31 ---- travis_install.sh | 29 --- 7 files changed, 13 insertions(+), 264 deletions(-) delete mode 100644 .travis.yml delete mode 100644 appveyor.yml rename install_catch2.sh => scripts/install_catch2.sh (100%) rename install_paho_mqtt_c.sh => scripts/install_paho_mqtt_c.sh (100%) delete mode 100755 travis_build.sh delete mode 100755 travis_install.sh diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0dd5f455..00000000 --- a/.travis.yml +++ /dev/null @@ -1,166 +0,0 @@ -language: cpp -sudo: required -dist: xenial -os: linux - -before_install: - - ./install_catch2.sh - - ./travis_install.sh - -install: - # Install Paho MQTT C (Need only paho-mqtt3a and paho-mqtt3as) - - ./install_paho_mqtt_c.sh - -addons: - apt: - sources: - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - -matrix: - include: - # GCC 5 - - compiler: gcc - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - g++-5 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=g++-5 - # GCC 6 - - compiler: gcc - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - g++-6 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=g++-6 - # GCC 7 - - compiler: gcc - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - g++-7 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=g++-7 - # GCC 8 - - compiler: gcc - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - g++-8 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=g++-8 - # Clang 3.9 - - compiler: clang - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - clang-3.9 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=clang++-3.9 - # Clang 4.0 - - compiler: clang - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - clang-4.0 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=clang++-4.0 - # Clang 7 - - compiler: clang - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-xenial-7 - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - clang-7 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=clang++-7 - # Clang 8 - - compiler: clang - addons: - apt: - sources: - - ubuntu-toolchain-r-test - - llvm-toolchain-xenial-8 - - sourceline: 'ppa:mosquitto-dev/mosquitto-ppa' - packages: - - clang-8 - - cppcheck - - git - - cmake - - cmake-data - - doxygen - - mosquitto - env: COMPILER=clang++-8 - exclude: - - compiler: gcc - -script: - # Test build - - ./travis_build.sh - # Static Analysis - - cppcheck --enable=all --std=c++11 --force --quiet src/*.cpp - diff --git a/CHANGELOG.md b/CHANGELOG.md index 71afdddd..1705673d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,19 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Clients always created for v5 persistence format, making it universal for any connection. - If the application specifies a version it is kept as a hint for default connections. - The version for the connection should be specified in the connect options. -- Reformat the sources and added a .clang-format file (a project master and a slightly-different one for headers). +- The `create_options` now have all the parameters to create a client. + - Can specify Server URL, Client ID, and persistence in the create options. + - New client constructor that takes just the options object + - The client caches a const `create_options` struct with all the creation parameters + - Client creation internally simplified without breaking the public API +- There's a new `persistence_type` (std::variant) that can hold any of the persistence specifiers (none, file directory, or user interface). +- Most of the class static constants are now `constexpr`. +- Removed the fake `ReasonCode::MQTTPP_V3_CODE`. Now all reason codes in a v3 connection are SUCCESS. +- The `mqtt::exception` checks if the 'rc' return code actually contains a reason code error, amd if so, sets it as the reason code. +- `property` can now report the `typeid` of its contained value. +- The `properties` list implements a const iterator +- Completely reformat the sources and added a .clang-format file (a project master and a slightly-different one for headers). +- Added GitHub CI Action, removing legacy Travis and Appveyor files ## [Version 1.4.0](https://github.com/eclipse/paho.mqtt.cpp/compare/v1.3.2..v1.4.0) - (2024-06-16) diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 6205c505..00000000 --- a/appveyor.yml +++ /dev/null @@ -1,37 +0,0 @@ -version: 1.1.{build} -image: Visual Studio 2015 -configuration: Debug -install: -- cmd: >- - git clone https://github.com/eclipse/paho.mqtt.c.git - - cd paho.mqtt.c - - mkdir build_cmake - - cd build_cmake - - "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64 - - cmake -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX="C:\Temp\paho-c" -DPAHO_WITH_SSL=TRUE -DPAHO_BUILD_DOCUMENTATION=FALSE -DPAHO_BUILD_SAMPLES=FALSE -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=FALSE .. - - nmake install - - cd ..\.. - -build_script: -- cmd: >- - mkdir build_cmake - - cd build_cmake - - "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x64 - - cmake -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX="C:\Temp\paho-cpp" -DCMAKE_PREFIX_PATH="C:\Temp\paho-c" -DPAHO_WITH_SSL=TRUE -DPAHO_BUILD_DOCUMENTATION=FALSE -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=TRUE .. - - nmake - - nmake install - - cd .. - diff --git a/install_catch2.sh b/scripts/install_catch2.sh similarity index 100% rename from install_catch2.sh rename to scripts/install_catch2.sh diff --git a/install_paho_mqtt_c.sh b/scripts/install_paho_mqtt_c.sh similarity index 100% rename from install_paho_mqtt_c.sh rename to scripts/install_paho_mqtt_c.sh diff --git a/travis_build.sh b/travis_build.sh deleted file mode 100755 index 700b03ea..00000000 --- a/travis_build.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash - -set -ex - -if [ "$TRAVIS_OS_NAME" == "linux" ]; then - - if [ "$COMPILER" == "" ]; then - COMPILER=g++; - fi - - echo "Travis build dir: $TRAVIS_BUILD_DIR, pwd: $PWD" - - rm -rf build/ - cmake -Bbuild -H. -DCMAKE_CXX_COMPILER=$COMPILER -DPAHO_BUILD_SAMPLES=ON -DPAHO_BUILD_STATIC=ON -DPAHO_BUILD_DOCUMENTATION=OFF -DPAHO_BUILD_TESTS=ON -DPAHO_WITH_SSL=OFF - sudo env "PATH=$PATH" cmake --build build/ --target install - - # Run the unit tests - ./build/test/unit/unit_tests # --success - - #ctest -VV --timeout 600 - #cpack --verbose - - rm -rf build/ - cmake -Bbuild -H. -DCMAKE_CXX_COMPILER=$COMPILER -DPAHO_BUILD_SAMPLES=ON -DPAHO_BUILD_STATIC=ON -DPAHO_BUILD_DOCUMENTATION=OFF -DPAHO_BUILD_TESTS=ON -DPAHO_WITH_SSL=ON - sudo env "PATH=$PATH" cmake --build build/ --target install - - # Run the unit tests - ./build/test/unit/unit_tests # --success - -fi - diff --git a/travis_install.sh b/travis_install.sh deleted file mode 100755 index a83c443b..00000000 --- a/travis_install.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -if [ "$TRAVIS_OS_NAME" == "linux" ]; then - pwd - sudo service mosquitto stop - # Stop any mosquitto instance which may be still running from previous runs - killall mosquitto - # mosquitto -h - # mosquitto -c test/tls-testing/mosquitto.conf & - - git clone https://github.com/eclipse/paho.mqtt.testing.git - cd paho.mqtt.testing/interoperability - python3 startbroker.py -c localhost_testing.conf & - cd ../.. -fi - -if [ "$TRAVIS_OS_NAME" == "osx" ]; then - pwd - brew update - # brew install openssl mosquitto - # brew services stop mosquitto - # /usr/local/sbin/mosquitto -c test/tls-testing/mosquitto.conf & - - brew upgrade python - git clone https://github.com/eclipse/paho.mqtt.testing.git - cd paho.mqtt.testing/interoperability - python3 startbroker.py -c localhost_testing.conf & - cd ../.. -fi