Conan 1.29 has been released. This release doesn’t contain any major new features, but instead brings more completeness and quality to existing features.

Updates to Generators

Some of the newer cpp_info properties have now been added to both the QMake and Qbs generators, including cpp_info.system_libs, cpp_info.framework_paths and cpp_info.frameworks. Additionally, the json generator learned how to generate the user_info data from the build context.

The cmake_find_package and cmake_find_package_multi both had some bugs in the previous release surrounding the new filenames attribute of cpp_info. Also, there was a bug in the cmake_multi generator in which it was producing cmake files which were failing under valid conditions. These have all been fixed.

New tools.rename Function

On Windows, many users have reported an intermittant problem with python’s os.rename function when used in some conanfile.py contexts. Sometimes the function will fail simply with a permission error. Numerous workarounds have been offerred, but in this release we’ve merged a new tools function called tools.rename which uses a more robust mechanism to avoid these errors.

Experimental Toolchain for Gnu Make

Continuing our work on Conan’s new toolchain strategy, this release contains a toolchain class for the Gnu Make build system. Like the existing CMake toolchain which had been added previously, this new toolchain class generates .mak files for the Gnu Make build system which contain all the relevant build-related variables from Conan. To clarify, this does NOT include variables related to dependencies: this is still the domain of generators.

Lockfile Bug Fixes

We have also continued to evolve and improve the experience around Lockfiles. In this release, we fixed one bug where some package’s were erroneously marked as modified, and another bug where Package_ID_Unknown were not being updated correctly. We’ve also added a more helpful message when users try to compute the build_order of a graph from a “base” lockfile (which isn’t possible). Now the output should be much more helpful.



Besides the items listed above, there were some minor bug fixes you may wish to read about. If so, please refer to the changelog for the complete list.

We hope you enjoy this release, and look forward to your feedback