This blog post summarizes changes to the vcpkg package manager as part of the 2025.03.19 registry release, 2025-03-13 tool release, as well as changes to vcpkg documentation throughout March. This release includes two new commands for our continuous integration system PR reviews, minor bugfixes, a new documentation article on authenticating to NuGet feeds, and a few other minor documentation fixes.
Some stats for this period:
- There are now 2,564 total ports available in the vcpkg curated registry. A port is a versioned recipe for building a package from source, such as a C or C++ library.
- 40 new ports were added to the curated registry.
- 408 ports were updated. As always, we validate each change to a port by building all other ports that depend on or are depended by the library that is being updated for our 15 main triplets.
- 82 community contributors made commits.
- The main vcpkg repo has over 6,800 forks and 24,400 stars on GitHub.
vcpkg changelog (2025.03.19 release)
The following notable changes were made in March:
- Added two new commands:
x-test-features
andformat-feature-baseline
(PR: Microsoft/vcpkg-tool#802, thanks @autoantwort!).x-test-features
is an experimental command that runs a series of tests on port features to verify that they work as expected. This will be used as part of our routine continuous integration runs. The commands accept a list of port names or--all
to specify which ports are affected. Features which are unsupported or marked as cascade for the target triplet are skipped. The following tests are performed:- The core feature gets installed with default features disabled (or
--no-core
). - Every feature gets installed with default features disabled (or
--no-separated
). - All features combined get installed (or
--no-combined
).
- The core feature gets installed with default features disabled (or
vcpkg format-feature-baseline scripts/ci.feature.baseline.txt
formats the feature baseline to enforce that all entries in a “block” are sorted alphabetically.
- Improve resiliency of concurrent use of the downloads directory (PR: Microsoft/vcpkg-tool#1600).
- Fixed a bug that impacted debugging with LLDB on MacOS / Apple Silicon (PR: Microsoft/vcpkg-tool#1602, thanks @ekilmer!).
- Other minor bug fixes.
Documentation changes
- Added new article: Authenticate to NuGet package feeds. Explains how to use vcpkg features in cases where you need to authenticate to NuGet package feeds, such as for binary caching or asset caching (PR: Microsoft/vcpkg-docs#461).
- Reworked Asset caching concepts article and added an example configuration (PR: Microsoft/vcpkg-docs#459).
- Fixed a bug in an example and minor wording improvements to asset caching tutorial and asset caching with NuGet tutorial (PR: Microsoft/vcpkg-docs#460).
- Other minor documentation improvements (thanks @autoantwort!).
If you have any suggestions for our documentation, please submit an issue in our GitHub repo or see the box at the bottom of a particular article.
Total ports available for tested triplets
Triplet | Ports available |
x86-windows | 2346 |
x64-windows | 2463 |
x64-windows-release | 2463 |
x64-windows-static | 2329 |
x64-windows-static-md | 2381 |
x64-uwp | 1375 |
arm64-windows | 2057 |
arm64-windows-static-md | 2036 |
arm64-uwp | 1339 |
x64-osx | 2322 |
arm64-osx | 2246 |
x64-linux | 2445 |
arm-neon-android | 1730 |
x64-android | 1806 |
arm64-android | 1774 |
While vcpkg supports a much larger variety of target platforms and architectures (as community triplets), the list above is validated exhaustively to ensure updated ports don’t break other ports in the catalog.
Thank you to our contributors
vcpkg couldn’t be where it is today without contributions from our open-source community. Thank you for your continued support! The following people contributed to the vcpkg, vcpkg-tool, or vcpkg-docs repos in this release (listed alphabetically by GitHub username):
aelnosu | ekilmer | NikolayShegunov-Virtonomy |
AenBleidd | eXpl0it3r | njakob |
Agorath | gershnik | nlogozzo |
aixxe | Gnefeij | noahknegt |
ajtribick | gittiver | oleg-derevenetz |
alagoutte | gwaldron | paperchalice |
albertony | HappySeaFox | R3dByt3 |
alfredh | jeremy-rifkin | redboltz |
amoeba | jeremyko | rmisev |
an-tao | jmcnamara | rremilian |
ankurvdev | johnwason | RT2Code |
AntonK47 | jpr42 | rursprung |
autoantwort | kadirlua | SunBlack |
benjamin-hodgson | kblaschke | swt2c |
bw-hro | Krzmbrzl | talregev |
bwrsandman | liuzicheng1987 | tarcila |
c8ef | llm96 | toge |
cenit | m-kuhn | tomconder |
chausner | maharmstone | Tradias |
chrismile | martinweismann | vijaiaeroastro |
constcuriosity | mathgeekcoder | vpetrigo |
cuiy0006 | metsma | walbourn |
danielaparker | miyanyan | waywardmonkeys |
daschuer | mtmk | wolfgitpr |
Darkx32 | mvieth | wpp2014 |
dg0yt | myd7349 | ytnuf |
dpasukhi | Naville | |
eao197 | Neumann-A |
Learn more
You can find the main release notes on GitHub. Recent updates to the vcpkg tool can be viewed on the vcpkg-tool Releases page. To contribute to vcpkg documentation, visit the vcpkg-docs repo. If you’re new to vcpkg or curious about how a package manager can make your life easier as a C/C++ developer, check out the vcpkg website – vcpkg.io.
If you would like to contribute to vcpkg and its library catalog, or want to give us feedback on anything, check out our GitHub repo. Please report bugs or request updates to ports in our issue tracker or join more general discussion in our discussion forum.
The post What’s New in vcpkg (March 2025) appeared first on C++ Team Blog.