Oatpp Versions Save

🌱Light and powerful C++ web framework for highly scalable and resource-efficient web application. It's zero-dependency and easy-portable.

1.3.0-latest

1 week ago

πŸ‘‰ This is the 1.3.0 latest tag before we bump main repo version to 1.4.0 πŸ‘ˆ


What's Changed

New Contributors

Full Changelog: https://github.com/oatpp/oatpp/compare/1.3.0...1.3.0-latest

1.3.0

2 years ago

1.0.0

4 years ago
  • Configurable object mapping - now user can create own types and add support for these types in ApiController, ApiClient, json::mapping::ObjectMapper.
  • Predefined mapping-enabled unsigned integer types are added.
  • Full support for automatic content compression/decompression based on Accept-Encoding / Content-Encoding headers.
  • CMake. Options added to disable logs. OATPP_DISABLE_LOGV, OATPP_DISABLE_LOGD, OATPP_DISABLE_LOGI, OATPP_DISABLE_LOGW, OATPP_DISABLE_LOGE

0.19.12

4 years ago

Refactoring and Stabilization Release.

Features and Bug-Fixes

  • Introduce oatpp::data::buffer::Processor and oatpp::data::buffer::ProcessingPipeline for stream chunk-by-chunk processing.
  • Fix server stop() when using oatpp::network::server:: SimpleTCPConnectionProvider. Now server can be properly stopped without additional workarounds.
  • Fix tests inconsistency.
  • Fix a bunch of IO bugs (mostly for Windows).

Architecture Changes

  • Move IODefinitions.hpp to the root. Move v_io_size, v_io_handle and IOError to the oatpp namespace.
  • Upgrade streams interfaces (to provide nesting and pipelining of any complexity):
    • InputStream now extends ReadCallback
    • OutputStream now extends WriteCallback
    • read/write methods now extended with additional parameter async::Action&.
    • suggestInputStreamAsyncAction / suggestOutputStreamAsyncAction removed.

Changes Exposed to End-User

  • Rename oatpp::data::v_io_size to oatpp::v_io_size.
  • Rename oatpp::data::v_io_handle to oatpp::v_io_handle.
  • Rename oatpp::data::IOError to oatpp::IOError.
  • Use writeSimple instead of write for ConsistentOutputStreams - ChunkedBuffer and BufferOutputStream.
  • Server stop(). Now additional call to client::ConnectionProvider::getConnection() method is not needed in order to unblock accept and stop the server.

0.19.11

4 years ago

oatpp

  • ApiClient. Introduce retries and RetryPolicy.
  • oatpp::network::virtual_::Interface. Introduce ListenerLock to acquire an interface for listening (analog to bind on a port).
  • oatpp::parser::json::mapping::Serializer. Remove extra space char.
  • oatpp::parser::json::mapping::Serializer. Introduce Beautifier and Beautifier config.
  • Introduce v_buff_size for buffer sizes, as an integer capable of storing a pointer.
  • Introduce oatpp::data::stream::Context to store aditional data about the stream.
  • oatpp::network::server::SimpleTCPConnectionProvider. Add feature to obtain peer IP and port available through the connection stream context.

oatpp-libressl

  • Better portability.
  • Windows compatibility.
  • Support TLS over custom transport.
  • Require LibreSSL minimum version 3.0.0.

oatpp-mbedtls

  • Fix acceptor-thread blocking by handshake. TLS Handshake is moved to the stream context initialization.

0.19.10

4 years ago
  • ApiController. Add router prefix.
  • Introduce LazyStringMap to store headers and query parameters.
  • Introduce ConnectionPool.
  • Refactor. Rename ADDCORS --> ADD_CORS macro.
  • Optimization. Use BufferOutputStream in RequestHeadersReader.
  • Fix thread sanitizer warnings.
  • Fix some compiler warnings.

0.19.9

4 years ago
  • ApiController. Introduced AUTHORIZATION macro.
  • ApiController. Introduced ADDCORS macro.
  • ApiController. Introduced ENDPOINT_INTERCEPTOR macro.
  • Better error handling for simple and async APIs.
  • Support HTTP-pipelining on server-side.
  • Performance optimization. Remove double-buffering while sending the response.
  • Minor bug-fixes.