-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Open
Labels
sig/api-machineryCategorizes an issue or PR as relevant to SIG API Machinery.Categorizes an issue or PR as relevant to SIG API Machinery.stage/alphaDenotes an issue tracking an enhancement targeted for Alpha statusDenotes an issue tracking an enhancement targeted for Alpha status
Description
Enhancement Description
- One-line enhancement description (can be used as a release note): Adds the CBOR data format as an efficient alternative to JSON.
- Kubernetes Enhancement Proposal: https://github.com/kubernetes/enhancements/tree/master/keps/sig-api-machinery/4222-cbor-serializer
- Discussion Link:
- Primary contact (assignee): @benluddy
- Responsible SIGs: sig-api-machinery
- Enhancement target (which target equals to which milestone):
- Alpha release target (x.y): 1.32
- Beta release target (x.y):
- Stable release target (x.y):
- Alpha
- KEP (
k/enhancements) update PR(s):- KEP-4222: Update alpha target to 1.30. #4457
- KEP-4222: Bump alpha target and latest-milestone to 1.31. #4708
- KEP-4222: Add details of multi-protocol RawExtension serialization. #4707
- KEP-4222: Relax description of decode allocations fuzz test. #4710
- KEP-4222: Specify handling of JSON-only custom marshalers. #4711
- KEP-4222: Update PRR items on release signoff checklist. #4722
- KEP-4222: Add transcoding opt-out as beta criteria. #4758
- KEP-4222: Document upgrade/downgrade and version skew strategy. #4918
- KEP-4222: Add link to Python spec conformance demo. #4923
- Code (
k/k) update PR(s):- KEP-4222: Add stub CBOR serializer. kubernetes#121486
- Bump github.com/fxamacker/cbor/v2 to v2.6.0. kubernetes#123250
- KEP-4222: Add CBOR Serializer implementation. kubernetes#122881
- KEP-4222: Add roundtrip tests for all CBOR examples in RFC 8949 Appendix A. kubernetes#123268
- KEP-4222: Add decode and roundtrip tests for CBOR marshaling. kubernetes#123267
- KEP-4222: Add unit tests for decoding CBOR into interface{} type kubernetes#125068
- KEP-4222: Add CBOR decoder unit test that accepts tag 55799. kubernetes#124799
- KEP-4222: Decode CBOR to UnstructuredList as UnstructuredJSONScheme does. kubernetes#124775
- KEP-4222: Group CBOR decode tests by the kind of their inputs. kubernetes#124324
- KEP-4222: Add tests for CBOR encoder handling of duplicate field names/tags. kubernetes#123626
- KEP-4222: Make CBOR roundtrip tests pass through interface{}. kubernetes#123536
- KEP-4222: Add duplicate key and field case-sensitivity CBOR decode tests. kubernetes#123436
- KEP-4222: Add roundtrip tests to Unstructured via CBOR and JSON. kubernetes#122832
- KEP-4222: Restrict supported media types for new apiservers. kubernetes#121325
- KEP-4222: Bump github.com/fxamacker/cbor/v2. kubernetes#125408
- KEP-4222: Decode CBOR time tags to interface{} as RFC 3339 timestamps. kubernetes#125424
- KEP-4222: Reject NaN or infinite floating-point values in the CBOR serializer. kubernetes#125423
- KEP-4222: Disable recognition of Binary(Unm|M)arshaler in CBOR serializer. kubernetes#125422
- KEP-4222: Reject CBOR simple values other than true, false, and null. kubernetes#125421
- KEP-4222: Reject math/big.Int on encode and bignum tags on decode for CBOR. kubernetes#125420
- KEP-4222: Enable JSON-compatible base64 encoding of []byte for CBOR. kubernetes#125419
- KEP-4222: Encode byte array to CBOR as array of integer, not byte string. kubernetes#125418
- KEP-4222: Add CBOR fuzz test for unreasonable allocations during decode. kubernetes#124761
- KEP-4222: Bump github.com/fxamacker/cbor/v2 to v2.7.0. kubernetes#125669
- KEP-4222: Automatically transcode RawExtension between unstructured protocols. kubernetes#125629
- KEP-4222: Implement runtime.Framer for CBOR Sequences. kubernetes#126105
- KEP-4222: Support either JSON or CBOR in FieldsV1. kubernetes#125790
- KEP-4222: Check for and reject unsupported custom marshalers and unmarshalers. kubernetes#125748
- KEP-4222: Remove temporary mechanism for skipping CBOR tests. kubernetes#125712
- KEP-4222: Don't pool large CBOR encode buffers kubernetes#125676
- KEP-4222: Cover aggregator and apiextension types in unstructured roundtrip test. kubernetes#125570
- KEP-4222: Add fuzz test for roundtrip unstructured objects to JSON/CBOR kubernetes#127862
- KEP-4222: Add CBOR variant of admission webhook integration test. kubernetes#128243
- KEP-4222: Wire CBOR CR storage behind test-only feature gate. kubernetes#128322
- KEP-4222: Test response content negotiation for each CBOR enablement state. kubernetes#128267
- KEP-4222: Support CBOR for generated clients based on client-go feature gating. kubernetes#128323
- KEP-4222: Support CBOR encoding for apply requests. kubernetes#128273
- KEP-4222: Allow nondeterministic object encoding in HTTP response bodies. kubernetes#128456
- KEP-4222: Add integration test for CBOR-enabled dynamic client watches. kubernetes#128491
- KEP-4222: Fall back to JSON request encoding after CBOR 415. kubernetes#128497
- KEP-4222: Reject custom marshalers from direct CBOR Marshal and Unmarshal. kubernetes#128462
- KEP-4222: Add CBOR feature gates. kubernetes#128539
- KEP-4222: Use cbor-seq content-type for CBOR watch responses. kubernetes#128501
- KEP-4222: Wire serving codecs to CBOR feature gate. kubernetes#128503
- KEP-4222: Fix JSON fallback for clients using default content-type and add E2E client test. kubernetes#128641
- Docs (
k/website) update PR(s):
- KEP (
- Beta
- KEP (
k/enhancements) update PR(s): - Code (
k/k) update PR(s): - Docs (
k/website) update(s):
- KEP (
Please keep this description up to date. This will help the Enhancement Team to track the evolution of the enhancement efficiently.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
sig/api-machineryCategorizes an issue or PR as relevant to SIG API Machinery.Categorizes an issue or PR as relevant to SIG API Machinery.stage/alphaDenotes an issue tracking an enhancement targeted for Alpha statusDenotes an issue tracking an enhancement targeted for Alpha status