Skip to content

Bump golang.org/x/crypto from 0.36.0 to 0.45.0#1

Open
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/go_modules/golang.org/x/crypto-0.45.0
Open

Bump golang.org/x/crypto from 0.36.0 to 0.45.0#1
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/go_modules/golang.org/x/crypto-0.45.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 20, 2025

Copy link
Copy Markdown

Bumps golang.org/x/crypto from 0.36.0 to 0.45.0.

Commits
  • 4e0068c go.mod: update golang.org/x dependencies
  • e79546e ssh: curb GSSAPI DoS risk by limiting number of specified OIDs
  • f91f7a7 ssh/agent: prevent panic on malformed constraint
  • 2df4153 acme/autocert: let automatic renewal work with short lifetime certs
  • bcf6a84 acme: pass context to request
  • b4f2b62 ssh: fix error message on unsupported cipher
  • 79ec3a5 ssh: allow to bind to a hostname in remote forwarding
  • 122a78f go.mod: update golang.org/x dependencies
  • c0531f9 all: eliminate vet diagnostics
  • 0997000 all: fix some comments
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.36.0 to 0.45.0.
- [Commits](golang/crypto@v0.36.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update go code labels Nov 20, 2025
ohalushchak-exadel added a commit that referenced this pull request Jul 16, 2026
…king

Correctness batch first (Fable found the module was silently broken):

- Blocker #1 (fan-out ctx dies on hook return). The framework cancels
  each hook's own ctx the moment the hook returns
  (hooks/hookexecution/execution.go), so a fan-out rooted in an
  entrypoint hook's ctx was Done before the goroutine spawned.
  Consequence: every provider call started already-cancelled, zero
  segments landed, and the failure was silent (errors stayed inside
  providerResult.Errs and analytics reported Success). Removed the
  entrypoint hook entirely; the async holder now allocates inside
  HandleProcessedAuctionHook with a Background-rooted ctx, cancelled
  via defer async.cancel() in the response hook. That also fixes
  finding prebid#6 (response hook stalling for its full group timeout when
  processed-auction never ran) — no holder ever means the response
  hook short-circuits cleanly.
- Blocker prebid#2 (data race on live BidRequest). The fan-out goroutine
  read Site/Imp/Device.Geo/User.EIDs and unmarshalled User.Ext while
  the auction continued to mutate the wrapper (RebuildRequest,
  privacy scrubbing, other modules). deriveInputs now runs
  synchronously on the caller's stack; the goroutine only sees the
  tmpInputs value snapshot and never touches the BidRequest.
- Finding prebid#10 (no hooks-level test). New hooks_test.go exercises
  HandleProcessedAuctionHook → HandleAuctionResponseHook through real
  hookstage plumbing, including simulating the framework's per-hook
  ctx cancellation. This is the test that would have caught #1 in
  the first place; it fails against the pre-fix code.

Then the small independent correctness fixes:

- prebid#4 registry bare-record parse: fall back to decoding the raw
  payload as PropertyRecord when the {"property": {...}} envelope
  isn't found. The old code negative-cached bare records as
  "not found" for 300 s, silently.
- prebid#7 per-provider request IDs: build ctxReq and idReq inside
  callProvider so two colluding providers don't get the same
  request_id pair for the same auction.
- prebid#8 hostile domain: cap site.domain / app.bundle at 253 chars and
  restrict to `[a-z0-9._-]`. Rejects invalid keys before touching
  the LRU or the registry.

Then the design/product calls user directed on:

- prebid#3 fail-closed on identity error: providerResult tracks
  IdentityAttempted (URL configured AND tokens present). When
  IdentityAttempted is true but the call returned no response,
  mergeSegments drops all offers for that provider. A hostile or
  flaky identity endpoint can no longer convert identity-gated
  packages into unconditionally-served packages.
- prebid#5 cap segments + batch per-bid targeting write. New config knobs
  MaxSegments (default 128) and MaxSegmentValueLen (default 256)
  bound both the total segment count and each segment's length,
  regardless of what a provider returns. Response-hook per-bid
  targeting now builds one map from segments and writes it via a
  single sjson.SetBytes per bid at ext.prebid.targeting instead of
  O(bids × segments) rewrites. Provider names are also validated
  in Config.validated() to prevent them from colliding with Prebid's
  reserved targeting prefixes (hb_*).
- prebid#9 wire the masking config. coarseGeo now takes cfg and honors
  PreserveMetro / PreserveZip / PreserveCity / LatLongPrecision
  (with math.Trunc for lat/lon precision); extractIdentities honors
  PreserveMobileIds (drops maid-typed tokens when masking enabled
  and false) and PreserveEids (allowlist over the default set).
  Deleted the now-empty masking.go — every knob is now wired
  through adapter.go at input-derivation time.

Nits also addressed:

- Analytics no longer reports Success when every provider errored;
  errCount from routerResult drives Status/ResultStatus explicitly.
- site.page's query and fragment components are stripped before
  emission as an artifact ref — gclid / click IDs / occasional
  email leak into the identity-free context path.
- Ordering test reframed: with DecorrelationMaxDelayMs > 0 the
  second-to-spawn call is deterministically delayed, so HTTP arrival
  order actually reflects the shuffle instead of scheduler noise.
- Panic-recovery test replaced with one that injects a panicking
  RoundTripper — actually exercises the recover paths in
  callProvider's inner goroutines.
- Nil-guard on payload.BidResponse in the response-hook mutation.
- Removed unused asyncRequest.err field.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants