2
0
mirror of https://github.com/boostorg/mysql.git synced 2026-01-19 16:32:12 +00:00

47 Commits

Author SHA1 Message Date
Anarthal (Rubén Pérez)
d66156ab61 Added builds for new compilers and restructured old ones (#495)
* Added coverage to fill the gaps between compiler versions for clang
and gcc under Linux
* Added clang-19 and clang-20 builds
* Added a gcc-15 build
* Replaced the old clang 3.6 build by clang 3.8

close #478 
close #477 
close #476
2025-10-07 14:41:04 +02:00
Anarthal (Rubén Pérez)
45687ea216 Disabled warning C4459 on MSVC, caused by Asio 2025-09-01 16:06:02 +02:00
Anarthal (Rubén Pérez)
793b678287 Updated file copyrights to 2025 2025-02-11 20:42:41 +01:00
Anarthal (Rubén Pérez)
94e3d4c282 Removed the -fcf-protection gcc workaround
Required because of
https://github.com/boostorg/context/issues/263
2025-01-03 11:36:47 +01:00
Anarthal (Rubén Pérez)
c343cde1fb Improved discussion and examples
Added a tutorial on UPDATEs, transactions and multi-queries
Added a tutorial on connection_pool
Added a tutorial on error handling
Added examples on INSERTs and DELETEs
Rewrote the discussion page on character sets
Added a discussion page on the templated connection class
Removed superseded examples on timeouts and multi-queries
Updated the coverage build to gcc-14 (gcc-13 was using a non-LTS release
that caused problems)

Contributes to #365 and #366
2024-11-29 17:47:44 +01:00
Anarthal (Rubén Pérez)
ef9224c0ac Updated the coverage build to use gcc-14
Workarounds a problem with the build-gcc13 container, which uses a
non-LTS Ubuntu release and can't be installed packages
2024-11-29 11:03:21 +01:00
Anarthal (Rubén Pérez)
8b2727f840 with_diagnostics now passes through unknown signatures
This makes asio::as_tuple and asio::redirect_error usable as partial
completion tokens with any_connection and connection_pool.
Fixed a Jamfile issue that caused warnings in dependencies to fail CI builds.
Removed leftover comment in the pipeline example.
2024-11-02 20:10:22 +01:00
Anarthal (Rubén Pérez)
bb568ba071 Documented connection_pool execution semantics
Refactored pool internals to remove wait_group
Added an external strand thread-safety test

close #361
2024-10-10 15:52:17 +02:00
Anarthal (Rubén Pérez)
e39c978514 Removed the global io_context in tests
Now tests are independent of each other
Refactor common utilities for separate compilation
2024-09-28 19:36:43 +02:00
Anarthal (Rubén Pérez)
20335ac99e Modular Boost CI fixes
Added a boost.mysql.valgrind b2 feature
Suppress warnings in dependencies

close #338
2024-09-05 17:00:38 +02:00
René Ferdinand Rivera Morell
69c457a3e7 Add support for modular build structure 2024-08-19 09:40:08 +02:00
Anarthal (Rubén Pérez)
c3337d20d4 Added a CI build with UNIX sockets disabled
close #196
2024-07-14 21:51:33 +02:00
Anarthal (Rubén Pérez)
3a49afeb87 Boost 1.86 new CI builds
Added gcc-14 build
Updated mysql8 to MySQL 8.4.1
Updated mariadb to MariaDB 11.4.2
Updated some CMake builds to the latest compiler versions
Updated GHA workflows to use Node 20 actions
Updated deprecated ENV commands in Dockerfiles
Removed debugging statements in OSX CI build
DB entrypoints are now inline scripts in Dockerfiles
TSAN is now run in ARM CIs and recent gcc's
TSAN is now disabled for TS executors

close #302
2024-07-08 17:12:43 +02:00
Anarthal (Rubén Pérez)
9ba4f9dfed Pipeline API
Removed sansio_algorithm base class

close #75
2024-06-08 12:47:42 +02:00
Anarthal (Rubén Pérez)
343006142b Test Jamfiles now use the built-in OpenSSL module
Added a Linux b2 build without OpenSSL
Fixed issue in install_boost.py that made rebuilds to error
Removed workaround for https://github.com/boostorg/boost/issues/711
Changed boost.mysql.use-ts-executor default value to off

close #235
2024-03-27 16:43:37 +01:00
Anarthal (Rubén Pérez)
e68ff579c3 Moved Valgrind functionality to b2
close #239
2024-03-16 14:32:37 +01:00
Anarthal (Rubén Pérez)
c0f305d007 Added injection fuzzing to format_sql
CI refactor

close #215
2024-03-16 11:09:39 +01:00
Ruben Perez
5d97dd8d81 New code coverage workflow
Code coverage is now using GHA and b2
Split Linux and Windows docker image builds
Updated some Linux images to include gpg

close #152
2024-03-14 13:28:05 +01:00
Ruben Perez
d8b69d0e78 Bumped copyright to 2024 2024-02-18 12:48:14 +01:00
Ruben Perez
ce53f3e0c0 Support for BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT
Fixed connection_pool to build under this macro
Fixed tests and examples to build under this macro
Added CIs for this macro

close #184
2024-02-16 17:27:31 +01:00
Ruben Perez
5e8992ba88 Client-side SQL formatting functions
Added format_sql, format_sql_to and basic_format_context
Boost.Charconv is now a mandatory dependency
Text queries are now locale-independent
any_connection::current_character_set now uses system::result
Added any_connection::format_opts
field_view, field and statement::bind now disallow character types
escape_string can now be used with any OutputString type
Added constant_string_view
character_set now uses string_view and span
set_character_set hardening

close #69
close #208
2024-02-15 16:02:39 +01:00
Ruben Perez
05640cb670 Warning cleanup
Builds no longer use -pedantic
B2 builds now use -Wextra
Fixed various warnings

close #186
2023-12-21 13:54:01 +01:00
Ruben Perez
bc5577ede5 Connection pool
Added any_connection and any_address
Added connection_pool and pooled_connection
Added thread_safety tests
Added defaults.hpp header

close 19
2023-12-20 18:46:31 +01:00
Ruben Perez
cc73a0592f Fuzz testing
close #31
2023-07-07 17:22:54 +02:00
Ruben Perez
00c605565d Boost 1.83 builds for latest compilers & DBs
Updated MySQL to 8.0.33
Updated MariaDB to 11.0
Added a clang 16 build
Added a clang 16 32-bit build
Added a gcc 13 build
Fixed a warning in Windows/CMake about _WINNT_VERSION not being defined

close #167
2023-06-23 20:32:05 +02:00
Ruben Perez
88fbe387ac Separate compilation
Separate compilation
Immediate completions are now posted through the I/O executor
Jamfiles now correctly requires C++11
Refactored the protocol and channel modules
Removed example on default completion tokens

close #23
close #112
2023-06-22 12:03:24 +02:00
Ruben Perez
c3af9e3a58 Removed /Zc:__cplusplus switch in MSVC
Close #139
2023-04-07 14:23:39 +02:00
Ruben Perez
b63eaf761e Revert "Added a warning on the API being experimental"
This reverts commit 06357f17d1.
2023-02-21 13:34:48 +01:00
Ruben Perez
06357f17d1 Added a warning on the API being experimental 2023-02-20 13:23:56 +01:00
Ruben Perez
7280ad6ed9 B2 CIs now runs unit tests
Fixed problem that caused build failures under GCC11/C++17
Close #117
2023-02-08 18:30:01 +01:00
Ruben Perez
ac7285c621 server_diagnostics and client/server error categories.
Renamed error_info to server_diagnostics.
server_diagnostics::message is now correctly treated as user-supplied input
  (security fix). Added notes on examples on this.
Split server and client errors in different categories.
Added throw_on_error.
Added connection::rebind_executor.
Made error categories public.
Exception throwing now uses Boost.Exception.
Improved error handling in examples.
Updated Asio dependencies for stackful coroutines.

Close #64
Close #107
2023-01-17 19:41:21 +01:00
Ruben Perez
31bc3b9dac Copyright year bump 2022-12-31 16:28:59 +01:00
Ruben Perez
a975273490 Multi-function operations
Added proper support for multi-function operations, segregating
  the API in single-function and multi-function operations.
  Removed resultset as I/O object, the read_xxx owning functions
  and read_all.
Unit test infrastructure for async testing.
Reference types lifetime fixes.
Removed connection::valid.
Fixed a serialization bug for statements with no parameters.
Binary protocol strings now use the type recommended by MySQL.
Refactored Jamfile to match best practices.
Updated description in libraries.json.

Close #82
Close #81
Close #73
Close #59
Close #58
Close #53
Close #41
Close #22
2022-12-31 15:49:09 +01:00
Ruben Perez
a3c9844ef3 New blob, date and datetime types
Binary types now use the new blob and blob_view types
New date and datetime types that can handle invalid and zero date and datetimes
Protection against min and max macros
Improvements in field docs
Docs section on character sets
Introduced new collations with id from 250 to 309
database_types test full refactor

Close #104
Close #103
Close #95
Close #94
Close #91
Close #90
Close #85
Close #80
Close #77
2022-12-15 19:24:18 +01:00
Ruben Perez
eaa9705322 Windows b2 build fixes 2022-11-15 22:15:27 +01:00
Ruben Perez
5601b78035 execute_params => execute_options 2022-10-26 20:21:39 +02:00
Ruben Perez
36c8238f88 Failing regression for deferred tokens 2022-10-26 19:13:32 +02:00
Ruben Perez
f48687c452 Fixed PCH error in integ tests 2022-10-23 21:54:17 +02:00
Ruben Perez
84ce0a125c Fixed PCHs in gcc-6 2022-10-23 21:27:55 +02:00
Ruben Perez
0984ce414f Jamfile restructuring 2022-10-23 20:33:41 +02:00
Ruben Perez
f4fa553774 Basic Jamfiles 2022-10-21 19:49:51 +02:00
Ruben Perez
cfdfdadb69 Integration tests are now run only on demand 2022-03-29 22:55:21 +02:00
Ruben Perez
86e0eacd6a SSL/TLS and row reading rework (v0.2.0)
* SSL/TLS rework
* Unified connection object
* New prepared_statement::execute interface
* New resultset::read_one mechanic
* Unified row object
* null_t type
* Travis to GitHub actions migration
* Integration test rework
2022-03-21 16:09:48 +01:00
Ruben Perez
ade68d172d Added support for relational operators in value
Replaced std::nullptr_t for boost::variant2::monostate in values
Added support for relational operators in value
Automatic docs generation

closes #48
closes #46
2021-03-06 16:35:15 +01:00
Ruben Perez
dd2447c6cb Updated Boost version to 1.75.0
commit 5d0dafa324453ce731ddd2a427fa68490843b6c6
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 20 18:52:52 2020 +0100

    Added missing test exlussion on Windows

commit 52f1ce1eb6f43478451ee1c9761efa9a1f0c85bf
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 20 18:05:47 2020 +0100

    Trying to fix PS syntax errors 2

commit d680a874b069b8cc6c7965b226cda02f49438206
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 20 17:58:30 2020 +0100

    Fixing PS syntax errors

commit 84915ac269714fcfbfc6dc9e6ce10aefa395d33a
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 20 17:52:14 2020 +0100

    Changed Windows CMake builds to use latest Boost

commit 75aa757ae50f9c9d31cdb8018cf14e1dea5e6530
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 20 16:07:25 2020 +0100

    Removed conflictive build config under Windows

commit 7cd77f9204b842999233f8c6782caa3fbbf15a89
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Mon Dec 14 20:09:23 2020 +0100

    Desperate try to fix MSVC internal errors 2

commit f81de256735b1a705d03a7994cfecbce1a7581d4
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 20:44:59 2020 +0100

    Desperate try to fix stuff

commit 3a8f8d1caf8e8d906a7d96ba7edf62f2e3b09651
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 18:48:33 2020 +0100

    Reverted to using env var

commit 420427989274036fd04351531bdae2ebde621f5f
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 16:55:17 2020 +0100

    Changed CMake way of excluding tests to match b2's

commit 1db13f9e3df346135dadb1c2686ecafc0fe6c2df
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 16:33:05 2020 +0100

    Updated B2 CIs to explicitly run certain tests

commit 12700b387beb99f2ac1cf342291bc63f49d26a99
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 16:14:47 2020 +0100

    Updated test selection (sha256/unix) in b2

commit 0f23bddeb64203e5c570280e5e1de4a5ae083f94
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 16:14:34 2020 +0100

    Added internal script to setup b2 env

commit 13cf6b102b0d71f5496bcd433e3269ea297a9f26
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Dec 13 14:00:30 2020 +0100

    Added option to skip UNIX socket tests (only cmake)

commit a35f668ae0a968ef01eb6517d9de86c45e07dceb
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sat Dec 12 21:38:06 2020 +0100

    Attempted to correct test filter problem

commit 29282e5a4fa6e4f5b7c5de56662b9cbea7758e06
Author: anarthal <rubenperez038@gmail.com>
Date:   Sat Dec 12 11:27:53 2020 -0800

    Fixes to build in MSVC

commit bc8599358435de946cba10cc7cbdc264bb793e5b
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sat Dec 5 13:57:56 2020 +0100

    Reduced concurrency on Unix cmake builds

commit 3e183277cb2b3c4480ec102f956a4683811d3f44
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Fri Dec 4 17:50:31 2020 +0100

    Test ssh keys

commit d91a4ebdb65444da1c5952444c571dc68de1cd7b
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Nov 29 19:59:07 2020 +0100

    Remove TODO.txt in favor of GitHub issues

commit fbe5e58966304b6fd87029af4657e6ed1aa2f2fd
Author: Ruben Perez <rubenperez038@gmail.com>
Date:   Sun Nov 29 19:58:25 2020 +0100

    Updated to build with 1.75
2020-12-20 21:20:23 +01:00
ruben
3b91e6e978 Replaced gtest by Boost.Test 2020-06-29 17:17:11 +01:00
ruben
3407d818f6 Added support for Boost.Build 2020-06-12 23:44:30 +01:00