Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.16
->3.17
0.1.8
->0.1.10
0.13.0
->0.21.0
1.1.0
->1.2.0
0.3.24
->0.3.26
0.2.6
->0.3.0
0.15.0
->0.17.0
0.74.0
->0.78.0
0.13.2
->0.13.3
0.17.1
->0.18.1
0.17.0
->0.18.0
0.9.3
->0.10.0
0.11.11
->0.11.14
1.63-alpine
->1.67-alpine
6.4.1
->6.4.2
0.20.5
->0.20.8
0.8.10
->0.8.11
1.0.144
->1.0.152
1.0.144
->1.0.152
1.0.85
->1.0.93
0.9.13
->0.9.17
1.21.1
->1.25.0
Release Notes
google/argh
v0.1.10
: Bump version to 0.1.10Compare Source
v0.1.9
Compare Source
marshallpierce/rust-base64
v0.21.0
Compare Source
Migration
Functions
encode()
engine::general_purpose::STANDARD.encode()
orprelude::BASE64_STANDARD.encode()
encode_config()
engine.encode()
encode_config_buf()
engine.encode_string()
encode_config_slice()
engine.encode_slice()
decode()
engine::general_purpose::STANDARD.decode()
orprelude::BASE64_STANDARD.decode()
decode_config()
engine.decode()
decode_config_buf()
engine.decode_vec()
decode_config_slice()
engine.decode_slice()
The short-lived 0.20 functions were the 0.13 functions with
config
replaced withengine
.Padding
If applicable, use the preset engines
engine::STANDARD
,engine::STANDARD_NO_PAD
,engine::URL_SAFE
,or
engine::URL_SAFE_NO_PAD
.The
NO_PAD
ones require that padding is absent when decoding, and the others require thatcanonical padding is present .
If you need the < 0.20 behavior that did not care about padding, or want to recreate < 0.20.0's predefined
Config
sprecisely, see the following table.
encode_padding
decode_padding_mode
v0.20.0
Compare Source
Breaking changes
correct padding.
NO_PAD
config now requires that padding be absent when decoding.0.20.0-alpha.1
Breaking changes
Config
concept into theEngine
abstraction, allowing the user to pick different encoding / decodingimplementations.
FastPortable
engine, so named because it's portable (works onany CPU) and relatively fast.
implementation (#153,
presumably
ConstantTimePortable
?) for security-sensitive applications that need side-channel resistance, andCPU-specific SIMD implementations for more speed.
DEFAULT_ENGINE
. To use different alphabets or other settings (padding, etc), create your own engine instance.
CharacterSet
is nowAlphabet
(per the RFC), and allows creating custom alphabets. The corresponding tables thatwere previously code-generated are now built dynamically.
discoverable.
const fn
.DecoderReader
now owns its inner reader, and can expose it viainto_inner()
. For symmetry,EncoderWriter
can dothe same with its writer.
encoded_len
is now public so you can size encode buffers precisely.v0.13.1
Compare Source
decode_config
.yoshuawuyts/exponential-backoff
v1.2.0
Compare Source
What's Changed
New Contributors
Full Changelog: yoshuawuyts/exponential-backoff@v1.1.0...v1.2.0
rust-lang/futures-rs
v0.3.26
Compare Source
Either::as_pin_mut
andEither::as_pin_ref
(#2691)Shared::ptr_eq
andShared::ptr_hash
(#2691)FusedStream
forBuffered
(#2676)FusedStream
for all streams inReadyChunks
(#2693)FuturesOrdered::push_front
(#2664)Fut::Output: Clone
bounds from someShared
methods (#2662)T: Debug
bounds fromDebug
implementations ofmpsc
andoneshot
types (#2666, #2667)v0.3.25
Compare Source
join!
andtry_join!
macros (#2649)Clone
forsink::Drain
(#2650)idubrov/json-patch
v0.3.0
Compare Source
Breaking Changes
json_patch::patch_unsafe
operation as regularpatch
is it does not provide enough value.json_patch::from_value
. Useserde_json::from_value
instead.v0.2.7
Compare Source
Fixed
"/"
when thewhole document is replaced. The correct path should be
""
. This is a breaking change.#18
Arnavion/k8s-openapi
v0.17.0
Compare Source
k8s-openapi
BREAKING CHANGE: Added support for Kubernetes 1.26 under the
v1_26
feature.BREAKING CHANGE: Dropped support for Kubernetes 1.18 and 1.19.
FEATURE: Allow deserializing non-optional
ByteString
s from JSONnull
. The API server is known to allow thesenull
s in theConfigMap::binary_data
andSecret::data
maps. The deserialization results in an emptyByteString
, to match the behavior of the API server when given anull
value in theConfigMap::data
map.Corresponding Kubernetes API server versions:
v0.16.0
Compare Source
k8s-openapi
BREAKING CHANGE: Added support for Kubernetes 1.25 under the
v1_25
feature.FEATURE: All spec types now implement a deep-merge API via a
DeepMerge
trait impl with afn merge_from(&mut self, other: Self)
method. This is useful for builder-like operations.Corresponding Kubernetes API server versions:
k8s-openapi-codegen-common
k8s-openapi-derive
BREAKING CHANGE:
#[derive(CustomResourceDefinition)]
no longer generates a list type alias. For example, when applied tostruct FooSpec
, previously the custom derive would generatepub type FooList = k8s_openapi::List<Foo>;
It no longer does this, in accordance with the main k8s-openapi crate where such aliases were removed back in v0.7.0FEATURE: The generated custom resource type will implement
k8s_openapi::DeepMerge
if theimpl_deep_merge
custom derive attribute is used. Note that this requires you to implementk8s_openapi::DeepMerge
on the spec type yourself; the custom derive does not do that.kube-rs/kube
v0.78.0
Compare Source
===================
Kubernetes Bump
This release brings in the new
k8s-openapi
release for1.26
structs, and sets our MK8SV to1.21
.Be sure to upgrade
k8s-openapi
andkube
simultaneously to avoid multiple version errors:What's Changed
Added
Store
by @eliad-wiz in https://github.com/kube-rs/kube/pull/1111Changed
k8s-openapi@0.17.0
and MK8SV by @clux in https://github.com/kube-rs/kube/pull/1116Removed
Config::timeout
by @clux in https://github.com/kube-rs/kube/pull/1113Fixed
v0.77.0
Compare Source
===================
Highlights
This release saw numerous improvements across various parts of the codebase with lots of help from external contributors. Look for improvements in error handling, client exec behaviour, dynamic object conversion, certificate handling, and last, but not least; lots of enhancements in the
config
module. Huge thanks to everyone who contributed!Config
EnhancementsKubeconfigs relying on
ExecConfig
for auth should now work with a lot more cases (with improvements to script interactivity, cert passing, env-drop, and windows behaviour). We further aligned ourKubeconfig
parsing with client-go's behaviour, and also exposedKubeconfig::merge
. Finally, we now passConfig::tls_server_name
through to theClient
, which has let us include a better rustls workaround for the long-standing ip issue (enabled by default).What's Changed
Added
DynamicObjects::try_parse
for typed object conversion by @jmintb in https://github.com/kube-rs/kube/pull/1061ExecConfig::drop_env
to filter host evars for auth providers by @aviramha in https://github.com/kube-rs/kube/pull/1062Kubeconfig::merge
fn to public. by @goenning in https://github.com/kube-rs/kube/pull/1100Changed
Config::tls_server_name
and validate when using rustls by @clux in https://github.com/kube-rs/kube/pull/1104Removed
ResourceExt::name
by @clux in https://github.com/kube-rs/kube/pull/1105Fixed
watcher
when kinds do not support watch by @clux in https://github.com/kube-rs/kube/pull/1101v0.76.0
Compare Source
===================
Highlights
#[derive(CustomResource)]
now supports schemas with untagged enumsExpanding on our existing support for storing Rust's struct enums in CRDs, Kube will now try to convert
#[serde(untagged)]
enums as well. Note that if the same field is present in multiple untagged variants then they must all have the same shape.Removed deprecated
try_flatten_*
functionsThese have been deprecated since 0.72, and are replaced by the equivalent
WatchStreamExt
methods.What's Changed
Added
Controller::watches
by @Dav1dde in https://github.com/kube-rs/kube/pull/1026ApiGroup::resources_by_stability
by @imuxin in https://github.com/kube-rs/kube/pull/1022Removed
try_flatten_
helpers by @clux in https://github.com/kube-rs/kube/pull/1019native-tls
feature by @kazk in https://github.com/kube-rs/kube/pull/1044Fixed
v0.75.0
Compare Source
===================
Highlights
Upgrade
k8s-openapi
to 0.16 for Kubernetes 1.25The update to k8s-openapi@0.16.0 makes this the first release with tentative Kubernetes 1.25 support.
While the new structs and apis now exist, we recommend holding off on using 1.25 until a deserialization bug in the apiserver is resolved upstream. See #997 / #1008 for details.
To upgrade, ensure you bump both
kube
andk8s-openapi
:New/Old
Config::incluster
default to connect in clusterOur previous default of connecting to the Kubernetes apiserver via
kubernetes.default.svc
has been reverted back to use the old environment variables after Kubernetes updated their position that the environment variables are not legacy. This does unfortunately regress onrustls
support, so for those users we have included aConfig::incluster_dns
to work around the old rustls issue while it is open.Controller
error_policy
extensionThe
error_policy
fn now has access to theobject
that failed the reconciliation to ease metric creation / failure attribution. The following change is needed on the user side:Polish / Subresources / Conversion
There are also a slew of ergonomics improvements, closing of gaps in subresources, adding initial support for
ConversionReview
, makingApi::namespaced
impossible to use for non-namepaced resources (a common pitfall), as well as many great fixes to the edge cases in portforwarding and finalizers. Many of these changes came from first time contributors. A huge thank you to everyone involved.What's Changed
Added
Config::auth_info
public by @danrspencer in https://github.com/kube-rs/kube/pull/959Client::send
method public by @tiagolobocastro in https://github.com/kube-rs/kube/pull/972types
onAdmissionRequest
andAdmissionResponse
public by @clux in https://github.com/kube-rs/kube/pull/977#[serde(default)]
to metadata field ofDynamicObject
by @pbzweihander in https://github.com/kube-rs/kube/pull/987create_subresource
method toApi
andcreate_token_request
method toApi<ServiceAccount>
by @pbzweihander in https://github.com/kube-rs/kube/pull/989Action
by @Sherlock-Holo in https://github.com/kube-rs/kube/pull/993ConversionReview
types by @MikailBag in https://github.com/kube-rs/kube/pull/999Changed
Config
by @goenning in https://github.com/kube-rs/kube/pull/971error_policy
by @felipesere in https://github.com/kube-rs/kube/pull/995Config
: Newincluster
andincluster_dns
constructors by @olix0r in https://github.com/kube-rs/kube/pull/1001k8s-openapi
to 0.16 by @clux in https://github.com/kube-rs/kube/pull/1008Fixed
tracing::instrument
fromapply_debug_overrides
by @kazk in https://github.com/kube-rs/kube/pull/958tikv/rust-prometheus
v0.13.3
Compare Source
Bug fix: Prevent ProcessCollector underflow with CPU time counter (#465)
Internal change: Update dependencies
pyo3/pyo3
v0.18.1
Compare Source
Added
PyErr::write_unraisable()
. #2889Python::Ellipsis()
andPyAny::is_ellipsis()
methods. #2911PyDict::update()
andPyDict::update_if_missing()
methods. #2912Changed
PyIter_Check
on CPython 3.7 is now implemented ashasattr(type(obj), "__next__")
, which works correctly on all platforms and adds support forabi3
. #2914PYO3_CONFIG_FILE
instead of denying. #2926Fixed
__releasebuffer__
tosys.unraisablehook
rather than causingSystemError
. #2886PyIterator
succeeding for Python classes which did not implement__next__
. #2914__traverse__
when visitingNone
fields ofOption<T: AsPyPointer>
. #2921#[pymethods(crate = "...")]
option being ignored. #2923pythonXY_d.dll
for debug Python builds on Windows. #2937v0.18.0
Compare Source
Packaging
indexmap
optional depecency to allow>= 1.6, < 2
. [#2849][https://github.com/PyO3/pyo3/pull/2849](https://github.com/PyO3/pyo3/pull/2849)9hashbrown
optional dependency to allow>= 0.9, < 0.14
. #2875memoffset
dependency to 0.8. #2875Added
GILOnceCell::get_or_try_init
for fallibleGILOnceCell
initialization. #2398experimental-inspect
withtype_input()
andtype_output()
helpers to get the Python type of any Python-compatible object. #2490 #2882#[pyclass]
macro can now takeget_all
andset_all
to create getters and setters for every field. #2692#[pyo3(signature = (...))]
option for#[pyfunction]
and#[pymethods]
. #2702pyo3-build-config
: rebuild whenPYO3_ENVIRONMENT_SIGNATURE
environment variable value changes. #2727std::num
and Pythonint
. #2730Py::downcast()
as a companion toPyAny::downcast()
, as well asdowncast_unchecked()
for both types. #2734Warning
classes as well asPyErr::warn_explicit
. #2742abi3-py311
feature. #2776_PyErr_ChainExceptions()
for CPython. #2788PyVectorcall_NARGS
andPY_VECTORCALL_ARGUMENTS_OFFSET
for PyPy 3.8 and up. #2811PyList::get_item_unchecked
for PyPy. #2827Changed
PyCFunction::new_closure
to takename
anddoc
arguments. #2686PyType::is_subclass
,PyErr::is_instance
andPyAny::is_instance
now take&PyAny
instead of&PyType
arguments, so that they work with objects that pretend to be types using__subclasscheck__
and__instancecheck__
. #2695#[args]
attribute and passing "args" specification directly to#[pyfunction]
in favor of the new#[pyo3(signature = (...))]
option. #2702Option<T>
arguments to#[pyfunction]
and#[pymethods]
without also using#[pyo3(signature)]
to specify whether the arguments should be required or have defaults. #2703#[pyfunction]
and#[pymethods]
to use a common call "trampoline" to slightly reduce generated code size and compile times. #2705PyAny::cast_as()
andPy::cast_as()
are now deprecated in favor ofPyAny::downcast()
and the newPy::downcast()
. #2734PyAny::downcast()
. #2734__text_signature__
for all Python functions created using#[pyfunction]
and#[pymethods]
. #2784PySet::new
andPyFrozenSet::new
. #2795#[cfg(...)]
and#[pyo3(...)]
attributes on#[pyclass]
struct fields will now work. #2796PyFunction
on when building for abi3 or PyPy. #2838derive(FromPyObject)
to useintern!
when applicable for#[pyo3(item)]
. #2879Removed
pyproto
feature,#[pyproto]
macro, and all accompanying APIs. #2587Fixed
PyModule::filename
on PyPy. #2715PyCodeObject
is now once again defined with fields on Python 3.7. #2726TypeError
if#[new]
pymethods with no arguments receive arguments when called from Python. #2749NOARGS
argument calling convention for methods that have a singlepy: Python
argument (as a performance optimization). #2760isize
values toc_long
inPySlice::new
. #2769PyUnicodeDecodeError_Create
on PyPy leading to indeterminate behavior (typically aTypeError
). #2772**kwargs
to accept keyword arguments which share a name with a positional-only argument (as permitted by PEP 570). #2800PyObject_Vectorcall
on PyPy 3.9 and up. #2811PyCFunction::new_closure
. #2842v0.17.3
Compare Source
Packaging
Added
ExactSizeIterator
forPyListIterator
,PyDictIterator
,PySetIterator
andPyFrozenSetIterator
. #2676Fixed
impl FromPyObject for [T; N]
no longer accepting types passingPySequence_Check
, e.g. NumPy arrays, since version 0.17.0. This the same fix that was appliedimpl FromPyObject for Vec<T>
in version 0.17.1 extended to fixed-size arrays. #2675FunctionDescription::extract_arguments_fastcall
due to creating slices from a null pointer. #2687v0.17.2
Compare Source
Packaging
chrono
feature to convertchrono
types into types in thedatetime
module. #2612Added
num-bigint
feature onPyPy
. #2626Fixed
__richcmp__
for enums, fixing__ne__
returning always returningTrue
. #2622Option<&SomePyClass>
argument with a default. #2630impl FromPyObject for Vec<T>
no longer accepting types passingPySequence_Check
, e.g. NumPy arrays, since 0.17.0. #2631davidhewitt/pythonize
v0.18.0
Compare Source
est31/rcgen
v0.10.0
Compare Source
IsCa
enum to haveNoCa
andExplicitNoCa
andCa(...)
. Contributed by doraneko94.v0.9.4
Compare Source
seanmonstar/reqwest
v0.11.14
Compare Source
Proxy::no_proxy(url)
that works like the NO_PROXY environment variable.multipart::Part::headers(headers)
method to add custom headers.Response::bytes_stream()
.v0.11.13
Compare Source
ClientBuilder::dns_resolver()
option for custom DNS resolvers.ClientBuilder::tls_sni(bool)
option to enable or disable TLS Server Name Indication.Identity::from_pkcs8_pem()
constructor when usingnative-tls
.redirect::Policy::limited(0)
from following any redirects.v0.11.12
Compare Source
ClientBuilder::resolve_to_addrs()
which allows a slice of IP addresses to be specified for a single host.Response::upgrade()
to await whether the server agrees to an HTTP upgrade.pyros2097/rust-embed
v6.4.2
GREsau/schemars
v0.8.11
Compare Source
Added:
#[schemars(bound = "...")]
attributeChanged:
JsonSchema
now respects attributes on unit enum variants (https://github.com/GREsau/schemars/pull/152)serde-rs/serde
v1.0.152
Compare Source
v1.0.151
Compare Source
serde::
{ser
,de
}::StdError
to re-exportcore::error::Error
when serde is built withfeature="std"
off andfeature="unstable"
on (#2344)v1.0.150
Compare Source
Serialize
impl ofHashMap
andBTreeMap
(#2334)Serialize
andDeserialize
impls ofstd::sync::atomic
types on more platforms (#2337, thanks @badboy)v1.0.149
Compare Source
Serialize
impl ofBinaryHeap
,BTreeSet
, andHashSet
(#2333, thanks @jonasbb)v1.0.148
Compare Source
remote
derive for generic types that have private fields (#2327)v1.0.147
Compare Source
serde::de::value::EnumAccessDeserializer
which transforms anEnumAccess
into aDeserializer
(#2305)v1.0.146
Compare Source
v1.0.145
Compare Source
Sized
(#2282, thanks @ChayimFriedman2)serde-rs/json
v1.0.93
Compare Source
v1.0.92
Compare Source
v1.0.91
Compare Source
-Zrustdoc-scrape-examples
on docs.rs for nowv1.0.90
Compare Source
v1.0.89
Compare Source
v1.0.88
Compare Source
append
andclone_from
(#952, thanks @Lucretiel)v1.0.87
Compare Source
write_i128
andwrite_u128
methods toserde_json::Formatter
to control the formatting of 128-bit integers (#940, thanks @Lucretiel)v1.0.86
Compare Source
arbitrary_precision
feature even in no-std mode (#928, thanks @kvinwang)dtolnay/serde-yaml
v0.9.17
Compare Source
v0.9.16
Compare Source
-Zrustdoc-scrape-examples
on docs.rs for nowv0.9.15
Compare Source
v0.9.14
Compare Source
Deserializer
forTaggedValue
and&TaggedValue
(#339)tokio-rs/tokio
v1.25.0
: Tokio v1.25.01.25.0 (January 28, 2023)
Fixed
Added
broadcast::Sender::len
(#5343)Changed
v1.24.1
: Tokio v1.24.1Compare Source
This release fixes a compilation failure on targets without
AtomicU64
when using rustc older than 1.63. (#5356)v1.24.0
: Tokio v1.24.0Compare Source
The highlight of this release is the reduction of lock contention for all I/O operations (#5300). We have received reports of up to a 20% improvement in CPU utilization and increased throughput for real-world I/O heavy applications.
Fixed
AtomicU64
support detection (#5284)Added
per tick (#5186)
threads per runtime instance (#4250)
Changed
read_dir()
by chunking operations (#5309)ThreadId
implementation (#5329)spawn_blocking
task is running (#5115)v1.23.1
: Tokio v1.23.1Compare Source
This release forward ports changes from 1.18.4.
Fixed
pipe mode (#5336).
v1.23.0
: Tokio v1.23.0Compare Source
Fixed
ChildStdin
(#5216)async fn ready()
false positive for OS-specific events (#5231)Changed
yield_now
defers task until after driver poll (#5223)winapi
dependency withwindows-sys
(#5204)v1.22.0
: Tokio v1.22.0Compare Source
Added
Handle::runtime_flavor
(#5138)Mutex::blocking_lock_owned
(#5130)Semaphore::MAX_PERMITS
([#5144])merge()
to semaphore permits (#4948)mpsc::WeakUnboundedSender
([#5189])Added (unstable)
Command::process_group
(#5114)task::id()
andtask::try_id()
([#5171])Fixed
LocalOwnedTasks
(#5099)mark_pending
called illegally (#5093)unsync_load
on atomic types ([#5175])LocalSet
drop in thread local ([#5179])CachePadded
(#5106)Changed
tokio::io::copy
continue filling the buffer when writer stalls (#5066)coop::budget
fromLocalSet::run_until
([#5155])Notify
panic safe ([#5154])Documented
write_i8
to use signed integers (#5040)set_tos
methods (#5073)UdpSocket::recv
documentation ([#5150])TryLockError
forRwLock::try_write
([#5160])timeout
(#5118)timeout
checks only before poll (#5126)oneshot::Receiver
in docs ([#5198])Internal changes
Mutex::new
for globals (#5061)Option
aroundmio::Events
in io driver (#5078)io::handle
refs with scheduler:Handle (#5128)scheduler::Handle
(#5135)runtime::context
module ([#5140])driver.rs
([#5141])runtime::context
to unify thread-locals ([#5143])coop
mod intoruntime
([#5152])Runtime
into its own file ([#5159])Handle::enter
([#5163])enter
intocontext
([#5167])CoreStage
methods toCore
([#5182])Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.