Releases: conan-io/conan
Releases Β· conan-io/conan
2.0.9 (19-Jul-2023)
- Feature: Add
implements
attribute in ConanFile to provide automatic management of some options and settings. (#14320). Docs: π - Feature: Add
apple-clang
15. (#14302) - Fix: Allow repository being dirty outside of
conanfile.py
folder when usingrevision_mode = "scm_folder"
. (#14330) - Fix: Improve the error messages and provide Conan traces for errors in
compatibility.py
andprofile.py
plugins. (#14322) - Fix:
flush()
output streams after every message write. (#14310) - Bugfix: Fix Package signing plugin not verifying the downloaded sources. (#14331). Docs: π
- Bugfix: Fix
CMakeUserPresets
inherits from conan generated presets due to typo. (#14325) - Bugfix: ConanPresets.json contains duplicate presets if multiple user presets inherit from the same conan presets. (#14296)
- Bugfix: Meson
prefix
param is passed as UNIX path. (#14295) - Bugfix: Fix
CMake Error: Invalid level specified for --loglevel
whentools.build:verbosity
is set toquiet
. (#14289)
2.0.8 (13-Jul-2023)
- Feature: Add GCC 10.5 to default settings.yml. (#14252)
- Feature: Let
pkg_config_custom_content
overwrite default*.pc
variables created byPkgConfigDeps
. (#14233). Docs: π - Feature: Let
pkg_config_custom_content
be a dict-like object too. (#14233). Docs: π - Feature: The
fix_apple_shared_install_name
tool now usesxcrun
to resolve theotool
andinstall_name_tool
programs. (#14195) - Feature: Manage shared, fPIC, and header_only options automatically. (#14194). Docs: π
- Feature: Manage package ID for header-library package type automatically. (#14194). Docs: π
- Feature: New
cpp_info.set_property("cmake_package_version_compat" , "AnyNewerVersion")
forCMakeDeps
generator. (#14176). Docs: π - Feature: Metadata improvements. (#14152)
- Fix: Improve error message when missing binaries with
conan test
command. (#14272) - Fix: Make
conan download
command no longer need to load conanfile, won't fail for 1.X recipes or missingpython_requires
. (#14261) - Fix: Using
upload
with the--list
argument now permits empty recipe lists. (#14254) - Fix: Guarantee that
Options.rm_safe
never raises. (#14238) - Fix: Allow
tools.gnu:make_program
to affect every CMake configuration. (#14223) - Fix: Add missing
package_type
toconan new
lib templates. (#14215) - Fix: Add clarification for the default folder shown when querying a package reference. (#14199). Docs: π
- Fix: Enable existing status-message code in the
patch()
function. (#14177) - Fix: Use
configuration
inXcodeDeps
instead of alwaysbuild_type
. (#14168) - Fix: Respect symlinked path for cache location. (#14164)
- Fix:
PkgConfig
usesconanfile.run()
instead of internal runner to get full Conan environment from profiles and dependencies. (#13985) - Bugfix: Fix leaking of
CMakeDeps
CMAKE_FIND_LIBRARY_SUFFIXES
variable. (#14253) - Bugfix: Fix conan not finding generator by name when multiple custom global generators are detected. (#14227)
- Bugfix: Improve display of graph conflicts in
conan graph info
in html format. (#14190) - Bugfix: Fix
CMakeToolchain
cross-building from Linux to OSX. (#14187) - Bugfix: Fix KeyError in backup sources when no package is selected. (#14185)
2.0.7 (21-Jun-2023)
- Feature: Add new
arm64ec
architecture, used to define CMAKE_GENERATOR_PLATFORM. (#14114). Docs: π - Feature: Make
CppInfo
a public, documented, importable tool for generators that need to aggregate them. (#14101). Docs: π - Feature: Allow
conan remove --list=pkglist
to remove package-lists. (#14082). Docs: π - Feature: Output for
conan remove --format
both text (summary of deleted things) and json. (#14082). Docs: π - Feature: Add
core.sources:excluded_urls
to backup sources. (#14020) - Feature:
conan test
command learned the--format=json
formatter. (#14011). Docs: π - Feature: Allow
pkg/[version-range]
expressions inconan list
(and download, upload, remove) patterns. (#14004). Docs: π - Feature: Add
conan upload --dry-run
equivalent to 1.Xconan upload --skip-upload
. (#14002). Docs: π - Feature: Add new command
conan version
to format the output. (#13999). Docs: π - Feature: Small UX improvement to print some info while downloading large files. (#13989)
- Feature: Use
PackagesList
as input argument forconan upload --list=pkglist.json
. (#13928). Docs: π - Feature: Use
--graph
input forconan list
to create aPackagesList
that can be used as input forconan upload
. (#13928). Docs: π - Feature: New metadata files associated to recipes and packages that can be uploaded, downloaded and added after the package exists. (#13918)
- Feature: Allow to specify a custom deployer output folder. (#13757). Docs: π
- Feature: Split build & compilation verbosity control to two confs. (#13729). Docs: π
- Feature: Added
bindir
to generated.pc
file inPkgConfigDeps
. (#13623). Docs: π - Fix: Deprecate
AutoPackage
remnant from Conan 1.X. (#14083). Docs: π - Fix: Fix description for the conf entry for default build profile used. (#14075). Docs: π
- Fix: Allow spaces in path in
Git
helper. (#14063). Docs: π - Fix: Remove trailing
.
inconanfile.xxx_folder
that is breaking subsystems like msys2. (#14061) - Fix: Avoid caching issues when some intermediate package in the graph calls
aggregated_components()
over some dependency and using--deployer
, generators still pointed to the Conan cache and not deployed copy. (#14060) - Fix: Allow internal
Cli
object to be called more than once. (#14053) - Fix: Force
pyyaml>=6
for Python 3.10, as previous versions broke. (#13990) - Fix: Improve graph conflict message when Conan can't show one of the conflicting recipes. (#13946)
- Bugfix: Solve bug in timestamp of non-latest revision download from the server. (#14110)
- Bugfix: Fix double base path setup in editable packages. (#14109)
- Bugfix: Raise if
conan graph build-order
graph has any errors, instead of quietly doing nothing and outputting and empty json. (#14106) - Bugfix: Avoid incorrect path replacements for
editable
packages when folders have overlapping matching names. (#14095) - Bugfix: Set clang as the default FreeBSD detected compiler. (#14065)
- Bugfix: Add prefix var and any custom content (through the
pkg_config_custom_content
property) to already generated pkg-config root .pc files byPkgConfigDeps
. (#14051) - Bugfix:
conan create
command returns always the same output for--format=json
result graph, irrespective of test_package existence. (#14011). Docs: π - Bugfix: Fix problem with
editable
packages when definingself.folders.root=".."
parent directory. (#13983) - Bugfix: Removed
libdir1
andincludedir1
as the default index. Now,PkgConfigDeps
creates thelibdir
andincludedir
variables by default in.pc
files. (#13623). Docs: π
1.60.1 (30-May-2023)
- Bugfix: Fix lockfile usage with transitive tool-dependencies. (#13902)
2.0.6 (26-May-2023)
- Feature: Add a
tools.cmake:cmake_program
configuration item to allow specifying the location of the desired CMake executable. (#13940). Docs: π - Fix: Output "id" property in graph json output as str instead of int. (#13964). Docs: π
- Fix: Fix custom commands in a layer not able to do a local import. (#13944)
- Fix: Improve the output of download + unzip. (#13937)
- Fix: Add missing values to
package_manager:mode
inconan config install
. (#13929) - Bugfix: Ensuring the same graph-info JSON output for
graph info
,create
,export-pkg
, andinstall
. (#13967). Docs: π - Bugfix:
test_requires
were affecting thepackage_id
of consumers as regularrequires
, but they shouldn't. (#13966) - Bugfix: Define
source_folder
correctly in the json output when-c tools.build:download_source=True
. (#13953) - Bugfix: Fixed and completed the
graph info xxxx --format json
output, to publicly document it. (#13934). Docs: π - Bugfix: Fix "double" absolute paths in premakedeps. (#13926)
- Bugfix: Fix regression from 2.0.5 #13898, in which overrides of packages and components specification was failing (#13923)
2.0.5 (18-May-2023)
- Feature:
-v
argument defaults to theVERBOSE
level. (#13839) - Feature: Avoid showing unnecessary skipped dependencies. Now, it only shows a list of reference names if exists skipped binaries. They can be completely listed by adding
-v
(verbose mode) to the current command. (#13836) - Feature: Allow step-into dependencies debugging for packages built locally with
--build
(#13833). Docs: π - Feature: Allow non relocatable, locally built packages with
upload_policy="skip"
andbuild_policy="missing"
(#13833). Docs: π - Feature: Do not move "build" folders in cache when
package-revision
is computed to allow locating sources for dependencies debuggability with step-into (#13810) - Feature: New
settings.possible_values()
method to query the range of possible values for a setting. (#13796). Docs: π - Feature: Optimize and avoid hitting servers for binaries when
upload_policy=skip
(#13771) - Feature: Partially relativize generated environment .sh shell scripts (#13764)
- Feature: Improve settings.yml error messages (#13748)
- Feature: Auto create empty
global.conf
to improve UX looking for file in home. (#13746). Docs: π - Feature: Render the profile file name as profile_name (#13721). Docs: π
- Feature: New global custom generators in cache "extensions/generators" that can be used by name. (#13718). Docs: π
- Feature: Improve
conan inspect
output, it now understandsset_name
/set_version
. (#13716). Docs: π - Feature: Define new
self.tool_requires("pkg/<host_version>")
to allow some tool-requires to follow and use the same version as the "host" regular requires do. (#13712). Docs: π - Feature: Introduce new
core:skip_warns
configuration to be able to silence some warnings in the output. (#13706). Docs: π - Feature: Add info_invalid to graph node serialization (#13688)
- Feature: Computing and reporting the
overrides
in the graph, and in thegraph build-order
(#13680) - Feature: New
revision_mode = "scm_folder"
for mono-repo projects that want to usescm
revisions. (#13562). Docs: π - Feature: Demonstrate that it is possible to
tool_requires
different versions of the same package. (#13529). Docs: π - Fix:
build_scripts
now set therun
trait toTrue
by default (#13901). Docs: π - Fix: Fix XcodeDeps includes skipped dependencies. (#13880)
- Fix: Do not allow line feeds into
pkg/version
reference fields (#13870) - Fix: Fix
AutotoolsToolchain
definition oftools.build:compiler_executable
for Windows subsystems (#13867) - Fix: Speed up the CMakeDeps generation (#13857)
- Fix: Fix imported library config suffix. (#13841)
- Fix: Fail when defining an unkown conf (#13832)
- Fix: Fix incorrect printing of "skipped" binaries in the
conan install/create
commands, when they are used by some other dependencies. (#13778) - Fix: Renaming the cache "deploy" folder to "deployers" and allow
-d, --deployer
cli arg. ("deploy" folder will not break but will warn as deprecated). (#13740). Docs: π - Fix: Omit
-L
libpaths inCMakeDeps
for header-only libraries. (#13704) - Bugfix: Fix when a
test_requires
is also a regular transitive "host" requires and consumer defines components. (#13898) - Bugfix: Fix propagation of options like
*:shared=True
defined in recipes (#13855) - Bugfix: Fix
--lockfile-out
paths for 'graph build-order' and 'test' commands (#13853) - Bugfix: Ensure backup sources are uploaded in more cases (#13846)
- Bugfix: fix
settings.yml
definition ofintel-cc
cppstd=03
(#13844) - Bugfix: Fix
conan upload
with backup sources for exported-only recipes (#13779) - Bugfix: Fix
conan lock merge
of lockfiles containing alias (#13763) - Bugfix: Fix python_requires in transitive deps with version ranges (#13762)
- Bugfix: fix CMakeToolchain CMAKE_SYSTEM_NAME=Generic for baremetal (#13739)
- Bugfix: Fix incorrect environment scripts deactivation order (#13707)
- Bugfix: Solve failing lockfiles when graph has requirements with
override=True
(#13597)
1.60.0 (11-May-2023)
- Feature: Define new version expression
tool_requires("pkg/<host_version>")
to get the host requirement version (Backport of 2.0 #13712). (#13719). Docs: π - Feature: Provide compatibility with servers containing Conan 2.0 packages with user and no channel. (#13590)
- Feature: Add MacOS SDK version 13.1. (#13585)
- Feature: New
move_folder_contents()
file helper to re-arrange repos folders. (#13509). Docs: π - Feature: Allow
conan_version
in profile.jinja and global.conf jinja templating. (#13377). Docs: π - Fix: Add gcc 13 to default settings.yml. (#13848)
- Fix: Prepare Conan 1.60 to not break if Conan 2.X starts adding metadata files to packages. (#13351)
- Bugfix: Fix AutotoolsToolchain when unknown compiler. (#13815)
- Bugfix: Fixed graph_lock.py - lock_node(): consider context of build_require from lockfile. (#13788)
- Bugfix: Fix for
conan search pkg/*@
andconan upload pkg/*@
, to filter packages without user/channel. (#13173)
2.0.4 (11-Apr-2023)
- Feature: extend
--build-require
to more commands (graph info
,lock create
,install
) and cases. (#13669). Docs: π - Feature: Add
-d tool_requires
toconan new
. (#13608). Docs: π - Feature: Make CMakeDeps, CMakeToolchain and Environment (.bat, Windows only) generated files have relative paths. (#13607)
- Feature: Adding preliminary (non documented, dev-only) support for premake5 deps (PremakeDeps). (#13390)
- Fix: Update old
conan user
references toconan remote login
. (#13671) - Fix: Improve dependencies options changed in
requirements()
error msg. (#13668) - Fix: [system_tools] was not reporting the correct resolved version, but still the original range. (#13667)
- Fix: Improve
provides
conflict message error. (#13661) - Fix: When server responds Forbidden to the download of 1 file in a recipe/package, make sure other files and DB are cleaned. (#13626)
- Fix: Add error in
conan remove
when using--package-query
without providing a pattern that matches packages. (#13622) - Fix: Add
direct_deploy
subfolder for thedirect_deploy
deployer. (#13612). Docs: π - Fix: Fix html output when pattern does not list package revisions, like:
conan list "*#*:*"
. (#13605) - Bugfix:
conan list -p <package-query>
failed when a package had no settings or options. (#13662) - Bugfix:
python_requires
now properly loads remote requirements. (#13657) - Bugfix: Fix crash when
override
is used in a node of the graph that is also the closing node of a diamond. (#13631) - Bugfix: Fix the
--package-query
argument foroptions
. (#13618) - Bugfix: Add
full_deploy
subfolder for thefull_deploy
deployer to avoid collision with "build" folder. (#13612). Docs: π - Bugfix: Make
STATUS
the default log level. (#13610) - Bugfix: Fix double delete error in
conan cache clean
. (#13601)
2.0.3 (03-Apr-2023)
- Feature:
conan cache clean
learned the--all
and--temp
to clean everything (sources, builds) and also the temporary folders. (#13581). Docs: π - Feature: Introduce the
conf
dictionary update semantics with*=
operator. (#13571). Docs: π - Feature: Support MacOS SDK 13.1 (available in Xcode 14.2). (#13531)
- Feature: The
full_deploy
deployer together withCMakeDeps
generator learned to create relative paths deploys, so they are relocatable. (#13526) - Feature: Introduce the
conan remove *#!latest
(also for package-revisions), to remove all revisions except the latest one. (#13505). Docs: π - Feature: New
conan cache check-integrity
command to replace 1.X legacyconan upload --skip-upload --check
. (#13502). Docs: π - Feature: Add filtering for options and settings in conan list html output. (#13470)
- Feature: Automatic server side source backups for third parties. (#13461)
- Feature: Add
tools.android:cmake_legacy_toolchain
configuration useful when building CMake projects for Android. If defined, this will set the value ofANDROID_USE_LEGACY_TOOLCHAIN_FILE
. It may be useful to set this toFalse
if compiler flags are defined viatools.build:cflags
ortools.build:cxxflags
to prevent Android's legacy CMake toolchain from overriding the values. (#13459). Docs: π - Feature: Default
tools.files.download:download_cache
tocore.download:download_cache
, so it is only necessary to define one. (#13458) - Feature: Authentication for
tools.files.download()
. (#13421). Docs: π - Fix: Define a way to update
default_options
inpython_requires_extend
extension. (#13487). Docs: π - Fix: Allow again to specify
self.options["mydep"].someoption=value
, equivalent to"mydep/*"
. (#13467) - Fix: Generate
cpp_std=vc++20
for c++20 with meson with VS2019 and VS2022, rather thanvc++latest
. (#13450) - Bugfix: Fixed
CMakeDeps
not clearingCONAN_SHARED_FOUND_LIBRARY
var infind_library()
. (#13596) - Bugfix: Do not allow adding more than 1 remote with the same remote name. (#13574)
- Bugfix:
cmd_wrapper
added missing parameterconanfile
. (#13564). Docs: π - Bugfix: Avoid generators errors because dependencies binaries of editable packages were "skip". (#13544)
- Bugfix: Fix subcommands names when the parent command has underscores. (#13516)
- Bugfix: Fix
python-requires
in remotes when runningconan export-pkg
. (#13496) - Bugfix: Editable packages now also follow
build_folder_vars
configuration. (#13488) - Bugfix: Fix
[system_tools]
profile composition. (#13468)
2.0.2 (15-Mar-2023)
- Feature: Allow relative paths to the Conan home folder in the
global.conf
. (#13415). Docs: π - Feature: Some improvements for html formatter in
conan list
command. (#13409). Docs: π - Feature: Adds an optional "build_script_folder" argument to the
autoreconf
method of theAutotools
class. It mirrors the same argument and behavior of theconfigure
method of the same class. That is, it allows one to override where the tool is run (by default it runs in thesource_folder
. (#13403) - Feature: Create summary of cached content. (#13386)
- Feature: Add
conan config show <conf>
command. (#13354). Docs: π - Feature: Allow
global.conf
jinja2 inclusion of other files. (#13336) - Feature: Add
conan export-pkg --skip-binaries
to allow exporting without binaries of dependencies. (#13324). Docs: π - Feature: Add
core.version_ranges:resolve_prereleases
conf to control whether version ranges can resolve to prerelease versions (#13321) - Fix: Allow automatic processing of
package_type = "build-scripts"
inconan create
as--build-require
. (#13433) - Fix: Improve the detection and messages of server side package corruption. (#13432)
- Fix: Fix conan download help typo. (#13430)
- Fix: Remove profile arguments from
conan profile path
. (#13423). Docs: π - Fix: Fix typo in _detect_compiler_version. (#13396)
- Fix: Fix
conan profile detect
detection oflibc++
forclang
compiler on OSX. (#13359) - Fix: Allow internal
vswhere
calls to detect and use VS pre-releases too. (#13355) - Fix: Allow
conan export-pkg
to use remotes to install missing dependencies not in the cache. (#13324). Docs: π - Fix: Allow conversion to
dict
ofsettings.yml
lists whensettings_user.yml
define adict
. (#13323) - Fix: Fix flags passed by AutotoolsToolchain when cross compiling from macOS to a non-Apple OS. (#13230)
- BugFix: Fix issues in
MSBuild
with custom configurations when custom configurations has spaces. (#13435) - Bugfix: Solve bug in
conan profile path <nonexisting>
that was crashing. (#13434) - Bugfix: Add global verbosity conf
tools.build:verbosity
instead of individual ones. (#13428). Docs: π - Bugfix: Avoid raising fatal exceptions for malformed custom commands. (#13365)
- Bugfix: Do not omit
system_libs
from dependencies even if they are header-only. (#13364) - Bugfix: Fix
VirtualBuildEnv
environment not being created whenMesonToolchain
is instantiated. (#13346) - Bugfix: Nicer error in the compatibility plugin with custom compilers. (#13328)
- Bugfix: adds qcc cppstd compatibility info to allow dep graph to be calculated. (#13326)