Brenda WallaceandClaude Opus 5 888b0d1db9 Make memcached opt-in, default to a capped in-process cache
The free Memcachier dev plan is timing out on every call in production
(58 IO::TimeoutError in a 14 minute log window). Each request pays the
0.5s socket timeout and then renders uncached anyway, so the cache is
currently pure overhead on a dyno that is already being OOM-killed.

Memcached is now used only when USE_MEMCACHED=true and MEMCACHIER_SERVERS
is present. Otherwise production uses a memory store capped at 32MB via
RAILS_CACHE_SIZE_MB, so deploying restores real caching without the
timeouts and without an addon upgrade.

The memory store is per process, so homepage_stats gets an expires_in to
bound staleness. It is the only fragment that relies on expire_fragment
rather than a versioned cache key.

Sessions are cookie-based and every other cached value is either keyed by
cache_key_with_version or carries a TTL, so nothing depends on the cache
being shared between processes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-20 21:38:42 +12:00
2026-08-23 06:13:51 +00:00
2026-06-23 20:43:40 +09:30
…
2020-02-10 14:21:03 +13:00
…
…
2026-08-23 06:13:51 +00:00
…
2026-06-23 11:54:38 +00:00
2023-04-12 13:28:11 +01:00
2025-08-24 16:32:40 +09:30
2025-08-10 01:02:39 +00:00
2025-08-24 07:03:20 +00:00
2026-09-20 16:04:15 +09:30
2020-01-07 22:20:58 +13:00
2020-01-07 22:20:58 +13:00
2025-12-01 18:00:44 +10:30
2020-06-15 15:11:03 +12:00
2026-09-20 16:04:15 +09:30

🌱 Growstuff

Build status

Welcome to the Growstuff project.

You can find our app at https://www.growstuff.org

Growstuff is an open source/open data project for food gardeners. We crowdsource information on what our members are growing and harvesting, aggregate it, and make it available as open data via our API.

Growstuff was founded in 2012 and has been built by dozens of contributors. We are an inclusive, welcoming project, and encourage participation from people of all backgrounds and skill levels.

Want to contribute?

Don't ask to ask, the best way to get started is to fork the project, start a codespace and get hacking. Dive on in and submit your PRs!

Vibe Coding is more than okay, just make sure you indicate if you have done so and ensure there are tests.

  • Issues (features we're working on, known bugs, etc)
  • Wiki (general documentation, etc.)

For coders

Growstuff is built in Ruby on Rails and also uses JavaScript for frontend features. We welcome contributions -- see CONTRIBUTING for details.

  • To set up your development environment, see Getting started.
  • You may also be interested in our API.

For Home Automation enthusiasts

https://github.com/Growstuff/homeassistant-growstuff/

For designers, writers, researchers, data wranglers, and other contributors

There are heaps of ways to get involved and contribute no matter what your skills and interests.

You might like to check out:

Here on Github, you might find these useful:

Feel free to comment on any of the issues on Github.

Contact

For more information about this project, contact info@growstuff.org.

Security Issues: If you find an authorization bypass or data breach, please contact our maintainers directly at maintainers@growstuff.org.

S
Description
No description provided
Readme AGPL-3.0
54 MiB
0 Stars 1 Watchers 0 Forks
Languages
Ruby 70%
Haml 15%
JavaScript 9.9%
SCSS 3.6%
HTML 0.7%
Other 0.8%