Skip to content

Releases: conan-io/conan

0.27.0 (20-September-2017)

20 Sep 08:55
Compare
Choose a tag to compare

0.27.0

  • Feature: conan config install <url> new command. Will install remotes, profiles, settings, conan.conf and other files into the local conan installation. Perfect to synchronize configuration among teams
  • Feature: improved traceback printing when errors are raised for more context. Configurable via env
  • Feature: filtering out non existing directories in cpp_info (include, lib, etc), so some build systems doesn't complain of them.
  • Feature: Added include directories to ResourceCompiler and to MIDL compiler in visual_studio generator
  • Feature: new visual_studio_legacy generator for Visual Studio 2008
  • Feature: show path where manifests are locally stored
  • Feature: replace_in_file now raises error if replacement is not done (opt-out parameter)
  • Feature: enabled in conan.conf [proxies] section no_proxy=url1,url2 configuration (to skip proxying for those URLs), as well as http=None and https=None to explicitely disable them.
  • Feature: new conanfile self.in_local_cache attribute for conditional logic to apply in user folders local commands
  • Feature: CONAN_USER_HOME_SHORT=None can disable the usage of short_paths in Windows, for modern Windows that enable long paths at the system level
  • Feature: if "arm" in self.settings.arch is now a valid check (without casting to str(self.settings.arch))
  • Feature: added --cwd argument to conan source local method.
  • Fix: unzip crashed for 0 Bytes zip files
  • Fix: collect_libs moved to the tools module
  • Bugfix: fixed wrong regex in deps_cpp_info causing issues with dots and dashes in package names
  • Development: Several internal refactors (tools module, installer), testing (using VS2015 as default, removing VS 12 in testing). Conditional CI in travis for faster builds in developers, downgrading to CMake 3.7 in appveyor
  • Deprecation: dev_requires have been removed. Superseded by build_requires while not documented at all.
  • Deprecation: sources tgz files for exported sources no longer contain ".c_src" subfolder. Packages created with 0.27 will be incompatible with conan < 0.25

0.26.1 (5-Sep-2017)

05 Sep 17:30
Compare
Choose a tag to compare

0.26.1

  • Bugfix: fixed parsing of conanbuildinfo with package names containing a dot.
  • Feature: added apple-clang 9.0 to default settings.
  • Fix: conan copy command now supports symlinks.
  • Fix: fixed removal of "export_source" folder when files have no permissions

0.26.0 (31-August-2017)

31 Aug 14:54
Compare
Choose a tag to compare

0.26.0

  • Feature: conan profile command has implemented update, new, remove subcommands, with --detect, to allow creation, edition and management of profiles.
  • Feature: conan package_files command now can call recipe package() method if --build_folder or --source_folder arguments are defined
  • Feature: graph loading algorithm improved to avoid repeating nodes. Results in much faster times for dense graphs, and avoids duplications of private requirements.
  • Feature: authentication based on environment variables. Allows very long processes without tokens being expired.
  • Feature: Definition of Visual Studio runtime setting MD or MDd is now automatic based on build type, not necessary to default in profile.
  • Feature: Capturing SystemExit to return user error codes to the system with sys.exit(code)
  • Feature: Added SKIP_RPATH argument to cmake conan_basic_setup() function
  • Feature: Optimized uploads, now uploads will be skipped if there are no changes, irrespective of timestamp
  • Feature: Automatic detection of VS 15-2017, via both a vs150comntools variable, and using vswhere.exe
  • Feature: Added NO_OUTPUT_DIRS argument to cmake conan_basic_setup() function
  • Feature: Add support for Chocolatey system package manager for Windows.
  • Feature: Improved in conan user home and path storage configuration, better error checks.
  • Feature: export command is now able to export recipes without name or version, specifying the full reference.
  • Feature: Added new default settings, Arduino, gcc-7.2
  • Feature: Add conan settings to cmake generated file
  • Feature: new tools.replace_prefix_in_pc_file() function to help with .pc files.
  • Feature: Adding support for system package tool pkgutil on Solaris
  • Feature: conan remote update now allows --insert argument to change remote order
  • Feature: Add verbose definition to CMake helper.
  • Fix: conan package working locally failed if not specified build_folder
  • Fix: Search when using wildcards for version like Pkg/*@user/channel
  • Fix: Change current working directory to the conanfile.py one before loading it, so relative python imports or code work.
  • Fix: package_files command now works with short_paths too.
  • Fix: adding missing require of tested package in test_package/conanfile build() method
  • Fix: path joining in vcvars_command for custom VS paths defined via env-vars
  • Fix: better managing string escaping in CMake variables
  • Fix: ExecutablePath assignment has been removed from the visual_studio generator.
  • Fix: removing export_source folder containing exported code, fix issues with read-only files and keeps cache consistency better.
  • Fix: Accept 100 return code from yum check-update
  • Fix: importing *.so files from the conan new generated test templates
  • Fix: progress bars display when download/uploads are not multipart (reported size 0)
  • Bugfix: fixed wrong OSX DYLD_LIBRARY_PATH variable for virtual environments
  • Bugfix: FileCopier had a bug that affected self.copy() commands, changing base reference directory.

0.25.1 (20-July-2017)

20 Jul 16:03
Compare
Choose a tag to compare

0.25.1

  • Bugfix: Build requires are now applied correctly to test_package projects.
  • Fix: Fixed search command to print an error when --table parameter is used without a reference.
  • Fix: install() method of the CMake() helper, allows parallel building, change build folder and custom parameters.
  • Fix: Controlled errors in migration, print warning if conan is not able to remove a package directory.

0.25.0 (19-July-2017)

19 Jul 15:59
Compare
Choose a tag to compare

0.25.0

This release introduces a new layout for the local cache, with dedicated export_source folder to store the source code exported with exports_sources feature, which is much cleaner than the old .c_src subfolder. A migration is included to remove from the local cache packages with the old layout.

  • Feature: new conan create command that supersedes test_package for creating and testing package. It works even without the test_package folder, and have improved management for user, channel. The test_package recipe no longer defines requires
  • Feature: new conan get command that display (with syntax highlight) package recipes, and any other file from conan: recipes, conaninfo.txt, manifests, etc.
  • Feature: new conan alias command that creates a special package recipe, that works like an alias or a proxy to other package, allowing easy definition and transparent management of "using the latest minor" and similar policies. Those special alias packages do not appear in the dependency graph.
  • Feature: new conan search --table=file.html command that will output an html file with a graphical representation of available binaries
  • Feature: created default profile, that replace the [settings_default] in conan.conf and augments it, allowing to define more things like env-vars, options, build_requires, etc.
  • Feature: new self.user_info member that can be used in package_info() to define custom user variables, that will be translated to general purpose variables by generators.
  • Feature: conan remove learned the --outdated argument, to remove those package binaries that are outdated from the recipe, both from local cache and remotes
  • Feature: conan search learned the --outdated argument, to show only those package binaries that are outdated from the recipe, both from local cache and remotes
  • Feature: Automatic management CMAKE_TOOLCHAIN_FILE in CMake helper for cross-building.
  • Feature: created conan_api, a python API interface to conan functionality.
  • Feature: new cmake.install() method of CMake helper.
  • Feature: short_paths feature now applies also to exports_sources
  • Feature: SystemPackageTool now supports FreeBSD system packages
  • Feature: build_requires now manage options too, also default options in package recipes
  • Feature: conan build learned new --package_folder argument, useful if the build system perform the packaging
  • Feature: CMake helper now defines by default CMAKE_INSTALL_PREFIX pointing to the current package_folder, so cmake.install() can transparently execute the packaging.
  • Feature: improved command UX with --cwd arguments to allow define the current directory for the command
  • Feature: improved VisualStudioBuildEnvironment
  • Feature: transfers now show size (MB, KB) of download/uploaded files, and current status of transfer.
  • Feature: conan new now has arguments to generate CI scripts for Gitlab CI.
  • Feature: Added MinRelSize and RelWithDebInfo management in CMake helper.
  • Fix: make mkdir, rmdir, relative_dirs available for import from conans module.
  • Fix: improved detection of Visual Studio default under cygwin environment.
  • Fix: package_files now allows symlinks
  • Fix: Windows installer now includes conan_build_info tool.
  • Fix: appending environment variables instead of overwriting them when they come from different origins: upstream dependencies and profiles.
  • Fix: made opt-in the check of package integrity before uploads, it was taking too much time, and provide little value for most users.
  • Fix: Package recipe linter removed some false positives
  • Fix: default settings from conan.conf do not fail for constrained settings in recipes.
  • Fix: Allowing to define package remote with conan remote add_ref before download/upload.
  • Fix: removed duplicated BUILD_SHARED_LIBS in test_package
  • Fix: add "rhel" to list of distros using yum.
  • Bugfix: allowing relative paths in exports and exports_sources fields
  • Bugfix: allow custom user generators with underscore

0.24.0 (15-June-2017)

16 Jun 08:00
Compare
Choose a tag to compare

0.24.0

  • Feature: conan new new arguments to generate Travis-CI and Appveyor files for Continuous Integration
  • Feature: Profile files with include() and variable declaration
  • Feature: Added RelWithDebInfo/MinRelSize to cmake generators
  • Feature: Improved linter, removing false positives due to dynamic conanfile attributes
  • Feature: Added tools.ftp_download() function for FTP retrieval
  • Feature: Managing symlinks between folders.
  • Feature: conan remote add command learned new --insert option to add remotes in specific order.
  • Feature: support multi-config in the SCons generator
  • Feature: support for gcc 7.1+ detection
  • Feature: tools now are using global requests and output instances. Proxies will work for tools.download()
  • Feature: --json parameter added to conan info command to create a JSON with the build_order.
  • Fix: update default repos, now pointing to Bintray.
  • Fix: printing outdated from recipe also for remotes
  • Fix: Fix required slash in configure_dir of AutoToolsBuildEnvironment
  • Fix: command new with very short names, now errors earlier.
  • Fix: better error detection for incorrect Conanfile.py letter case.
  • Fix: Improved some cmake robustness using quotes to avoid cmake errors
  • BugFix: Fixed incorrect firing of building due to --build patterns error
  • BugFix: Fixed bug with options incorrectly applied to build_requires and crashing
  • Refactor: internal refactors toward having a python api to conan functionality

0.23.2

11 Jun 15:31
Compare
Choose a tag to compare
0.23.2

0.23.1 (05-June-2017)

05 Jun 11:30
Compare
Choose a tag to compare

0.23.1

  • BugFix: Fixed bug while packaging symlinked folders in build folder, and target not being packaged.
  • Relaxed OSX requirement of pyopenssl to <18

0.23.0

01 Jun 09:27
Compare
Choose a tag to compare

0.23.0 (01-June-2017)

  • Feature: new build_requires field and build_requirements() in package recipes
  • Feature: improved commands (source, build, package, package_files) and workflows for local development of packages in user folders.
  • Feature: implemented no_copy_source attribute in recipes to avoid the copy of source code from "source" to "build folder". Created new self.source_folder, self.build_folder, self.package_folder for recipes to use.
  • Feature: improved qmake generator with multi-config support, resource directories
  • Feature: improved exception capture and formatting for all recipe user methods exceptions
  • Feature: new tools.sha256() method
  • Feature: folder symlinks working now for packages and upload/download
  • Feature: added set_find_paths() to cmake-multi, to set CMake FindXXX.cmake paths. This will work only for single-config build-systems.
  • Feature: using environment variables for configure(), requirements() and test() methods
  • Feature: added a pylintrc environment variable in conan.conf to define a PYLINTRC file with custom style definitions (like indents).
  • Feature: fixed vcvars architecture setting
  • Fix: Make cacert.pem folder use CONAN_USER_HOME if existing
  • Fix: fixed options=a=b option definition
  • Fix: package_files command allows --force argument to overwrite existing instead of failing
  • BugFix: Package names with underscore when parsing conanbuildinfo.txt

0.22.3 (03-May-2017)

03 May 12:14
Compare
Choose a tag to compare
  • Fixed CMake generator (in targets mode) with linker/exe flags like --framework XXX containing spaces.