cloudevents / spec

CloudEvents Specification
https://cloudevents.io
Apache License 2.0
5.1k stars 586 forks source link

Add CloudEvents extension for deprecated events #1307

Closed vandewillysilva closed 2 months ago

vandewillysilva commented 3 months ago

Introduced the deprecation attribute to indicate when an event type is deprecated, and added the sunset attribute to specify the date and time when the event will become unsupported. This extension provides clear guidelines and examples for implementing these attributes, aiming to improve lifecycle management and ensure better communication with consumers.

Fannon commented 3 months ago

@vandewillysilva : Sorry, I didn't have time to look deeper into it, but just wanted to drop some links:

Here is a RFC for sunset as a header: https://datatracker.ietf.org/doc/html/rfc8594

At my company, SAP we have also standardized the same attributes as you propose here. In case you want to have a look, they're documented in the Open Resource Discovery specification, here: https://sap.github.io/open-resource-discovery/spec-v1/interfaces/document#event-resource_releasestatus

In particular, check releaseStatus (has deprecated as one value), deprecationDate, sunsetDate, successors.

Also, we noticed that deprecating a resource does not necessarily have to imply a sunset. Of course you have to deprecate first, and sometimes you already plan the sunset when you do. But sometimes, you just created a successor resource and want just to indicate that the old resource is deprecated and the newer should be used.

vandewillysilva commented 3 months ago

@vandewillysilva : Sorry, I didn't have time to look deeper into it, but just wanted to drop some links:

Here is a RFC for sunset as a header: https://datatracker.ietf.org/doc/html/rfc8594

At my company, SAP we have also standardized the same attributes as you propose here. In case you want to have a look, they're documented in the Open Resource Discovery specification, here: https://sap.github.io/open-resource-discovery/spec-v1/interfaces/document#event-resource_releasestatus

In particular, check releaseStatus (has deprecated as one value), deprecationDate, sunsetDate, successors.

Also, we noticed that deprecating a resource does not necessarily have to imply a sunset. Of course you have to deprecate first, and sometimes you already plan the sunset when you do. But sometimes, you just created a successor resource and want just to indicate that the old resource is deprecated and the newer should be used.

@Fannon thanks for the links and insights. It's great to see that we're aligned on similar attributes. :)

santhoshhpe commented 3 months ago

A must have feature

vandewillysilva commented 3 months ago

@duglin Do you think it’s a good idea to proceed with this deprecation extension proposal? Let me know if there’s any other work needed or if you have any additional feedback.

duglin commented 3 months ago

@duglin Do you think it’s a good idea to proceed with this deprecation extension proposal? Let me know if there’s any other work needed or if you have any additional feedback.

Yup - it's on the agenda for tomorrow's call. Will you be on the call? Not a requirement but it would be nice :-) https://docs.google.com/document/d/1OVF68rpuPK5shIHILK9JOqlZBbfe91RNzQ7u_P7YCDE/edit#heading=h.6xidlvhv1goi

vandewillysilva commented 3 months ago

@duglin Do you think it’s a good idea to proceed with this deprecation extension proposal? Let me know if there’s any other work needed or if you have any additional feedback.

Yup - it's on the agenda for tomorrow's call. Will you be on the call? Not a requirement but it would be nice :-) https://docs.google.com/document/d/1OVF68rpuPK5shIHILK9JOqlZBbfe91RNzQ7u_P7YCDE/edit#heading=h.6xidlvhv1goi

I have a conflict, but I'll try to join. I can't guarantee I'll make it.

vandewillysilva commented 3 months ago

PR is failing due to broken links in avro spec. This PR #1309 fixes the issue.

vandewillysilva commented 3 months ago

@duglin I went over today's recording and made the changes related to the deprecated field. Please take a look at it.

duglin commented 2 months ago

@vandewillysilva just one minor tweak and then we can merge

vandewillysilva commented 2 months ago

@vandewillysilva just one minor tweak and then we can merge

Good catch! Fixed.

duglin commented 2 months ago

Approved on the 8/22 call. Thanks @vandewillysilva