Discussion
Loading...

Post

Log in
  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Stefano Marinelli
Stefano Marinelli
@stefano@mastodon.bsd.cafe  ·  activity timestamp 7 hours ago

Big update pushed for #BSSG - my Bash-based static site generator

This is a major pre-release update, not the official release yet, and I would really love some testing and feedback before cutting it.

Highlights:
* New build mode: BUILD_MODE="ram" / --build-mode ram
* This is a memory-first build mode designed to drastically reduce disk I/O during the build.
* On real projects, this results in a ~2× speedup, and in some cases well over 3× faster builds, depending on:

* site size
* number of generators involved
* storage speed
* parallelism available

In RAM mode you also get a stage timing summary, so you can see exactly where build time is spent. This makes performance tuning much more transparent and data-driven.

Under the hood:
The core build system was heavily refactored:
* Clear separation between orchestration, generators, and indexing
* Cleaner and more predictable generation flow for posts, pages, tags, authors, archives, and feeds
* Asset and theme handling moved into a dedicated build module
* Static file copying and theme CSS processing are no longer scattered around the codebase

Performance and robustness:
* Smarter rebuild and caching logic
* Improved parallel execution paths
* Uses parallel when available
* Shell-based worker fallback when it isn’t
* Parallel behavior is now more robust and easier to reason about

Stability and polish:
* Fixed an edge case with locale-specific timing parsing
* Configuration and documentation updated to match new options and tuning knobs
* Overall codebase is simpler, clearer, and easier to extend

Before tagging the official release, I need help testing this.

* Please test from the main branch or commit and report issues *

Links:
Repo: https://brew.bsd.cafe/stefano/BSSG

Huge thanks to everyone who tests, reports issues, or pokes at it.

This release comes from a lot of refactoring and profiling, and fresh eyes really help

#IT #SSG #Bash #OwnYourData

  • Copy link
  • Flag this post
  • Block
Anita Lewis
Anita Lewis
@ajlewis2@social.vivaldi.net replied  ·  activity timestamp 6 hours ago

@stefano

Not a lot of help here. I only have 30 posts. The old takes 7s, the new takes 6s. I put the new one online and nothing seems to be broken. 😄 I'll keep the backup, but use the upgrade. Anything in particular you want tested? I ran build and server.

  • Copy link
  • Flag this comment
  • Block
Stefano Marinelli
Stefano Marinelli
@stefano@mastodon.bsd.cafe replied  ·  activity timestamp 5 hours ago

@ajlewis2 thank you, Anita! Try to launch the build process with —build-mode ram

It should be a little faster.

  • Copy link
  • Flag this comment
  • Block
Anita Lewis
Anita Lewis
@ajlewis2@social.vivaldi.net replied  ·  activity timestamp 4 hours ago

@stefano

config.sh had "ram" for build mode with the upgrade. That gives 6s.

I set it to "normal" and got 8s. ram mode is a little faster, and the bigger my site gets, the bigger the difference is likely to be. I like the output of information better, too. Not breaking is also a big plus!!

  • Copy link
  • Flag this comment
  • Block
Stefano Marinelli
Stefano Marinelli
@stefano@mastodon.bsd.cafe replied  ·  activity timestamp 4 hours ago

@ajlewis2 yes, exactly. My blog build speed went from 38 seconds to 14.
Thank you again for your precious feedback!

  • Copy link
  • Flag this comment
  • Block
Peter Kotrčka
Peter Kotrčka
@peterkotrcka@mastodon.bsd.cafe replied  ·  activity timestamp 7 hours ago

@stefano you have so many interesting projects ongoing

  • Copy link
  • Flag this comment
  • Block
Stefano Marinelli
Stefano Marinelli
@stefano@mastodon.bsd.cafe replied  ·  activity timestamp 7 hours ago

@peterkotrcka I have - and I'm so happy and proud of them!
They help to keep my mind sane. Or, at least, sane enough 😆

  • Copy link
  • Flag this comment
  • Block
Phillip Vuchetich
Phillip Vuchetich
@philvuchetich@bsd.network replied  ·  activity timestamp 7 hours ago

@stefano I've been meaning to try it out for a while...i should do that now.

  • Copy link
  • Flag this comment
  • Block
Stefano Marinelli
Stefano Marinelli
@stefano@mastodon.bsd.cafe replied  ·  activity timestamp 7 hours ago

@philvuchetich let me know!

  • Copy link
  • Flag this comment
  • Block

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.2-alpha.7 no JS en
Automatic federation enabled
Log in
  • Explore
  • About
  • Members
  • Code of Conduct