finos / finos/FDC3

Mark fdc3-web-impl as NOT for production use and encourage a separate implementation in fdc3-sail

Open
#1,718 0 comments 0 reactions 0 assignees View on GitHub
enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.