However, it does introduce a new *os.File-based API which is much safer
to use for most usecases. These are adapted from libpathrs and are
the bare minimum to be able to operate more safely on an untrusted
rootfs where an attacker has write access (something that SecureJoin
cannot protect against). The new APIs are:
OpenInRoot, which resolves a path inside a rootfs and returns an
*os.File handle to the path. Note that the file handle returned by
OpenInRoot is an O_PATH handle, which cannot be used for reading or
writing (as well as some other operations -- see open(2) for more
details).
Reopen, which takes an O_PATH file handle and safely re-opens it to
"upgrade" it to a regular handle.
MkdirAll, which is a safe implementation of os.MkdirAll that can be
used to create directory trees inside a rootfs.
As these are new APIs, it is possible they may change in the future.
However, they should be safe to start migrating to as we have extensive
tests ensuring they behave correctly and are safe against various races
and other attacks.
Add MountedFast by @kolyshkin in moby/sys#100
Note: most users should keep using Mounted, which already incorporates all optimizations from MountedFast
Add the new go.opentelemetry.io/contrib/detectors/azure/azurevm package to provide a resource detector for Azure VMs. (#5422)
Add support to configure views when creating MeterProvider using the config package. (#5654)
The go.opentelemetry.io/contrib/config add support to configure periodic reader interval and timeout. (#5661)
Add log support for the autoexport package. (#5733)
Add support for disabling the old runtime metrics using the OTEL_GO_X_DEPRECATED_RUNTIME_METRICS=false environment variable. (#5747)
Add support for signal-specific protocols environment variables (OTEL_EXPORTER_OTLP_TRACES_PROTOCOL, OTEL_EXPORTER_OTLP_LOGS_PROTOCOL, OTEL_EXPORTER_OTLP_METRICS_PROTOCOL) in go.opentelemetry.io/contrib/exporters/autoexport. (#5816)
The go.opentelemetry.io/contrib/processors/minsev module is added.
This module provides and experimental logging processor with a configurable threshold for the minimum severity records must have to be recorded. (#5817)
The go.opentelemetry.io/contrib/processors/baggagecopy module.
This module is a replacement of go.opentelemetry.io/contrib/processors/baggage/baggagetrace. (#5824)
Changed
Improve performance of go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc with the usage of WithAttributeSet() instead of WithAttribute(). (#5664)
Improve performance of go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp with the usage of WithAttributeSet() instead of WithAttribute(). (#5664)
Update go.opentelemetry.io/contrib/config to latest released configuration schema which introduces breaking changes where Attributes is now a map[string]interface{}. (#5758)
Upgrade all dependencies of go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0. (#5847)
Fixed
Custom attributes targeting metrics recorded by the go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp are not ignored anymore. (#5129)
The double setup in go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace/example that caused duplicate traces. (#5564)
The superfluous response.WriteHeader call in go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp when the response writer is flushed. (#5634)
Use c.FullPath() method to set http.route attribute in go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin. (#5734)
Out-of-bounds panic in case of invalid span ID in go.opentelemetry.io/contrib/propagators/b3. (#5754)
Deprecated
The go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho package is deprecated.
If you would like to become a Code Owner of this module and prevent it from being removed, see #5550. (#5645)
The go.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron package is deprecated.
If you would like to become a Code Owner of this module and prevent it from being removed, see #5552. (#5646)
The go.opentelemetry.io/contrib/samplers/aws/xray package is deprecated.
If you would like to become a Code Owner of this module and prevent it from being removed, see #5554. (#5647)
The go.opentelemetry.io/contrib/processors/baggage/baggagetrace package is deprecated.
Use the added go.opentelemetry.io/contrib/processors/baggagecopy package instead. (#5824)
Use baggagecopy.NewSpanProcessor as a replacement for baggagetrace.New.
NewSpanProcessor accepts a Fitler function type that selects which baggage members are added to a span.
NewSpanProcessor returns a *baggagecopy.SpanProcessor instead of a trace.SpanProcessor interface.
The returned type still implements the interface.
Add the new go.opentelemetry.io/contrib/detectors/azure/azurevm package to provide a resource detector for Azure VMs. (#5422)
Add support to configure views when creating MeterProvider using the config package. (#5654)
The go.opentelemetry.io/contrib/config add support to configure periodic reader interval and timeout. (#5661)
Add log support for the autoexport package. (#5733)
Add support for disabling the old runtime metrics using the OTEL_GO_X_DEPRECATED_RUNTIME_METRICS=false environment variable. (#5747)
Add support for signal-specific protocols environment variables (OTEL_EXPORTER_OTLP_TRACES_PROTOCOL, OTEL_EXPORTER_OTLP_LOGS_PROTOCOL, OTEL_EXPORTER_OTLP_METRICS_PROTOCOL) in go.opentelemetry.io/contrib/exporters/autoexport. (#5816)
The go.opentelemetry.io/contrib/processors/minsev module is added.
This module provides and experimental logging processor with a configurable threshold for the minimum severity records must have to be recorded. (#5817)
The go.opentelemetry.io/contrib/processors/baggagecopy module.
This module is a replacement of go.opentelemetry.io/contrib/processors/baggage/baggagetrace. (#5824)
Changed
Improve performance of go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc with the usage of WithAttributeSet() instead of WithAttribute(). (#5664)
Improve performance of go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp with the usage of WithAttributeSet() instead of WithAttribute(). (#5664)
Update go.opentelemetry.io/contrib/config to latest released configuration schema which introduces breaking changes where Attributes is now a map[string]interface{}. (#5758)
Upgrade all dependencies of go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0. (#5847)
Fixed
Custom attributes targeting metrics recorded by the go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp are not ignored anymore. (#5129)
The double setup in go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace/example that caused duplicate traces. (#5564)
The superfluous response.WriteHeader call in go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp when the response writer is flushed. (#5634)
Use c.FullPath() method to set http.route attribute in go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin. (#5734)
Out-of-bounds panic in case of invalid span ID in go.opentelemetry.io/contrib/propagators/b3. (#5754)
Deprecated
The go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho package is deprecated.
If you would like to become a Code Owner of this module and prevent it from being removed, see #5550. (#5645)
The go.opentelemetry.io/contrib/instrumentation/gopkg.in/macaron.v1/otelmacaron package is deprecated.
If you would like to become a Code Owner of this module and prevent it from being removed, see #5552. (#5646)
The go.opentelemetry.io/contrib/samplers/aws/xray package is deprecated.
If you would like to become a Code Owner of this module and prevent it from being removed, see #5554. (#5647)
The go.opentelemetry.io/contrib/processors/baggage/baggagetrace package is deprecated.
Use the added go.opentelemetry.io/contrib/processors/baggagecopy package instead. (#5824)
Use baggagecopy.NewSpanProcessor as a replacement for baggagetrace.New.
NewSpanProcessor accepts a Fitler function type that selects which baggage members are added to a span.
NewSpanProcessor returns a *baggagecopy.SpanProcessor instead of a trace.SpanProcessor interface.
The returned type still implements the interface.
The IsEmpty method is added to the Instrument type in go.opentelemetry.io/otel/sdk/metric.
This method is used to check if an Instrument instance is a zero-value. (#5431)
Store and provide the emitted context.Context in ScopeRecords of go.opentelemetry.io/otel/sdk/log/logtest. (#5468)
The go.opentelemetry.io/otel/semconv/v1.26.0 package.
The package contains semantic conventions from the v1.26.0 version of the OpenTelemetry Semantic Conventions. (#5476)
The AssertRecordEqual method to go.opentelemetry.io/otel/log/logtest to allow comparison of two log records in tests. (#5499)
The WithHeaders option to go.opentelemetry.io/otel/exporters/zipkin to allow configuring custom http headers while exporting spans. (#5530)
Changed
Tracer.Start in go.opentelemetry.io/otel/trace/noop no longer allocates a span for empty span context. (#5457)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/example/otel-collector. (#5490)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/example/zipkin. (#5490)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/exporters/zipkin. (#5490)
The exporter no longer exports the deprecated "otel.library.name" or "otel.library.version" attributes.
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/sdk/resource. (#5490)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/sdk/trace. (#5490)
SimpleProcessor.OnEmit in go.opentelemetry.io/otel/sdk/log no longer allocates a slice which makes it possible to have a zero-allocation log processing using SimpleProcessor. (#5493)
Use non-generic functions in the Start method of "go.opentelemetry.io/otel/sdk/trace".Trace to reduce memory allocation. (#5497)
service.instance.id is populated for a Resource created with "go.opentelemetry.io/otel/sdk/resource".Default with a default value when OTEL_GO_X_RESOURCE is set. (#5520)
Improve performance of metric instruments in go.opentelemetry.io/otel/sdk/metric by removing unnecessary calls to time.Now. (#5545)
Fixed
Log a warning to the OpenTelemetry internal logger when a Record in go.opentelemetry.io/otel/sdk/log drops an attribute due to a limit being reached. (#5376)
Identify the Tracer returned from the global TracerProvider in go.opentelemetry.io/otel/global with its schema URL. (#5426)
Identify the Meter returned from the global MeterProvider in go.opentelemetry.io/otel/global with its schema URL. (#5426)
Log a warning to the OpenTelemetry internal logger when a Span in go.opentelemetry.io/otel/sdk/trace drops an attribute, event, or link due to a limit being reached. (#5434)
Document instrument name requirements in go.opentelemetry.io/otel/metric. (#5435)
Prevent random number generation data-race for experimental rand exemplars in go.opentelemetry.io/otel/sdk/metric. (#5456)
Fix counting number of dropped attributes of Record in go.opentelemetry.io/otel/sdk/log. (#5464)
Fix panic in baggage creation when a member contains 0x80 char in key or value. (#5494)
Correct comments for the priority of the WithEndpoint and WithEndpointURL options and their corresponding environment variables in go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc. (#5508)
Retry trace and span ID generation if it generated an invalid one in go.opentelemetry.io/otel/sdk/trace. (#5514)
Fix stale timestamps reported by the last-value aggregation. (#5517)
Indicate the Exporter in go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp must be created by the New method. (#5521)
Improved performance in all {Bool,Int64,Float64,String}SliceValue functions of go.opentelemetry.io/attributes by reducing the number of allocations. (#5549)
Replace invalid percent-encoded octet sequences with replacement char in go.opentelemetry.io/otel/baggage. (#5528)
[1.27.0/0.49.0/0.3.0] 2024-05-21
Added
Add example for go.opentelemetry.io/otel/exporters/stdout/stdoutlog. (#5242)
Add RecordFactory in go.opentelemetry.io/otel/sdk/log/logtest to facilitate testing exporter and processor implementations. (#5258)
Add RecordFactory in go.opentelemetry.io/otel/log/logtest to facilitate testing bridge implementations. (#5263)
The IsEmpty method is added to the Instrument type in go.opentelemetry.io/otel/sdk/metric.
This method is used to check if an Instrument instance is a zero-value. (#5431)
Store and provide the emitted context.Context in ScopeRecords of go.opentelemetry.io/otel/sdk/log/logtest. (#5468)
The go.opentelemetry.io/otel/semconv/v1.26.0 package.
The package contains semantic conventions from the v1.26.0 version of the OpenTelemetry Semantic Conventions. (#5476)
The AssertRecordEqual method to go.opentelemetry.io/otel/log/logtest to allow comparison of two log records in tests. (#5499)
The WithHeaders option to go.opentelemetry.io/otel/exporters/zipkin to allow configuring custom http headers while exporting spans. (#5530)
Changed
Tracer.Start in go.opentelemetry.io/otel/trace/noop no longer allocates a span for empty span context. (#5457)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/example/otel-collector. (#5490)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/example/zipkin. (#5490)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/exporters/zipkin. (#5490)
The exporter no longer exports the deprecated "otel.library.name" or "otel.library.version" attributes.
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/sdk/resource. (#5490)
Upgrade go.opentelemetry.io/otel/semconv/v1.25.0 to go.opentelemetry.io/otel/semconv/v1.26.0 in go.opentelemetry.io/otel/sdk/trace. (#5490)
SimpleProcessor.OnEmit in go.opentelemetry.io/otel/sdk/log no longer allocates a slice which makes it possible to have a zero-allocation log processing using SimplePro...
_Description has been truncated_
Bumps the go-modules group with 11 updates in the / directory:
0.2.5
0.3.0
1.4.1
1.4.2
0.19.2
0.20.1
0.5.0
0.6.0
1.2.2
1.3.0
2.17.0
2.18.0
0.49.0
0.53.0
0.24.0
0.25.0
0.17.0
0.19.0
0.25.0
0.27.0
1.62.0
1.65.0
Updates
github.com/cyphar/filepath-securejoin
from 0.2.5 to 0.3.0Release notes
Sourced from github.com/cyphar/filepath-securejoin's releases.
Commits
b984b9c
VERSION: bump to 0.3.06ae6d58
merge #15 into cyphar/filepath-securejoin:main0a923e5
README: update to describe and strongly recommend new APIsebb9f1f
mkdirall: switch away from O_PATH for mkdir loop975d7b3
open: add OpenInRoot and Reopen tests1e6990b
open: add Open(at)InRoot and Reopen96f72c6
procfs: make procSelfFdReadlink more generic with genericsa91c705
lookup: clean up test helperfbc8097
proc: do not export internal PROC_ constantsce95b91
gha: update actions/checkout to v4Updates
github.com/go-logr/logr
from 1.4.1 to 1.4.2Release notes
Sourced from github.com/go-logr/logr's releases.
Commits
1205f42
Merge pull request #295 from go-logr/dependabot/github_actions/actions/checko...ccedcbd
Merge pull request #294 from go-logr/dependabot/github_actions/github/codeql-...bead577
build(deps): bump actions/checkout from 4.1.5 to 4.1.6a492d95
build(deps): bump github/codeql-action from 3.25.4 to 3.25.519ad07c
build(deps): bump ossf/scorecard-action from 2.3.1 to 2.3.31c97a21
build(deps): bump actions/checkout from 4.1.4 to 4.1.5f70c5b5
build(deps): bump github/codeql-action from 3.25.3 to 3.25.44ade8d3
build(deps): bump golangci/golangci-lint-action from 5.3.0 to 6.0.188d98bd
Merge pull request #289 from go-logr/dependabot/github_actions/golangci/golan...432cd86
Merge pull request #288 from go-logr/dependabot/github_actions/actions/setup-...Updates
github.com/google/go-containerregistry
from 0.19.2 to 0.20.1Release notes
Sourced from github.com/google/go-containerregistry's releases.
Commits
c3d1dcc
Createremote.Push
(#1978)d36047a
Restore blind-write to remote.Put (#1970)9915a85
Referrer API must return correct Content-Type (#1968)Updates
github.com/moby/sys/sequential
from 0.5.0 to 0.6.0Release notes
Sourced from github.com/moby/sys/sequential's releases.
Commits
03b9f8d
Merge pull request #94 from thaJeztah/bump_mountinfobdd898e
mount: update github.com/moby/sys/mountinfo v0.5.0fbd276c
Merge pull request #93 from kolyshkin/ci-f35afb7f50
Merge pull request #92 from kolyshkin/more-linters9372d68
ci: bump Fedora to 359a90d6d
Format code with gofumpt, enable linter85e4bfd
Makefile: update golangci-lint to 1.43.0f0fb439
.gitattributes: addb016007
ci: add unconvert and errorlint linters to golanci6056970
Fix errorlint warningsUpdates
github.com/skeema/knownhosts
from 1.2.2 to 1.3.0Commits
9485bde
docs: add PR template and CONTRIBUTING.md guide; minor README tweaks8b8ca37
host matching: handle wildcards with non-standard port (#10)7c797a4
Merge pull request #9 from skeema/certs-backwards-compat53a26cc
Minor adjustments based on initial PR feedback69b4a62
certs: reimplement previous commit to maintain backwards compatd314bf3
Support cert authorities5832aa8
ci: send coverage to Coveralls; upgrade action versions7acc57b
go.mod: update golang.org/x dependenciesUpdates
github.com/sylabs/sif/v2
from 2.17.0 to 2.18.0Release notes
Sourced from github.com/sylabs/sif/v2's releases.
Commits
a2a8352
Merge pull request #374 from tri-adam/delete-objects68683b4
feat: add DeleteObjects94b0b65
build(deps): bump github.com/google/go-containerregistry (#376)48f265f
Merge pull request #373 from tri-adam/compactione8dad67
refactor: improve delete compaction logic8783e3b
refactor: improve compaction logic for AddObjecte3aa617
Merge pull request #375 from tri-adam/update-readme8f557d5
docs: update links to Go docsde30604
Merge pull request #368 from tri-adam/go-1.23-rc9ea2328
ci: add testing against Go 1.23 RCUpdates
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp
from 0.49.0 to 0.53.0Release notes
Sourced from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp's releases.
... (truncated)
Changelog
Sourced from go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp's changelog.
... (truncated)
Commits
af75717
Release v1.28.0/v0.53.0/v0.22.0/v0.8.0/v0.3.0/v0.1.0 (#5847)b6a9271
fix(deps): update module github.com/aws/aws-sdk-go to v1.54.13 (#5843)66306fe
Add@XSAM
and@dmathieu
as repository maintainers (#5838)f783d1f
Upgrade Go versions in CI (#5845)d6e791c
fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.58.0 (...efde831
Removeotelmongo
deprecation while we onboard a Code Owner (#5840)32d3e6a
fix(deps): update module google.golang.org/grpc to v1.65.0 (#5837)1ce0d1c
Revert toolchain addition to autoexport (#5841)53f34f2
fix(deps): update module cloud.google.com/go/compute/metadata to v0.4.0 (#5835)56e279e
fix(deps): update module github.com/aws/aws-sdk-go to v1.54.12 (#5834)Updates
go.opentelemetry.io/otel
from 1.24.0 to 1.28.0Changelog
Sourced from go.opentelemetry.io/otel's changelog.
... (truncated)
Commits
81216fb
Releases v1.28.0/v0.50.0/v0.4.0 (#5569)8279a1a
Add@XSAM
and@dmathieu
as repository maintainers (#5558)cff1a25
chore(deps): update otel/opentelemetry-collector-contrib docker tag to v0.104...0485de2
Move time.Now call into exemplar reservoir to improve performance (#5545)1cefb17
chore(deps): update google.golang.org/genproto/googleapis/rpc digest to f6361...874f2a2
chore(deps): update google.golang.org/genproto/googleapis/api digest to f6361...b477e34
sdk/log: Add filtering Processor example (#5543)d7e5001
sdk/log: Fix ExampleProcessor_redact to clone the record (#5559)4987a1d
Split the span start/end benchmarks and test start with links and attributes ...82fe9aa
Generateinternal/transform
inotlploggrpc
(#5553)Updates
go.opentelemetry.io/otel/metric
from 1.24.0 to 1.28.0Changelog
Sourced from go.opentelemetry.io/otel/metric's changelog.