Repository navigation
Releases
Releases · conan-io/conan
2.34.0 (28-Oct-2026)
- Feature: Define
/MPinCMakeToolchainforclang-clwith Visual Studio generators (ClangCLtoolset), likemsvc. (#20439) - Feature: Reduce local cache sqlite3 DB calls (33% fewer for regular installs with cached packages). (#20434)
- Feature: Simplify the build step terminal output, removing duplicated package references. (#20426)
- Feature: Add
CMAKE_PREFIX_PATHas fallback toCMakeConfigDepsfor cases beyond the<pkg>_DIRvariable. (#20420). Docs: 📃 - Feature: Pass original URLs to backup source remotes in the
X-Conan-Origin-Urlsheader. (#20385). Docs: 📃 - Feature: Update
conan new bazel_libandconan new bazel_exetemplates to Bazel 7. (#20367). Docs: 📃 - Feature: Add a
command_alias.conffile to define command aliases and shortcuts without writing a custom command. (#20365) - Feature: Support the new CPS
dyld_requires(CMake>=4.4) for transitive shared libraries on Linux. (#20362) - Feature: Add
cmake_file_namesdict property toCMakeConfigDepsto generate several CMake CONFIG files per package. (#20298). Docs: 📃 - Feature: Add an optional
componentsargument toaggregated_components()to aggregate only the given components. (#20298). Docs: 📃 - Feature: Always generate
.ps1environment launchers, alongside the.bat/.shones, for the consumer, editables andtest_package. (#19649). Docs: 📃 - Fix: Clarify in the
PackagesList.items()docstring that it only returns revision-specific information. (#20432) - Fix: Add docstrings to the
PkgReferenceclass of the Python API. (#20431). Docs: 📃 - Fix: Remove the legacy warning about ConanCenter being frozen for Conan 1 clients. (#20425)
- Fix: Remove the
python-dateutildependency for Python>=3.11. (#20419) - Fix: Resolve
LocalAPI.editable_addrelativeoutput_folderagainst thecwdargument. (#20416) - Fix: Make
conan cache clean --backup-sourcesonly clean the backup sources of the selected recipes. (#20415) - Fix: Allow several negated patterns, and mixing them with inclusions, in remote
--allowed-packages. (#20412) - Fix: Avoid a
VirtualRunEnvgeneration crash withwin_bash=Truewhen cross-building from Linux to Windows. (#20407) - Fix: Correct Python API docstrings for
ListAPI,CacheAPIand other subapis that did not match their behavior. (#20405) - Fix: Correct the
ListAPI.latest_recipe_revisiondocstring, as it always raises if the reference is not found. (#20400) - Fix: Report a proper error for non-integer
--lrutime values. (#20399) - Fix: Avoid duplicating
tools.build:sharedlinkflagsfromconfinBazelToolchain. (#20390) - Fix: Join multiple SBOM license expressions with
ANDto comply with the CycloneDX standard. (#20382) - Fix: Allow running
conan remote logoutfor disabled remotes. (#20381) - Fix: Replace stale
CONAN_RUNTIME_LIB_DIRSentries inCMakeConfigDepswhen installing a new package revision. (#20378) - Fix: Raise an error for
--requires=pkg/version@_, an undocumented and unsupported Conan 1 legacy syntax. (#20371) - Fix: Remove Conan 1.X legacy
alias(undocumented and unsupported) code. (#20370) - Fix: Make the
workspaceexperimental warning skippable withcore:skip_warnings. (#20369) - Fix: Add deprecation warnings for Bazel 6 support in the
BazelDepsgenerator. (#20367). Docs: 📃 - Fix: Filter
CMakeConfigDepstarget data based on require traits, aligned withCMakeDeps. (#20277). Docs: 📃 - Fix:
tools.env.virtualenv:powershellno longer replaces the.bat/.shlaunchers.self.run()only uses.ps1launchers when this conf is defined. (#19649). Docs: 📃 - Bugfix: Avoid accumulating variables when calling
GnuToolchain._environmentseveral times. (#20446) - Bugfix: Avoid internal
rmdirfailures when removing Windows folders with read-only permissions. (#20440) - Bugfix: Do not install host profile
[tool_requires]inconan installwith only--tool-requiresarguments. (#20422). Docs: 📃 - Bugfix: Do not remove pre-existing recipe revisions in
ReportAPI.diff. (#20417) - Bugfix: Make
AuditAPI.auth_providerreceive a provider name instead of a provider object, as documented. (#20414) - Bugfix: Do not write
--dynamic_mode=offinBazelToolchainwhen the recipe has nosharedoption. (#20390) - Bugfix: Avoid random
dictionary changed size during iterationerrors in uploads withcore.upload:parallel. (#20389) - Bugfix: Avoid HTTP header cross-pollution between consecutive calls to the backup sources server. (#20386)
- Bugfix: Use
tools.microsoft.msbuild:max_cpu_countfor the-margument inCMakeToolchainVisual Studio presets. (#20360)
2.33.0 (29-Sep-2026)
- Feature: Support for CPS components configurations. (#20354)
- Feature: Use extra_info to provide CPEs to the component. (#20353)
- Feature: Download recipe and package metadata in parallel with regular files instead of after them. (#20351)
- Feature: Add
core.net.http:trust_storeconf to verify HTTPS certs against the OS trust store. (#20343). Docs: 📃 - Feature: New remotes
force_authcapability. (#20341). Docs: 📃 - Feature: Add
copy_config_filesto the[runner]profile to copy extra host config files into Docker runners. (#20332). Docs: 📃 - Feature: Support Clang 23. (#20330)
- Feature: Support Apple OS 27.0. (#20330)
- Feature:
CMakeConfigDeps.get_cmake_file_namereturns a dict object instead of a string. (#20300) - Feature: Allow
cpp_info.sources-only packages in CMakeConfigDeps. (#20297). Docs: 📃 - Fix: Remove support for Python 3.7, EOL since 2024. (#20357)
- Fix: Error messages inside the
source(),generate()andpackage()steps missing the package reference. (#20348) - Fix: Add support for
CMakeConfigDepsforcpp_info.objectsimported object libraries. (#20347) - Fix: Do not force
DebuggerFlavorfrom generated prop files in MsBuildDeps, it's already the default. (#20340) - Fix: Only spawn
min(threads, download_count)threads in parallel downloads. (#20335) - Fix: Split skipped binaries summary per host/build/test group. (#20326)
- Fix: Avoid
CMakeDepsgenerating empty generator expressions, improving performance. (#20322) - Fix: Propagate errors from a
.batscript called by another.batscript. (#20317) - Fix: Prioritize host and visible nodes in workspace monolithic builds when ambiguity arises. (#20305). Docs: 📃
- Fix: Implements the
find_packageverbosity level in CMakeConfigDeps. (#20275) - Fix: Do not inject a full lockfile due to
exportoperations. (#19404) - Bugfix: Fix
conan graph build-order --updateignoring the--updateflag. (#20356) - Bugfix: Consider a server revision found via
--updateas latest, even if itsprevisn't latest locally. (#20336) - Bugfix: Correct computation of
optionsin theconan graph build-ordercommand. (#20331) - Bugfix:
QbsDepsdependency names now matchpkg_config_name/qbs_file_name. (#20329) - Bugfix: Avoid reporting the cached username when authentication was attempted with a different user. (#20316)
- Bugfix: Limit propagation of
cpp_info.sourcesfromINTERFACE_SOURCESto only direct dependencies. (#20297). Docs: 📃
2.32.0 (31-Aug-2026)
- Feature: Add basic LoongArch64 architecture support and host detection. (#20288)
- Feature: Add support for
Xcode 26.6. (#20280) - Feature: Add support for
gcc 16.2. (#20280) - Feature: Parse reference attributes from
--refinworkspace add. (#20269) - Feature: Add
raise_on_errors=Truearg toCommandAPI.run, it now raises on all errors returned by commands. (#20266) - Feature:
XcodeToolchainnow accepts arbitrary extra xcconfig settings viatc.build_settings, for build settings with no dedicated conf. (#20256). Docs: 📃 - Feature:
conan workspace openwith no arguments will read theconanwsfile and try to open the defined references there into their respective folders if they are not present. (#20247). Docs: 📃 - Feature:
conan workspace openandconan workspace add --reflearned a new--folderargument to indicate the relative location wrt the workspace root for the cloning of the repository. (#20247). Docs: 📃 - Feature: Add
architecture_bitsbuild helper to detect when the target architecture is 64-bit. (#20246). Docs: 📃 - Feature: Compute
CMAKE_Swift_COMPILER_TARGETinCMakeToolchainfor Apple Swift cross-builds. (#20243). Docs: 📃 - Feature: Add
recipe_metadata()/package_metadata()API to download metadata to a user folder. (#20240). Docs: 📃 - Feature: Improve
sourcestep output. (#20234) - Feature: Make
conan report diff -f=htmluse a dark theme by default. (#20229) - Feature: Add
package_type_traitsattribute to force requirement traits bypackage_type(runonly for now). (#20228). Docs: 📃 - Feature: Add
--refargument toconan editable add <path>as a shortcut to define name, version, etc. (#20218) - Feature: Feature: Allow
copy()to accept multiple patterns, also used byexports/exports_sources, for speedup. (#20217). Docs: 📃 - Feature: Add
qbs_file_nameproperty to override the generated Qbs module name and avoid collisions. (#20215). Docs: 📃 - Feature: Allow
conan runwithout a conanfile to run executables from the profile's[tool_requires]. (#20214). Docs: 📃 - Feature: Rework the
conan graph build-orderHTML formatter with search and full offline support. (#20174) - Feature: Populate the download cache with uploaded artifacts if
core.download:download_cacheis set. (#20163). Docs: 📃 - Feature: Accept CMake 4.4
--preset-filepresets generated outside the CMake root. (#20158). Docs: 📃 - Feature: Add
!settings.build_typesyntax to excludebuild_typefromcmake_layout'sbuild_folder_vars. (#17331). Docs: 📃 - Fix: Do not force
CONFIGrequires for transitive dependencies inCMakeConfigDeps. (#20283) - Fix: Correct a typo in the CycloneDX component recipe revision. (#20271)
- Fix: Failed creates in
workspacesubcommands now raise errors as expected. (#20266) - Fix: Add support for python requires in remotes for
conan workspace create. (#20265) - Fix: Add support for lockfile reading in
conan sourcefor Python requires. (#20264) - Fix: Generate valid CycloneDX SBOMs for recipes without a
descriptionattribute. (#20263) - Fix: Match the
dll.aextension (MinGW) indeduce_full_cpp_info. (#20259) - Fix: Make
test_linker_scripttest resilient to the exact linker error text, which changed with Meson >= 1.12. (#20257) - Fix:
XcodeToolchain's extra flags (tools.build:cflags/cxxflags/ldflags/defines) no longer get overwritten when installing more than one configuration for the same project. (#20255). Docs: 📃 - Fix: Correct filename parsing in
conan report diff -f=htmlfor non-ASCII filenames. (#20229) - Fix: Remove the Vigenère cipher used to store JWTs, since it provided no real security benefit. (#20227)
- Fix: Improve
copy()performance when using lists of patterns. (#20226) - Fix: Warn when
tools.build:compiler_executableskeys are unknown or unused byCMakeToolchain/AutotoolsToolchain. (#20219). Docs: 📃 - Fix: Add
objc,objcppandasmastools.build:compiler_executablesforAutotoolsToolchain. (#20219). Docs: 📃 - Fix: Make
conan lock upgrade-config'spathargument point to aconanconfig.ymlfile, not aconanfile.py. (#20208). Docs: 📃 - Fix: Remove the deprecated
--order-bybehavior and empty version ranges, as planned for Conan 2.32. (#20207). Docs: 📃 - Bugfix: intel-cc default compilers on Windows. Classic mode now defaults to
icl(noticc/icpc), icx mode toicx(noticx-cl, which is absent in older oneAPI), and CMakeToolchain now honorsCC/CXXfrom[buildenv]over the hard-coded defaults. (#20233) - Bugfix: Keep the local recipe index cache folder when
conan remote addfails on a duplicate without--force. (#20210) - Bugfix: Make
CMakeConfigDepsgenerate common files only for the host context, avoiding lost CMake variables. (#20198)
2.31.2 (04-Aug-2026)
- Bugfix:
conan upload .. --dry-run -f=json > to_upload.jsonnow allows round-trip forconan upload -l=to_upload.jsonwithout re-preparing the artifacts. (#20237)
2.31.1 (24-Jul-2026)
- Fix: Fixed
replace_in_file()raising a false "pattern not found" error when the replacement produced the same content as the original (no-op replace). (#20211)
2.31.0 (23-Jul-2026)
- Feature: Get Workspace feature out of incubating. (#20202). Docs: 📃
- Feature:
replace_in_filenow supports regex patterns. (#20194). Docs: 📃 - Feature: Warn when
conan config installis used afterconan config install-pkg. (#20188). Docs: 📃 - Feature: Support GCC 14.4 and 15.3 in
settings.yml. (#20184) - Feature: Support intel-cc 2025.2, 2025.3 and 2026.1 in
settings.yml. (#20184) - Feature: Change the
Workspaceapproach to not processpython_requiresjust to derivename/version. Proposed a newget_ref(folder)method in theconanws.pyfile to be able to define versions dynamically. (#20176). Docs: 📃 - Feature: Define new
cpp_info. ignored_requiresattribute to avoid downstream propagation of dependencies. (#20171). Docs: 📃 - Feature: Add
NO_SONAMEsupport toCMakeConfigDepsto skip SONAME generation. (#20168). Docs: 📃 - Feature: Assert invalid parameters in
ConanFile.run()method. (#20156) - Feature: Add
.tar.zst(Zstandard) archive support to theunzip()tool function. (#20140) - Feature: Reduce verbose terminal output produced during the
package()step. (#20134) - Feature: Add
tools.build:asmflagsconfig andCMakeToolchain.extra_asmflagsto populateCMAKE_ASM_FLAGS. (#20127) - Feature: Add
micromodes topackage_id_modesto model changes over MAJOR.MINOR.PATCH.MICROmicrodigit. (#20102). Docs: 📃 - Feature: New
win_runtime_copycapability ofVirtualRunEnv, so it can copy on Windows the runtime files of dependencies (thecpp_info.bindirsdirectories contents) to a single location and point to it, avoiding path overflows (like in Windows) for large graphs. (#18638). Docs: 📃 - Fix: Update remaining
audit.conan.io/<page>links toconan.io/audit/<page>. (#20203) - Fix: Fix upload with empty uploads from pattern, to make it equal to package lists behavior (#20197)
- Fix: Avoid conflict with Automake's
LINKvar when usingAutotoolsDepswith MSVC by using_LINK_for linker flags. (#20192). Docs: 📃 - Fix: Add support for VS 2026 in the
Premakegenerator (requires Premake 5.0 beta 8). (#20189) - Fix: Fix rpath flags from
AutotoolsDepsbeing dropped by Libtool on macOS, causing missingLC_RPATHin executables. (#20179) - Fix: Avoid option names shadowing internal
Optionsimplementation methods. (#20172). Docs: 📃 - Fix: Fix deprecation warning for emcc/em++ >= 6.0.1, changing
-sMEMORY64flag with the modern-m64one. (#20152) - Fix: Avoid a corner-case in component requires when
replace_requirescreates diamond divergent requirements. (#20139) - Fix: Fix Artifactory search patterns not matching
*@user/channel, now requiring explicit*/*@user/channel. (#20136) - Fix: Use
LINKenv-var in Windows for AutotoolsDepsmsvccompiler. (#20130). Docs: 📃 - Bugfix: Require
default_components, or all existing components, inPkgConfigDepswhen rootpkg_config_name="none". (#20169) - Bugfix: Apply sorting to
include()profiles settings patterns. (#20164) - Bugfix: Raise an exception when
layout()fails in the Docker runner. (#20154) - Bugfix: Fix early return in
workspace completethat could skip necessary packages. (#20150) - Bugfix: Fix crash in
replace_requireswhen the graph had an override to a replaced requirement that did not apply. (#20146)
2.30.0 (29-Jun-2026)
- Feature: Add SPDX expression support in SBOM generation. (#20112)
- Feature: Add type annotations to
LockfileAPIfor improved IDE support. (#20104) - Feature: Add missing favicon to Conan HTML output. (#20087)
- Feature: Implement the
conf=~for the "unset" operation (alias forconf=!). (#20084). Docs: 📃 - Feature: Add
ASFLAGStoAutotoolsToolchain/GnuToolchain, including architecture and sysroot flags. (#20078). Docs: 📃 - Feature: Add
IntelCCsupport in Meson, Autotools and Premake toolchains. (#20075). Docs: 📃 - Feature: Model explicitly the msys2 environments (clang64, ucrt64, etc) in
tools.microsoft.bash:subsystem. (#20074). Docs: 📃 - Feature: Add
build_system_requirements()method for installing system tools only in the build context. (#20070). Docs: 📃 - Feature: Add support for
cmake_extra_interface_libsandcmake_extra_dependenciesproperties to theCMakeDepsgenerator. (#20066). Docs: 📃 - Feature: Support explicit architecture suffixes in system package names for native builds with
host_package=False. (#20047). Docs: 📃 - Feature: Prevent multiple
.libsor.package_frameworkentries in CMakeConfigDeps. (#20046) - Feature: Add support for Bazel 9.x to BazelDeps. (#20042). Docs: 📃
- Feature: Adapt
bazel_7_lib/bazel_7_exetemplates to support Bazel 9.x (conan newcommand). (#20042). Docs: 📃 - Feature: Allow
[replace_requires/tool_requires]unset in profile composition and extension. (#20040). Docs: 📃 - Feature: Add
tools.meson.mesontoolchain:extra_variablesconfiguration toMesonToolchain. (#20032). Docs: 📃 - Fix: Fix
conan install <path>failing with absolute paths ending in a dot. (#20092) - Fix: Relativize
cpp_info.locationfor editable layouts. (#20088). Docs: 📃 - Fix: Improve output messages for the
generate()step. (#20085) - Fix: Make
conan config installmaintain permission bits. (#20059) - Fix: Improve error message for broken Jinja2 syntax in
global.conf. (#20056) - Fix: Add Intel
2026.0version and Intel compiler configuration check. (#20049). Docs: 📃 - Fix: Set
IMPORTED_CONFIGURATIONSproperty to package frameworks in CMakeConfigDeps. (#20041) - Fix: Remove
buildcontext suffix from host requirements in CMakeConfigDeps. (#20038) - Bugfix: Version-based policy for fixed propagation of
transitive_headerstrait. (#20073) - Bugfix: Fix
workspace infowithpython_requiresand a custom userpackages()method inconanws.py. (#20064) - Bugfix: Fix some cases where
IMPORTED_IMPLIBwas not being declared when extension was set incpp_info.libs. (#20062) - Bugfix: Fix caching of different revisions of the same package while resolving the graph. (#20061)
- Bugfix: Fix
replace_requiresapplying when command line arguments explicitly define a package reference. (#20048). Docs: 📃 - Bugfix: Check whole git repository for dirtiness when using
revision_mode=scm. (#18630)
2.29.1 (12-Jun-2026)
- Bugfix: Handle special case where only one possible option is defined for shared. (#20082)
2.29.0 (28-May-2026)
- Feature: Limited support for
python_requiresin workspace, only inconanws.ymlfile. (#20028). Docs: 📃 - Feature: Added new public attribute
binariesto the MesonToolchain generator. (#20017) - Feature: Add support for Apple OS 26.5 release. (#19976)
- Feature: Document
RemoveAPI. (#19930) - Feature: New
global_user.conffile to locally customizeglobal.conf. (#19923). Docs: 📃 - Feature: Add support for GCC 16. (#19921)
- Fix: Forward
-vxxxverbosity argument toconan workspace build/installpackages. (#20015) - Fix: Add message when no packages found in conan list command. (#20013)
- Fix:
source_credentials.jsonnow supports supplying only headers (#20004). Docs: 📃 - Fix:
conan workspace add --output-foldernow properly updates theoutput_folderof an existing package entry inconanws.ymlinstead of ignoring it. (#19988) - Fix: Default
variantfor QNX and VxWorks in defaultsettings.ymlshould benull, notNone. Also, addqcc=12.2version. (#19981) - Fix:
runtime_deploy: avoid crashing when overriding existing symlinks. (#19977) - Fix:
AutotoolsDepswill link with-rpathon shared package types and components correctly. (#19975) - Fix: Warn and re-fetch when requested URLs conflict with existing ones with the same SHA256. (#19969)
- Fix:
cppstd_flagforclang-clnow correctly maps C++23, C++26 andgnu++standards instead of producing invalid/std:flags. (#19965) - Fix: Correct the
conan workspace initdocstring. (#19950) - Fix: Allow workspaces root Conanfile to have a name to apply
confwith patterns that would match that name. (#19927) - Fix: Fix
meson_libmissing deps,meson_exelayout & install verbosity. (#19918) - Bugfix: Raise an error if
package_typeandsharedoption mismatch (package-typeis set toshared-libraryandshared=Falseorpackage_type=static-libraryandshared=True) (#20023) - BugFix: Fix the computation of
optionsingraph build-order. (#19950) - Bugfix: Fix requirement definition for multilib components without explicit requirements for
CMakeConfigDeps. (#19942) - Bugfix:
MSBuildDepsno longer generates duplicate include and library directory paths in multi-component packages. (#19937)
2.28.1 (30-Apr-2026)
- Bugfix: Fix regression for downloads without sha256. (#19934)