-
Notifications
You must be signed in to change notification settings - Fork 521
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Switch extension index entry format from "s4ext" to "json" (#7629)
* ENH: De-duplicate setting of extension metadata Anticipating the simplification of the metadata used to describe an extension Simplifies handling of metadata catalog entry, this removes the parsing and handling of metadata already defined in the extension CMakeLists.txt by the extension index build-system. The following metadata values are now extracted from the `<extensionname>.s4ext` file locally generated in the extension build tree: - "category" - "contributors" - "enabled" - "depends" (runtime dependencies) - "description" - "iconurl" - "homepage" - "screenshots" The only metadata values propagated from the Slicer/ExtensionsIndex files are the following: - "scm", "scmurl" and "scmrevision" - "depends" (built-time dependencies) - "build_subdirectory" The extension name is still derived from the catalog entry filename. * ENH: Switch extension index entry format from "s4ext" to "json" This commit implements changes to the Extensions build-system, transitioning from `.s4ext` files to `.json` files for extension index entries. Additionally, it updates the ExtensionWizard and module templates to reflect this change and supports contributing `.json` files to the ExtensionsIndex. As the category is now expected to be defined in the extension catalog entry file, the support for setting the "Category" directly from the ExtensionWizard UI has been removed. While a .s4ext file is still generated in the built-tree and included in the extension package, this is considered an implementation detail to be addressed in subsequent commits. The motivations behind these changes include: * Eliminate redundant and unused information from the "description" file. * Simplify programmatic parsing of the "description" files * Decouple the metadata organized in the extension `CMakeLists.txt` from the ones organized in this repository and used to drive the build of extensions. * Enable Slicer maintainers to define and update the extension "category" and "enabled" metadata independently of the upstream extension sources. * ENH: Rename catalog entry metadata from "depends" to "build_dependencies" * ENH: Rename catalog entry "scm" metadata to be consistently cased Co-authored-by: Andras Lasso <lasso@queensu.ca> * ENH: Add extension catalog entry file schema Co-authored-by: Andras Lasso <lasso@queensu.ca> * ENH: Support specifying extension description metadata with newlines * ENH: Support specifying screenshot url extension metadata as string or list --------- Co-authored-by: Andras Lasso <lasso@queensu.ca>
- Loading branch information
Showing
37 changed files
with
504 additions
and
436 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
{ | ||
"$schema": "https://raw.githubusercontent.com/Slicer/Slicer/main/Schemas/slicer-extension-catalog-item-schema-v1.0.0.json#", | ||
"build_dependencies": [], | ||
"build_subdirectory": ".", | ||
"category": "Examples", | ||
"scm_type": "local", | ||
"scm_revision": "", | ||
"scm_url": "Testing/CLIExtensionTemplate" | ||
} |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.