Releases: conan-io/conan
Releases · conan-io/conan
0.27.0 (20-September-2017)
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]
sectionno_proxy=url1,url2
configuration (to skip proxying for those URLs), as well ashttp=None
andhttps=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 ofshort_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 toconan source
local method. - Fix: unzip crashed for 0 Bytes zip files
- Fix:
collect_libs
moved to thetools
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 bybuild_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)
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)
0.26.0
- Feature:
conan profile
command has implementedupdate
,new
,remove
subcommands, with--detect
, to allow creation, edition and management of profiles. - Feature:
conan package_files
command now can call recipepackage()
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
orMDd
is now automatic based on build type, not necessary to default in profile. - Feature: Capturing
SystemExit
to return user error codes to the system withsys.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 usingvswhere.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 toCMake
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 withshort_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 thevisual_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 affectedself.copy()
commands, changing base reference directory.
0.25.1 (20-July-2017)
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)
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 supersedestest_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 definesrequires
- 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 inpackage_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
inCMake
helper for cross-building. - Feature: created
conan_api
, a python API interface to conan functionality. - Feature: new
cmake.install()
method ofCMake
helper. - Feature:
short_paths
feature now applies also toexports_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 defaultCMAKE_INSTALL_PREFIX
pointing to the current package_folder, socmake.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
andRelWithDebInfo
management inCMake
helper. - Fix: make
mkdir
,rmdir
,relative_dirs
available for import fromconans
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
andexports_sources
fields - Bugfix: allow custom user generators with underscore
0.24.0 (15-June-2017)
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 globalrequests
andoutput
instances. Proxies will work fortools.download()
- Feature:
--json
parameter added toconan info
command to create a JSON with thebuild_order
. - Fix: update default repos, now pointing to Bintray.
- Fix: printing
outdated from recipe
also for remotes - Fix: Fix required slash in
configure_dir
ofAutoToolsBuildEnvironment
- 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
0.23.1 (05-June-2017)
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
0.23.0 (01-June-2017)
- Feature: new
build_requires
field andbuild_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 newself.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()
tocmake-multi
, to set CMake FindXXX.cmake paths. This will work only for single-config build-systems. - Feature: using environment variables for
configure()
,requirements()
andtest()
methods - Feature: added a
pylintrc
environment variable inconan.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)
- Fixed CMake generator (in targets mode) with linker/exe flags like
--framework XXX
containing spaces.