ceph-csi/e2e/vendor/sigs.k8s.io/json
Niels de Vos f87d06ed85 build: move e2e dependencies into e2e/go.mod
Several packages are only used while running the e2e suite. These
packages are less important to update, as the they can not influence the
final executable that is part of the Ceph-CSI container-image.

By moving these dependencies out of the main Ceph-CSI go.mod, it is
easier to identify if a reported CVE affects Ceph-CSI, or only the
testing (like most of the Kubernetes CVEs).

Signed-off-by: Niels de Vos <ndevos@ibm.com>
2025-03-04 17:43:49 +01:00
..
internal/golang/encoding/json build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
code-of-conduct.md build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
CONTRIBUTING.md build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
doc.go build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
json.go build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
LICENSE build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
Makefile build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
OWNERS build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
README.md build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
SECURITY_CONTACTS build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00
SECURITY.md build: move e2e dependencies into e2e/go.mod 2025-03-04 17:43:49 +01:00

sigs.k8s.io/json

Go Reference

Introduction

This library is a subproject of sig-api-machinery. It provides case-sensitive, integer-preserving JSON unmarshaling functions based on encoding/json Unmarshal().

Compatibility

The UnmarshalCaseSensitivePreserveInts() function behaves like encoding/json#Unmarshal() with the following differences:

  • JSON object keys are treated case-sensitively. Object keys must exactly match json tag names (for tagged struct fields) or struct field names (for untagged struct fields).
  • JSON integers are unmarshaled into interface{} fields as an int64 instead of a float64 when possible, falling back to float64 on any parse or overflow error.
  • Syntax errors do not return an encoding/json *SyntaxError error. Instead, they return an error which can be passed to SyntaxErrorOffset() to obtain an offset.

Additional capabilities

The UnmarshalStrict() function decodes identically to UnmarshalCaseSensitivePreserveInts(), and also returns non-fatal strict errors encountered while decoding:

  • Duplicate fields encountered
  • Unknown fields encountered

Community, discussion, contribution, and support

You can reach the maintainers of this project via the sig-api-machinery mailing list / channels.

Code of conduct

Participation in the Kubernetes community is governed by the Kubernetes Code of Conduct.