mirror of
https://github.com/kubernetes/kubernetes.git
synced 2026-04-28 01:30:27 -04:00
Automatic merge from submit-queue Remove json serialization annotations from internal types fixes #3933 Internal types should never be serialized, and including json serialization tags on them makes it possible to accidentally do that without realizing it. fixes in this PR: * types * [x] remove json tags from internal types * [x] fix references from serialized types to internal ObjectMeta * generation * [x] remove generated json codecs for internal types (they should never be used) * kubectl * [x] fix `apply` to operate on versioned object * [x] fix sorting by field to operate on versioned object * [x] fix `--record` to build annotation patch using versioned object * hpa * [x] fix unmarshaling to internal CustomMetricTargetList in validation * thirdpartyresources * [x] fix encoding API responses using internal ObjectMeta * tests * [x] fix tests to use versioned objects when checking encoded content * [x] fix tests passing internal objects to generic printers follow ups (will open tracking issues or additional PRs): - [ ] remove json tags from internal kubeconfig types (`kubectl config set` pathfinding needs to work against external type) - [ ] HPA should version CustomMetricTargetList serialization in annotations - [ ] revisit how TPR resthandlers encoding objects - [ ] audit and add tests for printer use (human-readable printer requires internal versions, generic printers require external versions) - [ ] add static analysis tests preventing new internal types from adding tags - [ ] add static analysis tests requiring json tags on external types (and enforcing lower-case first letter) - [ ] add more tests for `kubectl get` exercising known and unknown types with all output options |
||
|---|---|---|
| .. | ||
| etcd | ||
| etcd3 | ||
| storagebackend | ||
| testing | ||
| BUILD | ||
| cacher.go | ||
| cacher_test.go | ||
| doc.go | ||
| errors.go | ||
| interfaces.go | ||
| OWNERS | ||
| selection_predicate.go | ||
| selection_predicate_test.go | ||
| time_budget.go | ||
| time_budget_test.go | ||
| util.go | ||
| util_test.go | ||
| watch_cache.go | ||
| watch_cache_test.go | ||