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