ngcpp/proxy
Proxy: Next Generation Polymorphism in C++
1 Releases
Latest: 3mo ago
Proxy 4.0.2 Release4.0.2Latest
๐ฆ What's inside
- A new home for Proxy
- Proxy has moved from [microsoft/proxy](https://github.com/microsoft/proxy) to [ngcpp/proxy](https://github.com/ngcpp/proxy), with a new documentation home at [ngcpp.github.io/proxy](https://ngcpp.github.io/proxy/).
- Governance and support documents were updated for ngcpp stewardship.
- Copyright notices now preserve Microsoft's original ownership for 2022-2026 and add ngcpp for ongoing development starting in 2026.
- Meson joins CMake
- Proxy now ships Meson build files alongside CMake, making it much easier to consume the library in Meson-based projects.
- The Meson integration covers header installation, tests, benchmarks, and extracting examples from the docs, with optional `pkg-config` metadata when available.
- Existing CMake flows continue to work, so current integrations do not need to change.
- + 12 more
๐ฆ Upgrading
- Most users can update to 4.0.2 and rebuild.
- Repository and docs URLs
- Update repository links from `github.com/microsoft/proxy` to `github.com/ngcpp/proxy`.
- Update documentation links from `microsoft.github.io/proxy` to `ngcpp.github.io/proxy`.
- Build systems
- Public namespaces and current CMake target names remain unchanged in 4.0.2.
- Existing CMake integrations continue to work as before.
- Meson is now supported for header installation, tests, benchmarks, and docs examples. Meson consumers can integrate Proxy through `dependency('msft_proxy4')`, with `pkg-config` metadata generated when that tooling is available.
- + 3 more
๐ฆ Acknowledgments
- Thank you to everyone who helped move Proxy into its next chapter. A special thanks to @mochaaP for landing Meson support and expanding the project's build-system reach.
๐ What's Changed
- Improve constraints for `facade` by @mingxwa in [microsoft/proxy#359](https://github.com/microsoft/proxy/pull/359) - tightened `ProBasicFacade` and builder validation for layout and constraint settings.
- Remove support for standard trivial relocation by @mingxwa in [microsoft/proxy#365](https://github.com/microsoft/proxy/pull/365) - removed an incomplete, untested relocation path.
- Avoid false positive for `ptr_traits` by @mingxwa in [microsoft/proxy#367](https://github.com/microsoft/proxy/pull/367) - made pointer-trait detection stricter and improved `proxiable` edge cases.
- Fix overload resolution in `PRO_DEF_FREE_AS_MEM_DISPATCH` by @mingxwa in [microsoft/proxy#372](https://github.com/microsoft/proxy/pull/372) - fixed a regression and added broader dispatch coverage.
- Simplify the implementation of `strong_compact_ptr` by @mingxwa in [microsoft/proxy#368](https://github.com/microsoft/proxy/pull/368) - reduced internal complexity without changing intended behavior.
- Fix wording for proxy indirection by @mingxwa in [microsoft/proxy#369](https://github.com/microsoft/proxy/pull/369) - aligned the docs with the current mandatory indirection model.
- Revise benchmarks by @mingxwa in [microsoft/proxy#373](https://github.com/microsoft/proxy/pull/373) - regrouped metrics, switched facades to `slim`, and added relocation measurements.
- Update toolchain by @mingxwa in [microsoft/proxy#378](https://github.com/microsoft/proxy/pull/378) - refreshed compiler coverage and dependency versions, including `fmt` 12.x compatibility work.
- + 7 more
