November 7th, 2024

What’s New in vcpkg (October 2024)

Augustin Popa
Senior Product Manager

This blog post summarizes changes to the vcpkg package manager as part of the 2024.10.21 registry release, 2024-10-18 tool release, as well as changes to vcpkg documentation throughout October. This release adds support for Azure universal packages as a binary caching provider and other minor improvements.

CppCon Talk on Managing C++ Dependencies

I also gave a talk at CppCon about 10 Problems Large Companies Have with Managing C++ Dependencies and How to Solve Them. Here is a video recording of the talk:

In particular, I talked about several vcpkg features that can help:

  1. Supporting build from source as a fallback without sacrificing the build-time savings of binary dependency acquisition.
  2. Upgrading dependencies as a set using baselines, rather than managing them individually, to avoid version conflicts / diamond problems.
  3. How to continue working in an offline build environment using asset caching.
  4. Getting any open-source libraries installed and working with your project with minimal effort, while also automatically resolving transitive dependencies.

Some stats for this period:

  • There are now 2,490 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.
  • 7 new ports were added to the curated registry.
  • 422 updates were made to existing ports. 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 13 main triplets.
  • 53 contributors made commits (not counting the vcpkg maintainers).
  • The main vcpkg repo has over 6,400 forks and 23,200 stars on GitHub.

vcpkg changelog (2024.10.21 release)

The following changes were made in October:

Documentation changes

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
x64-windows 2,361
x86-windows 2,261
x64-windows-static 2,261
x64-windows-static-md 2,281
arm64-windows 1,960
x64-uwp 1,307
arm64-uwp 1,276
x64-linux 2,336
x64-osx 2,209
arm64-osx 2,132
arm-neon-android 1,635
x64-android 1,713
arm64-android 1,685

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):

  • ADKaster
  • AenBleidd
  • Al17OTON
  • andre-nguyen
  • autoantwort
  • braindigitalis
  • c8ef
  • cenit
  • ComputerKing12
  • dbolduc
  • dg0yt
  • fran6co
  • GabeRundlett
  • Gastineau
  • hansingt
  • HappySeaFox
  • Hosseinmoein
  • lrineau
  • JAicewizard
  • jandupej
  • jeremy-rifkin
  • jiayuehua
  • johnwason
  • kadirlua
  • kwsp
  • lemourin
  • lukasberbuer
  • miyanyan
  • m-kuhn
  • Neumann-A
  • nickdademo
  • nlogozzo
  • Olli1080
  • Osyotr
  • plevy
  • Poldraunic
  • RealTimeChris
  • redboltz
  • rmisev
  • RT2Code
  • rtzoeller
  • Shadowrom2020
  • SHIINASAMA
  • siukosev
  • starfishmod
  • SunBlack
  • SuperCodeHero
  • sweemer
  • talregev
  • teo-tsirpanis
  • Thomas1664
  • waywardmonkeys
  • winsoft666

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.

Category
C++Vcpkg
Topics
C++vcpkg

Author

Augustin Popa
Senior Product Manager

Product manager on the Microsoft C++ team, currently working on vcpkg.

0 comments