forked from conan-io/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchangelog.rst
4012 lines (3376 loc) · 429 KB
/
changelog.rst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
.. spelling::
dragly
mathieu
melmdk
raulbocanegra
rhel
tivek
tru
yogeva
.. _changelog:
Changelog
=========
Check https://github.com/conan-io/conan for issues and more details about development, contributors, etc.
.. important::
Conan 1.59 shouldn't break any existing 1.0 recipe or command line invocation. If it does, please submit
a report on GitHub. Read more about the :ref:`Conan stability commitment<stability>`.
1.59.0 (16-Feb-2023)
--------------------
- Feature: Update `requirements.txt` to use distro package version <=1.8.0. `#13124 <https://github.com/conan-io/conan/pull/13124>`_
- Feature: Add new ``Git.fetch_commit`` method, for a faster alternative than clone. `#13096 <https://github.com/conan-io/conan/pull/13096>`_ . Docs `here <https://github.com/conan-io/docs/pull/2974>`__
- Feature: Add `msvs_toolset` method to `conan.tools.microsoft.visual` to identify which toolset version is associated to the compiler version. `#13041 <https://github.com/conan-io/conan/pull/13041>`_ . Docs `here <https://github.com/conan-io/docs/pull/2951>`__
- Feature: Add a `CONAN_DISABLE_STRICT_MODE` environment variable as a workaround to be able to build old packages which used CMakeDeps or MSBuildDeps without switching to the new CMakeToolchain or MSBuildToolchain generator as well. `#13039 <https://github.com/conan-io/conan/pull/13039>`_ . Docs `here <https://github.com/conan-io/docs/pull/2950>`__
- Feature: Show meaningful message if CMakePresets.txt does not exist (normally, when CMakeToolchain was not added as a generator). `#13019 <https://github.com/conan-io/conan/pull/13019>`_
- Feature: Add `conan.tools.android.android_abi()` function to return the Android standard ABI name based on Conan. `#12873 <https://github.com/conan-io/conan/pull/12873>`_ . Docs `here <https://github.com/conan-io/docs/pull/2975>`__
- Bugfix: Local build was not adding default dirs in MesonToolchain (only in Linux). `#13132 <https://github.com/conan-io/conan/pull/13132>`_
- Bugfix: Solve 500 error in :command:`conan search` to conan_server with revisions enabled of a missing package. `#13070 <https://github.com/conan-io/conan/pull/13070>`_
- Bugfix: Fix issue in `fix_apple_shared_install_name` handling dylib files with multiple architectures (universal). `#13034 <https://github.com/conan-io/conan/pull/13034>`_
1.58.0 (30-Jan-2023)
--------------------
- Feature: Update gcc versions supported in settings. `#12972 <https://github.com/conan-io/conan/pull/12972>`_ . Docs `here <https://github.com/conan-io/docs/pull/2919>`__
- Feature: Conan packages using the CMakeDeps generator will now stop printing status messages if the QUIET argument is passed to the respective find_package() CMake call. `#12967 <https://github.com/conan-io/conan/pull/12967>`_
- Feature: Guess Apple SDK path in `MesonToolchain` in case of cross-build on macOS if `tools.apple:sdk_path` is not set by user. `#12923 <https://github.com/conan-io/conan/pull/12923>`_
- Fix: ``CMakeToolchain`` generates preset files with more than 1 configure preset. `#13004 <https://github.com/conan-io/conan/pull/13004>`_
- Fix: Allow not propagating components to consumers. `#12966 <https://github.com/conan-io/conan/pull/12966>`_
- Fix: `fix_apple_shared_install_name()` now fixes all dylib in libdirs and executables in bindirs regardless of shared option. `#12960 <https://github.com/conan-io/conan/pull/12960>`_
- Fix: NMakeDeps support cpp_info.defines and cpp_info.system_libs of dependencies. `#12944 <https://github.com/conan-io/conan/pull/12944>`_
- Fix: Refactoring of `NMakeToolchain` to expose similar attributes than other toolchains, and honor build config like cflags, cxxflags, sharedlinkflags, exelinkflags, defines & compiler_executables. `#12665 <https://github.com/conan-io/conan/pull/12665>`_ . Docs `here <https://github.com/conan-io/docs/pull/2848>`__
- Bugfix: Define CMAKE_PROGRAM_PATH in toolchain file generated by CMakeToolchain, when only one profile is used. `#12974 <https://github.com/conan-io/conan/pull/12974>`_
- Bugfix: `Version` comparison (greater than) with integer was raising an error. `#12935 <https://github.com/conan-io/conan/pull/12935>`_
- Bugfix: Fix ``cmake_layout`` for single-config configurations when defining ``build_folder_vars``. `#12925 <https://github.com/conan-io/conan/pull/12925>`_
- Bugfix: fix failure of removing options for build_requires in cross-build. `#12905 <https://github.com/conan-io/conan/pull/12905>`_
1.57.0 (12-Jan-2023)
--------------------
- Feature: AutotoolsToolchain helper functions: `update_configure_args`, `update_make_args`, and `update_autoreconf_args` can also add new values `#12889 <https://github.com/conan-io/conan/pull/12889>`_ . Docs `here <https://github.com/conan-io/docs/pull/2895>`__
- Feature: Add `unix_path_package_info_legacy` function for those cases in which it is used in `package_info` in recipes that require compatibility with Conan 1.x. In Conan 2, path conversions should not be performed in the `package_info` method. `#12887 <https://github.com/conan-io/conan/pull/12887>`_ . Docs `here <https://github.com/conan-io/docs/pull/2894>`__
- Feature: Added to AutotoolsToolchain helper functions: `update_configure_args`, `update_make_args`, and `update_autoreconf_args` to update/prune flags effortlessly. `#12884 <https://github.com/conan-io/conan/pull/12884>`_ . Docs `here <https://github.com/conan-io/docs/pull/2895>`__
- Feature: Allow skip the generation of conanvcvars.bat with empty ``tools.microsoft.msbuild:installation_path`` `#12882 <https://github.com/conan-io/conan/pull/12882>`_ . Docs `here <https://github.com/conan-io/docs/pull/2892>`__
- Feature: Adds new `raise_invalid` argument for `check_min_vs` to avoid raising if the check fails. `#12880 <https://github.com/conan-io/conan/pull/12880>`_ . Docs `here <https://github.com/conan-io/docs/pull/2890>`__
- Feature: Adds a conf variable for supplying linker scripts to the linker using the `-T` flag. `#12854 <https://github.com/conan-io/conan/pull/12854>`_ . Docs `here <https://github.com/conan-io/docs/pull/2887>`__
- Feature: CMakeToolchain also write CMake Test Presets. `#12846 <https://github.com/conan-io/conan/pull/12846>`_ . Docs `here <https://github.com/conan-io/docs/pull/2889>`__
- Feature: Add the ability to provide a `--component` argument with the `cmake.install` function. `#12762 <https://github.com/conan-io/conan/pull/12762>`_ . Docs `here <https://github.com/conan-io/docs/pull/2893>`__
- Fix: `AutotoolsToolchain.configure_args` are adequately initialized. `#12884 <https://github.com/conan-io/conan/pull/12884>`_ . Docs `here <https://github.com/conan-io/docs/pull/2895>`__
- Fix: Deprecate ``c++2a`` for gcc 12, replace with ``c++20``. `#12796 <https://github.com/conan-io/conan/pull/12796>`_
- Bugfix: `AutotoolsToolchain.configure_args` was overwriting Conan's pre-calculated arguments. `#12884 <https://github.com/conan-io/conan/pull/12884>`_ . Docs `here <https://github.com/conan-io/docs/pull/2895>`__
- Bugfix: Fix ``remove_broken_symlinks`` failing at relative paths symlinks. `#12876 <https://github.com/conan-io/conan/pull/12876>`_
- Bugfix: Fix KeyError 'buildPresets', the field is optional according to the specification. `#12874 <https://github.com/conan-io/conan/pull/12874>`_
- Bugfix: Fix bug to pass a valid GNU triplet when using AutotoolsToolchain and cross-building on Windows. `#12870 <https://github.com/conan-io/conan/pull/12870>`_
- Bugfix: Fix XcodeDeps in "editable" mode root package_folder=None. `#12841 <https://github.com/conan-io/conan/pull/12841>`_
- Bugfix: Make ``cmake_layout`` to use single-config folder for generated files. `#12829 <https://github.com/conan-io/conan/pull/12829>`_ . Docs `here <https://github.com/conan-io/docs/pull/2891>`__
- Bugfix: Allow ``compatibility()`` for lockfiles. `#12778 <https://github.com/conan-io/conan/pull/12778>`_
1.56.0 (21-Dec-2022)
--------------------
- Fix: Avoid extra line end while printing files with :command:`conan get`. `#12717 <https://github.com/conan-io/conan/pull/12717>`_
- Fix: Fix new Environment `.ps1` files when spaces in path `#12653 <https://github.com/conan-io/conan/pull/12653>`_
- Bugfix: Fix ``CMakeDeps`` when a ``tool_requires`` needs to be built from source and it has transitive dependencies that are regular ``requires``. `#12736 <https://github.com/conan-io/conan/pull/12736>`_
- Bugfix: Fix issue in `fix_apple_shared_install_name` when libdirs or bindirs have subfolders. `#12732 <https://github.com/conan-io/conan/pull/12732>`_
- Bugfix: Fix issue with `PkgConfigDeps` not creating `.pc` files in build context. `#12712 <https://github.com/conan-io/conan/pull/12712>`_
- Bugfix: Fix issue with `CMakeDeps` not creating `xxx-config.cmake` files in build context. `#12675 <https://github.com/conan-io/conan/pull/12675>`_
1.55.0 (30-Nov-2022)
--------------------
- Feature: Add `prefix` argument to `AutotoolsToolchain`. `#12620 <https://github.com/conan-io/conan/pull/12620>`_ . Docs `here <https://github.com/conan-io/docs/pull/2824>`__
- Feature: Provide the ability to set CMakeDeps properties from consumer side. `#12609 <https://github.com/conan-io/conan/pull/12609>`_ . Docs `here <https://github.com/conan-io/docs/pull/2827>`__
- Feature: New ``NMakeDeps`` generator. `#12599 <https://github.com/conan-io/conan/pull/12599>`_ . Docs `here <https://github.com/conan-io/docs/pull/2828>`__
- Feature: Implement ``editable`` env-vars via ``layouts.xxx.buildenv_info`` and ``layouts.xxx.runenv_info`` and conf via ``layouts.xxx.conf_info``. `#12598 <https://github.com/conan-io/conan/pull/12598>`_ . Docs `here <https://github.com/conan-io/docs/pull/2834>`__
- Feature: Add gcc 12.1 and 12.2 to `settings.yml`. `#12562 <https://github.com/conan-io/conan/pull/12562>`_ . Docs `here <https://github.com/conan-io/docs/pull/2821>`__
- Feature: Add `tools.build:compiler_executables` configuration to set compilers variables in CMakeToolchain, MesonToolchain, and AutoToolsToolchain, e.g., `CMAKE_<LANG>_COMPILER` in `CMakeToolchain`. `#12556 <https://github.com/conan-io/conan/pull/12556>`_ . Docs `here <https://github.com/conan-io/docs/pull/2833>`__
- Feature: Allow placeholders in `EnvVars`. `#12517 <https://github.com/conan-io/conan/pull/12517>`_ . Docs `here <https://github.com/conan-io/docs/pull/2835>`__
- Feature: New `NMakeToolchain`. `#12516 <https://github.com/conan-io/conan/pull/12516>`_ . Docs `here <https://github.com/conan-io/docs/pull/2828>`__
- Feature: Added generators folder to `PKG_CONFIG_PATH` environment variable in `CMakeToolchain`. `#12513 <https://github.com/conan-io/conan/pull/12513>`_ . Docs `here <https://github.com/conan-io/docs/pull/2832>`__
- Feature: Ensure that `CMakeToolchain` will enforce usage of `pkg-config` executable set in `tools.gnu:pkg_config` config. `#12513 <https://github.com/conan-io/conan/pull/12513>`_ . Docs `here <https://github.com/conan-io/docs/pull/2832>`__
- Feature: Add `cli_args` argument to CMake build helper configure method. `#12509 <https://github.com/conan-io/conan/pull/12509>`_ . Docs `here <https://github.com/conan-io/docs/pull/2822>`__
- Feature: Add `target` argument to `Autotools.install()`. `#12491 <https://github.com/conan-io/conan/pull/12491>`_ . Docs `here <https://github.com/conan-io/docs/pull/2823>`__
- Feature: Make available ``XCRun().settings`` read attribute. `#12486 <https://github.com/conan-io/conan/pull/12486>`_ . Docs `here <https://github.com/conan-io/docs/pull/2829>`__
- Feature: Automatically add the msys2 ``usr/bin`` folder where ``bash.exe`` is to the PATH. `#12457 <https://github.com/conan-io/conan/pull/12457>`_
- Feature: Add `tools.meson.mesontoolchain:extra_machine_files=["FILENAMES"]` to `Meson` build helper to append machine files to the the ones created by Conan. `#12117 <https://github.com/conan-io/conan/pull/12117>`_ . Docs `here <https://github.com/conan-io/docs/pull/2831>`__
- Feature: Add `.user_presets_path` attribute to `CMakeToolchain` to customize the location of `CMakeUserPresets.json` or to skip generating it. `#11917 <https://github.com/conan-io/conan/pull/11917>`_ . Docs `here <https://github.com/conan-io/docs/pull/2825>`__
- Fix: Raise a clear error if ``settings.compiler`` is not defined for ``MesonToolchain``. `#12623 <https://github.com/conan-io/conan/pull/12623>`_
- Fix: Fix `runenv` for `cmake.test()`. `#12580 <https://github.com/conan-io/conan/pull/12580>`_
- Fix: Remove hardcoded definitions of `CMAKE_CXX_COMPILER` in `CMakeToolchain`. `#12556 <https://github.com/conan-io/conan/pull/12556>`_ . Docs `here <https://github.com/conan-io/docs/pull/2833>`__
- Fix: Remove the extra ``-s`` from default build_type compiler flags, added to modern ``AutotoolsToolchain``. `#12518 <https://github.com/conan-io/conan/pull/12518>`_
- Fix: Give priority to `-j` argument set by user in recipe over the default set by conan in `Autotools` build helper. `#12505 <https://github.com/conan-io/conan/pull/12505>`_
- Bugfix: Make `conan lock update` raise a suitable exception. `#12601 <https://github.com/conan-io/conan/pull/12601>`_
- Bugfix: Do not include build-context dependencies in Bazel BUILD file. `#12543 <https://github.com/conan-io/conan/pull/12543>`_
- Bugfix: Do not fallback to a compatible binary if a package is requested to be built from source for a given configuration. `#12536 <https://github.com/conan-io/conan/pull/12536>`_
- Bugfix: Fixing when ``package_folder=None`` for ``MSBuildDeps`` in editable mode. `#12529 <https://github.com/conan-io/conan/pull/12529>`_
- Bugfix: The `CMakeDeps` generator was not working properly when the consumer maps configurations of the dependencies using `CMAKE_MAP_IMPORTED_CONFIG_XXX`. `#12049 <https://github.com/conan-io/conan/pull/12049>`_ . Docs `here <https://github.com/conan-io/docs/pull/2826>`__
1.54.0 (07-Nov-2022)
--------------------
- Feature: Make `conanfile.build_folder` available in `generate()` for test_package. `#12443 <https://github.com/conan-io/conan/pull/12443>`_
- Feature: Add `libcxx` settings to meson `cpp_link_args`. `#12397 <https://github.com/conan-io/conan/pull/12397>`_
- Feature: Do not add architecture to system packages by default, only when cross-compiling. `#12349 <https://github.com/conan-io/conan/pull/12349>`_
- Feature: Added distro to `global.conf` Jinja rendering. `#12311 <https://github.com/conan-io/conan/pull/12311>`_ . Docs `here <https://github.com/conan-io/docs/pull/2798>`__
- Feature: New ``included_files()`` method in ``from conan.tools.scm import Git``. `#12295 <https://github.com/conan-io/conan/pull/12295>`_ . Docs `here <https://github.com/conan-io/docs/pull/2799>`__
- Feature: Add `stdcpp_library` to `conan.tools.build` to get name of C++ standard library to be linked. `#12269 <https://github.com/conan-io/conan/pull/12269>`_ . Docs `here <https://github.com/conan-io/docs/pull/2804>`__
- Feature: New `upload_policy='skip'` that not upload binaries (without raising an Exception, simply skip the binaries). `#12253 <https://github.com/conan-io/conan/pull/12253>`_ . Docs `here <https://github.com/conan-io/docs/pull/2802>`__
- Feature: The tool `fix_apple_shared_install_name` now also patches the `<package_id>/bin` executables found to point to the libraries at `../lib/xxx.dylib`. `#12249 <https://github.com/conan-io/conan/pull/12249>`_ . Docs `here <https://github.com/conan-io/docs/pull/2806>`__
- Feature: New ``conanfile.win_bash_run`` and ``tools.microsoft.bash:active`` config for better Windows bash management. `#12178 <https://github.com/conan-io/conan/pull/12178>`_ . Docs `here <https://github.com/conan-io/docs/pull/2803>`__
- Fix: Improve description for `verify_ssl` parameter in CLI. `#12359 <https://github.com/conan-io/conan/pull/12359>`_ . Docs `here <https://github.com/conan-io/docs/pull/2788>`__
- Fix: Overwrite deactivate script to unset only the last activated virtual environment. `#12353 <https://github.com/conan-io/conan/pull/12353>`_
- Fix: Use `settings_target` in XCRun instead of settings as default and provide argument `use_settings_target ` to select using the active context settings. `#12319 <https://github.com/conan-io/conan/pull/12319>`_ . Docs `here <https://github.com/conan-io/docs/pull/2797>`__
- Bugfix: Fix issue where find_program does not work for a tool requirement in the build context, when the dependency is also a regular requirement in the host context. `#12464 <https://github.com/conan-io/conan/pull/12464>`_
- Bugfix: Fix ``default_cppstd()`` import error `#12446 <https://github.com/conan-io/conan/pull/12446>`_
- Bugfix: When recipes have `shared` and `fPIC` as options, define `BUILD_SHARED_LIBS` and `CMAKE_POSITION_INDEPENDENT_CODE` as CACHE variables in the generated `cmake_toolchain.cmake` instead of regular variables, so that they are not masked by further calls to `options()`. `#12401 <https://github.com/conan-io/conan/pull/12401>`_
- Bugfix: Avoid Conan crash when ``tools.env.environment:auto_use=True`` is enabled and no ``generate()`` method. `#12386 <https://github.com/conan-io/conan/pull/12386>`_
- Bugfix: Fix MSBuildDeps xml component names. `#12365 <https://github.com/conan-io/conan/pull/12365>`_
- Bugfix: Fix new ``VirtualBuildEnv`` and ``VirtualRunEnv`` generators problems with dots in architecture or config. `#12294 <https://github.com/conan-io/conan/pull/12294>`_
- Bugfix: Fix Autotools install on Windows. The default argument passed is `DESTDIR=unix_path(self, self.package_folder)`. `#12193 <https://github.com/conan-io/conan/pull/12193>`_ . Docs `here <https://github.com/conan-io/docs/pull/2801>`__
1.53.0 (04-Oct-2022)
--------------------
- Feature: Implement a new ``[runenv]`` section in the Profile, to define the runtime environment. `#12230 <https://github.com/conan-io/conan/pull/12230>`_ . Docs `here <https://github.com/conan-io/docs/pull/2771>`__
- Feature: Add `compiler.version` 11.3 for GCC in settings. `#12215 <https://github.com/conan-io/conan/pull/12215>`_
- Feature: Make `conan.tools.apple.XCRun()` public. `#12172 <https://github.com/conan-io/conan/pull/12172>`_ . Docs `here <https://github.com/conan-io/docs/pull/2761>`__
- Feature: Add message to help users that have old CMake versions invoking CMake manually with the same information stored in the CMakePresets. `#12169 <https://github.com/conan-io/conan/pull/12169>`_
- Feature: Make `conan.tools.scmGit.run()` public. `#12165 <https://github.com/conan-io/conan/pull/12165>`_ . Docs `here <https://github.com/conan-io/docs/pull/2762>`__
- Feature: Add ``MSBuildToolchain.properties`` to define extra properties. `#12147 <https://github.com/conan-io/conan/pull/12147>`_ . Docs `here <https://github.com/conan-io/docs/pull/2772>`__
- Feature: Update requirements.txt to use distro package version <=1.7.0. `#12140 <https://github.com/conan-io/conan/pull/12140>`_
- Feature: Added method `rm_safe` to `settings` and `options`. `#12094 <https://github.com/conan-io/conan/pull/12094>`_ . Docs `here <https://github.com/conan-io/docs/pull/2764>`__
- Feature: Add missing configurations for `conan config list` and show the results ordered by key. `#12087 <https://github.com/conan-io/conan/pull/12087>`_ . Docs `here <https://github.com/conan-io/docs/pull/2763>`__
- Feature: Define ``source_folder`` in test_package when ``layout()`` is defined. `#12075 <https://github.com/conan-io/conan/pull/12075>`_
- Feature: Support for Xcode 14 and new iOS, watchOS, tvOS and macOS versions. `#12064 <https://github.com/conan-io/conan/pull/12064>`_
- Feature: Add ``cpp_info.libdir|bindir|includedir`` interface to access ``cpp_info.libdirs[0]`` in recipes `#12030 <https://github.com/conan-io/conan/pull/12030>`_ . Docs `here <https://github.com/conan-io/docs/pull/2773>`__
- Feature: Improve Clang support in Windows. `#11492 <https://github.com/conan-io/conan/pull/11492>`_
- Fix: Fix missing binary ``conan search dep/1.0 --table`` message when a binary is missing. `#12184 <https://github.com/conan-io/conan/pull/12184>`_
- Fix: Remove too noisy messages from environment files `#12168 <https://github.com/conan-io/conan/pull/12168>`_
- Fix: Add support for windows on ARM64 native platform. `#12145 <https://github.com/conan-io/conan/pull/12145>`_
- Fix: Avoid changing MSBuildDeps filenames with ``-`` while trying to avoid wrong XML formats. `#12141 <https://github.com/conan-io/conan/pull/12141>`_
- Fix: Fix XcodeDeps using full package reference in case of package with components. `#12097 <https://github.com/conan-io/conan/pull/12097>`_
- Fix: Fixed a bug when getting the values from the `self.conf` in the conanfile of a `test_package` with build_requirements declaring the `self.conf_info`. `#12095 <https://github.com/conan-io/conan/pull/12095>`_
- Fix: `CMakeToolchain.cache_variables` parse option value as expected. `#12086 <https://github.com/conan-io/conan/pull/12086>`_
- Fix: Fix XcodeDeps handle hyphen in component requirements. `#12084 <https://github.com/conan-io/conan/pull/12084>`_
- Fix: Add the ``test_requires`` to ``CMakeToolchain`` directories/folders to find cmake files inside them. `#12081 <https://github.com/conan-io/conan/pull/12081>`_
- Fix: Set gnu17 as clang 16 cppstd default. `#12067 <https://github.com/conan-io/conan/pull/12067>`_
- Bugfix: Implement correct ``libcxx`` support in ``MesonToolchain``. `#12156 <https://github.com/conan-io/conan/pull/12156>`_
- Bugfix: Add "endeavouros" to the list of distros with pacman. `#11971 <https://github.com/conan-io/conan/pull/11971>`_
1.52.0 (31-Aug-2022)
--------------------
- Feature: Added mechanism to create .pc files for build requirements. `#11979 <https://github.com/conan-io/conan/pull/11979>`_ . Docs `here <https://github.com/conan-io/docs/pull/2725>`__
- Feature: Add ``MSBuild().build(.., targets=["target1"])`` argument to new ``MSBuild``. `#11968 <https://github.com/conan-io/conan/pull/11968>`_ . Docs `here <https://github.com/conan-io/docs/pull/2724>`__
- Feature: Refactored `PkgConfigDeps` code. `#11955 <https://github.com/conan-io/conan/pull/11955>`_
- Feature: Removed warning messages from `PkgConfigDeps` if any duplicated `*.pc` file. `#11955 <https://github.com/conan-io/conan/pull/11955>`_
- Feature: Add ``is_msvc(..., build_context=False)`` argument. `#11949 <https://github.com/conan-io/conan/pull/11949>`_ . Docs `here <https://github.com/conan-io/docs/pull/2712>`__
- Feature: Support remotes.json in Conan 1.X. `#11936 <https://github.com/conan-io/conan/pull/11936>`_ . Docs `here <https://github.com/conan-io/docs/pull/2718>`__
- Feature: Add `BUILD_TESTING=OFF` to CMakeToolchain presets if `tools.build:skip_test`. `#11935 <https://github.com/conan-io/conan/pull/11935>`_ . Docs `here <https://github.com/conan-io/docs/pull/2713>`__
- Feature: Allow traits in `self.requires()` for 2.0 compatibility. `#11934 <https://github.com/conan-io/conan/pull/11934>`_ . Docs `here <https://github.com/conan-io/docs/pull/2714>`__
- Feature: Make the version of the Conan client available under `conan` and make it a `Version` object so it can be compared. `#11928 <https://github.com/conan-io/conan/pull/11928>`_ . Docs `here <https://github.com/conan-io/docs/pull/2719>`__
- Feature: Add ability to pass additional arguments to `conan.tools.scm.Git.clone()`. `#11921 <https://github.com/conan-io/conan/pull/11921>`_ . Docs `here <https://github.com/conan-io/docs/pull/2721>`__
- Feature: Promote `to_apple_arch` in the new `conan.tools.apple` module. `#11915 <https://github.com/conan-io/conan/pull/11915>`_ . Docs `here <https://github.com/conan-io/docs/pull/2722>`__
- Feature: Add `export_conandata_patches` tool. `#11911 <https://github.com/conan-io/conan/pull/11911>`_ . Docs `here <https://github.com/conan-io/docs/pull/2720>`__
- Feature: Fail sooner and with a meaningful error if the specified required version is not satisfied. `#11908 <https://github.com/conan-io/conan/pull/11908>`_
- Feature: Implement ``cmake_layout(..., build_folder="build)`` build folder argument. `#11889 <https://github.com/conan-io/conan/pull/11889>`_ . Docs `here <https://github.com/conan-io/docs/pull/2715>`__
- Feature: Add new members to ``ConanFileInterface`` for ``self.dependencies`` access. `#11868 <https://github.com/conan-io/conan/pull/11868>`_ . Docs `here <https://github.com/conan-io/docs/pull/2716>`__
- Feature: Defines the `PACKAGE_ROOT_<package>` variable in XcodeDeps generated files. `#11818 <https://github.com/conan-io/conan/pull/11818>`_ . Docs `here <https://github.com/conan-io/docs/pull/2717>`__
- Feature: Added clang 16 to settings. `#11780 <https://github.com/conan-io/conan/pull/11780>`_
- Feature: Allow the authorization process in conan_server to be customized, just like authentication. `#11776 <https://github.com/conan-io/conan/pull/11776>`_ . Docs `here <https://github.com/conan-io/docs/pull/2684>`__
- Fix: Change `conan.tools.files.get/download` default checksums to `None`, instead of empty string. `#11939 <https://github.com/conan-io/conan/pull/11939>`_
- Fix: When the `layout()` is declared in the recipe, the files such as `conainfo.txt`, `conanbuildinfo.txt` were written in the `test_package` folder, now there are written in the `generators_folder`. `#11820 <https://github.com/conan-io/conan/pull/11820>`_
- Bugfix: Fix conversion if `options` passed in `compatibility()` method. `#11991 <https://github.com/conan-io/conan/pull/11991>`_ . Docs `here <https://github.com/conan-io/docs/pull/2727>`__
- Bugfix: Prevent mutation of loaded data from conanfile.yml if accesses multiple times during the same run when calling `apply_conandata_patches()`. `#11860 <https://github.com/conan-io/conan/pull/11860>`_
- Bugfix: Do not skip __pycache__ folder if `CONAN_KEEP_PYTHON_FILES`. `#11828 <https://github.com/conan-io/conan/pull/11828>`_
- Bugfix: Added `+` and `-` symbols to be replaced by `_` in XML element names. `#11826 <https://github.com/conan-io/conan/pull/11826>`_
- Bugfix: The `tool.scm.Version` model has been ported from 2.X to keep the same behavior in Conan 1.X. `#11823 <https://github.com/conan-io/conan/pull/11823>`_
- Bugfix: Fixed `cpp_std` flags when using C++20. `#11819 <https://github.com/conan-io/conan/pull/11819>`_
- Bugfix: Use "android-<level>" format for the ANDROID_PLATFORM argument to be compatible with old NDK versions. `#11799 <https://github.com/conan-io/conan/pull/11799>`_
- Bugfix: Fix XcodeDeps component handling in transitive dependencies `#11772 <https://github.com/conan-io/conan/pull/11772>`_
1.51.3 (18-Aug-2022)
--------------------
- Fix: The tool `is_apple_os` can be imported from `conan.tools.apple` and receives an instance of `Conanfile`. `#11896 <https://github.com/conan-io/conan/pull/11896>`_ . Docs `here <https://github.com/conan-io/docs/pull/2703>`__
- Fix: Prevent `None` folders to be processed in the `cpp_info`. `#11893 <https://github.com/conan-io/conan/pull/11893>`_
- Fix: CMakeDeps now generates CMake variables as `XXX_INCLUDE_DIR` in the `XXXX-data.cmake` for the global cpp_info even if components are declared in the recipe. It is obtained by merging the components `cpp_info` into a global one. `#11874 <https://github.com/conan-io/conan/pull/11874>`_
- Bugfix: Fixed the `cmake_paths`generator to set the root of the packages to the `CMAKE_MODULE_PATH` and `CMAKE_PREFIX_PATH` `#11883 <https://github.com/conan-io/conan/pull/11883>`_
- Bugfix: The CMakeDeps generator was not managing correctly the IMPORTED LOCATION of the libraries for different `build_type`. `#11859 <https://github.com/conan-io/conan/pull/11859>`_
1.51.2 (11-Aug-2022)
--------------------
- Bugfix: The `tool.scm.Version` model has been ported from 2.X to keep the same behavior in Conan 1.X `#11830 <https://github.com/conan-io/conan/pull/11830>`_
1.51.1 (09-Aug-2022)
--------------------
- Feature: The `self.info.settings` and `self.info.options` now allow the `get_safe("foo")` as it is available in `self.settings` and `self.options`. `#11803 <https://github.com/conan-io/conan/pull/11803>`_
- Fix: Add `conan.errors` to hidden pyinstaller imports. `#11817 <https://github.com/conan-io/conan/pull/11817>`_
- Fix: Fix choco install invocation. `#11810 <https://github.com/conan-io/conan/pull/11810>`_
- Fix: Add `conan.tools.system.package_manager` to hidden pyinstaller imports. `#11806 <https://github.com/conan-io/conan/pull/11806>`_
- Fix: Add `conan.tools.system` as hidden-import to `pyinstaller.py`, so it is bundled with the installer. `#11805 <https://github.com/conan-io/conan/pull/11805>`_
- Bugfix: Update cmake_layout build and generators folders to honor os path format. `#11809 <https://github.com/conan-io/conan/pull/11809>`_
- Bugfix: `create -kb` wasn't setting up `conanfile.generators_folder` correctly. `#11804 <https://github.com/conan-io/conan/pull/11804>`_
- Bugfix: Legacy `cpp_info` for consumers was losing information in case of depending on a package with a layout. `#11790 <https://github.com/conan-io/conan/pull/11790>`_
- Bugfix: Refactored CMakeDep using always targets instead of lists. `#11788 <https://github.com/conan-io/conan/pull/11788>`_
- Bugfix: Fix toolchainFile key not found with CMake presets. `#11759 <https://github.com/conan-io/conan/pull/11759>`_
- Bugfix: The CMakeDeps generator failed for consumers with CMake projects doing an `add_subdirectory` with two different `find_package` calls to the same package, one in the main `CMakeLists.txt` and the other in the subdirectory. `#11756 <https://github.com/conan-io/conan/pull/11756>`_
- Bugfix: The CMakeDeps generator stopped to fill the `XXX_LIBRARIES` CMake variable, especially when using components. `#11756 <https://github.com/conan-io/conan/pull/11756>`_
1.51.0 (28-Jul-2022)
--------------------
- Feature: Update system package manager db right before install, instead before check `#11716 <https://github.com/conan-io/conan/pull/11716>`_
- Feature: Do the package manager update just in mode `install` and ignore if mode is `check`. `#11712 <https://github.com/conan-io/conan/pull/11712>`_ . Docs `here <https://github.com/conan-io/docs/pull/2663>`__
- Feature: The `AutotoolsToolchain` attributes `.cxxflags`, `.cflags`, `.ldflags` and `.defines` can be read at any moment, now is not needed to call `.environment()` to get them calculated. In the other hand, if you want to add additional flags the following attributes have to be used: `.extra_cxxflags`, `.extra_cflags`, `.extra_ldflags` and `.extra_defines` `#11678 <https://github.com/conan-io/conan/pull/11678>`_ . Docs `here <https://github.com/conan-io/docs/pull/2660>`__
- Feature: Changed `CMakeDeps` generator so the global target made for a package with components is a target linked with the targets of the components, instead of a target made from merging `cpp_info` objects from the components. `#11673 <https://github.com/conan-io/conan/pull/11673>`_ . Docs `here <https://github.com/conan-io/docs/pull/2664>`__
- Feature: Support for components in MSBuildDeps. `#11669 <https://github.com/conan-io/conan/pull/11669>`_ . Docs `here <https://github.com/conan-io/docs/pull/2661>`__
- Feature: The `CMakePreset.json` now contains `toolset` and `architecture` items when using `Ninja` generator and `msvc` compiler so the IDE (Visual Studio) can set the correct compiler (vcvars) automatically. `#11666 <https://github.com/conan-io/conan/pull/11666>`_
- Feature: Introduced a new conf `tools.cmake.cmaketoolchain.presets:max_schema_version` to generate `CMakePresets.json` and `CMakeUserPresets.json` compatible with the specified json schema version. The minimum value supported is `>=2`. `#11655 <https://github.com/conan-io/conan/pull/11655>`_ . Docs `here <https://github.com/conan-io/docs/pull/2666>`__
- Feature: Added `objc_args`/`objc_link_args`/`objcpp_args`/`objcpp_link_args` to MesonToolchain for Objective-C/C++ language. `#11632 <https://github.com/conan-io/conan/pull/11632>`_ . Docs `here <https://github.com/conan-io/docs/pull/2652>`__
- Feature: Adding default directories to MesonToolchain. `#11618 <https://github.com/conan-io/conan/pull/11618>`_ . Docs `here <https://github.com/conan-io/docs/pull/2652>`__
- Feature: Provide Path accessors in Conanfile. `#11585 <https://github.com/conan-io/conan/pull/11585>`_
- Feature: Introduced a `validate_build()` method in the recipes to validate if the package can be built according to `self.settings` and `self.options` instead of `self.info.settings` and `self.info.options` that it is used to validate the `binary`. `#11580 <https://github.com/conan-io/conan/pull/11580>`_ . Docs `here <https://github.com/conan-io/docs/pull/2667>`__
- Feature: Add ability to download files in the local filesystem using `file://` URIs. `#11569 <https://github.com/conan-io/conan/pull/11569>`_ . Docs `here <https://github.com/conan-io/docs/pull/2635>`__
- Feature: Added `MesonDeps` as a new generator to create an extra file with all the GNU flags from all the dependencies. `Meson` build-helper will add that one (if exists) to complement the created one by `MesonToolchain`. `#11557 <https://github.com/conan-io/conan/pull/11557>`_ . Docs `here <https://github.com/conan-io/docs/pull/2654>`__
- Feature: Added a new ``self.folders.subproject`` for ``layout()`` to be able to define layouts that goes up to the parent or siblings folders, together with the ``self.folders.root = ".."``. `#11556 <https://github.com/conan-io/conan/pull/11556>`_ . Docs `here <https://github.com/conan-io/docs/pull/2662>`__
- Feature: Adding new ``msys2_ucrt64``, ``msys2_mingw64``, ``msys2_clang64`` subsystems in ``os.subsystem`` for Windows. `#11530 <https://github.com/conan-io/conan/pull/11530>`_
- Fix: Add `conan.tools.scm` as hidden-import to _pyinstaller.py_, so it is bundled with the installer. `#11677 <https://github.com/conan-io/conan/pull/11677>`_
- Fix: The `cmake_build_modules` property can only be declared in the `self.cpp_info`, not in components, where will be ignored. `#11673 <https://github.com/conan-io/conan/pull/11673>`_ . Docs `here <https://github.com/conan-io/docs/pull/2664>`__
- Fix: Fix `Dnf` and `Yum` to accept 100 as a return code. `#11668 <https://github.com/conan-io/conan/pull/11668>`_
- Fix: Get the cpu count for cgroup2 from `/sys/fs/cgroup/cpu.max`. `#11667 <https://github.com/conan-io/conan/pull/11667>`_ . Docs `here <https://github.com/conan-io/docs/pull/2658>`__
- Fix: Improve opensuse detection in `tool.system.package_manager`. `#11660 <https://github.com/conan-io/conan/pull/11660>`_
- Fix: Add raspbian to default `tools.system.package_manager` package manager mapping. `#11654 <https://github.com/conan-io/conan/pull/11654>`_ . Docs `here <https://github.com/conan-io/docs/pull/2663>`__
- Fix: Allow templates for :command:`conan new` to contain `Readme.md` and `LICENSE.txt` files. `#11645 <https://github.com/conan-io/conan/pull/11645>`_
- Fix: Remove ``conan_message()`` in ``CMakeDeps``. `#11625 <https://github.com/conan-io/conan/pull/11625>`_
- Fix: In `conans.tools.collect_libs` and `conan.tools.files.collect_libs`, avoids to list other flavors (version, soversion) of the same `dylib` on macOS, so that behavior is consistent on Linux & macOS. `#11527 <https://github.com/conan-io/conan/pull/11527>`_ . Docs `here <https://github.com/conan-io/docs/pull/2610>`__
- Bugfix: The `AutotoolsToolchain` now clears `None` values from the attributes `.cxxflags`, `.cflags`, `.ldflags` and `.defines`. `#11678 <https://github.com/conan-io/conan/pull/11678>`_ . Docs `here <https://github.com/conan-io/docs/pull/2660>`__
- Bugfix: The `CMakePresets.json` file contained invalid paths (mixing `/` and `\`) for Windows that caused issues when using `Visual Studio`. `#11652 <https://github.com/conan-io/conan/pull/11652>`_
- BugFix: Avoid ``LocalDebuggerEnv`` overflows in ``MSBuildDeps`` due to addition of PATH env-var. `#11631 <https://github.com/conan-io/conan/pull/11631>`_
- Bugfix: Fix frameworkdirs not taken into account in XcodeDeps generator. `#11617 <https://github.com/conan-io/conan/pull/11617>`_
- Bugfix: `CMakeToolchain` avoid setting `CMAKE_INSTALL_XXX` variables if the values are not defined. `#11614 <https://github.com/conan-io/conan/pull/11614>`_
- Bugfix: Use correct build target in `CMake.test()` for the Ninja Multi-Config generator. `#11594 <https://github.com/conan-io/conan/pull/11594>`_
- Bugfix: The CMakeToolchain was crashing when building for `Android os` a package that is removing the `compiler.libcxx` (C library). `#11586 <https://github.com/conan-io/conan/pull/11586>`_
1.50.2 (11-Aug-2022)
--------------------
- Bugfix: The `tool.scm.Version` model has been ported from 2.X to keep the same behavior in Conan 1.X `#11830 <https://github.com/conan-io/conan/pull/11830>`_
1.50.1 (28-Jul-2022)
--------------------
- Bugfix: Port #11614. CMakeToolchain avoid setting CMAKE_INSTALL_XXX variables if the values are not defined. `#11719 <https://github.com/conan-io/conan/pull/11719>`_
1.50.0 (29-Jun-2022)
--------------------
- Feature: ``VirtualBuildEnv`` and ``VirtualRunEnv`` always generate files, even if empty. `#11536 <https://github.com/conan-io/conan/pull/11536>`_
- Feature: Improve dependency-cycle error to show the cycle. `#11519 <https://github.com/conan-io/conan/pull/11519>`_
- Feature: Aggregate transitive components information in the same package for XcodeDeps. `#11507 <https://github.com/conan-io/conan/pull/11507>`_ . Docs `here <https://github.com/conan-io/docs/pull/2619>`__
- Feature: map `armv8` arch to `ARM64` MSBuild platform in MSBuildDeps generator. `#11505 <https://github.com/conan-io/conan/pull/11505>`_
- Feature: Added `CMakeToolchain(self).cache_variables` to declare `cache_variables` in the `configurePresets` in the `CMakePresets.json` file. Conan reads them to call `cmake` with `-D` when using the `CMake(self)` build helper. These cache variables doesn't support multi-configuration generators. `#11503 <https://github.com/conan-io/conan/pull/11503>`_ . Docs `here <https://github.com/conan-io/docs/pull/2611>`__
- Feature: Simplify XcodeDeps generator. `#11491 <https://github.com/conan-io/conan/pull/11491>`_ . Docs `here <https://github.com/conan-io/docs/pull/2619>`__
- Feature: Created `self.info.clear()` as an alias of `self.info.header_only()` that will disappear in Conan 2.0. `#11478 <https://github.com/conan-io/conan/pull/11478>`_ . Docs `here <https://github.com/conan-io/docs/pull/2612>`__
- Feature: Allow options having ["ANY"] as a list like Conan 2.X. `#11449 <https://github.com/conan-io/conan/pull/11449>`_ . Docs `here <https://github.com/conan-io/docs/pull/2615>`__
- Feature: Ported cppstd related tools from 2.X branch. `#11446 <https://github.com/conan-io/conan/pull/11446>`_ . Docs `here <https://github.com/conan-io/docs/pull/2616>`__
- Feature: Added tool `rm` at `conan.tools.files` to remove files by pattern in a folder. `#11443 <https://github.com/conan-io/conan/pull/11443>`_ . Docs `here <https://github.com/conan-io/docs/pull/2617>`__
- Feature: Add support for `test_requires` in XcodeDeps. `#11415 <https://github.com/conan-io/conan/pull/11415>`_
- Feature: Add relative path support to Git SCM tool. `#11407 <https://github.com/conan-io/conan/pull/11407>`_
- Feature: Changed `cmake_layout` with a more natural and intuitive `folders.build` and `folders.generators`. Also changed the `CMakePresets.json` preset names. `#11391 <https://github.com/conan-io/conan/pull/11391>`_ . Docs `here <https://github.com/conan-io/docs/pull/2618>`__
- Fix: When using the `layout()` (as opt-in of some Conan 2.0 features) the default `includedirs` of the declared components is now `["include"]` the default of the `libdirs` is `["lib"]` and the default for the `bindirs` is `["bin"]`. Previously, the components always had empty fields. Also the default of `cpp_info.resdirs` is now empty. `#11471 <https://github.com/conan-io/conan/pull/11471>`_ . Docs `here <https://github.com/conan-io/docs/pull/2613>`__
- Fix: The `CMakeToolchain` will fail if `settings.build_type` is specified in the `'tools.cmake.cmake_layout:build_folder'` conf because the build_type is automatically managed by the CMakeToolchain and CMakeDeps generators by default. `#11470 <https://github.com/conan-io/conan/pull/11470>`_ . Docs `here <https://github.com/conan-io/docs/pull/2614>`__
- Fix: When using the new layout() feature of Conan 2.0, change the default `cpp_info.frameworkdirs = ["Frameworks"]` to `cpp_info.frameworkdirs = []`, because it is more common to not have packaged Apple frameworks and declaring a missing folder can cause issues with the new toolchains. `#11455 <https://github.com/conan-io/conan/pull/11455>`_ . Docs `here <https://github.com/conan-io/docs/pull/2613>`__
- Fix: The "include" paths list in a `CMakeUserPresets.json`, when performing a new :command:`conan install`, are now checked, and in case some of them is a missing path (deleted directory), it is cleaned from the list. `#11414 <https://github.com/conan-io/conan/pull/11414>`_
- Fix: Avoid issues in ``VirtualRunEnv`` for undefined variables when ``set -e`` is defined. `#11361 <https://github.com/conan-io/conan/pull/11361>`_
- Bugfix: Fix logic in the generation of `CMakeUserPresets.json` - Conan will only generate the file if it did not previously exist, and will modify an existing one if the file was previously generated by conan. Existing `CMakeUserPresets.json` will be left untouched otherwise. `#11452 <https://github.com/conan-io/conan/pull/11452>`_ . Docs `here <https://github.com/conan-io/docs/pull/2591>`__
- Bugfix: Fix crash in pylint plugin with pylint >= 2.14.0. `#11445 <https://github.com/conan-io/conan/pull/11445>`_
- Bugfix: Allow using ``PkgConfigDeps`` for ``editable`` packages, not raising an error cause ``package_folder`` is None. `#11440 <https://github.com/conan-io/conan/pull/11440>`_
- Bugfix: The `CMakePresets.json` file, when performing several :command:`conan install` commands, ended-up with several entries of duplicated "buildPresets" if used with a `multi-configuration` cmake generator. `#11414 <https://github.com/conan-io/conan/pull/11414>`_
- Bugfix: `PkgConfigDeps` creates `*.pc` files for `test_requires`. `#11390 <https://github.com/conan-io/conan/pull/11390>`_
1.49.0 (02-Jun-2022)
--------------------
- Feature: Add `install_substitutes` to system package manager tools to be able to install sets of packages that are equivalent with different names for different distros. `#11367 <https://github.com/conan-io/conan/pull/11367>`_ . Docs `here <https://github.com/conan-io/docs/pull/2563>`__
- Feature: Do not automatically fix the shared libraries to add the rpath in Apple and add an external tool `tools.apple.fix_apple_shared_install_name` to do it optionally in recipes for packages that do not set the correct `LC_ID_DYLIB`. `#11365 <https://github.com/conan-io/conan/pull/11365>`_ . Docs `here <https://github.com/conan-io/docs/pull/2562>`__
- Feature: Allow pyyaml 6.0 dependency. `#11363 <https://github.com/conan-io/conan/pull/11363>`_
- Feature: Removed Python 2.7 support, as a result of an unsolvable security vulnerability in pyjwt. `#11357 <https://github.com/conan-io/conan/pull/11357>`_ . Docs `here <https://github.com/conan-io/docs/pull/2552>`__
- Feature: The ``conanfile.txt`` file now accepts a ``[layout]`` that can be filled with 3 predefined layouts: ``cmake_layout``, ``vs_layout`` and ``bazel_layout``. `#11348 <https://github.com/conan-io/conan/pull/11348>`_ . Docs `here <https://github.com/conan-io/docs/pull/2554>`__
- Feature: Remove the parameter ``copy_symlink_folders`` of the ``conan.tool.files.copy`` function and now, any symlink file pointing to a folder will be treated as a regular file. `#11330 <https://github.com/conan-io/conan/pull/11330>`_ . Docs `here <https://github.com/conan-io/docs/pull/2558>`__
- Feature: Tools `can_run` validates if it is possible to run a and application build for a non-native architecture. `#11321 <https://github.com/conan-io/conan/pull/11321>`_ . Docs `here <https://github.com/conan-io/docs/pull/2547>`__
- Feature: Add `CMAKE_SYSROOT` support for `CMakeToolchain`. `#11317 <https://github.com/conan-io/conan/pull/11317>`_ . Docs `here <https://github.com/conan-io/docs/pull/2564>`__
- Feature: Add `--sysroot` support for `AutotoolsToolchain` and remove support for `cpp_info.sysroot` in `AutotoolsDeps`. `#11317 <https://github.com/conan-io/conan/pull/11317>`_ . Docs `here <https://github.com/conan-io/docs/pull/2564>`__
- Feature: Add `tools.build:sysroot` conf. `#11317 <https://github.com/conan-io/conan/pull/11317>`_ . Docs `here <https://github.com/conan-io/docs/pull/2564>`__
- Feature: Improved `cmake_layout` and `CMakePresets.json` feature so you can manage different configurations using the same `CMakeUserPresets.json` not only for multi-config (Debug/Release) but for any set of settings specified in a new conf `tools.cmake.cmake_layout:build_folder_vars` that accepts a list of settings to use. e.g `tools.cmake.cmake_layout:build_folder_vars=["settings.compiler", "options.shared"]` `#11308 <https://github.com/conan-io/conan/pull/11308>`_ . Docs `here <https://github.com/conan-io/docs/pull/2561>`__
- Feature: Adds GCC 9.4 in the list of compilers supported in the settings file. `#11296 <https://github.com/conan-io/conan/pull/11296>`_
- Feature: Raise an error when running CMake if CMAKE_BUILD_TYPE is not defined and the generator is not multi-config. `#11294 <https://github.com/conan-io/conan/pull/11294>`_ . Docs `here <https://github.com/conan-io/docs/pull/2557>`__
- Feature: Implement a ``check_min_vs()`` checker that will work for both ``Visual Studio`` and ``msvc`` to allow migration from 1.X to 2.0 `#11292 <https://github.com/conan-io/conan/pull/11292>`_ . Docs `here <https://github.com/conan-io/docs/pull/2555>`__
- Feature: More flexibility in Autotools tools to override arguments and avoid all default arguments for `make`, `autoreconf` and `configure`. `#11284 <https://github.com/conan-io/conan/pull/11284>`_ . Docs `here <https://github.com/conan-io/docs/pull/2562>`__
- Feature: Add components support in XcodeDeps. `#11233 <https://github.com/conan-io/conan/pull/11233>`_ . Docs `here <https://github.com/conan-io/docs/pull/2560>`__
- Feature: Define new ``tools.cmake.cmaketoolchain:toolset_arch`` to define VS toolset x64 or x86 architecture `#11147 <https://github.com/conan-io/conan/pull/11147>`_ . Docs `here <https://github.com/conan-io/docs/pull/2556>`__
- Feature: Add new `xtensalx7` option for the `arch_target` and `arch` settings, allowing targeting Espressif's ESP32-S2 and ESP32-S3 microcontrollers. `#11143 <https://github.com/conan-io/conan/pull/11143>`_
- Fix: Use `interface_library` with `shared_library` on Windows in BazelDeps. `#11355 <https://github.com/conan-io/conan/pull/11355>`_
- Fix: BazelDeps generator cannot find a lib when it's named with the basename of the lib file. `#11343 <https://github.com/conan-io/conan/pull/11343>`_
- Fix: Avoid empty paths in run environments PATH, LD_LIBRARY_PATH, DYLD_LIBRARY_PATH env-vars. `#11298 <https://github.com/conan-io/conan/pull/11298>`_
- Fix: Use `DESTDIR` argument in `make install` step instead of using the `--prefix` in configure. `#11284 <https://github.com/conan-io/conan/pull/11284>`_ . Docs `here <https://github.com/conan-io/docs/pull/2562>`__
- Fix: Add `-DCMAKE_BUILD_TYPE` to markdown generator instructions for CMake single config. `#11220 <https://github.com/conan-io/conan/pull/11220>`_
- Fix: Fixing ``--require-override`` over conditional ``requirements()`` method. `#11209 <https://github.com/conan-io/conan/pull/11209>`_
- Fix: Placing quote marks around echo statement in `save_sh` function. `#11123 <https://github.com/conan-io/conan/pull/11123>`_
- Bugfix: Force ``conan_server`` to use ``pyjwt>=2.4.0`` to solve a known vulnerability. `#11350 <https://github.com/conan-io/conan/pull/11350>`_
- Bugfix: Fix case where CMakeDeps generator may use the wrong dependency name for transitive dependencies. `#11307 <https://github.com/conan-io/conan/pull/11307>`_
- Bugfix: Link ``cpp_info.objects`` first in ``CMakeDeps`` generator, as they can have dependencies to ``system_libs`` that need to be after them in some platforms to correctly link. `#11272 <https://github.com/conan-io/conan/pull/11272>`_
- Bugfix: Update cmake_layout generators folder to honor os path format. `#11252 <https://github.com/conan-io/conan/pull/11252>`_
- Bugfix: Catching `KeyError` if `USERNAME` is not set as env variable on Windows. `#11223 <https://github.com/conan-io/conan/pull/11223>`_
- Bugfix: Add Rocky Linux to with_yum. `#11212 <https://github.com/conan-io/conan/pull/11212>`_
1.48.2 (02-Jun-2022)
--------------------
- Feature: Port https://github.com/conan-io/conan/pull/11365 and https://github.com/conan-io/conan/pull/11284 to 1.48.2 `#11381 <https://github.com/conan-io/conan/pull/11381>`_
1.48.1 (18-May-2022)
--------------------
- Fix: Add `-DCMAKE_BUILD_TYPE` to markdown generator instructions for CMake single config. `#11234 <https://github.com/conan-io/conan/pull/11234>`_
- Bugfix: Fix case where CMakeDeps assumes a module dependency when transitive dependencies do not define `cmake_find_mode` and fallback to a config one. `#11240 <https://github.com/conan-io/conan/pull/11240>`_
- Bugfix: Fixed broken ``apple-clang`` 13.0 compatibility. `#11231 <https://github.com/conan-io/conan/pull/11231>`_
1.48.0 (03-May-2022)
--------------------
- Feature: Do not recommend to set `PKG_CONFIG_PATH` in markdown generator any more as it is already set by the AutotoolsToolchain. `#11120 <https://github.com/conan-io/conan/pull/11120>`_
- Feature: The `cmake_layout` declares `folders.generators = "build/generators"` that is common for different configurations, enabling `CMakePresets.json` to support different `configurePresets` and `buildPresets` for single-config and multi-config generators. `#11117 <https://github.com/conan-io/conan/pull/11117>`_ . Docs `here <https://github.com/conan-io/docs/pull/2512>`__
- Feature: The `CMakeToolchain` generator will create (if missing) a `CMakeUserPresets.json` if the `CMakeLists.txt` file is found in the root folder of the project. That file will include automatically the `CMakePresets.json` file contained at `build/generators` folder to allow CMake and IDEs to locate automatically the presets generated by Conan. `#11117 <https://github.com/conan-io/conan/pull/11117>`_ . Docs `here <https://github.com/conan-io/docs/pull/2512>`__
- Feature: The `CMAKE_BUILD_TYPE` is not adjusted in the `conan_toolchain.cmake` anymore, the configuration is moved to the `CMakePresets.json` preparing Conan to support multiple "single-config" configurations in one `CMakePresets.json` file `#11112 <https://github.com/conan-io/conan/pull/11112>`_ . Docs `here <https://github.com/conan-io/docs/pull/2512>`__
- Feature: The `CMakePresets.json` (file generated when specified the `CMakeToolchain` generator) is appended with a new `buildPresets` after a :command:`conan install` with a different `build_type` when using a multiconfiguration generator like `Visual Studio`. `#11103 <https://github.com/conan-io/conan/pull/11103>`_ . Docs `here <https://github.com/conan-io/docs/pull/2512>`__
- Feature: Removed `PlatformToolset` and added `conantoolchain.props` from `*.vcxproj` file. `#11101 <https://github.com/conan-io/conan/pull/11101>`_
- Feature: Append the folder where the Conan generators were installed to `PKG_CONFIG_PATH` in AutotoolsToolchain. `#11063 <https://github.com/conan-io/conan/pull/11063>`_ . Docs `here <https://github.com/conan-io/docs/pull/2509>`__
- Feature: Adding new ``tools.env.virtualenv:powershell`` conf to opt-in to generate and use powershell scripts instead of .bat ones. `#11061 <https://github.com/conan-io/conan/pull/11061>`_ . Docs `here <https://github.com/conan-io/docs/pull/2517>`__
- Feature: Added new configuration fields: `tools.apple:enable_bitcode`, `tools.apple:enable_arc` and `tools.apple:enable_visibility`. `#10985 <https://github.com/conan-io/conan/pull/10985>`_ . Docs `here <https://github.com/conan-io/docs/pull/2506>`__
- Feature: Added new mechanism to inject common Xcode flags in `CMakeToolchain` generator if enabled Bitcode, ARC, or Visibility configurations. `#10985 <https://github.com/conan-io/conan/pull/10985>`_ . Docs `here <https://github.com/conan-io/docs/pull/2506>`__
- Feature: New templates for autotools exe and lib. `#10978 <https://github.com/conan-io/conan/pull/10978>`_ . Docs `here <https://github.com/conan-io/docs/pull/2511>`__
- Feature: Change `build_script_folder` argument from the configure to the `Autotools` build helper constructor. `#10978 <https://github.com/conan-io/conan/pull/10978>`_ . Docs `here <https://github.com/conan-io/docs/pull/2511>`__
- Feature: Replaced `add_definitions` by `add_compile_definitions` in `conan.tools.cmake.*` package. `#10974 <https://github.com/conan-io/conan/pull/10974>`_
- Feature: Added `cxxflags`, `cflags`, and `ldflags` attributes to `MSBuildToolchain`. `#10972 <https://github.com/conan-io/conan/pull/10972>`_ . Docs `here <https://github.com/conan-io/docs/pull/2507>`__
- Feature: Added mechanism to inject extra flags to `MSBuildToolchain` via `[conf]`. `#10972 <https://github.com/conan-io/conan/pull/10972>`_ . Docs `here <https://github.com/conan-io/docs/pull/2507>`__
- Fix: Allow ``Version(self.settings.compiler.version)`` to work for ``new`` tools.scm.Version``. `#11119 <https://github.com/conan-io/conan/pull/11119>`_
- Fix: Make shared libraries build with Autotools relocatable in Macos by patching the install name (LC_ID_DYLIB) and setting to `@rpath/libname.dylib`. `#11114 <https://github.com/conan-io/conan/pull/11114>`_ . Docs `here <https://github.com/conan-io/docs/pull/2518>`__
- Fix: using CMAKE_PROJECT_INCLUDE instead of presets to define variables that don't work in toolchains `#11098 <https://github.com/conan-io/conan/pull/11098>`_
- Fix: Fix quote escaping for defines in pkg_config generator. `#11073 <https://github.com/conan-io/conan/pull/11073>`_
- Fix: Fix quote escaping for defines in PkgConfigDeps generator. `#11073 <https://github.com/conan-io/conan/pull/11073>`_
- Fix: Quote `add_compile_definitions` correctly in CMakeToolchain. `#11057 <https://github.com/conan-io/conan/pull/11057>`_
- Fix: Escape quotes in definitions in CMakeToochain. `#11057 <https://github.com/conan-io/conan/pull/11057>`_
- Fix: Renamed `self.base_source_folder` to `self.export_source_folder`. That variable was introduced to reference the folder where the `export_sources` are. Currently, they are copied to the `source` folder but might be changed in the future to avoid copying them, so `self.export_source_folder` will always point to the folder containing the `exports_sources`. `#11055 <https://github.com/conan-io/conan/pull/11055>`_ . Docs `here <https://github.com/conan-io/docs/pull/2514>`__
- Fix: Ensure correct order for libraries in AutotoolsDeps. `#11054 <https://github.com/conan-io/conan/pull/11054>`_
- Fix: Escape quotes in XCodeDeps generator. `#11039 <https://github.com/conan-io/conan/pull/11039>`_
- Fix: The `CMakeDeps` generator now set `INTERFACE_LINK_DIRECTORIES` necessary when using auto link `'#pragma comment(lib, "foo")' ` when the required library sets the property `cmake_set_interface_link_directories`. `#10984 <https://github.com/conan-io/conan/pull/10984>`_ . Docs `here <https://github.com/conan-io/docs/pull/2510>`__
- Fix: Renamed variables from the `CMakeToolchain` context in blocks to be all lowercase. e.g: `CMAKE_OSX_ARCHITECTURES` to `cmake_osx_architectures`. `#10981 <https://github.com/conan-io/conan/pull/10981>`_
- Bugfix: Avoid ``BazelDeps`` to find a library when a directory with the same name exists. `#11090 <https://github.com/conan-io/conan/pull/11090>`_
- Bugfix: The `binaryDir` field at `CMakePresets.json` is not set if the `conanfile.build_folder` is not available, avoiding a `null` value breaking the specification. `#11088 <https://github.com/conan-io/conan/pull/11088>`_
- Bugfix: Fixed unziping while using `tools.get` or `tools.unzip` with the `strip_root=True` in a `tgz` file with hardlinks inside. `#11074 <https://github.com/conan-io/conan/pull/11074>`_
- Bugfix: The method `get_commit` from the new `conan.tools.scm.Git` was capturing a wrong commit, for example, ignoring commits in subfolders when checking the parent folder. `#11015 <https://github.com/conan-io/conan/pull/11015>`_
- Bugfix: The `json` generator was showing "None" in the `version` field of the dependencies when the `layout()` method was used. `#10960 <https://github.com/conan-io/conan/pull/10960>`_
- Bugfix: The config `default_python_requires_id_mode=unrelated_mode` raised an error, it has been fixed. `#10959 <https://github.com/conan-io/conan/pull/10959>`_
- Bugfix: The CMakeToolchain now declares `CACHE BOOL` variables when a bool is stored in a variable: `toolchain.variables["FOO"] = True`. `#10941 <https://github.com/conan-io/conan/pull/10941>`_
1.47.0 (31-Mar-2022)
--------------------
- Feature: Renamed `tools.build:cppflags` to `tools.build:defines` and removed `tools.build:ldflags` (now it's the union between `tools.build:sharedlinkflags` and `tools.build:exelinkflags` in mostly all the cases). `#10928 <https://github.com/conan-io/conan/pull/10928>`_ . Docs `here <https://github.com/conan-io/docs/pull/2484>`__
- Feature: Adding cross-compilation for Android in MesonToolchain. `#10908 <https://github.com/conan-io/conan/pull/10908>`_ . Docs `here <https://github.com/conan-io/docs/pull/2480>`__
- Feature: Add extra flags via [conf] into XcodeToolchain. `#10906 <https://github.com/conan-io/conan/pull/10906>`_ . Docs `here <https://github.com/conan-io/docs/pull/2471>`__
- Feature: Preliminar support for CMakePresets.json. `#10903 <https://github.com/conan-io/conan/pull/10903>`_ . Docs `here <https://github.com/conan-io/docs/pull/2476>`__
- Feature: Added `wrap_mode=nofallback` project-option into `MesonToolchain` as default value. `#10884 <https://github.com/conan-io/conan/pull/10884>`_
- Feature: Added basic `rmdir` tool at `conan.tools.files`. `#10874 <https://github.com/conan-io/conan/pull/10874>`_ . Docs `here <https://github.com/conan-io/docs/pull/2470>`__
- Feature: Backport of 2.0 compatibility() recipe method. `#10868 <https://github.com/conan-io/conan/pull/10868>`_
- Feature: Add detection in meson toolchain for cross conditions and requirement of needs_exe_wrapper. Users may specify the exe wrapper in their meson.build now. `#10846 <https://github.com/conan-io/conan/pull/10846>`_
- Feature: Allow `tested_reference_str` to be `None`. `#10834 <https://github.com/conan-io/conan/pull/10834>`_
- Feature: New templates for the :command:`conan new` command with bazel examples: `bazel_exe` and `bazel_lib`. `#10812 <https://github.com/conan-io/conan/pull/10812>`_ . Docs `here <https://github.com/conan-io/docs/pull/2474>`__
- Feature: Add some support for ``msvc`` compiler older versions. `#10808 <https://github.com/conan-io/conan/pull/10808>`_
- Feature: Added mechanism to inject extra flags via `[conf]` into several toolchains like `AutotoolsToolchain`, `MesonToolchain` and `CMakeToolchain`. `#10800 <https://github.com/conan-io/conan/pull/10800>`_ . Docs `here <https://github.com/conan-io/docs/pull/2484>`__
- Feature: Support selecting the target to build for XcodeBuild helper. `#10799 <https://github.com/conan-io/conan/pull/10799>`_ . Docs `here <https://github.com/conan-io/docs/pull/2473>`__
- Feature: Support for Xcode 13.3, iOS 15.4, watchOS 8.5 and tvOS 15.4. `#10797 <https://github.com/conan-io/conan/pull/10797>`_
- Feature: New modern "conan new --template=msbuild_lib|exe" for modern MSBuild VS integration. `#10760 <https://github.com/conan-io/conan/pull/10760>`_ . Docs `here <https://github.com/conan-io/docs/pull/2483>`__
- Feature: Added a checker for Conan 2.x deprecated `from conans` imports in `pylint_plugin`. `#10746 <https://github.com/conan-io/conan/pull/10746>`_ . Docs `here <https://github.com/conan-io/docs/pull/2475>`__
- Feature: New `conan.tool.microsoft.unix_path` to convert paths to any subsystem when using `conanfile.win_bash`. `#10743 <https://github.com/conan-io/conan/pull/10743>`_ . Docs `here <https://github.com/conan-io/docs/pull/2479>`__
- Feature: New ``from conan.errors import XXX`` new namespace to be ready for 2.0. `#10734 <https://github.com/conan-io/conan/pull/10734>`_ . Docs `here <https://github.com/conan-io/docs/pull/2482>`__
- Feature: Allow specifying `default_options = {"pkg/*:option": "value"}` or `default_options = {"pkg*:option": "value"}` instead of `default_options = {"pkg:option": "value"}` to make compatible recipes with 2.0. `#10731 <https://github.com/conan-io/conan/pull/10731>`_ . Docs `here <https://github.com/conan-io/docs/pull/2468>`__
- Feature: Add Clang 15 to default settings. `#10558 <https://github.com/conan-io/conan/pull/10558>`_
- Feature: When the layout is declared, the cwd() in the source() method will follow the declared `self.folders.source` but the `exports_sources` will still be copied to the base source folder. `#10091 <https://github.com/conan-io/conan/pull/10091>`_ . Docs `here <https://github.com/conan-io/docs/pull/2486>`__
- Fix: Add support for ``clang`` to ``msvc_runtime_flag()``. It requires defining ``compiler.runtime = static/dynamic`` definition, same as modern ``msvc`` compiler setting. `#10898 <https://github.com/conan-io/conan/pull/10898>`_ . Docs `here <https://github.com/conan-io/docs/pull/2485>`__
- Fix: Generate the correct `--target` triple when building for Apple catalyst. `#10880 <https://github.com/conan-io/conan/pull/10880>`_
- Fix: The "conan.tools.files.patch" will (by default) look for the patch files in the `self.base_source_folder` instead of `self.source_folder` but will apply them with `self.source_folder` as the base folder. `#10875 <https://github.com/conan-io/conan/pull/10875>`_ . Docs `here <https://github.com/conan-io/docs/pull/2477>`__
- Fix: Setting `CMAKE_SYSTEM_PROCESSOR` for Apple cross-compiling including M1. `#10856 <https://github.com/conan-io/conan/pull/10856>`_ . Docs `here <https://github.com/conan-io/docs/pull/2472>`__
- Fix: Do not overwrite values for `CMAKE_SYSTEM_NAME`, `CMAKE_SYSTEM_VERSION` and `CMAKE_SYSTEM_PROCESSOR` set from the [conf] or the user_toolchain. `#10856 <https://github.com/conan-io/conan/pull/10856>`_ . Docs `here <https://github.com/conan-io/docs/pull/2472>`__
- Fix: Fix architecture translation from Conan syntax to build system in CMakeToolchain. `#10856 <https://github.com/conan-io/conan/pull/10856>`_ . Docs `here <https://github.com/conan-io/docs/pull/2472>`__
- Fix: Several improvements of the Bazel integration (`Bazel`, `BazelToolchain`, `BazelDeps`), new functional tests in all platforms. `#10812 <https://github.com/conan-io/conan/pull/10812>`_ . Docs `here <https://github.com/conan-io/docs/pull/2474>`__
- Fix: `Conf.get()` always returns `default` value if internal `conf_value.value` is `None`, i.e., it was unset. `#10800 <https://github.com/conan-io/conan/pull/10800>`_ . Docs `here <https://github.com/conan-io/docs/pull/2484>`__
- Fix: Set `-DCMAKE_MAKE_PROGRAM` when the generator is for MinGW and the conf `tools.gnu:make_program` is set. `#10770 <https://github.com/conan-io/conan/pull/10770>`_
- Fix: Remove unused ``clion_layout``. `#10760 <https://github.com/conan-io/conan/pull/10760>`_ . Docs `here <https://github.com/conan-io/docs/pull/2483>`__
- Fix: AutotoolsToolchain adjust the runtime flag of `msvc` (`MTd`, `MT`, `MDd` or `MD`) to `CFLAGS` and `CXXFLAGS` when using the `msvc` as `settings.compiler`. `#10755 <https://github.com/conan-io/conan/pull/10755>`_ . Docs `here <https://github.com/conan-io/docs/pull/2478>`__
- Fix: Removed `subsystem_path` from the `conan.tool.microsoft` namespace, superseded by `unix_path`. `#10743 <https://github.com/conan-io/conan/pull/10743>`_ . Docs `here <https://github.com/conan-io/docs/pull/2479>`__
- Fix: Show an error message at :command:`conan install` if the ``validate()`` method raises ``ConanInvalidConfiguration``. `#10725 <https://github.com/conan-io/conan/pull/10725>`_
- BugFix: The `find_dependency` called internally in `CMakeDeps` generator to locate transitive dependencies now use the `MODULE/NO_MODULE` following the `cmake_find_mode` property when declared in the dependency. `#10917 <https://github.com/conan-io/conan/pull/10917>`_
- Bugfix: Fix virtualrunenv wrong ``build`` scope. `#10904 <https://github.com/conan-io/conan/pull/10904>`_
- BugFix: Make ``self.folders.root`` apply at package ``conan install .`` too. `#10842 <https://github.com/conan-io/conan/pull/10842>`_
- Bugfix: Fix call to undefined function for markdown generator when components add `system_libs`. `#10783 <https://github.com/conan-io/conan/pull/10783>`_
- Bugfix: solve ``build_policy=never`` bug when ``conan export-pkg --force`` and there already exists a package in the cache. `#10738 <https://github.com/conan-io/conan/pull/10738>`_
- Bugfix: Add transitive dependencies to generated Bazel BUILD files. `#10686 <https://github.com/conan-io/conan/pull/10686>`_
1.46.2 (18-Mar-2022)
--------------------
- Bugfix: Fix deprecated imports checker line number. `#10822 <https://github.com/conan-io/conan/pull/10822>`_
- Bugfix: Specifying compiler.version=13 for apple-clang raised a CMake error when using the old cmake generator. `#10820 <https://github.com/conan-io/conan/pull/10820>`_
1.46.1 (17-Mar-2022)
--------------------
- Feature: Added a checker for Conan 2.x deprecated from conans imports in pylint_plugin. `#10811 <https://github.com/conan-io/conan/pull/10811>`_
- Feature: Add apple-clang 13 major version to settings. `#10807 <https://github.com/conan-io/conan/pull/10807>`_
- Feature: Make apple-clang 13 version package-id compatible with 13.0. `#10807 <https://github.com/conan-io/conan/pull/10807>`_
- Feature: Autodetect only major version for apple-clang profile starting in version 13. `#10807 <https://github.com/conan-io/conan/pull/10807>`_
- Feature: Add clang 15 version to settings. `#10807 <https://github.com/conan-io/conan/pull/10807>`_
- Bugfix: Fix call to undefined function for markdown generator when components add system_libs. `#10810 <https://github.com/conan-io/conan/pull/10810>`_
1.46.0 (07-Mar-2022)
--------------------
- Feature: Configuration field `tools.cmake.cmaketoolchain:user_toolchain` defined as list-like object `#10729 <https://github.com/conan-io/conan/pull/10729>`_ . Docs `here <https://github.com/conan-io/docs/pull/2427>`__
- Feature: Prepare Conan for search remote repos with mix of 1.X and 2.0 binaries. Conan 1.X will not list binaries (``conan search <ref>``) stored in remote repos that were created with Conan 2.0. `#10692 <https://github.com/conan-io/conan/pull/10692>`_
- Feature: Adding jinja rendering of global.conf config file. `#10687 <https://github.com/conan-io/conan/pull/10687>`_ . Docs `here <https://github.com/conan-io/docs/pull/2427>`__
- Feature: Improve markdown generator instructions. `#10673 <https://github.com/conan-io/conan/pull/10673>`_ . Docs `here <https://github.com/conan-io/docs/pull/2423>`__
- Feature: The `CMakeToolchain` and `AutotoolsToolchain` take into account the `cpp.package` info to set the output directories for libraries, executables, and so on when running `cmake.install` or `make install`. `#10672 <https://github.com/conan-io/conan/pull/10672>`_ . Docs `here <https://github.com/conan-io/docs/pull/2425>`__
- Feature: Added `basic_layout`, removed `meson_layout` and added argument `src_folder` to `cmake_layout`as a shortcut for adjusting `conanfile.folders.source`. `#10659 <https://github.com/conan-io/conan/pull/10659>`_ . Docs `here <https://github.com/conan-io/docs/pull/2426>`__
- Feature: Adding ``self.base_source_folder`` for ``exports_sources`` explicit layouts. `#10654 <https://github.com/conan-io/conan/pull/10654>`_ . Docs `here <https://github.com/conan-io/docs/pull/2418>`__
- Feature: Adding ``root`` to layout model to allow conanfile.py in subfolders. `#10654 <https://github.com/conan-io/conan/pull/10654>`_ . Docs `here <https://github.com/conan-io/docs/pull/2418>`__
- Feature: Added new property `component_version` for `PkgConfigDeps` and legacy `PkgConfig`. `#10633 <https://github.com/conan-io/conan/pull/10633>`_ . Docs `here <https://github.com/conan-io/docs/pull/2433>`__
- Feature: Changed `.pc` file description field for components in `PkgConfigDeps`. `#10633 <https://github.com/conan-io/conan/pull/10633>`_ . Docs `here <https://github.com/conan-io/docs/pull/2433>`__
- Feature: Add `sdk_version` setting for `Macos`, `iOS`, `watchOS` and `tvOS`. `#10608 <https://github.com/conan-io/conan/pull/10608>`_ . Docs `here <https://github.com/conan-io/docs/pull/2431>`__
- Feature: Add new `XcodeBuild` build helper. `#10608 <https://github.com/conan-io/conan/pull/10608>`_ . Docs `here <https://github.com/conan-io/docs/pull/2431>`__
- Feature: Add new `XcodeToolchain` helper. `#10608 <https://github.com/conan-io/conan/pull/10608>`_ . Docs `here <https://github.com/conan-io/docs/pull/2431>`__
- Feature: Add ``compiler.version`` 12 for GCC in settings. `#10595 <https://github.com/conan-io/conan/pull/10595>`_
- Feature: Introduce new ``conan.tools.scm.Git`` helper, for direct use in ``export()`` method to capture git url and commit, and to be used in ``source()`` method to clone and checkout a git repo. `#10594 <https://github.com/conan-io/conan/pull/10594>`_ . Docs `here <https://github.com/conan-io/docs/pull/2419>`__
- Feature: New ``from conan.tools.files import update_conandata()`` helper to add data to ``conandata.yml`` in the ``export()`` method. `#10586 <https://github.com/conan-io/conan/pull/10586>`_ . Docs `here <https://github.com/conan-io/docs/pull/2422>`__
- Feature: Add CMake variables, cli arguments and native build system arguments to new ``conan.tools.cmake.CMake`` helper. `#10573 <https://github.com/conan-io/conan/pull/10573>`_ . Docs `here <https://github.com/conan-io/docs/pull/2424>`__
- Feature: Adding more functionality to `ConfDefinition` and `Conf`, something similar to `ProfileEnvironment` and `Environment` ones. `#10537 <https://github.com/conan-io/conan/pull/10537>`_ . Docs `here <https://github.com/conan-io/docs/pull/2427>`__
- Feature: Port `conan.tools.Version` to Conan 1.X. `#10536 <https://github.com/conan-io/conan/pull/10536>`_ . Docs `here <https://github.com/conan-io/docs/pull/2434>`__
- Feature: Port `conan.tools.build.cross_building` to Conan 1.X. `#10536 <https://github.com/conan-io/conan/pull/10536>`_ . Docs `here <https://github.com/conan-io/docs/pull/2434>`__
- Feature: New `copy` tool at `conan.tools.files` namespace that will replace the `self.copy` in Conan 2.0. `#10530 <https://github.com/conan-io/conan/pull/10530>`_ . Docs `here <https://github.com/conan-io/docs/pull/2428>`__
- Feature: Add ``recipe_folder`` to pylint plugin. `#10527 <https://github.com/conan-io/conan/pull/10527>`_
- Fix: Pin Markupsafe==2.0.1 for py27 and upgrade Jinja2>3 for py3, after Markupsafe latest 2.1 release broke Jinja2 2.11. `#10710 <https://github.com/conan-io/conan/pull/10710>`_
- Fix: Fixed templates for :command:`conan new` with `--template cmake_lib` and `--template cmake_exe` to include Conan 2.0 compatible syntax. `#10706 <https://github.com/conan-io/conan/pull/10706>`_
- Fix: Moved new tool `cross_building` from `conan.tool.cross_building` to `conan.tool.build` to match the location in develop2. `#10706 <https://github.com/conan-io/conan/pull/10706>`_
- Fix: Don't compose folders in Xcode generator using `dep.package_folder`, now `cpp_info.bindirs`, `cpp_info.includedirs`, etc. are absolute. `#10694 <https://github.com/conan-io/conan/pull/10694>`_
- Fix: When the `layout()` method is declared, the `self.package_folder` in the recipe is now available even when doing a `conan install . `, pointing to the specified output folder (`-of` ) or the path of the conanfile if not specified. `#10655 <https://github.com/conan-io/conan/pull/10655>`_
- Fix: Fix creation path of deactivate scripts. `#10653 <https://github.com/conan-io/conan/pull/10653>`_
- Fix: Add support for `[tool_requires]` section in conanfile.txt. `#10642 <https://github.com/conan-io/conan/pull/10642>`_
- Fix: When ``layout()`` is defined, the ``exports`` will not be considered sources anymore, but only the ``exports_sources``. The ``exports`` are used exclusively by the recipe, but not as package source. `#10625 <https://github.com/conan-io/conan/pull/10625>`_
- Fix: Make the ``source()`` method run inside the ``self.source_folder``, in the same way ``build()`` runs in ``self.build_folder``. But only for recipes that define the ``layout()`` method, to not break unless using ``layout()``. `#10612 <https://github.com/conan-io/conan/pull/10612>`_ . Docs `here <https://github.com/conan-io/docs/pull/2418>`__
- Fix: Remove the ``--source-folder`` new argument to ``install`` and ``editable``, not necessary at the moment. `#10590 <https://github.com/conan-io/conan/pull/10590>`_ . Docs `here <https://github.com/conan-io/docs/pull/2420>`__
- Fix: Fix conf `True` and `False` handling in `tools.system.package_manage` helpers. `#10583 <https://github.com/conan-io/conan/pull/10583>`_
- Fix: Change the ``CMakeToolchain`` message to use ``CMAKE_CURRENT_LIST_FILE``. `#10552 <https://github.com/conan-io/conan/pull/10552>`_
- Fix: BazelDeps was generating invalid bazel files cause the static_library paths were absolute and not relative. `#10484 <https://github.com/conan-io/conan/pull/10484>`_
- Fix: BazelDeps was crashing when generating packages without libs cause the context was not checking the array size. `#10484 <https://github.com/conan-io/conan/pull/10484>`_
- Fix: Fix Premake test failing on Linux because the Premake executable isn't found. `#10250 <https://github.com/conan-io/conan/pull/10250>`_
- Bugfix: Fix ``MesonToolchain`` extra quotes in ``cpp_std`` `#10707 <https://github.com/conan-io/conan/pull/10707>`_
- Bugfix: Add missing ``system_libs`` management in ``AutotoolsDeps``. `#10681 <https://github.com/conan-io/conan/pull/10681>`_
- Bugfix: `GnuDepsFlags` attributes like `frameworks` and `frameworkdirs` are only available for Apple OS. `#10675 <https://github.com/conan-io/conan/pull/10675>`_
- Bugfix: Remove tmp folders created in Conan while checking the output of a command and detecting the compiler. `#10663 <https://github.com/conan-io/conan/pull/10663>`_
- Bugfix: Fix ``conan_server`` circular import do to ``conan.tools`` namespace. `#10635 <https://github.com/conan-io/conan/pull/10635>`_
- bugfix: Fix ``meson_layout()`` issue with shared folders. `#10600 <https://github.com/conan-io/conan/pull/10600>`_
- Bugfix: Fix ``SystemPackageTool`` when ``mode=verify``, it was still installing packages. `#10596 <https://github.com/conan-io/conan/pull/10596>`_
- Bugfix: ``self.build_folder`` not being computed even if ``layout()`` method is defined in local :command:`conan install`. Close https://github.com/conan-io/conan/issues/10566 `#10567 <https://github.com/conan-io/conan/pull/10567>`_
- Bugfix: Fix conan_manifest.txt parse error when the filename has ":" in it. `#10492 <https://github.com/conan-io/conan/pull/10492>`_
- Bugfix: Use meson toolchain file from install folder. `#8965 <https://github.com/conan-io/conan/pull/8965>`_
1.45.0 (02-Feb-2022)
--------------------
- Feature: Add system.package_manager tools to `conan config list`. `#10469 <https://github.com/conan-io/conan/pull/10469>`_ . Docs `here <https://github.com/conan-io/docs/pull/2379>`__
- Feature: Use system package manager helpers `from conan.tools.system.package_manager`. `#10467 <https://github.com/conan-io/conan/pull/10467>`_ . Docs `here <https://github.com/conan-io/docs/pull/2379>`__
- Feature: Add ``[tool_requires]`` section to profiles. `#10462 <https://github.com/conan-io/conan/pull/10462>`_
- Feature: Add ``meson_lib`` and ``meson_exe``, :command:`conan new` templates. `#10460 <https://github.com/conan-io/conan/pull/10460>`_ . Docs `here <https://github.com/conan-io/docs/pull/2364>`__
- Feature: Add `is_msvc_static_runtime` method to `conan.tools.microsoft.visual` to identify when using `msvc` with static runtime. `#10437 <https://github.com/conan-io/conan/pull/10437>`_ . Docs `here <https://github.com/conan-io/docs/pull/2372>`__
- Feature: Improve support for Visual Studio in ``AutotoolsToolchain``. `#10429 <https://github.com/conan-io/conan/pull/10429>`_
- Feature: Make `pkg-config` tooling accessible under `conan.tools.gnu.PkgConfig` and `conan.tools.gnu.PkgConfigDeps`. `#10415 <https://github.com/conan-io/conan/pull/10415>`_
- Feature: Use `.bazel` suffix for generated Bazel files. `#10391 <https://github.com/conan-io/conan/pull/10391>`_ . Docs `here <https://github.com/conan-io/docs/pull/2381>`__
- Feature: New tools in `conan.tools.system` for invoking system package managers in recipes. `#10380 <https://github.com/conan-io/conan/pull/10380>`_ . Docs `here <https://github.com/conan-io/docs/pull/2379>`__
- Feature: Testing the expected PC files created when the component name matches with the root package one using either `pkg_config` or `PkgConfigDeps` generators. `#10344 <https://github.com/conan-io/conan/pull/10344>`_ . Docs `here <https://github.com/conan-io/docs/pull/2378>`__
- Feature: Better definition of clang compiler in Windows in `CMakeToolchain`. `#10333 <https://github.com/conan-io/conan/pull/10333>`_
- Feature: Add VxWorks to OSs in default settings.yml. `#10315 <https://github.com/conan-io/conan/pull/10315>`_ . Docs `here <https://github.com/conan-io/docs/pull/2355>`__
- Feature: Add `is_msvc` to validate if `settings.compiler` is `Visual Studio` and `msvc` compilers. `#10310 <https://github.com/conan-io/conan/pull/10310>`_ . Docs `here <https://github.com/conan-io/docs/pull/2353>`__
- Feature: `os.sdk` field is mandatory for CMakeToolchain and OS in `('Macos', 'iOS', 'watchOS', 'tvOS')`. `#10300 <https://github.com/conan-io/conan/pull/10300>`_
- Feature: Adding ``--source-folder`` and ``--output-folder`` to ``conan editable`` and :command:`conan install` to work with ``layout()``. `#10274 <https://github.com/conan-io/conan/pull/10274>`_ . Docs `here <https://github.com/conan-io/docs/pull/2377>`__
- Feature: Adding clang 14 to ``settings.yml``. Needed for emsdk package in Conan Center Index. `#10269 <https://github.com/conan-io/conan/pull/10269>`_
- Feature: `PkgConfigDeps` shows `WARN` messages if there are duplicated `pkg_config_name` and/or `pkg_config_aliases`. `#10263 <https://github.com/conan-io/conan/pull/10263>`_ . Docs `here <https://github.com/conan-io/docs/pull/2378>`__
- Feature: Improvements in ``MesonToolchain``, including some cross-building functionality. `#10174 <https://github.com/conan-io/conan/pull/10174>`_
- Feature: Update content created by the markdown generator. `#9758 <https://github.com/conan-io/conan/pull/9758>`_ . Docs `here <https://github.com/conan-io/docs/pull/2380>`__
- Fix: Remove auto-detection of VS 2022 as ``msvc`` compiler, detect it as ``Visual Studio`` version ``17``. `#10457 <https://github.com/conan-io/conan/pull/10457>`_ . Docs `here <https://github.com/conan-io/docs/pull/2376>`__
- Fix: Do not report warning for duplicated component names in CMakeDeps. `#10456 <https://github.com/conan-io/conan/pull/10456>`_
- Fix: Let legacy `Meson` build helper use other backends apart from `ninja`. `#10447 <https://github.com/conan-io/conan/pull/10447>`_
- Fix: `msvc_runtime_flag` returns empty string instead of `None`. `#10424 <https://github.com/conan-io/conan/pull/10424>`_ . Docs `here <https://github.com/conan-io/docs/pull/2363>`__
- Fix: Parsing a url with query args in ``conan config install`` results in a bad filename that could fail. `#10423 <https://github.com/conan-io/conan/pull/10423>`_
- Fix: The argument `patch_file` from `tools.files.patch` is now relative to `conanfile.source_folder`by default, unless an absolute path to another location is provided, for example, to a path in the `conanfile.build_folder`. `#10408 <https://github.com/conan-io/conan/pull/10408>`_ . Docs `here <https://github.com/conan-io/docs/pull/2382>`__
- Fix: Use install folder for Bazel dependency paths. `#10391 <https://github.com/conan-io/conan/pull/10391>`_ . Docs `here <https://github.com/conan-io/docs/pull/2381>`__
- Fix: Enforce `CMP0091` policy to NEW in `CMakeToolchain`. `#10390 <https://github.com/conan-io/conan/pull/10390>`_
- Fix: Add quotes around `conan_message` output variable so it is not modified. `#10388 <https://github.com/conan-io/conan/pull/10388>`_
- Fix: Add ``pathlib`` as hidden-import to pyinstaller.py, so it is bundled with the installer. `#10386 <https://github.com/conan-io/conan/pull/10386>`_
- Fix: Move imports of pre-defined layouts to their build-system domain. `#10385 <https://github.com/conan-io/conan/pull/10385>`_ . Docs `here <https://github.com/conan-io/docs/pull/2364>`__
- Fix: Allow ``cmake`` generator checks for Visual Studio 2022. `#10361 <https://github.com/conan-io/conan/pull/10361>`_
- Fix: Do not generate transitive `.props` for `MSbuildDeps` tool-requires. `#10350 <https://github.com/conan-io/conan/pull/10350>`_
- Fix: Manage spaces in ``[buildenv]`` profile definition. `#10343 <https://github.com/conan-io/conan/pull/10343>`_
- Fix: Add ``-debug`` to `LDFLAGS` in ``AutotoolsToolchain`` when necessary. `#10339 <https://github.com/conan-io/conan/pull/10339>`_
- Fix: Fix extra `}` characters in cppstd info message. `#10337 <https://github.com/conan-io/conan/pull/10337>`_
- Fix: Fix quotes in generated environment deactivation scripts. `#10325 <https://github.com/conan-io/conan/pull/10325>`_
- Fix: Fix the ``CMakeToolchain`` generated code, so it doesnt fail for ``-Werror --warn-uninitialized``. `#10292 <https://github.com/conan-io/conan/pull/10292>`_
- Fix: Fix spaces in settings.yml to prevent the YAML linter from complaining. `#10230 <https://github.com/conan-io/conan/pull/10230>`_
- Fix: Convert `NewCppInfo` folders to absolute. `#10207 <https://github.com/conan-io/conan/pull/10207>`_
- Fix: Improved CMakeToolchain robustness regarding ``find_file``, ``find_path`` and ``find_program`` commands allowing better cross-build scenarios and better differentiation of the right context where to get, for example, executables (build vs host). `#10186 <https://github.com/conan-io/conan/pull/10186>`_ . Docs `here <https://github.com/conan-io/docs/pull/2383>`__
- Bugfix: Fix ``BazelDeps`` using absolute ``glob`` paths instead of relative. `#10478 <https://github.com/conan-io/conan/pull/10478>`_
- BugFix: Avoid BazelDeps exception when depending on a package without libs. Close https://github.com/conan-io/conan/issues/10471 `#10472 <https://github.com/conan-io/conan/pull/10472>`_
- Bugfix: Fix ``AttributeError: 'PackageEditableLayout' object has no attribute 'package_lock'`` that happened when sing ``package_revision_mode`` with ``editable`` packages (and lockfiles). `#10416 <https://github.com/conan-io/conan/pull/10416>`_
- Bugfix: Visual Studio 2022 auto-detected profile was incomplete. `#10322 <https://github.com/conan-io/conan/pull/10322>`_
- Bugfix: Fix the caching of `ConanFile.dependencies` at `validate()` time. `#10307 <https://github.com/conan-io/conan/pull/10307>`_
- Bugfix: Avoid ``package_id`` errors when using ``compatible_packages`` of repeated references (which can happen if using ``private`` dependencies). `#10266 <https://github.com/conan-io/conan/pull/10266>`_
1.44.1 (13-Jan-2022)
--------------------
- Bugfix: The `CMakeDeps` generator now uses the property `cmake_build_modules` declared in components of the required packages not only in the root cpp_info. `#10326 <https://github.com/conan-io/conan/pull/10326>`_
- Bugfix: Adding missing hidden-imports to pyinstaller. Close https://github.com/conan-io/conan/issues/10318 `#10320 <https://github.com/conan-io/conan/pull/10320>`_
- Bugfix: Make `pkg_config` generator listen to root `cpp_info` properties. `#10312 <https://github.com/conan-io/conan/pull/10312>`_
1.44.0 (29-Dec-2021)
--------------------
- Feature: Add `<PackageName>_LIBRARIES`, `<PackageName>_INCLUDE_DIRS`, `<PackageName>_INCLUDE_DIR`, `<PackageName>_DEFINITIONS` and `<PackageName>_VERSION_STRING` variables in CMakeDeps. `#10227 <https://github.com/conan-io/conan/pull/10227>`_
- Feature: Adding a new Block to the CMakeToolchain now doesn't require inheriting `CMakeToolchainBlock`. `#10213 <https://github.com/conan-io/conan/pull/10213>`_ . Docs `here <https://github.com/conan-io/docs/pull/2337>`__
- Feature: Add build_modules and build_modules_paths to JsonGenerator. `#10203 <https://github.com/conan-io/conan/pull/10203>`_ . Docs `here <https://github.com/conan-io/docs/pull/2329>`__
- Feature: The `CMakeToolchain` is now prepared to apply several user toolchains. `#10178 <https://github.com/conan-io/conan/pull/10178>`_ . Docs `here <https://github.com/conan-io/docs/pull/2340>`__
- Feature: In the conanfile.py of the test_package, the reference being tested is always available at `self.tested_reference_str`. `#10171 <https://github.com/conan-io/conan/pull/10171>`_ . Docs `here <https://github.com/conan-io/docs/pull/2341>`__
- Feature: Introduced a new `test_type` value `explicit` so a user can declare explicitly the `requires` or `build_requires` manually (using `self.tested_reference_str`), it won't be automatically injected as a require. In Conan 2.0 the `test_type` attribute will be ignored, the behavior will be always explicit, so declaring `test_type="explicit"` will make the test recipe compatible with Conan 2.0. `#10171 <https://github.com/conan-io/conan/pull/10171>`_ . Docs `here <https://github.com/conan-io/docs/pull/2341>`__
- Feature: Introduced `tool_requires` attribute to provide a compatible way to migrate to Conan 2.0, where the current concept of `build_requires` has been renamed to `tool_requires`. `#10168 <https://github.com/conan-io/conan/pull/10168>`_ . Docs `here <https://github.com/conan-io/docs/pull/2342>`__
- Feature: Upgrade Conan python jinja requirement to v3.x. `#10159 <https://github.com/conan-io/conan/pull/10159>`_
- Feature: Provided several `conan.tools.files` functions to manage symlinks: Transform absolute to relative symlinks, remove broken symlinks, remove external symlinks and get the symlinks in a folder. These tools will help migrate to Conan 2.0 where the package files won't be automatically cleaned from broken absolute symlinks or external symlinks. `#10154 <https://github.com/conan-io/conan/pull/10154>`_ . Docs `here <https://github.com/conan-io/docs/pull/2343>`__
- Feature: Remove legacy folder setters in ``conanfile.xxxx_folder = yyy`` only used for testing. `#10153 <https://github.com/conan-io/conan/pull/10153>`_
- Feature: Add ``Git.version`` property to check the current git version, aligned with ``SVN.version``. `#10114 <https://github.com/conan-io/conan/pull/10114>`_ . Docs `here <https://github.com/conan-io/docs/pull/2338>`__
- Feature: Add build_requires support in BazelDeps generators. `#9876 <https://github.com/conan-io/conan/pull/9876>`_
- Fix: Fix variable names set by `CMakeDeps` modules. `#10227 <https://github.com/conan-io/conan/pull/10227>`_
- Fix: Call to `find_dependency` in module mode to find transitive dependencies. `#10227 <https://github.com/conan-io/conan/pull/10227>`_
- Fix: remove rpath from .pc files generated by `pkg_config` & `PkgConfigDeps` generators. `#10192 <https://github.com/conan-io/conan/pull/10192>`_ . Docs `here <https://github.com/conan-io/docs/pull/2339>`__
- Fix: Deleted CMake warning for already existing targets. `#10150 <https://github.com/conan-io/conan/pull/10150>`_
- Bugfix: Fix passing component's linkflags in CMakeDepes generator `#10205 <https://github.com/conan-io/conan/pull/10205>`_
- Bugfix: `AutotoolsToolchain` was not passing the `compiler` to `get_gnu_triplet` function. `#10141 <https://github.com/conan-io/conan/pull/10141>`_
1.43.4 (18-Feb-2022)
--------------------
- Fix: Limit markupsafe python dependency to <2.1. `#10616 <https://github.com/conan-io/conan/pull/10616>`_
1.43.3 (13-Jan-2022)
--------------------
- Bugfix: The CMakeDeps generator now uses the property cmake_build_modules declared in components of the required packages not only in the root cpp_info. `#10331 <https://github.com/conan-io/conan/pull/10331>`_
- Bugfix: Make pkg_config generator listen to root cpp_info properties. `#10323 <https://github.com/conan-io/conan/pull/10323>`_
1.43.2 (21-Dec-2021)
--------------------
- Fix: Remove ``generator`` argument from ``cpp_info.set_property()`` method. `#10214 <https://github.com/conan-io/conan/pull/10214>`_ . Docs `here <https://github.com/conan-io/docs/pull/2331>`__
- Fix: Do not convert to ``cmake_build_modules`` property the legacy ``cpp_info.build_modules``. `#10208 <https://github.com/conan-io/conan/pull/10208>`_
- Bugfix: Compiler `msvc` was not working for CMake legacy generators. `#10195 <https://github.com/conan-io/conan/pull/10195>`_
1.43.1 (17-Dec-2021)
--------------------
- Bugfix: Making aggregate_components non-destructive, which was causing errors in generators with components. `#10183 <https://github.com/conan-io/conan/pull/10183>`_
- Bugfix: Fix the definition of D_GLIBCXX_USE_CXX11_ABI in gcc-like compilers for ``CMakeToolchain`` and ``AutotoolsToolchain``. Define it only to ``D_GLIBCXX_USE_CXX11_ABI=0`` for new compilers, assuming that the default is already 1. `#10165 <https://github.com/conan-io/conan/pull/10165>`_
1.43.0 (03-Dec-2021)
--------------------
- Feature: Remove `cmake_target_namespace` and `cmake_module_target_namespace` properties. `#10099 <https://github.com/conan-io/conan/pull/10099>`_ . Docs `here <https://github.com/conan-io/docs/pull/2316>`__
- Feature: Allow `CMakeDeps` to set `cmake_target_name` property as an absolute target. `#10099 <https://github.com/conan-io/conan/pull/10099>`_ . Docs `here <https://github.com/conan-io/docs/pull/2316>`__
- Feature: Add warning in `CMakeDeps` generated CMake files when target names collide. `#10099 <https://github.com/conan-io/conan/pull/10099>`_ . Docs `here <https://github.com/conan-io/docs/pull/2316>`__
- Feature: Legacy cmake generators (`cmake_find_package`, `cmake_find_package_multi`) don't listen to new `set_properties` model anymore. `#10098 <https://github.com/conan-io/conan/pull/10098>`_ . Docs `here <https://github.com/conan-io/docs/pull/2316>`__
- Feature: `pkg_config_name` is used as the main name for a package/component and it will be used as the name for the `*.pc` file. `#10084 <https://github.com/conan-io/conan/pull/10084>`_ . Docs `here <https://github.com/conan-io/docs/pull/2315>`__
- Feature: Added new property`pkg_config_aliases` which admits a list of strings to define different aliases for any package/component. `#10084 <https://github.com/conan-io/conan/pull/10084>`_ . Docs `here <https://github.com/conan-io/docs/pull/2315>`__
- Feature: Define ``os=baremetal`` in ``settings.yml`` to represent platforms without OS "bare metal". `#10067 <https://github.com/conan-io/conan/pull/10067>`_ . Docs `here <https://github.com/conan-io/docs/pull/2309>`__
- Feature: Modern ``tools.gnu.PkgConfig`` to supersede legacy ``tools.PkgConfig``. Includes management of `PKG_CONFIG_PATH` and mapping to a ``cpp_info`` structure `#10065 <https://github.com/conan-io/conan/pull/10065>`_ . Docs `here <https://github.com/conan-io/docs/pull/2310>`__
- Feature: Add ``test_requires()`` for 2.0 migration of force_host_context. `#10027 <https://github.com/conan-io/conan/pull/10027>`_ . Docs `here <https://github.com/conan-io/docs/pull/2313>`__
- Feature: Added C++23 support for Visual Studio and GCC 11.2 one. `#10021 <https://github.com/conan-io/conan/pull/10021>`_
- Feature: Enable ``from conan import ConanFile`` to prepare for future namespace. `#10016 <https://github.com/conan-io/conan/pull/10016>`_ . Docs `here <https://github.com/conan-io/docs/pull/2318>`__
- Feature: Add backend support to MesonToolchain. `#9990 <https://github.com/conan-io/conan/pull/9990>`_ . Docs `here <https://github.com/conan-io/docs/pull/2295>`__
- Fix: Fix `<PackageName>_FIND_COMPONENTS` CMake generated variable to the correct value associated with the filename, not the package name. `#10098 <https://github.com/conan-io/conan/pull/10098>`_ . Docs `here <https://github.com/conan-io/docs/pull/2316>`__
- Fix: Updated the ConanException in installer.py to improve the error message handling. `#10089 <https://github.com/conan-io/conan/pull/10089>`_ . Docs `here <https://github.com/conan-io/docs/pull/2305>`__
- Fix: Simplify ``parallel`` definition in new ``conf``, leaving only ``tools.build:jobs``. Use max number of CPUs by default to build in parallel. `#10068 <https://github.com/conan-io/conan/pull/10068>`_ . Docs `here <https://github.com/conan-io/docs/pull/2308>`__
- Fix: Fix the ``msvc`` version model, which is comparison broken with the "main" 19.3 version < 19.22. `#10057 <https://github.com/conan-io/conan/pull/10057>`_ . Docs `here <https://github.com/conan-io/docs/pull/2314>`__
- Fix: Fix the `EnvVar.save_ps1()` method. `#10049 <https://github.com/conan-io/conan/pull/10049>`_
- Fix: CMakeToolchain will not crash if build_type not defined. `#9984 <https://github.com/conan-io/conan/pull/9984>`_
- Fix: Avoid raising an exception for ``conan info --paths`` when there are editables in the graph. `#9944 <https://github.com/conan-io/conan/pull/9944>`_
- Fix: Fix wrong parameter name in CMakeDeps find_library function. `#9932 <https://github.com/conan-io/conan/pull/9932>`_
- Fix: Improve error message when unzipping Conan `.tgz` artifacts. `#9925 <https://github.com/conan-io/conan/pull/9925>`_
- Fix: Respect error code 6 in some situations. `#9905 <https://github.com/conan-io/conan/pull/9905>`_
- Bugfix: Fix parallel package downloading. While downloading conan locks incorrect package ref. `#10038 <https://github.com/conan-io/conan/pull/10038>`_
- Bugfix: Add import for ``CMakeToolchainBlock`` custom Blocks in ``CMakeToolchain``. `#10026 <https://github.com/conan-io/conan/pull/10026>`_ . Docs `here <https://github.com/conan-io/docs/pull/2312>`__
- Bugfix: Option `--require-override` is not working for `conanfile.txt`. `#10013 <https://github.com/conan-io/conan/pull/10013>`_
- Bugfix: Fix unescaped double-quotes for defines in ``Premake`` generator. `#10008 <https://github.com/conan-io/conan/pull/10008>`_
- Bugfix: Use new `tools.cross_building` in MesonToolchain . `#9992 <https://github.com/conan-io/conan/pull/9992>`_
- Bugfix: CMakeDeps generated `*-data.cmake` was not including properly the set of link flags. `#9980 <https://github.com/conan-io/conan/pull/9980>`_
- Bugfix: CMakeDeps was not populating `INTERFACE_LINK_OPTIONS` to each target. `#9980 <https://github.com/conan-io/conan/pull/9980>`_
- Bugfix: `PkgConfigDeps` was not adding correctly the `Requires` for all the package dependencies. `#9945 <https://github.com/conan-io/conan/pull/9945>`_
- Bugfix: ``user_toolchain`` properly included and path quoted in ``CMakeToolchain``. `#9916 <https://github.com/conan-io/conan/pull/9916>`_
- Bugfix: Solved an issue with the `conan config install` whereby a cryptic error was raised when a user tried to install a directory that previously was a file and vice-versa. `#9908 <https://github.com/conan-io/conan/pull/9908>`_
- Bugfix: Missing framework for Xcode generator with no compiler setting. `#9896 <https://github.com/conan-io/conan/pull/9896>`_
1.42.2 (22-Nov-2021)
--------------------
- Bugfix: Legacy `cmake_multi` generator is not affected by `set_property`. `#10062 <https://github.com/conan-io/conan/pull/10062>`_
1.42.1 (08-Nov-2021)
--------------------
- Fix: Fix XcodeDeps architecture name translation from Conan to Apple identifiers. `#9955 <https://github.com/conan-io/conan/pull/9955>`_
- Bugfix: Fix XcodeDeps bad xcconfig generation when using dash-case-named packages `#9955 <https://github.com/conan-io/conan/pull/9955>`_
- Bugfix: Avoid exception if ``msvc`` compiler not defined in settings.yml file. `#9954 <https://github.com/conan-io/conan/pull/9954>`_
- Bugfix: legacy `cmake` generator is not affected by `set_property`. `#9952 <https://github.com/conan-io/conan/pull/9952>`_
1.42.0 (29-Oct-2021)
--------------------
- Feature: Remove `sdk` condition in _.xcconfig_ files generated by _XcodeDeps_. `#9887 <https://github.com/conan-io/conan/pull/9887>`_
- Feature: Add new Macos version 12.0 (Monterey). `#9886 <https://github.com/conan-io/conan/pull/9886>`_
- Feature: Add `CMAKE_POSITION_INDEPENDENT_CODE` in `CMakeToolchain` if it's set in the conanfile independently from the value of the shared option. `#9868 <https://github.com/conan-io/conan/pull/9868>`_
- Feature: Generate aggregated deactivation file for aggregated environments. `#9862 <https://github.com/conan-io/conan/pull/9862>`_ . Docs `here <https://github.com/conan-io/docs/pull/2279>`__
- Feature: adding preprocessor definitions to ``MSBuildTolchain`` ResourceCompile. `#9843 <https://github.com/conan-io/conan/pull/9843>`_
- Feature: Support `cmake_module_target_name` and `cmake_module_file_name` properties in _cmake_find_package_ generator. `#9832 <https://github.com/conan-io/conan/pull/9832>`_ . Docs `here <https://github.com/conan-io/docs/pull/2271>`__
- Feature: Define new ``conf["tools.microsoft.msbuild:install_path"]`` for the MSBuild toolchain and remove generation of intel_vars files by ``VCVars``. `#9827 <https://github.com/conan-io/conan/pull/9827>`_ . Docs `here <https://github.com/conan-io/docs/pull/2281>`__
- Feature: New Conan _XcodeDeps_ multi-config generator for _Xcode_. `#9807 <https://github.com/conan-io/conan/pull/9807>`_ . Docs `here <https://github.com/conan-io/docs/pull/2274>`__
- Feature: Refactor `conan.tools.gnu.pkgconfigdeps` module. `#9806 <https://github.com/conan-io/conan/pull/9806>`_
- Feature: Decoupled ``Environment`` as an abstract environment representation (do not depend on conanfile), and ``EnvVars``, as the specialization for a given conanfile, settings/settings_build, and ``win_bash``. `#9755 <https://github.com/conan-io/conan/pull/9755>`_ . Docs `here <https://github.com/conan-io/docs/pull/2279>`__
- Feature: Enabled `patch_string` when using `apply_conandata_patches`. `#9740 <https://github.com/conan-io/conan/pull/9740>`_ . Docs `here <https://github.com/conan-io/docs/pull/2246>`__
- Feature: Add property "cmake_target_aliases" to create some CMake alias targets using CMakeDeps. `#8533 <https://github.com/conan-io/conan/pull/8533>`_
- Fix: Do not fall back for the property "filename" to target properties, only to legacy "names" definition. `#9894 <https://github.com/conan-io/conan/pull/9894>`_
- Fix: Fix build settings conditional logic to work correctly with Xcode IDE. `#9892 <https://github.com/conan-io/conan/pull/9892>`_
- Fix: Show a more specific error message on 'conan search' when a package version is not valid `#9891 <https://github.com/conan-io/conan/pull/9891>`_
- Fix: Removed the new layout `folders.package` property as it was not clear the value/usage. `#9884 <https://github.com/conan-io/conan/pull/9884>`_ . Docs `here <https://github.com/conan-io/docs/pull/2278>`__
- Fix: The "conan package" method now raises an exception when declaring the layout() method. This is part of the migration to Conan 2.0 where the local method "conan package" is removed. `#9884 <https://github.com/conan-io/conan/pull/9884>`_ . Docs `here <https://github.com/conan-io/docs/pull/2278>`__
- Fix: Moved experimental LayoutPackager to a `conan.tools.files.AutoPackager` with a new interface. Removed also the `conanfile.patterns` attribute that now is configured directly in the AutoPackager. `#9882 <https://github.com/conan-io/conan/pull/9882>`_ . Docs `here <https://github.com/conan-io/docs/pull/2278>`__
- Fix: When the `layout()` method is declared inside the conanfile.py of a `test-package`, Conan won't generate temporary folders at build/_HASH_ anymore. The build folder will follow the structure declared at the layout() method. `#9882 <https://github.com/conan-io/conan/pull/9882>`_ . Docs `here <https://github.com/conan-io/docs/pull/2278>`__
- Fix: Fix frameworks aggregation in XcodeDeps. `#9881 <https://github.com/conan-io/conan/pull/9881>`_
- Fix: Remove python ``requests`` version from ``User-Agent`` header, it can be problematic sometimes and adds no value. `#9861 <https://github.com/conan-io/conan/pull/9861>`_
- Fix: Change ``MesonToolchain`` to define ``preprocessor_definitions`` as ``[constant]``, because Meson 0.60 now raises errors on it defined in ``[built-in options]``. `#9858 <https://github.com/conan-io/conan/pull/9858>`_
- Fix: Rename ``ConanFileInterface.new_cpp_info`` to ``ConanFileInterface.cpp_info`` (being it a ``NewCppInfo`` object). The `ConanFileInterface` object is only used when accessing `self.dependencies` in a conanfile, so we can make sure that the new develop generators use the final `cpp_info` name. `#9800 <https://github.com/conan-io/conan/pull/9800>`_ . Docs `here <https://github.com/conan-io/docs/pull/2280>`__
- Fix: Renamed ``group`` argument in ``Environment`` classes to ``scope``, that can get "build" and "run" values. `#9755 <https://github.com/conan-io/conan/pull/9755>`_ . Docs `here <https://github.com/conan-io/docs/pull/2279>`__
- Fix: New ``win_bash`` behavior failed for dual profile, the new computation of subsystem paths completely depend now on defined settings, but not on ``platform.system()`` or auto-detection. `#9755 <https://github.com/conan-io/conan/pull/9755>`_ . Docs `here <https://github.com/conan-io/docs/pull/2279>`__
- Bugfix: Avoid lockfile raising because of incorrect options when using ``compatible_packages``. Close https://github.com/conan-io/conan/issues/9591 `#9890 <https://github.com/conan-io/conan/pull/9890>`_
- Bugfix: Avoid VCVars defining ``-vcvars`` argument for VS<=2015. Close https://github.com/conan-io/conan/issues/9888 `#9889 <https://github.com/conan-io/conan/pull/9889>`_
- Bugfix: Respect the previous value of ``sys.dont_write_bytecode``. `#9865 <https://github.com/conan-io/conan/pull/9865>`_
- Bugfix: :command:`conan export-pkg` now raises an error (ConanInvalidConfiguration exception) if the ``validate()`` method raise that error and results in an invalid `package_id`. `#9818 <https://github.com/conan-io/conan/pull/9818>`_
- Bugfix: Respect the ``build_policy="never"`` even for ``--build=missing`` cli argument. `#9817 <https://github.com/conan-io/conan/pull/9817>`_
- Bugfix: Avoid crash in ``CMakeToolchain`` for custom generator when compiler is not defined. `#9801 <https://github.com/conan-io/conan/pull/9801>`_
- Bugfix: Do not force new authentication when a token is expired, it might not be needed. `#9781 <https://github.com/conan-io/conan/pull/9781>`_
- Bugfix: The CMakeToolchain generator always sets fPIC enabled due to a typo where the actual parameter is not templated but instead hard-coded as `ON`. `#9752 <https://github.com/conan-io/conan/pull/9752>`_
- Bugfix: The path to a patch file in a `conandata.yml` is also relative to the base source folder when the patches are not associated with a version (list of patches). `#9740 <https://github.com/conan-io/conan/pull/9740>`_ . Docs `here <https://github.com/conan-io/docs/pull/2246>`__
1.41.0 (06-Oct-2021)
--------------------
- Feature: Added `IntelCC` as public generator. `#9747 <https://github.com/conan-io/conan/pull/9747>`_ . Docs `here <https://github.com/conan-io/docs/pull/2233>`__
- feature: Prepare ``conan.tools.files download, get, ftp_download`` for adoption. `#9715 <https://github.com/conan-io/conan/pull/9715>`_ . Docs `here <https://github.com/conan-io/docs/pull/2249>`__
- Feature: Support multiple toolchains in one recipe. `#9688 <https://github.com/conan-io/conan/pull/9688>`_ . Docs `here <https://github.com/conan-io/docs/pull/2238>`__
- Feature: ``MSBuildDeps`` generator learned how to handle ``build_requires`` to use executables from them. `#9686 <https://github.com/conan-io/conan/pull/9686>`_ . Docs `here <https://github.com/conan-io/docs/pull/2248>`__
- Feature: ``PkgConfig`` helper now honors `PKG_CONFIG` environment variable. `#9627 <https://github.com/conan-io/conan/pull/9627>`_
- Feature: Make new environment generators multi-config (Release/Debug and arch). `#9543 <https://github.com/conan-io/conan/pull/9543>`_ . Docs `here <https://github.com/conan-io/docs/pull/2247>`__
- Feature: Environment ``activate`` scripts will generate ``deactivate`` scripts by default. `#9539 <https://github.com/conan-io/conan/pull/9539>`_
- Feature: Support remote archives other than zip in ``conan config install``. `#9530 <https://github.com/conan-io/conan/pull/9530>`_
- Feature: New "compiler" `intel-cc` with different modes (icx, dpcpp, classic) for Intel oneAPI. `#9522 <https://github.com/conan-io/conan/pull/9522>`_ . Docs `here <https://github.com/conan-io/docs/pull/2233>`__
- Feature: Add Intel oneAPI support for `CMakeToolChain`, `MSBuildToolchain` and `VCVars`. `#9522 <https://github.com/conan-io/conan/pull/9522>`_ . Docs `here <https://github.com/conan-io/docs/pull/2233>`__
- Feature: Add objects attribute to the cpp_info so that we can add object files to the linker without having to add those mixed with linker flags. `#9520 <https://github.com/conan-io/conan/pull/9520>`_ . Docs `here <https://github.com/conan-io/docs/pull/2243>`__
- Feature: New settings: _xtensalx6_ and _xtensalx106_ for ESP32/ESP8266 platforms. `#7977 <https://github.com/conan-io/conan/pull/7977>`_
- Fix: New environment deactivate scripts fail in Windows because env-var different casing. `#9741 <https://github.com/conan-io/conan/pull/9741>`_
- Fix: Avoid "overcrowding" Windows environment variables with `LD_LIBRARY_PATH` and `DYLD_LIBRARY_PATH`, not used in Windows. `#9678 <https://github.com/conan-io/conan/pull/9678>`_
- Fix: Command :command:`conan package` now works for new ``layout()`` with generators folder. `#9674 <https://github.com/conan-io/conan/pull/9674>`_
- Fix: Don't just print "ERROR: True" on unresolvable conflict. `#9624 <https://github.com/conan-io/conan/pull/9624>`_
- Fix: Fix migrations settings comparison. `#9615 <https://github.com/conan-io/conan/pull/9615>`_
- Fix: Removed unused ``future`` dependency from Python ``requirements.txt``. `#9563 <https://github.com/conan-io/conan/pull/9563>`_
- Fix: Make automatic call of ``VirtualBuildEnv`` and ``VirtualRunEnv`` independent. `#9543 <https://github.com/conan-io/conan/pull/9543>`_ . Docs `here <https://github.com/conan-io/docs/pull/2247>`__
- Bugfix: ``generator_folder`` was using the ``cwd`` instead of a relative folder to the conanfile, producing layout errors. `#9668 <https://github.com/conan-io/conan/pull/9668>`_
- Bugfix: Support components with symbolic imports. `#9667 <https://github.com/conan-io/conan/pull/9667>`_
- Bugfix: Fix ``conan.tools.files.patch`` bug with ``strip`` argument. `#9653 <https://github.com/conan-io/conan/pull/9653>`_
- Bugfix: Add support for Xcode 13/Apple clang 13.0 `#9642 <https://github.com/conan-io/conan/pull/9642>`_
- Bugfix: Fixed bad `Requires` declaration in `*.pc` files. `#9635 <https://github.com/conan-io/conan/pull/9635>`_
- Bugfix: Fixed bug whereby when a conflict of requirements happens, in some special situations, just a message `ERROR: True` was printed in the terminal, making it hard to guess what was going on. `#9633 <https://github.com/conan-io/conan/pull/9633>`_
- BugFix: Fixed a bug where using the new `layout()` the `exports` went to the `conanfile.source_folder` instead of the base source folder in the cache and only the `exports_sources` should go there. `#9536 <https://github.com/conan-io/conan/pull/9536>`_
1.40.4 (05-Oct-2021)
--------------------
- Fix: Check current _cacert.pem_ file when updating Conan and only migrate if the user has not modified the file. If the local file is modified then create a new cacert file but don't overwrite current. `#9734 <https://github.com/conan-io/conan/pull/9734>`_
- Fix: Update Conan debian package to fix ssl certificates problem. `#9723 <https://github.com/conan-io/conan/pull/9723>`_
1.40.3 (30-Sept-2021)
---------------------
- Bugfix: Added root certificate for Let's encrypt. `#9697 <https://github.com/conan-io/conan/pull/9697>`_
1.40.2 (21-Sept-2021)
---------------------
- Bugfix: Add support for Xcode 13/Apple clang 13.0 `#9643 <https://github.com/conan-io/conan/pull/9643>`_
1.40.1 (14-Sept-2021)
---------------------
- Feature: Change default `cmake_layout()` source folder from 'src' to '.' `#9596 <https://github.com/conan-io/conan/pull/9596>`_ . Docs `here <https://github.com/conan-io/docs/pull/2225>`__
- Feature: Recovered `base_path` argument for `conan.tools.files.patch` and `conan.tools.files.apply_conandata_patches` to be able to specify a relative folder from the `conanfile.source_folder` directory (that follows the layout() method). `#9593 <https://github.com/conan-io/conan/pull/9593>`_ . Docs `here <https://github.com/conan-io/docs/pull/2222>`__
- Fix: Allow user definition of `CMAKE_XXX_INIT` variables in user toolchains when using `CMakeToolchain`. `#9576 <https://github.com/conan-io/conan/pull/9576>`_
- Fix: Upgrade minimum ``requests>=2.25`` in requirements.txt to make it compatible with latest upgrade of ``urllib3`` to 1.26.6 `#9562 <https://github.com/conan-io/conan/pull/9562>`_
- Bugfix: Aggregate `[conf]` from `build_requires` earlier so it is available for generators declared as `generators`. attribute. Close https://github.com/conan-io/conan/issues/9571 `#9573 <https://github.com/conan-io/conan/pull/9573>`_
- Bugfix: The qmake generator now assigns `QMAKE_LFLAGS_SHLIB` and `QMAKE_LFLAGS_APP` variables instead of the incorrect `QMAKE_LFLAGS` following the official docs. `#9568 <https://github.com/conan-io/conan/pull/9568>`_ . Docs `here <https://github.com/conan-io/docs/pull/2224>`__
1.40.0 (06-Sept-2021)
---------------------
- Feature: Update :command:`conan new` modern templates ``--template=cmake_lib`` and ``--template=cmake_exe``. `#9516 <https://github.com/conan-io/conan/pull/9516>`_ . Docs `here <https://github.com/conan-io/docs/pull/2211>`__
- Feature: Introduced a new cpp_info property `cmake_target_namespace` to declare the target namespace for the `CMakeDeps` generator. This feature allows declaring a global target with a different namespace like `Foo::Bar`. `#9513 <https://github.com/conan-io/conan/pull/9513>`_ . Docs `here <https://github.com/conan-io/docs/pull/2209>`__
- Feature: Detect Visual Studio 2022 as `msvc`. `#9504 <https://github.com/conan-io/conan/pull/9504>`_
- Feature: Add Clang 13 support. `#9502 <https://github.com/conan-io/conan/pull/9502>`_ . Docs `here <https://github.com/conan-io/docs/pull/2204>`__
- Feature: Testing support for Windows CMake + Clang (independent LLVM, not VS) + Ninja/MinGW builds, and CMake + Clang (Visual Studio 16 internal LLVM 11 via ClangCL toolset). `#9477 <https://github.com/conan-io/conan/pull/9477>`_
- Feature: Provide new ``[conf]`` ``core:default_build_profile`` to enable the usage of the build profile as default, and to allow definition of the host profile default in new ``[conf]`` ``core:default_profile``. `#9468 <https://github.com/conan-io/conan/pull/9468>`_ . Docs `here <https://github.com/conan-io/docs/pull/2213>`__
- Feature: **CMakeToolchain** new member `find_builddirs` defaulted to `True` to add the `cpp_info.builddirs` from the requirements to the `CMAKE_PREFIX_PATH/CMAKE_MODULE_PATH`. That would allow finding the config files packaged and to be able to `include()` them from the consumer `CMakeLists.txt`. `#9455 <https://github.com/conan-io/conan/pull/9455>`_ . Docs `here <https://github.com/conan-io/docs/pull/2209>`__
- Feature: **CMakeDeps**. Added a new property `cmake_find_mode` with possible values to `config`(default), `module`, `both` or `none` to control the files to be generated from a package itself. The `none` replaces the current `skip_deps_file` property. `#9455 <https://github.com/conan-io/conan/pull/9455>`_ . Docs `here <https://github.com/conan-io/docs/pull/2209>`__
- Feature: **CMakeDeps**: Added two new properties `cmake_module_file_name` and `cmake_module_target_name`, analog to `cmake_file_name` and `cmake_target_name`, but to configure the name of `FindXXX.cmake` file and the target declared inside. `#9455 <https://github.com/conan-io/conan/pull/9455>`_ . Docs `here <https://github.com/conan-io/docs/pull/2209>`__
- Feature: Remove `conan-center` (https://conan.bintray.com) default remote. `#9401 <https://github.com/conan-io/conan/pull/9401>`_ . Docs `here <https://github.com/conan-io/docs/pull/2212>`__
- Feature: Implement round trip new profile ``[buildenv]`` section, necessary for lockfiles, and specially stdout printing. `#9320 <https://github.com/conan-io/conan/pull/9320>`_
- Feature: Allow ``-o &:option=value`` wildcard for consumer, too, same it was done for settings in 1.39 `#9316 <https://github.com/conan-io/conan/pull/9316>`_ . Docs `here <https://github.com/conan-io/docs/pull/2214>`__
- Fix: Adding management of private dependencies, via new ``visible`` trait compatible with 2.0 for new ``CMakeDeps`` and ``MSBuildDeps``. `#9517 <https://github.com/conan-io/conan/pull/9517>`_
- Fix: Remove unused ``deprecation`` pip dependency `#9478 <https://github.com/conan-io/conan/pull/9478>`_
- Fix: Upgrade ``distro`` dependency to allow 1.6.0 `#9462 <https://github.com/conan-io/conan/pull/9462>`_
- Fix: Make :command:`conan remove` accept package reference syntax. `#9459 <https://github.com/conan-io/conan/pull/9459>`_ . Docs `here <https://github.com/conan-io/docs/pull/2198>`__
- Fix: Fixed old CMake build helper to cross-build to iOS when two profiles are specified. `#9437 <https://github.com/conan-io/conan/pull/9437>`_
- Fix: Fix :command:`conan export` typo in help message. `#9408 <https://github.com/conan-io/conan/pull/9408>`_ . Docs `here <https://github.com/conan-io/docs/pull/2187>`__
- Fix: Relax python six dependency to allow 1.16 `#9407 <https://github.com/conan-io/conan/pull/9407>`_
- Fix: Bump urllib3 version to 1.26.6 `#9405 <https://github.com/conan-io/conan/pull/9405>`_
- Fix: The new `Autotools` build helper accepts a `build_script_folder ` argument in the `configure()` method to specify are subfolder where the configure script is. `#9393 <https://github.com/conan-io/conan/pull/9393>`_ . Docs `here <https://github.com/conan-io/docs/pull/2208>`__
- Fix: Use `frameworks` in Premake generator. `#9371 <https://github.com/conan-io/conan/pull/9371>`_ . Docs `here <https://github.com/conan-io/docs/pull/2210>`__
- Fix: The tool `conan.tools.files.apply_conandata_patches` will use the root source folder to find the patch file and the tool `conan.tools.files.patch` will take the current source folder declared in the `layout()` method to know where is the source to apply the patches. `#9361 <https://github.com/conan-io/conan/pull/9361>`_ . Docs `here <https://github.com/conan-io/docs/pull/2207>`__
- Fix: Avoid checking other remotes when ``-r=remote`` is defined and revisions are activated and binary is not found in the defined remote. `#9355 <https://github.com/conan-io/conan/pull/9355>`_
- Bugfix: Setting the `CMAKE_OSX_DEPLOYMENT_TARGET` variable as a cache entry. `#9498 <https://github.com/conan-io/conan/pull/9498>`_
- BugFix: Use topological ordering to define `VirtualBuildEnv` composition and precedence of appending variables. `#9491 <https://github.com/conan-io/conan/pull/9491>`_
- Bugfix: Bazel build files have an extra `]` if there are no dependencies. `#9480 <https://github.com/conan-io/conan/pull/9480>`_
- Bugfix: Add AlmaLinux to `with_yum`. `#9463 <https://github.com/conan-io/conan/pull/9463>`_
- Bugfix: **CMakeToolchain**. Fixed a bugfix whereby a variable declared at the `.variables` containing a boolean ended at CMake with a quoted `"True"` or `"False"` values, instead of `ON` / `OFF` `#9455 <https://github.com/conan-io/conan/pull/9455>`_ . Docs `here <https://github.com/conan-io/docs/pull/2209>`__
- Bugfix: Fixed bug whereby Conan failed when using `compiler=gcc` with `compiler.version=5` (without specifying a minor version) and `compiler.cppstd=17`. `#9431 <https://github.com/conan-io/conan/pull/9431>`_
- Bugfix: No verbose traceback was been printed for `conanfile.layout()` method. `#9384 <https://github.com/conan-io/conan/pull/9384>`_
- Bugfix: Fix Bazel `cc_library`: `deps` and `linkopts`. `#9381 <https://github.com/conan-io/conan/pull/9381>`_
- Bugfix: Fixed bug whereby using new `layout()` method together with `cppinfo.components` in the `package_info` method caused an exception. `#9360 <https://github.com/conan-io/conan/pull/9360>`_
- Bugfix: Fix `PkgConfigDeps` that was failing in the case of components with requirements. `#9341 <https://github.com/conan-io/conan/pull/9341>`_
1.39.0 (27-Jul-2021)
--------------------
- Feature: Use `CMAKE_OSX_DEPLOYMENT_TARGET` to get `-version-min` set in _CMakeToolchain_. `#9301 <https://github.com/conan-io/conan/pull/9301>`_
- Feature: Display ``python_requires`` information in the :command:`conan info` output. `#9290 <https://github.com/conan-io/conan/pull/9290>`_
- Feature: Now it is possible to define settings for a downstream consumer using `-s &:setting=value` or the same syntax in the profile even if the consumer is a `conanfile.txt` or a `conanfile.py` not declaring a name. e.g: Building a Debug application with Release dependencies: `-s build_type=Release -s &:build_type=Debug` `#9267 <https://github.com/conan-io/conan/pull/9267>`_ . Docs `here <https://github.com/conan-io/docs/pull/2160>`__
- Feature: The `AutotoolsDeps` allows to alter the generated environment corresponding to the information read from the dependencies before calling the `generate()` method. `#9256 <https://github.com/conan-io/conan/pull/9256>`_ . Docs `here <https://github.com/conan-io/docs/pull/2155>`__
- Feature: new `remove` and `items` methods for the `Environment` objects. `#9256 <https://github.com/conan-io/conan/pull/9256>`_ . Docs `here <https://github.com/conan-io/docs/pull/2155>`__
- Feature: New `VCVars` generator that generates a `conanvcvars.bat` that activates the Visual Studio Developer Command Prompt. `#9230 <https://github.com/conan-io/conan/pull/9230>`_ . Docs `here <https://github.com/conan-io/docs/pull/2153>`__
- Feature: Skip build helper test and using [conf]. `#9218 <https://github.com/conan-io/conan/pull/9218>`_ . Docs `here <https://github.com/conan-io/docs/pull/2154>`__
- Feature: Implement a new ``requires = "pkg/(alias)"`` syntax to be able to disambiguate alias requirements and resolve them earlier in the flow, solving some limitations of the previous alias definition. This approach is intended to be the one in Conan 2.0 (issue backported from https://github.com/conan-io/tribe/pull/25). `#9217 <https://github.com/conan-io/conan/pull/9217>`_ . Docs `here <https://github.com/conan-io/docs/pull/2169>`__
- Feature: Introduce the ``-require-override`` argument to define dependency overrides directly on command line. `#9195 <https://github.com/conan-io/conan/pull/9195>`_ . Docs `here <https://github.com/conan-io/docs/pull/2170>`__
- Feature: New `self.win_bash` mechanism to enable running commands in a bash shell in Windows. It works only with the new environment definition from the dependencies (`env_buildinfo` and `run_buildinfo`) as long as the new `AutotoolsToolchain`, `AutotoolsDeps` and `Autotools` build helper. It supports automatic conversion of the environment variables values declared as "path" according to the declared subsystem in the conf `tools.win.bash:subsystem`, that is not being auto-detected anymore. `#9194 <https://github.com/conan-io/conan/pull/9194>`_ . Docs `here <https://github.com/conan-io/docs/pull/2152>`__
- Feature: A unique environment launcher (`conanenv.bat/sh`) is generated to aggregate all the environment generators (`VirtualRunEnv`, `VirtualBuildEnv`, `AutotoolsToolchain` and `AutotoolsDeps`) that had been generated so the user can easily activate all of them with one command. `#9161 <https://github.com/conan-io/conan/pull/9161>`_ . Docs `here <https://github.com/conan-io/docs/pull/2151>`__
- Feature: Use _CMake_ File API. `#9005 <https://github.com/conan-io/conan/pull/9005>`_
- Fix: Add ``bindirs`` definition to ``cmake_layout()``. `#9276 <https://github.com/conan-io/conan/pull/9276>`_
- Fix: Improve error message when ``conan search <ref>`` a package in editable mode. `#9262 <https://github.com/conan-io/conan/pull/9262>`_
- Fix: Add ``options`` to ``conanfile.dependencies`` model. `#9258 <https://github.com/conan-io/conan/pull/9258>`_
- Fix: Fix _CMake_ rejecting library name with special characters. `#9245 <https://github.com/conan-io/conan/pull/9245>`_
- Fix: Use filename `[PKG-NAME]-[COMP-NAME]` for `PkgConfigDeps`. `#9228 <https://github.com/conan-io/conan/pull/9228>`_ . Docs `here <https://github.com/conan-io/docs/pull/2148>`__
- Fix: Saving all the toolchain args information into `conanbuild.conf` instead of json file. `#9225 <https://github.com/conan-io/conan/pull/9225>`_ . Docs `here <https://github.com/conan-io/docs/pull/2156>`__
- Fix: Added warning in the new toolchains (the used in the generate() method) if no build profile is being used. `#9206 <https://github.com/conan-io/conan/pull/9206>`_ . Docs `here <https://github.com/conan-io/docs/pull/2173>`__
- Fix: Implemented check that will raise an error in the `CMakeDeps` generator when using the `build_context_activated`, `build_context_suffix` or `build_context_build_modules` attributes if no build profile is being used. `#9206 <https://github.com/conan-io/conan/pull/9206>`_ . Docs `here <https://github.com/conan-io/docs/pull/2173>`__
- Fix: The`CMakeDeps` generator will check if the targets specified in the `find_package(foo components x y z)` exist instead of checking against an internal variable. Also, this check will be done at the end of the `xxx-config.cmake` so any included `build_module` can declare the needed targets. `#9206 <https://github.com/conan-io/conan/pull/9206>`_ . Docs `here <https://github.com/conan-io/docs/pull/2173>`__
- Fix: Consistent help message for conan profile (sub-command part). `#9204 <https://github.com/conan-io/conan/pull/9204>`_ . Docs `here <https://github.com/conan-io/docs/pull/2171>`__
- Fix: Consistently put short arguments (-a) before long ones (--args). `#9199 <https://github.com/conan-io/conan/pull/9199>`_
- Fix: `CC=clang` `--gcc-toolchain` is now identified as _clang_. `#9198 <https://github.com/conan-io/conan/pull/9198>`_
- Fix: The new `VirtualEnv` generator has been split into `VirtualRunEnv` and `VirtualBuildEnv`. Both are automatically generated as before but only `VirtualBuildEnv` will be activated by default. `#9161 <https://github.com/conan-io/conan/pull/9161>`_ . Docs `here <https://github.com/conan-io/docs/pull/2151>`__
- Bugfix: Fixing ``workspace install`` when conanfile has ``imports()``. `#9281 <https://github.com/conan-io/conan/pull/9281>`_
- Bugfix: Fix QbsProfile toolchain ``qbs.architecture`` KeyError. `#9192 <https://github.com/conan-io/conan/pull/9192>`_
- Bugfix: Do not define CMAKE_GENERATOR_TOOLSET in CMakeToolchain for Ninja generator, and define it in ``vcvars_ver`` instead. `#9187 <https://github.com/conan-io/conan/pull/9187>`_
- BugFix: ``build_requires`` in host context, like gtest, are being propagated downstream by generators in the ``dependencies`` model. `#9171 <https://github.com/conan-io/conan/pull/9171>`_ . Docs `here <https://github.com/conan-io/docs/pull/2172>`__
- Bugfix: Fix that overridden requirements _"cannot be found in lockfile"_. `#8907 <https://github.com/conan-io/conan/pull/8907>`_
1.38.0 (30-Jun-2021)
--------------------
- Feature: New ``PkgConfigDeps`` generator. `#9152 <https://github.com/conan-io/conan/pull/9152>`_ . Docs `here <https://github.com/conan-io/docs/pull/2133>`__
- Feature: Proposal of jinja2 templates for profiles. `#9147 <https://github.com/conan-io/conan/pull/9147>`_ . Docs `here <https://github.com/conan-io/docs/pull/2138>`__
- Feature: Add support for `CMAKE_CXX_STANDARD_REQUIRED` in _CMakeToolchain_. `#9144 <https://github.com/conan-io/conan/pull/9144>`_
- Feature: Add ``context`` information to :command:`conan info` output both to stdout and json outputs. `#9137 <https://github.com/conan-io/conan/pull/9137>`_ . Docs `here <https://github.com/conan-io/docs/pull/2142>`__
- Feature: Improved the new `AutotoolsToolchain`, `AutotoolsDeps` and `Autotools` build helper. `#9131 <https://github.com/conan-io/conan/pull/9131>`_ . Docs `here <https://github.com/conan-io/docs/pull/2135>`__
- Feature: Initial cross-build support in ``CMakeToolchain`` with definition of ``CMAKE_SYSTEM_NAME``, ``CMAKE_SYSTEM_PROCESSOR`` and ``CMAKE_SYSTEM_VERSION``, deduced from ``self.settings_build`` (only using the 2 profiles) and from new ``[conf]`` items. `#9115 <https://github.com/conan-io/conan/pull/9115>`_ . Docs `here <https://github.com/conan-io/docs/pull/2140>`__
- Feature: Easier access to modify or update context values in ``CMakeToolchain`` blocks. `#9109 <https://github.com/conan-io/conan/pull/9109>`_ . Docs `here <https://github.com/conan-io/docs/pull/2140>`__
- Feature: Provide `[conf]` command line support. `#9103 <https://github.com/conan-io/conan/pull/9103>`_ . Docs `here <https://github.com/conan-io/docs/pull/2124>`__
- Feature: Added support for using server config from a custom location, setting `CONAN_SERVER_HOME` env variable or using `-d` or `--server_dir` flag when launching the server with `conan_server` command. `#9099 <https://github.com/conan-io/conan/pull/9099>`_ . Docs `here <https://github.com/conan-io/docs/pull/2125>`__
- Feature: Support for `CMakeDeps` generator of a new property `"skip_deps_file"` to be declared in the `cpp_info` of a package to skip creating `xxx-config.cmake` files for it, allowing to create "system wrapper" recipes easily. `#9087 <https://github.com/conan-io/conan/pull/9087>`_ . Docs `here <https://github.com/conan-io/docs/pull/2121>`__
- Feature: New ``conanfile.dependencies`` model, using a dict {requirement: ConanFileInterface} to prepare for Conan 2.0. `#9062 <https://github.com/conan-io/conan/pull/9062>`_ . Docs `here <https://github.com/conan-io/docs/pull/2134>`__
- Feature: Allow a explicit ``requires = "pkg..#recipe_revision"`` to update cache revision without ``--update``. `#9058 <https://github.com/conan-io/conan/pull/9058>`_ . Docs `here <https://github.com/conan-io/docs/pull/2143>`__
- Feature: New ``cmake_layout()`` layout helper to define a multi-platform CMake layout that will work for different generators (ninja, xcode, visual, unix), and is multi-config. `#9057 <https://github.com/conan-io/conan/pull/9057>`_ . Docs `here <https://github.com/conan-io/docs/pull/2141>`__
- Feature: The `conan_toolchain.cmake` now includes `xxx_DIR` variables for the dependencies to ease the `find_package` mechanism to locate them. The declaration of these directories is a must when cross-building in OSX where CMake ignores `CMAKE_PREFIX_PATH` and `CMAKE_MODULE_PATH` to look only at the system framework directories. `#9032 <https://github.com/conan-io/conan/pull/9032>`_ . Docs `here <https://github.com/conan-io/docs/pull/2108>`__
- Feature: Provide access in the recipes to the environment declared with the [new environment system](https://docs.conan.io/en/latest/reference/conanfile/tools/env.html). `#9030 <https://github.com/conan-io/conan/pull/9030>`_ . Docs `here <https://github.com/conan-io/docs/pull/2136>`__
- Fix: Fix Bazel build string defines. `#9139 <https://github.com/conan-io/conan/pull/9139>`_
- Fix: Fixed behavior in the `self.folders` feature whereby the sources saved or downloaded inside the `source(self)` were saved at the `self.folders.source` folder. But `self.folders.source` is intended to describe where the sources are instead of forcing where the sources are saved. `#9124 <https://github.com/conan-io/conan/pull/9124>`_ . Docs `here <https://github.com/conan-io/docs/pull/2127>`__
- Fix: Properly generate qbs profile for msvc. `#9122 <https://github.com/conan-io/conan/pull/9122>`_
- Fix: Configuration general.user_home_short works with "None" value. `#9118 <https://github.com/conan-io/conan/pull/9118>`_
- Fix: Avoid ``CMakeToolchain`` to generate OSX and Apple config for non Apple builds. `#9107 <https://github.com/conan-io/conan/pull/9107>`_
- Fix: The new `MesonToolchain` now takes the declared environment variables (`CC`, `CXX`...) from build-requires and profiles to set the variables `c`, `cpp`, `c_ld`, `cpp_ld` etc, into the `conan_meson_native.ini` `#8353 <https://github.com/conan-io/conan/pull/8353>`_ . Docs `here <https://github.com/conan-io/docs/pull/2139>`__
- Fix: Added new `preprocessor_definitions` to new Meson build helper. `#8353 <https://github.com/conan-io/conan/pull/8353>`_ . Docs `here <https://github.com/conan-io/docs/pull/2139>`__
- Fix: The new `MesonToolchain` now allows adjusting any variable before generating the `conan_meson_native.ini` file. `#8353 <https://github.com/conan-io/conan/pull/8353>`_ . Docs `here <https://github.com/conan-io/docs/pull/2139>`__
- Bugfix: Disabled remotes shouldn't fail if not used at all `#9184 <https://github.com/conan-io/conan/pull/9184>`_
- BugFix: ``ConanFileDependencies.build["dep"]`` was retrieving the ``host`` dependency if existing, or failing otherwise, because the default requires was hardcoded to fetch the host (build=False) dependency. `#9148 <https://github.com/conan-io/conan/pull/9148>`_ . Docs `here <https://github.com/conan-io/docs/pull/2134>`__
- Bugfix: Now, `conan profile {show, update, get, remove}` is working fine with new experimental `[conf]` section. `#9114 <https://github.com/conan-io/conan/pull/9114>`_
1.37.2 (14-Jun-2021)
--------------------
- Bugfix: Avoid crash when using ``--lockfile`` with the :command:`conan test` command. `#9089 <https://github.com/conan-io/conan/pull/9089>`_
- Bugfix: The `CMakeDeps` generator variables were named wrongly when a component had the same name as the package. `#9073 <https://github.com/conan-io/conan/pull/9073>`_
1.37.1 (08-Jun-2021)
--------------------
- Fix: Update the experimental ``conan new ... -m=v2_cmake`` template to start using the new ``layout()`` basic info. `#9053 <https://github.com/conan-io/conan/pull/9053>`_
- Fix: Do not fail in ``CMakeDeps`` when there are ``build_requires`` with same name as host requires, unless ``build_context_activated`` is enabled for those and a different suffix has not been defined. `#9046 <https://github.com/conan-io/conan/pull/9046>`_
- Fix: When using the new `self.folders.source` (at `layout(self)` method) the sources (from `export`, `export_sources` and `scm`) are copied to the base source folder and not to the `self.folders.source` that is intended to describe where the sources are after fetching them. `#9043 <https://github.com/conan-io/conan/pull/9043>`_ . Docs `here <https://github.com/conan-io/docs/pull/2117>`__
- BugFix: Do not quote all values and allow integer and macro referencing in ``MSBuildToolchain.preprocessor_definitions`` `#9056 <https://github.com/conan-io/conan/pull/9056>`_
- Bugfix: The new generators like `CMakeDeps` and `CMakeToolchain`write the generated files defaulting to the `install folder` if no `self.folders.generators` is specified in the `layout()` method. `#9050 <https://github.com/conan-io/conan/pull/9050>`_
- Bugfix: The `CMakeToolchain` generator now manages correctly a recipe without `arch` declared in an Apple system. `#9045 <https://github.com/conan-io/conan/pull/9045>`_
1.37.0 (31-May-2021)
--------------------
- Feature: Remove ``CMAKE_SKIP_RPATHS`` by default to True in ``CMakeToolchain``, it is not necessary by default, users can opt-in, and new test validates shared libs will work with ``VirtualEnv`` generator ``conanrunenv``. `#9024 <https://github.com/conan-io/conan/pull/9024>`_ . Docs `here <https://github.com/conan-io/docs/pull/2105>`__
- Feature: simplified ``CMakeToolchain`` with only 1 category of blocks, made ``try-compile`` template code as another block, and reordered blocks so relevant flags for try-compile are taken into account. `#9009 <https://github.com/conan-io/conan/pull/9009>`_ . Docs `here <https://github.com/conan-io/docs/pull/2105>`__
- Feature: Add new default `conancenter` remote for `https://center.conan.io` as first in the list. `#8999 <https://github.com/conan-io/conan/pull/8999>`_ . Docs `here <https://github.com/conan-io/docs/pull/2112>`__
- Feature: Implements a new experimental ``conan.tools.google`` Bazel integration with ``BazelDeps``, ``BazelToolchain`` and ``Bazel``. `#8991 <https://github.com/conan-io/conan/pull/8991>`_ . Docs `here <https://github.com/conan-io/docs/pull/2109>`__
- Feature: Introduced new options for the `CMakeDeps` generator allowing to manage `build_requires` even declaring the same package as a `require` and `build_require` avoiding the collision of the `config` cmake files and enabling to specify which `build_modules` should be included (e.g protobuf issue) `#8985 <https://github.com/conan-io/conan/pull/8985>`_ . Docs `here <https://github.com/conan-io/docs/pull/2104>`__
- Feature: Expand user-agent string to include OS info. `#8947 <https://github.com/conan-io/conan/pull/8947>`_
- Feature: Implement ``build_policy=never`` for :command:`conan export-pkg` packages that cannot be rebuilt with ``--build=xxx``. `#8946 <https://github.com/conan-io/conan/pull/8946>`_ . Docs `here <https://github.com/conan-io/docs/pull/2106>`__
- Feature: Define ``[conf]`` for defining the user toolchain for ``CMakeToolchain``, both for injecting a user toolchain in the ``CMakeToolchain`` generated ``conan_toolchain.cmake`` and for completely replacing ``conan_toolchain.cmake``. `#8945 <https://github.com/conan-io/conan/pull/8945>`_ . Docs `here <https://github.com/conan-io/docs/pull/2105>`__
- Feature: add GCC 11 to _settings.yml_. `#8924 <https://github.com/conan-io/conan/pull/8924>`_
- Feature: Add new `tools.rename()` interface. `#8915 <https://github.com/conan-io/conan/pull/8915>`_ . Docs `here <https://github.com/conan-io/docs/pull/2099>`__
- Feature: Update urlib3 Conan dependency setting version `>=1.25.8` to avoid CVE-2020-7212. `#8914 <https://github.com/conan-io/conan/pull/8914>`_
- Feature: Build-requires can define [conf] for its consumers. `#8895 <https://github.com/conan-io/conan/pull/8895>`_ . Docs `here <https://github.com/conan-io/docs/pull/2107>`__
- Feature: support M1 Catalyst. `#8818 <https://github.com/conan-io/conan/pull/8818>`_
- Feature: New ``conan install <ref> --build-require`` and ``conan create <path> --build-require`` (when not using ``test_package``) arguments to explicitly define that the installed or created package has to be a ``build-require``, receiving the build profile instead of the host one. `#8627 <https://github.com/conan-io/conan/pull/8627>`_ . Docs `here <https://github.com/conan-io/docs/pull/2113>`__
- Feature: Introduced the `layout()` method to the recipe to be able to declare the folder structure both for the local development methods (conan source, conan build...) and in the cache. Also, associated to the folders, cppinfo objects to be used in editable packages and file pattern descriptions to enable "auto packaging". `#8554 <https://github.com/conan-io/conan/pull/8554>`_ . Docs `here <https://github.com/conan-io/docs/pull/2092>`__
- Fix: **CMakeDeps** generator: The transitive requirements for a build_require are not included in the `xxx-config.cmake` files generated. `#9015 <https://github.com/conan-io/conan/pull/9015>`_
- Fix: The `CMakeToolchain` now supports Apple M1 cross-building with a profile without environment declared pointing to the system toolchain. `#9011 <https://github.com/conan-io/conan/pull/9011>`_
- Fix: Set `env_info.DYLD_FRAMEWORK_PATH` correctly. `#8984 <https://github.com/conan-io/conan/pull/8984>`_
- Fix: Fix some typos in the code. `#8977 <https://github.com/conan-io/conan/pull/8977>`_
- Fix: Improve error message when a directory doesn't contain a valid repository. `#8956 <https://github.com/conan-io/conan/pull/8956>`_
- Fix: The `build_modules` defined per generator in `cpp_info` now are rendered properly using the `markdown` generator. `#8942 <https://github.com/conan-io/conan/pull/8942>`_
- Fix: Simplify code access to [conf] variables removing attribute based access. `#8901 <https://github.com/conan-io/conan/pull/8901>`_
- Bugfix: Prevent unintended evil insertions into metadata.json resulted in corrupted package and inability to install. `#9022 <https://github.com/conan-io/conan/pull/9022>`_
- Bugfix: Allow ``MSBuildDeps`` to correctly process packages with dots in the package name. `#9012 <https://github.com/conan-io/conan/pull/9012>`_
- Bugfix: Avoid errors because of ``package_id`` mismatch in lockfiles when using ``compatible_packages`` feature. `#9008 <https://github.com/conan-io/conan/pull/9008>`_
- BugFix: Respect order of declared directories when using components. `#8927 <https://github.com/conan-io/conan/pull/8927>`_
- Bugfix: Raise an exception when response header `Content-type` is different than `application/json` or `application/json; charset=utf-8`. `#8912 <https://github.com/conan-io/conan/pull/8912>`_
- Bugfix: Fix exception in CMakeToolchain when settings remove known compilers. `#8900 <https://github.com/conan-io/conan/pull/8900>`_
- Bugfix: Fix current directory definition in ``vcvars`` commands in new toolchains. `#8899 <https://github.com/conan-io/conan/pull/8899>`_
- Bugfix: AptTool: add repo key before running apt-add-repository. `#8861 <https://github.com/conan-io/conan/pull/8861>`_
- BugFix: Prevent evil insertions into metadata.json resulted in corrupted package and inability to install. `#8532 <https://github.com/conan-io/conan/pull/8532>`_
1.36.0 (28-Apr-2021)
--------------------
- Feature: Add support to ``tools.cmake.CMake`` for Ninja toolchain defined with ``CMakeToolchain``. `#8887 <https://github.com/conan-io/conan/pull/8887>`_
- Feature: The `CMakeDeps` generator will print CMake traces with the declared targets. e.g: `Target declared: 'OpenSSL::Crypto'`. `#8843 <https://github.com/conan-io/conan/pull/8843>`_
- Feature: Add clang 12 support. `#8828 <https://github.com/conan-io/conan/pull/8828>`_
- Feature: List tools and core from profile and _global.conf_. `#8821 <https://github.com/conan-io/conan/pull/8821>`_ . Docs `here <https://github.com/conan-io/docs/pull/2077>`__
- Feature: Add cross-building tests for new AutoTools build helper. `#8819 <https://github.com/conan-io/conan/pull/8819>`_
- Feature: ``CMakeToolchain`` generates a ``conanbuild.json`` file with the generator to be used in the ``CMake`` command line later, so it is not necessary to duplicate logic, and is explicit what generator should be used. `#8815 <https://github.com/conan-io/conan/pull/8815>`_ . Docs `here <https://github.com/conan-io/docs/pull/2079>`__
- Feature: ``CMakeToolchain`` learned to build with different toolsets, down to the minor compiler version, for the ``msvc`` compiler. `#8815 <https://github.com/conan-io/conan/pull/8815>`_ . Docs `here <https://github.com/conan-io/docs/pull/2079>`__
- Feature: Validate checksum and retry download for corrupted downloaded cache files. `#8806 <https://github.com/conan-io/conan/pull/8806>`_
- Feature: ``CMakeToolchain`` defining `CMAKE_GENERATOR_TOOLSET` for msvc version different than the default. `#8800 <https://github.com/conan-io/conan/pull/8800>`_
- Feature: Implement ``test_build_require`` in ``test_package/conanfile.py`` recipes, so build_requires can be tested as such. `#8787 <https://github.com/conan-io/conan/pull/8787>`_ . Docs `here <https://github.com/conan-io/docs/pull/2081>`__
- Feature: Make available the full recipe and package reference to consumers via ``.dependencies``. `#8765 <https://github.com/conan-io/conan/pull/8765>`_
- Feature: New ``CMakeToolchain`` customization and extensibility mechanism with blocks of components instead of inheritance. `#8749 <https://github.com/conan-io/conan/pull/8749>`_ . Docs `here <https://github.com/conan-io/docs/pull/2085>`__
- Feature: Add `set_property` and `get_property` to set properties and access them in generators. Can be set only for a specific generator or as a default value for all of them. `#8727 <https://github.com/conan-io/conan/pull/8727>`_ . Docs `here <https://github.com/conan-io/docs/pull/2082>`__
- Feature: Use `set_property` and `get_property` to support custom defined content in `pkg_config` generator. `#8727 <https://github.com/conan-io/conan/pull/8727>`_ . Docs `here <https://github.com/conan-io/docs/pull/2082>`__
- Feature: Add new property names: `cmake_target_name`, `cmake_file_name`, `pkg_config_name` and `cmake_build_modules` that can be used for multiple generators of the same type allowing also an easier migration of `names`, `filenames` and `build_modules` properties to this model. `#8727 <https://github.com/conan-io/conan/pull/8727>`_ . Docs `here <https://github.com/conan-io/docs/pull/2082>`__
- Feature: Skip package when building all package from sources at once using `--build=!<package>` syntax. `#8483 <https://github.com/conan-io/conan/pull/8483>`_ . Docs `here <https://github.com/conan-io/docs/pull/2023>`__
- Feature: ``CMakeToolchain`` will generate ``conanvcvars.bat`` for Ninja builds for ``msvc``. `#8005 <https://github.com/conan-io/conan/pull/8005>`_
- Fix: Remove ``tools.gnu.MakeToolchain``, superseded by ``tools.gnu.AutotoolsToolchain``. `#8880 <https://github.com/conan-io/conan/pull/8880>`_ . Docs `here <https://github.com/conan-io/docs/pull/2084>`__
- Fix: Allow spaces in the path for new environment files and ``conancvvars.bat`` Visual toolchain file. `#8847 <https://github.com/conan-io/conan/pull/8847>`_
- Fix: Return `deprecated` attribute in :command:`conan inspect` command. `#8832 <https://github.com/conan-io/conan/pull/8832>`_
- Fix: Check if Artifactory url for publishing the build_info has `artifactory` string as the service context and remove from the API url if it doesn't. `#8826 <https://github.com/conan-io/conan/pull/8826>`_
- Fix: Recognize ``Ninja Multi-Config`` as a CMake multi-configuration generator. `#8814 <https://github.com/conan-io/conan/pull/8814>`_
- Fix: using `CMAKE_CURRENT_LIST_DIR` in `CMakeToolchain` to locate `CMakeDeps` config files. `#8810 <https://github.com/conan-io/conan/pull/8810>`_
- Fix: `config_install_interval` no longer enter in loop when invalid. `#8769 <https://github.com/conan-io/conan/pull/8769>`_ . Docs `here <https://github.com/conan-io/docs/pull/2067>`__
- Fix: Remove multi-config support for ``CMakeDeps`` generator. `#8767 <https://github.com/conan-io/conan/pull/8767>`_ . Docs `here <https://github.com/conan-io/docs/pull/2083>`__
- Fix: Accept relative profile path when folder is on same tree level. `#8685 <https://github.com/conan-io/conan/pull/8685>`_ . Docs `here <https://github.com/conan-io/docs/pull/2049>`__
- Bugfix: Fixed test_package/conanfile.py using ``build_requires`` for a package belonging to a lockfile. `#8793 <https://github.com/conan-io/conan/pull/8793>`_
1.35.2 (19-Apr-2021)
--------------------
- Bugfix: Revert regression that replaces first ``/`` by ``-`` in ``cpp_info.xxxxlinkflags`` in _CMake_ generators because it can break passing objects and other paths that start with ``/``. `#8812 <https://github.com/conan-io/conan/pull/8812>`_
1.35.1 (13-Apr-2021)
--------------------
- Fix: Avoid breaking users calling forbidden private api ``conanfile.__init__``. `#8746 <https://github.com/conan-io/conan/pull/8746>`_
- Bugfix: Fix opensuse SystemPackageTools incorrectly using apt-get when zypper-aptitude. `#8747 <https://github.com/conan-io/conan/pull/8747>`_
- Bugfix: Fix linker flags in cmake (find_package based) generators. `#8740 <https://github.com/conan-io/conan/pull/8740>`_
- Bugfix: Fixed bug in transitive build_requires of MSBuildDeps. `#8734 <https://github.com/conan-io/conan/pull/8734>`_
1.35.0 (30-Mar-2021)
--------------------
- Feature: ``MSBuildDeps`` generator uses new visitor model and handles conditional requirements correctly. `#8733 <https://github.com/conan-io/conan/pull/8733>`_ . Docs `here <https://github.com/conan-io/docs/pull/2052>`__
- Feature: CMake toolchain supports include_guard() feature `#8728 <https://github.com/conan-io/conan/pull/8728>`_
- Feature: New ``conan lock bundle clean-modified`` command. `#8726 <https://github.com/conan-io/conan/pull/8726>`_ . Docs `here <https://github.com/conan-io/docs/pull/2053>`__
- Feature: Use ``conancvvars.bat`` file for Meson toolchain `#8719 <https://github.com/conan-io/conan/pull/8719>`_
- Feature: Allow arbitrary defines in :command:`conan new` templates. `#8718 <https://github.com/conan-io/conan/pull/8718>`_ . Docs `here <https://github.com/conan-io/docs/pull/2051>`__
- Feature: Automatically handle `CONAN_RUN_TESTS` to avoid extra boilerplate. `#8687 <https://github.com/conan-io/conan/pull/8687>`_ . Docs `here <https://github.com/conan-io/docs/pull/2056>`__
- Feature: More fine-grained control (using [conf]) for build parallelization. `#8665 <https://github.com/conan-io/conan/pull/8665>`_ . Docs `here <https://github.com/conan-io/docs/pull/2061>`__
- Feature: Add support for testing with different tools versions. `#8656 <https://github.com/conan-io/conan/pull/8656>`_
- Feature: Add different CMake versions for testing. `#8656 <https://github.com/conan-io/conan/pull/8656>`_
- Feature: Move the definition of CMakeDeps variables to its own file `#8655 <https://github.com/conan-io/conan/pull/8655>`_ . Docs `here <https://github.com/conan-io/docs/pull/2055>`__
- Feature: Added `conan.tools.files.patch` to apply a single patch (new interface for legacy `conans.tools.patch` function. `#8650 <https://github.com/conan-io/conan/pull/8650>`_ . Docs `here <https://github.com/conan-io/docs/pull/2062>`__
- Feature: Added `conan.tools.files.apply_conandata_patches` to apply patches defined in `conandata.yml`. `#8650 <https://github.com/conan-io/conan/pull/8650>`_ . Docs `here <https://github.com/conan-io/docs/pull/2062>`__
- Feature: Allow integers as ``preprocessor_definitions`` in ``CMakeToolchain``. `#8645 <https://github.com/conan-io/conan/pull/8645>`_
- Feature: New ``Environment`` model for recipes and profiles `#8630 <https://github.com/conan-io/conan/pull/8630>`_ . Docs `here <https://github.com/conan-io/docs/pull/2060>`__
- Feature: Do not remove sh from the path in the new CMake helper. `#8625 <https://github.com/conan-io/conan/pull/8625>`_ . Docs `here <https://github.com/conan-io/docs/pull/2055>`__
- Feature: Allow definition of custom Visual Studio version for msvc compiler in MSBuild helpers. `#8603 <https://github.com/conan-io/conan/pull/8603>`_ . Docs `here <https://github.com/conan-io/docs/pull/2054>`__
- Feature: MSBuildToolchain creates conanvcvars.bat containing vcvars command for command line building. `#8603 <https://github.com/conan-io/conan/pull/8603>`_ . Docs `here <https://github.com/conan-io/docs/pull/2054>`__
- Feature: Set `CMAKE_FIND_PACKAGE_PREFER_CONFIG=ON`. `#8599 <https://github.com/conan-io/conan/pull/8599>`_
- Feature: Include the recipe name when constrained settings prevent install. `#8559 <https://github.com/conan-io/conan/pull/8559>`_ . Docs `here <https://github.com/conan-io/docs/pull/2032>`__
- Feature: Create new conan.tools.files for 2.0. `#8550 <https://github.com/conan-io/conan/pull/8550>`_
- Feature: New AutotoolsDeps, AutotoolsToolchain helpers in conan.tools.gnu `#8457 <https://github.com/conan-io/conan/pull/8457>`_ . Docs `here <https://github.com/conan-io/docs/pull/2057>`__
- Feature: Experimental ``conan lock install`` that can install a lockfile in the cache, all the binaries or only the recipes with ``--recipes``, intended for CI flows. `#8021 <https://github.com/conan-io/conan/pull/8021>`_ . Docs `here <https://github.com/conan-io/docs/pull/2053>`__
- Fix: Fix incorrect output of ``default_user`` and ``default_channel`` in ``export``. `#8732 <https://github.com/conan-io/conan/pull/8732>`_
- Fix: remotes not being loaded for the :command:`conan alias` command, which was preventing :command:`conan alias` from working if python_requires is used. `#8704 <https://github.com/conan-io/conan/pull/8704>`_
- Fix: Improve error message for ``lock create`` providing a path instead of full path with filename. `#8695 <https://github.com/conan-io/conan/pull/8695>`_
- Fix: Rename `tools.microsoft:msbuild_verbosity` to `tools.microsoft.msbuild:verbosity` `#8692 <https://github.com/conan-io/conan/pull/8692>`_ . Docs `here <https://github.com/conan-io/docs/pull/2059>`__
- Fix: Simplifications to ``CMakeDeps`` generator to remove legacy code. `#8666 <https://github.com/conan-io/conan/pull/8666>`_
- Fix: Add dirty management in download cache, so interrupted downloads doesn't need a manual cleaning of such download cache. `#8664 <https://github.com/conan-io/conan/pull/8664>`_
- Fix: Build helper qbs install now installs directly into package_folder. `#8660 <https://github.com/conan-io/conan/pull/8660>`_
- Fix: Allow arbitrary template structure. `#8641 <https://github.com/conan-io/conan/pull/8641>`_
- Fix: Restoring the behavior that `exports` and `exports_sources` were case sensitive by default. `#8585 <https://github.com/conan-io/conan/pull/8585>`_
- Fix: Remove default dummy value for iOS XCode signature. `#8576 <https://github.com/conan-io/conan/pull/8576>`_
- Fix: Do not order Settings lists, so error messages are in declared order. `#8573 <https://github.com/conan-io/conan/pull/8573>`_
- BugFix: Command :command:`conan new` accepts short reference with address sign. `#8721 <https://github.com/conan-io/conan/pull/8721>`_
- Bugfix: Fix profile definitions of env-vars per-package using patterns, not only the package name. `#8688 <https://github.com/conan-io/conan/pull/8688>`_
- Bugfix: Preserve the explicit value `None` for SCM attributes if the default is a different value. `#8622 <https://github.com/conan-io/conan/pull/8622>`_
- Bugfix: Properly detect Amazon Linux 2 distro. `#8612 <https://github.com/conan-io/conan/pull/8612>`_
- Bugfix: Fix config install not working when .git* folder is in the path. `#8605 <https://github.com/conan-io/conan/pull/8605>`_
- Bugfix: Fix: Transitive python requires not working with the new syntax. `#8604 <https://github.com/conan-io/conan/pull/8604>`_
1.34.1 (10-Mar-2021)
--------------------
- Fix: Allow ``cmake_find_package_multi`` and ``CMakeDeps`` to be aliases for ``cpp_info.names`` and ``cpp_info.filenames`` to allow easy migration. `#8568 <https://github.com/conan-io/conan/pull/8568>`_
- Bugfix: Restoring the behavior that `exports` and `exports_sources` were case sensitive by default. `#8621 <https://github.com/conan-io/conan/pull/8621>`_
- BugFix: Solved issues with already existing packages appearing in ``conan lock bundle build-order``. `#8579 <https://github.com/conan-io/conan/pull/8579>`_
1.34.0 (26-Feb-2021)
--------------------
- Feature: Add `path` and `repository` properties to conan_build_info v2. `#8436 <https://github.com/conan-io/conan/pull/8436>`_
- Feature: Setting _conan_ as name for `buildAgent` in `conan_build_info`. `#8433 <https://github.com/conan-io/conan/pull/8433>`_
- Feature: Using actual conan version in version for `buildAgent` in `conan_build_info` instead of 1.X. `#8433 <https://github.com/conan-io/conan/pull/8433>`_
- Feature: Add `type` _conan_ to Conan build info modules. `#8433 <https://github.com/conan-io/conan/pull/8433>`_
- Feature: Add ``scm`` output in :command:`conan info` command. `#8380 <https://github.com/conan-io/conan/pull/8380>`_
- Feature: Forked ``cmake_find_package_multi`` into ``CMakeDeps``, to allow evolution without breaking. `#8371 <https://github.com/conan-io/conan/pull/8371>`_
- Feature: Use built-in retries in requests lib to retry http requests with _5xx_ response code. `#8352 <https://github.com/conan-io/conan/pull/8352>`_
- Feature: New lockfile "bundle" feature that can integrate different lockfiles for different configurations and different graphs into a single lockfile bundle that can be used to vastly optimize CI (specially for multiple products), implementing bundle build-order and bundle update operations. `#8344 <https://github.com/conan-io/conan/pull/8344>`_ . Docs `here <https://github.com/conan-io/docs/pull/2030>`__