mirror of https://github.com/knative/caching.git
upgrade to latest dependencies (#572)
bumping knative.dev/pkg 5708c4c...d016976: > d016976 Update community files (# 2353) > b35fcdd kmap changes (# 2355) > a99300d kmap (# 2354) Signed-off-by: Knative Automation <automation@knative.team>
This commit is contained in:
parent
77b107b17f
commit
d34fbbcce6
2
go.mod
2
go.mod
|
@ -20,5 +20,5 @@ require (
|
||||||
k8s.io/code-generator v0.21.4
|
k8s.io/code-generator v0.21.4
|
||||||
k8s.io/kube-openapi v0.0.0-20210305001622-591a79e4bda7
|
k8s.io/kube-openapi v0.0.0-20210305001622-591a79e4bda7
|
||||||
knative.dev/hack v0.0.0-20211117134436-69a2295d54ce
|
knative.dev/hack v0.0.0-20211117134436-69a2295d54ce
|
||||||
knative.dev/pkg v0.0.0-20211117215328-5708c4c44232
|
knative.dev/pkg v0.0.0-20211120133512-d016976f2567
|
||||||
)
|
)
|
||||||
|
|
4
go.sum
4
go.sum
|
@ -1133,8 +1133,8 @@ k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/
|
||||||
knative.dev/hack v0.0.0-20211112192837-128cf0150a69/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
|
knative.dev/hack v0.0.0-20211112192837-128cf0150a69/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
|
||||||
knative.dev/hack v0.0.0-20211117134436-69a2295d54ce h1:dPARWsX/9nmWg9g09MtGnsn7nZUwjA0UWpKSUozgS6g=
|
knative.dev/hack v0.0.0-20211117134436-69a2295d54ce h1:dPARWsX/9nmWg9g09MtGnsn7nZUwjA0UWpKSUozgS6g=
|
||||||
knative.dev/hack v0.0.0-20211117134436-69a2295d54ce/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
|
knative.dev/hack v0.0.0-20211117134436-69a2295d54ce/go.mod h1:PHt8x8yX5Z9pPquBEfIj0X66f8iWkWfR0S/sarACJrI=
|
||||||
knative.dev/pkg v0.0.0-20211117215328-5708c4c44232 h1:mye0h0gL0sI2YraL1X5FjyfQZoYVaaaRemTJq+uw+/8=
|
knative.dev/pkg v0.0.0-20211120133512-d016976f2567 h1:IPQ6QKOvMIRX9/UI1cAtSl36+CbGv8HErSvID03CRr4=
|
||||||
knative.dev/pkg v0.0.0-20211117215328-5708c4c44232/go.mod h1:VqUp1KWJqpTDNoiSI/heaX3uMdubImslJE2tBkP+Bbw=
|
knative.dev/pkg v0.0.0-20211120133512-d016976f2567/go.mod h1:VqUp1KWJqpTDNoiSI/heaX3uMdubImslJE2tBkP+Bbw=
|
||||||
pgregory.net/rapid v0.3.3/go.mod h1:UYpPVyjFHzYBGHIxLFoupi8vwk6rXNzRY9OMvVxFIOU=
|
pgregory.net/rapid v0.3.3/go.mod h1:UYpPVyjFHzYBGHIxLFoupi8vwk6rXNzRY9OMvVxFIOU=
|
||||||
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
|
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
|
||||||
rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=
|
rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=
|
||||||
|
|
|
@ -21,7 +21,7 @@ import (
|
||||||
|
|
||||||
"knative.dev/pkg/apis"
|
"knative.dev/pkg/apis"
|
||||||
"knative.dev/pkg/apis/duck/ducktypes"
|
"knative.dev/pkg/apis/duck/ducktypes"
|
||||||
"knative.dev/pkg/kmeta"
|
"knative.dev/pkg/kmap"
|
||||||
)
|
)
|
||||||
|
|
||||||
// +genduck
|
// +genduck
|
||||||
|
@ -92,8 +92,7 @@ func (s *Status) GetCondition(t apis.ConditionType) *apis.Condition {
|
||||||
func (s *Status) ConvertTo(ctx context.Context, sink *Status, predicates ...func(apis.ConditionType) bool) {
|
func (s *Status) ConvertTo(ctx context.Context, sink *Status, predicates ...func(apis.ConditionType) bool) {
|
||||||
sink.ObservedGeneration = s.ObservedGeneration
|
sink.ObservedGeneration = s.ObservedGeneration
|
||||||
if s.Annotations != nil {
|
if s.Annotations != nil {
|
||||||
// This will deep copy the map.
|
sink.Annotations = kmap.Union(s.Annotations)
|
||||||
sink.Annotations = kmeta.UnionMaps(s.Annotations)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
conditions := make(apis.Conditions, 0, len(s.Conditions))
|
conditions := make(apis.Conditions, 0, len(s.Conditions))
|
||||||
|
|
|
@ -0,0 +1,77 @@
|
||||||
|
/*
|
||||||
|
Copyright 2021 The Knative Authors
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package kmap
|
||||||
|
|
||||||
|
// KeyPriority is a utility struct for getting values from a map
|
||||||
|
// given a list of ordered keys
|
||||||
|
//
|
||||||
|
// This is to help the migration/renaming of annotations & labels
|
||||||
|
type KeyPriority []string
|
||||||
|
|
||||||
|
// Key returns the default key that should be used for
|
||||||
|
// accessing the map
|
||||||
|
func (p KeyPriority) Key() string {
|
||||||
|
// this intentionally panics rather than returning an empty string
|
||||||
|
return p[0]
|
||||||
|
}
|
||||||
|
|
||||||
|
// Value iterates looks up the ordered keys in the map and returns
|
||||||
|
// a string value. An empty string will be returned if the keys
|
||||||
|
// are not present in the map
|
||||||
|
func (p KeyPriority) Value(m map[string]string) string {
|
||||||
|
_, v, _ := p.Get(m)
|
||||||
|
return v
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get iterates over the ordered keys and looks up the corresponding
|
||||||
|
// values in the map
|
||||||
|
//
|
||||||
|
// It returns the key, value, and true|false signaling whether the
|
||||||
|
// key was present in the map
|
||||||
|
//
|
||||||
|
// If no key is present the default key (lowest ordinal) is returned
|
||||||
|
// with an empty string as the value
|
||||||
|
func (p KeyPriority) Get(m map[string]string) (string, string, bool) {
|
||||||
|
var k, v string
|
||||||
|
var ok bool
|
||||||
|
for _, k = range p {
|
||||||
|
v, ok = m[k]
|
||||||
|
if ok {
|
||||||
|
return k, v, ok
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return p.Key(), "", false
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpdateKey will update the map with the KeyPriority's default
|
||||||
|
// key iff any of the other synonym keys are present
|
||||||
|
func (p KeyPriority) UpdateKey(m map[string]string) {
|
||||||
|
if k, v, ok := p.Get(m); ok && k != p.Key() {
|
||||||
|
delete(m, k)
|
||||||
|
m[p.Key()] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpdateKeys iterates over the lookups and updates entries in the map
|
||||||
|
// to use the default key
|
||||||
|
func UpdateKeys(m map[string]string, keys ...KeyPriority) map[string]string {
|
||||||
|
for _, key := range keys {
|
||||||
|
key.UpdateKey(m)
|
||||||
|
}
|
||||||
|
return m
|
||||||
|
}
|
|
@ -0,0 +1,80 @@
|
||||||
|
/*
|
||||||
|
Copyright 2021 The Knative Authors
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package kmap
|
||||||
|
|
||||||
|
// Copy makes a copy of the map.
|
||||||
|
func Copy(a map[string]string) map[string]string {
|
||||||
|
ret := make(map[string]string, len(a))
|
||||||
|
for k, v := range a {
|
||||||
|
ret[k] = v
|
||||||
|
}
|
||||||
|
return ret
|
||||||
|
}
|
||||||
|
|
||||||
|
// Union returns a map constructed from the union of input maps.
|
||||||
|
// where values from latter maps win.
|
||||||
|
func Union(maps ...map[string]string) map[string]string {
|
||||||
|
if len(maps) == 0 {
|
||||||
|
return map[string]string{}
|
||||||
|
}
|
||||||
|
out := make(map[string]string, len(maps[0]))
|
||||||
|
|
||||||
|
for _, m := range maps {
|
||||||
|
for k, v := range m {
|
||||||
|
out[k] = v
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return out
|
||||||
|
}
|
||||||
|
|
||||||
|
// Filter creates a copy of the provided map, filtering out the elements
|
||||||
|
// that match `filter`.
|
||||||
|
// nil `filter` is accepted.
|
||||||
|
func Filter(in map[string]string, filter func(string) bool) map[string]string {
|
||||||
|
ret := make(map[string]string, len(in))
|
||||||
|
for k, v := range in {
|
||||||
|
if filter != nil && filter(k) {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
ret[k] = v
|
||||||
|
}
|
||||||
|
return ret
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExcludeKeys creates a copy of the provided map filtering out the excluded `keys`
|
||||||
|
func ExcludeKeys(in map[string]string, keys ...string) map[string]string {
|
||||||
|
return ExcludeKeyList(in, keys)
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExcludeKeyList creates a copy of the provided map filtering out excluded `keys`
|
||||||
|
func ExcludeKeyList(in map[string]string, keys []string) map[string]string {
|
||||||
|
ret := make(map[string]string, len(in))
|
||||||
|
|
||||||
|
outer:
|
||||||
|
for k, v := range in {
|
||||||
|
// opted to skip memory allocation (creating a set) in favour of
|
||||||
|
// looping since the places Knative will use this we typically
|
||||||
|
// exclude one or two keys
|
||||||
|
for _, excluded := range keys {
|
||||||
|
if k == excluded {
|
||||||
|
continue outer
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ret[k] = v
|
||||||
|
}
|
||||||
|
return ret
|
||||||
|
}
|
|
@ -16,41 +16,19 @@ limitations under the License.
|
||||||
|
|
||||||
package kmeta
|
package kmeta
|
||||||
|
|
||||||
|
import "knative.dev/pkg/kmap"
|
||||||
|
|
||||||
// CopyMap makes a copy of the map.
|
// CopyMap makes a copy of the map.
|
||||||
func CopyMap(a map[string]string) map[string]string {
|
// Deprecated: use kmap.Copy
|
||||||
ret := make(map[string]string, len(a))
|
var CopyMap = kmap.Copy
|
||||||
for k, v := range a {
|
|
||||||
ret[k] = v
|
|
||||||
}
|
|
||||||
return ret
|
|
||||||
}
|
|
||||||
|
|
||||||
// UnionMaps returns a map constructed from the union of input maps.
|
// UnionMaps returns a map constructed from the union of input maps.
|
||||||
// where values from latter maps win.
|
// where values from latter maps win.
|
||||||
func UnionMaps(maps ...map[string]string) map[string]string {
|
// Deprecated: use kmap.Union
|
||||||
if len(maps) == 0 {
|
var UnionMaps = kmap.Union
|
||||||
return map[string]string{}
|
|
||||||
}
|
|
||||||
out := make(map[string]string, len(maps[0]))
|
|
||||||
|
|
||||||
for _, m := range maps {
|
|
||||||
for k, v := range m {
|
|
||||||
out[k] = v
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return out
|
|
||||||
}
|
|
||||||
|
|
||||||
// FilterMap creates a copy of the provided map, filtering out the elements
|
// FilterMap creates a copy of the provided map, filtering out the elements
|
||||||
// that match `filter`.
|
// that match `filter`.
|
||||||
// nil `filter` is accepted.
|
// nil `filter` is accepted.
|
||||||
func FilterMap(in map[string]string, filter func(string) bool) map[string]string {
|
// Deprecated: use kmap.Filter
|
||||||
ret := make(map[string]string, len(in))
|
var FilterMap = kmap.Filter
|
||||||
for k, v := range in {
|
|
||||||
if filter != nil && filter(k) {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
ret[k] = v
|
|
||||||
}
|
|
||||||
return ret
|
|
||||||
}
|
|
||||||
|
|
|
@ -611,7 +611,7 @@ k8s.io/utils/trace
|
||||||
# knative.dev/hack v0.0.0-20211117134436-69a2295d54ce
|
# knative.dev/hack v0.0.0-20211117134436-69a2295d54ce
|
||||||
## explicit
|
## explicit
|
||||||
knative.dev/hack
|
knative.dev/hack
|
||||||
# knative.dev/pkg v0.0.0-20211117215328-5708c4c44232
|
# knative.dev/pkg v0.0.0-20211120133512-d016976f2567
|
||||||
## explicit
|
## explicit
|
||||||
knative.dev/pkg/apis
|
knative.dev/pkg/apis
|
||||||
knative.dev/pkg/apis/duck
|
knative.dev/pkg/apis/duck
|
||||||
|
@ -630,6 +630,7 @@ knative.dev/pkg/hack
|
||||||
knative.dev/pkg/hash
|
knative.dev/pkg/hash
|
||||||
knative.dev/pkg/injection
|
knative.dev/pkg/injection
|
||||||
knative.dev/pkg/injection/clients/dynamicclient
|
knative.dev/pkg/injection/clients/dynamicclient
|
||||||
|
knative.dev/pkg/kmap
|
||||||
knative.dev/pkg/kmeta
|
knative.dev/pkg/kmeta
|
||||||
knative.dev/pkg/kmp
|
knative.dev/pkg/kmp
|
||||||
knative.dev/pkg/leaderelection
|
knative.dev/pkg/leaderelection
|
||||||
|
|
Loading…
Reference in New Issue