Merged master in
This commit is contained in:
commit
be5792cb79
@ -4,7 +4,8 @@ Changelog for Isso
|
|||||||
0.10.7 (unreleased)
|
0.10.7 (unreleased)
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
- Fix Chinese translation
|
- Fix Chinese translation & typo in CJK
|
||||||
|
- Fix link in moderation mails if isso is setup on a sub-url (e.g. domain.tld/comments/)
|
||||||
- Add Danish translation
|
- Add Danish translation
|
||||||
- Add Hungarian translation
|
- Add Hungarian translation
|
||||||
- Add Persian translation
|
- Add Persian translation
|
||||||
@ -12,7 +13,9 @@ Changelog for Isso
|
|||||||
- Add links highlighting in comments
|
- Add links highlighting in comments
|
||||||
- Add apidoc
|
- Add apidoc
|
||||||
- Add rc.d script for FreeBSD
|
- Add rc.d script for FreeBSD
|
||||||
- Some tests/travis/documentation improvements and fixes
|
- Add the possibility to set CORS Origin through ISSO_CORS_ORIGIN environ variable
|
||||||
|
- Some tests/travis/documentation improvements and fixes + pep8
|
||||||
|
- Improvement on german translation
|
||||||
|
|
||||||
|
|
||||||
0.10.6 (2016-09-22)
|
0.10.6 (2016-09-22)
|
||||||
|
@ -51,13 +51,37 @@ In chronological order:
|
|||||||
* Added configuration to require email addresses (no validation)
|
* Added configuration to require email addresses (no validation)
|
||||||
* Fix Vagrantfile
|
* Fix Vagrantfile
|
||||||
|
|
||||||
* Benoît Latinier <benoit@latinier.fr>
|
* Benoît Latinier @blatinier <benoit@latinier.fr>
|
||||||
* Fix thread discovery
|
* Fix thread discovery
|
||||||
* Added mandatory author
|
* Added mandatory author
|
||||||
|
* Added admin interface
|
||||||
|
|
||||||
* Ivan Pantic <ivanpantic82@gmail.com>
|
* Ivan Pantic <ivanpantic82@gmail.com>
|
||||||
* Added vote levels
|
* Added vote levels
|
||||||
|
|
||||||
|
* Martin Schenck @schemar
|
||||||
|
* Improvement in the german translation
|
||||||
|
|
||||||
|
* @cclauss
|
||||||
|
* Pep8 and drop of legacy supports (old python & debian version tested in travis)
|
||||||
|
* Make travis use pyflakes
|
||||||
|
|
||||||
|
* Lucas Cimon @Lucas-C
|
||||||
|
* Added the possibility to define CORS origins through ISSO_CORS_ORIGIN environment variable
|
||||||
|
|
||||||
|
* Yuchen Pei @ycpei
|
||||||
|
* Fix link in moderation emails when isso is installed in a sub URL
|
||||||
|
|
||||||
|
* @Rocket1184
|
||||||
|
* Fix typo in CJK translations
|
||||||
|
|
||||||
|
* @vincentbernat
|
||||||
|
* Added documentation about data-isso-id attribute (overriding the standard isso-thread-id)
|
||||||
|
* Added multi-staged Dockerfile
|
||||||
|
|
||||||
|
* @p-vitt & @M4a1x
|
||||||
|
* Documentation on troubleshooting for uberspace users
|
||||||
|
|
||||||
* Facundo Batista <facundo@taniquetil.com.ar>
|
* Facundo Batista <facundo@taniquetil.com.ar>
|
||||||
* Added a generic way to migrate from a json file
|
* Added a generic way to migrate from a json file
|
||||||
|
|
||||||
|
33
Dockerfile
Normal file
33
Dockerfile
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
# First, compile JS stuff
|
||||||
|
FROM node
|
||||||
|
WORKDIR /src/
|
||||||
|
COPY . .
|
||||||
|
RUN npm install -g requirejs uglify-js jade bower
|
||||||
|
RUN make init js
|
||||||
|
|
||||||
|
# Second, create virtualenv
|
||||||
|
FROM python:3-stretch
|
||||||
|
WORKDIR /src/
|
||||||
|
COPY --from=0 /src .
|
||||||
|
RUN apt-get -qqy update && apt-get -qqy install python3-dev sqlite3
|
||||||
|
RUN python3 -m venv /isso \
|
||||||
|
&& . /isso/bin/activate \
|
||||||
|
&& python setup.py install \
|
||||||
|
&& pip install gunicorn
|
||||||
|
|
||||||
|
# Third, create final repository
|
||||||
|
FROM python:3-slim-stretch
|
||||||
|
WORKDIR /isso/
|
||||||
|
COPY --from=1 /isso .
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
VOLUME /db /config
|
||||||
|
EXPOSE 8080
|
||||||
|
ENV ISSO_SETTINGS /config/isso.cfg
|
||||||
|
CMD ["/isso/bin/gunicorn", "-b", "0.0.0.0:8080", "-w", "4", "--preload", "isso.run"]
|
||||||
|
|
||||||
|
# Example of use:
|
||||||
|
#
|
||||||
|
# docker build -t isso .
|
||||||
|
# docker run -it --rm -v /opt/isso:/config -v /opt/isso:/db -v $PWD:$PWD isso /isso/bin/isso -c \$ISSO_SETTINGS import disqus.xml
|
||||||
|
# docker run -d --rm --name isso -p 8080:8080 -v /opt/isso:/config -v /opt/isso:/db isso
|
@ -59,5 +59,3 @@ definitely need help:
|
|||||||
- delete or activate comments matching a filter (e.g. name, email, ip address)
|
- delete or activate comments matching a filter (e.g. name, email, ip address)
|
||||||
|
|
||||||
- close threads and remove threads completely
|
- close threads and remove threads completely
|
||||||
|
|
||||||
- edit comments
|
|
||||||
|
@ -7,6 +7,7 @@ preferably in the script tag which embeds the JS:
|
|||||||
.. code-block:: html
|
.. code-block:: html
|
||||||
|
|
||||||
<script data-isso="/prefix/"
|
<script data-isso="/prefix/"
|
||||||
|
data-isso-id="thread-id"
|
||||||
data-isso-css="true"
|
data-isso-css="true"
|
||||||
data-isso-lang="ru"
|
data-isso-lang="ru"
|
||||||
data-isso-reply-to-self="false"
|
data-isso-reply-to-self="false"
|
||||||
@ -23,11 +24,11 @@ preferably in the script tag which embeds the JS:
|
|||||||
src="/prefix/js/embed.js"></script>
|
src="/prefix/js/embed.js"></script>
|
||||||
|
|
||||||
Furthermore you can override the automatic title detection inside
|
Furthermore you can override the automatic title detection inside
|
||||||
the embed tag, e.g.:
|
the embed tag, as well as the thread ID, e.g.:
|
||||||
|
|
||||||
.. code-block:: html
|
.. code-block:: html
|
||||||
|
|
||||||
<section id="isso-thread" data-title="Foo!"></section>
|
<section id="isso-thread" data-title="Foo!" data-isso-id="/path/to/resource"></section>
|
||||||
|
|
||||||
data-isso
|
data-isso
|
||||||
---------
|
---------
|
||||||
|
@ -108,7 +108,7 @@ Enable moderation queue and handling of comments still in moderation queue
|
|||||||
|
|
||||||
enabled
|
enabled
|
||||||
enable comment moderation queue. This option only affects new comments.
|
enable comment moderation queue. This option only affects new comments.
|
||||||
Comments in modertion queue are not visible to other users until you
|
Comments in moderation queue are not visible to other users until you
|
||||||
activate them.
|
activate them.
|
||||||
|
|
||||||
purge-after
|
purge-after
|
||||||
|
@ -149,7 +149,18 @@ Prebuilt Packages
|
|||||||
* Fedora: https://copr.fedoraproject.org/coprs/jujens/isso/ — copr
|
* Fedora: https://copr.fedoraproject.org/coprs/jujens/isso/ — copr
|
||||||
repository. Built from Pypi, includes a systemctl unit script.
|
repository. Built from Pypi, includes a systemctl unit script.
|
||||||
|
|
||||||
* Docker Image: https://registry.hub.docker.com/u/bl4n/isso/
|
Build a Docker image
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
You can get a Docker image by running ``docker build . -t
|
||||||
|
isso``. Assuming you have your configuration in ``/opt/isso``, you can
|
||||||
|
use the following command to spawn the Docker container:
|
||||||
|
|
||||||
|
.. code-block:: sh
|
||||||
|
|
||||||
|
~> docker run -d --rm --name isso -p 127.0.0.1:8080:8080 -v /opt/isso:/config -v /opt/isso:/db isso
|
||||||
|
|
||||||
|
Then, you can use a reverse proxy to expose port 8080.
|
||||||
|
|
||||||
Install from Source
|
Install from Source
|
||||||
-------------------
|
-------------------
|
||||||
|
@ -1,6 +1,12 @@
|
|||||||
Troubleshooting
|
Troubleshooting
|
||||||
===============
|
===============
|
||||||
|
|
||||||
|
For uberspace users
|
||||||
|
-------------------
|
||||||
|
Some uberspace users experienced problems with isso and they solved their
|
||||||
|
issue by adding `DirectoryIndex disabled` as the first line in the `.htaccess`
|
||||||
|
file for the domain the isso server is running on.
|
||||||
|
|
||||||
pkg_ressources.DistributionNotFound
|
pkg_ressources.DistributionNotFound
|
||||||
-----------------------------------
|
-----------------------------------
|
||||||
|
|
||||||
|
@ -37,6 +37,12 @@ class SMTP(object):
|
|||||||
|
|
||||||
self.isso = isso
|
self.isso = isso
|
||||||
self.conf = isso.conf.section("smtp")
|
self.conf = isso.conf.section("smtp")
|
||||||
|
gh = isso.conf.get("general", "host")
|
||||||
|
if type(gh) == str:
|
||||||
|
self.general_host = gh
|
||||||
|
#if gh is not a string then gh is a list
|
||||||
|
else:
|
||||||
|
self.general_host = gh[0]
|
||||||
|
|
||||||
# test SMTP connectivity
|
# test SMTP connectivity
|
||||||
try:
|
try:
|
||||||
@ -109,7 +115,7 @@ class SMTP(object):
|
|||||||
(local("origin") + thread["uri"] + "#isso-%i" % comment["id"]))
|
(local("origin") + thread["uri"] + "#isso-%i" % comment["id"]))
|
||||||
rv.write("\n")
|
rv.write("\n")
|
||||||
|
|
||||||
uri = local("host") + "/id/%i" % comment["id"]
|
uri = self.general_host + "/id/%i" % comment["id"]
|
||||||
key = self.isso.sign(comment["id"])
|
key = self.isso.sign(comment["id"])
|
||||||
|
|
||||||
rv.write("---\n")
|
rv.write("---\n")
|
||||||
|
@ -84,6 +84,8 @@ def origin(hosts):
|
|||||||
hosts = [urlsplit(h) for h in hosts]
|
hosts = [urlsplit(h) for h in hosts]
|
||||||
|
|
||||||
def func(environ):
|
def func(environ):
|
||||||
|
if 'ISSO_CORS_ORIGIN' in environ:
|
||||||
|
return environ['ISSO_CORS_ORIGIN']
|
||||||
|
|
||||||
if not hosts:
|
if not hosts:
|
||||||
return "http://invalid.local"
|
return "http://invalid.local"
|
||||||
|
Loading…
Reference in New Issue
Block a user