Package: wnpp
Severity: wishlist
Owner: Arthur Diniz <[email protected]>

* Package name    : golang-k8s-sigs-structured-merge-diff-v6
  Version         : 6.4.2-1
  Upstream Author : The Kubernetes Authors
* URL             : https://github.com/kubernetes-sigs/structured-merge-diff
* License         : Apache-2.0
  Programming Lang: Go
  Description     : Kubernetes server-side apply operation

 This library implements the Kubernetes "apply" operation, the mechanism
 behind server-side apply. It models resources in a control plane as
 having multiple "managers", where each manager typically owns only one
 aspect of a resource. This lets both humans and machines (controllers)
 make the changes they need without clobbering fields owned by other
 managers. The set of fields each manager currently owns is tracked
 explicitly using a fieldset data structure.
 .
 Objects can be modified through two mechanisms. A PUT or PATCH request
 makes the object look exactly like the supplied version, and the managed
 fields are deduced from what changes. An APPLY request instead declares
 the fields a manager wants to own, requesting deletion of any fields it
 previously managed but no longer mentions. When one manager starts
 managing a field owned by another, an APPLY reports a conflict and stops
 unless the "force" option is given, preventing accidental takeover of
 fields owned by other entities. PUT and PATCH always force and are used
 mostly by automated systems.
 .
 The package is organised into several building blocks: a targeted schema
 type (simpler than OpenAPI), a fieldpath package providing an efficient
 Trie-based field-set structure, a value type storing arbitrary objects, a
 typed package that combines values and schemas to validate and compare
 objects, and a merge package that ties everything together to implement
 the apply operation.
 .
 This is version 6 of the module sigs.k8s.io/structured-merge-diff.
 .
 Upstream sigs.k8s.io/structured-merge-diff changed its module path from
 sigs.k8s.io/structured-merge-diff to sigs.k8s.io/structured-merge-diff/v6
 as part of a Go semantic-import-versioning bump.
 .
 Reverse dependencies still import the old /v4 paths, so they fail to build
 against the new upstream, and a v4 -> v6 compatibility symlink is insufficient
 because it only bridges the import path, not the genuine API differences
 between v4 and v6 that some revdeps hit.
 .
 Rather than bumping the existing golang-k8s-sigs-structured-merge-diff (v4)
 source package in place, v6 is therefore packaged as a separate source package
 shipping the /v6 import path, letting both major versions coexist in the
 archive during the transition
 .
 See the debian-go discussion:
   - https://lists.debian.org/debian-go/2026/08/msg00202.html
   - https://lists.debian.org/debian-go/2026/09/msg00000.html

Reply via email to