Comments (8)
Yes, it is fully Python 2 & Python 3 compatible right now and shall remain that way for the foreseeable future. Continuous integration currently runs on Python 2.6, 2.7, 3.3, 3.4, 3.5, and 3.6.
I've added relevant classifiers to PyPI and a badge to the README although I'm not sure how long it will take the badge to update the info from PyPI.
from toml.
I use python 2.6 or 2.7 usually. I believe that 2to3 fixes the two incompatibilities: xrange → range and unicode strings becoming default. Do you have any idea if it is possible to package two different versions for PyPI (one for python2 and one for python3) ?
from toml.
I don't recommend doing that. If 2to3 happens to fail at some part of your codebase, you'll have to write fixers for it, which become hard to maintain and so on. You can use u""
for unicode strings and b""
for bytestrings in Python 2.6+ and Python 3.3+. xrange
can be either replaced by just range
, which happens to exist in both versions (yeah, it returns different types, but both are iterable), or by using something like:
try:
_range = xrange
except NameError:
_range = range
from toml.
Also, if you want some kind of trustworthy source, there's at least a PyCon talk by one of the core Django developers: http://pyvideo.org/video/1787/porting-django-apps-to-python-3
from toml.
The only differences between a python 2 version and a python 3 version at the moment are: xrange vs range, unicode() vs str() and unichr() vs chr(). These really are minor differences. Given the current size of the codebase, I see no problem with maintaining two versions which are almost-identical --- one for python 2 and one for python 3. Even though I would have to manually 3to2 any patches for the python 3 version.
I'm just not clear on how to package one version for python 2 and one version for python 3.
from toml.
You may use six to release only one package: http://pythonhosted.org/six/
from toml.
@uiri I don't want to open a new issue just for asking that....
Is toml fully Python 3 compatible right now? If yes, could you please add a note to the readme or some other place, which is easy to find?
from toml.
Thanks!
from toml.
Related Issues (20)
- Why is there a "dynamic inline table" when you normally want a static type to do dumping? HOT 1
- Continuous fuzzing by way of OSS-Fuzz
- Inline tables with inf/nan as values fail to parse HOT 1
- Backslash roundtrip problem HOT 5
- toml.load(path) no directory found HOT 1
- Loaded datetimes with timezone offset cannot be pickled correctly HOT 2
- cannot encode non-string keys HOT 1
- Cannot roundtrip strings with \x in them HOT 3
- keygroup with empty name is allowed in particular formatting, but not in what toml.dump creates. HOT 1
- Toml decoder is trying to convert IP address string to float HOT 3
- Default TomlEncoder does not escape backslashes correctly
- list object of compound type could not be parsed HOT 1
- New lines in multi-line strings trimmed incorrectly
- dump breaks numpy.str_ into lists of characters HOT 1
- TomlDecodeError: Loading with multiple dictionaries within a dictionary. HOT 1
- Does `toml` not implemente the `TOML` v1.0.0? HOT 1
- Dump Multiline string to toml file HOT 1
- Mystery solved! A fix for the infamous 5 year old \x bug, that is driving users away. HOT 1
- toml.dump turns my strings into arrays HOT 3
- Hash sign inside string value that includes quotes interpreted as comment
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from toml.