make-booster VS bake

Compare make-booster vs bake and see what are their differences.

make-booster

Utility routines to simplify using GNU make and Python (by david-a-wheeler)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
make-booster bake
3 2
8 23
- -
10.0 4.7
almost 2 years ago 4 months ago
Makefile Shell
MIT License BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

make-booster

Posts with mentions or reviews of make-booster. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-15.
  • Snakemake – A framework for reproducible data analysis
    6 projects | news.ycombinator.com | 15 Jul 2023
    For a very different approach, check out make-booster:

    https://github.com/david-a-wheeler/make-booster

    Make-booster provides utility routines intended to greatly simplify data processing (particularly a data pipeline) using GNU make. It includes some mechanisms specifically to help Python, as well as general-purpose mechanisms that can be useful in any system. In particular, it helps reliably reproduce results, and it automatically determines what needs to run and runs only that (producing a significant speedup in most cases). Released as open source software.

  • A Love Letter to Make
    5 projects | news.ycombinator.com | 20 Apr 2023
    https://github.com/david-a-wheeler/make-booster

    I think a lot of hate on make is due to poor use. If your makefile is complex, refactor it. Auto-generate dependencies (it only takes a few lines in GNU make). And don't use recursive make, that way lies madness. I also think GNU make is the wiser tool; POSIX make lacks too much in many cases.

  • The Unreasonable Effectiveness of Makefiles
    12 projects | news.ycombinator.com | 12 Aug 2022
    https://github.com/david-a-wheeler/make-booster

    From its readme:

    "This project (contained in this directory and below) provides utility routines intended to greatly simplify data processing (particularly a data pipeline) using GNU make. It includes some mechanisms specifically to help Python, as well as general-purpose mechanisms that can be useful in any system. In particular, it helps reliably reproduce results, and it automatically determines what needs to run and runs only that (producing a significant speedup in most cases)."

    "For example, imagine that Python file BBB.py says include CC, and file CC.py reads from file F.txt (and CC.py declares its INPUTS= as described below). Now if you modify file F.txt or CC.py, any rule that runs BBB.py will automatically be re-run in the correct order when you use make, even if you didn't directly edit BBB.py."

    This is NOT functionality directly provided by Python, and the overhead with >1000 files was 0.07seconds which we could live with :-).

bake

Posts with mentions or reviews of bake. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-08-12.
  • The Unreasonable Effectiveness of Makefiles
    12 projects | news.ycombinator.com | 12 Aug 2022
    Honestly, I only find Makefiles useful when I have a tiny C/C++ project and need stuff just to compile quickly and easily without the overhead of a real build system.

    For literally everything else, I found myself using it more as a task runner - and Make doesn't do a great job at it. You end up mixing Bash and Make variables, string interpolation, and it becomes really messy, really fast. Not to mention the footguns associated with Make.

    I found bake (https://github.com/hyperupcall/bake) to suit my needs (disclaimer: I wrote it). It's literally just a Bash script with all the boilerplate taken care of you - what a task runner is meant to be imo

  • Basalt: The rock-solid Bash package manager
    2 projects | /r/bash | 26 May 2022
    Nope, I didn't add that in bakefiles because it seemed like supporting that in a declarative way would be overkill. Very simple dependencies can just be ran manually just as you think they could (calling `task.dev`), but I intentionally didn't want to bake in support for longer ones (at least not right now)

What are some alternatives?

When comparing make-booster and bake you can also consider the following projects:

tclmake - Partial make clone in pure Tcl

checkexec - CLI tool to conditionally execute commands only when files in a dependency list have been updated. Like `make`, but standalone.

bash-object - Manipulate heterogenous data hierarchies in Bash.

snakemake-wrappers - This is the development home of the Snakemake wrapper repository, see

mandala - A powerful and easy to use Python framework for experiment tracking and incremental computing

Airflow - Apache Airflow - A platform to programmatically author, schedule, and monitor workflows

dagger - Application Delivery as Code that Runs Anywhere

just - 🤖 Just a command runner

docker-flask-example - A production ready example Flask app that's using Docker and Docker Compose.