Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
dret committed May 7, 2018
1 parent c3adcf7 commit 8ef1dd5
Show file tree
Hide file tree
Showing 3 changed files with 82 additions and 67 deletions.
9 changes: 9 additions & 0 deletions sunset-header/draft-wilde-sunset-header-05.html
Original file line number Diff line number Diff line change
Expand Up @@ -618,6 +618,15 @@ <h1 id="rfc.section.7">
<li>Description: Create shortcuts for backend developers to use Sunset (The Rails Way).</li>
</ul>

<p> </p>

<ul class="empty">
<li>Organization: Tyk Technologies</li>
<li>Name: https://github.com/TykTechnologies/tyk</li>
<li>Licensing: Mozilla Public License Version 2.0</li>
<li>Description: Configurable HTTP header for API version expiry. (<a href="https://github.com/TykTechnologies/tyk/issues/1626">GitHub issue</a>)</li>
</ul>

<p> </p>
<h1 id="rfc.section.8">
<a href="#rfc.section.8">8.</a> <a href="#security-considerations" id="security-considerations">Security Considerations</a>
Expand Down
126 changes: 63 additions & 63 deletions sunset-header/draft-wilde-sunset-header-05.txt
Original file line number Diff line number Diff line change
Expand Up @@ -75,11 +75,11 @@ Table of Contents
1.2. Migration . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Retention . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4. Deprecation . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. The Sunset HTTP Response Header . . . . . . . . . . . . . . . 4
4. Sunset and Caching . . . . . . . . . . . . . . . . . . . . . 4
4. Sunset and Caching . . . . . . . . . . . . . . . . . . . . . 5
5. The Sunset Link Relation Type . . . . . . . . . . . . . . . . 5
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
6.1. The Sunset Response Header . . . . . . . . . . . . . . . 6
6.2. The Sunset Link Relation Type . . . . . . . . . . . . . . 6
7. Implementation Status . . . . . . . . . . . . . . . . . . . . 6
Expand All @@ -88,6 +88,7 @@ Table of Contents
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 8
10.1. Normative References . . . . . . . . . . . . . . . . . . 8
10.2. Informative References . . . . . . . . . . . . . . . . . 9
10.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Appendix A. Acknowledgements . . . . . . . . . . . . . . . . . . 9
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9

Expand All @@ -105,7 +106,6 @@ Table of Contents

This specification also defines a link relation type "sunset" that
allows to provide information about a resource's or a service's
sunset policy, and/or upcoming sunsets, and/or possible mitigation



Expand All @@ -114,6 +114,7 @@ Wilde Expires November 8, 2018 [Page 2]
Internet-Draft Sunset Header May 2018


sunset policy, and/or upcoming sunsets, and/or possible mitigation
scenarios for resource/service users. This specification does not
place any constraints on the nature of the linked resource, which can
be targeted at humans, at machines, or a combination of both.
Expand Down Expand Up @@ -157,11 +158,10 @@ Internet-Draft Sunset Header May 2018
of their deprecation known. This allows consumers of the API to be
notified of the upcoming deprecation.

2. Terminology

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].






Expand All @@ -170,6 +170,12 @@ Wilde Expires November 8, 2018 [Page 3]
Internet-Draft Sunset Header May 2018


2. Terminology

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].

3. The Sunset HTTP Response Header

The Sunset HTTP response header field allows a server to communicate
Expand Down Expand Up @@ -209,14 +215,8 @@ Internet-Draft Sunset Header May 2018
as usual and simply may experience the resource becoming unavailable
without getting any notification about it beforehand.

4. Sunset and Caching

It should be noted that the Sunset HTTP response header field serves
a different purpose than HTTP caching [RFC7234]. HTTP caching is
concerned with making resource representations (i.e., represented
resource state) reusable, so that they can be more efficiently used.
This is achieved by using header fields that allow clients and
intermediaries to better understand when a resource representation




Expand All @@ -226,6 +226,14 @@ Wilde Expires November 8, 2018 [Page 4]
Internet-Draft Sunset Header May 2018


4. Sunset and Caching

It should be noted that the Sunset HTTP response header field serves
a different purpose than HTTP caching [RFC7234]. HTTP caching is
concerned with making resource representations (i.e., represented
resource state) reusable, so that they can be more efficiently used.
This is achieved by using header fields that allow clients and
intermediaries to better understand when a resource representation
can be reused, or when resource state (and thus the representation)
may have changed.

Expand Down Expand Up @@ -265,14 +273,6 @@ Internet-Draft Sunset Header May 2018
using the sunset link relation type. This specification places no
constraints on the scope or the type of the linked resource. The
scope can be for a resource or for a service. The type is determined
by the media type of the linked resource, and can be targeted at
humans, at machines, or a combination of both.

6. IANA Considerations







Expand All @@ -282,6 +282,11 @@ Wilde Expires November 8, 2018 [Page 5]
Internet-Draft Sunset Header May 2018


by the media type of the linked resource, and can be targeted at
humans, at machines, or a combination of both.

6. IANA Considerations

6.1. The Sunset Response Header

The Sunset response header should be added to the permanent registry
Expand Down Expand Up @@ -325,11 +330,6 @@ Internet-Draft Sunset Header May 2018
Furthermore, no effort has been spent to verify the information
presented here that was supplied by IETF contributors. This is not
intended as, and must not be construed to be, a catalog of available
implementations or their features. Readers are advised to note that
other implementations may exist.

According to RFC 6982, "this will allow reviewers and working groups
to assign due consideration to documents that have the benefit of



Expand All @@ -338,6 +338,11 @@ Wilde Expires November 8, 2018 [Page 6]
Internet-Draft Sunset Header May 2018


implementations or their features. Readers are advised to note that
other implementations may exist.

According to RFC 6982, "this will allow reviewers and working groups
to assign due consideration to documents that have the benefit of
running code, which may serve as evidence of valuable experimentation
and feedback that have made the implemented protocols more mature.
It is up to the individual working groups to use this information as
Expand Down Expand Up @@ -365,13 +370,30 @@ Internet-Draft Sunset Header May 2018
Description: Create shortcuts for backend developers to use Sunset
(The Rails Way).

Organization: Tyk Technologies

Name: https://github.com/TykTechnologies/tyk

Licensing: Mozilla Public License Version 2.0

Description: Configurable HTTP header for API version expiry.
(GitHub issue [1])

8. Security Considerations

The Sunset header field should be treated as a resource hint, meaning
that the resource is indicating its potential retirement. The
definitive test whether or not the resource in fact is available or
not will be to attempt to interact with it. Applications should
never treat an advertised Sunset date as a definitive prediction that



Wilde Expires November 8, 2018 [Page 7]

Internet-Draft Sunset Header May 2018


is going to happen at the specified point in time. The Sunset
indication may have been inserted by an intermediary, or the
advertised date may get changed or withdrawn by the resource owner.
Expand All @@ -385,15 +407,6 @@ Internet-Draft Sunset Header May 2018
advertised date or only when the resource in fact becomes
unavailable) is outside the scope of this specification.





Wilde Expires November 8, 2018 [Page 7]

Internet-Draft Sunset Header May 2018


9. Example

Assuming that a resource has been created in an archive that for
Expand Down Expand Up @@ -428,6 +441,15 @@ Internet-Draft Sunset Header May 2018
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", RFC 2119, March 1997.





Wilde Expires November 8, 2018 [Page 8]

Internet-Draft Sunset Header May 2018


[RFC3864] Klyne, G., Nottingham, M., and J. Mogul, "Registration
Procedures for Message Header Fields", BCP 90, RFC 3864,
September 2004.
Expand All @@ -439,17 +461,6 @@ Internet-Draft Sunset Header May 2018
DOI 10.17487/RFC8288, October 2017,
<https://www.rfc-editor.org/info/rfc8288>.







Wilde Expires November 8, 2018 [Page 8]

Internet-Draft Sunset Header May 2018


10.2. Informative References

[RFC6982] Sheffer, Y. and A. Farrel, "Improving Awareness of Running
Expand All @@ -460,6 +471,10 @@ Internet-Draft Sunset Header May 2018
Transfer Protocol (HTTP/1.1): Caching", RFC 7234, June
2014.

10.3. URIs

[1] https://github.com/TykTechnologies/tyk/issues/1626

Appendix A. Acknowledgements

Thanks for comments and suggestions provided by Phil Sturgeon and
Expand All @@ -480,21 +495,6 @@ Author's Address





















Expand Down
14 changes: 10 additions & 4 deletions sunset-header/draft-wilde-sunset-header-05.xml
Original file line number Diff line number Diff line change
Expand Up @@ -141,10 +141,16 @@ RFC 6982: This section, if it appears, should be located just before the "Securi
<t>Description: A Ruby gem adding HTTP client middleware for Sunset to Faraday</t>
</list>
<list>
<t>Organization: WeWork</t>
<t>Name: https://github.com/wework/rails-sunset</t>
<t>Licensing: MIT</t>
<t>Description: Create shortcuts for backend developers to use Sunset (The Rails Way).</t>
<t>Organization: WeWork</t>
<t>Name: https://github.com/wework/rails-sunset</t>
<t>Licensing: MIT</t>
<t>Description: Create shortcuts for backend developers to use Sunset (The Rails Way).</t>
</list>
<list>
<t>Organization: Tyk Technologies</t>
<t>Name: https://github.com/TykTechnologies/tyk</t>
<t>Licensing: Mozilla Public License Version 2.0</t>
<t>Description: Configurable HTTP header for API version expiry. (<eref target="https://github.com/TykTechnologies/tyk/issues/1626">GitHub issue</eref>)</t>
</list>
</t>
</section>
Expand Down

0 comments on commit 8ef1dd5

Please sign in to comment.