From 43a0e0bf251f982a3bc69e275cdcb3e15a5e71fc Mon Sep 17 00:00:00 2001 From: Merlin Beutlberger Date: Thu, 16 Nov 2023 17:27:48 +0100 Subject: [PATCH] Update chapters with implementation status Making this PR ready to be merged --- rfcs/0012-UI5-Tooling-Extension-API-3.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/rfcs/0012-UI5-Tooling-Extension-API-3.md b/rfcs/0012-UI5-Tooling-Extension-API-3.md index 89c8314c5e..46e225ce79 100644 --- a/rfcs/0012-UI5-Tooling-Extension-API-3.md +++ b/rfcs/0012-UI5-Tooling-Extension-API-3.md @@ -78,6 +78,8 @@ For mode details, see also the [Migrate to v3](https://sap.github.io/ui5-tooling ### 1. Dependencies to UI5 Tooling Modules +✅ This has been realized with [UI5 Tooling v3](https://sap.github.io/ui5-tooling/stable/updates/migrate-v3/) + #### Description It is common for extensions to require UI5 Tooling modules like `@ui5/fs` or `@ui5/logger`. For example to create [`Resource`](https://sap.github.io/ui5-tooling/api/module-@ui5_fs.Resource.html) entities, or to log messages to the console. @@ -141,6 +143,8 @@ const renderMarkdown = require("./renderMarkdown"); ### 2. Access to Project Information +✅ This has been realized with [UI5 Tooling v3](https://sap.github.io/ui5-tooling/stable/updates/migrate-v3/) + #### Description Extensions can not access information about the current project directly. Except for what is provided via the `options` argument (namely `projectName`and `projectNamespace`) or in the extension's configuration. @@ -191,6 +195,8 @@ module.exports = async function({workspace, dependencies, taskUtil, options}) { ### 3. Tasks Requiring Dependencies +✅ This has been realized with [UI5 Tooling v3](https://sap.github.io/ui5-tooling/stable/updates/migrate-v3/) + #### Description With UI5 Tooling v3, tasks can rely on the fact that the resources provided by dependencies are always built. With UI5 Tooling v2, this was only the fact if the build command specified dependencies to be built (e.g. `ui5 build --all`). @@ -239,6 +245,8 @@ module.exports.determineRequiredDependencies = async function({availableDependen ### 4. Middleware Serving Resources +**NOTE: The concept described in this chapter has not been implemented with UI5 Tooling v3. It might become part of a future RFC though** + #### Description Custom middleware that would like to respond with an `@ui5/fs/Resource` needs to implement a lot of common logic in order to properly do that. I.e. the correct content type and E-Tag headers need to be set. @@ -275,6 +283,8 @@ module.exports = function({resources, middlewareUtil, options}) { ### 5. Scheduling of Extension Executions +**NOTE: The concept described in this chapter has not been implemented with UI5 Tooling v3. It might become part of a future RFC though** + #### Description Provide a better way for extensions to define a time of execution. Remove the implicit dependency on standard or custom tasks/middleware for the execution order, or for being executed at all. @@ -336,6 +346,8 @@ server: ### 6. Restrictions for Project and Extension Names +✅ This has been realized with [UI5 Tooling v3](https://sap.github.io/ui5-tooling/stable/updates/migrate-v3/) + #### Description Project- and Extension-names are currently unrestricted. Some boundaries should be applied to align names in general, and to ensure future compatibility. @@ -403,6 +415,8 @@ In the future, similar restrictions should be implemented for other configuratio ### 7. Provide Extension Name *(minor)* +✅ This has been realized with [UI5 Tooling v3](https://sap.github.io/ui5-tooling/stable/updates/migrate-v3/) + #### Description If multiple extension definitions share the same implementation, it would be beneficial to have the configured name available at runtime.