Skip to content

Bump alpine from 3.20 to 3.24 - #11

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/docker/alpine-3.24
Closed

Bump alpine from 3.20 to 3.24#11
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/docker/alpine-3.24

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 30, 2026

Copy link
Copy Markdown

Warning

Cooldown could not be applied because no publication date was available from the registry.

Bumps alpine from 3.20 to 3.24.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file docker Pull requests that update docker code labels Aug 30, 2026
@dependabot
dependabot Bot force-pushed the dependabot/docker/alpine-3.24 branch 2 times, most recently from 67284a5 to 66709fa Compare September 1, 2026 16:39
Bumps alpine from 3.20 to 3.24.

---
updated-dependencies:
- dependency-name: alpine
  dependency-version: '3.24'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/docker/alpine-3.24 branch from 66709fa to 95ada77 Compare September 4, 2026 15:13
@dependabot @github

dependabot Bot commented on behalf of github Sep 4, 2026

Copy link
Copy Markdown
Author

Superseded by #14.

@dependabot dependabot Bot closed this Sep 4, 2026
@dependabot
dependabot Bot deleted the dependabot/docker/alpine-3.24 branch September 4, 2026 15:55
karthik1729 added a commit that referenced this pull request Sep 12, 2026
…, and stop what a generation bump left running

Findings #28, #33, #35, #37, plus stop.rs #9, mounts #10, intercept port #11
and wishes index #12.

- `pull_one` bounds the COPY into `btrfs receive` and the child's own exit by
  `peer_send_timeout_secs`, killing it on expiry. The request timeout could
  only fire on a body still being read, so a receive that stopped reading — or
  that never exited after EOF — held the volume's pull slot for the life of
  the process.
- The janitor's `btrfs subvolume delete` runs under `timeout -s KILL 300`: it
  is a blocking call on the janitor's own thread and `btrfs` has no deadline
  of its own, so one wedged delete stopped every other sweep.
- The peer send handler's Volume GET is bounded at 10s and an unreadable
  answer is UNKNOWN, not `quota_gb: 0` — refusing a send on a guessed quota
  costs a replica its only source, and the puller's own `take(max + 1)` still
  bounds what lands.
- `mount_homes` attempts one repair per 30s window and tells a concurrent
  caller so rather than queueing behind a mount against a dead export.
- `stop_environment` runs the teardown and recomputes `Replicated` before
  stamping `observed_generation` on a stop at an older generation.
- `mkdir_env_mounts` validates every mount before creating any: dedup is by
  folder, so a second service's invalid mount was never checked.
- `intercept_plan` refuses a port rewrite naming a port the service does not
  declare (and 0 on either side), settling the wish `Off/PortsInvalid`; the
  slice matches by port name, so such a rewrite scaled the real service to
  zero and delivered the traffic nowhere. `plan`/`wishes` are read with `get`,
  never indexed — a missing key in a reconciler is a downed controller.

Tests: the 413 test now serves a real Volume (it had been asserting the
refusal that an unreadable one produced), with its sibling for the unknown
case; unit tests for the mount dedup and the port-map check; a reconcile test
for the generation bump while stopped.
karthik1729 added a commit that referenced this pull request Sep 12, 2026
Review findings #6, #7, #11, #15, #16, #18, #80, #81, #129.

Every fix here is one shape: a read that failed was being turned into a
value somebody then acted on. A stat that errored listed an image as
empty; a visibility read that errored flipped a public repo out of every
listing; a body read that errored told the pusher their pack had holes.
They now skip, and say what happened.

Alongside them: poisoned mutexes recover instead of wedging the node
(`LockOrRecover`), accepted peer streams get the dead-peer bounds the
dialling side already had, the stranded-merge lane paces whatever its
scan found, `remove_protection` validates its pattern like `set` does,
a marker's description can no longer forge the fields after it, a blank
or too-short `KLOUDLITE_JWT_SECRET` refuses the boot by name instead of
panicking, and `head_target` has no `unwrap`.
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 docker Pull requests that update docker code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants