Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
445ad4f
feat: add listing file number (#5558)
KrissDrawing Nov 17, 2025
51d6c9c
feat: add additional neighborhood amenities (#5563)
KrissDrawing Nov 17, 2025
f642fc1
feat: msq crud refactor (#5543)
mcgarrye Nov 17, 2025
d784a68
feat: build and publish dbseed container image (#5602)
avrittrohwer Nov 19, 2025
263fff9
fix: use conductor values for Common App form step checkpoints (#5504)
jaredcwhite Nov 19, 2025
27d8f00
feat: non-regulated fields implementation (#5455)
matzduniuk Nov 20, 2025
81e3009
feat: waitlist lottery - update get started screen states (#5574)
millord Nov 21, 2025
0ed07f7
feat: Waitlist Lottery - Lottery Results Screen (#5581)
millord Nov 21, 2025
2f0a9c8
feat: add copy for Common App pages for waitlist lottery listing (#5523)
jaredcwhite Nov 22, 2025
a617f10
feat: waitlist lottery - listing detail page states update (#5575)
millord Nov 24, 2025
f925203
fix: return proper translations for lottery published emails (#5515)
KrissDrawing Nov 25, 2025
9f678a5
feat: new listing field credit screening fee (#5584)
KrissDrawing Nov 25, 2025
8b99761
fix: set expire_after on applications (#5620)
ludtkemorgan Nov 25, 2025
f05249d
feat: preselect jurisdiction (#5582)
emilyjablonski Nov 25, 2025
da51299
fix: add missing credit screening fee string (#5624)
KrissDrawing Nov 25, 2025
7db0995
fix: marketing type months csv (#5622)
emilyjablonski Nov 25, 2025
8723383
feat: add waitlist lottery translation for the confirmation email (#5…
jaredcwhite Nov 28, 2025
9df334c
fix: pdf links in export not working (#5634)
emilyjablonski Dec 1, 2025
0c2c05d
fix: non regulated units table update (#5612)
matzduniuk Dec 2, 2025
70f5d12
fix: non regulated listing table update (#5615)
matzduniuk Dec 2, 2025
cc55be8
feat: partners new marketing flyer section (#5621)
KrissDrawing Dec 2, 2025
a6df519
fix: toggle off building selection criteria (#5632)
KrissDrawing Dec 3, 2025
02df977
feat: bloom-dev open tofu config (#5580)
avrittrohwer Dec 3, 2025
9002171
feat: 5628/Add password parameters to change password screen (#5636)
millord Dec 4, 2025
92239a2
fix: Edit send email page copy (#5633)
millord Dec 4, 2025
9282da3
added missing case for waitlistlottery for desc (#5645)
millord Dec 4, 2025
f43a654
feat: add marketing flyers to public site (#5631)
KrissDrawing Dec 5, 2025
447e153
Feat: Listing page update for non regulated (#5623)
matzduniuk Dec 8, 2025
9159fdc
fix: create pii deletion cron job of applications (#5601)
ludtkemorgan Dec 8, 2025
45d1dda
feat: properties toggle, preferences tabs (#5646)
emilyjablonski Dec 8, 2025
76b0e12
fix: router.locale on Terms page, updated page copy (#5643)
jaredcwhite Dec 9, 2025
1f336df
fix: Waitlist Lottery - Lottery Results Screen - missing translations…
millord Dec 9, 2025
483b091
fix: show lottery tab for waitlist lottery (#5673)
ludtkemorgan Dec 10, 2025
645d86c
feat: require min x images (#5656)
matzduniuk Dec 10, 2025
63498a0
feat: referral opportunity question update (#5672)
matzduniuk Dec 10, 2025
8250e2e
fix: user delete cron job (#5626)
ludtkemorgan Dec 10, 2025
42fc713
feat: allow alt text on listing images (#5675)
KrissDrawing Dec 11, 2025
959792e
fix: filter ami charts by jurisdiction in draft listing (#5678)
emilyjablonski Dec 11, 2025
4821214
fix: warn of user deletion cron job (#5652)
ludtkemorgan Dec 11, 2025
06b3996
feat: Password Expiration Modal (#5616)
millord Dec 12, 2025
f24156d
feat: Lottery results screen content update (#5657)
millord Dec 12, 2025
f6bb7b8
fix: add enableApplicationStatus flag (#5692)
KrissDrawing Dec 15, 2025
84d45e5
fix: missing translations dec 2025 and github action (#5681)
emilyjablonski Dec 15, 2025
3b1f031
feat: show a11y priority type in unit table (#5683)
emilyjablonski Dec 15, 2025
c93c75e
fix: add new applications statuses and fields (#5689)
KrissDrawing Dec 16, 2025
908bf07
feat: upgrade Bloom to Node 22, Next 15, and React 19 (#5557)
jaredcwhite Dec 16, 2025
cce3da9
chore(deps): bump form-data for security alert (#5702)
ludtkemorgan Dec 17, 2025
e9dbb36
fix: require alt text in la (#5688)
KrissDrawing Dec 17, 2025
8e54552
feat: AWS deployment instructions (#5671)
avrittrohwer Dec 18, 2025
e3ff312
fix: add application status dropdown with tag (#5703)
KrissDrawing Dec 23, 2025
fa26e38
fix: moving password expiry earlier in our login flow (#5687)
YazeedLoonat Dec 23, 2025
c977a6d
feat: Adjust password expired error (#5697)
millord Dec 23, 2025
62cc42e
fix: accessible feature lists (#5725)
emilyjablonski Dec 24, 2025
d231bc1
fix: add smoking policy radio (#5694)
KrissDrawing Jan 2, 2026
f98107d
feat: changes to listing DTOs for snapshots (#5721)
YazeedLoonat Jan 5, 2026
1a4f0ed
feat: application create and read refactor (#5701)
mcgarrye Jan 6, 2026
a9114d7
fix: move non-regulated selection to jurisdiction modal (#5690)
ludtkemorgan Jan 6, 2026
c8dfa4c
feat: reduce flakiness
mcgarrye Jan 6, 2026
f349c62
Merge remote-tracking branch 'core/main' into release/2026-01-06
ludtkemorgan Jan 6, 2026
286a73b
feat: Leasing Agent - Update (#5699)
millord Jan 6, 2026
f106fbe
feat: msq search and sort (#5711)
mcgarrye Jan 7, 2026
7ce2add
fix: utilities included showing obj keys (#5737)
emilyjablonski Jan 7, 2026
a566092
feat: rework VPC to use a /22 range (#5739)
avrittrohwer Jan 7, 2026
d7941f7
fix: detroit specific fixes from merge
ludtkemorgan Jan 7, 2026
66152ab
fix: Non-Regulated: Required documents in export (#5731)
millord Jan 7, 2026
fe86a02
Merge remote-tracking branch 'core/main' into release/2026-01-06
ludtkemorgan Jan 7, 2026
0ce113e
feat: infra CI checks (#5740)
avrittrohwer Jan 7, 2026
f92c976
feat: New Field - Parking fee (#5709)
millord Jan 8, 2026
c210860
feat: Frontend Integration Tests - shared-helpers/src/utilities/Addre…
millord Jan 8, 2026
7f7595f
feat: Frontend Integration Tests - partners/src/pages/sign-in (#5742)
millord Jan 8, 2026
a0cde33
refactor: update generate translations (#5682)
emilyjablonski Jan 8, 2026
8f6fa4c
fix: upgrade uic for tables alignment (#5744)
emilyjablonski Jan 8, 2026
b786eab
fix: partners amenities and features (#5743)
emilyjablonski Jan 8, 2026
76a58c4
Merge remote-tracking branch 'core/main' into release/2026-01-06
ludtkemorgan Jan 8, 2026
3aee982
fix: disable tofu workflows
ludtkemorgan Jan 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ module.exports = {
"**/.eslintrc.js",
"sentry-example-page.js",
"sentry-example-api.js",
"next-env.d.ts",
"*.csv",
],
}
6 changes: 4 additions & 2 deletions .github/workflows/cypress_partners.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'
env:
PORT: 3100
EMAIL_API_KEY: 'SOME-LONG-SECRET-KEY'
Expand Down Expand Up @@ -55,7 +57,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in root dir
run: yarn
Expand Down Expand Up @@ -91,4 +93,4 @@ jobs:
record: false # set this value to true to record videos in cypress cloud for debugging purposes - skip passing tests
env:
CYPRESS_RECORD_KEY: ${{ secrets.PARTNERS_CYPRESS_RECORD_KEY }}


6 changes: 4 additions & 2 deletions .github/workflows/cypress_partners_listingapproval.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'
env:
PORT: 3100
EMAIL_API_KEY: 'SOME-LONG-SECRET-KEY'
Expand Down Expand Up @@ -48,7 +50,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in root dir
run: yarn
Expand Down Expand Up @@ -84,4 +86,4 @@ jobs:
record: false # set this value to true to record videos in cypress cloud for debugging purposes - skip passing tests
env:
CYPRESS_RECORD_KEY: ${{ secrets.PARTNERS_CYPRESS_RECORD_KEY }}


6 changes: 4 additions & 2 deletions .github/workflows/cypress_public.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'
env:
PORT: 3100
EMAIL_API_KEY: 'SOME-LONG-SECRET-KEY'
Expand Down Expand Up @@ -56,7 +58,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in root dir
run: yarn
Expand Down Expand Up @@ -92,4 +94,4 @@ jobs:
env:
CYPRESS_RECORD_KEY: ${{ secrets.PUBLIC_CYPRESS_RECORD_KEY }}



22 changes: 21 additions & 1 deletion .github/workflows/docker_image_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,27 @@ jobs:
- container: api
docker_context: "{{defaultContext}}:api"
dockerfile: Dockerfile
platforms: linux/amd64
- container: dbseed
docker_context: "{{defaultContext}}:api"
dockerfile: Dockerfile.dbseed
platforms: linux/amd64
- container: partners
docker_context: "{{defaultContext}}"
dockerfile: Dockerfile.sites.partners
platforms: linux/amd64
- container: public
docker_context: "{{defaultContext}}"
dockerfile: Dockerfile.sites.public
platforms: linux/amd64
- container: infra
docker_context: "{{defaultContext}}:infra"
dockerfile: Dockerfile
platforms: linux/amd64,linux/arm64
- container: infra-dev
docker_context: "{{defaultContext}}:infra"
dockerfile: Dockerfile.dev
platforms: linux/amd64,linux/arm64
runs-on: ubuntu-latest
steps:
- name: Log in to GitHub Container Registry
Expand All @@ -41,6 +56,10 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

# Required to build multi-arch images.
- name: Setup Docker QEMU
uses: docker/[email protected]

# Required to use image layer cache.
- name: Setup Docker Buildx
uses: docker/[email protected]
Expand All @@ -53,8 +72,9 @@ jobs:
cache-from: type=registry,ref=${{ env.image_base }}/${{ matrix.container }}/container-layer-cache:latest
context: ${{ matrix.docker_context }}
file: ${{ matrix.dockerfile }}
platforms: ${{ matrix.platforms }}
tags: |
${{ env.image_base }}/${{ matrix.container }}:latest
${{ env.image_base }}/${{ matrix.container }}:gitbranch-${{ github.ref_name }}-latest
${{ env.image_base }}/${{ matrix.container }}:gitsha-${{ github.sha }}
# Connects the image to the repository: https://docs.github.com/en/packages/learn-github-packages/connecting-a-repository-to-a-package.
labels: org.opencontainers.image.source=https://github.com/${{ github.repository }}
87 changes: 87 additions & 0 deletions .github/workflows/infra_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
name: Infra CI

on:
push:
branches:
- main
pull_request:
branches:
- main
paths:
- '.github/workflows/infra_ci.yml'
- 'infra/**'

permissions:
contents: read

jobs:
check-tofu-fmt:
if: ${{ false }} # This condition ensures the workflow is skipped
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v6

- name: Check tofu fmt
shell: bash
run: |
if ! docker container run --rm \
-v ./infra:/infra \
--workdir /infra \
--entrypoint tofu \
ghcr.io/${{ github.repository }}/infra-dev:gitbranch-main-latest \
fmt -check -diff -recursive
then
echo 'ERROR: not all tofu files are correctly formatted'
exit 1
fi

check-tofu-provider-lock:
if: ${{ false }} # This condition ensures the workflow is skipped
strategy:
matrix:
root_module:
- bloom_dev
- bloom_dev_deployer_permission_set_policy
# TODO: add once root mod is added: bloom_prod
- bloom_prod_deployer_permission_set_policy
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v6

- name: Check tofu providers lock
shell: bash
run: |
if ! docker container run --rm \
-v ./infra:/infra \
--workdir /infra/tofu_root_modules/${{ matrix.root_module }} \
--entrypoint bash \
ghcr.io/${{ github.repository }}/infra-dev:gitbranch-main-latest \
-c 'sha256sum .terraform.lock.hcl > hash'
then
echo 'ERROR: recording sha256 of .terraform.lock.hcl failed'
exit 1
fi

if ! docker container run --rm \
-v ./infra:/infra \
--workdir /infra/tofu_root_modules/${{ matrix.root_module }} \
--entrypoint bash \
ghcr.io/${{ github.repository }}/infra-dev:gitbranch-main-latest \
-c 'tofu init -backend=false && tofu providers lock -platform=linux_amd64 -platform=linux_arm64 -platform=darwin_amd64 -platform=darwin_arm64'
then
echo 'ERROR: tofu providers lock did not run successfully'
exit 1
fi

if ! docker container run --rm \
-v ./infra:/infra \
--workdir /infra/tofu_root_modules/${{ matrix.root_module }} \
--entrypoint bash \
ghcr.io/${{ github.repository }}/infra-dev:gitbranch-main-latest \
-c 'sha256sum -c hash'
then
echo 'ERROR: .terraform.lock.hcl changed after running tofu providers lock'
exit 1
fi
4 changes: 3 additions & 1 deletion .github/workflows/integration_tests_api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'
env:
PORT: 3100
EMAIL_API_KEY: 'SG.SOME-LONG-SECRET-KEY'
Expand Down Expand Up @@ -52,7 +54,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in api dir
working-directory: ./api
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'

jobs:
run-linters:
Expand All @@ -14,12 +16,12 @@ jobs:

steps:
- name: Check out Git repository
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

# ESLint and Prettier must be in `package.json`
- name: Install Node.js dependencies
Expand Down
41 changes: 41 additions & 0 deletions .github/workflows/missing-translations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Missing Translations

on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'

jobs:
shared-helpers-unit:
runs-on: ubuntu-latest

steps:
- name: Check out Git repository
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 22

- name: yarn in root dir
run: yarn

# Rerun yarn in each app.
# It may seem unnecessary but there are some complex yarn package
# versioning dependencies here, so best to run to be safe.
# See https://github.com/bloom-housing/bloom/issues/3217#issuecomment-1430301029
# for more context.
- name: yarn in sites/public dir
working-directory: ./sites/public
run: yarn

- name: yarn in sites/partners dir
working-directory: ./sites/partners
run: yarn

# Tests
- name: yarn translations test shared/helpers
run: yarn test:shared-helpers:missing-translations
5 changes: 4 additions & 1 deletion .github/workflows/unit_tests_api.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'
env:
APP_SECRET: 'SOME-LONG-SECRET-KEY'
DATABASE_URL: postgres://bloom-dev:[email protected]:5432/bloom
Expand All @@ -25,6 +27,7 @@ env:
RECAPTCHA_KEY: "secret-key"
GOOGLE_CLOUD_PROJECT_ID: "secret-key"
LOTTERY_DAYS_TILL_EXPIRY: 45
CLOUDINARY_CLOUD_NAME: "exygy"

jobs:
backend-unit:
Expand All @@ -37,7 +40,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in api
working-directory: ./api
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/unit_tests_shared_helpers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'

jobs:
shared-helpers-unit:
Expand All @@ -16,7 +18,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in root dir
run: yarn
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/unit_tests_sites_partners.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'

jobs:
partners-unit:
Expand All @@ -16,7 +18,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in root dir
run: yarn
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/unit_tests_sites_public.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ on:
pull_request:
branches:
- main
paths-ignore:
- 'infra/**'

jobs:
public-unit:
Expand All @@ -16,7 +18,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v1
with:
node-version: 18
node-version: 22

- name: yarn in root dir
run: yarn
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -102,3 +102,4 @@ memory-bank/

# Terraform providers
.terraform
*.tfstate
Loading
Loading