Skip to content

Conversation

@rhysrevans3
Copy link

@rhysrevans3 rhysrevans3 commented Aug 19, 2024

Related Issue(s):

Proposed Changes:

  1. Adding support for RFC 6902 to PATCH.
  2. Updating RFC 7386 support to RFC 7396 in PATCH.

PR Checklist:

  • This PR has no breaking changes.
  • I have added my changes to the CHANGELOG or a CHANGELOG entry is not required.

@rhysrevans3
Copy link
Author

I've added the original application/json content type back as to not cause any breaking changes. This is not technically correct for RFC 7396.

@vincentsarago
Copy link

@m-mohr would you be wiling to review this?

@m-mohr
Copy link
Contributor

m-mohr commented Sep 17, 2024

This primarily needs to be in accordance with OGC APIs corresponding part. If we have an issue in STAC, OGC may also have one. Can someone check with them? I'd probably be fine with this if OGC also adopts this. I'd try to avoid diverging from OGC.

I'm traveling/on vacation the next 4 weeks so would only be able to review in November, I think.

@rhysrevans3
Copy link
Author

@m-mohr I've created an issue in the OGC Features repo and had confirmation that OGC is not exclusive to RFC 7396 and that the addition of RFC 6902 won't diverge from OGC. They haven't said they will add RFC 6902 but instead will add a disclaimer that JSON Merge Patch is not exclusive. Do you think a similar disclaimer should be added to STAC's PATCH?

@m-mohr
Copy link
Contributor

m-mohr commented Oct 14, 2024

I think we should explicitly and clearly say that the "old" way is the default, but that the "new" way can be added in addition and be distinguished via content negotiation (media types). That's also how I understood Peter in the OGC issue.

@rhysrevans3
Copy link
Author

I've updated the description to state that merge-patch is the default and json-patch is optional. Merge-patch is also the method for base application/json content type with merge-patch requiring application/json-patch+json. Is there anywhere else that this would need to be added?

@m-mohr
Copy link
Contributor

m-mohr commented Oct 15, 2024

Thanks, good start. I think it should also be clearly started in the README.md

@rhysrevans3
Copy link
Author

Good point I've update the PATCH text to RFC 6902 is optional and additional to RFC 7396.

@m-mohr m-mohr requested a review from philvarner October 15, 2024 10:25
Copy link
Contributor

@m-mohr m-mohr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me (from a theoretical perspective).

Would like to see another review from a practitioner, server and/or client implementor.

@rhysrevans3
Copy link
Author

@philvarner have you had time to review this pull request?

@rhysrevans3
Copy link
Author

@m-mohr do you know if there's any update on this PR?

@m-mohr
Copy link
Contributor

m-mohr commented Feb 6, 2025

No, I also only see what's on GitHub.

@vincentsarago
Copy link

@emmanuelmathot would you be interested in reviewing this?

jonhealy1 pushed a commit to stac-utils/stac-fastapi-elasticsearch-opensearch that referenced this pull request Jun 20, 2025
**Description:**
Adds PATCH endpoints to transaction extension. Adds support for [RFC
6902](https://tools.ietf.org/html/rfc6902) and [RFC
7396](https://tools.ietf.org/html/rfc7396). Pivots on header
Content-Type value.

Related pull requests:
- stac-utils/stac-fastapi#744
- stac-api-extensions/transaction#14

**PR Checklist:**

- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [ ] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog
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 this pull request may close these issues.

3 participants