Skip to content

Commit

Permalink
Update chapters with implementation status
Browse files Browse the repository at this point in the history
Making this PR ready to be merged
  • Loading branch information
RandomByte committed Nov 16, 2023
1 parent 6ee70e3 commit 43a0e0b
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions rfcs/0012-UI5-Tooling-Extension-API-3.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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`).
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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.
Expand Down

0 comments on commit 43a0e0b

Please sign in to comment.