textile / python-textile

A Python port of Textile, A humane web text generator
Other
68 stars 23 forks source link

Converted to run on Python 3 - all tests passing #2

Closed wbond closed 11 years ago

wbond commented 11 years ago

These changes got everything working in Python 3.3. I tried testing it with 2.7, but my 2.7 install is acting up an I could not run nose.

Thanks for all of the tweaks and fixes you've made!

ikirudennis commented 11 years ago

First and foremost: thanks for not only using, but improving my fork.

I haven't started making the switch to Python 3 yet, so it hadn't even crossed my mind to start making this compatible. What you've done here is great, and luckily it only breaks two things:

Again, thank you so much for your efforts.

wbond commented 11 years ago

Yeah, I thought that encode() would likely break something, but with python 3 you can't concatenate bytes and strings (bytes is the output of encode), so lots of tests break with all of those encode() calls. I changed the ur"" strings in the tests to just r"" since ur"" is not valid in Python 3 and r"" is the same thing.

The "right way" to get this all working is probably take a step back and do a revamp of the url code with encodings to make sure all strings are consistently encoded so they can be concatenated. Then fixing the tests may just be as simple as having an if/else branch for the python 2 and the python 3 versions of the strings.