Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Support Python 3 #46

Closed
turicas opened this issue Sep 2, 2015 · 6 comments
Closed

Support Python 3 #46

turicas opened this issue Sep 2, 2015 · 6 comments
Labels
Milestone

Comments

@turicas
Copy link
Owner

turicas commented Sep 2, 2015

No description provided.

@turicas turicas added the bug label Sep 2, 2015
@turicas turicas modified the milestone: Version 0.3.0 Sep 6, 2015
@ocarneiro
Copy link

Any specific library missing in python3 to be replaced?

@turicas
Copy link
Owner Author

turicas commented Nov 7, 2015

@ocarneiro, I actually don't know. We currently have these dependencies:

  • unicodecsv (for CSV plugin -- we may use csv from standard library on Python3)
  • click and requests (for command-line interface)
  • lxml (HTML and ODS plugins)
  • xlrd and xlwt (XLS)
  • openpyxl (XLSX)

And also development requirements:

  • coverage
  • ipdb
  • mock
  • nose
  • pylint
  • yanc

@encukou
Copy link

encukou commented Jan 22, 2016

@ocarneiro, all dependencies are ported.
csv is Unicode-only in Python 3, and mock is in the standard library as unittest.mock since 3.3. The others claim py3 compatibility on PyPI.

@turicas
Copy link
Owner Author

turicas commented Apr 30, 2016

Working in progress by @henriquebastos on #151.

@turicas
Copy link
Owner Author

turicas commented Aug 15, 2016

Since many changes related to rows.fields were made on last version 0.2.1, I've started a new branch with Python 3 migration, from scratch: feature/python3-support.
First I converted the rows.fields module, utility functions and the library core, then I converted some plugins. By now I just need to convert the JSON and Parquet plugins. All tests are passing on Python 2.

@henriquebastos, I'd like somebody to review this branch once I finished -- could you please to it? I think I'm going to finish early this week.

@turicas
Copy link
Owner Author

turicas commented Aug 15, 2016

Update: the work is almost complete! By now all tests are passing on both versions, but still need to:

  • Create test and fix a little issue I found on plugin HTML
  • Create test and fix a little issue I found on BinaryField
  • Fix problem with BinaryField precedence
  • Fix examples ecuador_radiodifusoras.py (Python 2), slip_opinions.py (2 and 3) and tests_uwsgi_log.py/uwsgi_log_plugin.py and the related problems on the library which are causing them to fail
  • Configure tox
  • Verify the best way to expose plugin functions (from rows.plugins.html import extract_links won't work, for example)

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants