aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/siteadmin
diff options
context:
space:
mode:
Diffstat (limited to 'docs/source/siteadmin')
-rw-r--r--docs/source/siteadmin/codebase.rst158
-rw-r--r--docs/source/siteadmin/deploying.rst4
-rw-r--r--docs/source/siteadmin/media-types.rst34
-rw-r--r--docs/source/siteadmin/production-deployments.rst13
-rw-r--r--docs/source/siteadmin/relnotes.rst67
5 files changed, 106 insertions, 170 deletions
diff --git a/docs/source/siteadmin/codebase.rst b/docs/source/siteadmin/codebase.rst
deleted file mode 100644
index 73e938e7..00000000
--- a/docs/source/siteadmin/codebase.rst
+++ /dev/null
@@ -1,158 +0,0 @@
-.. MediaGoblin Documentation
-
- Written in 2011, 2012 by MediaGoblin contributors
-
- To the extent possible under law, the author(s) have dedicated all
- copyright and related and neighboring rights to this software to
- the public domain worldwide. This software is distributed without
- any warranty.
-
- You should have received a copy of the CC0 Public Domain
- Dedication along with this software. If not, see
- <http://creativecommons.org/publicdomain/zero/1.0/>.
-
-.. _codebase-chapter:
-
-========================
- Codebase Documentation
-========================
-
-.. contents:: Sections
- :local:
-
-
-This chapter covers the libraries that GNU MediaGoblin uses as well as
-various recipes for getting things done.
-
-.. Note::
-
- This chapter is in flux. Clearly there are things here that aren't
- documented. If there's something you have questions about, please
- ask!
-
- See `the join page on the website <http://mediagoblin.org/join/>`_
- for where we hang out.
-
-For more information on how to get started hacking on GNU MediaGoblin,
-see `the wiki <http://wiki.mediagoblin.org/>`_.
-
-
-Software Stack
-==============
-
-* Project infrastructure
-
- * `Python <http://python.org/>`_: the language we're using to write
- this
-
- * `Nose <http://somethingaboutorange.com/mrl/projects/nose/>`_:
- for unit tests
-
- * `virtualenv <http://www.virtualenv.org/>`_: for setting up an
- isolated environment to keep mediagoblin and related packages
- (potentially not required if MediaGoblin is packaged for your
- distro)
-
-* Data storage
-
- * `SQLAlchemy <http://sqlalchemy.org/>`_: SQL ORM and database
- interaction library for Python. Currently we support sqlite and
- postgress as backends.
-
-* Web application
-
- * `Paste Deploy <http://pythonpaste.org/deploy/>`_ and
- `Paste Script <http://pythonpaste.org/script/>`_: we'll use this for
- configuring and launching the application
-
- * `werkzeug <http://werkzeug.pocoo.org/>`_: nice abstraction layer
- from HTTP requests, responses and WSGI bits
-
- * `Beaker <http://beaker.groovie.org/>`_: for handling sessions and
- caching
-
- * `Jinja2 <http://jinja.pocoo.org/docs/>`_: the templating engine
-
- * `WTForms <http://wtforms.simplecodes.com/>`_: for handling,
- validation, and abstraction from HTML forms
-
- * `Celery <http://celeryproject.org/>`_: for task queuing (resizing
- images, encoding video, ...)
-
- * `Babel <http://babel.edgewall.org>`_: Used to extract and compile
- translations.
-
- * `Markdown (for python) <http://pypi.python.org/pypi/Markdown>`_:
- implementation of `Markdown <http://daringfireball.net/projects/markdown/>`_
- text-to-html tool to make it easy for people to write richtext
- comments, descriptions, and etc.
-
- * `lxml <http://lxml.de/>`_: nice xml and html processing for
- python.
-
-* Media processing libraries
-
- * `Python Imaging Library <http://www.pythonware.com/products/pil/>`_:
- used to resize and otherwise convert images for display.
-
- * `GStreamer <http://gstreamer.freedesktop.org/>`_: (Optional, for
- video hosting sites only) Used to transcode video, and in the
- future, probably audio too.
-
- * `chardet <http://pypi.python.org/pypi/chardet>`_: (Optional, for
- ascii art hosting sites only) Used to make ascii art thumbnails.
-
-* Front end
-
- * `JQuery <http://jquery.com/>`_: for groovy JavaScript things
-
-
-
-What's where
-============
-
-After you've run checked out mediagoblin and followed the virtualenv
-instantiation instructions, you're faced with the following directory
-tree::
-
- mediagoblin/
- |- mediagoblin/ # source code
- | |- tests/
- | |- templates/
- | |- auth/
- | \- submit/
- |- docs/ # documentation
- |- devtools/ # some scripts for developer convenience
- |
- | # the below directories are installed into your virtualenv checkout
- |
- |- bin/ # scripts
- |- develop-eggs/
- |- lib/ # python libraries installed into your virtualenv
- |- include/
- |- mediagoblin.egg-info/
- |- parts/
- |- user_dev/ # sessions, etc
-
-
-As you can see, all the code for GNU MediaGoblin is in the
-``mediagoblin`` directory.
-
-Here are some interesting files and what they do:
-
-:routing.py: maps url paths to views
-:views.py: views handle http requests
-:models.py: holds the sqlalchemy schemas---these are the data structures
- we're working with
-
-You'll notice that there are several sub-directories: tests,
-templates, auth, submit, ...
-
-``tests`` holds the unit test code.
-
-``templates`` holds all the templates for the output.
-
-``auth`` and ``submit`` are modules that enacpsulate authentication
-and media item submission. If you look in these directories, you'll
-see they have their own ``routing.py``, ``view.py``, and
-``models.py`` in addition to some other code.
diff --git a/docs/source/siteadmin/deploying.rst b/docs/source/siteadmin/deploying.rst
index 91406f96..9b2324ae 100644
--- a/docs/source/siteadmin/deploying.rst
+++ b/docs/source/siteadmin/deploying.rst
@@ -282,6 +282,10 @@ this ``nginx.conf`` file should be modeled on the following::
# Change this to update the upload size limit for your users
client_max_body_size 8m;
+ # prevent attacks (someone uploading a .txt file that the browser
+ # interprets as an HTML file, etc.)
+ add_header X-Content-Type-Options nosniff;
+
server_name mediagoblin.example.org www.mediagoblin.example.org;
access_log /var/log/nginx/mediagoblin.example.access.log;
error_log /var/log/nginx/mediagoblin.example.error.log;
diff --git a/docs/source/siteadmin/media-types.rst b/docs/source/siteadmin/media-types.rst
index 8fbce5e4..23d3f3b9 100644
--- a/docs/source/siteadmin/media-types.rst
+++ b/docs/source/siteadmin/media-types.rst
@@ -71,16 +71,24 @@ Video
To enable video, first install gstreamer and the python-gstreamer
bindings (as well as whatever gstremaer extensions you want,
-good/bad/ugly). On Debianoid systems::
+good/bad/ugly). On Debianoid systems
- sudo apt-get install python-gst0.10 gstreamer0.10-plugins-{base,bad,good,ugly} \
+.. code-block:: bash
+
+ sudo apt-get install python-gst0.10 \
+ gstreamer0.10-plugins-base \
+ gstreamer0.10-plugins-bad \
+ gstreamer0.10-plugins-good \
+ gstreamer0.10-plugins-ugly \
gstreamer0.10-ffmpeg
Add ``mediagoblin.media_types.video`` to the ``media_types`` list in your
``mediagoblin_local.ini`` and restart MediaGoblin.
-Run::
+Run
+
+.. code-block:: bash
./bin/gmg dbupdate
@@ -108,7 +116,9 @@ To install these on Debianoid systems, run::
The ``scikits.audiolab`` package you will install in the next step depends on the
``libsndfile1-dev`` package, so we should install it.
-On Debianoid systems, run::
+On Debianoid systems, run
+
+.. code-block:: bash
sudo apt-get install libsndfile1-dev
@@ -126,7 +136,9 @@ Then install ``scikits.audiolab`` for the spectrograms::
Add ``mediagoblin.media_types.audio`` to the ``media_types`` list in your
``mediagoblin_local.ini`` and restart MediaGoblin.
-Run::
+Run
+
+.. code-block:: bash
./bin/gmg dbupdate
@@ -138,7 +150,9 @@ Ascii art
To enable ascii art support, first install the
`chardet <http://pypi.python.org/pypi/chardet>`_
-library, which is necessary for creating thumbnails of ascii art::
+library, which is necessary for creating thumbnails of ascii art
+
+.. code-block:: bash
./bin/easy_install chardet
@@ -152,7 +166,9 @@ the list would look like this::
media_types = mediagoblin.media_types.image, mediagoblin.media_types.ascii
-Run::
+Run
+
+.. code-block:: bash
./bin/gmg dbupdate
@@ -171,7 +187,9 @@ is surely not to work prior to Blender 2.5X).
Add ``mediagoblin.media_types.stl`` to the ``media_types`` list in your
``mediagoblin_local.ini`` and restart MediaGoblin.
-Run::
+Run
+
+.. code-block:: bash
./bin/gmg dbupdate
diff --git a/docs/source/siteadmin/production-deployments.rst b/docs/source/siteadmin/production-deployments.rst
index 356fab7f..1a32d95e 100644
--- a/docs/source/siteadmin/production-deployments.rst
+++ b/docs/source/siteadmin/production-deployments.rst
@@ -52,7 +52,7 @@ as the basis for your script: ::
Separate Celery
---------------
-While the ``./lazyserer.sh`` configuration provides an efficient way to
+While the ``./lazyserver.sh`` configuration provides an efficient way to
start using a MediaGoblin instance, it is not suitable for production
deployments for several reasons:
@@ -77,6 +77,17 @@ Modify your existing MediaGoblin and application init scripts, if
necessary, to prevent them from starting their own ``celeryd``
processes.
+.. _sentry:
+
+Set up sentry to monitor exceptions
+-----------------------------------
+
+We have a plugin for `raven`_ integration, see the ":doc:`/plugindocs/raven`"
+documentation.
+
+.. _`raven`: http://raven.readthedocs.org
+
+
.. _init-script:
Use an Init Script
diff --git a/docs/source/siteadmin/relnotes.rst b/docs/source/siteadmin/relnotes.rst
index 7d480d90..6962dc5a 100644
--- a/docs/source/siteadmin/relnotes.rst
+++ b/docs/source/siteadmin/relnotes.rst
@@ -19,17 +19,78 @@ This chapter has important information for releases in it.
If you're upgrading from a previous release, please read it
carefully, or at least skim over it.
-WIP
+0.3.3
=====
+**Do this to upgrade**
+
+1. Make sure to run ``bin/gmg dbupdate`` after upgrading.
+2. OpenStreetMap is now a plugin, so if you want to use it, add the
+ following to your config file:
+
+ .. code-block:: ini
+
+ [plugins]
+ [[mediagoblin.plugins.geolocation]]
+
+If you have your own theme, you may need to make some adjustments to
+it as some theme related things may have changed in this release. If
+you run into problems, don't hesitate to
+`contact us <http://mediagoblin.org/pages/join.html>`_
+(IRC is often best).
+
**New features**
-**Other changed**
+* New dropdown menu for accessing various features.
+
+* Significantly improved URL generation. Now mediagoblin won't give
+ up on making a slug if it looks like there will be a duplicate;
+ it'll try extra hard to generate a meaningful one instead.
+
+ Similarly, linking to an id no longer can possibly conflict with
+ linking to a slug; /u/username/m/id:35/ is the kind of reference we
+ now use to linking to entries with ids. However, old links with
+ entries that linked to ids should work just fine with our migration.
+ The only urls that might break in this release are ones using colons
+ or equal signs.
+
+* New template hooks for plugin authoring.
+
+* As a demonstration of new template hooks for plugin authoring,
+ openstreetmap support now moved to a plugin!
+
+* Method to add media to collections switched from icon of paperclip
+ to button with "add to collection" text.
+
+* Bug where videos often failed to produce a proper thumbnail fixed!
+
+* Copying around files in MediaGoblin now much more efficient, doesn't
+ waste gobs of memory.
+
+* Video transcoding now optional for videos that meet certain
+ criteria. By default, MediaGoblin will not transcode webm videos
+ that are smaller in resolution than the MediaGoblin defaults, and
+ MediaGoblin can also be configured to allow theora files to not be
+ transcoded as well.
+
+* Per-user license preference option; always want your uploads to be
+ BY-SA and tired of changing that field? You can now set your
+ license preference in your user settings.
+
+* Video player now responsive; better for mobile!
+
+* You can now delete your account from the user preferences page if
+ you so wish.
+
+**Other changes**
* Plugin writers: Internal restructuring led to mediagoblin.db.sql* be
mediagoblin.db.* starting from 0.3.3
-* Dependency list has been reduced not requireing the "webob" package anymore.
+* Dependency list has been reduced not requiring the "webob" package anymore.
+
+* And many small fixes/improvements, too numerous to list!
+
0.3.2
=====