2 Thessalonians 1:3
2026-02-09 12:00 pmBrought to you by BibleGateway.com. Copyright (C) . All Rights Reserved.
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 1d45aae01c9a5a6f56772cbd670115a16ad71c7c https://github.com/dreamwidth/dreamwidth/commit/1d45aae01c9a5a6f56772cbd670115a16ad71c7c Author: Mark Smith mark@dreamwidth.org Date: 2026-02-08 (Sun, 08 Feb 2026)
Changed paths: R .github/workflows/shop-build.yml R .github/workflows/shop-deploy.yml M .github/workflows/web22-deploy.yml R etc/docker/shop/Dockerfile R etc/docker/shop/config/.dir_scope R etc/docker/shop/config/dreamwidth-dev.conf R etc/docker/shop/config/dreamwidth-prod.conf R etc/docker/shop/config/etc/apache2/apache2.conf R etc/docker/shop/config/etc/apache2/conf-available/charset.conf R etc/docker/shop/config/etc/apache2/conf-available/localized-error-pages.conf R etc/docker/shop/config/etc/apache2/conf-available/other-vhosts-access-log.conf R etc/docker/shop/config/etc/apache2/conf-available/security.conf R etc/docker/shop/config/etc/apache2/conf-available/serve-cgi-bin.conf R etc/docker/shop/config/etc/apache2/conf-enabled/security.conf R etc/docker/shop/config/etc/apache2/envvars R etc/docker/shop/config/etc/apache2/magic R etc/docker/shop/config/etc/apache2/mods-available/access_compat.load R etc/docker/shop/config/etc/apache2/mods-available/actions.conf R etc/docker/shop/config/etc/apache2/mods-available/actions.load R etc/docker/shop/config/etc/apache2/mods-available/alias.conf R etc/docker/shop/config/etc/apache2/mods-available/alias.load R etc/docker/shop/config/etc/apache2/mods-available/allowmethods.load R etc/docker/shop/config/etc/apache2/mods-available/apreq2.load R etc/docker/shop/config/etc/apache2/mods-available/asis.load R etc/docker/shop/config/etc/apache2/mods-available/auth_basic.load R etc/docker/shop/config/etc/apache2/mods-available/auth_digest.load R etc/docker/shop/config/etc/apache2/mods-available/auth_form.load R etc/docker/shop/config/etc/apache2/mods-available/authn_anon.load R etc/docker/shop/config/etc/apache2/mods-available/authn_core.load R etc/docker/shop/config/etc/apache2/mods-available/authn_dbd.load R etc/docker/shop/config/etc/apache2/mods-available/authn_dbm.load R etc/docker/shop/config/etc/apache2/mods-available/authn_file.load R etc/docker/shop/config/etc/apache2/mods-available/authn_socache.load R etc/docker/shop/config/etc/apache2/mods-available/authnz_fcgi.load R etc/docker/shop/config/etc/apache2/mods-available/authnz_ldap.load R etc/docker/shop/config/etc/apache2/mods-available/authz_core.load R etc/docker/shop/config/etc/apache2/mods-available/authz_dbd.load R etc/docker/shop/config/etc/apache2/mods-available/authz_dbm.load R etc/docker/shop/config/etc/apache2/mods-available/authz_groupfile.load R etc/docker/shop/config/etc/apache2/mods-available/authz_host.load R etc/docker/shop/config/etc/apache2/mods-available/authz_owner.load R etc/docker/shop/config/etc/apache2/mods-available/authz_user.load R etc/docker/shop/config/etc/apache2/mods-available/autoindex.conf R etc/docker/shop/config/etc/apache2/mods-available/autoindex.load R etc/docker/shop/config/etc/apache2/mods-available/buffer.load R etc/docker/shop/config/etc/apache2/mods-available/cache.load R etc/docker/shop/config/etc/apache2/mods-available/cache_disk.conf R etc/docker/shop/config/etc/apache2/mods-available/cache_disk.load R etc/docker/shop/config/etc/apache2/mods-available/cache_socache.load R etc/docker/shop/config/etc/apache2/mods-available/cern_meta.load R etc/docker/shop/config/etc/apache2/mods-available/cgi.load R etc/docker/shop/config/etc/apache2/mods-available/cgid.conf R etc/docker/shop/config/etc/apache2/mods-available/cgid.load R etc/docker/shop/config/etc/apache2/mods-available/charset_lite.load R etc/docker/shop/config/etc/apache2/mods-available/data.load R etc/docker/shop/config/etc/apache2/mods-available/dav.load R etc/docker/shop/config/etc/apache2/mods-available/dav_fs.conf R etc/docker/shop/config/etc/apache2/mods-available/dav_fs.load R etc/docker/shop/config/etc/apache2/mods-available/dav_lock.load R etc/docker/shop/config/etc/apache2/mods-available/dbd.load R etc/docker/shop/config/etc/apache2/mods-available/deflate.conf R etc/docker/shop/config/etc/apache2/mods-available/deflate.load R etc/docker/shop/config/etc/apache2/mods-available/dialup.load R etc/docker/shop/config/etc/apache2/mods-available/dir.conf R etc/docker/shop/config/etc/apache2/mods-available/dir.load R etc/docker/shop/config/etc/apache2/mods-available/dump_io.load R etc/docker/shop/config/etc/apache2/mods-available/echo.load R etc/docker/shop/config/etc/apache2/mods-available/env.load R etc/docker/shop/config/etc/apache2/mods-available/expires.load R etc/docker/shop/config/etc/apache2/mods-available/ext_filter.load R etc/docker/shop/config/etc/apache2/mods-available/file_cache.load R etc/docker/shop/config/etc/apache2/mods-available/filter.load R etc/docker/shop/config/etc/apache2/mods-available/headers.load R etc/docker/shop/config/etc/apache2/mods-available/heartbeat.load R etc/docker/shop/config/etc/apache2/mods-available/heartmonitor.load R etc/docker/shop/config/etc/apache2/mods-available/http2.load R etc/docker/shop/config/etc/apache2/mods-available/ident.load R etc/docker/shop/config/etc/apache2/mods-available/imagemap.load R etc/docker/shop/config/etc/apache2/mods-available/include.load R etc/docker/shop/config/etc/apache2/mods-available/info.conf R etc/docker/shop/config/etc/apache2/mods-available/info.load R etc/docker/shop/config/etc/apache2/mods-available/lbmethod_bybusyness.load R etc/docker/shop/config/etc/apache2/mods-available/lbmethod_byrequests.load R etc/docker/shop/config/etc/apache2/mods-available/lbmethod_bytraffic.load R etc/docker/shop/config/etc/apache2/mods-available/lbmethod_heartbeat.load R etc/docker/shop/config/etc/apache2/mods-available/ldap.conf R etc/docker/shop/config/etc/apache2/mods-available/ldap.load R etc/docker/shop/config/etc/apache2/mods-available/log_debug.load R etc/docker/shop/config/etc/apache2/mods-available/log_forensic.load R etc/docker/shop/config/etc/apache2/mods-available/lua.load R etc/docker/shop/config/etc/apache2/mods-available/macro.load R etc/docker/shop/config/etc/apache2/mods-available/mime.conf R etc/docker/shop/config/etc/apache2/mods-available/mime.load R etc/docker/shop/config/etc/apache2/mods-available/mime_magic.conf R etc/docker/shop/config/etc/apache2/mods-available/mime_magic.load R etc/docker/shop/config/etc/apache2/mods-available/mpm_event.conf R etc/docker/shop/config/etc/apache2/mods-available/mpm_event.load R etc/docker/shop/config/etc/apache2/mods-available/mpm_prefork.conf R etc/docker/shop/config/etc/apache2/mods-available/mpm_prefork.load R etc/docker/shop/config/etc/apache2/mods-available/mpm_worker.conf R etc/docker/shop/config/etc/apache2/mods-available/mpm_worker.load R etc/docker/shop/config/etc/apache2/mods-available/negotiation.conf R etc/docker/shop/config/etc/apache2/mods-available/negotiation.load R etc/docker/shop/config/etc/apache2/mods-available/perl.load R etc/docker/shop/config/etc/apache2/mods-available/proxy.conf R etc/docker/shop/config/etc/apache2/mods-available/proxy.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_ajp.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_balancer.conf R etc/docker/shop/config/etc/apache2/mods-available/proxy_balancer.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_connect.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_express.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_fcgi.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_fdpass.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_ftp.conf R etc/docker/shop/config/etc/apache2/mods-available/proxy_ftp.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_hcheck.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_html.conf R etc/docker/shop/config/etc/apache2/mods-available/proxy_html.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_http.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_http2.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_scgi.load R etc/docker/shop/config/etc/apache2/mods-available/proxy_wstunnel.load R etc/docker/shop/config/etc/apache2/mods-available/ratelimit.load R etc/docker/shop/config/etc/apache2/mods-available/reflector.load R etc/docker/shop/config/etc/apache2/mods-available/remoteip.load R etc/docker/shop/config/etc/apache2/mods-available/reqtimeout.conf R etc/docker/shop/config/etc/apache2/mods-available/reqtimeout.load R etc/docker/shop/config/etc/apache2/mods-available/request.load R etc/docker/shop/config/etc/apache2/mods-available/rewrite.load R etc/docker/shop/config/etc/apache2/mods-available/sed.load R etc/docker/shop/config/etc/apache2/mods-available/session.load R etc/docker/shop/config/etc/apache2/mods-available/session_cookie.load R etc/docker/shop/config/etc/apache2/mods-available/session_crypto.load R etc/docker/shop/config/etc/apache2/mods-available/session_dbd.load R etc/docker/shop/config/etc/apache2/mods-available/setenvif.conf R etc/docker/shop/config/etc/apache2/mods-available/setenvif.load R etc/docker/shop/config/etc/apache2/mods-available/slotmem_plain.load R etc/docker/shop/config/etc/apache2/mods-available/slotmem_shm.load R etc/docker/shop/config/etc/apache2/mods-available/socache_dbm.load R etc/docker/shop/config/etc/apache2/mods-available/socache_memcache.load R etc/docker/shop/config/etc/apache2/mods-available/socache_shmcb.load R etc/docker/shop/config/etc/apache2/mods-available/speling.load R etc/docker/shop/config/etc/apache2/mods-available/ssl.conf R etc/docker/shop/config/etc/apache2/mods-available/ssl.load R etc/docker/shop/config/etc/apache2/mods-available/status.conf R etc/docker/shop/config/etc/apache2/mods-available/status.load R etc/docker/shop/config/etc/apache2/mods-available/substitute.load R etc/docker/shop/config/etc/apache2/mods-available/suexec.load R etc/docker/shop/config/etc/apache2/mods-available/unique_id.load R etc/docker/shop/config/etc/apache2/mods-available/userdir.conf R etc/docker/shop/config/etc/apache2/mods-available/userdir.load R etc/docker/shop/config/etc/apache2/mods-available/usertrack.load R etc/docker/shop/config/etc/apache2/mods-available/vhost_alias.load R etc/docker/shop/config/etc/apache2/mods-available/xml2enc.load R etc/docker/shop/config/etc/apache2/mods-enabled/access_compat.load R etc/docker/shop/config/etc/apache2/mods-enabled/alias.conf R etc/docker/shop/config/etc/apache2/mods-enabled/alias.load R etc/docker/shop/config/etc/apache2/mods-enabled/apreq2.load R etc/docker/shop/config/etc/apache2/mods-enabled/auth_basic.load R etc/docker/shop/config/etc/apache2/mods-enabled/authn_core.load R etc/docker/shop/config/etc/apache2/mods-enabled/authn_file.load R etc/docker/shop/config/etc/apache2/mods-enabled/authz_core.load R etc/docker/shop/config/etc/apache2/mods-enabled/authz_host.load R etc/docker/shop/config/etc/apache2/mods-enabled/authz_user.load R etc/docker/shop/config/etc/apache2/mods-enabled/autoindex.conf R etc/docker/shop/config/etc/apache2/mods-enabled/autoindex.load R etc/docker/shop/config/etc/apache2/mods-enabled/deflate.conf R etc/docker/shop/config/etc/apache2/mods-enabled/deflate.load R etc/docker/shop/config/etc/apache2/mods-enabled/dir.conf R etc/docker/shop/config/etc/apache2/mods-enabled/dir.load R etc/docker/shop/config/etc/apache2/mods-enabled/env.load R etc/docker/shop/config/etc/apache2/mods-enabled/filter.load R etc/docker/shop/config/etc/apache2/mods-enabled/mime.conf R etc/docker/shop/config/etc/apache2/mods-enabled/mime.load R etc/docker/shop/config/etc/apache2/mods-enabled/mpm_prefork.conf R etc/docker/shop/config/etc/apache2/mods-enabled/mpm_prefork.load R etc/docker/shop/config/etc/apache2/mods-enabled/negotiation.conf R etc/docker/shop/config/etc/apache2/mods-enabled/negotiation.load R etc/docker/shop/config/etc/apache2/mods-enabled/perl.load R etc/docker/shop/config/etc/apache2/mods-enabled/reqtimeout.conf R etc/docker/shop/config/etc/apache2/mods-enabled/reqtimeout.load R etc/docker/shop/config/etc/apache2/mods-enabled/setenvif.conf R etc/docker/shop/config/etc/apache2/mods-enabled/setenvif.load R etc/docker/shop/config/etc/apache2/mods-enabled/status.conf R etc/docker/shop/config/etc/apache2/mods-enabled/status.load R etc/docker/shop/config/etc/apache2/ports.conf R etc/docker/shop/config/etc/apache2/sites-available/000-default.conf R etc/docker/shop/config/etc/apache2/sites-available/default-ssl.conf R etc/docker/shop/config/etc/varnish/dreamwidth.vcl R etc/docker/shop/scripts/setup.sh R etc/docker/shop/scripts/startup-dev.sh R etc/docker/shop/scripts/startup-prod.sh
Log Message:
Consolidate shop image into web22 — they're identical
The shop and web22 Docker images were byte-for-byte identical (same base, same configs, same startup scripts). Remove the separate shop build/deploy workflows and Dockerfile, and add web-shop as a deploy target in web22-deploy.yml instead.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Merriam-Webster's Word of the Day for February 9, 2026 is:
fortuitous \for-TOO-uh-tus\ adjective
Fortuitous is a formal word that usually describes something that comes or happens by a lucky chance. It can also mean “happening by chance” and “fortunate, lucky.”
// The fact that we were both there was a fortuitous coincidence.
// You could not have arrived at a more fortuitous time.
Examples:
“The timing of the hit’s resurgence proved fortuitous: She had nearly wrapped the recording for 2025 full-length Pressure ... and the scorching hot single provided a push in the lead-up.” — Mackenzie Cummings-Grady, Billboard, 11 Nov. 2025
Did you know?
Before its meaning expanded, fortuitous meant one thing only: “happening by chance.” This was no accident; its Latin forebear, fortuitus, shares the same ancient root as fors, the Latin word for “chance.” But the fact that fortuitous sounds like a blend of fortunate and felicitous (“happily suited to an occasion”) likely led to a second meaning of “fortunate, lucky,” with the seeds of the newer sense perhaps planted by writers applying overtones of good fortune to something that is a random occurrence. The “lucky” use has been disparaged by critics, but it is now well established. Irregardless (cough), employing this sense in sterner company may be considered chancy.


And what is Monsters of Ohio? Why, it’s my 20th(!) novel.
What’s it about? Well, if the title is to be trusted, it’s about monsters! In Ohio!
How would I describe it? Two words: “Cozy Cronenberg.”
When can you have it? November this year.
I like it. I hope you’ll like it too.
More to come about this. Stay tuned.
— JS

Merriam-Webster's Word of the Day for February 8, 2026 is:
meme \MEEM\ noun
Meme is used popularly to refer to an amusing or interesting picture, video, etc. that is spread widely online. It can also refer to an idea, behavior, style, or usage that spreads from person to person within a culture.
// Though the two friends now live on opposite coasts, they still keep in touch constantly, texting and sending their favorite funny cat memes back and forth.
Examples:
“Shane Hinton, a meteorologist for CBS News Miami, posted a Facebook meme earlier this week that showed a 70-degree spread between Miami’s near record 85 and Minneapolis’ 15.” — Howard Cohen, The Miami Herald, 5 Dec. 2025
Did you know?
In his 1976 book The Selfish Gene, British scientist Richard Dawkins defended his newly coined word meme, which he defined as “a unit of cultural transmission.” Having first considered, then rejected, mimeme, he wrote: “Mimeme comes from a suitable Greek root, but I want a monosyllable that sounds a bit like gene.” (The suitable Greek root was mim-, meaning “mime” or “mimic.” The English suffix -eme indicates a distinctive unit of language structure, as in grapheme, lexeme, and phoneme.) Like any good meme, meme caught on and evolved, eventually developing the meaning known to anyone who spends time online, where it’s most often used to refer to any one of those silly captioned photos that the Internet can’t seem to get enough of.
Though I’ve followed Nadia’s Healthy Kitchen on Instagram for years, I’m not entirely certain I’ve ever actually made anything from her before. I am not vegan, gluten-free, or overly worried about sugar being in my baked goods, so I’m not entirely sure why I wanted to make these “healthy,” vegan, gluten-free, no-bake peanut butter and chocolate brownie batter bark bars, but I did! And now I’m here to tell you how difficult they were to make, and if they’re any good.
To start things off, let’s look at the video she posted that I saw:
You know, that didn’t look too hard! Here’s the recipe so you can follow along while we take a look at the ingredients list.
Despite having King Arthur’s measure-for-measure gluten-free flour in my pantry, this recipe did not call for 1-to-1 gluten-free flour, and instead calls for oat flour and ground almonds.
Now, you might notice a typo in the recipe in the measurements section. Nadia mentions ground almonds four times in the post leading up to the written recipe, and once in the instructions portion of the recipe, but makes the mistake of typing “ground oats” right below “oat flour” in the measurements. One of the comments on her recipe actually points this out, as well.
Moving on, I did not have oat flour or ground almonds, but I did have the cocoa powder, maple syrup, peanut butter, coconut oil, dark chocolate, and, of course, salt. So there I found myself in Kroger’s baking aisle buying Bob’s Red Mill’s Gluten-Free Oat Flour which is different than their Whole-Grain Oat Flour which is not gluten-free, and their Super-Fine Almond Flour (not their Natural Almond Flour, but that one is also gluten-free). I know the recipe says ground almonds, but I figured since the almond flour is basically just really finely ground almonds it’d be like the same thing, right?
Thankfully, this recipe is measured by weight, so this ended up being a very easy, one bowl recipe in which I just dumped all the ingredients in and measured by weight the entire time (except the 2 tbsp of coconut oil and 2 tbsp of peanut butter that are separate for the ganache). You literally just weigh it out and mix it all together, easy peasy!
After mixing the “dough” together (I don’t know if it’s technically considered a dough. What are the qualifications of a dough?), you just roll it out into a thin rectangle and pour the melted chocolate and peanut butter over top, then freeze it just long enough to solidify it enough to cut into bars.
I was genuinely surprised how quick and easy this recipe was, and it’s honestly not very many ingredients. Obviously the oat flour is something that not everyone just has on hand, but if you are gluten-free then maybe that’s more of a common household ingredient for you and this would actually be super convenient for you to whip up.
Okay, so it wasn’t hard and didn’t take very long, but it did it actually taste good? Well, honestly, I quite liked it! I wouldn’t be so bold as to claim that it tastes exactly like a fresh-baked, full-sugar, non-vegan brownie, but it definitely is rich and chocolatey, with some nice flavor from the peanut butter and a melt-in-your-mouth texture. One thing I really like about them is that it can feel like gluten-free treats are always super dry and crumbly, but these are pretty fudgy and not like crumbly sand.
Honestly they look just like they do in the video, and I’m happy I gave them a whirl. I wouldn’t say they’re life-changing, but if you have a gluten-free person in your life you want to whip up a treat for, these might be a really good option.
Final note, the chocolate ganache gets pretty melty at room temp, so I recommend keeping these bad boys in a container in the fridge.
Do you like using measure-for-measure gluten-free flour for your GF recipes, or do you prefer recipes that have flour alternatives like this one? Do you like the addition of the peanut butter, or do you wish this recipe were also nut-free (then I guess the almonds would be out, too)? Let me know in the comments, and have a great day!
-AMS

Which of these look interesting?
A City Dreaming by Maurice Broaddus (June 2026)
16 (43.2%)
Lord of the Heights by Scarlett J. Thorne (July 2026
5 (13.5%)
Some other option (see comments)
1 (2.7%)
Cats!
28 (75.7%)
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: d7afa745f32d0482c0e8f3da2c041d92a9b5f636 https://github.com/dreamwidth/dreamwidth/commit/d7afa745f32d0482c0e8f3da2c041d92a9b5f636 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M etc/docker/base/Dockerfile A etc/docker/base/build-static-legacy.sh
Log Message:
Preserve legacy build-static.sh for Ubuntu 18.04 base image
The 18.04 image still uses Compass/YUI which the new build-static.sh no longer supports. COPY a frozen copy of the old script into the image and overwrite the repo version before running the build. Can be removed when the 18.04 images are retired.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Commit: b6ef69d4b76f3f3846f49fb62a81d3afc41bc598 https://github.com/dreamwidth/dreamwidth/commit/b6ef69d4b76f3f3846f49fb62a81d3afc41bc598 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M CLAUDE.md
Log Message:
Add never-amend rule to CLAUDE.md git workflow instructions
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Compare: https://github.com/dreamwidth/dreamwidth/compare/8f82b8be8ff5...b6ef69d4b76f
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: e26767b2e3f02ba7ff72fb279dcdf34cb894906a https://github.com/dreamwidth/dreamwidth/commit/e26767b2e3f02ba7ff72fb279dcdf34cb894906a Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M t/bin/initialize-db
Log Message:
Make initialize-db idempotent to avoid errors on rerun
Consolidate individual mysql calls into a single statement using CREATE USER/DATABASE IF NOT EXISTS, so the script can be run repeatedly without throwing errors on an already-initialized database.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Commit: 8f82b8be8ff5db0e7e7b0ff8678a4680e7f394b7 https://github.com/dreamwidth/dreamwidth/commit/8f82b8be8ff5db0e7e7b0ff8678a4680e7f394b7 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M .devcontainer/Dockerfile M .devcontainer/setup.sh M bin/build-static.sh R config.rb M doc/dependencies-system M etc/docker/base22/Dockerfile R ext/dw-nonfree/config.rb
Log Message:
Replace Compass/YUI with Dart Sass/esbuild for static asset builds
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
Compare: https://github.com/dreamwidth/dreamwidth/compare/4d2a30581c19...8f82b8be8ff5
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Merriam-Webster's Word of the Day for February 7, 2026 is:
imbue \im-BYOO\ verb
Imbue has two common meanings: "to permeate or influence as if by dyeing" and "to provide with something freely or naturally." In the second use it is usually used with with.
// A deep sense of history imbues the artist's work.
// The children were imbued with a passion for nature by their parents, both biologists.
Examples:
"Aged cachaça, like fine whiskey, derives its complexity from the barrels it's matured in. There are dozens of different Brazilian woods cachaça can be aged in, and each imbues the spirit with its distinct flavor, resulting in varieties that are more floral or herbal, nutty or woody, savory or spiced." — Rebekah Peppler, The New York Times, 5 Dec. 2025
Did you know?
Like its synonym infuse, imbue implies the introduction of one thing into another so as to affect it throughout. Someone's voice can be imbued with pride, for example, or a photograph might be imbued with a sense of melancholy. In the past imbue was also used synonymously with imbrue, an obscure word meaning "to drench or stain," but the two words are likely unrelated. Imbue comes from the Latin verb imbuere, meaning "to dye, wet, or moisten," while imbrue has been traced back through Anglo-French and Old French to the Latin verb bibere, meaning "to drink."
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 4d2a30581c19aa0bbed317e1d87d05fa887026c5 https://github.com/dreamwidth/dreamwidth/commit/4d2a30581c19aa0bbed317e1d87d05fa887026c5 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M .devcontainer/Dockerfile M .devcontainer/setup.sh A .dockerignore
Log Message:
Pre-bake schema population and static build into devcontainer image
Move database schema setup, YUI compressor download, and static asset compilation from container creation time (setup.sh) into the Dockerfile so they're baked into the image. This makes container startup much faster since setup.sh now only runs idempotent catchup steps.
Static assets are built to /opt/dreamwidth-static/ in the image (since /workspaces/dreamwidth is overlaid by a bind mount at runtime) and fast-copied into place by setup.sh. Also fixes PERL5LIB to point to /opt/dreamwidth-extlib/lib/perl5 where cpm actually installs modules.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 3cd3d09906e985b511fcdfa0b98d2cc959e66424 https://github.com/dreamwidth/dreamwidth/commit/3cd3d09906e985b511fcdfa0b98d2cc959e66424 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M .devcontainer/devcontainer.json A .github/workflows/devcontainer-build.yml
Log Message:
Add CI workflow to pre-build devcontainer image on GHCR
Developers now pull ghcr.io/dreamwidth/devcontainer:latest instead of building the image from scratch. The workflow triggers on dependency file changes, nightly, and manual dispatch.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 58e398d69d2464e2f8fc5786c2312b1c2dac4d7b https://github.com/dreamwidth/dreamwidth/commit/58e398d69d2464e2f8fc5786c2312b1c2dac4d7b Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M .devcontainer/devcontainer.json
Log Message:
Remove redundant forwardPorts from devcontainer config
runArgs -p flags already handle port publishing for both VS Code and the devcontainer CLI, so forwardPorts is unnecessary.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 26cb4633dc9643410c171a560bbf82656c144252 https://github.com/dreamwidth/dreamwidth/commit/26cb4633dc9643410c171a560bbf82656c144252 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M .devcontainer/devcontainer.json
Log Message:
Add explicit port mappings for devcontainer CLI
forwardPorts only works in VS Code; the devcontainer CLI needs -p flags in runArgs to actually publish ports to the host.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 08af0eec17bd6bcabff328014253c09d3f8ddc1b https://github.com/dreamwidth/dreamwidth/commit/08af0eec17bd6bcabff328014253c09d3f8ddc1b Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M .github/workflows/tasks/worker-birthday-notify-service.json M .github/workflows/tasks/worker-change-poster-id-service.json M .github/workflows/tasks/worker-codebuild-notifier-service.json M .github/workflows/tasks/worker-content-importer-lite-service.json M .github/workflows/tasks/worker-content-importer-service.json M .github/workflows/tasks/worker-content-importer-verify-service.json M .github/workflows/tasks/worker-directory-meta-service.json M .github/workflows/tasks/worker-distribute-invites-service.json M .github/workflows/tasks/worker-dw-esn-cluster-subs-service.json M .github/workflows/tasks/worker-dw-esn-filter-subs-service.json M .github/workflows/tasks/worker-dw-esn-fired-event-service.json M .github/workflows/tasks/worker-dw-esn-process-sub-service.json M .github/workflows/tasks/worker-dw-send-email-service.json M .github/workflows/tasks/worker-dw-sphinx-copier-service.json M .github/workflows/tasks/worker-embeds-service.json M .github/workflows/tasks/worker-esn-cluster-subs-service.json M .github/workflows/tasks/worker-esn-filter-subs-service.json M .github/workflows/tasks/worker-esn-fired-event-service.json M .github/workflows/tasks/worker-esn-process-sub-service.json M .github/workflows/tasks/worker-expunge-users-service.json M .github/workflows/tasks/worker-import-eraser-service.json M .github/workflows/tasks/worker-import-scheduler-service.json M .github/workflows/tasks/worker-incoming-email-service.json M .github/workflows/tasks/worker-latest-feed-service.json M .github/workflows/tasks/worker-lazy-cleanup-service.json M .github/workflows/tasks/worker-paidstatus-service.json M .github/workflows/tasks/worker-process-privacy-service.json M .github/workflows/tasks/worker-resolve-extacct-service.json M .github/workflows/tasks/worker-schedule-synsuck-service.json M .github/workflows/tasks/worker-send-email-ses-service.json M .github/workflows/tasks/worker-shop-creditcard-charge-service.json M .github/workflows/tasks/worker-spellcheck-gm-service.json M .github/workflows/tasks/worker-sphinx-copier-service.json M .github/workflows/tasks/worker-sphinx-search-gm-service.json M .github/workflows/tasks/worker-support-notify-service.json M .github/workflows/tasks/worker-synsuck-service.json A .github/workflows/worker22-build.yml A .github/workflows/worker22-deploy.yml M config/update-workflows.py A etc/docker/worker22/Dockerfile A etc/docker/worker22/scripts/setup.sh A etc/docker/worker22/scripts/startup-dev.sh A etc/docker/worker22/scripts/startup-prod.sh
Log Message:
Add worker22 container for Ubuntu 22.04 worker migration
Create etc/docker/worker22/ (FROM base22), with parallel build and deploy workflows so workers can be migrated independently. Both worker and worker22 deploys share the same task definitions and log to the same per-worker CloudWatch log groups (/dreamwidth/worker/NAME), matching the Terraform configuration.
Also updates update-workflows.py to generate both worker-deploy.yml and worker22-deploy.yml, and fixes task definitions to use per-worker log groups instead of the shared /dreamwidth/worker group.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications
Branch: refs/heads/main Home: https://github.com/dreamwidth/dreamwidth Commit: 6ed7244d8b66a8d3807bbac22ec1baffcc566158 https://github.com/dreamwidth/dreamwidth/commit/6ed7244d8b66a8d3807bbac22ec1baffcc566158 Author: Mark Smith mark@dreamwidth.org Date: 2026-02-06 (Fri, 06 Feb 2026)
Changed paths: M etc/docker/proxy/Dockerfile A src/proxy/go.mod
Log Message:
Move proxy container from Ubuntu 18.04 to 24.04
Add go.mod for the proxy since Go 1.22 (shipped with 24.04) requires module mode. The proxy uses only stdlib so no dependencies needed.
Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com
To unsubscribe from these emails, change your notification settings at https://github.com/dreamwidth/dreamwidth/settings/notifications