[ANNOUNCE] CMake 3.29.5 available for download

2024-06-07 Thread John Parent
We are pleased to announce that CMake 3.29.5 is now available for download.

Please use the latest release from our download page:
  https://cmake.org/download/

See also the release notes:
  https://cmake.org/cmake/help/latest/release/3.29.html

and release milestone:
  https://gitlab.kitware.com/cmake/cmake/-/milestones/152

Thanks for your support!


Changes made since CMake 3.29.4:

Brad King (2):
  CPack/WiX: Restore default (missing) InstallScope from 3.28 and lower
  CMake 3.29.5

Joan Bruguera Micó (1):
  ctest: Set close-on-exec for jobserver FIFO


[ANNOUNCE] CMake 3.30.0-rc1 is ready for testing

2024-06-07 Thread John Parent
I am proud to announce the first CMake 3.30 release candidate.
  https://cmake.org/download/

Documentation is available at:
  https://cmake.org/cmake/help/v3.30

Release notes appear below and are also published at
  https://cmake.org/cmake/help/v3.30/release/3.30.html

Release milestone is available at:
  https://gitlab.kitware.com/cmake/cmake/-/milestones/142

Some of the most significant changes in CMake 3.30 are:

* "cmake-presets(7)" files now support schema version "9". "include"
  fields now expand all macros except "$env{}" and preset-specific
  macros, i.e., those derived from the fields inside a preset's
  definition.

* The "Compile Features" functionality now implements support for the
  "cxx_std_26" and "cuda_std_26" meta-features to indicate that the
  compiler mode must be at least C++26. These meta-features were first
  documented by CMake 3.25, but were not fully implemented.

* The "CMAKE__STANDARD_LATEST" variable was added to describe
  the latest "" language standard CMake supports for the
  selected compiler.

* The "CMAKE_TLS_VERSION" variable and "CMAKE_TLS_VERSION" environment
  variable were added to specify a default minimum TLS version for
  connections to "https://"; URLs by the "file(DOWNLOAD)" and
  "file(UPLOAD)" commands.

* The "GENERATED" source file property is now visible in all
  directories.  See policy "CMP0163".  Policy "CMP0118"'s
  documentation has been revised to describe its actual effects.

* The "FindPython", "FindPython2", and "FindPython3" modules, on
  Windows, now offer better support for the Python debug variant.

* The "TARGET_PROPERTY" generator expression learned to evaluate
  custom transitive properties defined by new
  "TRANSITIVE_COMPILE_PROPERTIES" and "TRANSITIVE_LINK_PROPERTIES"
  target properties.

* The "CPack WIX Generator" gained support for WiX Toolset v4. See the
  "CPACK_WIX_VERSION" variable.

* The "FindBoost" module has been removed by policy "CMP0167". Port
  projects to upstream Boost's "BoostConfig.cmake" package
  configuration file, for which "find_package(Boost)" now searches.

* The precompiled Windows ".msi" installers provided on cmake.org,
  when performing a fresh installation, now modify the system-wide
  "PATH" by default.



CMake 3.30 Release Notes


Changes made since CMake 3.29 include the following.


New Features



Presets
---

* "cmake-presets(7)" files now support schema version "9". "include"
  fields now expand all macros except "$env{}" and preset-specific
  macros, i.e., those derived from the fields inside a preset's
  definition.


File-Based API
--

* The "cmake-file-api(7)" "cmakeFiles" version 1 object's "version"
  field has been updated to 1.1.  It gained a "globsDependent" field
  to report "file(GLOB)" calls using "CONFIGURE_DEPENDS".


Generators
--

* Visual Studio Generators now add "UseDebugLibraries" indicators to
  ".vcxproj" files to denote which configurations are debug
  configurations. See policy "CMP0162".


Languages
-

* The "Compile Features" functionality now implements support for the
  "cxx_std_26" and "cuda_std_26" meta-features to indicate that the
  compiler mode must be at least C++26. These meta-features were first
  documented by CMake 3.25, but were not fully implemented.


Commands


* The "add_library()" command, on platforms that do not support shared
  libraries, now rejects creation of shared libraries instead of
  automatically converting them to static libraries.  See policy
  "CMP0164".

* The "enable_language()" command now fails with an error if it is
  called before the first "project()" call. See policy "CMP0165".

* The "file(DOWNLOAD)" and "file(UPLOAD)" commands gained a
  "TLS_VERSION " option to specify the minimum TLS version for
  connections to "https://"; URLs.


Variables
-

* The "CMAKE__STANDARD_LATEST" variable was added to describe
  the latest "" language standard CMake supports for the
  selected compiler.

* The "CMAKE_TLS_VERIFY" environment variable was added as a fallback
  to the existing "CMAKE_TLS_VERIFY" variable.  It specifies whether
  to verify the server certificate for "https://"; URLs by default.

* The "CMAKE_TLS_VERSION" variable and "CMAKE_TLS_VERSION" environment
  variable were added to specify a default minimum TLS version for
  connections to "https://"; URLs by the "file(DOWNLOAD)" and
  "file(UPLOAD)" commands.

* The "CMAKE_VS_USE_DEBUG_LIBRARIES" variable and corresponding
  "VS_USE_DEBUG_LIBRARIES" target property were added to explicitly
  control "UseDebugLibraries" indicators in ".vcxproj" files.


Properties
--

* The "GENERATED" source file property is now visible in all
  directories.  See policy "CMP0163".  Policy "CMP0118"'s
  documentation has been revised to describe its actual effects.

* The "PROPAGATE_TOP_LEVEL_INCLUDES_TO_TRY_COMPILE" global property
  can be used to propagate "CMAKE_PROJECT_TOP_LEVEL_INCLUDES" into
 

Re: KDE Gear projects with failing CI (master) (4 June 2024)

2024-06-07 Thread Nate Graham

+cc Matthias


On 6/5/24 1:16 PM, Ingo Klöcker wrote:

On Mittwoch, 5. Juni 2024 20:24:52 CEST Ben Cooksley wrote:

On Wed, Jun 5, 2024 at 7:26 PM Ingo Klöcker  wrote:

In my opinion, the ID of massif-visualizer should be changed back to
org.kde.massif-visualizer. Or massif-visualizer needs to forgo it's hyphen
in
favor of an underscore everywhere to please the appstream folks. For
details,
see https://invent.kde.org/websites/apps-kde-org/-/issues/35


We've a number of projects that use dashes in their name, so not sure i'm
entirely pleased with the idea that we should be abandoning them.
Do we know how the Appstream folks came to their decision and on what
basis/authority they made that? They have a terrible disregard for the
downstream impact of their decisions...


https://github.com/ximion/appstream/issues/162
Interestingly, this issue was filed by our own Nate.


In my defense, this was almost seven years ago, and I was barely a KDE 
person back then!


Nate


Re: KDE Gear projects with failing CI (master) (4 June 2024)

2024-06-07 Thread Ben Cooksley
On Sat, Jun 8, 2024 at 11:07 AM Nate Graham  wrote:

> +cc Matthias
>
>
> On 6/5/24 1:16 PM, Ingo Klöcker wrote:
> > On Mittwoch, 5. Juni 2024 20:24:52 CEST Ben Cooksley wrote:
> >> On Wed, Jun 5, 2024 at 7:26 PM Ingo Klöcker  wrote:
> >>> In my opinion, the ID of massif-visualizer should be changed back to
> >>> org.kde.massif-visualizer. Or massif-visualizer needs to forgo it's
> hyphen
> >>> in
> >>> favor of an underscore everywhere to please the appstream folks. For
> >>> details,
> >>> see https://invent.kde.org/websites/apps-kde-org/-/issues/35
> >>
> >> We've a number of projects that use dashes in their name, so not sure
> i'm
> >> entirely pleased with the idea that we should be abandoning them.
> >> Do we know how the Appstream folks came to their decision and on what
> >> basis/authority they made that? They have a terrible disregard for the
> >> downstream impact of their decisions...
> >
> > https://github.com/ximion/appstream/issues/162
> > Interestingly, this issue was filed by our own Nate.
>
> In my defense, this was almost seven years ago, and I was barely a KDE
> person back then!
>

I would also say that the change request has been misinterpreted by the
Appstream folks.

You highlighted that dashes within that issue the domain part aren't
allowed by the D-Bus specification, but are allowed in the
application/sub-domain part.
Based on that an application D-Bus name such as org.kde.massif-visualiser
is perfectly fine - yet appstream disallows it.

I would say that is a bug on the part of appstream and the true fix here is
for appstream to allow dashes within the final part - then we can put
massif-visualiser and kwalletmanager back to the names they should and our
issues with apps.kde.org will go away.


>
> Nate
>

Cheers,
Ben