horsemeat 2.21.7__tar.gz → 2.22.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {horsemeat-2.21.7 → horsemeat-2.22.1}/PKG-INFO +6 -4
- {horsemeat-2.21.7 → horsemeat-2.22.1}/README +2 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/configwrapper.py +3 -3
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/scripts/make-frippery-project +1 -1
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/version.py +1 -1
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/handler.py +0 -1
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/request.py +3 -3
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/response.py +25 -4
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/scrubber.py +1 -1
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat.egg-info/PKG-INFO +6 -4
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat.egg-info/requires.txt +1 -3
- {horsemeat-2.21.7 → horsemeat-2.22.1}/requirements.txt +1 -1
- {horsemeat-2.21.7 → horsemeat-2.22.1}/setup.py +14 -16
- {horsemeat-2.21.7 → horsemeat-2.22.1}/MANIFEST.in +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/__init__.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/model/__init__.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/model/newsmessage.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/model/session.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/model/user.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/pg.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/tests/__init__.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/tests/test_configwrapper.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/__init__.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/bogusrequest.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/dispatcher.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/framework_templates/__init__.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat/webapp/frameworkhandlers.py +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat.egg-info/SOURCES.txt +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat.egg-info/dependency_links.txt +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/horsemeat.egg-info/top_level.txt +0 -0
- {horsemeat-2.21.7 → horsemeat-2.22.1}/setup.cfg +0 -0
@@ -1,11 +1,13 @@
|
|
1
|
-
Metadata-Version:
|
1
|
+
Metadata-Version: 2.1
|
2
2
|
Name: horsemeat
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.22.1
|
4
4
|
Summary: Web framework for the damned. The mad.
|
5
|
-
Home-page: https://
|
5
|
+
Home-page: https://github.com/216software/horsemeat
|
6
6
|
Author: 216 Software, LLC
|
7
7
|
Author-email: info@216software.com
|
8
8
|
License: UNKNOWN
|
9
|
-
Description: UNKNOWN
|
10
9
|
Platform: UNKNOWN
|
11
10
|
Classifier: Programming Language :: Python :: 3
|
11
|
+
|
12
|
+
UNKNOWN
|
13
|
+
|
@@ -15,7 +15,7 @@ import traceback
|
|
15
15
|
import uuid
|
16
16
|
import warnings
|
17
17
|
|
18
|
-
import clepy
|
18
|
+
# import clepy
|
19
19
|
import jinja2
|
20
20
|
import pkg_resources
|
21
21
|
import psycopg2, psycopg2.extras
|
@@ -327,7 +327,7 @@ class ConfigWrapper(object):
|
|
327
327
|
|
328
328
|
# Add a bunch of stuff to the template namespace.
|
329
329
|
j.globals['ceil'] = math.ceil
|
330
|
-
j.globals['clepy'] = clepy
|
330
|
+
# j.globals['clepy'] = clepy
|
331
331
|
j.globals['datetime'] = datetime
|
332
332
|
j.globals['dir'] = dir
|
333
333
|
j.globals['enumerate'] = enumerate
|
@@ -483,7 +483,7 @@ class ConfigWrapper(object):
|
|
483
483
|
@abc.abstractproperty
|
484
484
|
def dispatcher_class(self):
|
485
485
|
|
486
|
-
print
|
486
|
+
print("you have to define this in the subclass!")
|
487
487
|
|
488
488
|
raise NotImplementedError
|
489
489
|
|
@@ -20,7 +20,7 @@ from werkzeug.wrappers import Request as WerkzeugRequest
|
|
20
20
|
|
21
21
|
log = logging.getLogger(__name__)
|
22
22
|
|
23
|
-
class Request(collections.
|
23
|
+
class Request(collections.MutableMapping):
|
24
24
|
|
25
25
|
"""
|
26
26
|
Wraps up the environ dictionary in an object with lots of cute
|
@@ -76,7 +76,7 @@ class Request(collections.abc.MutableMapping if sys.version_info >= (3,10) else
|
|
76
76
|
>>> req.parsed_QS['flavor'][0] == u'Jalapeño' # doctest: +SKIP
|
77
77
|
True
|
78
78
|
|
79
|
-
>>> print
|
79
|
+
>>> print(req.parsed_QS['flavor'][0]) # doctest: +SKIP
|
80
80
|
Jalapeño
|
81
81
|
|
82
82
|
"""
|
@@ -214,7 +214,7 @@ class Request(collections.abc.MutableMapping if sys.version_info >= (3,10) else
|
|
214
214
|
>>> req.parsed_body['flavor'][0] == u'Jalape\xf1o' # doctest: +SKIP
|
215
215
|
True
|
216
216
|
|
217
|
-
>>> print
|
217
|
+
>>> print(req.parsed_body['flavor'][0]) # doctest: +SKIP
|
218
218
|
Jalapeño
|
219
219
|
|
220
220
|
>>> 'novalue' in req.parsed_body # doctest: +SKIP
|
@@ -9,7 +9,28 @@ import pprint
|
|
9
9
|
import urllib
|
10
10
|
import sys
|
11
11
|
|
12
|
-
|
12
|
+
def listmofize(x):
|
13
|
+
|
14
|
+
"""
|
15
|
+
Return x inside a list if it isn't already a list or tuple.
|
16
|
+
Otherwise, return x.
|
17
|
+
|
18
|
+
>>> listmofize('abc')
|
19
|
+
['abc']
|
20
|
+
|
21
|
+
>>> listmofize(['abc', 'def'])
|
22
|
+
['abc', 'def']
|
23
|
+
|
24
|
+
>>> listmofize((1,2))
|
25
|
+
(1, 2)
|
26
|
+
|
27
|
+
listmofize used to live in the clepy package, but the use2to3 option
|
28
|
+
in setup.py no longer works, and I'm not gonna rewrite all that for
|
29
|
+
this one function.
|
30
|
+
"""
|
31
|
+
|
32
|
+
if not isinstance(x, (list, tuple)): return [x]
|
33
|
+
else: return x
|
13
34
|
|
14
35
|
log = logging.getLogger(__name__)
|
15
36
|
|
@@ -40,7 +61,7 @@ class Response(object):
|
|
40
61
|
from gunicorn.http.wsgi import FileWrapper
|
41
62
|
|
42
63
|
if not isinstance(val, FileWrapper):
|
43
|
-
self._body =
|
64
|
+
self._body = listmofize(val)
|
44
65
|
else:
|
45
66
|
self._body = val
|
46
67
|
|
@@ -59,10 +80,10 @@ class Response(object):
|
|
59
80
|
|
60
81
|
# Remember that in python 3, unicode stuff is just a string.
|
61
82
|
elif isinstance(val, str):
|
62
|
-
self._body =
|
83
|
+
self._body = listmofize(bytes(val, "utf-8"))
|
63
84
|
|
64
85
|
else:
|
65
|
-
self._body =
|
86
|
+
self._body = listmofize(val)
|
66
87
|
|
67
88
|
@body.setter
|
68
89
|
def body(self, val):
|
@@ -1,11 +1,13 @@
|
|
1
|
-
Metadata-Version:
|
1
|
+
Metadata-Version: 2.1
|
2
2
|
Name: horsemeat
|
3
|
-
Version: 2.
|
3
|
+
Version: 2.22.1
|
4
4
|
Summary: Web framework for the damned. The mad.
|
5
|
-
Home-page: https://
|
5
|
+
Home-page: https://github.com/216software/horsemeat
|
6
6
|
Author: 216 Software, LLC
|
7
7
|
Author-email: info@216software.com
|
8
8
|
License: UNKNOWN
|
9
|
-
Description: UNKNOWN
|
10
9
|
Platform: UNKNOWN
|
11
10
|
Classifier: Programming Language :: Python :: 3
|
11
|
+
|
12
|
+
UNKNOWN
|
13
|
+
|
@@ -5,29 +5,17 @@ import sys
|
|
5
5
|
|
6
6
|
from setuptools import find_packages, setup
|
7
7
|
|
8
|
-
try:
|
9
|
-
from pip.req import parse_requirements
|
10
|
-
except ImportError:
|
11
|
-
# The req module has been moved to pip._internal in the 10
|
12
|
-
# release.
|
13
|
-
from pip._internal.req import parse_requirements
|
14
|
-
|
15
8
|
# Read __version__ from version.py
|
16
9
|
with open(os.path.join(os.getcwd(), "horsemeat", "version.py")) as f:
|
17
10
|
exec(f.read())
|
18
11
|
|
19
|
-
requirements = [str(req.requirement) if hasattr(req, "requirement") else str(req.req)
|
20
|
-
for req in parse_requirements(
|
21
|
-
"requirements.txt",
|
22
|
-
session="setup.py")]
|
23
|
-
|
24
12
|
setup(
|
25
13
|
|
26
14
|
name='horsemeat',
|
27
15
|
|
28
16
|
author="216 Software, LLC",
|
29
17
|
author_email="info@216software.com",
|
30
|
-
url="https://
|
18
|
+
url="https://github.com/216software/horsemeat",
|
31
19
|
description='Web framework for the damned. The mad.',
|
32
20
|
|
33
21
|
version=__version__,
|
@@ -38,12 +26,22 @@ setup(
|
|
38
26
|
|
39
27
|
# package_dir={'horsemeat': 'horsemeat'},
|
40
28
|
|
41
|
-
install_requires=requirements,
|
29
|
+
# install_requires=requirements,
|
30
|
+
|
31
|
+
install_requires=[
|
32
|
+
"Jinja2>=2.6",
|
33
|
+
"PyYAML>=3.10",
|
34
|
+
"Werkzeug>=0.10.1",
|
35
|
+
"decorator>=3.4.0",
|
36
|
+
"psycopg2>=2.7",
|
37
|
+
# "nose>=1.3.3",
|
38
|
+
"gunicorn",
|
39
|
+
],
|
42
40
|
|
43
|
-
use_2to3=True,
|
41
|
+
# use_2to3=True,
|
44
42
|
|
45
43
|
# test_suite="horsemeat.tests",
|
46
|
-
test_suite="nose.collector",
|
44
|
+
# test_suite="nose.collector",
|
47
45
|
# test_suite="horsemeat",
|
48
46
|
|
49
47
|
classifiers=[
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|