~dricottone/huttese-apk

0c3f3605b8c55f8506937d001d5490c4774fa3d3 — Dominic Ricottone 1 year, 7 months ago 1300626
Makefile fixes and bug fixes relating to the major update

Pygments is stubbornly refusing to build for me. I'm dropping the
vendored package and it's vendored dependency (wcag_contrast_ratio).
5 files changed, 3 insertions(+), 207 deletions(-)

M Dockerfile
M Makefile
D pkgsrc/py3-pygments/0001-lexers-add-Hare.patch
D pkgsrc/py3-pygments/APKBUILD
D pkgsrc/py3-wcag-contrast-ratio/APKBUILD
M Dockerfile => Dockerfile +2 -1
@@ 13,7 13,8 @@ RUN sh -c 'echo "builder ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers'
# abuild
RUN mkdir /home/builder/.abuild
COPY keys/me@dominic-ricottone.com.rsa /home/builder/.abuild/me@dominic-ricottone.com.rsa
RUN chmod 600 /home/builder/.abuild/me@dominic-ricottone.com.rsa
COPY keys/me@dominic-ricottone.com.rsa.pub /home/builder/.abuild/me@dominic-ricottone.com.rsa.pub
RUN chmod 600 /home/builder/.abuild/me@dominic-ricottone.com.rsa /home/builder/.abuild/me@dominic-ricottone.com.rsa.pub
RUN sh -c 'echo "PACKAGER_PRIVKEY=\"/home/builder/.abuild/me@dominic-ricottone.com.rsa\"" >> /home/builder/.abuild/abuild.conf'
RUN chown builder /home/builder/.abuild/ -R


M Makefile => Makefile +1 -11
@@ 1,4 1,4 @@
image:
image: Dockerfile
	podman build . --tag builder

keys:


@@ 102,10 102,6 @@ PY3_PGPY=pkg/aarch64/py3-pgpy-0.5.4-r2.apk
$(PY3_PGPY): pkgsrc/py3-pgpy/APKBUILD
	podman run --rm --mount type=bind,src=/var/deploy/build/huttese-apk/pkg,target=/home/builder/packages/huttese-pkgsrc,Z builder py3-pgpy

PY3_PYGMENTS=pkg/aarch64/py3-pygments-2.13.0-r0.apk
$(PY3_PYGMENTS): pkgsrc/py3-pygments/APKBUILD $(PY3_WCAG_CONTRAST_RATIO)
	podman run --rm --mount type=bind,src=/var/deploy/build/huttese-apk/pkg,target=/home/builder/packages/huttese-pkgsrc,Z builder py3-pygments

PY3_SCMSRHT=pkg/aarch64/py3-scmsrht-0.22.22-r0.apk
$(PY3_SCMSRHT): pkgsrc/py3-scmsrht/APKBUILD $(BUILDS_SR_HT) $(PY3_SRHT)
	podman run --rm --mount type=bind,src=/var/deploy/build/huttese-apk/pkg,target=/home/builder/packages/huttese-pkgsrc,Z builder py3-scmsrht


@@ 122,10 118,6 @@ PY3_VINE=pkg/aarch64/py3-vine-5.0.0-r1.apk
$(PY3_VINE): pkgsrc/py3-vine/APKBUILD $(PY3_CASE)
	podman run --rm --mount type=bind,src=/var/deploy/build/huttese-apk/pkg,target=/home/builder/packages/huttese-pkgsrc,Z builder py3-vine

PY3_WCAG_CONTRAST_RATIO=pkg/aarch64/py3-wcag-contrast-ratio-0.9-r0.apk
$(PY3_WCAG_CONTRAST_RATIO): pkgsrc/py3-wcag-contrast-ratio/APKBUILD
	podman run --rm --mount type=bind,src=/var/deploy/build/huttese-apk/pkg,target=/home/builder/packages/huttese-pkgsrc,Z builder py3-wcag-contrast-ratio

PY3_ZXCVBN=pkg/aarch64/py3-zxcvbn-4.4.28-r0.apk
$(PY3_ZXCVBN): pkgsrc/py3-zxcvbn/APKBUILD
	podman run --rm --mount type=bind,src=/var/deploy/build/huttese-apk/pkg,target=/home/builder/packages/huttese-pkgsrc,Z builder py3-zxcvbn


@@ 156,8 148,6 @@ all: \
	$(PY3_MINIO) \
	$(PY3_MISTLETOE) \
	$(PY3_PGPY) \
	$(PY3_WCAG_CONTRAST_RATIO) \
	$(PY3_PYGMENTS) \
	$(PY3_SQLALCHEMY_UTILS) \
	$(PY3_CELERY) \
	$(PY3_SCMSRHT) \

D pkgsrc/py3-pygments/0001-lexers-add-Hare.patch => pkgsrc/py3-pygments/0001-lexers-add-Hare.patch +0 -101
@@ 1,101 0,0 @@
From d5d3351836fde35cbbad374d50685353eb38ddbc Mon Sep 17 00:00:00 2001
From: Drew DeVault <sir@cmpwn.com>
Date: Fri, 4 Feb 2022 13:09:04 +0100
Subject: [PATCH] lexers: add Hare

---
 pygments/lexers/_mapping.py |  1 +
 pygments/lexers/hare.py     | 69 +++++++++++++++++++++++++++++++++++++
 2 files changed, 70 insertions(+)
 create mode 100644 pygments/lexers/hare.py

diff --git a/pygments/lexers/_mapping.py b/pygments/lexers/_mapping.py
index 40120a87..873b30f8 100644
--- a/pygments/lexers/_mapping.py
+++ b/pygments/lexers/_mapping.py
@@ -198,6 +198,7 @@ LEXERS = {
     'HamlLexer': ('pygments.lexers.html', 'Haml', ('haml',), ('*.haml',), ('text/x-haml',)),
     'HandlebarsHtmlLexer': ('pygments.lexers.templates', 'HTML+Handlebars', ('html+handlebars',), ('*.handlebars', '*.hbs'), ('text/html+handlebars', 'text/x-handlebars-template')),
     'HandlebarsLexer': ('pygments.lexers.templates', 'Handlebars', ('handlebars',), (), ()),
+    'HareLexer': ('pygments.lexers.hare', 'Hare', ('hare',), ('*.ha',), ('text/x-hare',)),
     'HaskellLexer': ('pygments.lexers.haskell', 'Haskell', ('haskell', 'hs'), ('*.hs',), ('text/x-haskell',)),
     'HaxeLexer': ('pygments.lexers.haxe', 'Haxe', ('haxe', 'hxsl', 'hx'), ('*.hx', '*.hxsl'), ('text/haxe', 'text/x-haxe', 'text/x-hx')),
     'HexdumpLexer': ('pygments.lexers.hexdump', 'Hexdump', ('hexdump',), (), ()),
diff --git a/pygments/lexers/hare.py b/pygments/lexers/hare.py
new file mode 100644
index 00000000..f501d670
--- /dev/null
+++ b/pygments/lexers/hare.py
@@ -0,0 +1,69 @@
+"""
+    :copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
+    :license: BSD, see LICENSE for details.
+"""
+
+import re
+
+from pygments.lexer import RegexLexer, include, bygroups, inherit, words, \
+    default
+from pygments.token import Text, Comment, Operator, Keyword, Name, String, \
+    Number, Punctuation
+
+__all__ = ['HareLexer']
+
+class HareLexer(RegexLexer):
+    name = 'Hare'
+    aliases = ['hare']
+    filenames = ['*.ha']
+    mimetypes = ['text/x-hare']
+
+    _ws = r'(?:\s|//.*?\n|/[*].*?[*]/)+'
+    _ws1 = r'\s*(?:/[*].*?[*]/\s*)?'
+
+    tokens = {
+        'whitespace': [
+            (r'^use.*;', Comment.Preproc),
+            (r'@[a-z]+', Comment.Preproc),
+            (r'\n', Text),
+            (r'\s+', Text),
+            (r'//.*?$', Comment.Single),
+        ],
+        'statements': [
+            (r'"', String, 'string'),
+            (r'`[^`]*`', String),
+            (r"'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,2}|[^\\\'\n])'", String.Char),
+            (r'(\d+\.\d*|\.\d+|\d+)[eE][+-]?\d+[LlUu]*', Number.Float),
+            (r'(\d+\.\d*|\.\d+|\d+[fF])[fF]?', Number.Float),
+            (r'0x[0-9a-fA-F]+[LlUu]*', Number.Hex),
+            (r'0o[0-7]+[LlUu]*', Number.Oct),
+            (r'\d+[zui]?(\d+)?', Number.Integer),
+            (r'[~!%^&*+=|?:<>/-]', Operator),
+            (words('as', 'is'), Operator),
+            (r'[()\[\],.{};]', Punctuation),
+            (words(('abort', 'alloc', 'append', 'assert', 'case', 'char',
+                'const', 'def', 'defer', 'delete', 'else', 'enum', 'export',
+                'fn', 'for', 'free', 'if', 'let', 'len', 'match', 'offset',
+                'return', 'static', 'struct', 'switch', 'type', 'union',
+                'yield', 'vastart', 'vaarg', 'vaend'),
+                suffix=r'\b'), Keyword),
+            (r'(bool|int|uint|uintptr|u8|u16|u32|u64|i8|i16|i32|i64|f32|f64|null|void|nullable|rune|size|valist)\b',
+             Keyword.Type),
+            (r'(true|false|null)\b', Name.Builtin),
+            ('[a-zA-Z_]\w*', Name),
+        ],
+        'string': [
+            (r'"', String, '#pop'),
+            (r'\\([\\abfnrtv"\']|x[a-fA-F0-9]{2,4}|'
+             r'u[a-fA-F0-9]{4}|U[a-fA-F0-9]{8}|[0-7]{1,3})', String.Escape),
+            (r'[^\\"\n]+', String),  # all other characters
+            (r'\\', String),  # stray backslash
+        ],
+        'root': [
+            include('whitespace'),
+            include('statements'),
+        ],
+    }
+
+    def __init__(self, **options):
+        RegexLexer.__init__(self, **options)
-- 
2.35.1


D pkgsrc/py3-pygments/APKBUILD => pkgsrc/py3-pygments/APKBUILD +0 -64
@@ 1,64 0,0 @@
# Contributor: Peter Bui <pnutzh4x0r@gmail.com>
# Maintainer: Matt Smith <mcs@darkregion.net>
pkgname=py3-pygments
_pkgname=Pygments
pkgver=2.13.0
pkgrel=0
pkgdesc="Syntax highlighting package written in Python"
url="https://pygments.org/"
arch="noarch"
license="BSD-2-Clause"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-lxml py3-wcag-contrast-ratio"
subpackages="$pkgname-doc"
source="
	https://files.pythonhosted.org/packages/source/P/Pygments/Pygments-$pkgver.tar.gz
	0001-lexers-add-Hare.patch
"
builddir="$srcdir/$_pkgname-$pkgver"

replaces="py-pygments" # Backwards compatibility
provides="py-pygments=$pkgver-r$pkgrel" # Backwards compatibility

# secfixes:
#   2.7.4-r0:
#     - CVE-2021-20270

build() {
	python3 setup.py build
}

check() {
	python3 -m pytest
}

package() {
	python3 setup.py install --prefix=/usr --root="$pkgdir"

	mkdir -p "$pkgdir"/usr/bin
	ln -s pygmentize "$pkgdir"/usr/bin/pygmentize-3
}

doc() {
	local destdir="$subpkgdir/usr/share/doc/$pkgname"

	cd "$builddir"

	install -m 644 -D doc/pygmentize.1 \
		"$subpkgdir"/usr/share/man/man1/pygmentize.1

	mkdir -p "$destdir"
	cp AUTHORS CHANGES LICENSE "$destdir"/

	# Note: The documentation in the doc directory needs to be generated
	# by py-sphinx
	cp -R ./doc/docs/* "$destdir"/

	default_doc
}

sha512sums="
d492acf112423fa997f35d6d3cae18b89bf11619c696879c6df49697dca933b6d54d7cb22907e06812e0a562f03e8ed5ccefde5247bc1c51cf2d3d69e7d65422  Pygments-2.13.0.tar.gz
9787753652d4ae322d8fdb11464a6b1682e77070284a2b173e0087435a6aeb10b7320b327a957363a7eb94ff763446ee451e04dd91b25f901a72128fb2e2bb56  0001-lexers-add-Hare.patch
"

D pkgsrc/py3-wcag-contrast-ratio/APKBUILD => pkgsrc/py3-wcag-contrast-ratio/APKBUILD +0 -30
@@ 1,30 0,0 @@
# Contributor: Michał Polański <michal@polanski.me>
# Maintainer: Michał Polański <michal@polanski.me>
pkgname=py3-wcag-contrast-ratio
pkgver=0.9
pkgrel=0
pkgdesc="Library for computing contrast ratios, as required by WCAG 2.0"
url="https://github.com/gsnedders/wcag-contrast-ratio"
license="MIT"
arch="noarch"
depends="python3"
makedepends="py3-setuptools"
checkdepends="py3-pytest py3-hypothesis"
source="https://github.com/gsnedders/wcag-contrast-ratio/archive/$pkgver/py3-wcag-contrast-ratio-$pkgver.tar.gz"
builddir="$srcdir/wcag-contrast-ratio-$pkgver"

build() {
	python3 setup.py build
}

check() {
	pytest test.py
}

package() {
	python3 setup.py install --root="$pkgdir" --skip-build
}

sha512sums="
70ff827b092cec884ba7e969deb8b5de944844b8d5536669f2c607061fbf569c217cec93268215deb9fdebc041efd992ed0cc89e0da013f9a1be8eeeb420cec5  py3-wcag-contrast-ratio-0.9.tar.gz
"