restinio (0.6.19+ds-1.2) unstable; urgency=medium
authorAdrian Bunk <bunk@debian.org>
Fri, 3 Jul 2026 12:22:21 +0000 (15:22 +0300)
committerAdrian Bunk <bunk@debian.org>
Fri, 3 Jul 2026 12:22:21 +0000 (15:22 +0300)
  * Non-maintainer upload.
  * Backport upstream fix for FTBFS with asio 1.36.0.
    (Closes: #1139481)

[dgit import unpatched restinio 0.6.19+ds-1.2]

13 files changed:
1  2 
debian/changelog
debian/control
debian/copyright
debian/gbp.conf
debian/patches/0001-Adaptation-for-Asio-from-Boost-1.87.patch
debian/patches/2000-include-clara.patch
debian/patches/README
debian/patches/cmake-4.patch
debian/patches/series
debian/rules
debian/source/format
debian/upstream/metadata
debian/watch

index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..c87e123ba0c69ccff6b44d26abc5dddce73db322
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,113 @@@
++restinio (0.6.19+ds-1.2) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Backport upstream fix for FTBFS with asio 1.36.0.
++    (Closes: #1139481)
++
++ -- Adrian Bunk <bunk@debian.org>  Fri, 03 Jul 2026 15:22:21 +0300
++
++restinio (0.6.19+ds-1.1) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Fix FTBFS with CMake 4. (Closes: #1113468)
++
++ -- Adrian Bunk <bunk@debian.org>  Sat, 15 Nov 2025 14:51:31 +0200
++
++restinio (0.6.19+ds-1) unstable; urgency=medium
++
++  * Repack to remove several embedded copies, per #1053931.
++  * debian/control: Add rapidjson-dev to Build-Depends.
++  * debian/copyright: Remove entries corresponding to the
++    removed embedded copies.
++  * debian/watch: Add compression=bzip2, dversionmangle=auto,
++    and repacksuffix=+ds.
++
++ -- Amin Bandali <bandali@gnu.org>  Thu, 26 Oct 2023 01:00:31 -0400
++
++restinio (0.6.19-1) unstable; urgency=medium
++
++  * New upstream release
++    - Drop upstreamed patch for fixing FBTFS with GCC 13.
++  * Fix debian/watch file to correctly find upstream releases
++  * Update debian/upstream/metadata
++  * Switch debian/patches/ to {0xxx,1xxx,2xxx} naming convention
++  * Update debian/copyright to address lintian warnings
++
++ -- Amin Bandali <bandali@gnu.org>  Sat, 02 Sep 2023 16:49:01 -0400
++
++restinio (0.6.16-1) unstable; urgency=medium
++
++  * Fix FTBFS with GCC-13 (Closes: #1037841)
++  * debian/control: Taking over the maintenance of the package; many
++    thanks, Felix!
++  * Update standards version to 4.6.2, no changes needed
++
++ -- Amin Bandali <bandali@gnu.org>  Mon, 14 Aug 2023 20:00:33 -0400
++
++restinio (0.6.16-0.2) unstable; urgency=medium
++
++  * Non-maintainer upload.
++  * Drop Build-Depends: libpcre++-dev. (Closes: #1020932)
++  * Replace default CI config with central one.
++
++  [ Bo YU ]
++  * Fix FTBFS on riscv64. (Closes: #1019723)
++
++  [ Debian Janitor ]
++  * Bump debhelper from old 12 to 13.
++  * Set upstream metadata fields: Bug-Database, Bug-Submit.
++  * Update standards version to 4.5.1, no changes needed.
++
++ -- Bastian Germann <bage@debian.org>  Thu, 29 Sep 2022 15:20:35 +0200
++
++restinio (0.6.16-0.1) unstable; urgency=low
++
++  * Non-maintainer upload.
++  * New upstream release.
++    - Fixes FTBFS with fmtlib 9. (Closes: #1014546)
++    - catch2 updated to compile with glibc 2.34. (Closes: #1017149)
++    - Drop 0001-INTERFACE-fmt-fmt.patch applied upstream.
++
++ -- Adrian Bunk <bunk@debian.org>  Mon, 29 Aug 2022 01:53:03 +0300
++
++restinio (0.6.13-1) unstable; urgency=medium
++
++  * Team upload.
++  * New upstream version.
++
++ -- Alexandre Viau <aviau@debian.org>  Mon, 04 Jan 2021 11:26:26 -0500
++
++restinio (0.6.6-3) unstable; urgency=medium
++
++  * Link atomic on a few architectures (Closes: #960824)
++    Thanks to Adrian Bunk.
++  * Disable tests (avoid internet access).
++
++ -- Felix Salfelder <felix@salfelder.org>  Mon, 19 Oct 2020 08:51:24 +0100
++
++restinio (0.6.6-2) unstable; urgency=medium
++
++  [ Felix Salfelder ]
++  * add dependencies on http-parser and fmt (Closes: #968454)
++
++ -- Sebastien Delafond <seb@debian.org>  Mon, 31 Aug 2020 09:02:31 +0200
++
++restinio (0.6.6-1) unstable; urgency=medium
++
++  [ Sébastien Delafond ]
++  * Build-depend on cmake
++  * Add debian/watch
++  * Clean up d/rules
++  * Enable tests and samples, with extra build-depends
++  * New upstream version 0.6.6
++  * Add basic d/salsa-ci.yml
++
++ -- Sebastien Delafond <seb@debian.org>  Thu, 07 May 2020 15:51:22 +0200
++
++restinio (0.6.4-1) UNRELEASED; urgency=medium
++
++  * Initial release (Closes: #946832)
++  * TODO: why does it have build depends,
++          possible cmake ma{gic,dness}?
++
++ -- Felix Salfelder <felix@salfelder.org>  Sun, 16 Feb 2020 19:07:44 +0000
diff --cc debian/control
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..cbcc1493391faaad3454cfaa99cc265b235a6b59
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,33 @@@
++Source: restinio
++Priority: optional
++Maintainer: Amin Bandali <bandali@gnu.org>
++Uploaders: Felix Salfelder <felix@salfelder.org>
++Build-Depends: catch2,
++               cmake,
++               debhelper-compat (= 13),
++               libasio-dev,
++               libboost-dev,
++               libboost-regex-dev,
++               libfmt-dev,
++               libhttp-parser-dev,
++               libpcre2-dev,
++               libssl-dev,
++               rapidjson-dev,
++               zlib1g-dev
++Standards-Version: 4.6.2
++Section: libs
++Homepage: https://github.com/Stiffstream/restinio
++Vcs-Browser: https://salsa.debian.org/debian/restinio
++Vcs-Git: https://salsa.debian.org/debian/restinio.git
++Rules-Requires-Root: no
++
++Package: librestinio-dev
++Section: libdevel
++Architecture: any
++Multi-Arch: same
++Depends: libfmt-dev, libhttp-parser-dev, ${misc:Depends}
++Description: restinio implements an embedded HTTP/Websocket server
++ It is based on standalone version of ASIO and targeted primarily for
++ asynchronous processing of HTTP-requests.
++ Since v.0.4.1 Boost::ASIO (1.66 or higher) is also supported
++ This package contains a header-only C++14 library.
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..3ef18729238bbe22fc00b3b6a3009d84da5c8d58
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,128 @@@
++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
++Upstream-Name: restinio
++Upstream-Contact: info@stiffstream.com
++Source: https://github.com/Stiffstream/restinio
++Files-Excluded: dev/asio/*
++                dev/fmt/*
++                dev/nodejs/http_parser/*
++                dev/rapidjson/*
++                dev/restinio/third_party/zlib/*
++                LICENSE.zlib
++
++Files: *
++Copyright: (c) 2017-2020 Stiffstream <info at stiffstream dot com>. All rights reserved.
++License: BSD-3-Clause
++
++Files: dev/restinio/third_party/variant-lite/variant.hpp dev/restinio/third_party/optional-lite/optional.hpp dev/so_5/3rd_party/optional-lite/nonstd/optional.hpp dev/restinio/third_party/string-view-lite/string_view.hpp
++Copyright: 2014-2018 Martin Moene
++License: BSL-1.0
++
++Files: dev/restinio/third_party/expected-lite/expected.hpp
++Copyright: 2016-2018 Martin Moene
++License: BSL-1.0
++
++Files: dev/cmake/modules/FindPCRE.cmake
++Copyright: 2007-2009 LuaDist
++License: MIT
++
++Files: dev/nodejs/*
++Copyright: Joyent, Inc. and other Node contributors. All rights reserved.
++License: MIT
++
++Files: dev/catch2/* dev/clara/clara.hpp
++Copyright: 2014-2019 Two Blue Cubes Ltd
++License: BSL-1.0
++
++Files: dev/catch2/catch_reporter_sonarqube.hpp
++Copyright: Social Point SL
++License: BSL-1.0
++
++Files: dev/catch2/catch_reporter_tap.hpp
++Copyright: 2015 Martin Moene
++License: BSL-1.0
++
++Files: dev/catch2/catch_reporter_automake.hpp
++Copyright: 2017 Justin R. Wilson
++License: BSL-1.0
++
++Files: debian/*
++Copyright: 2020 Felix Salfelder <felix@salfelder.org>
++           2020 Sebastien Delafond <seb@debian.org>
++           2023 Amin Bandali <bandali@gnu.org>
++License: GPL-3
++ See `/usr/share/common-licenses/GPL-3'
++
++License: BSL-1.0
++ Boost Software License - Version 1.0 - August 17th, 2003
++ .
++ Permission is hereby granted, free of charge, to any person or
++ organization obtaining a copy of the software and accompanying
++ documentation covered by this license (the "Software") to use,
++ reproduce, display, distribute, execute, and transmit the
++ Software, and to prepare derivative works of the Software, and
++ to permit third-parties to whom the Software is furnished to do
++ so, all subject to the following:
++ .
++ The copyright notices in the Software and this entire statement,
++ including the above license grant, this restriction and the
++ following disclaimer, must be included in all copies of the
++ Software, in whole or in part, and all derivative works of the
++ Software, unless such copies or derivative works are solely in
++ the form of machine-executable object code generated by a source
++ language processor.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
++ NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
++ ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR
++ OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING
++ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ OTHER DEALINGS IN THE SOFTWARE.
++
++License: MIT
++ Permission is hereby granted, free of charge, to any person obtaining
++ a copy of this software and associated documentation files (the
++ "Software"), to deal in the Software without restriction, including
++ without limitation the rights to use, copy, modify, merge, publish,
++ distribute, sublicense, and/or sell copies of the Software, and to
++ permit persons to whom the Software is furnished to do so, subject to
++ the following conditions:
++ .
++ The above copyright notice and this permission notice shall be
++ included in all copies or substantial portions of the Software.
++ .
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
++ BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
++ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
++ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
++ SOFTWARE.
++
++License: BSD-3-Clause
++ Redistribution and use in source and binary forms, with or without
++ modification, are permitted provided that the following conditions are met:
++ .
++ 1. Redistributions of source code must retain the above copyright notice, this
++ list of conditions and the following disclaimer.
++ .
++ 2. Redistributions in binary form must reproduce the above copyright notice,
++ this list of conditions and the following disclaimer in the documentation
++ and/or other materials provided with the distribution.
++ .
++ 3. Neither the name of the copyright holder nor the names of its contributors
++ may be used to endorse or promote products derived from this software without
++ specific prior written permission.
++ .
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
++ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
++ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
++ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
++ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
++ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
++ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
++ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --cc debian/gbp.conf
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..a85b76e4e1601b3307aaece8216ec7e6262dbae1
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,15 @@@
++[DEFAULT]
++pristine-tar = True
++debian-branch = debian/latest
++upstream-branch = upstream/latest
++
++[buildpackage]
++compression = bz2
++sign-tags = True
++
++[dch]
++multimaint-merge = True
++
++[import-orig]
++postimport = dch -v%(version)s New upstream release; git add debian/changelog; debcommit
++upstream-vcs-tag = v.%(version%~%.)s
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..40cde0aa866ae09cfeed6ed33dc3b9bae1af6e86
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,234 @@@
++From 6c4cf139d5e5f1e69de41712c350ff95d87409b3 Mon Sep 17 00:00:00 2001
++From: Yauheni Akhotnikau <eao197@gmail.com>
++Date: Tue, 4 Feb 2025 12:27:33 +0300
++Subject: Adaptation for Asio from Boost-1.87.
++
++---
++ dev/restinio/http_server_run.hpp            |  4 +++-
++ dev/restinio/impl/acceptor.hpp              |  4 ++--
++ dev/restinio/impl/connection.hpp            |  4 ++--
++ dev/test/basic_auth/main.cpp                |  2 +-
++ dev/test/bearer_auth/main.cpp               |  2 +-
++ dev/test/common/pub.hpp                     |  2 +-
++ dev/test/file_upload/main.cpp               |  2 +-
++ dev/test/handle_requests/echo_body/main.cpp |  2 +-
++ dev/test/multipart_body/main.cpp            |  2 +-
++ dev/test/response_coordinator/main.cpp      |  2 +-
++ dev/test/run_on_thread_pool/main.cpp        | 16 +++++++++++-----
++ dev/test/try_parse_field/main.cpp           |  2 +-
++ dev/test/write_group_output_ctx/main.cpp    |  2 +-
++ 13 files changed, 27 insertions(+), 19 deletions(-)
++
++diff --git a/dev/restinio/http_server_run.hpp b/dev/restinio/http_server_run.hpp
++index b9d17fcf..5f422ad6 100644
++--- a/dev/restinio/http_server_run.hpp
+++++ b/dev/restinio/http_server_run.hpp
++@@ -680,7 +680,9 @@ template<typename Traits>
++ inline void
++ initiate_shutdown( http_server_t<Traits> & server )
++ {
++-     server.io_context().post( [&server] {
+++     asio_ns::post(
+++             server.io_context(),
+++             [&server] {
++                      server.close_sync();
++                      server.io_context().stop();
++              } );
++diff --git a/dev/restinio/impl/acceptor.hpp b/dev/restinio/impl/acceptor.hpp
++index caa2fbf7..cdf7faeb 100644
++--- a/dev/restinio/impl/acceptor.hpp
+++++ b/dev/restinio/impl/acceptor.hpp
++@@ -263,7 +263,7 @@ class acceptor_t final
++                              ep = m_acceptor.local_endpoint();
++ 
++                              // Now we can switch acceptor to listen state.
++-                             m_acceptor.listen( asio_ns::socket_base::max_connections );
+++                             m_acceptor.listen( asio_ns::socket_base::max_listen_connections );
++ 
++                              // Call accept connections routine.
++                              for( std::size_t i = 0; i< this->concurrent_accept_sockets_count(); ++i )
++@@ -616,7 +616,7 @@ class acceptor_t final
++                              else if( str_addr == "ip6-localhost" )
++                                      str_addr = "::1";
++ 
++-                             result = asio_ns::ip::address::from_string( str_addr );
+++                             result = asio_ns::ip::make_address( str_addr );
++                      }
++                      else if( auto * addr_v = get_if<asio_ns::ip::address>( &from ) )
++                      {
++diff --git a/dev/restinio/impl/connection.hpp b/dev/restinio/impl/connection.hpp
++index fa0c830d..a6385cc7 100644
++--- a/dev/restinio/impl/connection.hpp
+++++ b/dev/restinio/impl/connection.hpp
++@@ -1053,8 +1053,8 @@ class connection_t final
++                                      m_logger.trace( [&]{
++                                              // Get status line:
++                                              const string_view_t status_line{
++-                                                             asio_ns::buffer_cast< const char * >(
++-                                                                     next_write_group->first.items().front().buf() ),
+++                                                             static_cast< const char * >(
+++                                                                     next_write_group->first.items().front().buf().data() ),
++                                                              next_write_group->first.status_line_size() };
++ 
++                                              return fmt::format(
++diff --git a/dev/test/basic_auth/main.cpp b/dev/test/basic_auth/main.cpp
++index f20e727d..2f9e03a3 100644
++--- a/dev/test/basic_auth/main.cpp
+++++ b/dev/test/basic_auth/main.cpp
++@@ -16,7 +16,7 @@ auto
++ make_dummy_endpoint()
++ {
++      return restinio::endpoint_t{
++-                     restinio::asio_ns::ip::address::from_string("127.0.0.1"),
+++                     restinio::asio_ns::ip::make_address("127.0.0.1"),
++                      12345u
++      };
++ }
++diff --git a/dev/test/bearer_auth/main.cpp b/dev/test/bearer_auth/main.cpp
++index b5e94fd7..264724b6 100644
++--- a/dev/test/bearer_auth/main.cpp
+++++ b/dev/test/bearer_auth/main.cpp
++@@ -15,7 +15,7 @@ auto
++ make_dummy_endpoint()
++ {
++      return restinio::endpoint_t{
++-                     restinio::asio_ns::ip::address::from_string("127.0.0.1"),
+++                     restinio::asio_ns::ip::make_address("127.0.0.1"),
++                      12345u
++      };
++ }
++diff --git a/dev/test/common/pub.hpp b/dev/test/common/pub.hpp
++index 23d21bb5..090af23f 100644
++--- a/dev/test/common/pub.hpp
+++++ b/dev/test/common/pub.hpp
++@@ -40,7 +40,7 @@ do_with_socket(
++ 
++      socket.connect(
++              restinio::asio_ns::ip::tcp::endpoint{
++-                     restinio::asio_ns::ip::address::from_string( str_addr ),
+++                     restinio::asio_ns::ip::make_address( str_addr ),
++                      port
++              } );
++ 
++diff --git a/dev/test/file_upload/main.cpp b/dev/test/file_upload/main.cpp
++index 3528a082..bb355e78 100644
++--- a/dev/test/file_upload/main.cpp
+++++ b/dev/test/file_upload/main.cpp
++@@ -15,7 +15,7 @@ auto
++ make_dummy_endpoint()
++ {
++      return restinio::endpoint_t{
++-                     restinio::asio_ns::ip::address::from_string("127.0.0.1"),
+++                     restinio::asio_ns::ip::make_address("127.0.0.1"),
++                      12345u
++      };
++ }
++diff --git a/dev/test/handle_requests/echo_body/main.cpp b/dev/test/handle_requests/echo_body/main.cpp
++index f46a3cd1..f4403bf5 100644
++--- a/dev/test/handle_requests/echo_body/main.cpp
+++++ b/dev/test/handle_requests/echo_body/main.cpp
++@@ -116,7 +116,7 @@ perform_test()
++                      [&request_handler]( auto & settings ){
++                              settings
++                                      .port( utest_default_port() )
++-                                     .address( restinio::asio_ns::ip::address::from_string( "127.0.0.1" ) )
+++                                     .address( restinio::asio_ns::ip::make_address( "127.0.0.1" ) )
++                                      .request_handler( request_handler );
++                      }
++              };
++diff --git a/dev/test/multipart_body/main.cpp b/dev/test/multipart_body/main.cpp
++index a0975faa..40592f89 100644
++--- a/dev/test/multipart_body/main.cpp
+++++ b/dev/test/multipart_body/main.cpp
++@@ -39,7 +39,7 @@ auto
++ make_dummy_endpoint()
++ {
++      return restinio::endpoint_t{
++-                     restinio::asio_ns::ip::address::from_string("127.0.0.1"),
+++                     restinio::asio_ns::ip::make_address("127.0.0.1"),
++                      12345u
++      };
++ }
++diff --git a/dev/test/response_coordinator/main.cpp b/dev/test/response_coordinator/main.cpp
++index 13250924..8ff083f9 100644
++--- a/dev/test/response_coordinator/main.cpp
+++++ b/dev/test/response_coordinator/main.cpp
++@@ -33,7 +33,7 @@ make_string( const BUF & buf )
++ {
++      return
++              std::string{
++-                     asio_ns::buffer_cast< const char * >( buf.buf() ),
+++                     static_cast< const char * >( buf.buf().data() ),
++                      asio_ns::buffer_size( buf.buf() ) };
++ }
++ 
++diff --git a/dev/test/run_on_thread_pool/main.cpp b/dev/test/run_on_thread_pool/main.cpp
++index d3e709cf..10ab951e 100644
++--- a/dev/test/run_on_thread_pool/main.cpp
+++++ b/dev/test/run_on_thread_pool/main.cpp
++@@ -92,9 +92,11 @@ TEST_CASE( "on thread pool with break signals" , "[with_break_signal]" )
++ 
++      // Wait for HTTP server to run.
++      std::promise<void> started;
++-     http_server.io_context().post( [&started] {
++-                     started.set_value();
++-             } );
+++     restinio::asio_ns::post(
+++                     http_server.io_context(),
+++                     [&started] {
+++                             started.set_value();
+++                     } );
++      started.get_future().get();
++ 
++      std::string response;
++@@ -160,7 +162,9 @@ TEST_CASE( "on thread pool without break signals" , "[without_break_signal]" )
++ 
++      // Wait for HTTP server to run.
++      std::promise<void> started;
++-     http_server.io_context().post( [&started] {
+++     restinio::asio_ns::post(
+++             http_server.io_context(),
+++             [&started] {
++                      started.set_value();
++              } );
++      started.get_future().get();
++@@ -228,7 +232,9 @@ TEST_CASE( "server on thread pool runner" , "[on_pool_runner]" )
++ 
++      // Wait for HTTP server to run.
++      std::promise<void> started;
++-     http_server.io_context().post( [&started] {
+++     restinio::asio_ns::post(
+++             http_server.io_context(),
+++             [&started] {
++                      started.set_value();
++              } );
++      started.get_future().get();
++diff --git a/dev/test/try_parse_field/main.cpp b/dev/test/try_parse_field/main.cpp
++index b76e3c93..7134be5f 100644
++--- a/dev/test/try_parse_field/main.cpp
+++++ b/dev/test/try_parse_field/main.cpp
++@@ -16,7 +16,7 @@ auto
++ make_dummy_endpoint()
++ {
++      return restinio::endpoint_t{
++-                     restinio::asio_ns::ip::address::from_string("127.0.0.1"),
+++                     restinio::asio_ns::ip::make_address("127.0.0.1"),
++                      12345u
++      };
++ }
++diff --git a/dev/test/write_group_output_ctx/main.cpp b/dev/test/write_group_output_ctx/main.cpp
++index b4e1e78b..2093e840 100644
++--- a/dev/test/write_group_output_ctx/main.cpp
+++++ b/dev/test/write_group_output_ctx/main.cpp
++@@ -24,7 +24,7 @@ make_string( const asio_ns::const_buffer & buf )
++ {
++      return
++              std::string{
++-                     asio_ns::buffer_cast< const char * >( buf ),
+++                     static_cast< const char * >( buf.data() ),
++                      asio_ns::buffer_size( buf ) };
++ }
++ 
++-- 
++2.47.3
++
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..a2e71ba8c53c8c7596da72fa762ffd5228d70f48
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,22 @@@
++From: =?utf-8?q?S=C3=A9bastien_Delafond?= <sdelafond@gmail.com>
++Date: Fri, 24 Apr 2020 14:51:18 +0200
++Subject: Include clara
++Forwarded: not-needed
++
++---
++ dev/CMakeLists.txt | 2 ++
++ 1 file changed, 2 insertions(+)
++
++diff --git a/dev/CMakeLists.txt b/dev/CMakeLists.txt
++index 6769bcc..65fce0e 100644
++--- a/dev/CMakeLists.txt
+++++ b/dev/CMakeLists.txt
++@@ -74,6 +74,8 @@ IF (RESTINIO_MASTER_PROJECT)
++                      find_package(Catch2 CONFIG REQUIRED)
++              ENDIF ()
++ 
+++             include_directories("${CMAKE_SOURCE_DIR}/clara")
+++
++              # HTTP parser
++              IF (RESTINIO_USE_EXTERNAL_HTTP_PARSER)
++                      find_package(http-parser REQUIRED)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..80c1584376a9798f816d904a07f9288adbde225d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,3 @@@
++0xxx: Grabbed from upstream development.
++1xxx: Possibly relevant for upstream adoption.
++2xxx: Only relevant for official Debian release.
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..611af29ae7fcff6d9628ae60dd2ed21b528c09c6
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,12 @@@
++Description: Fix FTBFS with CMake 4
++Author: Adrian Bunk <bunk@debian.org>
++Bug-Debian: https://bugs.debian.org/1113468
++
++--- restinio-0.6.19+ds.orig/dev/so_5/CMakeLists.txt
+++++ restinio-0.6.19+ds/dev/so_5/CMakeLists.txt
++@@ -1,4 +1,4 @@
++-cmake_minimum_required(VERSION 3.1)
+++cmake_minimum_required(VERSION 3.5)
++ 
++ if((NOT SOBJECTIZER_BUILD_STATIC) AND (NOT SOBJECTIZER_BUILD_SHARED))
++   set(SOBJECTIZER_BUILD_STATIC ON)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..74f165053cc8a1a8c6aa671346474394ff8fc109
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,3 @@@
++2000-include-clara.patch
++cmake-4.patch
++0001-Adaptation-for-Asio-from-Boost-1.87.patch
diff --cc debian/rules
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..7607200aa779f20dc29cf6b8b6585c686efe6157
new file mode 100755 (executable)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,41 @@@
++#!/usr/bin/make -f
++# See debhelper(7) (uncomment to enable)
++# output every command that modifies files on the build system.
++# export DH_VERBOSE = 1
++
++
++export DEB_BUILD_MAINT_OPTIONS = hardening=+all
++
++# see ENVIRONMENT in dpkg-buildflags(1)
++# package maintainers to append CFLAGS
++#export DEB_CFLAGS_MAINT_APPEND  = -Wall -pedantic
++# package maintainers to append LDFLAGS
++#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
++
++DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
++
++ifneq (,$(filter $(DEB_HOST_ARCH), armel m68k mipsel powerpc riscv64 sh4))
++      export DEB_LDFLAGS_MAINT_APPEND += -Wl,--no-as-needed -latomic -Wl,--as-needed
++endif
++
++CMAKE_OPTIONS := -DRESTINIO_FIND_DEPS=1 \
++                 -DRESTINIO_USE_EXTERNAL_HTTP_PARSER=1 \
++                 -DRESTINIO_FMT_HEADER_ONLY=0 \
++                 -DRESTINIO_ALLOW_SOBJECTIZER=1 \
++                 -DRESTINIO_TEST=1 \
++                 -DRESTINIO_SAMPLE=1 \
++                 -DRESTINIO_BENCH=1 \
++                 -DCMAKE_LIBRARY_ARCHITECTURE="$(DEB_HOST_MULTIARCH)"
++
++%:
++      dh $@ --sourcedirectory=dev
++
++override_dh_auto_configure:
++      dh_auto_configure --sourcedirectory=dev -- $(CMAKE_OPTIONS)
++
++override_dh_auto_test:
++      : # export DEB_BUILD_OPTIONS="parallel=1" ; dh_auto_test
++
++override_dh_auto_install:
++      dh_auto_install
++      rm -fr debian/librestinio-dev/usr/bin
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..163aaf8d82b6c54f23c45f32895dbdfdcc27b047
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++3.0 (quilt)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..ede098153686656a32bb0fcb61c0f099ef16676e
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,6 @@@
++---
++Name: RESTinio
++Bug-Database: https://github.com/Stiffstream/restinio/issues
++Bug-Submit: https://github.com/Stiffstream/restinio/issues/new
++Repository: https://github.com/Stiffstream/restinio.git
++Repository-Browse: https://github.com/Stiffstream/restinio
diff --cc debian/watch
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..ad84babf0f686327ddf4f859750dfef7548ff89d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,5 @@@
++version=4
++opts="searchmode=plain,compression=bzip2,dversionmangle=auto,\
++repacksuffix=+ds,filenamemangle=s%v?@ANY_VERSION@%@PACKAGE@-$1.tar.xz%" \
++https://api.github.com/repos/Stiffstream/restinio/releases?per_page=50 \
++https://github.com/[^/]+/[^/]+/releases/download/[^/]+/restinio-@ANY_VERSION@-full\.tar\.bz2