Skip to content

Commit

Permalink
Merge pull request #458 from datastax/2.14.0_prep
Browse files Browse the repository at this point in the history
2.14.0 release preparation
  • Loading branch information
mikefero authored Oct 25, 2019
2 parents 9b30d67 + 076bd23 commit bbbbd7b
Show file tree
Hide file tree
Showing 262 changed files with 23,328 additions and 1,452 deletions.
4 changes: 4 additions & 0 deletions .build.linux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ install_openssl() {
true # Already installed on image
}

install_zlib() {
true # Already installed on image
}

install_driver() {(
cd packaging

Expand Down
10 changes: 10 additions & 0 deletions .build.osx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,16 @@ install_openssl() {
fi
}

install_zlib() {
if brew ls --versions zlib > /dev/null; then
if ! brew outdated zlib; then
brew upgrade zlib
fi
else
brew install zlib
fi
}

install_driver() {
true
}
Expand Down
21 changes: 16 additions & 5 deletions .build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ else
fi

get_driver_version() {
local header_file=$1
local driver_prefix=$2
local header_file=${1}
local driver_prefix=${2}
local driver_version=$(grep "#define[ \t]\+${driver_prefix}_VERSION_\(MAJOR\|MINOR\|PATCH\|SUFFIX\)" ${header_file} | awk '
BEGIN { major="?"; minor="?"; patch="?" }
/_VERSION_MAJOR/ { major=$3 }
Expand All @@ -61,26 +61,37 @@ get_driver_version() {
install_dependencies() {
install_libuv
install_openssl
install_zlib
}

build_driver() {
local driver_prefix=$1
local driver_prefix=${1}

# Ensure build directory is cleaned (static nodes are not cleaned)
[[ -d build ]] && rm -rf build
mkdir build

(
cd build
cmake -DCMAKE_BUILD_TYPE=Release -D${driver_prefix}_BUILD_SHARED=On -D${driver_prefix}_BUILD_STATIC=On -D${driver_prefix}_BUILD_EXAMPLES=On -D${driver_prefix}_BUILD_UNIT_TESTS=On ..
BUILD_INTEGRATION_TESTS=Off
if [ "${CI_INTEGRATION_ENABLED}" == "true" ]; then
BUILD_INTEGRATION_TESTS=On
fi
cmake -DCMAKE_BUILD_TYPE=Release \
-D${driver_prefix}_BUILD_SHARED=On \
-D${driver_prefix}_BUILD_STATIC=On \
-D${driver_prefix}_BUILD_EXAMPLES=On \
-D${driver_prefix}_BUILD_UNIT_TESTS=On \
-D${driver_prefix}_BUILD_INTEGRATION_TESTS=${BUILD_INTEGRATION_TESTS} \
..
[[ -x $(which clang-format) ]] && make format-check
make -j${PROCS}
)
}

check_driver_exports() {(
set +e #Disable fail fast for this subshell
local driver_library=$1
local driver_library=${1}
if [ -f ${driver_library} ]; then
declare -a MISSING_FUNCTIONS
for function in "${@:2}"; do
Expand Down
58 changes: 58 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,61 @@
2.14.0
===========

Bug Fixes
--------
* [CPP-819] - Ensure port is updated on already assigned contact points
* [CPP-825] - Cloud should be verifying the peer certificates CN

2.14.0-alpha2
===========

Features
--------
* [CPP-812] - Enable warnings for implicit casts and fix problems
* [CPP-813] - Detect CaaS and change consistency default
* [CPP-817] - Provide error if mixed usage of secure connect bundle and contact points/ssl context

Bug Fixes
--------
* [CPP-802] - Handle prepared id mismatch when repreparing on the fly
* [CPP-815] - Schema agreement fails with SNI
* [CPP-811] - Requests won't complete if they exceed the number of streams on a connection

2.14.0-alpha
===========

Features
--------
* [CPP-787] DataStax cloud platform
* [CPP-788] Support SNI at connection level using `host_id` as host name
* [CPP-793] Add SNI support to `SocketConnector` and SSL backend
* [CPP-794] Add domain name resolution to `SocketConnector`
* [CPP-795] Replace `Address` with endpoint or host type on connection path
* [CPP-797] Events need to map from affected node address to `host_id`
* [CPP-800] Node discovery should use the `host_id` (and endpoint address) instead of the
node's rpc_address
* [CPP-790] Configuration API for DBaaS
* [CPP-791] Add creds.zip support for automatic configuration
* [CPP-798] Configure authentication and SSL from secure connection bundle configuration
* [CPP-799] Use metadata service to determine contact points
* [CPP-788] Support SNI at connection level using `host_id` as host name
* [CPP-803] Propagate `local_dc` from `CloudClusterMetadataResolver` to load balancing policies

Bug Fixes
--------
* [CPP-786] Fix TLS 1.3 support
* [CPP-806] Fix handling of no contact points

Other
--------
* [CPP-796] Correct compiler flags for mixed C and C++ projects

Community
--------
* [CPP-754] Broken build with GCC 9 (eevans)
* Add openssl to the required library list in pkg_config file (accelerated)
* Allow random to work with 0 (joeyhub)

2.13.0
===========

Expand Down
7 changes: 1 addition & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ option(CASS_USE_OPENSSL "Use OpenSSL" ON)
option(CASS_USE_STATIC_LIBS "Link static libraries when building executables" OFF)
option(CASS_USE_STD_ATOMIC "Use C++11 atomics library" OFF)
option(CASS_USE_TCMALLOC "Use tcmalloc" OFF)
option(CASS_USE_ZLIB "Use zlib" OFF)
option(CASS_USE_ZLIB "Use zlib" ON)
option(CASS_USE_TIMERFD "Use timerfd (Linux only)" ON)

# Handle testing dependencies
Expand Down Expand Up @@ -108,8 +108,6 @@ CassAddIncludes()
CassFindSourceFiles()
CassConfigure()

set(TEST_CXX_FLAGS ${CASS_TEST_CXX_FLAGS})

set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
Expand Down Expand Up @@ -177,9 +175,6 @@ CassConfigureTests()
# no need to update CMakeLists.txt!

if(CASS_BUILD_EXAMPLES)
if(CASS_USE_STATIC_LIBS)
set(CASS_EXAMPLE_C_FLAGS "${CASS_EXAMPLE_C_FLAGS} -DCASS_STATIC")
endif()
CassBuildExamples("examples")
endif()

Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ provided with the distribution:
* [Reverse DNS] with SSL peer identity verification support
* Randomized contact points
* [Speculative execution]
* Support for [DataStax Constellation] Cloud Data Platform

## Compatibility

Expand Down Expand Up @@ -78,7 +79,6 @@ __Disclaimer__: DataStax products do not support big-endian systems.

* JIRA: https://datastax-oss.atlassian.net/browse/CPP
* Mailing List: https://groups.google.com/a/lists.datastax.com/forum/#!forum/cpp-driver-user
* DataStax Academy via Slack: https://academy.datastax.com/slack

## Feedback Requested

Expand Down Expand Up @@ -198,6 +198,7 @@ specific language governing permissions and limitations under the License.
[ubuntu-16-04-dependencies]: http://downloads.datastax.com/cpp-driver/ubuntu/16.04/dependencies
[ubuntu-18-04-dependencies]: http://downloads.datastax.com/cpp-driver/ubuntu/18.04/dependencies
[windows-dependencies]: http://downloads.datastax.com/cpp-driver/windows/dependencies
[DataStax Constellation]: https://constellation.datastax.com
[Asynchronous API]: http://datastax.github.io/cpp-driver/topics/#futures
[Simple]: http://datastax.github.io/cpp-driver/topics/#executing-queries
Expand Down
Loading

0 comments on commit bbbbd7b

Please sign in to comment.