Skip to content

build(deps): Bump @angular/cli from 21.2.4 to 21.2.5 - #119

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/main/angular/cli-21.2.5
Closed

build(deps): Bump @angular/cli from 21.2.4 to 21.2.5#119
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/main/angular/cli-21.2.5

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Mar 27, 2026

Copy link
Copy Markdown
Contributor

Bumps @angular/cli from 21.2.4 to 21.2.5.

Release notes

Sourced from @​angular/cli's releases.

21.2.5

@​angular/cli

Commit Description
feat - cadf9b201 support custom port in MCP devserver start tool

@​angular/ssr

Commit Description
fix - bbc255419 allow underscores in host validation
fix - b1fe66a7f patch Headers.forEach in cloneRequestAndPatchHeaders
Changelog

Sourced from @​angular/cli's changelog.

21.2.5 (2026-03-27)

@​angular/cli

Commit Type Description
cadf9b201 feat support custom port in MCP devserver start tool

@​angular/ssr

Commit Type Description
bbc255419 fix allow underscores in host validation
b1fe66a7f fix patch Headers.forEach in cloneRequestAndPatchHeaders

20.3.22 (2026-03-27)

@​angular-devkit/build-angular

Commit Type Description
5978eeeff fix update picomatch to 4.0.4

@​angular-devkit/core

Commit Type Description
6e9b92612 fix update picomatch to 4.0.4

@​angular/build

Commit Type Description
6f209c26d fix update picomatch to 4.0.4

19.2.23 (2026-03-27)

@​angular/cli

Commit Type Description
67cfbe32f fix update picomatch to 4.0.4

... (truncated)

Commits
  • 3018612 release: cut the v21.2.5 release
  • 349bd43 build: update dependency picomatch to v4.0.4
  • cadf9b2 feat(@​angular/cli): support custom port in MCP devserver start tool
  • bbc2554 fix(@​angular/ssr): allow underscores in host validation
  • 88ac998 build: update cross-repo angular dependencies
  • 022e0ef build: update github/codeql-action action to v4.34.1
  • c363f19 build: update dependency node to v22.22.2
  • b1fe66a fix(@​angular/ssr): patch Headers.forEach in cloneRequestAndPatchHeaders
  • See full diff 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 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)

Bumps [@angular/cli](https://github.com/angular/angular-cli) from 21.2.4 to 21.2.5.
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](angular/angular-cli@v21.2.4...v21.2.5)

---
updated-dependencies:
- dependency-name: "@angular/cli"
  dependency-version: 21.2.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Mar 27, 2026
@dependabot @github

dependabot Bot commented on behalf of github Mar 28, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #145.

@dependabot dependabot Bot closed this Mar 28, 2026
adamtasteslikegood added a commit that referenced this pull request Apr 30, 2026
…2901)

## Summary

- Wires a Cloud Run **Job** (`flask-backend-migrate`) into
`cloudbuild.yaml` between "Push Flask Backend Version Tag" and "Deploy
Flask Backend". The Job reuses the just-pushed `flask-backend` image,
overrides the command to `flask db upgrade`, mirrors the Flask service's
env + secrets + VPC config, and runs to completion with `--wait`. A
failing migration aborts the build so the old Flask revision keeps
serving traffic — no half-deployed schema can ship alongside code that
depends on it.
- Bumps the `Backend` submodule to `dev` tip (`15ba254`) which now
contains the Alembic merge migration (Backend PR #119, merged). With
both pieces in place, the next release tag heals prod's `recipe.status`
/ `recipe.slug` / `recipe.is_public` schema gap.
- Fixes `.gitmodules`: `branch = dev/backend_sub222` → `branch = dev`.
The old branch name no longer exists on the Backend remote; this
restores `git submodule update --remote Backend` so the cookbook can
fast-forward the pointer cleanly.
- Adds explicit "Branching strategy (FINAL)" section, new "Database
migrations" section documenting the Cloud Run Job + multi-PR head
conflict policy, updated "Release flow" to include the migrate step, and
rewritten "Backend submodule" non-obvious pattern in `CLAUDE.md` and
`AGENTS.md` (mirrored).

## Why

Recipe generation and auth are 500ing on tasteslikegood.org because the
live Cloud SQL DB is missing the `recipe.status`, `recipe.slug`, and
`recipe.is_public` columns. Two issues compounded:

1. **No migration step in the deploy pipeline.** `cloudbuild.yaml` built
and deployed Flask but never ran `flask db upgrade`, so schema-changing
PRs (Backend #115, #116) shipped code that referenced columns that
didn't exist on prod.
2. **Branched Alembic heads.** `03da1e46c9a5` (`recipe.status`) and
`fc014cd27ab4` (`recipe.slug`, `recipe.is_public`) both branched off
`e5a1b3c7d9f2`. Even if migrations had been running, Alembic would have
refused to upgrade past two heads. Resolved in Backend #119 with a merge
migration (`c60f6530f4ff`).

## Test plan

- [x] Backend PR #119 merged to Backend `dev`. Merge migration verified
locally on fresh SQLite — `recipe` table has `status`, `slug`,
`is_public`; `alembic_version` pinned to single head.
- [x] `.gitmodules` syntax valid; submodule pointer updates cleanly with
`git submodule update`.
- [ ] Cookbook CI green
- [ ] After merge to `dev`: PR `dev` → `main` with `v0.2.2` version +
CHANGELOG bump. The release tag fires the new pipeline; the Cloud Run
migrate Job runs against prod Cloud SQL, applies the merge migration,
and the live errors clear.

## Operational notes

- The migrate Job uses `--max-retries=1`, `--task-timeout=600`, runs in
the `default` VPC + subnet so it can hit Cloud SQL via private IP.
- **First execution**: when this PR's release builds, `gcloud run jobs
deploy flask-backend-migrate ...` will create the Job for the first
time. The subsequent `execute --wait` will apply all pending migrations
(including the merge) in one shot. If something goes wrong, the Flask
service is NOT redeployed and the build aborts.
- Manual override for hotfixes: `gcloud run jobs execute
flask-backend-migrate --region=us-central1 --wait` after the Job exists.

## Companion

- Backend PR #119 (merged):
adamtasteslikegood/tasteslikegood.com#119

🤖 Generated with [Claude Code](https://claude.com/claude-code)
adamtasteslikegood added a commit that referenced this pull request Apr 30, 2026
…2904)

## Summary

Bump `package.json` from `0.2.1` → `0.2.2` and add the v0.2.2 CHANGELOG
entry. On merge, `release.yml` extracts the version, tags `v0.2.2`, and
pushes the tag — which hits the Cloud Build trigger (regex
`^v[0-9]+\.[0-9]+\.[0-9]+$`) and runs `cloudbuild.yaml`.

## What ships

The pending `dev` work that lands on `main` with this PR:

| Cookbook commit | What |
|---|---|
| `9edb772` (#2901) | Cloud Run migrate Job + `.gitmodules` fix + FINAL
branching/release docs |
| `1e0143e` (#2901) | Backend submodule pointer bump to `15ba254` |
| `cffd3e3` (#2901) | Migrate Job `waitFor` optimization (Copilot review
fix) |
| Backend `15ba254` | Alembic merge migration + Backend
CLAUDE.md/AGENTS.md rewrite (Backend #119) |

## Why this fixes prod

When the v0.2.2 tag fires the Cloud Build trigger:

1. **`flask-backend-migrate` Job runs** (new in v0.2.2). It overrides
the container command to `flask db upgrade`, mounts the same
`DATABASE_URL` secret as the Flask service, and runs to completion
against Cloud SQL via private VPC IP. With the merge migration in place,
Alembic walks the linear path from current → `c60f6530f4ff (head)` and
applies `recipe.status`, `recipe.slug`, `recipe.is_public` to the prod
schema.
2. **If the migration fails, the build aborts.** The old Flask revision
keeps serving traffic; nothing broken can ship alongside the new code.
3. **Flask service redeploys.** Code that references the new columns now
sees them in the schema.
4. **Express service redeploys.** Frontend stays in lockstep.

Recipe generation and auth resume on `tasteslikegood.org` the moment
step 4 completes.

## Test plan

- [ ] CI green
- [ ] Merge → `release.yml` creates `v0.2.2` tag + GitHub Release
- [ ] Cloud Build trigger fires on the tag
- [ ] `flask-backend-migrate` Job: status `Succeeded`, log shows
`Running upgrade ... -> c60f6530f4ff, merge status and slug heads`
- [ ] `flask-backend` Cloud Run service: new revision serving 100%
traffic, `/api/health` 200s
- [ ] `express-frontend` Cloud Run service: new revision serving 100%
traffic
- [ ] Browser: hit `https://www.tasteslikegood.org/`, generate a recipe
end-to-end, log in via Google. Both should succeed without 500s.

## Rollback plan

If the migrate Job succeeds but the new Flask revision fails health
checks, Cloud Run auto-rolls back to the previous revision — but the
schema is now ahead. The old Flask code tolerates extra columns
(SQLAlchemy ignores unmapped columns), so this is safe.

If the migrate Job itself fails, no Flask redeploy happens; investigate
the Job logs at `gcloud run jobs executions list
--job=flask-backend-migrate --region=us-central1`.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
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 javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants