mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-11 08:03:16 -04:00
Merge updates from master
This commit is contained in:
60
app-text/lizard/files/lizard-1.17.10-py3.11.patch
Normal file
60
app-text/lizard/files/lizard-1.17.10-py3.11.patch
Normal file
@@ -0,0 +1,60 @@
|
||||
commit fc8a14e84acd8a4baa2d98bdec4e7ac18ed137a5
|
||||
Author: Mazunki Hoksaas <rolferen@gmail.com>
|
||||
Date: Thu Jul 27 15:04:16 2023 +0200
|
||||
|
||||
add support for python3.11 re module
|
||||
|
||||
diff --git a/lizard_languages/code_reader.py b/lizard_languages/code_reader.py
|
||||
index 1eb95d5..9e12658 100644
|
||||
--- a/lizard_languages/code_reader.py
|
||||
+++ b/lizard_languages/code_reader.py
|
||||
@@ -4,6 +4,8 @@ Base class for all language parsers
|
||||
|
||||
import re
|
||||
from copy import copy
|
||||
+from functools import reduce
|
||||
+from operator import or_
|
||||
|
||||
|
||||
class CodeStateMachine(object):
|
||||
@@ -112,7 +114,7 @@ class CodeReader:
|
||||
if not token_class:
|
||||
token_class = create_token
|
||||
|
||||
- def _generate_tokens(source, add):
|
||||
+ def _generate_tokens(source, add, flags=re.NOFLAG):
|
||||
# DO NOT put any sub groups in the regex. Good for performance
|
||||
_until_end = r"(?:\\\n|[^\n])*"
|
||||
combined_symbols = ["<<=", ">>=", "||", "&&", "===", "!==",
|
||||
@@ -136,7 +138,7 @@ class CodeReader:
|
||||
r"|\\\n" +
|
||||
r"|\n" +
|
||||
r"|[^\S\n]+" +
|
||||
- r"|.)", re.M | re.S)
|
||||
+ r"|.)", re.M | re.S | flags)
|
||||
macro = ""
|
||||
for match in token_pattern.finditer(source):
|
||||
token = token_class(match)
|
||||
@@ -154,7 +156,21 @@ class CodeReader:
|
||||
if macro:
|
||||
yield macro
|
||||
|
||||
- return _generate_tokens(source_code, addition)
|
||||
+ flag_dict = {
|
||||
+ 'a': re.A, # ASCII-only matching
|
||||
+ 'i': re.I, # Ignore case
|
||||
+ 'L': re.L, # Locale dependent
|
||||
+ 'm': re.M, # Multi-line
|
||||
+ 's': re.S, # Dot matches all
|
||||
+ 'u': re.U, # Unicode matching
|
||||
+ 'x': re.X # Verbose
|
||||
+ }
|
||||
+
|
||||
+ pattern = re.compile(r'\(\?[aiLmsux]+\)')
|
||||
+ re_flags = ''.join(opt[2:-1] for opt in pattern.findall(addition))
|
||||
+ flags = reduce(or_, (flag_dict[flag] for flag in re_flags), re.NOFLAG)
|
||||
+
|
||||
+ return _generate_tokens(source_code, pattern.sub('', addition), flags=flags)
|
||||
|
||||
def __call__(self, tokens, reader):
|
||||
self.context = reader.context
|
||||
28
app-text/lizard/lizard-1.17.10-r1.ebuild
Normal file
28
app-text/lizard/lizard-1.17.10-r1.ebuild
Normal file
@@ -0,0 +1,28 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11,12} )
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
|
||||
inherit distutils-r1
|
||||
|
||||
DESCRIPTION="A simple code complexity analyser, supports most of the popular languages."
|
||||
HOMEPAGE="http://www.lizard.ws/"
|
||||
SRC_URI="https://github.com/terryyin/lizard/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~amd64"
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
|
||||
DEPEND="
|
||||
test? (
|
||||
dev-python/jinja[${PYTHON_USEDEP}]
|
||||
dev-python/mock[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=( "${FILESDIR}/${P}-py3.11.patch" )
|
||||
|
||||
distutils_enable_tests pytest
|
||||
Reference in New Issue
Block a user