Commit Graph

42 Commits

Author SHA1 Message Date
Martin Zimmermann
db9bfddc13 SQLite3Cache uses SA now 2014-07-22 21:49:00 +02:00
Martin Zimmermann
fc2cc0c65f fix test discovery 2014-07-22 17:02:51 +02:00
Martin Zimmermann
ff272f60ce fix cookie expiration 2014-07-22 16:59:06 +02:00
Martin Zimmermann
131951c976 python3 compatibility 2014-07-21 23:24:22 +02:00
Martin Zimmermann
7a3251ddfc refactor and migration to SQLAlchemy
* split db/view into model, controller and views
* use SQLAlchemy for comments, threads and preferences
2014-07-21 22:58:42 +02:00
Martin Zimmermann
7886c20aef Merge branch 'master' into dev
Conflicts:
	MANIFEST.in
	docs/docs/install.rst
	isso/tests/test_html.py
2014-07-14 20:03:50 +02:00
Martin Zimmermann
ce9781df51 Merge branch 'legacy/0.9'
Conflicts:
	CHANGES.rst
	isso/core.py
	isso/dispatch.py
	setup.py
2014-07-09 12:37:53 +02:00
Martin Zimmermann
b2b6af24d6 fix clode block generation
added fenced code blocks to default extension list
2014-07-06 18:34:06 +02:00
Martin Zimmermann
d472262fee add SQLite3-based queue 2014-07-02 18:08:12 +02:00
Martin Zimmermann
80cbf2676f drop Python 2.6
* no timedelta.total_seconds
* no functools.total_ordering

EOL.
2014-06-28 18:21:44 +02:00
Martin Zimmermann
4f152d03ac remove uWSGI/Process/Threading mixin
* atexit is ignored by uWSGI and the worker thread can not exit
* queue API and naming is not final

Gunicorn ignores an error on shutdown:

    Exception SystemExit: 0 in <module 'threading' from
    '/usr/lib64/python2.7/threading.pyc'> ignored
2014-06-28 18:06:20 +02:00
Martin Zimmermann
10960ecf1e add in-memory queue, worker and task skeleton 2014-06-28 12:39:29 +02:00
Martin Zimmermann
88689c789a connection pooling and new cache implementations
* add a wrapper around `sqlite3` to enable connection pooling across
  multiple threads.

  Most tests now use a in-memory database which speeds things (slightly)
  up. The database wrapper is now uncoupled from the actual database
  connection.

* split cache framework from core.Mixin into a separate package
  `isso.cache`. The dependency on `werkzeug.contrib` has been removed to
  ease a possible transition to a different web framework later.

  The default cache uses SQLite3 now (unless Isso is run from uWSGI).
  While it may sound like a Bad Idea (tm), it's much more efficient than
  per-process python datastructures. The SQLite3 cache is SMP-capable
  and fast for read-heavy sites.

  SQLite3 may fail due to a corrupt database for concurrent read access
  from multiple processes. The database is actually not corrupted, but
  the connection is stale. As a workaround, limit process number to your
  CPU count or wait until a "real" backend such as PostgreSQL is
  available.
2014-06-27 15:37:44 +02:00
Martin Zimmermann
bbd9e1b523 add type checking utils 2014-06-26 15:33:28 +02:00
Martin Zimmermann
b2bc582f92 remove tests with too many votes 2014-06-25 19:07:19 +02:00
Martin Zimmermann
5f71b735e5 include default.ini in package
share/isso.conf symlink actually. Fix broken isso.dispatch module.
2014-06-25 18:48:13 +02:00
Martin Zimmermann
1a4e760fe0 remove configuration dependency in Markup
Also handle mutable datastructures more carefully.
2014-06-25 18:12:51 +02:00
Martin Zimmermann
65caa7ad99 remove configuration dependency from hash 2014-06-25 17:40:16 +02:00
Martin Zimmermann
221b782157 refactor configuration parsing
* use a single default configuration, share/isso.conf
* try to use config.new in some tests which are decoupled

A few tests now depend on `isso.dist` to show that they (or the used
objects) have too much dependencies and need to be rewritten.
2014-06-23 18:03:46 +02:00
Martin Zimmermann
9260e143f1 decouple hash generation from comment view and allow customization
Tests now use a dummy hash function that does nothing (basically) and
run a bit faster now.
2014-06-11 14:27:44 +02:00
Martin Zimmermann
91e63c7e5f simplify import format detection 2014-06-11 10:31:44 +02:00
Martin Zimmermann
211f637569 remove Django's PBKDF2 in favour of werkzeug.security.pbkdf2_hex 2014-05-29 12:38:46 +02:00
Martin Zimmermann
64054ec029 remove unused code, fix pyflakes and jshint hints 2014-05-28 11:05:10 +02:00
Martin Zimmermann
8b5462ed2e remove /check-ip 2014-05-27 17:36:03 +02:00
Martin Zimmermann
8fefe3a616 fix hidden reply to deleted comment (and change a few names) 2014-05-27 16:10:15 +02:00
Martin Zimmermann
065460d78a add tests for website validation 2014-05-27 13:33:29 +02:00
Martin Zimmermann
fcc4cd63b4 fix #93 2014-05-24 10:34:46 +02:00
Martin Zimmermann
fb182ae93f Merge branch 'pr-83', closes #83 2014-05-17 11:07:51 +02:00
Martin Zimmermann
123ea26ca9 handle WP's query-string "pages" and variable WXR namespaces
Site links such as /?p=1234 are imported *as is* and maybe do work in
Isso. Do not use a query-based URL structure as permalinks. Ever.

Also, depending on the pages you are going to export, WXR' XML namespace
may change from ../export/1.0/ to ../export/1.2/. Isso tries to import
any WXR 1.x
2014-05-03 00:16:54 +02:00
Srijan Choudhary
2e2fba89a6 Add some tests 2014-05-03 01:14:33 +05:30
Martin Zimmermann
346b60a9b3 disqus import imports anonymized IP address now 2014-05-02 11:43:13 +02:00
Martin Zimmermann
39101c2ac7 Disqus import uses Progressbar class as well 2014-05-02 11:40:16 +02:00
Martin Zimmermann
12f8af8434 add initial support to import WordPress comments 2014-04-30 18:57:17 +02:00
Martin Zimmermann
0154113c80 replace assert with assertEqual 2014-04-30 15:24:58 +02:00
Martin Zimmermann
910da2a6c0 refactor disqus migration code into a class 2014-04-30 15:07:11 +02:00
Srijan Choudhary
8fdceeaafb Handle edge cases occuring in tests 2014-04-25 00:09:48 +05:30
Martin Zimmermann
1e5878bec3 auto-correct wrong/invalid parent to max nesting level of 1 2014-04-21 10:23:45 +02:00
Martin Zimmermann
9ee0a1a2eb reply to comment now nests to max. level of 1, part of #79 2014-04-20 16:30:18 +02:00
Martin Zimmermann
5d2daa1244 add db migration, part of #79 2014-04-20 15:39:43 +02:00
Martin Zimmermann
765a91fefb return first item of [general] -> host if origin is hidden
A minor regression introduced by the latest refactorings. A functional
test is now included. Only affects Firefox users that use non-SSL and
supress their HTTP Referer completely
2014-03-29 12:58:08 +01:00
Martin Zimmermann
c4430c857c add test for database migration 2014-03-28 13:20:43 +01:00
Martin Zimmermann
0233619d35 mv specs/ to tests/ 2014-03-28 12:20:37 +01:00