Any takers? If I can get all these deps imported I can proceed to actually
get the py-discogs-client updated.

thanks,

.jh

On 2015-05-27 07:26, Stuart Henderson wrote:
OK sthen@ if someone would like to import www/py-jwt and devel/py-test-cov. (Re-included in the tar.gz attached to this mail). Note that py-jwt (and
py-oauthlib) require py-cryptography (plus deps) from the port that
I already sent out, which is still awaiting OKs/import.

http://marc.info/?l=openbsd-ports&m=143219761119821&w=2

Slight tweak for py-oauthlib from that file, updated version attached,
also OK sthen@ to import.

I think it would be reasonable to defer handling the remaining oauthlib
test failures until we run into problems with real programs, they are
all of the "algorithm not supported" variety and with this version
there's nothing to suggest any major problem with the port.

--- Makefile.orig       Wed May 27 12:14:56 2015
+++ Makefile    Wed May 27 12:18:01 2015
@@ -6,22 +6,12 @@ V =           0.20150523
 GH_ACCOUNT =   idan
 GH_PROJECT =   oauthlib
 GH_COMMIT =    16cd3b255b2c86ec7da412357cad899c72d8dbf7
-DISTFILES =    master${EXTRACT_SUFX}
-DISTNAME =     ${GH_PROJECT}-${V}
-PKGNAME =      py-${GH_PROJECT}-${V}
+DISTNAME =     py-${GH_PROJECT}-$V
 CATEGORIES =   security
 MAINTAINER =   Johan Huldtgren <jhuldtg...@gmail.com>

-HOMEPAGE =     https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/
-
-MASTER_SITES = ${HOMEPAGE}archive/
-
 # BSD
 PERMIT_PACKAGE_CDROM =  Yes
-
-EXTRACT_SUFX = .zip
-
-WRKDIST =      ${WRKDIR}/${GH_PROJECT}-master

 MODULES =      lang/python
 MODPY_SETUPTOOLS = Yes
--- distinfo.orig       Wed May 27 12:20:27 2015
+++ distinfo    Wed May 27 12:17:30 2015
@@ -1,2 +1,2 @@
-SHA256 (master.zip) = vrdYFF1cw9EXt9DAVH+Rtx7D8Y6kCEpJ3kSTuEd8CLI=
-SIZE (master.zip) = 226775
+SHA256 (py-oauthlib-0.20150523.tar.gz) =
G9lXPHw+EIF5/s2aTkz+jrPWb4IuO6PcnoDbY4A/whM=
+SIZE (py-oauthlib-0.20150523.tar.gz) = 142548


On 2015/05/26 19:26, Johan Huldtgren wrote:
On 2015-05-20 04:43, Stuart Henderson wrote:
>
>The distfile unpacks with no group-readable permissions.
>Simplest fix is probably
>
>post-extract:
>    chmod -R o+rX ${WRKSRC}

fixed.

>So either we need an older PyJWT, or we need oauthlib head. I wouldn't be
>averse to using head from a github checkout, but that is what needs
>py-cryptography.

ok, using the py-crypotography and it's depends from the other thread, I cobbled together a new port of py-oauthlib head together with the latest py-jwt. It builds and packages, and I can use py-discogs-client together
with beets (really my only way of testing functionality). However
'make test' still fails, albeit with different errors than before:

===>  Regression tests for py-oauthlib-0.20150523
cd /usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master &&
/usr/local/bin/python2.7 -m unittest discover
............................E..............................E........................EE...............E................................................................................................EE..EE.....................................
======================================================================
ERROR: test_rsa_signature
(tests.oauth1.rfc5849.endpoints.test_base.SignatureVerificationTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth1/rfc5849/endpoints/test_base.py",
line 388, in test_rsa_signature
    self.assertTrue(self.e._check_signature(r))
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/endpoints/base.py",
line 190, in _check_signature
    valid_signature = signature.verify_rsa_sha1(request, rsa_key)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 596, in verify_rsa_sha1
    alg = _jwt_rs1_signing_algorithm()
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 474, in _jwt_rs1_signing_algorithm
    _jwtrs1 = jwtalgo.RSAAlgorithm(jwtalgo.hashes.SHA1)
AttributeError: 'module' object has no attribute 'RSAAlgorithm'

======================================================================
ERROR: test_rsa_method
(tests.oauth1.rfc5849.test_client.SignatureMethodTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth1/rfc5849/test_client.py",
line 89, in test_rsa_method
    u, h, b = client.sign('http://example.com')
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/__init__.py",
line 306, in sign
    ('oauth_signature', self.get_oauth_signature(request)))
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/__init__.py",
line 153, in get_oauth_signature
sig = self.SIGNATURE_METHODS[self.signature_method](base_string, self) File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 503, in sign_rsa_sha1_with_client
    return sign_rsa_sha1(base_string, client.rsa_key)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 496, in sign_rsa_sha1
    alg = _jwt_rs1_signing_algorithm()
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 474, in _jwt_rs1_signing_algorithm
    _jwtrs1 = jwtalgo.RSAAlgorithm(jwtalgo.hashes.SHA1)
AttributeError: 'module' object has no attribute 'RSAAlgorithm'

======================================================================
ERROR: test_sign_rsa_sha1
(tests.oauth1.rfc5849.test_signatures.SignatureTests)
Verify RSA-SHA1 signature against one created by OpenSSL.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth1/rfc5849/test_signatures.py",
line 311, in test_sign_rsa_sha1
    sign = sign_rsa_sha1(base_string, private_key)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 496, in sign_rsa_sha1
    alg = _jwt_rs1_signing_algorithm()
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 474, in _jwt_rs1_signing_algorithm
    _jwtrs1 = jwtalgo.RSAAlgorithm(jwtalgo.hashes.SHA1)
AttributeError: 'module' object has no attribute 'RSAAlgorithm'

======================================================================
ERROR: test_sign_rsa_sha1_with_client
(tests.oauth1.rfc5849.test_signatures.SignatureTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth1/rfc5849/test_signatures.py",
line 324, in test_sign_rsa_sha1_with_client
    sign = sign_rsa_sha1_with_client(base_string, self.client)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 503, in sign_rsa_sha1_with_client
    return sign_rsa_sha1(base_string, client.rsa_key)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 496, in sign_rsa_sha1
    alg = _jwt_rs1_signing_algorithm()
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth1/rfc5849/signature.py",
line 474, in _jwt_rs1_signing_algorithm
    _jwtrs1 = jwtalgo.RSAAlgorithm(jwtalgo.hashes.SHA1)
AttributeError: 'module' object has no attribute 'RSAAlgorithm'

======================================================================
ERROR: test_request_body (tests.oauth2.rfc6749.clients.test_service_application.ServiceApplicationClientTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mock.py", line 1201, in
patched
    return func(*args, **keywargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth2/rfc6749/clients/test_service_application.py",
line 90, in test_request_body
    body=self.body)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/clients/service_application.py",
line 169, in prepare_request_body
    assertion = jwt.encode(claim, key, 'RS256')
File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 53, in
encode
    json_payload, key, algorithm, headers, json_encoder
File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 101, in
encode
    raise NotImplementedError('Algorithm not supported')
NotImplementedError: Algorithm not supported

======================================================================
ERROR: test_authorization_grant
(tests.oauth2.rfc6749.test_server.SignedTokenEndpointTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mock.py", line 1201, in
patched
    return func(*args, **keywargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth2/rfc6749/test_server.py",
line 234, in test_authorization_grant
    '', body=body)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/base.py",
line 64, in wrapper
    return f(endpoint, uri, *args, **kwargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/token.py",
line 100, in create_token_response
    request, self.default_token_type)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/grant_types/authorization_code.py",
line 240, in create_token_response
    token = token_handler.create_token(request, refresh_token=True)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 256, in create_token
    'access_token': self.token_generator(request),
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 217, in signed_token_generator
    return common.generate_signed_token(private_pem, request)
  File
"/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/common.py",
line 243, in generate_signed_token
    token = jwt.encode(claims, private_pem, 'RS256')
File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 53, in
encode
    json_payload, key, algorithm, headers, json_encoder
File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 101, in
encode
    raise NotImplementedError('Algorithm not supported')
NotImplementedError: Algorithm not supported

======================================================================
ERROR: test_client_grant
(tests.oauth2.rfc6749.test_server.SignedTokenEndpointTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mock.py", line 1201, in
patched
    return func(*args, **keywargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth2/rfc6749/test_server.py",
line 277, in test_client_grant
    '', body=body)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/base.py",
line 64, in wrapper
    return f(endpoint, uri, *args, **kwargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/token.py",
line 100, in create_token_response
    request, self.default_token_type)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/grant_types/client_credentials.py",
line 80, in create_token_response
    token = token_handler.create_token(request, refresh_token=False)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 256, in create_token
    'access_token': self.token_generator(request),
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 217, in signed_token_generator
    return common.generate_signed_token(private_pem, request)
  File
"/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/common.py",
line 243, in generate_signed_token
    token = jwt.encode(claims, private_pem, 'RS256')
File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 53, in
encode
    json_payload, key, algorithm, headers, json_encoder
File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 101, in
encode
    raise NotImplementedError('Algorithm not supported')
NotImplementedError: Algorithm not supported

======================================================================
ERROR: test_password_grant
(tests.oauth2.rfc6749.test_server.SignedTokenEndpointTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mock.py", line 1201, in
patched
    return func(*args, **keywargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth2/rfc6749/test_server.py",
line 249, in test_password_grant
    '', body=body)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/base.py",
line 64, in wrapper
    return f(endpoint, uri, *args, **kwargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/token.py",
line 100, in create_token_response
    request, self.default_token_type)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/grant_types/resource_owner_password_credentials.py",
line 113, in create_token_response
    token = token_handler.create_token(request, self.refresh_token)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 256, in create_token
    'access_token': self.token_generator(request),
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 217, in signed_token_generator
    return common.generate_signed_token(private_pem, request)
  File
"/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/common.py",
line 243, in generate_signed_token
    token = jwt.encode(claims, private_pem, 'RS256')
File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 53, in
encode
    json_payload, key, algorithm, headers, json_encoder
File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 101, in
encode
    raise NotImplementedError('Algorithm not supported')
NotImplementedError: Algorithm not supported

======================================================================
ERROR: test_scopes_and_user_id_stored_in_access_token
(tests.oauth2.rfc6749.test_server.SignedTokenEndpointTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/mock.py", line 1201, in
patched
    return func(*args, **keywargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/tests/oauth2/rfc6749/test_server.py",
line 264, in test_scopes_and_user_id_stored_in_access_token
    '', body=body)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/base.py",
line 64, in wrapper
    return f(endpoint, uri, *args, **kwargs)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/endpoints/token.py",
line 100, in create_token_response
    request, self.default_token_type)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/grant_types/resource_owner_password_credentials.py",
line 113, in create_token_response
    token = token_handler.create_token(request, self.refresh_token)
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 256, in create_token
    'access_token': self.token_generator(request),
File "/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/oauth2/rfc6749/tokens.py",
line 217, in signed_token_generator
    return common.generate_signed_token(private_pem, request)
  File
"/usr/ports/pobj/py-oauthlib-0.20150523/oauthlib-master/oauthlib/common.py",
line 243, in generate_signed_token
    token = jwt.encode(claims, private_pem, 'RS256')
File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 53, in
encode
    json_payload, key, algorithm, headers, json_encoder
File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 101, in
encode
    raise NotImplementedError('Algorithm not supported')
NotImplementedError: Algorithm not supported

----------------------------------------------------------------------
Ran 241 tests in 1.545s

FAILED (errors=9)
*** Error 1 in . (Makefile:42 'do-test')
*** Error 1 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2793
'/usr/ports/pobj/py-oauthlib-0.20150523/.test_done')
*** Error 1 in /usr/ports/mystuff/security/py-oauthlib
(/usr/ports/infrastructure/mk/bsd.port.mk:2486 'test')

Any hints gratefully accepted. The attached file contains
the latest py-oauthlib, plus it's depends.

thanks,

.jh

Reply via email to