Conan - The open-source C and C++ package manager
conan cache save --file=subfolder/file.tgz
subfolder doesn't exist. (https://github.com/conan-io/conan/pull/15409)CC/CXX
env vars. (https://github.com/conan-io/conan/pull/15418). Docs: :page_with_curl:
winsdk_version
bug in CMakeToolchain
generator for cmake_minimum_required(3.27)
. (https://github.com/conan-io/conan/pull/15373)build=True
trait. (https://github.com/conan-io/conan/pull/15357)package_id
calculation when including conf values thru tools.info.package_id:confs
. (https://github.com/conan-io/conan/pull/15356)conf
items when dumping them to allow reproducible package_id
independent of the order the confs were declared. (https://github.com/conan-io/conan/pull/15356)source_buildenv
, make it False
by default. (https://github.com/conan-io/conan/pull/15319). Docs: :page_with_curl:
conan lock remove
command to remove requires from lockfiles. (https://github.com/conan-io/conan/pull/15284). Docs: :page_with_curl:
CMake.ctest()
helper method to launch directly ctest
instead of via cmake --target=RUN_TEST
. (https://github.com/conan-io/conan/pull/15282)<host_version>
for different references. (https://github.com/conan-io/conan/pull/15274). Docs: :page_with_curl:
tools.microsoft:winsdk_version
conf to make VCVars
generator to use the given winsdk_version
. (https://github.com/conan-io/conan/pull/15272). Docs: :page_with_curl:
pkglist
formatter for conan export command. (https://github.com/conan-io/conan/pull/15266). Docs: :page_with_curl:
CONAN_LOG_LEVEL
env-var to be able to change verbosity at a global level. (https://github.com/conan-io/conan/pull/15263). Docs: :page_with_curl:
conan cache path xxx --folder xxxx
raises an error if the folder requested does not exist. (https://github.com/conan-io/conan/pull/15257)in
operator support for ConanFile's self.dependencies
. (https://github.com/conan-io/conan/pull/15221). Docs: :page_with_curl:
CMakeDeps
generator create a conandeps.cmake
that aggregates all direct dependencies in a cmake
-like generator style. (https://github.com/conan-io/conan/pull/15207). Docs: :page_with_curl:
deploy()
method in recipes for explicit per-recipe deployment. (https://github.com/conan-io/conan/pull/15172). Docs: :page_with_curl:
tool-requires
to be used in source()
method injecting environment. (https://github.com/conan-io/conan/pull/15153). Docs: :page_with_curl:
settings.yml
(and settings_user
!) from ConfigAPI
. (https://github.com/conan-io/conan/pull/15151)ConfigAPI
. (https://github.com/conan-io/conan/pull/15151)redirect_stdout
to CMake integration methods. (https://github.com/conan-io/conan/pull/15150)core:warnings_as_errors
configuration option to make Conan raise on warnings and errors. (https://github.com/conan-io/conan/pull/15149). Docs: :page_with_curl:
FTP_TLS
option using secure
argument in ftp_download
for secure communication. (https://github.com/conan-io/conan/pull/15137)[replace_requires]
and [replace_tool_requires]
in profile for redefining requires, useful for package replacements like zlibng/zlib
, to solve conflicts, and to replace some dependencies by system alternatives wrapped in another Conan package recipe. (https://github.com/conan-io/conan/pull/15136). Docs: :page_with_curl:
stderr
capture argument to conanfile's run()
method. (https://github.com/conan-io/conan/pull/15121). Docs: :page_with_curl:
[platform_requires]
profile definition to be able to replace Conan dependencies by platform-provided dependencies. (https://github.com/conan-io/conan/pull/14871). Docs: :page_with_curl:
conan graph explain
command to search, compare and explain missing binaries. (https://github.com/conan-io/conan/pull/14694). Docs: :page_with_curl:
cpp_info
can be used to initialize components values. (https://github.com/conan-io/conan/pull/13994)core:warnings_as_errors
accept a list (https://github.com/conan-io/conan/pull/15297)user
confs package scoping when no separator was given (https://github.com/conan-io/conan/pull/15296)set_name()
and set_version()
to mutate name and version provided in command line. (https://github.com/conan-io/conan/pull/15211). Docs: :page_with_curl:
conan graph info --format=text
print to stdout. (https://github.com/conan-io/conan/pull/15170)CMAKE_POLICY_DEFAULT_CMP0091
unused variable. (https://github.com/conan-io/conan/pull/15127)[system_tools]
in favor of [platform_tool_requires]
to align with [platform_requires]
for regular dependencies. Changed output from "System tool" to "Platform". (https://github.com/conan-io/conan/pull/14871). Docs: :page_with_curl:
user
confs have at least 1 :
separator (https://github.com/conan-io/conan/pull/15296)Git.is_dirty()
will use git status . -s
to make sure it only process the current path, not the whole repo, similarly to other Git
methods. (https://github.com/conan-io/conan/pull/15289)self.info.clear()
and header-only packages to remove python_requires
and tool_requires
. (https://github.com/conan-io/conan/pull/15285). Docs: :page_with_curl:
conan cache save/restore
portable across Windows and other OSs. (https://github.com/conan-io/conan/pull/15253)deployers
. (https://github.com/conan-io/conan/pull/15244)architecture
to CMakePresets
to avoid cmake ignoring toolchain definitions when using presets. (https://github.com/conan-io/conan/pull/15215)conan graph info --format=html
reporting misleading conflicting nodes. (https://github.com/conan-io/conan/pull/15196)conan profile show --format=json
. (https://github.com/conan-io/conan/pull/15185)storage_path
conf is defined. (https://github.com/conan-io/conan/pull/15135)package_metadata_folder
for conan export-pkg
command. (https://github.com/conan-io/conan/pull/15126)pyinstaller.py
was broken for Python 3.12 due to a useless distutils
import. (https://github.com/conan-io/conan/pull/15116)core.sources:download_cache
is set. (https://github.com/conan-io/conan/pull/15109)riscv64, riscv32
architectures to default settings.yml
and management of them in Meson and Autotools. (https://github.com/conan-io/conan/pull/15053)conan cache backup-upload
to upload all the backup sources in the cache, regardless of which references they are from (https://github.com/conan-io/conan/pull/15013). Docs: :page_with_curl:
conan list --format=compact
for better UX. (https://github.com/conan-io/conan/pull/15011). Docs: :page_with_curl:
conan upload
(https://github.com/conan-io/conan/pull/14984)CMakeToolchain
overwriting user CMakePresets.json
when no layout nor output-folder is defined (https://github.com/conan-io/conan/pull/15058)astra
, elbrus
and altlinux
as distribution using apt
in SystemPackageManager (https://github.com/conan-io/conan/pull/15051)Git()
check commits in remote server even for shallow clones. (https://github.com/conan-io/conan/pull/15023)conan --version
output (https://github.com/conan-io/conan/pull/15002)conf
to affect other recipes. (https://github.com/conan-io/conan/pull/14932). Docs: :page_with_curl:
Apt.install()
or PkgConfig.fill_cpp_info
, like xorg/system
was very noisy to the Conan output, making it more quiet (https://github.com/conan-io/conan/pull/14924)path
information of python_requires
, necessary for computing buildinfo (https://github.com/conan-io/conan/pull/14886)conan source
command in case recipe has python_requires
that need to be downloaded from remotes. (https://github.com/conan-io/conan/pull/14852)--build=missing
was doing unnecessary builds of packages that were not needed and could be skipped, in the case of tool_requires
having transitive dependencies. (https://github.com/conan-io/conan/pull/15082)tools.build:download_source=True
will not fail when there are editable packages. (https://github.com/conan-io/conan/pull/15004). Docs: :page_with_curl:
upload --check
or cache check-integrity
) when the export_source
has not been downloaded (https://github.com/conan-io/conan/pull/14850)-
do not automatically activate pre-releases resolution in the full range. (https://github.com/conan-io/conan/pull/14814). Docs: :page_with_curl:
bazel_tagert_name
and bazel_repository_name
properties. (https://github.com/conan-io/conan/pull/14959). Docs: :page_with_curl:
bazel_lib
template in all the platforms. (https://github.com/conan-io/conan/pull/14959). Docs: :page_with_curl:
BazelToolchain
creates a conan_bzl.rc
file which defines the conan-config
configuration. If it exists, Bazel helper will use it automatically. (https://github.com/conan-io/conan/pull/14958). Docs: :page_with_curl:
conan lock install
when the provided lockfile was created from a conanfile.txt
(https://github.com/conan-io/conan/pull/14836)--dry-run
for conan remove
. (https://github.com/conan-io/conan/pull/14760). Docs: :page_with_curl:
host_tool
to install()
method in package_manager
to indicate whether the package is a host tool or a library. (https://github.com/conan-io/conan/pull/14752). Docs: :page_with_curl:
export-pkg
a python-require
package, and avoid it being exported and then failing. (https://github.com/conan-io/conan/pull/14819)CMakeDeps
allows set_property()
on all properties. (https://github.com/conan-io/conan/pull/14813)conan build
command prettier error when compatibility()
over settings_target
making it None (https://github.com/conan-io/conan/pull/14825)compatible
packages look first in the cache, and only if not found, the servers, to allow offline installs when there are compatible packages. (https://github.com/conan-io/conan/pull/14800)editable
packages when they have components partially defining directories. (https://github.com/conan-io/conan/pull/14782)--format=json
formatter to conan profile show
command (https://github.com/conan-io/conan/pull/14743). Docs: :page_with_curl:
CMakeToolchain
blocks interface. Added new .blocks.select()
, .blocks.keys()
. (https://github.com/conan-io/conan/pull/14731). Docs: :page_with_curl:
c
, cpp
, and/or ld
binaries variables from Meson into lists if declared blank-separated strings. (https://github.com/conan-io/conan/pull/14676)nobara
distro to dnf
package manager mapping. (https://github.com/conan-io/conan/pull/14668)b_vscrt
with clang-cl. (https://github.com/conan-io/conan/pull/14664)tools.info.package_id:confs
(https://github.com/conan-io/conan/pull/14621). Docs: :page_with_curl:
detect_api
to be used in profiles jinja templates. (https://github.com/conan-io/conan/pull/14578). Docs: :page_with_curl:
settings_target
in compatibility method. (https://github.com/conan-io/conan/pull/14532)ConanApi
init failures, (https://github.com/conan-io/conan/pull/14735)Git.run()
when win_bash=True
. (https://github.com/conan-io/conan/pull/14756)check=False
in conan.tools.system.package_manager.Apt
to True
as the other package manager tools. (https://github.com/conan-io/conan/pull/14728). Docs: :page_with_curl:
test_requires
with diamonds. (https://github.com/conan-io/conan/pull/14721)conan export-pkg
with test_package
doing calls to remotes. (https://github.com/conan-io/conan/pull/14712)CMakeDeps
generated files are broken. (https://github.com/conan-io/conan/pull/14673)conan profile detect
on native ARM64 Windows. (https://github.com/conan-io/conan/pull/14667)conan lock create --update
now correctly updates references from servers if newer than cache ones. (https://github.com/conan-io/conan/pull/14643)tools.info.package_id:confs
shouldn't affect header-only libraries. (https://github.com/conan-io/conan/pull/14622)trim_conandata()
function to make things explicit, not depend on hook. (https://github.com/conan-io/conan/pull/14169). Docs: :page_with_curl:
tools.cmake:install_strip
conf to add --strip
option to cmake install. (https://github.com/conan-io/conan/pull/14167). Docs: :page_with_curl:
HEADER_SEARCH_PATHS
to SYSTEM_HEADER_SEARCH_PATHS
changes the command line from -i
to -isystem
and avoids warnings that arise from including package headers. (https://github.com/conan-io/conan/pull/14157). Docs: :page_with_curl:
patch_user
in conandata.yml
definition for user patches, not handled by apply_conandata_patches()
. (https://github.com/conan-io/conan/pull/14576). Docs: :page_with_curl:
--format=json
adds information to python_requires
so conan list --graph
can list python_requires
too. (https://github.com/conan-io/conan/pull/14529)rrev
, rrev_timestamp
and prev_timestamp
to the graph json serialization. (https://github.com/conan-io/conan/pull/14526)version-ranges
to resolve to editable packages too. (https://github.com/conan-io/conan/pull/14510)tools.files.download:verify
. (https://github.com/conan-io/conan/pull/14508). Docs: :page_with_curl:
tools.graph:skip_binaries
to control binary skipping in the graph. (https://github.com/conan-io/conan/pull/14466). Docs: :page_with_curl:
tools.deployer:symlinks
configuration to disable symlinks copy in deployers. (https://github.com/conan-io/conan/pull/14461). Docs: :page_with_curl:
python_requires
in 'editable add'. (https://github.com/conan-io/conan/pull/14413). Docs: :page_with_curl:
cli_args
argument for CMake.install()
. (https://github.com/conan-io/conan/pull/14397). Docs: :page_with_curl:
test_requires(..., force=True)
. (https://github.com/conan-io/conan/pull/14394). Docs: :page_with_curl:
credentials.json
file to store credentials for Conan remotes. (https://github.com/conan-io/conan/pull/14392). Docs: :page_with_curl:
apk
package manager and Alpine Linux (https://github.com/conan-io/conan/pull/14382). Docs: :page_with_curl:
conan profile detect
can now detect the version of msvc when invoked within a Visual Studio prompt where CC
or CXX
are defined and pointing to the cl
compiler executable (https://github.com/conan-io/conan/pull/14364)--build=editable
build mode. (https://github.com/conan-io/conan/pull/14358). Docs: :page_with_curl:
conan create --build-test=missing
new argument to control what is being built as dependencies of the test_package
folder. (https://github.com/conan-io/conan/pull/14347). Docs: :page_with_curl:
default_build_options
attribute for defining options for tool_requires
in recipes. (https://github.com/conan-io/conan/pull/14340). Docs: :page_with_curl:
...@
as a pattern for indicating matches with packages without user/channel. (https://github.com/conan-io/conan/pull/14338). Docs: :page_with_curl:
--format=json
in conan create
for python-requires
(https://github.com/conan-io/conan/pull/14594)conan inspect
use all remotes by default. (https://github.com/conan-io/conan/pull/14572). Docs: :page_with_curl:
tools.cmake.cmaketoolchain
to be used if defined even if tools.cmake.cmaketoolchain:user_toolchain
is defined. (https://github.com/conan-io/conan/pull/14556). Docs: :page_with_curl:
dependencies
in --format=json
for graphs as booleans, not strings. (https://github.com/conan-io/conan/pull/14530). Docs: :page_with_curl:
conan upload
when python_requires
are not in the cache and need to be downloaded. (https://github.com/conan-io/conan/pull/14511)lock add
adding a full package reference instead of a recipe reference. (https://github.com/conan-io/conan/pull/14491)stdout
but to stderr
. (https://github.com/conan-io/conan/pull/14444)conf_info
in --format=json
output. (https://github.com/conan-io/conan/pull/14442)MSBuildToolchain
/MSBuildDeps
: Avoid passing C/C++ compiler options as options for ResourceCompile
. (https://github.com/conan-io/conan/pull/14378)core.sources
conf not mandate the final slash. (https://github.com/conan-io/conan/pull/14342)default_options
to test_requires
. (https://github.com/conan-io/conan/pull/14340). Docs: :page_with_curl:
abspath
for conan config install
to avoid symlinks issues. (https://github.com/conan-io/conan/pull/14183)build_id()
issues, when multiple different package_ids
reusing same build-folder. (https://github.com/conan-io/conan/pull/14555)conan download
when using package lists. (https://github.com/conan-io/conan/pull/14526)-vtrace
is set) into stderr instead of stdout (https://github.com/conan-io/conan/pull/14522)conan upload
. (https://github.com/conan-io/conan/pull/14512)--channel
without --user
. (https://github.com/conan-io/conan/pull/14443)settings_target
computation for tool_requires
of packages already in the "build" context. (https://github.com/conan-io/conan/pull/14441)DB is locked
error when core.download:parallel
is defined. (https://github.com/conan-io/conan/pull/14410)