Open muccix opened 7 years ago
Hi,
It is tested against python 3.5: https://jenkins.argo.grnet.gr/job/B2HANDLE_devel/
The documentation also states python 3.5
Let me try to reformulate the question: do you have plan for supporting python 3.6?
Many thanks
The solution proposed in (#115) does not resolve the random dictionary order issue in python 3.6..
Does the issue affect only the tests? If that is the case we could start using the library anyway (maybe forking and editing the setup.py)
I just performed some operations like creating and retrieving handles (python 3.6.0) and it works. The issue concerns only the testcase "test_create_revlookup_query_normal_checksum_and_url".
Ok. I have forked the repo here.
Just for the record: I couldn't install with pip3 install b2handle-1.1.1-py3.6.egg
receiving the error:
Collecting b2handle-1.1.1-py3.6.egg
Could not find a version that satisfies the requirement b2handle-1.1.1-py3.6.egg (from versions: )
No matching distribution found for b2handle-1.1.1-py3.6.egg
It worked with easy_install b2handle-1.1.1-py3.6.egg
I leave you the choice whether to close the issue. Thanks!
Just talked again with Sofiane and we think that the dictionary ordering issue is a Python issue that has already been discussed in the community for quite a while now. But this does not affect the functionality of b2handle; so our solution is to deactivate the test. This could then go together with configured support for Py3.6 and further testing into one of the next releases. Currently, the splitting of the library / pyhandle development takes priority.
I admit I'm missing context here but if the core of the problem is that comparing dicts may yield failures because the order is undefined why not use cmp
instead of ==
. Or use an OrderedDict
(from collections) to begin with.
Just my 2 cents,
Raphael - a lurker
I wonder if there is any progress on this? Does the fork of @muccix solve this issue? Would it make sense to merge it back to the main project?
@stefan-wolfsheimer we will release a new version of the B2HANDLE library that supports Python 3.6. / 3.7
Meanwhile, the October 2019 https://github.com/EUDAT-B2SAFE/B2HANDLE/commit/256b5a96b759d35e142e5d359dfb4a9b99f2bd58 says:
The library currently supports Python 2.6, 2.7, 3.5, 3.6 and 3.7, and requires at least a Handle System server 8.1.
It seems this was also merged into the October 2019 pre-release 1.1.2.
Does the library support Python 3.6?
We are going to relay on this library in the B2STAGE HTTP-API which is based on py 3.6
Thanks!