Neil Schemenauer
34d4762fa9
Handle docstring AST attribute (new in Python 3.7).
2017-11-26 12:37:23 -08:00
Neil Schemenauer
8568b3f1bb
Update version to 3.0.
2017-11-24 11:14:28 -08:00
Neil Schemenauer
7aec664861
Add 'chunked' demo page.
2017-11-24 11:07:07 -08:00
Neil Schemenauer
f31d493e36
Add dump of HTTP request to form demo page.
2017-11-24 11:06:02 -08:00
Neil Schemenauer
8db6c1b1e4
If available, use 'secrets' module for randbytes().
2017-11-24 11:04:39 -08:00
Neil Schemenauer
610cd9c30d
Update sendmail.py to allow SMTP AUTH and SSL/TLS.
2017-09-15 11:15:11 -07:00
Neil Schemenauer
c68fcae33f
Update version to 3.0b2.
2017-08-15 12:43:53 -07:00
Neil Schemenauer
079b9b11d3
Remove use of utest.py module from test_ptl, use py.test.
2017-08-11 14:56:16 -07:00
Neil Schemenauer
d955d01d2f
Fix _q_format() test for 'r' conversion, add 'a' conversion test.
2017-08-11 14:53:57 -07:00
Neil Schemenauer
00cf6af51f
Add unit test for PTL f-string support.
2017-08-11 12:37:51 -07:00
Neil Schemenauer
fad65207ef
Add support for f-strings to PTL compiler.
2017-08-11 12:37:51 -07:00
Neil Schemenauer
5e147894d4
Update version to 3.0b1.
2017-03-07 13:31:15 -08:00
Neil Schemenauer
bf23e8deed
Remove unmaintained and probably broken server modules.
2016-12-09 12:55:07 -08:00
Neil Schemenauer
b607a2b9af
Enable 'OPTIONS' method for simple_server.
...
You still need to set the config option to allow the method but
if it is enabled then Quixote will allow it. Implementation of
the method is up to the application, not Quixote.
2016-10-17 13:57:38 -07:00
Neil Schemenauer
056e066524
Restore ptl.ptl_compile.compile_template() function.
2016-10-04 13:11:38 -07:00
Neil Schemenauer
b59e32042e
Avoid mixed-type comparision in _py_htmltext.
2016-10-04 13:11:02 -07:00
Neil Schemenauer
9352cfe80e
Modify tests to run with py.test.
...
This removes a dependancy on Sancho for running tests.
2016-10-04 13:07:07 -07:00
Neil Schemenauer
7dc58b8c88
Make url_with_query() sort parameters.
2016-10-04 13:05:25 -07:00
Neil Schemenauer
7a7abbc30a
Make 'scgi' package optional.
...
Add try/except around 'scgi' import so we don't require it.
2016-09-12 17:01:39 +00:00
Neil Schemenauer
cb788a75c8
Use sort(key=...) to sort widget options.
...
The decorate/undecorate pattern is no longer necessary and
can cause comparision errors in Python 3 (e.g. comparing distinct
types).
2016-07-14 21:58:48 +00:00
Neil Schemenauer
0e9b73be39
For simple_server.py, inherit listening socket if present.
...
This adds support for getting the listening socket from
systemd.
2016-06-24 18:08:22 +00:00
Neil Schemenauer
74b3b3750f
Add --session-affinity option to scgi_server.py module.
...
The Python 3 version of the scgi_server package will provide
this feature so allow Quixote apps to use it.
2016-05-26 18:10:08 +00:00
Neil Schemenauer
641f5e9bb3
Refactor QuixoteHandler(), remove conn.close() call.
...
We should not close the connection inside the handle_connection()
method, the caller will call shutdown() and then close(). Refactor
so that 'input' and 'output' file descriptors are closed on errors.
2016-05-26 18:08:04 +00:00
Neil Schemenauer
f9651c3957
Remove erroneous 'self' parameter for source_to_code()
...
PTLFileLoader.source_to_code() is a static method and should
not have a 'self' parameter. Use absolute imports in ptl_compile.py
so it can be run as a script.
2016-05-26 18:04:27 +00:00
Neil Schemenauer
e27b7fa03c
Update version to 3.0a1.
2016-05-24 21:02:50 +00:00
Neil Schemenauer
ed79e11d88
Overhaul sendmail.py module to handle Unicode text.
...
The built-in smtp module requires byte strings. Change
quixote.sendmail to accept Unicode strings and apply the correct
encoding and charset declarations to produce proper messages.
2016-05-24 17:25:27 +00:00
Neil Schemenauer
334301fded
Rewrite ptl_compile to work with Python 3.
...
Support new compiled module layout (__pycache__). Fix
compile_package() so it can be used for backwards compatibility
with Quixote applications using it.
2016-05-24 17:24:45 +00:00
Neil Schemenauer
0911f3761b
Properly handle __future__ statements if there is a docstring.
2016-04-20 21:43:10 +00:00
Neil Schemenauer
b70d6a275c
Use byte literal in a few places as needed.
2016-04-08 16:14:20 +00:00
Neil Schemenauer
8420d45452
Remove stray characters.
2016-04-05 16:14:42 +00:00
Neil Schemenauer
952aa2748e
Port _c_htmltext module to Python 3.
2016-04-05 16:13:58 +00:00
Neil Schemenauer
7f7620e7f4
Fix make_safe_filename() to work with unicode strings.
2016-04-04 17:47:00 +00:00
Neil Schemenauer
77ff7b370d
Use 'encoding' parameter of unquote_plus(), catch errors.
2016-04-04 17:46:27 +00:00
Neil Schemenauer
e918906921
Replace use of has_key() with 'in'.
2016-04-04 17:45:47 +00:00
Neil Schemenauer
3cecc0b83d
Return a str() from _encode_base64(), not bytes().
2016-04-04 17:03:50 +00:00
Neil Schemenauer
c049096369
Detect source code encoding in .ptl files.
2016-04-04 17:00:49 +00:00
Neil Schemenauer
f3a9812a27
Add 'errors' parameter to _open_log(), handle strange characters.
2016-04-04 16:11:56 +00:00
Neil Schemenauer
31dceaf37d
Python 3 changes: use ast module to compile, importlib hooks.
2016-03-31 21:17:39 +00:00
Neil Schemenauer
2b7b5a8f0e
More Python 3 fixes.
2016-03-31 21:17:06 +00:00
Neil Schemenauer
574b9b1088
Changes for Python 3: str/bytes fixes mostly.
2016-03-31 20:40:32 +00:00
Neil Schemenauer
9c12cd7b1a
Remove insecure randbytes() fallbacks, str/bytes fixes.
2016-03-31 16:30:32 +00:00
Neil Schemenauer
bfd680c721
Python 3 support: use base64 module.
2016-03-31 16:29:35 +00:00
Neil Schemenauer
660d72d1f2
Trival changes to support Python 3.
2016-03-24 22:25:53 +00:00
Neil Schemenauer
efe8e3d235
Prepare 2.9 release.
...
There was a packaging error for 2.8. It included files not intended
to be released which broke the 'ptl' package. This release repairs
that error and includes a small change to random session tokens.
2015-12-08 11:25:25 -08:00
Neil Schemenauer
410c030b50
Use 128-bit random tokens for session keys and form tokens.
...
Our previous 64-bit values should still be more than secure
for web applications but recommended best practice is currently
128-bit. We use URL-safe base64 encoding so the length of
the tokens is only a bit longer.
2015-12-08 11:16:30 -08:00
Neil Schemenauer
662c99f3e1
Use base64 instead of hex encoding for util.randbytes()
2015-12-08 11:16:05 -08:00
Neil Schemenauer
c40fbfc433
Update version number to 2.8.
2014-01-17 15:27:42 -06:00
Neil Schemenauer
9448e19e53
Don't set duplicate ID attributes on radio inputs.
2013-08-25 08:42:32 -06:00
Patrik Simons
b1e805d7c5
ptl_import recompiles ptl files
...
Since stat.st_mtime is a float in linux, _load_pyc will almost always
recompile the ptl files. Here's a patch to make the logic follow
compile.c in python.
2013-08-25 08:33:02 -06:00
Neil Schemenauer
271678da41
Update version to 2.8b2.
2013-07-20 14:28:29 -06:00