From nobody Wed Jan 25 06:37:05 2023
X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
	by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4P1vJd3ztjz3bqPv;
	Wed, 25 Jan 2023 06:37:05 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
	 client-signature RSA-PSS (4096 bits) client-digest SHA256)
	(Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK))
	by mx1.freebsd.org (Postfix) with ESMTPS id 4P1vJd3YnSz3GFm;
	Wed, 25 Jan 2023 06:37:05 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim;
	t=1674628625;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=c5lvP3bfv3GVOC+/SaNsFoosmtorxxZVcLv3AZaVjog=;
	b=O88ZTPGVbZopBrhRluP3ovfsN9JTk3BGYZUdHIBVEFveDsnf5Q1WPHCRsqBDQ1yA9ZhIwU
	1Oki5u+GvxsyV1Jb29DP0fbTRjVbPtabNuD7RshnIUq9BstJVs/puDNpJDbPI2FvTaDskX
	cowT3hpBFQc57UvnI22lqJnQryerXHglJmJvFpmqqscWDVuPSeKZ5aBd2gELaeZR62HBMk
	IMn2RroyoK76OUFR2Fz/EY/enviuZLb0O5JiedeWyOA5Zk0ZYHnRXaFP/ZjOlpUtknv8aA
	oIDT91uPOoX9UWnydimXPohukwDs8kbdlBD2cesnn8erTsV4/oZWIYkydJZX1Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
	s=dkim; t=1674628625;
	h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
	 to:to:cc:mime-version:mime-version:content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding;
	bh=c5lvP3bfv3GVOC+/SaNsFoosmtorxxZVcLv3AZaVjog=;
	b=yWwxTSmir6hlmptwNezNFoOurK5ml/mmCwvCrHd4MjMO2Cjkel/Oj5xWF87S09bZOwtvdY
	3r5YEN7af400S/L5ZnOZrLJAwCVYG7gAkqCjy9ppmKTRBfjjLa/C7fdyA5Lix3DBL4aXQt
	2GlmYGXiwYS8l5s7wpuExMvDTOHLh95uBbNfRrX0JfDr3DBAEmvIh07AoLUHsF6WQceSpM
	R3C2kRPaABE4THDDWB9hShkprZCtrXlt6B5KwODmQ1iTvqDjTiWDz0xWMUngKIDM6doiQh
	6hFGnFc7TP6IJMmyxbxot6GFkBWrtOetsCwncP5sfJxIhZcHY7YEBGGoAg5Feg==
ARC-Authentication-Results: i=1;
	mx1.freebsd.org;
	none
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1674628625; a=rsa-sha256; cv=none;
	b=RFhkKmx1r8RvUTqWp5UVNornG3HTwuyBQ3B9GeWxJBhT8DioxMMIEOAV31xF/kQZ9pBSlt
	yXyTM9CuhSSOjFbOT4+HDuBnVZu8QrikrVuAx4tmE3QRY9f65OzOsrf/f8vBuIzQ97E2Fq
	nkxt6djeY2K3Un3Wfz6X9gRsMTk/CQiubxWn5ZHC7RQJxu09JU1ZOmwJHKA38J0IphiZGM
	fRsrX0rUM5vpeBe8pKIroOlfiOh3+nzH1iFXrR4PLjpKbLorUPRkq4EX+BwxEYu479cy3w
	xwFrEP9Idgwn2VZ28v4W9NkUt0FMcDc1858Wl4Hy59uBcadkrR/0Qls/A/2hyw==
Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(Client did not present a certificate)
	by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4P1vJd2SyrzfqW;
	Wed, 25 Jan 2023 06:37:05 +0000 (UTC)
	(envelope-from git@FreeBSD.org)
Received: from gitrepo.freebsd.org ([127.0.1.44])
	by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 30P6b5R6011764;
	Wed, 25 Jan 2023 06:37:05 GMT
	(envelope-from git@gitrepo.freebsd.org)
Received: (from git@localhost)
	by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 30P6b5XT011763;
	Wed, 25 Jan 2023 06:37:05 GMT
	(envelope-from git)
Date: Wed, 25 Jan 2023 06:37:05 GMT
Message-Id: <202301250637.30P6b5XT011763@gitrepo.freebsd.org>
To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org,
        dev-commits-ports-main@FreeBSD.org
From: Yuri Victorovich <yuri@FreeBSD.org>
Subject: git: af884f1249a3 - main - =?utf-8?Q?devel/py-opster:=20Update=204.2=20=E2=86=92=205.0?=
List-Id: Commit messages for all branches of the ports repository <dev-commits-ports-all.freebsd.org>
List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all
List-Help: <mailto:dev-commits-ports-all+help@freebsd.org>
List-Post: <mailto:dev-commits-ports-all@freebsd.org>
List-Subscribe: <mailto:dev-commits-ports-all+subscribe@freebsd.org>
List-Unsubscribe: <mailto:dev-commits-ports-all+unsubscribe@freebsd.org>
Sender: owner-dev-commits-ports-all@freebsd.org
X-BeenThere: dev-commits-ports-all@freebsd.org
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Git-Committer: yuri
X-Git-Repository: ports
X-Git-Refname: refs/heads/main
X-Git-Reftype: branch
X-Git-Commit: af884f1249a39b5729f4cd8e9ff409fdc2bd526a
Auto-Submitted: auto-generated
X-ThisMailContainsUnwantedMimeParts: N

The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=af884f1249a39b5729f4cd8e9ff409fdc2bd526a

commit af884f1249a39b5729f4cd8e9ff409fdc2bd526a
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-01-25 06:36:47 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-01-25 06:36:57 +0000

    devel/py-opster: Update 4.2 → 5.0
    
    Reported by:    portscout
---
 devel/py-opster/Makefile         |  14 +++-
 devel/py-opster/distinfo         |   6 +-
 devel/py-opster/files/patch-2to3 | 162 ---------------------------------------
 devel/py-opster/pkg-descr        |   2 -
 4 files changed, 13 insertions(+), 171 deletions(-)

diff --git a/devel/py-opster/Makefile b/devel/py-opster/Makefile
index 3823f4806223..b71ee50d419b 100644
--- a/devel/py-opster/Makefile
+++ b/devel/py-opster/Makefile
@@ -1,18 +1,24 @@
 PORTNAME=	opster
-PORTVERSION=	4.2
+DISTVERSION=	5.0
 CATEGORIES=	devel python
-MASTER_SITES=	PYPI
+#MASTER_SITES=	PYPI no tests
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
 
 MAINTAINER=	yuri@FreeBSD.org
 COMMENT=	Command line parsing speedster
-WWW=		https://pypi.org/project/opster/
+WWW=		https://github.com/piranha/opster/
 
 LICENSE=	BSD2CLAUSE
 
 USES=		python:3.6+
-USE_PYTHON=	autoplist distutils
+USE_PYTHON=	distutils autoplist pytest # tests fail to run, see https://github.com/piranha/opster/issues/62
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	piranha
 
 NO_ARCH=	yes
 
+TEST_ENV=	${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+TEST_WRKSRC=	${WRKSRC}/tests
+
 .include <bsd.port.mk>
diff --git a/devel/py-opster/distinfo b/devel/py-opster/distinfo
index ba955888c4ca..b97c80f1d6c1 100644
--- a/devel/py-opster/distinfo
+++ b/devel/py-opster/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1540757476
-SHA256 (opster-4.2.tar.gz) = 220af1ada6f2f2bb1100d0c0f73cc09a3ddd641888a6b56a8af62f9f1871946f
-SIZE (opster-4.2.tar.gz) = 14175
+TIMESTAMP = 1674628225
+SHA256 (piranha-opster-5.0_GH0.tar.gz) = 225bffc6fd96a750ba428f3fd8c94fa0e43b44d42579bb1527f619523887049b
+SIZE (piranha-opster-5.0_GH0.tar.gz) = 27410
diff --git a/devel/py-opster/files/patch-2to3 b/devel/py-opster/files/patch-2to3
deleted file mode 100644
index 28d5586f314e..000000000000
--- a/devel/py-opster/files/patch-2to3
+++ /dev/null
@@ -1,162 +0,0 @@
---- opster.py.orig	2018-10-21 19:05:05 UTC
-+++ opster.py
-@@ -3,7 +3,7 @@
- '''
- 
- import sys, traceback, getopt, types, textwrap, inspect, os, re, keyword, codecs
--from itertools import imap
-+
- from functools import wraps
- from collections import namedtuple, Callable
- from contextlib import contextmanager
-@@ -19,12 +19,12 @@ def write(text, out=None):
-     '''Write output to a given stream (stdout by default).'''
-     out = out or sys.stdout
-     try:
--        print >> out, text
-+        print(text, file=out)
-     # Needed on Python 2.x if text is str/bytes containing non-ascii
-     # characters and sys.stdout is replaced by a writer from the codecs
-     # module. text will be decoded as ascii giving the decode error.
-     except UnicodeDecodeError:
--        print >> out, text.decode('utf-8')
-+        print(text.decode('utf-8'), file=out)
-     # Get the order of stdout/stderr correct on Windows. AFAICT this is only
-     # needed for the test environment but it's harmless otherwise.
-     out.flush()
-@@ -294,9 +294,9 @@ def help_(cmdtable, globalopts, scriptname):
-             hlp = {}
-             # determine if any command is marked for shortlist
-             shortlist = (name == 'shortlist' and
--                         any(imap(lambda x: x.startswith('^'), cmdtable)))
-+                         any(map(lambda x: x.startswith('^'), cmdtable)))
- 
--            for cmd, info in cmdtable.items():
-+            for cmd, info in list(cmdtable.items()):
-                 if cmd.startswith('~'):
-                     continue  # do not display hidden commands
-                 if shortlist and not cmd.startswith('^'):
-@@ -306,7 +306,7 @@ def help_(cmdtable, globalopts, scriptname):
-                 hlp[cmd] = doc.strip().splitlines()[0].rstrip()
- 
-             hlplist = sorted(hlp)
--            maxlen = max(map(len, hlplist))
-+            maxlen = max(list(map(len, hlplist)))
- 
-             write('usage: %s <command> [options]' % scriptname)
-             write('\ncommands:\n')
-@@ -449,7 +449,7 @@ def Option(opt):
- def CmdTable(cmdtable):
-     '''Factory to convert option tuples in a cmdtable'''
-     newtable = {}
--    for name, (func, opts, usage) in cmdtable.items():
-+    for name, (func, opts, usage) in list(cmdtable.items()):
-         newtable[name] = (func, [Option(o) for o in opts], usage)
-     return newtable
- 
-@@ -499,7 +499,7 @@ class LiteralOption(BaseOption):
- 
- class UnicodeOption(BaseOption):
-     '''Handle unicode values, decoding input'''
--    type = unicode
-+    type = str
- 
-     def convert(self, final):
-         return decodearg(final)
-@@ -508,7 +508,7 @@ class UnicodeOption(BaseOption):
- class BoolOption(BaseOption):
-     '''Boolean option type.'''
-     has_parameter = False
--    type = (bool, types.NoneType)
-+    type = (bool, type(None))
- 
-     def convert(self, final):
-         return bool(final)
-@@ -682,7 +682,7 @@ def findpossible(cmd, table):
-     '''
-     pattern = '.*?'.join(list(cmd))
-     choice = {}
--    for e in table.keys():
-+    for e in list(table.keys()):
-         aliases = aliases_(e)
-         found = None
-         if cmd in aliases:
-@@ -706,12 +706,12 @@ def findcmd(cmd, table):
-         return choice[cmd]
- 
-     if len(choice) > 1:
--        clist = choice.keys()
-+        clist = list(choice.keys())
-         clist.sort()
-         raise AmbiguousCommand(cmd, clist)
- 
-     if choice:
--        return choice.values()[0]
-+        return list(choice.values())[0]
- 
-     raise UnknownCommand(cmd)
- 
-@@ -951,7 +951,7 @@ def pretty_doc_string(item):
-     if len(lines) <= 1:
-         return raw_doc
-     indent = len(lines[1]) - len(lines[1].lstrip())
--    return '\n'.join([lines[0]] + map(lambda l: l[indent:], lines[1:]))
-+    return '\n'.join([lines[0]] + [l[indent:] for l in lines[1:]])
- 
- 
- def name_from_python(name):
-@@ -990,12 +990,12 @@ def autocomplete(cmdtable, args, middleware):
-         current = ''
- 
-     commands = []
--    for k in cmdtable.keys():
-+    for k in list(cmdtable.keys()):
-         commands += aliases_(k)
- 
-     # command
-     if cword == 1:
--        print ' '.join(filter(lambda x: x.startswith(current), commands))
-+        print(' '.join([x for x in commands if x.startswith(current)]))
- 
-     # command options
-     elif cwords[0] in commands:
-@@ -1013,9 +1013,9 @@ def autocomplete(cmdtable, args, middleware):
-                 if middleware:
-                     completer = middleware(completer)
-                 args = completer(current)
--                print ' '.join(args),
-+                print(' '.join(args), end=' ')
- 
--        print ' '.join((o for o in options if o.startswith(current)))
-+        print(' '.join((o for o in options if o.startswith(current))))
- 
-     sys.exit(1)
- 
-@@ -1058,7 +1058,7 @@ def completion(type=('t', 'bash', 'Completion type (ba
-     '''Outputs completion script for bash or zsh.'''
- 
-     prog_name = os.path.split(sys.argv[0])[1]
--    print COMPLETIONS[type].strip() % prog_name
-+    print(COMPLETIONS[type].strip() % prog_name)
- 
- 
- # --------
---- setup.py.orig	2018-10-21 19:01:07 UTC
-+++ setup.py
-@@ -4,10 +4,6 @@ import sys, os, re
- 
- from setuptools import setup
- 
--if sys.version_info[0] >= 3:
--    extra = {'use_2to3': True}
--else:
--    extra = {}
- 
- def read(fname):
-     return open(os.path.join(os.path.dirname(__file__), fname)).read()
-@@ -46,4 +42,4 @@ setup(
-         ],
-     py_modules=['opster'],
-     platforms='any',
--    **extra)
-+    )
diff --git a/devel/py-opster/pkg-descr b/devel/py-opster/pkg-descr
index 540d192db013..9d537795e41e 100644
--- a/devel/py-opster/pkg-descr
+++ b/devel/py-opster/pkg-descr
@@ -3,5 +3,3 @@ applications easy and painless. It uses built-in Python types (lists,
 dictionaries, etc) to define options, which makes configuration clear
 and concise. Additionally it contains possibility to handle subcommands
 (i.e. hg commit or svn update).
-
-See also: https://github.com/piranha/opster/