Skip to content
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

Deprecating an entire object #617

Open
felixdesouza opened this issue Jun 5, 2020 · 4 comments
Open

Deprecating an entire object #617

felixdesouza opened this issue Jun 5, 2020 · 4 comments

Comments

@felixdesouza
Copy link

Motivation

We have deprecation of fields, enums and endpoints. It feels like a natural extension to deprecate entire objects that shouldn't be used anymore. Can we extend the deprecation syntax to objects too?

Proposal

That is:

Metadata:
  deprecated: Use MetadataV2 instead etc.
  docs: Bla
  fields: 
    field1: string
    field2: string

Could go even further and add deprecation notices to the methods of deprecated objects, I don't think it comes up otherwise. But at the very least it'd be nice to have it baked in similar to fields, enums and endpoints.

I can throw something up if it's a reasonable proposal?

@bmarcaur
Copy link
Member

+1 From much of the Gotham ecosystem, we cycle and deprecate objects fairly frequently and this would be a nice QOL improvement.

@rhysbrettbowen
Copy link

Also services

@jamesross3
Copy link

Perhaps scope bloat, but making conjure server implementations consult the deprecated field for endpoints when serving requests and potentially adding an informative response header (smt like Conjure-Deprecated-Endpoint: true) could aid deprecation/removal efforts by unblocking telemetry for deprecated usage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants