From 677d7383f3102b080608934388483ea244b78c03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Sun, 12 Jun 2022 11:12:42 +0200 Subject: [PATCH] start with running wrap-and-sort --- .pre-commit-hooks.yaml | 6 ++++++ pre_commit_debian/__init__.py | 31 +++++++++++++++++++++++++++++++ setup.cfg | 19 +++++++++++++++++++ setup.py | 2 ++ 4 files changed, 58 insertions(+) create mode 100644 .pre-commit-hooks.yaml create mode 100644 pre_commit_debian/__init__.py create mode 100644 setup.cfg create mode 100644 setup.py diff --git a/.pre-commit-hooks.yaml b/.pre-commit-hooks.yaml new file mode 100644 index 0000000..e638414 --- /dev/null +++ b/.pre-commit-hooks.yaml @@ -0,0 +1,6 @@ +- id: pre-commit-debian + name: pre-commit hooks for debian/ + description: Automatically apply wrap-and-sort to debian/ + entry: pre-commit-debian + language: python + files: ^debian/ diff --git a/pre_commit_debian/__init__.py b/pre_commit_debian/__init__.py new file mode 100644 index 0000000..1134974 --- /dev/null +++ b/pre_commit_debian/__init__.py @@ -0,0 +1,31 @@ +# pre-commit-debian - pre-commit hooks for debian packaging +# +# Copyright (C) 2022 Entr'ouvert +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, see . + +import argparse +import subprocess + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument('files', nargs=argparse.REMAINDER) + args = parser.parse_args() + + cmd = ['wrap-and-sort', '--keep-first', '--trailing-comma'] + for file in args.files: + cmd.append('-f') + cmd.append(file) + subprocess.run(cmd, check=True) diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 0000000..fdab241 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,19 @@ +[metadata] +name = pre-commit-debian +version = 0.1 +description = Pre-commit hook for debian/ +author = Frédéric Péters +author_email = fpeters@entrouvert.com +license = GPL +license_file = COPYING +classifiers = + License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+) + Programming Language :: Python :: 3 + Programming Language :: Python :: 3 :: Only + +[options] +packages = find: + +[options.entry_points] +console_scripts = + pre-commit-debian = pre_commit_debian:main diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..8bf1ba9 --- /dev/null +++ b/setup.py @@ -0,0 +1,2 @@ +from setuptools import setup +setup()