Mark fdc3-web-impl as NOT for production use and encourage a separate implementation in fdc3-sail
- Dominant language
- TypeScript
- Stars
- 270
- Forks
- 193
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 36
Description
A number of FDC3 participants have commented indicating that they are basing new FDC3 Desktop Agent implementations on the FDC3 (for Web) reference implementation at /toolbox/fdc3-for-web/fdc3-web-impl. However, there are also proposals to refactor and improve it in a way that would be breaking for other depending on it (e.g. #1696).
The consensus of the maintainers is that primary purpose of /toolbox/fdc3-for-web/fdc3-web-impl is to:
- Provide a reference implementation to:
- Clarify implementation of the standard
- Implement tests of the 'client-side' code in FDC3 (the getAgent() implementation in /packages/fdc3-get-agent and /packages/fdc3-agent-proxy
...rather than to provide an implementation that other Desktop Agent implementors can depend on.
Hence, the maintainers propose to mark this package as NOT for production use and to clearly indicate that it will not follow semantic versioning as its implementation evolves or improves.
Instead we propose to encourage the maintainers of the fdc3-sail project (https://github.com/finos/FDC3-Sail) to break their dependency on this project (potentially copying whatever is needed from this implementation into that project and to separately public a 'production ready' package or packages that could be used by others to implement a web-based FDC3 Desktop Agent.
n.b. The current FDC3-Sail version that uses fdc3-web-impl is currently marked as NOT for production use:
> ### Status / Disclaimer
> FDC3 Sail is based on the newly-approved FDC3 For-The-Web standard. It is currently in development and is definitely not yet ready for production use. Please help us advance progress by raising issues as you find them. Contributions welcome - see below.
Which would need to change - at least for published implementation packages (if not the whole UI of the implementation)
Contributor guide
Research direction
Start by inspecting /toolbox/fdc3-for-web/fdc3-web-impl and the published implementation packages, then review how FDC3-Sail states its production disclaimer. Identify the package metadata or user-facing UI that needs the warning; done means the relevant published packages clearly say they are not for production use and do not promise semantic-version compatibility.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100