diff --git a/.circleci/config.yml b/.circleci/config.yml
index fb239ceb3..cc6bd8d82 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -10,7 +10,7 @@ orbs:
jobs:
build:
docker:
- - image: cimg/node:20.18.0
+ - image: cimg/node:26.4
- image: mongo:4.4
working_directory: ~/homebrewery
@@ -27,7 +27,7 @@ jobs:
# fallback to using the latest cache if no exact match is found
- v1-dependencies-
- - run: sudo npm install -g npm@10.8.2
+ - run: sudo npm install -g npm@11.17.0
- node/install-packages:
app-dir: ~/homebrewery
cache-path: node_modules
@@ -45,7 +45,7 @@ jobs:
test:
docker:
- - image: cimg/node:20.17.0
+ - image: cimg/node:26.4
working_directory: ~/homebrewery
parallelism: 1
@@ -82,6 +82,9 @@ jobs:
- run:
name: Test - HTML sanitization
command: npm run test:safehtml
+ - run:
+ name: Test - Helpers
+ command: npm run test:helpers
- run:
name: Test - Coverage
command: npm run test:coverage
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index 2204679a6..7dc183627 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -6,6 +6,9 @@ updates:
interval: daily
open-pull-requests-limit: 99
groups:
+ eslint-bundle:
+ patterns: ["*eslint*"]
+ update-types: ["patch", "minor", "major"]
dev-dependencies:
dependency-type: "development"
patterns: ["*"]
@@ -66,10 +69,6 @@ updates:
- dependency-name: "@babel/preset-react"
versions:
- 7.13.13
- - dependency-name: codemirror
- versions:
- - 5.59.3
- - 5.60.0
- dependency-name: classnames
versions:
- 2.3.0
diff --git a/.gitignore b/.gitignore
index 150d81008..57cb15ccf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,6 +7,7 @@ storage
build/*
config/local.*
config/docker.*
+config/dev.*
todo.md
startDB.bat
diff --git a/Dockerfile b/Dockerfile
index 17d02b01f..023644346 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM node:22-alpine
+FROM node:26.4.0-alpine
RUN apk --no-cache add git
ENV NODE_ENV=docker
diff --git a/changelog.md b/changelog.md
index 1e1ac70e2..08b9314f9 100644
--- a/changelog.md
+++ b/changelog.md
@@ -85,14 +85,177 @@ pre {
}
.page .df {
- font-size: 2em;
- vertical-align: middle;
+ font-size: 2em;
+ vertical-align: middle;
}
```
+
## changelog
For a full record of development, visit our [Github Page](https://github.com/naturalcrit/homebrewery).
+### Tuesday 10/20/2026 - v3.24.2
+{{taskList
+##### G-Ambatte
+* [x] Hotfix for memory leak on server
+
+Fixes issue [#5090](https://github.com/naturalcrit/homebrewery/issues/5090)
+
+##### Calculuschild
+* [x] Fix brew variables not working across pages
+
+* [x] Allow brew variable definitions to be on adjacent lines (no blank line required anymore)
+
+##### 5e-Cleric
+* [x] Partial rollout of some site UI changes (includes alternate views and darkmode in {{openSans **BREWS** :fas_beer_mug_empty:}} page, and changes to {{openSans **VAULT** :fas_dungeon:}})
+
+##### Abquintic, Calculuschild, 5e-Cleric
+* [x] Multiple background fixes and code cleanups
+}}
+
+
+### Tuesday 9/29/2026 - v3.24.1
+{{taskList
+##### calculuschild
+* [x] Small hotfix for broken images thrashing the server
+}}
+
+### Tuesday 9/29/2026 - v3.24.0
+{{taskList
+##### calculuschild
+* [x] Add a periodic warning to /new page if work has never been saved
+* [x] Small fix to variable hoisting logic
+
+Fixes issue [#31](https://github.com/naturalcrit/marked-variables/issues/31)
+
+##### Ericscheid
+* [x] Enable "fancy drop caps" on any paragraph, by placing `{drop-cap}` on the line below.
+
+Fixes issue [#5024](https://github.com/naturalcrit/homebrewery/issues/5024)
+
+* [x] Prevent crash if `
-
-