diff --git a/www/trac-devel/Makefile b/www/trac-devel/Makefile index 5aa9fe0f7bea..2f61b7d8ddc2 100644 --- a/www/trac-devel/Makefile +++ b/www/trac-devel/Makefile @@ -1,64 +1,62 @@ PORTNAME= trac -DISTVERSION= 1.5.2 +DISTVERSION= 1.5.3 PORTREVISION= 2 CATEGORIES= www devel python MASTER_SITES= http://ftp.edgewall.com/pub/trac/ \ ftp://ftp.edgewall.com/pub/trac/ PKGNAMESUFFIX= -devel DISTNAME= Trac-${DISTVERSION} MAINTAINER= samm@FreeBSD.org COMMENT= Enhanced wiki and issue tracking system for software projects LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING -BROKEN= does not build (cannot import name 'soft_unicode' from 'jinja2.utils') - BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=2.3.4:devel/py-babel@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10:devel/py-Jinja2@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=2.3.4:devel/py-babel@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10:devel/py-Jinja2@${PY_FLAVOR} # some tests are failing with 3.8 USES= cpe python:3.7+ CPE_VENDOR= edgewall CONFLICTS_INSTALL= trac USE_PYTHON= distutils autoplist USE_RC_SUBR= tracd SUB_LIST= PYTHON_CMD=${PYTHON_CMD} PORTEXAMPLES= * PORTDATA= * NO_ARCH= yes OPTIONS_DEFINE= DOCUTILS EXAMPLES FCGI GIT PYGMENTS SUBVERSION TEXTILE TZ OPTIONS_DEFAULT= DOCUTILS FCGI PYGMENTS SQLITE SUBVERSION TEXTILE TZ OPTIONS_MULTI= DATABASE OPTIONS_MULTI_DATABASE= MYSQL PGSQL SQLITE DOCUTILS_DESC= Allow additional text markup PYGMENTS_DESC= Use generic syntax highlighter TEXTILE_DESC= Support for the Textile markup TZ_DESC= Process Time Zones FCGI_DESC= Enable FastCGI support DOCUTILS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}docutils>=0.14:textproc/py-docutils@${PY_FLAVOR} PYGMENTS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygments>=1.0:textproc/py-pygments@${PY_FLAVOR} TZ_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR} PGSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psycopg2>0:databases/py-psycopg2@${PY_FLAVOR} SQLITE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} MYSQL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=0:databases/py-mysqlclient@${PY_FLAVOR} SUBVERSION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}subversion>0:devel/py-subversion@${PY_FLAVOR} GIT_RUN_DEPENDS= git:devel/git TEXTILE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}textile>0:www/py-textile@${PY_FLAVOR} FCGI_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flup6>0:www/py-flup6@${PY_FLAVOR} post-install-EXAMPLES-on: @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/sample-plugins ${FIND} ${WRKSRC}/contrib -type f -maxdepth 1 -exec ${INSTALL_DATA} {} ${STAGEDIR}${EXAMPLESDIR}/ \; (cd ${WRKSRC}/sample-plugins && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}/sample-plugins) .include diff --git a/www/trac-devel/distinfo b/www/trac-devel/distinfo index a5cb0f6307e4..bc1e278bd51b 100644 --- a/www/trac-devel/distinfo +++ b/www/trac-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1609593024 -SHA256 (Trac-1.5.2.tar.gz) = dac241e8018e11374cfabe68f902d815948611481f4ecb565e4f076768547e39 -SIZE (Trac-1.5.2.tar.gz) = 5416364 +TIMESTAMP = 1637782544 +SHA256 (Trac-1.5.3.tar.gz) = 699f5dd3ce82fb7138c726ef55a653f09531823e26170a1fb4d71d31b4adeaa5 +SIZE (Trac-1.5.3.tar.gz) = 5423354 diff --git a/www/trac-devel/files/patch-trac_ticket_templates_report__view.html b/www/trac-devel/files/patch-trac_ticket_templates_report__view.html new file mode 100644 index 000000000000..de20599c2244 --- /dev/null +++ b/www/trac-devel/files/patch-trac_ticket_templates_report__view.html @@ -0,0 +1,10 @@ +--- trac/ticket/templates/report_view.html.orig 2021-05-09 23:08:49 UTC ++++ trac/ticket/templates/report_view.html +@@ -162,6 +162,7 @@ history and logs, available at https://trac.edgewall.o + # for value_for_group, row_group in row_groups: + # if loop.first: + ++ # set header_group, header = None, None + # set column_headers + # for header_group in header_groups: + diff --git a/www/trac-devel/files/patch-trac_util_html.py b/www/trac-devel/files/patch-trac_util_html.py new file mode 100644 index 000000000000..e99992efd7d1 --- /dev/null +++ b/www/trac-devel/files/patch-trac_util_html.py @@ -0,0 +1,11 @@ +--- trac/util/html.py.orig 2021-05-09 23:08:49 UTC ++++ trac/util/html.py +@@ -24,7 +24,7 @@ import sys + from html import entities + from html.parser import HTMLParser + +-from markupsafe import Markup, escape as escape_quotes ++from markupsafe import Markup, escape as escape_quotes, soft_unicode + + try: + from babel.support import LazyProxy diff --git a/www/trac-devel/files/patch-trac_util_presentation.py b/www/trac-devel/files/patch-trac_util_presentation.py new file mode 100644 index 000000000000..f04f3a8bab1d --- /dev/null +++ b/www/trac-devel/files/patch-trac_util_presentation.py @@ -0,0 +1,19 @@ +--- trac/util/presentation.py.orig 2021-05-09 23:08:49 UTC ++++ trac/util/presentation.py +@@ -21,13 +21,13 @@ from datetime import datetime + from math import ceil + import re + +-from jinja2 import Markup, Undefined, contextfilter, evalcontextfilter ++from jinja2 import Undefined, contextfilter, evalcontextfilter + from jinja2.filters import make_attrgetter +-from jinja2.utils import soft_unicode + + from trac.core import TracError + from .datefmt import to_utimestamp, utc +-from .html import Fragment, classes, html_attribute, styles, tag ++from .html import (Fragment, Markup, classes, html_attribute, soft_unicode, ++ styles, tag) + from .text import javascript_quote + + __all__ = ['captioned_button', 'classes', 'first_last', 'group', 'istext', diff --git a/www/trac-devel/files/patch-trac_util_text.py b/www/trac-devel/files/patch-trac_util_text.py new file mode 100644 index 000000000000..64e40a62758c --- /dev/null +++ b/www/trac-devel/files/patch-trac_util_text.py @@ -0,0 +1,31 @@ +--- trac/util/text.py.orig 2021-05-09 23:08:49 UTC ++++ trac/util/text.py +@@ -22,6 +22,7 @@ import base64 + import configparser + import locale + import os ++import pkg_resources + import re + import sys + import textwrap +@@ -43,6 +44,11 @@ del Empty # shouldn't be used outside of Trac core + + # -- Jinja2 + ++_jinja2_ver = pkg_resources.parse_version(jinja2.__version__) ++_jinja2_exts = ['jinja2.ext.do', 'jinja2.ext.i18n'] ++if _jinja2_ver < pkg_resources.parse_version('3'): ++ _jinja2_exts.append('jinja2.ext.with_') ++ + def jinja2env(**kwargs): + """Creates a Jinja2 ``Environment`` configured with Trac conventions. + +@@ -65,7 +71,7 @@ def jinja2env(**kwargs): + line_comment_prefix='##', + trim_blocks=True, + lstrip_blocks=True, +- extensions=['jinja2.ext.do', 'jinja2.ext.i18n', 'jinja2.ext.with_'], ++ extensions=list(_jinja2_exts), + finalize=filterout_none, + autoescape=autoescape_extensions, + )