123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421 |
- # Version 0.16.3 (2024-11-27)
- * python: use `hatch run` or `poetry run` when running Python in these build
- environments
- # Version 0.16.2 (2024-11-27)
- * python: really prefer `hatch test` over `python3 manage.py test`
- (see v0.16.1)
- # Version 0.16.1 (2024-11-27)
- * python: prefer `hatch test` over `python3 manage.py test` in case of
- a django application using the hatch buildsystem. `hatch` is preferable here,
- since it prepares the virtual environment.
- # Version 0.16.0 (2024-10-22)
- * apply timeouts during `makefilet` download (previously the download could
- get stuck)
- * avoid re-downloading makefilet during `make clean`
- * python: use hatch's new commands "fmt" (since v1.8) and "test" (since v1.10)
- * The previous approch (`hatch run fmt` and `hatch run test`) relied on
- custom actions being named in a specific way.
- # Version 0.15.0 (2024-03-09)
- * deb: generate proper package name during `init-deb`
- (replacing underscores with hyphens)
- * python: add "upload" actions for poetry and hatchling
- * python: add "build" (`dist`) actions for poetry and hatchling
- * add downloading of external modules via `MAKEFILET_MODULES`
- * add default fallback URL for downloading `makefilet`.
- The download URLs can be configured via `MAKEFILET_DOWNLOAD_URL_TEMPLATES`.
- This requires an update of your embedded `makefilet-download-ondemand.mk`.
- # Version 0.14.4 (2023-12-15)
- * python/debian: allow early setting of `PYPI_UPLOAD_TARGET` and
- `DEBIAN_UPLOAD_TARGET`
- (previously these variables needed to be set *after* including makefilet in
- your `Makefile`)
- * python: remove check for existing pypirc section for `PYPI_UPLOAD_TARGET`
- (the default pypi target URL can be named explicitly without a section with
- the same name)
- # Version 0.14.3 (2023-12-10)
- * python: do not complain about a missing `pyproject.toml` file
- # Version 0.14.2 (2023-11-19)
- * python: allow customization of translation target (`django-translate`)
- via `DJANGO_COMPILEMESSAGES_ARGS` and `DJANGO_MAKEMESSAGES_ARGS`
- # Version 0.14.1 (2023-10-04)
- * python: deprecate 'DISABLE_CUSTOM_VIRTUALENV' in favor of the new
- 'PYTHON_VIRTUALENV_ENABLE'. The future behavior regarding virtual
- environments will change from "enabled by default" to "disabled by default".
- (Build systems like 'poetry' and 'hatch' now tend to hide virtual
- environments from developers.)
- * nodejs: do not rely on a valid version string in `package.json`.
- No we handle an empty version string gracefully.
- This should reflect the reality of many projects using `package.json` merely
- for dependency tracking.
- # Version 0.14.0 (2023-07-01)
- * python: enable Python support, if `pyproject.toml` exists.
- Previously only `setup.py` was used as an indicator file.
- * python: try to use `poetry` or `hatch` operations for test/lint/style
- (see `PYTHON_BUILD_SYSTEM`, `PYTHON_TEST_RUNNER`, `PYTHON_LINT_RUNNER` and
- `PYTHON_STYLE)_RUNNER`)
- # Version 0.13.0 (2023-02-16)
- * allow selection of a specific GPG key when signing the release tarball
- via `SIGNATURE_EMAIL`
- * fix interactivity issue with `init-deb` target
- (only relevant for hosts with more than one CPU)
- * remove out-of-tree build directory for `deb` packages in the context of a
- project with a git submodule
- (i.e. `build/debian/PROJECT-VERSION` is removed right after the build)
- # Version 0.12.0 (2022-11-02)
- * `makefilet-download-ondemand.mk`: change reference to "latest" commit from
- `master` to `main` (the branch was renamed)
- * Use `unstable` as the default release distribution when updating
- `debian/changelog`.
- Previously Ubuntu-derived systems used their current release name, thus
- preventing the name from being predictable.
- The previous behavior can be restored by setting `DEB_RELEASE_DISTRIBUTION`
- to an empty value.
- (Closes: #38)
- * allow `zstd` for `RELEASE_TAR_COMPRESSION_BIN`
- * rename `DISABLE_PYTHON_FLAKE8` to `DISABLE_PYTHON_LINT_FLAKE8`
- (clarifying that it refers to linting, only)
- * replace `DISABLE_PYTHON_BLACK` with `ENABLE_PYTHON_LINT_BLACK`, thus
- disabling `black` for style checks (`lint`) by default
- # Version 0.11.0 (2022-06-25)
- * Output synchronization (separation of output from parallel running targets)
- can be configured via the `MAKEFILET_OUTPUT_SYNCHRONIZATION` variable.
- Its value is handed over to `make`'s `--output-sync` argument.
- Typical values are `line` (default), `target` or `none`.
- # Version 0.10.0 (2021-10-31)
- * shell:
- * allow overriding of all variables
- * replace "SHELLCHECK_CALL" with "SHELLCHECK_ARGS"
- * introduce new variable SHELL_FILES_DIRECTORIES (default: ".")
- # Version 0.9.1 (2021-10-27)
- * release: handle VERSION indicator files nested below the project root
- (closes: #35)
- # Version 0.9.0 (2021-10-27)
- * ensure that changes in release-related files for npm
- (e.g. `package.json`) are committed via git
- * python:
- * allow disabling of flake8 lint checks via `DISABLE_PYTHON_FLAKE8=1`
- * allow override of files/directories used for flake8
- * add linting via black (can be disabled via `DISABLE_PYTHON_BLACK=1`)
- * add automatic formatting via black (`make style`)
- # Version 0.8.0 (2021-10-26)
- * allow selection of alternative download locations via
- `MAKEFILET_DOWNLOAD_URL_TEMPLATE` or `MAKEFILET_DOWNLOAD_URL`
- # Version 0.7.3 (2021-02-22)
- * fix detection of outdated makefilet version
- # Version 0.7.2 (2021-02-01)
- * fix determination of `shellcheck` path
- # Version 0.7.1 (2021-01-13)
- * fix detection of outdated makefilet version
- # Version 0.7.0 (2021-01-09)
- * python:
- * force removal of old "foo.egg-info/SOURCES.txt" during "clean-python"
- This is a workaround for https://github.com/pypa/setuptools/issues/436.
- (closes: #33)
- * python support (e.g. for venv) may be forced via MAKEFILET_ENABLE_PYTHON=1
- (closes: #23)
- * pypi2deb:
- * allow version specification for packages
- (closes: #26)
- * allow to run without a local debian/changelog file
- (closes: #25)
- * release:
- * add support for npm-based release
- (closes: #21)
- * shell:
- * do not disable shell-related checks by default
- Shell-related testing and linting can be disabled via DISABLE_SHELL_CHECK=1.
- * warn if shellcheck is missing
- * rename "test-shell" to "lint-shell"
- * automatically run jobs in parallel (if "-j X" is not specified)
- (closes: #29)
- * warn if the currently active version of makefilet is older than the version
- requested via MAKEFILET_DOWNLOAD_VERSION
- This may happen if makefilet is installed system-wide.
- (closes: #27)
- # Version 0.6.8 (2020-11-10)
- * python:
- * do not try to install virtualenv pre-dependencies which
- are part of the standard library
- # Version 0.6.7 (2020-11-10)
- * release:
- * tolerate untracked files during release
- * python:
- * ensure VIRTUALENV_PREDEPENDENCIES being available inside
- the virtualenv
- # Version 0.6.6 (2020-08-13)
- * python:
- * fix handling of "DISABLE_PYTHON_TESTS"
- # Version 0.6.5 (2020-08-12)
- * deb:
- * "test-deb" (and thus "test") does not depend on "lint-deb"
- anymore
- # Version 0.6.4 (2020-07-18)
- * python:
- * do not automatically upgrade the packages installed in the
- virtualenv
- # Version 0.6.3 (2020-07-14)
- * python:
- * finally fix the recursive virtualenv handling
- # Version 0.6.2 (2020-07-14)
- * python:
- * fix recursive virtualenv handling
- # Version 0.6.1 (2020-07-13)
- * python:
- * detect an active virtual environment and avoid entering
- it again
- # Version 0.6.0 (2020-07-13)
- * python:
- * add optional VIRTUALENV_PREDEPENDENCIES variable for
- emitting helpful warnings in case of missing build
- pre-dependencies
- # Version 0.5.5 (2020-06-24)
- * release:
- * add support for Makefile located in a subdirectory of
- a git repository
- # Version 0.5.4 (2020-01-09)
- * release:
- * avoid warning in case of empty BUMP_VERSION_COMMIT_FILES
- * handle more than three version number parts gracefully
- * download-ondemand:
- * do not hide wget error messages
- * makefile:
- * avoid accessing undefined variables
- * python:
- * fix coverage report visualization
- # Version 0.5.3 (2019-03-16)
- * release:
- * specify PROJECT_NAME for directory name in release tarball
- # Version 0.5.2 (2019-03-12)
- * deb:
- * allow override of dput call in `deb-upload` target with
- DEB_UPLOAD_COMMAND variable
- # Version 0.5.1 (2019-02-26)
- * fix virtualenv-related dependencies (e.g. for tests)
- # Version 0.5.0 (2019-02-25)
- * new component "python-django"
- * execute django-related check in "virtualenv-check" only for django projects
- # Version 0.4.0 (2019-02-25)
- * download-ondemand:
- * fix portability issue for *BSD
- * new component "python-virtualenv"
- * python:
- * "clean" depends on "clean-python"
- * allow disabling of tests explicitly via DISABLE_PYTHON_TESTS=1
- # Version 0.3.0 (2019-02-10)
- * deb:
- * suppress error messages in case of optional missing executables
- (e.g. dpkg-architecture)
- * allow arguments for lintian (see LINTIAN_ARGS)
- * release:
- * allow the filename of the bumpversion configuration to be overridden
- (BUMP_VERSION_CONFIG)
- * explicitly collect the list of files to be committed during
- "make release-*" (see BUMP_VERSION_FILES)
- * allow "BUMP_VERSION_FILES" to be overridden
- * fail if a file listed in "BUMP_VERSION_FILES" is missing
- * add "release-tar" and "release-tar-sign" targets
- * python:
- * fix execution of coverage within a virtualenv
- (missing python3-coverage)
- * allow override of test execution within a coverage run
- (via PYTHON_TEST_ARGS)
- * automatically run unittests
- (finishing without errors if no tests are found)
- * open the coverage report in a browser
- (only within a desktop session and if "xdg-open" is available)
- * fix dependency of "lint-python"
- (now attached to "lint" instead of "test")
- * new component "generic":
- * generate "tags" file via "ctags"
- * shell:
- * hide the shellcheck command
- (reducing noise in case of long lists of files)
- # Version 0.2.10 (2018-12-11)
- * release:
- * fix broken handling of "make release-undo" (introduced in 0.2.9)
- # Version 0.2.9 (2017-12-21)
- * release:
- * handle missing file ".bumpversion" gracefully
- * improved error message if VERSION file is missing
- # Version 0.2.8 (2017-11-19)
- * pypi2deb:
- * allow package-specific environment settings
- * improve failure detection
- * release: prevent successive (accidental) release commits
- * populate "Suggests" of deb package
- * documentation fixes
- # Version 0.2.7 (2017-08-27)
- * fixed recently introduced 'clean' operation
- # Version 0.2.6 (2017-08-27)
- * remove downloaded makefilet directory during 'clean'
- # Version 0.2.5 (2017-05-10)
- * fix 'install-python' due to bad 'DESTDIR' handling
- # Version 0.2.4 (2017-05-09)
- * fix path handling of 'check-dput-config' target for 'upload-deb'
- # Version 0.2.3 (2017-05-06)
- * tolerate errors in 'clean' targets
- * hide misleading error message for missing 'dh_listpackages' (from 'debhelper')
- # Version 0.2.2 (2017-05-02)
- * allow configurable parameters for 'install-python'
- * introduce the new target 'lint' for style checks
- * move 'flake8' check from 'test-python' to 'lint-python'
- # Version 0.2.1 (2017-04-29)
- * add minimal makefile snippet for 'download on-demand' integration into projects
- # Version 0.2 (2017-04-29)
- * calling 'flake8' on more platforms properly
- * deb packaging:
- * add 'init-deb' target (calls 'dh_make')
- * add deb packaging information for makefile itself (#2)
- * add 'test-deb' for lintian tests
- * allow quilt-based source format for repositories without submodules
- # Version 0.1 (2017-04-24)
- * Initial release
- * basic support for deb packaging, python, bumpversion, pypi2deb and shell scripts
|