b2luigi
b2luigi - bringing batch 2 luigi
Decision gist · record as of 2026-08-14
Yes, if you need to schedule batch tasks on LSF or HTCondor and want a Python-native workflow tool with luigi's dependency management. The active maintenance, low install friction, and production use in Belle II make it reliable. The GPLv3+ license is a blocker only for proprietary software; open-source and internal projects are fine.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.8 or later.
- Queue system integration (LSF, HTCondor) requires those systems to be installed and configured separately.
- Low friction: pure Python wheel with nine runtime dependencies (luigi, parse, GitPython, colorama, cachetools, jinja2, setuptools, tenacity, webdavclient3).
License · maintenance · safety
copyleft license (copyleft) — GPLv3+ copyleft license: any code that links or distributes b2luigi must be released under a compatible open-source license. Acceptable for internal tools and open-source projects, but not for proprietary software.
last release 2026-04-17 (119 days) · last repo commit 2026-08-13 · 9 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 154,650 downloads/mo, #10,848 on PyPI
Alternatives
Verify before relying
pip install b2luigi
import luigi
from b2luigi import Task
class MyTask(Task):
def output(self):
return luigi.LocalTarget('output.txt')
def run(self):
with self.output().open('w') as f:
f.write('hello')
if __name__ == '__main__':
luigi.build([MyTask()], local_scheduler=True)- Whether webdavclient3 is used for remote file staging or is an optional dependency.
- Specific queue systems supported beyond LSF and HTCondor mentioned in the description.
- Whether the package works with recent versions of luigi (no version constraint specified in fact sheet).
What it is and what it does
b2luigi is a wrapper around the luigi workflow orchestration library that makes it easier to schedule and run batch tasks on local machines or distributed queue systems. It inherits luigi's powerful dependency management system—which automatically resolves task dependencies and parallelizes execution—but adds a more user-friendly interface and built-in support for common queue systems like LSF and HTCondor. The package is maintained by the Belle II Collaboration and is used in production for scientific computing workflows.
You use b2luigi by defining Task subclasses with input, output, and run methods, then letting the scheduler handle dependency resolution and execution. It works with Python 3.8 through 3.11 and depends on nine runtime packages including luigi, GitPython, jinja2, and webdavclient3. The copyleft GPLv3+ license means any derivative work must also be open source.
Use it for
- Schedule scientific data processing pipelines across a compute cluster with automatic dependency tracking.
- Manage complex multi-stage batch jobs on LSF or HTCondor queue systems with a Python-native interface.
- Build reproducible workflows where task outputs feed into downstream tasks without manual orchestration.
- Integrate version control (via GitPython) and templating (via jinja2) into batch task definitions.
- Monitor and retry failed tasks across distributed systems with built-in tenacity-based resilience.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to schedule batch tasks on LSF or HTCondor and want a Python-native workflow tool with luigi's dependency management.
The active maintenance, low install friction, and production use in Belle II make it reliable. The GPLv3+ license is a blocker only for proprietary software; open-source and internal projects are fine.
Install
b2luigi on PyPI
Before you install
Low friction: pure Python wheel with nine runtime dependencies (luigi, parse, GitPython, colorama, cachetools, jinja2, setuptools, tenacity, webdavclient3). Active maintenance with a recent commit on 2026-08-13 and a release on 2026-04-17.
Requires Python 3.8 or later. Queue system integration (LSF, HTCondor) requires those systems to be installed and configured separately.
License in practice
GPLv3+ copyleft license: any code that links or distributes b2luigi must be released under a compatible open-source license. Acceptable for internal tools and open-source projects, but not for proprietary software.
Quickstart
pip install b2luigi
import luigi
from b2luigi import Task
class MyTask(Task):
def output(self):
return luigi.LocalTarget('output.txt')
def run(self):
with self.output().open('w') as f:
f.write('hello')
if __name__ == '__main__':
luigi.build([MyTask()], local_scheduler=True)
Verify before relying
- Whether webdavclient3 is used for remote file staging or is an optional dependency.
- Specific queue systems supported beyond LSF and HTCondor mentioned in the description.
- Whether the package works with recent versions of luigi (no version constraint specified in fact sheet).
Package facts
| License | copyleft license copyleft |
| Python support | Supports the current Python release >=3.8 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 9 packagesluigiparseGitPythoncoloramacachetoolsjinja2setuptoolstenacitywebdavclient3 |
| Maintenance | Actively maintained 119 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 154,650 / month, #10,848 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Build Tools |
Evidence: b2luigi-1.2.9-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “luigi task scheduling wrapper”
- b2luigib2luigi wraps luigi to simplify scheduling and running batch tasks…
- luigiLuigi is a Python workflow orchestration framework that builds and…
- luigi-monitorSends summary Slack notifications when Luigi job pipelines finish,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Build Tools packages
Provides reusable utilities for Python packaging interoperability, including version handling, specifiers, markers, requirements, tags, and metadata parsing according to standards like PEP 440 and PEP 425.
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
pip is the standard installer for Python packages, enabling you to download and install packages from the Python Package Index and other indexes into your Python environment.
Hatchling is a standards-compliant Python build backend that handles packaging, metadata, and distribution of Python projects when configured in a project's pyproject.toml file.
Generates Python gRPC service stubs and message classes from Protocol Buffer definitions, enabling developers to build gRPC clients and servers.
pre-commit is a framework for installing and running git hooks written in any language before commits are made, automating code quality and validation checks across multi-language projects.
Install it if your team needs consistent, automated validation at commit time.
See also luigi · luigi-monitor · huey · rq-scheduler · gcloud-rest-taskqueue · schedule · taskiq-redis · dask-jobqueue · celery-batches · django-q2