From 6338b50585b9c4c77265632d80b9fc4af47bf400 Mon Sep 17 00:00:00 2001 From: "Dr. Patrick Urbanke" Date: Sun, 18 Oct 2026 15:49:56 +0200 Subject: [PATCH 1/3] Updated version to 0.26.0 --- CMakeLists.txt | 2 +- package.xml | 2 +- vcpkg.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index acb80aa7e..dcb838b16 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -181,7 +181,7 @@ if (REFLECTCPP_USE_VCPKG) set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake CACHE STRING "Vcpkg toolchain file") endif () -project(reflectcpp VERSION 0.25.0 LANGUAGES CXX) +project(reflectcpp VERSION 0.26.0 LANGUAGES CXX) find_package(ament_cmake QUIET) diff --git a/package.xml b/package.xml index aa6e5dd7a..04fdbf48f 100644 --- a/package.xml +++ b/package.xml @@ -2,7 +2,7 @@ reflectcpp - 0.25.0 + 0.26.0 C++ reflection library liuzicheng1987 MIT diff --git a/vcpkg.json b/vcpkg.json index 970cccb09..696be7f9f 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -1,6 +1,6 @@ { "name": "reflectcpp", - "version-string": "0.25.0", + "version-string": "0.26.0", "dependencies": [ { "name": "vcpkg-cmake" From c04ab2972f52925a0ee0234a210315be23786c24 Mon Sep 17 00:00:00 2001 From: "Dr. Patrick Urbanke" Date: Sun, 18 Oct 2026 16:00:52 +0200 Subject: [PATCH 2/3] Reflect changed ownership --- .github/workflows/jekyll-gh-pages.yml | 4 ++-- README.md | 10 +++++----- benchmarks/README.md | 4 ++-- conanfile.py | 2 +- docs/content/benchmarks.md | 4 ++-- docs/content/build_docs.md | 2 +- docs/content/contributing.md | 2 +- docs/content/custom_classes.md | 2 +- docs/content/install.md | 2 +- .../supported_formats/supporting_your_own_format.md | 6 +++--- docs/hugo.yaml | 2 +- 11 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/jekyll-gh-pages.yml b/.github/workflows/jekyll-gh-pages.yml index b98ea7725..568c3dca1 100644 --- a/.github/workflows/jekyll-gh-pages.yml +++ b/.github/workflows/jekyll-gh-pages.yml @@ -24,7 +24,7 @@ concurrency: jobs: # Build job build: - if: github.repository == 'getml/reflect-cpp' + if: github.repository == 'munich-data-engineering/reflect-cpp' runs-on: ubuntu-latest steps: - name: Checkout @@ -41,7 +41,7 @@ jobs: # Deployment job deploy: - if: github.repository == 'getml/reflect-cpp' + if: github.repository == 'munich-data-engineering/reflect-cpp' environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} diff --git a/README.md b/README.md index c0d73a51d..25fd3b4f1 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # ![C++](https://img.shields.io/badge/c++-%2300599C.svg?style=for-the-badge&logo=c%2B%2B&logoColor=white) reflect-cpp [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/getml/reflect-cpp/graphs/commit-activity) +[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/munich-data-engineering/reflect-cpp/graphs/commit-activity) [![Generic badge](https://img.shields.io/badge/C++-20-blue.svg)](https://shields.io/) [![Generic badge](https://img.shields.io/badge/gcc-11+-blue.svg)](https://shields.io/) [![Generic badge](https://img.shields.io/badge/clang-14+-blue.svg)](https://shields.io/) @@ -16,13 +16,13 @@ reflect-cpp supports C++-26 reflection, but most of the functionality is also available in C++-20, except where explicitly noted otherwise. -Moreover, reflect-cpp is the basis for [sqlgen](https://github.com/getml/sqlgen), a **modern, type-safe ORM and SQL query generator** for C++20, inspired by Python's SQLAlchemy/SQLModel and Rust's Diesel. It provides a fluent, composable interface for database operations with compile-time type checking and SQL injection protection. +[Moreover, reflect-cpp is the basis for [sqlgen](https://github.com/munich-data-engineering/sqlgen), a **modern, type-safe ORM and SQL query generator** for C++20, inspired by Python's SQLAlchemy/SQLModel and Rust's Diesel. It provides a fluent, composable interface for database operations with compile-time type checking and SQL injection protection.] reflect-cpp and sqlgen fill important gaps in C++ development. They reduce boilerplate code and increase code safety. Together, they enable reliable and efficient ETL pipelines. ### Design principles for reflect-cpp include: -- Close integration with [containers](https://github.com/getml/reflect-cpp?tab=readme-ov-file#support-for-containers) from the C++ standard library +[- Close integration with [containers](https://github.com/munich-data-engineering/reflect-cpp?tab=readme-ov-file#support-for-containers) from the C++ standard library] - Close adherence to C++ idioms - Out-of-the-box support for [JSON](https://rfl.getml.com/supported_formats/json) - Simple [installation](https://rfl.getml.com/install) @@ -86,7 +86,7 @@ The following table lists the serialization formats currently supported by refle | YAML | [yaml-cpp](https://github.com/jbeder/yaml-cpp) | >= 0.8.0 | MIT | Textual format with an emphasis on readability | | yas | [yas](https://github.com/niXman/yas) | >= 7.1.0 | BSL 1.0 | Very fast and compact serialization library | -Support for more serialization formats is in development. Refer to the [issues](https://github.com/getml/reflect-cpp/issues) for details. +[Support for more serialization formats is in development. Refer to the [issues](https://github.com/munich-data-engineering/reflect-cpp/issues) for details.] Please also refer to the *conanfile.py* or *vcpkg.json* in this repository. @@ -733,7 +733,7 @@ enums. Refer to the [documentation](https://rfl.getml.com/cpp26_reflection) for ## The team behind reflect-cpp -reflect-cpp has been developed by [getML (Code17 GmbH)](https://getml.com), a company specializing in software engineering and machine learning for enterprise applications. reflect-cpp is currently maintained by Patrick Urbanke and Manuel Bellersen, with major contributions coming from the community. +reflect-cpp has been developed by [Munich Data Engineering](https://www.munich-data-engineering.com), a company specializing in software engineering and machine learning for enterprise applications. ### Related projects diff --git a/benchmarks/README.md b/benchmarks/README.md index c0c1e7a7f..bd4093037 100644 --- a/benchmarks/README.md +++ b/benchmarks/README.md @@ -1,6 +1,6 @@ # Benchmarks -reflect-cpp conducts continuuous benchmarking through its [Github Actions](https://github.com/getml/reflect-cpp/actions) pipelines for different compilers, operating systems +reflect-cpp conducts continuuous benchmarking through its [Github Actions](https://github.com/munich-data-engineering/reflect-cpp/actions) pipelines for different compilers, operating systems and architectures. Currently, we benchmark the following: 1. How reflect-cpp's JSON parser compares to other JSON libraries for C or C++ @@ -8,7 +8,7 @@ and architectures. Currently, we benchmark the following: ## Viewing the benchmark results -To view the benchmark results, go to the [Actions tab](https://github.com/getml/reflect-cpp/actions) +To view the benchmark results, go to the [Actions tab](https://github.com/munich-data-engineering/reflect-cpp/actions) of this Github repository, click on a recent run you are interested in and scroll down to view the summary. ## Running the benchmark results on your own machine diff --git a/conanfile.py b/conanfile.py index f31458600..2c900884d 100644 --- a/conanfile.py +++ b/conanfile.py @@ -18,7 +18,7 @@ class ReflectCppConan(ConanFile): description = "C++-20 library for fast serialization, deserialization and validation using reflection" license = "MIT" url = "https://github.com/conan-io/conan-center-index" - homepage = "https://github.com/getml/reflect-cpp" + homepage = "https://github.com/munich-data-engineering/reflect-cpp" topics = ( "reflection", "serialization", diff --git a/docs/content/benchmarks.md b/docs/content/benchmarks.md index e1e25ac50..ecc45afa1 100644 --- a/docs/content/benchmarks.md +++ b/docs/content/benchmarks.md @@ -1,8 +1,8 @@ # Benchmarks reflect-cpp conducts continuuous benchmarking across different operating systems, compilers and architectures -and publishes the results on its [Actions tab](https://github.com/getml/reflect-cpp/actions). -Refer to the [benchmarks folder](https://github.com/getml/reflect-cpp/tree/main/benchmarks) for details. +and publishes the results on its [Actions tab](https://github.com/munich-data-engineering/reflect-cpp/actions). +Refer to the [benchmarks folder](https://github.com/munich-data-engineering/reflect-cpp/tree/main/benchmarks) for details. The benchmarks show that reflect-cpp is not only very convenient, but also one the fastest JSON libraries for C++. It is faster than RapidJSON and about 10 times faster than nlohmann/json. It can be even faster than that, diff --git a/docs/content/build_docs.md b/docs/content/build_docs.md index 43c604f10..97c208231 100644 --- a/docs/content/build_docs.md +++ b/docs/content/build_docs.md @@ -104,7 +104,7 @@ All params support `true` or `false` toggles. Refer to the [Hextra documentation ## CI/CD: GitHub Pages Deployment -The file `.github/workflows/docs.yaml` automates building and deploying the documentation to [GitHub Pages](https://getml.github.io/reflect-cpp/). It runs on every push to the `main` branch. +The file `.github/workflows/docs.yaml` automates building and deploying the documentation to [GitHub Pages](https://munich-data-engineering.github.io/reflect-cpp/). It runs on every push to the `main` branch. ### How It Works diff --git a/docs/content/contributing.md b/docs/content/contributing.md index e9317f04c..74ac75fbc 100644 --- a/docs/content/contributing.md +++ b/docs/content/contributing.md @@ -14,7 +14,7 @@ over ```cpp #include "rfl/internal/to_ptr_named_tuple.hpp" ``` -For further details and reasoning, please refer to [#30](https://github.com/getml/reflect-cpp/issues/30). +For further details and reasoning, please refer to [#30](https://github.com/munich-data-engineering/reflect-cpp/issues/30). Headers should be self-contained. This will be checked by the CI. diff --git a/docs/content/custom_classes.md b/docs/content/custom_classes.md index 348c27dae..e347aa44d 100644 --- a/docs/content/custom_classes.md +++ b/docs/content/custom_classes.md @@ -15,7 +15,7 @@ routines in reflect-cpp. Please be aware that due to limitations of the Avro format, it is a good idea to always have a struct as your `ReflectionType` when using Avro to avoid infinite recursions. -If you absolutely do not want to make any changes to your original class, you can implement a [custom parser](https://github.com/getml/reflect-cpp/blob/main/docs/custom_parser.md). +If you absolutely do not want to make any changes to your original class, you can implement a [custom parser](https://github.com/munich-data-engineering/reflect-cpp/blob/main/docs/custom_parser.md). ## Example 1: Using an Impl struct diff --git a/docs/content/install.md b/docs/content/install.md index 56880d47b..5aad26843 100644 --- a/docs/content/install.md +++ b/docs/content/install.md @@ -142,7 +142,7 @@ CMake-config package. # adding the entry to your vcs .repos file, or create one # reflect-cpp: # type: git - # url: git@github.com:getml/reflect-cpp.git + # url: git@github.com:munich-data-engineering/reflect-cpp.git # version: main vcs import src < src/.repos ``` diff --git a/docs/content/supported_formats/supporting_your_own_format.md b/docs/content/supported_formats/supporting_your_own_format.md index 86e8cc43a..964e91762 100644 --- a/docs/content/supported_formats/supporting_your_own_format.md +++ b/docs/content/supported_formats/supporting_your_own_format.md @@ -9,8 +9,8 @@ you have chosen. The reader and writer constitute a thin layer between the serialization library of your choice and reflect-cpp. -The requirements are laid down in the concepts [IsReader](https://github.com/getml/reflect-cpp/blob/main/include/rfl/parsing/IsReader.hpp) and -[IsWriter](https://github.com/getml/reflect-cpp/blob/main/include/rfl/parsing/IsWriter.hpp) and also documented below. +The requirements are laid down in the concepts [IsReader](https://github.com/munich-data-engineering/reflect-cpp/blob/main/include/rfl/parsing/IsReader.hpp) and +[IsWriter](https://github.com/munich-data-engineering/reflect-cpp/blob/main/include/rfl/parsing/IsWriter.hpp) and also documented below. Using the reader and the writer you can define your parser like this: @@ -53,7 +53,7 @@ std::string write(const T& _obj) { In the following two sections, we will provide templates for your `Reader` and `Writer`. You should probably just copy + paste this into your own code and fill in the blanks. -As a reference, you can take a look at how this is done for JSON: https://github.com/getml/reflect-cpp/tree/main/include/rfl/json +As a reference, you can take a look at how this is done for JSON: https://github.com/munich-data-engineering/reflect-cpp/tree/main/include/rfl/json ## Implementing your own writer diff --git a/docs/hugo.yaml b/docs/hugo.yaml index b63d2af3d..8ffe60460 100644 --- a/docs/hugo.yaml +++ b/docs/hugo.yaml @@ -36,7 +36,7 @@ menu: type: search - name: GitHub weight: 6 - url: "https://github.com/getml/reflect-cpp/" + url: "https://github.com/munich-data-engineering/reflect-cpp/" params: icon: github From 8b2c2a71299537593cc445618e80254a34531fb8 Mon Sep 17 00:00:00 2001 From: "Dr. Patrick Urbanke" Date: Sun, 18 Oct 2026 16:46:47 +0200 Subject: [PATCH 3/3] Adapted the documentation links --- CMakeLists.txt | 2 +- README.md | 36 ++++++++++++++++++------------------ 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index dcb838b16..9498f9d84 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -588,7 +588,7 @@ set(CPACK_RPM_PACKAGE_REQUIRES "") set(CPACK_RPM_FILE_NAME RPM-DEFAULT) set(CPACK_RPM_PACKAGE_LICENSE "MIT") set(CPACK_RPM_PACKAGE_LICENSE "MIT") -set(CPACK_RPM_PACKAGE_URL "https://rfl.getml.com") +set(CPACK_RPM_PACKAGE_URL "https://munich-data-engineering.github.io/reflect-cpp") include(CPack) diff --git a/README.md b/README.md index 25fd3b4f1..93711fb00 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ [![Generic badge](https://img.shields.io/badge/MSVC-17+-blue.svg)](https://shields.io/) [![Conan Center](https://img.shields.io/conan/v/reflect-cpp)](https://conan.io/center/recipes/reflect-cpp) -**📖 Documentation**: https://rfl.getml.com +**📖 Documentation**: https://munich-data-engineering.github.io/reflect-cpp ![image](banner1.png) @@ -24,11 +24,11 @@ reflect-cpp and sqlgen fill important gaps in C++ development. They reduce boile [- Close integration with [containers](https://github.com/munich-data-engineering/reflect-cpp?tab=readme-ov-file#support-for-containers) from the C++ standard library] - Close adherence to C++ idioms -- Out-of-the-box support for [JSON](https://rfl.getml.com/supported_formats/json) -- Simple [installation](https://rfl.getml.com/install) -- Simple extendability to [other serialization formats](https://rfl.getml.com/supported_formats/supporting_your_own_format) -- Simple extendability to [custom classes](https://rfl.getml.com/concepts/custom_classes) -- Being one of the fastest serialization libraries in existence, as demonstrated by our [benchmarks](https://rfl.getml.com/benchmarks) +- Out-of-the-box support for [JSON](https://munich-data-engineering.github.io/reflect-cpp/supported_formats/json) +- Simple [installation](https://munich-data-engineering.github.io/reflect-cpp/install) +- Simple extendability to [other serialization formats](https://munich-data-engineering.github.io/reflect-cpp/supported_formats/supporting_your_own_format) +- Simple extendability to [custom classes](https://munich-data-engineering.github.io/reflect-cpp/concepts/custom_classes) +- Being one of the fastest serialization libraries in existence, as demonstrated by our [benchmarks](https://munich-data-engineering.github.io/reflect-cpp/benchmarks)
@@ -51,17 +51,17 @@ reflect-cpp and sqlgen fill important gaps in C++ development. They reduce boile - [The team behind reflect-cpp](#the-team-behind-reflect-cpp) - [License](#license) -### More in our [documentation](https://rfl.getml.com): - - [Installation ↗](https://rfl.getml.com/install/#option-2-compilation-using-cmake) - - [C++26 reflection ↗](https://rfl.getml.com/cpp26_reflection) - - [Benchmarks ↗](https://rfl.getml.com/benchmarks) - - [How to contribute ↗](https://rfl.getml.com/contributing) - - [Compiling and running the tests ↗](https://rfl.getml.com/contributing/#compiling-and-running-the-tests) +### More in our [documentation](https://munich-data-engineering.github.io/reflect-cpp): + - [Installation ↗](https://munich-data-engineering.github.io/reflect-cpp/install/#option-2-compilation-using-cmake) + - [C++26 reflection ↗](https://munich-data-engineering.github.io/reflect-cpp/cpp26_reflection) + - [Benchmarks ↗](https://munich-data-engineering.github.io/reflect-cpp/benchmarks) + - [How to contribute ↗](https://munich-data-engineering.github.io/reflect-cpp/contributing) + - [Compiling and running the tests ↗](https://munich-data-engineering.github.io/reflect-cpp/contributing/#compiling-and-running-the-tests) ## Serialization formats -reflect-cpp provides a unified reflection-based interface across different serialization formats. It is deliberately designed in a very modular way, using [concepts](https://en.cppreference.com/w/cpp/language/constraints), to make it as easy as possible to interface various C or C++ libraries related to serialization. Refer to the [documentation](https://rfl.getml.com/supported_formats/bson/) for details. +reflect-cpp provides a unified reflection-based interface across different serialization formats. It is deliberately designed in a very modular way, using [concepts](https://en.cppreference.com/w/cpp/language/constraints), to make it as easy as possible to interface various C or C++ libraries related to serialization. Refer to the [documentation](https://munich-data-engineering.github.io/reflect-cpp/supported_formats/bson/) for details. The following table lists the serialization formats currently supported by reflect-cpp and the underlying libraries used: @@ -366,7 +366,7 @@ struct Config { // ./app data.csv -o /tmp/out -v --count=10 ``` -Nested structs, `std::optional`, `std::vector`, enums, `rfl::Flatten` and `rfl::Rename` are all supported. Refer to the [documentation](https://rfl.getml.com/cli) for details. +Nested structs, `std::optional`, `std::vector`, enums, `rfl::Flatten` and `rfl::Rename` are all supported. Refer to the [documentation](https://munich-data-engineering.github.io/reflect-cpp/cli) for details. ### Error messages @@ -483,7 +483,7 @@ This results in the following JSON string: {"shape":"Rectangle","height":10.0,"width":5.0} ``` -Other forms of tagging are supported as well. Refer to the [documentation](https://rfl.getml.com/docs-readme) for details. +Other forms of tagging are supported as well. Refer to the [documentation](https://munich-data-engineering.github.io/reflect-cpp/docs-readme) for details. ### Extra fields @@ -666,7 +666,7 @@ In addition, it supports the following custom containers: #### Custom classes -Finally, it is very easy to extend full support to your own classes, refer to the [documentation](https://rfl.getml.com/docs-readme) for details. +Finally, it is very easy to extend full support to your own classes, refer to the [documentation](https://munich-data-engineering.github.io/reflect-cpp/docs-readme) for details. ## Installation @@ -714,7 +714,7 @@ cmake --build build -j 4 # gcc, clang cmake --build build --config Release -j 4 # MSVC ``` -For other installation methods, refer to the [documentation](https://rfl.getml.com/docs-readme). +For other installation methods, refer to the [documentation](https://munich-data-engineering.github.io/reflect-cpp/docs-readme). ### Compiling with C++-26 reflection @@ -729,7 +729,7 @@ cmake --build build -j 4 With C++-26 reflection, fixed-size C arrays and inheritance are supported out of the box (no `-DREFLECT_CPP_C_ARRAYS_OR_INHERITANCE` flag needed), and there are no range restrictions for -enums. Refer to the [documentation](https://rfl.getml.com/cpp26_reflection) for details. +enums. Refer to the [documentation](https://munich-data-engineering.github.io/reflect-cpp/cpp26_reflection) for details. ## The team behind reflect-cpp