Skip to content
This repository has been archived by the owner on Jan 25, 2019. It is now read-only.

Python3 support #133

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
10 changes: 5 additions & 5 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
#!/usr/bin/env python2
#!/usr/bin/env python

from setuptools import setup

from wok import version

setup(
name='wok',
version=version.encode("utf8"),
version=version,
author='Mike Cooper',
author_email='[email protected]',
url='http://wok.mythmon.com',
Expand All @@ -25,13 +25,13 @@
'Programming Language :: Python',
],
install_requires=[
'Jinja2==2.6',
'Jinja2==2.7.3',
'Markdown==2.1.1',
'PyYAML==3.10',
'Pygments==1.4',
'docutils==0.8.1',
'docutils==0.12',
'awesome-slugify==1.4',
'pytest==2.5.2',
'pytest==2.8.0',
],
packages=['wok'],
scripts=['scripts/wok'],
Expand Down
4 changes: 3 additions & 1 deletion wok/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
version = u'1.1.1'
from __future__ import unicode_literals

version = '1.1.1'
18 changes: 11 additions & 7 deletions wok/dev_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,14 @@
property) and `base.css` can be accessed from anywhere.
'''

from __future__ import print_function
import sys
import os
from BaseHTTPServer import HTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
try:
from BaseHTTPServer import HTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
except ImportError: # python 3
from http.server import HTTPServer, SimpleHTTPRequestHandler

class dev_server:

Expand Down Expand Up @@ -55,19 +59,19 @@ def run(self):

print("Starting dev server on http://%s:%s... (Ctrl-C to stop)"
%(socket_info[0], socket_info[1]))
print "Serving files from", self.serv_dir
print("Serving files from", self.serv_dir)

if self.dir_mon:
print "Monitoring the following directories for changes: "
print("Monitoring the following directories for changes: ")
for d in self.watch_dirs:
print "\t", d
print("\t", d)
else:
print "Directory monitoring is OFF"
print("Directory monitoring is OFF")

try:
httpd.serve_forever()
except KeyboardInterrupt:
print "\nStopping development server..."
print("\nStopping development server...")


class RebuildHandlerWrapper(object):
Expand Down
9 changes: 7 additions & 2 deletions wok/engine.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/python2
#!/usr/bin/env python
import os
import sys
import shutil
Expand Down Expand Up @@ -436,7 +436,12 @@ def render_site(self):
},
}

for k, v in self.options.iteritems():
try:
items = self.options.iteritems()
except AttributeError:
items = self.options.items()

for k, v in items:
if k not in ('site_title', 'output_dir', 'content_dir',
'templates_dir', 'media_dir', 'url_pattern'):

Expand Down
2 changes: 1 addition & 1 deletion wok/jinja.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ def get_source(self, environment, template):
filename = filenames[0]

with open(filename) as f:
contents = f.read().decode(self.encoding)
contents = f.read()

mtime = os.path.getmtime(filename)
def uptodate():
Expand Down
4 changes: 2 additions & 2 deletions wok/page.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ def from_file(cls, path, options, engine, renderer=renderers.Plain):
page.filename = os.path.basename(path)

with open(path, 'rU') as f:
page.original = f.read().decode('utf-8')
page.original = f.read()
splits = page.original.split('\n---\n')

if len(splits) > 3:
Expand Down Expand Up @@ -490,7 +490,7 @@ def write(self):

logging.debug('Writing {0} to {1}'.format(self.meta['slug'], base_path))
f = open(base_path, 'w')
f.write(self.rendered.encode('utf-8'))
f.write(self.rendered)
f.close()

def __repr__(self):
Expand Down
6 changes: 3 additions & 3 deletions wok/util.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

def chunk(li, n):
"""Yield succesive n-size chunks from l."""
for i in xrange(0, len(li), n):
for i in range(0, len(li), n):
yield li[i:i+n]

def date_and_times(meta):
Expand All @@ -30,8 +30,8 @@ def date_and_times(meta):

if isinstance(time_part, int):
seconds = time_part % 60
minutes = (time_part / 60) % 60
hours = (time_part / 3600)
minutes = int(time_part / 60) % 60
hours = int(time_part / 3600)

time_part = time(hours, minutes, seconds)

Expand Down