Prepare for new project metadata format in kde-build-metadata.
With this change kdesrc-build
should now be forwards-compatible with new metadata as proposed by the updater/conversion tool in: https://cgit.kde.org/sysadmin/repo-metadata.git/commit/?id=8a1fcabf78377402ccf009247ec89dd31672c7a9
For the most part it should be straightforward. In order to validate that the new work-around for the potentially missing type
field is valid I ran the following tests in the root of my local clone of the sysadmin/repo-metadata
repository:
testing for current metadata types that are not 'project' or 'module'
find -type f -name "*.yaml" -exec grep type {} \+ |egrep -v "type: project|module"
Resulted in component
type only:
./projects/books/metadata.yaml:type: component
./projects/calligra/metadata.yaml:type: component
./projects/community/metadata.yaml:type: component
./projects/extragear/metadata.yaml:type: component
./projects/frameworks/karchive/metadata.yaml:description: Qt 5 addon providing access to numerous types of archives
./projects/frameworks/metadata.yaml:type: component
./projects/historical/metadata.yaml:type: component
./projects/kde-build-metadata/metadata.yaml:type: component
./projects/kde/kdeaccessibility/kmouth/metadata.yaml:description: A type-and-say front end for speech synthesizers.
./projects/kde/kdeutils/kdf/metadata.yaml: type and mount point.
./projects/kde/metadata.yaml:type: component
./projects/kdereview/metadata.yaml:type: component
./projects/kdesupport/metadata.yaml:type: component
./projects/others/metadata.yaml:type: component
./projects/playground/base/publictransport/metadata.yaml: * *icons:* Vehicle type icons
./projects/playground/metadata.yaml:type: component
./projects/repo-management/metadata.yaml:type: component
./projects/sysadmin/metadata.yaml:type: component
./projects/unmaintained/koffice/metadata.yaml: turned into many exciting application types. For example a music editor or a map-printing
./projects/unmaintained/metadata.yaml:type: component
./projects/websites/metadata.yaml:type: component
repoactive
/hasrepo
properties on component
type metadata:
testing for find -type f -name "*.yaml" -exec grep type {} \+ |grep "type: component" |sed 's/:type: component//' |xargs grep repoactive
find -type f -name "*.yaml" -exec grep type {} \+ |grep "type: component" |sed 's/:type: component//' |xargs grep hasrepo
Yields:
./projects/books/metadata.yaml:repoactive: false
./projects/calligra/metadata.yaml:repoactive: false
./projects/community/metadata.yaml:repoactive: false
./projects/extragear/metadata.yaml:repoactive: false
./projects/frameworks/metadata.yaml:repoactive: false
./projects/historical/metadata.yaml:repoactive: false
./projects/kde-build-metadata/metadata.yaml:repoactive: true
./projects/kde/metadata.yaml:repoactive: false
./projects/kdereview/metadata.yaml:repoactive: false
./projects/kdesupport/metadata.yaml:repoactive: false
./projects/others/metadata.yaml:repoactive: false
./projects/playground/metadata.yaml:repoactive: false
./projects/repo-management/metadata.yaml:repoactive: true
./projects/sysadmin/metadata.yaml:repoactive: false
./projects/unmaintained/metadata.yaml:repoactive: false
./projects/websites/metadata.yaml:repoactive: false
And:
./projects/books/metadata.yaml:repoactive: false
./projects/calligra/metadata.yaml:repoactive: false
./projects/community/metadata.yaml:repoactive: false
./projects/extragear/metadata.yaml:repoactive: false
./projects/frameworks/metadata.yaml:repoactive: false
./projects/historical/metadata.yaml:repoactive: false
./projects/kde-build-metadata/metadata.yaml:repoactive: true
./projects/kde/metadata.yaml:repoactive: false
./projects/kdereview/metadata.yaml:repoactive: false
./projects/kdesupport/metadata.yaml:repoactive: false
./projects/others/metadata.yaml:repoactive: false
./projects/playground/metadata.yaml:repoactive: false
./projects/repo-management/metadata.yaml:repoactive: true
./projects/sysadmin/metadata.yaml:repoactive: false
./projects/unmaintained/metadata.yaml:repoactive: false
./projects/websites/metadata.yaml:repoactive: false
So there are only two modules that need to blacklisted to recover the previous filter on type
: kde-build-metadata
and repo-management
.
Edited by Johan Ouwerkerk