mirror of
https://github.com/internetarchive/brozzler.git
synced 2025-04-20 15:55:49 -04:00
Makefile improvements + pre-commit hook
This commit is contained in:
parent
f64db214d4
commit
0661377bd6
3
.gitignore
vendored
3
.gitignore
vendored
@ -4,3 +4,6 @@
|
||||
/brozzler.egg-info/
|
||||
venv
|
||||
.idea
|
||||
|
||||
# build artifacts
|
||||
build/
|
||||
|
46
Makefile
46
Makefile
@ -1,7 +1,43 @@
|
||||
# Build constants
|
||||
PYTHON_VERSION = 3.12
|
||||
VIRTUAL_ENV_DIR = .venv
|
||||
BROZZLER_EGG_LINK = ./brozzler.egg-info
|
||||
# Where's the Makefile running? Valid options: LOCAL, CI
|
||||
ENV ?= LOCAL
|
||||
# Which package manager to use? Valid options: UV, PIP
|
||||
PACKAGE_MANAGER ?= UV
|
||||
|
||||
$(VIRTUAL_ENV_DIR):
|
||||
ifeq ($(PACKAGE_MANAGER),UV)
|
||||
uv venv -p python$(PYTHON_VERSION) $@
|
||||
else ifeq ($(PACKAGE_MANAGER),PIP)
|
||||
python$(PYTHON_VERSION) -m venv $@
|
||||
endif
|
||||
|
||||
.PHONY: venv
|
||||
venv: $(VIRTUAL_ENV_DIR)
|
||||
|
||||
$(BROZZLER_EGG_LINK): $(VIRTUAL_ENV_DIR) pyproject.toml
|
||||
ifeq ($(PACKAGE_MANAGER),UV)
|
||||
VIRTUAL_ENV=$(shell pwd)/$(VIRTUAL_ENV_DIR) uv build
|
||||
else ifeq ($(PACKAGE_MANAGER),PIP)
|
||||
VIRTUAL_ENV=$(shell pwd)/$(VIRTUAL_ENV_DIR) pip wheel --no-deps --wheel-dir dist .
|
||||
endif
|
||||
|
||||
.PHONY: build
|
||||
build: $(BROZZLER_EGG_LINK)
|
||||
|
||||
.git/hooks/pre-commit:
|
||||
ln -s $(realpath ./dev/pre-commit) $@
|
||||
|
||||
.PHONY: check
|
||||
check:
|
||||
$(VIRTUAL_ENV_DIR)/bin/ruff check --target-version py37 .
|
||||
|
||||
.PHONY: check-format
|
||||
check-format:
|
||||
$(VIRTUAL_ENV_DIR)/bin/ruff format --check --target-version py37 .
|
||||
|
||||
.PHONY: format
|
||||
format:
|
||||
venv/bin/ruff format --target-version py37 .
|
||||
|
||||
.PHONY: ck-format
|
||||
ck-format:
|
||||
venv/bin/ruff format --check --target-version py37 .
|
||||
$(VIRTUAL_ENV_DIR)/bin/ruff format --target-version py37 .
|
||||
|
11
dev/pre-commit
Normal file
11
dev/pre-commit
Normal file
@ -0,0 +1,11 @@
|
||||
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# pre-commit.sh
|
||||
# -------------
|
||||
# An optional script which runs checks on code before commits.
|
||||
|
||||
make check
|
||||
make check-format
|
Loading…
x
Reference in New Issue
Block a user