-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deprecate use of the string name
field in favour of AppMetadata
#506
Comments
@pbaize I've raised this issue in response to your recent comments on this topic + my own feelings on the inelegance of the name field (when AppD supports multiple apps with the same name). Hence, your input would be appreciated. |
I'm in full agreement here. I'd even go as far as asking whether we should release one more 1.x version for deprecations. |
As per comment in discussion #678: The proposed changes are:
interface AppMetadata {
name: string;
appId?: string;
version?: string;
title?: string;
... etc.
} changes to: interface AppMetadata {
appId: string;
name?: string;
version?: string;
title?: string;
... etc.
}
interface DesktopAgent {
// apps
open(app: TargetApp, context?: Context): Promise<void>;
...
// intents
...
raiseIntent(intent: string, context: Context, app?: TargetApp): Promise<IntentResolution>;
raiseIntentForContext(context: Context, app?: TargetApp): Promise<IntentResolution>;
...
} changes to: interface DesktopAgent {
// apps
open(app: AppMetadata, context?: Context): Promise<void>;
...
// intents
...
raiseIntent(intent: string, context: Context, app?: AppMetadata): Promise<IntentResolution>;
raiseIntentForContext(context: Context, app?: AppMetadata): Promise<IntentResolution>;
...
//deprecated
open(name: String, context?: Context): Promise<void>;
raiseIntent(intent: string, context: Context, name?: String): Promise<IntentResolution>;
raiseIntentForContext(context: Context, name?: String): Promise<IntentResolution>;
} |
Per today's discussion, I'd like to suggest that we break AppMetadata down:
This then allows inbound function signatures to accept AppIdentifier while outbound can deliver AppMetadata - but the AppMetadata can still be passed around the way Pierre had originally suggested. |
Enhancement Request
In FDC3 1.2 we introduced the
TargetApp
type:to help us transition from using the string
name
field in several places (intent resolutions, targeted raisedIntents etc.) to using theAppMetadata
type. Its also been suggested that we should be encouraging users of the API to use the fullAppMetadata
Object returned by another call (e.g.findIntent
,raiseIntent
'sIntentResolution
).Should we:
name
field aloneAppMetadata
rather thanname
(e.g. inIntentResolution
'ssource
field via the application if the SHOULD keyword in the spec)AppMetadata
objects in the spec and documentation.n.b.
name
was not deprecated whenTargetApp
/AppMetadata
use was introduced - that should happen before its removed, despite the fact that our next version is a major release.The text was updated successfully, but these errors were encountered: