summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Edmund Crosley <timothy.crosley@gmail.com>2013-09-01 13:41:47 -0700
committerTimothy Edmund Crosley <timothy.crosley@gmail.com>2013-09-01 13:41:47 -0700
commit01eecd913c698430219465cbc60c260aa3adf339 (patch)
treea8b3e0856d3e29c005a19258a5e4b3b54854e9df
parent9c71e248294f709b14a525e5ed60a2ef24f3ead8 (diff)
parent7bf68f83f806767bfa8b89ffb83507186a3b1448 (diff)
downloadpies-01eecd913c698430219465cbc60c260aa3adf339.tar.gz
Merge pull request #2 from timothycrosley/feature/release-1.0.0
Feature/release 1.0.0
-rw-r--r--README.md7
-rw-r--r--pies.py79
-rw-r--r--setup.py15
3 files changed, 94 insertions, 7 deletions
diff --git a/README.md b/README.md
index f74c096..98ac9c2 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,3 @@
-<<<<<<< Updated upstream
-pies
-====
-=======
pies!
====================
@@ -47,6 +43,3 @@ The following will work unchanged in Python 3 after import (using the Python 2 s
pies will also automatically install and include the most optimal version of OrderedDict for the python environment
in use, so you should remove any other explicit imports of OrderedDict.
->>>>>>> Stashed changes
-
-The simplest way to write one program that runs on both Python 2 and Python 3.
diff --git a/pies.py b/pies.py
new file mode 100644
index 0000000..0e44e40
--- /dev/null
+++ b/pies.py
@@ -0,0 +1,79 @@
+"""
+ pies.py
+
+ Adds necessary hooks to allow Python code to run on multiple major versions of Python at once
+ (currently 2.6 - 3.x)
+
+ Usage:
+ Anywhere you want to gain support for multiple versions of Python simply add the following line
+ from pies import *
+
+ Copyright (C) 2013 Timothy Edmund Crosley
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version 2
+ of the License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+"""
+
+import sys
+
+__version__ = "1.0.0"
+
+if sys.version > '3':
+ import urllib
+ from urllib import parse
+
+ from collections import OrderedDict
+
+ long = int
+ unicode = str
+
+ def u(string):
+ return string
+
+ def iteritems(collection):
+ return collection.items()
+
+ def itervalues(collection):
+ return collection.values()
+
+ def iterkeys(collection):
+ return collection.keys()
+
+ def xrange(*args):
+ return range(*args)
+
+ urllib.quote = parse.quote
+ urllib.quote_plus = parse.quote_plus
+ urllib.unquote = parse.unquote
+ urllib.unquote_plus = parse.unquote_plus
+ urllib.urlencode = parse.urlencode
+else:
+ try:
+ from collections import OrderedDict
+ except ImportError:
+ from ordereddict import OrderedDict
+
+ import codecs
+
+ def u(string):
+ return codecs.unicode_escape_decode(string)[0]
+
+ def iteritems(collection):
+ return collection.iteritems()
+
+ def itervalues(collection):
+ return collection.itervalues()
+
+ def iterkeys(collection):
+ return collection.iterkeys()
diff --git a/setup.py b/setup.py
new file mode 100644
index 0000000..981a876
--- /dev/null
+++ b/setup.py
@@ -0,0 +1,15 @@
+#!/usr/bin/env python
+
+from distutils.core import setup
+
+setup(name='pies',
+ version='1.0.0',
+ description='The simplest way to write one program that runs on both Python 2 and Python 3.',
+ author='Timothy Crosley',
+ author_email='timothy.crosley@gmail.com',
+ url='http://www.simpleinnovation.org/',
+ download_url='https://github.com/timothycrosley/pies/blob/master/dist/pies-1.0.0.tar.gz?raw=true',
+ license="GNU GPLv2",
+ install_requires=['ordereddict'],
+ requires=['ordereddict'],
+ py_modules=['pies'])