-
Notifications
You must be signed in to change notification settings - Fork 253
Python 3 support. #412
Comments
At the very least the README should be updated to say that Python 3 is not supported. I wasted time trying to get it working and I see that others have as well. |
Since the library doesn't seem to be maintained anymore. Does somebody want to step up, fork and take over maintainership? |
The library is maintained - apologies for the delay. Do you have a pull request to fix this issue? |
Great that this library is still maintained. Welcome back @RachM! I don't have a Python 3 pull request ready, but knowing that there now is somebody to review and merge it, increases many people's motivation to do one. |
I'm taking a stab at this here
which is promising. Feel free to pitch in. |
@avilaton just wanted to see the status of the port what work is there left to do? |
Some tests are still not passing and I have run out of time. Please check out the fork, run the tests and see if there is something you can do about it. |
by running 2to3 -nw -f except . Part of google#412
Another backwards compatible change as part of google#412 by running: futurize -nw -f libfuturize.fixes.fix_print_with_import .
Part of google#412 Started by: futurize -nw -f libfuturize.fixes.fix_absolute_import . And followed up by fixing a few local problems.
Part of google#412 Started with `futurize -nw --stage1 .`, but had to do a few manual changes. Note that it includes commits from google#460
Part of google#412 Started with `futurize -nw --stage1 .`, but had to do a few manual changes.
Part of google#412 Started with `futurize -nw --stage1 .`, but had to do a few manual changes.
Has this been updated for Python 3? Would be super amazing if so. |
I don’t believe this has been ported over to Python 3. If you want to
branch the current python 3 port from this thread or start fresh I’d be
happy to lend a hand with this project!
…On Sun, May 26, 2019 at 9:38 PM nicolegorton ***@***.***> wrote:
Has this been updated for Python 3? Would be super amazing if so.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#412?email_source=notifications&email_token=AGNTVIKQ2IAUA44V2PQQDELPXNQWDA5CNFSM4B7PT5Z2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWIX7NI#issuecomment-496074677>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AGNTVIPPLYK3UEMIEIYEQHTPXNQWDANCNFSM4B7PT5ZQ>
.
|
There are a few pull requests to slowly migrate to Python3. I think we should try to avoid branching. |
I think we should create issues to give people access to stuff they can contribute with. I'll send a PR so travis tests other versions of python, then we need to surface those failed tests and make issues. People come with the intention of helping out but seeing which tests fail will make it easier. |
There should be a branch for the Python 3 port, don't you think? |
Got some news? I'll be glad to help! |
Change travis to Python 2.7 while working on #412
There is a branch on this fork https://github.com/pecalleja/transitfeed/tree/python3 with support to python 3.7 |
@pecalleja No need to apologize, you did nothing wrong. It's just that reviewing 60k lines of code is impossible, even more so if you say you fixed code manually after applying tooling. And I don't think that forking is a great idea either from a maintenability point of view. As I said in the pr, most of these convertors (futurize, modernize, 2to3) have fixers and you can apply some of them. In particular, @pecalleja @avilaton @tabiva I recently got write permissions to this repo, and I would be happy to merge small digestible changes. |
ok, let's do it. thanks |
Hey, I’m willing to put some horsepower behind this effort. Wont use conversion tools, and all commits will pass the python2 and python3 tests. I have a couple questions for the supporting community:
|
Hi @trevh3, I working hard too on this issue, I started the python3 porting (again) following the guidelines from @jarondl with small changes commits, some times it is very difficult, as you say, because of the type of problem to solve (StringIO to BytesIO migration for example). I neither using conversion tools and making the changes to pass python2 and python3 tests, one test file at time. |
Thanks @pecalleja - I think we can work on this together. Unfortunately, I don't think a straight port is going to be the most elegant solution here. The majority of our woes look like they will arise from how Python 2 and 3 think differently about strings (utf8 and unicode). Correct me if I'm wrong, but I think the best approach is to do as much of the work as we can in unicode and down covert to utf-8 when we have to. |
Just my two cents: We are only 21 days away (and counting) from reaching end of life of Python 2. While supporting Python 2 and 3 in parallel was important for many years, IMHO it is not anymore starting from January 2020. Many people started porting this library to Python 3 here and got a push back because of a best, desired stepwise approach with support for both versions of Python. Given the urgency in time, I would be grateful to get a release of transitfeed that works with Python 3 and I wouldn't care about Python 2 at all anymore. Thanks for all the good work! |
Yup, a new version does not have to support both Python 3 and 2. The current version will continue to work for Python 2. |
Understand this is not exactly actively maintained, but if anyone is still interested in finishing the port, we probably need to check the Travis tests and fix them by groups. |
I can surely help, just need some pointers and/or list of bugs and we can split the work. |
I'm in the middle of another project now but will be hitting a milestone soon, and would love to contribute to this once I get there. We should review where everything is and make a plan. Not sure how we should organize to do that, but I have some planning/management skills and would be happy to volunteer some time on that front if there is interest. |
Hello everyone. Just wanted to make sure you were aware that we over at MobilityData have been developing a new, open-source canonical GTFS validator written in Java. We've got a plan to be able to see to maintenance of the new validator into the future and keep up with new spec additions. We're currently finalizing feature parity with the Python validator for rules that align with the GTFS spec, which we'll announce soon. We'll then continue working on improving speed and performance and building out additional validation rules. Contributions and collaboration are very welcome! |
Hey, what is the status on this? I actually would love to use this tool for a project. If someone is organising the efforts I would be willing to lend a hand or two |
Perhaps a good start would be to use whatever conversion tools are available and then just work with the diffs it creates. I see that there's one called It messes things up a bit especially when dealing with classes but I think the diff it produces makes it easy to do manual corrections. |
https://cloud.google.com/python/docs/python2-sunset it will be great, that Google remembers this title project and update it so we can use it in the google cloud plataform. |
I've tryied this some time ago, and I could get things to kinda work. Unfortunately I don't have the code anymore, but I can try again and put everything on a new branch if that would be helpful. |
I'm using the python3 branch [1] from @pecalleja. For me this works fine. Thank you for your efforts @pecalleja! |
Would be great to have it.
The text was updated successfully, but these errors were encountered: