Releases: conan-io/conan
Releases · conan-io/conan
2.24.0 (15-Dec-2025)
- Feature: MesonToolchain
needs_exe_wrapperproperty now listens tocan_run()function. (#19382) - Feature: Workspace super-install now follows
layout(). (#19376). Docs: 📃 - Feature: Make diff symbols in
conan report diff ... -f=htmlnon-selectable. (#19375) - Feature: Add more public sub Python APIs, some more typing and fix docstrings. (#19370). Docs: 📃
- Feature: Represent missing packages in
graph.htmloutput. (#19360) - Feature:
conan cache check-integrity: new JSON output format. (#19343). Docs: 📃 - Feature: New
conan workspace completecommand to open/add intermediate packages to the workspace. (#19331). Docs: 📃 - Feature: Inject
hashlibin theglobal.confjinja2 rendering to be able to compute hashes (for paths, for example). (#19319). Docs: 📃 - Feature: Introduce new
conanconfig.ymlfile that can store packages for multiple automaticconan config install-pkg. (#17793). Docs: 📃 - Fix:
definesandframeworksnow also generateCMakeConfigDepstargets. (#19357) - Fix: Warn on version ranges in reference pattern, which have no effect (ie
-o="foo/[>1]:shared=True"). (#19356) - Fix: Improve
MSBuildToolchaindocstrings forcompile_options. (#19351). Docs: 📃 - Fix: Conan profile detect can detect Visual Studio 18 (2026). (#19348)
- Fix: Avoid
AutotoolsToolchain/GnuToolchainto define--sysrootfor QNXqcccompiler, define-Wc,-isysrootinstead. (#18897) - Fix: Fixed
conan_config.jsonstorage to use only RecipeReferences (not PackageReferences). (#17793). Docs: 📃 - Fix:
conan config install-pkgwill report for order-changing updates to existing configuration installs, allowing to-forceto change the order. (#17793). Docs: 📃 - Bugfix: Do correct scoping of
conan install --requires=dep/[*] -o myoption=value. (#19367) - Bugfix: fix new
core.graph:compatibility_mode=optimizedwith multiple repos. (#19349) - Bugfix: Fix crash for
conan workspace buildwith external global editables. (#19338) - Bugfix: Bugfix: Fix CMakeConfigDeps flags handling of generator expressions with separators. (#19330)
- Bugfix: Fix logic in
EnvVarsgeneration of.shand.ps1scripts for "unset" vs "empty" definition. (#19328). Docs: 📃 - Bugfix: Fix
Workspacecrash when passing per-package configuration. (#19327) - Bugfix: Fix version range pattern replacement in
replace_requires. (#19324)
2.23.0 (25-Nov-2025)
- Feature: Adding optional
cli_argsto meson install. (#19301) - Feature: implement
VCVarssupport for latest VS 18 2026. (#19294) - Feature: Implement
ClangCLsupport for VS 18 2026, addv145to the clang vs-runtime. (#19289) - Feature: Improve
conan pkglist find-remoteto handle partial information, like not providing revisions. (#19265) - Feature: Add message when compatibility does not find a matching package. (#19262)
- Feature: Improve
Workspaceerror reporting for user code, and allow workspace conanfile to executeself.run()commands. (#19260) - Feature: Introduce
workspace_packagessoworkspace super-installcan collect information from workspace packages. (#19245). Docs: 📃 - Feature: New parameter to support custom Premake configuration names. (#19242). Docs: 📃
- Feature: Add collapse all and expand level buttons to
conan report diffhtmloutput. (#19240) - Feature: Add support for apple os versions 26.1 and corresponding SDKs. (#19239)
- Feature: Show
providesconflicts inconan graph info -f=html. (#19222) - Feature: Allow
source_credentials.jsonand the source auth plugin to define headers. (#19206). Docs: 📃 - Feature: Let
conan install/createoutput the resultinggraph.json/htmleven when there are build failures, to allow listing possible packages that have been built. (#19204) - Feature: Document the
Remote()constructor as public API. (#19200) - Feature:
CMake.ctest()runner newtools.cmake:ctest_argsconf. (#19198). Docs: 📃 - Feature: Add some more useful output to
conan audit. (#19197) - Feature: Allow
distro 1.19python pip package dependency for broader compatibility. (#19192) - Feature: Support metadata files addition without previously downloading other metadata files. (#19185)
- Feature: Add rename info for files in
conan report diff. (#19171) - Feature: Add
conan runcommand to run commands from packages (#18972). Docs: 📃 - Feature: Compatibility checks are now performed in a single request to each remote (#18396)
- Fix: Propagate
verbosityconfs toCMakeToolchain. (#19296) - Fix: Fix 15.7 version in settings.yml. (#19250)
- Fix: Remove empty value from
--verbosechoice help string. (#19244) - Fix: Improve error message referencing non existing
git_excluded, usecore.scm:excludedinstead. (#19232). Docs: 📃 - Fix: CMakeConfigDeps management of
cmake_extra_interface_libsper component. (#19187) - Fix: Added deployer arguments to
workspace super-installcommand. (#18792) - Fix: Added
format_graph_jsonformatter toworkspace super-installcommand. (#18792) - Bugfix: Make
layout()have higher precedence forself.layouts.build.xxxenv_info/conf_info. (#19268) - Bugfix: Fix bug in
conan new cmake_libtemplate without arguments, incorrect function name. (#19257) - Bugfix:
Conanfile.run'squietparameter now silences the output of the command (#18972). Docs: 📃 - Bugfix: Verbosity level
quietnow also silences the output of tools ran by Conan (#18972). Docs: 📃
2.22.2 (07-Nov-2025)
- Bugfix: Fix assert when finding compatible binaries of a package that exists in both contexts with different settings. (#19208)
2.22.1 (30-Oct-2025)
- Bugfix: Revert "Error out if components miss requiring direct dependencies in more cases". (#19168)
2.22.0 (29-Oct-2025)
- Feature: Make the remote name used by
conan config install-pkg --url=<url>public. (#19132). Docs: 📃 - Feature: Add support for macOS 15.7 and iOS 18.7. (#19130)
- Feature: Group arguments in CLI help. (#19126)
- Feature: Suggest possible typos for CLI arguments declared as string choices. (#19126)
- Feature: Add opt-in conf to control making
.shand.ps1envdeactivatefunctionality into in-memory functions instead of files. (#19105). Docs: 📃 - Feature: Document
ExportAPI. (#19103) - Feature: Enable parallel download of packages by default, by defaulting
core.download:parallelto the available CPU cores. (#19099). Docs: 📃 - Feature: Support
conan graph info --package-filter=&pattern. (#19080). Docs: 📃 - Feature: Add new environment variable
CONAN_DEFAULT_BUILD_PROFILEfor default build profile. (#19040). Docs: 📃 - Feature: Allow nullifying settings from profiles and command line. (#19035). Docs: 📃
- Feature: Support compatibility plugin removal of nullable settings. (#19031). Docs: 📃
- Feature: New
tools.gnu:disable_flagsconfiguration to allow disabling the injection of some build system flags. (#19014) - Feature: Expose
recipein theConanFileInterfacefor information purpose only. (#18995). Docs: 📃 - Feature: New
CMakeConfigDepsproperties to inject extra dependencies and targets. (#18316) - Fix: Better error message for
CMakeConfigDepswhen the package_type or component type is not defined for something with.locationdefined. (#19096) - Fix: Change order of
build_modulesinclusion inCMakeConfigDepsso it happens after legacy-vars, to support some ConanCenter recipes abusing those variables. (#19094) - Fix: Reintroduce
settings.ymlaccess toconfigSub-API. (#19078) - Fix: Raise an error if
conan list * --lru=xx, recommending the#<rev-pattern>argument. (#19077) - Fix: Sanitize XcodeDeps file and variable names to use only valid xcconfig characters. (#19075)
- Fix: Explicitly set
allow_empty=Trueinglob()function inBazelDeps(Bazel 8.x compatible). (#19068) - Fix: Fix
CMakeConfigDepswhen a regular libraryrequires()an application, using components. (#19052) - Fix: Add missing final newline when saving lockfiles to disk. (#19043)
- Fix: Warn when adding requirement to version range with pinned revision, it has no effect. (#19041). Docs: 📃
- Fix: Fix
CMakeConfigDepsescaping. (#19034) - Fix: Improved Python virtual environment creation in
PipEnvby using the system-installed interpreter or a user-defined one viatools.system.pipenv:python_interpreter. (#19030). Docs: 📃 - Fix: Add VS2026 CMake generator mapping. (#19024)
- Fix: Avoid referencing xcconfig from skipped dependencies required in components in XcodeDeps. (#19023)
- Fix: Add
execution["jobs"]to the generated CMaketestPresetswith same logic and value asbuildPresets. (#19021) - Fix: Improve the error message when a workspace
super-installdefines intermediate packages in the cache depending on workspace packages. (#19013) - Fix: Improve support for huge diffs in
conan report diffHTML output. (#19012). Docs: 📃 - Bugfix:
MSBuildToolchainexplicitly adds the specific toolset .props file whencompiler.updateis defined, otherwise, activatingvcvarsis not enough. (#19137) - Bugfix: Fixes an issue where the Apt packages for the build arch would be reported missing, in cross-compiling scenarios, even though they are installed. (#19074)
- Bugfix: Solve unexpected conflict when pinning a
recipe-revisiondirectly in a conanfile that is not the latest, and having other dependencies resolving first to the latest recipe revision. (#19038) - Bugfix: Fix
<host_version>resolution in certain transitive cases. (#18947) - Bugfix: Fix orphan nodes being created when expanding the dependency graph for some cases. (#18947)
- Bugfix: Error out if components miss requiring direct dependencies in more cases. (#18830)
2.21.0 (29-Sep-2025)
- Feature: Add support for universal binaries to AutotoolsToolchain. (#18992). Docs: 📃
- Feature: Add support for universal binaries to GnuToolchain. (#18992). Docs: 📃
- Feature: Add
--context={build,host}filter toconan audit scan. (#18976). Docs: 📃 - Feature: Default recipe paths to cwd if not specified when calling Conan. (#18964)
- Feature: Implement a new
post_package_id()hook. (#18960). Docs: 📃 - Feature: Add support for Xcode 26 and related. (#18953)
- Feature: Add support for MSVC VS 2026 (insiders at the moment). (#18948). Docs: 📃
- Feature: Add the PipEnv tool to install python tools using pip in an isolated virtual environment. (#18923). Docs: 📃
- Feature: Allow separate build and package directories for multiple CMake builds from single conanfile. (#18905). Docs: 📃
- Feature: Add
recipes_onlyfield to remote to control whether a remote can be used to download binaries. (#18896). Docs: 📃 - Feature: Add
cmake_extra_variablesproperty forCMakeConfigDeps. (#18822). Docs: 📃 - Feature: Add
cmake_extra_variablesproperty forCMakeDeps. (#18822). Docs: 📃 - Feature: Improve
conan report diffhtml UX. (#18686). Docs: 📃 - Feature: Allow passing build configuration in
XcodeBuildexplicitly viaconfigurationparameter. (#18668). Docs: 📃 - Feature: Allow passing arbitrary command line arguments to
XcodeBuildviacli_args. (#18668). Docs: 📃 - Feature: Add generation of
dotenvenvironment files withtools.env:dotenv=Trueconf. (#18266). Docs: 📃 - Fix: Avoid
CMakePresetsadding thejobsfield whentools.build:jobs=0. (#18984) - Fix: Warn when exporting recipes with versions containing alphanumeric majors. (#18980). Docs: 📃
- Fix: Set
cpp.source.includedirstoincludeinbasic_layout. (#18958). Docs: 📃 - Fix:
workspace addcan update the package version of an existing package in the workspace. (#18955) - Fix: Move macOS bitcode flag testing to integration test. (#18930)
- Fix: Move
test_requirestobuild_requirementsmethod in tests. (#18929) - Fix: Always run
validatehooks even if recipe does not definevalidate()method. (#18928) - Fix: Remove deprecated, old and undocumented features, marked for deprecations for a long time. (#18920). Docs: 📃
- Fix: Ensure
VCVarsgeneratedconanvcvars.bathas normalized path with backward slash (Windows). (#18907) - Fix: Fix
compatibility.pymigration overwrite when no changes were necessary. (#18882) - Fix: Cleaning
filesandupload-urlsfrom "package lists" after a download or when skipping uploads. (#18878) - Fix: Improve the error message and avoid the traceback when a
build-scriptspackage tries to depend on alibraryin the "host" context. (#18869). Docs: 📃 - Fix: Move legacy CMake vars from
xxx-target-<config>.cmaketoxxxx-config.cmakefile. (#18860) - Bugfix: Added Apple frameworks support for BazelDeps. (#19004)
- Bugfix: Ensure
conan graph build-ordererrors out when passing both a recipe path and a--requiresreference. (#18964) - Bugfix: MesonToolchain no longer add quotes to
linker_scriptdefinition. (#18922) - Bugfix: Fix missing double quotes for MSBuild's commands. (#18911)
- Bugfix: Command
conan listwith version-ranges can now listen tocore.version_ranges:resolve_prereleases=Trueto list pre-releases. (#18868) - Bugfix: Stabilize
PackagesListmethods. (#18833)
2.20.1 (04-Sep-2025)
2.20.0 (01-Sep-2025)
- Feature: new
check_min_compiler_versionvalidator which simplify compiler restriction description in recipes. (#18849). Docs: 📃 - Feature: Adding Clang 21 to the default
settings.yml. (#18846) - Feature: Add new Apple OS's versions. (#18845)
- Feature: Avoid the generation of
conanintelsetvarsscript byIntelCCif thetools.intel:installation_path="", similarly toVCVarsgeneration. The user should have already activated the IntelCC environment on their own before running. (#18840). Docs: 📃 - Feature: Improved the CMakeLists.txt file created by the
conan new workspacecommand for super-builds. (#18838) - Feature: Add
CMAKE_FIND_PACKAGE_PREFER_CONFIG=ONforCMakeConfigDepsgenerator. (#18832) - Feature: Add
excludespattern support forgetandunzipmethods. (#18831) - Feature: Add support for GCC 15.2. (#18735)
- Feature: Add iOS 18.5 and tvOS 18.5 to
default_settings.ymltemplate. (#18722) - Feature: Stabilize and document
ConfigAPIpublic Python sub-API. (#18709) - Feature: Print build-order in the
conan workspace super-installcommand (#18693). Docs: 📃 - Feature: Workspace super-build options aggregation. (#18608). Docs: 📃
- Feature: Implement
tools.build:install_stripfor Autotools. (#18606). Docs: 📃 - Feature: Added support to the system_package tool for defining the system package version to be installed. (#18517). Docs: 📃
- Fix: Better error message when there is an existing file called "build" in the same location as the "build" build-folder is expected to be created. (#18842)
- Fix: The
cmake_layoutwas not taking into account the Apple multi-arch/universal separator when creating folders named after thearchsetting. (#18823) - Fix: Avoiding issues if passing non-string objects to
ConanOutputmethods. Still, the input to several.info()and similar methods must be "text", passing arbitrary objects and expecting them to convert to strings internally is not supported. (#18782). Docs: 📃 - Fix: Document public interface for
ConanOutputclass. (#18782). Docs: 📃 - Fix: Remove Python 3.6 support, End Of Life since 2021. (#18779). Docs: 📃
- Fix: Make all non-documented subapi attributes private. (#18736)
- Fix: Remove
SearchAPIin favour ofListAPI'sselect(). (#18726). Docs: 📃 - Fix: Relax the "risk" warning for conflicting visibility in
test_requires. (#18723) - Fix: Fixed an issue that caused APT packages without a defined architecture to be detected if one with the same name was installed for a different architecture. (#18517). Docs: 📃
- Fix: Preserve subfolders for
runtime_deploydeployer. (#17848). Docs: 📃 - Bugfix: Made
ConanAPI'shome_folderread-only. (#18726). Docs: 📃
2.19.1 (30-Jul-2025)
- Fix: Remove the definition of
CMAKE_TRY_COMPILE_CONFIGURATIONinCMakeToolchainto avoid issues withcheck_function_exists()legacy code in MSVC. (#18707)
2.19.0 (23-Jul-2025)
- Feature: Changed some private attributes in MesonToolchain as public ones, e.g.,
b_ndebug,b_staticpic. (#18676) - Feature: PremakeDeps will now correctly propagate libraries, headers and binaries depending on the requirement traits. (#18663)
- Feature: Add
cmake_target_aliasessupport forCMakeConfigDeps. (#18662) - Feature: Add
self.conan_datato the information serialized by ConanFile, so it is printed inconan graph infoand other commands. (#18661). Docs: 📃 - Feature: Let
conan sourcereference the backup sources it generates in more cases. (#18655) - Feature: Add user channel to CycloneDX SBOM
sbom_reffield. (#18649) - Feature: Enable
test_package_folderattribute forconan export-pkgcommand. (#18621). Docs: 📃 - Feature: Add support for GCC 12.5. (#18587). Docs: 📃
- Feature: New
makefileparameter in Autotoolsmake/installmethods to allow specifying the name of the Makefile file. (#18578) - Feature: Let graph html focus on searched package when pressing Intro in search box. (#18575)
- Feature: Allow defining a custom platform on Premake generator for Windows. (#18572)
- Feature: Allow profile composition while using conan runners. (#18534)
- Fix: Add explicit error when trying to export a reference with
channelbut nouser. (#18646). Docs: 📃 - Fix: Check
required_conan_versionbefore loading hooks. (#18644) - Fix: Avoid logging levels hiding the login username/password request messages. (#18642)
- Fix: Allow
cccompiler to be defined with spaces for profile auto detection. (#18628) - Fix: Fixed untargz when the destination path uses the Windows long paths prefix
\\?\. (#18612) - Fix:
CMakeConfigDepsfilterrequires()topackage_type=application. (#18611) - Fix: Fix multithreading for self-contained Conan binaries. (#18603)
- Fix: Improve version detection for
cccompilers. (#18600) - Fix: Pass deployment target from profile to
XcodeBuild. (#18496). Docs: 📃 - Fix: Project path and target name are quoted now for
XcodeBuild. (#18496). Docs: 📃 - Bugfix: Make
package_type="configuration"packages independent of theconfig_modefor theirpackage_id. (#18671) - Bugfix: PremakeDeps: ensure correct linkage on dependent libraries. (#18631)