Skip to content

Releases: conan-io/conan

2.4.1 (10-Jun-2024)

10 Jun 13:08
34a2a31
Compare
Choose a tag to compare
  • Fix: Avoid find_package's of transitive dependencies on test_package generated by cmake_lib template. (#16451)
  • Fix: Fix back migration of default compatibility.py from a clean install. (#16417)
  • Bugfix: Solve issue with setuptools (distributed Conan packages in Python) packaging the "test" folder. (#16446)
  • Bugfix: Fixed regression in CMakeToolchain with --deployer=full_deploy creating wrong escaping. (#16434)

2.4.0 (05-Jun-2024)

05 Jun 14:02
5b5015e
Compare
Choose a tag to compare
  • Feature: Added support for MacOS sdk_version 14.5 (#16400). Docs: 📃
  • Feature: Added CC_FOR_BUILD and CXX_FOR_BUILD environment variable to AutotoolsToolchain. (#16391). Docs: 📃
  • Feature: Added extra_xxxx flags to MesonToolchain as done in other toolchains like AutotoolsToolchain, CMakeToolchain, etc. (#16389)
  • Feature: Add new qbs_lib template for the conan new command. (#16382)
  • Feature: new detect_api.detect_sdk_version() method (#16355). Docs: 📃
  • Feature: Add excludes parameter to tools.files.rm to void removing pattern. (#16350). Docs: 📃
  • Feature: Allow multiple --build=missing:~pattern1 --build=missing:~pattern2 patterns. (#16327)
  • Feature: Deprecate use of path accessors in ConanFile. (#16247)
  • Feature: add support for setting tools.cmake.cmaketoolchain:extra_variables (#16242). Docs: 📃
  • Feature: Add cmake_additional_variables_prefixes variable to CMakeDeps generator to allow adding extra names for declared CMake variables. (#16231). Docs: 📃
  • Feature: Allow GNUInstallDirs definition in CMakeToolchain for the local conan install/build flow too. (#16214)
  • Feature: Let conan cache save listen to the core.gzip:compresslevel conf. (#16211)
  • Feature: Add support for Bazel >= 7.1. (#16196). Docs: 📃
  • Feature: Add new revision_mode including everything down to the recipe-revision, but not the package_id. (#16195). Docs: 📃
  • Feature: Allow a recipe to requires(..., visible=False) a previous version of itself without raising a loop error. (#16132)
  • Feature: New vendor=True package creation and build isolation strategy (#16073). Docs: 📃
  • Feature: New compiler.cstd setting for C standard (#16028). Docs: 📃
  • Feature: Implemented compatibility.py default compatibility for different C standards (#16028). Docs: 📃
  • Feature: Implement check_min_cstd, check_max_cstd, valid_max_cstd, valid_min_cstd, supported_cstd tools (#16028). Docs: 📃
  • Feature: New languages = "C", "C++" class attribute to further automate settings management (#16028). Docs: 📃
  • Feature: Add CONAN_RUNTIME_LIB_DIRS variable to the conan_toolchain.cmake. (#15914). Docs: 📃
  • Fix: Implement a back migration to <2.3 for default compatibility.py plugin. (#16405)
  • Fix: Add missing [replace_requires] and [platform_requires] to serialization/dump of profiles. (#16401)
  • Fix: Fix handling spaces in paths in Qbs helper. (#16382)
  • Fix: Make cc version detection more robust (#16362)
  • Fix: Allow --build=missing:& pattern to build only the consumer if missing, but not others. (#16344)
  • Fix: Allow "local-recipes-index" to conan list packages with custom user/channel. (#16342)
  • Fix: Fixing docstrings for cppstd functions. (#16341)
  • Fix: Change autodetect of CMAKE_SYSTEM_VERSION to use the Darwin version. (#16335). Docs: 📃
  • Fix: Fix require syntax in output in graph build-order. (#16308)
  • Fix: Improve some commands help documentation strings by adding double quotes. (#16292)
  • Fix: Better error message for incorrect version-ranges definitions. (#16289)
  • Fix: Only print info about cached recipe revision being newer when it truly is. (#16275)
  • Fix: Warn when using options without pattern scope, to improve UX of users expecting -o shared=True to apply to dependencies. (#16233). Docs: 📃
  • Fix: Fix CommandAPI usage when not used by Conan custom commands. (#16213)
  • Fix: Avoid datetime deprecated calls in Python 3.12. (#16095)
  • Fix: Handle tools.build:sysroot on Meson toolchain. (#16011). Docs: 📃
  • Bugfix: Fix LLVM/Clang enablement of vcvars for latest v14.4 toolset version after VS 17.10 update (#16374). Docs: 📃
  • Bugfix: Fix profile errors when using a docker runner of type=shared (#16364)
  • Bugfix: conan graph info .. --build=pkg doesn't download pkg sources unless tools.build:download_source is defined. (#16349)
  • Bugfix: Solved problem with relativization of paths in CMakeToolchain and CMakeDeps. (#16316)
  • Bugfix: Avoid sanitizing tools.build:compiler_executables value in MesonToolchain. (#16307)
  • Bugfix: Solved incorrect paths in conan cache save/restore tgz files that crashed when using storage_path custom configuration. (#16293)
  • Bugfix: Fix stacktrace with nonexistent graph file in conan list. (#16291)
  • Bugfix: Let CMakeDeps generator overwrite the xxxConfig.cmake when it already exists. (#16279)
  • Bugfix: Disallow self.info access in source() method. (#16272)

2.3.2 (28-May-2024)

28 May 09:10
5e42ca5
Compare
Choose a tag to compare
  • Feature: New tools.microsoft:msvc_update configuration to define the MSVC compiler update even when compiler.update is not defined. Can be used to use compiler.version=193 once VS2022 is updated to 17.10, which changes the default compiler to compiler.version=194. (#16332)
  • Bugfix: Allow default compatibility.py plugin to fallback from MSVC compiler.version=194->193 and to other cppstd values. (#16346)
  • Bugfix: Skip dot folders in local recipe index layouts. (#16345)
  • Bugfix: Remove extra backslash in generated conanvcvars.ps1. (#16322)

2.3.1 (16-May-2024)

16 May 17:40
95da083
Compare
Choose a tag to compare
  • Feature: Add GCC 13.3 support. (#16246). Docs: 📃
  • Feature: Allow opt-out for CMakeToolchain default use of absolute paths for CMakeUserPresets->CMakePreset and CMakePresets->toolchainFile path. (#16244). Docs: 📃
  • Fix: Fix config container name for Docker runner. (#16243)
  • Bugfix: Make compatibility checks understand update flag patterns. (#16252)
  • Bugfix: Solve bug with overrides from lockfiles in case of diamond structures. (#16235)
  • Bugfix: Allow export-pkg --version=xxx to be passed to recipes with python_requires inheriting set_version from base class. (#16224)

1.64.1 (14-May-2024)

14 May 09:38
Compare
Choose a tag to compare
  • Bugfix: Solved inefficiency in conan info that could make the command order of magnitude slower in slow drive systems with large dependency graphs. (#16236)

2.3.0 (06-May-2024)

06 May 16:43
Compare
Choose a tag to compare
  • Feature: Allow * wildcard as subsetting in in rm_safe. (#16105). Docs: 📃
  • Feature: Show recipe and package sizes when running conan upload. (#16103)
  • Feature: Extend conan version to report current python and system for troubleshooting. (#16102). Docs: 📃
  • Feature: Add detect_xxxx_compiler() for mainstream compilers as gcc, msvc, clang. to the public detect_api. (#16092). Docs: 📃
  • Feature: Add comment support for .conanignore file. (#16087)
  • Feature: In graph html search bar now takes in multiple search patterns separated by commas. (#16083)
  • Feature: In graph html added 'filter packages' bar that takes in multiple search patterns separated by comma and hides filters them from graph. (#16083)
  • Feature: Add an argument hide_url to Git operations to allow logging of the repository URL. By default, URLs will stay <hidden>, but users may opt-out of this. (#16038)
  • Feature: Allow .conf access (exclusively to global.conf information, not to profile information) in the export() and export_sources() methods. (#16034). Docs: 📃
  • Feature: Avoid copying identical existing files in copy(). (#16031)
  • Feature: New conan pkglist merge command to merge multiple package lists. (#16022). Docs: 📃
  • Feature: New conan pkglist find-remote command to find matching in remotes for list of packages in the cache. (#16022). Docs: 📃
  • Feature: Relativize paths in CMakePresets generation. (#16015)
  • Feature: Add new test_package_folder attribute to conanfile.py to define a different custom location and name rather than test_package default. (#16013). Docs: 📃
  • Feature: New conan create --test-missing syntax to optionally run the test_package only when the package is actually created (useful with --build=missing). (#15999). Docs: 📃
  • Feature: Add tools.gnu:build_triplet to conf. (#15965)
  • Feature: Add --exist-ok argument to conan profile detect to not fail if the profile already exists, without overwriting it. (#15933)
  • Feature: MesonToolchain can generate a native file if native=True (only makes sense when cross-building). (#15919). Docs: 📃
  • Feature: Meson helper injects native and cross files if both exist. (#15919). Docs: 📃
  • Feature: Add support for meson subproject. (#15916). Docs: 📃
  • Feature: Added transparent support for running Conan within a Docker container. (#15856). Docs: 📃
  • Fix: Allow defining CC=/usr/bin/cc (and for CXX) for conan profile detect auto-detection. (#16187)
  • Fix: Solve issue in pyinstaller.py script, it will no longer install pip install pyinstaller, having it installed will be a precondition (#16186)
  • Fix: Use backslash in CMake helper for the CMakeLists.txt folder, fixes issue when project is in the drive root, like X: (#16180)
  • Fix: Allowing conan editable remove <path> even when the path has been already deleted. (#16170)
  • Fix: Fix conan new --help formatting issue. (#16155)
  • Fix: Improved error message when there are conflicts in the graph. (#16137)
  • Fix: Improve error message when one URL is not a valid server but still returns 200-ok under a Conan "ping" API call. (#16126)
  • Fix: Solve sqlite3 issues in FreeBSD due to queries with double quotes. (#16123)
  • Fix: Clean error message for conan cache restore <non-existing-file>. (#16113)
  • Fix: Improve UX and error messages when a remotes or credentials file in the cache is invalid/empty. (#16091)
  • Fix: Use cc executable in Linux systems for autodetect compiler (conan profile detect and detect_api). (#16074)
  • Fix: Improve the definition of version ranges UX with better error message for invalid ==, ~=, ^= operators. (#16069)
  • Fix: Improve error message UX when incorrect settings.yml or settings_user.yml. (#16065)
  • Fix: Print a warning for Python 3.6 usage which is EOL since 2021. (#16003)
  • Fix: Remove duplicated printing of command line in Autotools helper. (#15991)
  • Fix: Add response error message output to HTTP Status 401 Errors in FileDownloader. (#15983)
  • Fix: Add gcc 14 to default settings.yml. (#15958)
  • Fix: Make VCVars use the compiler.update to specify the toolset. (#15947)
  • Fix: Add rc to AutotoolsToolchain mapping of compiler_executables for cross-build Linux->Windows. (#15946)
  • Fix: Add Pop!_OS to the distros using apt-get as system package manager. (#15931)
  • Fix: Do not warn with package names containing the - character. (#15920)
  • Fix: Fix html escaping of new --format=html graph output, and pass the graph serialized object instead of the string. (#15915)
  • Bugfix: Make MesonToolchain listen to tools.build:defines conf variable. (#16172). Docs: 📃
  • Bugfix: Disallow self.cpp_info access in validate_build() method. (#16135)
  • Bugfix: Don't show a trace when .conanrc's conan_home is invalid. (#16134)
  • Bugfix: Avoid the propagation of transitive dependencies of tool_requires to generators information even if they are marked as visible=True. (#16077)
  • Bugfix: BazelDeps now uses the requirement.build property instead of dependency.context one. (#16025)
  • Bugfix: Make conan cache restore work correctly when restoring over a package already in the local cache. (#15950)

2.2.3 (17-Apr-2024)

17 Apr 15:51
8e03c4b
Compare
Choose a tag to compare
  • Fix: Fix to_apple_archs method when using architectures from settings_user. (#16090)

1.64.0 (04-Apr-2024)

04 Apr 14:13
Compare
Choose a tag to compare
  • Feature: Add --output-folder to export-pkg command to be used when layout() is declared. (#15741). Docs: 📃
  • Feature: Promote cppstd_flag in the new conan.tools.build module. (#15731). Docs: 📃
  • Feature: conan.tools.meson helper requires meson >= 0.57.0. (#15706). Docs: 📃
  • Fix: Fix flags passed by AutotoolsToolchain when cross compiling from macOS to a non-Apple OS. Backported from Conan 2. (#15948)
  • Fix: Avoiding reconfigure process. Using --destdir param instead. Deprecated reconfigure param in Meson.configure() function. (#15706). Docs: 📃

2.2.2 (25-Mar-2024)

25 Mar 15:15
Compare
Choose a tag to compare
  • Fix: Avoid issues with recipe print(..., file=fileobj). (#15934)
  • Fix: Fix broken calls to print(x, file=y) with duplicate keyword arguments. (#15912)
  • Bugfix: Fix handling of tools.build:defines for multiconfig CMake. (#15924)

2.2.1 (20-Mar-2024)

20 Mar 17:52
f416a7e
Compare
Choose a tag to compare
  • Fix: Add copytree_compat method for compatibility with Python>=3.12 after distutils removal. (#15906)