1 .. MediaGoblin Documentation
3 Written in 2012 by MediaGoblin contributors
5 To the extent possible under law, the author(s) have dedicated all
6 copyright and related and neighboring rights to this software to
7 the public domain worldwide. This software is distributed without
10 You should have received a copy of the CC0 Public Domain
11 Dedication along with this software. If not, see
12 <http://creativecommons.org/publicdomain/zero/1.0/>.
20 This chapter has important information for releases in it.
21 If you're upgrading from a previous release, please read it
22 carefully, or at least skim over it.
27 **Do this to upgrade**
28 1. Make sure to run ``bin/gmg dbupdate`` after upgrading.
29 2. See "For Theme authors" if you have a custom theme.
30 3. Note that ``./bin/gmg theme assetlink`` is now just
31 ``./bin/gmg assetlink`` and covers both plugins and assets.
32 Keep on reading to hear more about new plugin features.
33 4. If you want to take advantage of new plugins that have statically
34 served assets, you are going to need to add the new "plugin_static"
35 section to your nginx config. Basically the following for nginx::
37 # Plugin static files (usually symlinked in)
38 location /plugin_static/ {
39 alias /srv/mediagoblin.example.org/mediagoblin/user_dev/plugin_static/;
44 If you have your own theme or you have any "user modified templates",
45 please note the following:
47 * mediagoblin/bits/ files above-content.html, body-end.html,
48 body-start.html now are renamed... they have underscores instead of
49 dashes in the filenames now :)
50 * There's a new file: ``mediagoblin/bits/frontpage_welcome.html``.
51 You can easily customize this to give a welcome page appropriate to
60 **Do this to upgrade**
62 1. Make sure to run ``bin/gmg dbupdate`` after upgrading.
63 2. OpenStreetMap is now a plugin, so if you want to use it, add the
64 following to your config file:
69 [[mediagoblin.plugins.geolocation]]
71 If you have your own theme, you may need to make some adjustments to
72 it as some theme related things may have changed in this release. If
73 you run into problems, don't hesitate to
74 `contact us <http://mediagoblin.org/pages/join.html>`_
79 * New dropdown menu for accessing various features.
81 * Significantly improved URL generation. Now mediagoblin won't give
82 up on making a slug if it looks like there will be a duplicate;
83 it'll try extra hard to generate a meaningful one instead.
85 Similarly, linking to an id no longer can possibly conflict with
86 linking to a slug; /u/username/m/id:35/ is the kind of reference we
87 now use to linking to entries with ids. However, old links with
88 entries that linked to ids should work just fine with our migration.
89 The only urls that might break in this release are ones using colons
92 * New template hooks for plugin authoring.
94 * As a demonstration of new template hooks for plugin authoring,
95 openstreetmap support now moved to a plugin!
97 * Method to add media to collections switched from icon of paperclip
98 to button with "add to collection" text.
100 * Bug where videos often failed to produce a proper thumbnail fixed!
102 * Copying around files in MediaGoblin now much more efficient, doesn't
103 waste gobs of memory.
105 * Video transcoding now optional for videos that meet certain
106 criteria. By default, MediaGoblin will not transcode webm videos
107 that are smaller in resolution than the MediaGoblin defaults, and
108 MediaGoblin can also be configured to allow theora files to not be
111 * Per-user license preference option; always want your uploads to be
112 BY-SA and tired of changing that field? You can now set your
113 license preference in your user settings.
115 * Video player now responsive; better for mobile!
117 * You can now delete your account from the user preferences page if
122 * Plugin writers: Internal restructuring led to mediagoblin.db.sql* be
123 mediagoblin.db.* starting from 0.3.3
125 * Dependency list has been reduced not requiring the "webob" package anymore.
127 * And many small fixes/improvements, too numerous to list!
133 This will be the last release that is capable of converting from an earlier
134 MongoDB-based MediaGoblin instance to the newer SQL-based system.
136 **Do this to upgrade**
138 # directory of your mediagoblin install
139 cd /srv/mediagoblin.example.org
141 # copy source for this release
143 git checkout tags/v0.3.2
145 # perform any needed database updates
148 # restart your servers however you do that, e.g.,
149 sudo service mediagoblin-paster restart
150 sudo service mediagoblin-celeryd restart
155 * **3d model support!**
157 You can now upload STL and OBJ files and display them in
158 MediaGoblin. Requires a recent-ish Blender; for details see:
159 :ref:`deploying-chapter`
161 * **trim_whitespace**
163 We bundle the optional plugin trim_whitespace which reduces the size
164 of the delivered html output by reducing redundant whitespace.
166 See :ref:`core-plugin-section` for plugin documentation
170 It isn't well documented yet but we do have an API. There is an
171 `android application in progress <https://gitorious.org/mediagoblin/mediagoblin-android>`_
172 which makes use of it, and there are some demo applications between
173 `automgtic <https://github.com/jwandborg/automgtic>`_, an
174 automatic media uploader for your desktop
175 and `OMGMG <https://github.com/jwandborg/omgmg>`_, an example of
176 a web application hooking up to the API.
178 This is a plugin, so you have to enable it in your mediagoblin
179 config file by adding a section under [plugins] like::
182 [[mediagoblin.plugins.api]]
184 Note that the API works but is not nailed down... the way it is
185 called may change in future releases.
187 * **OAuth login support**
189 For applications that use OAuth to connect to the API.
191 This is a plugin, so you have to enable it in your mediagoblin
192 config file by adding a section under [plugins] like::
195 [[mediagoblin.plugins.oauth]]
199 We now have user-curated collections support. These are arbitrary
200 galleries that are customizable by users. You can add media to
201 these by clicking on the paperclip icon when logged in and looking
204 * **OpenStreetMap licensing display improvements**
206 More accurate display of OSM licensing, and less disruptive: you
207 click to "expand" the display of said licensing.
209 Geolocation is also now on by default.
211 * **Miscelaneous visual improvements**
213 We've made a number of small visual improvements including newer and
214 nicer looking thumbnails and improved checkbox placement.
221 **Do this to upgrade**
223 1. Make sure to run ``bin/gmg dbuptdate`` after upgrading.
225 2. If you set up your server config with an older version of
226 mediagoblin and the mediagoblin docs, it's possible you don't
227 have the "theme static files" alias, so double check to make
228 sure that section is there if you are having problems.
234 * **theming support**
236 MediaGoblin now also includes theming support, which you can
237 read about in the section :ref:`theming-chapter`.
241 MediaGoblin has a flatpages plugin allowing you to add pages that
242 are aren't media-related like "About this site...", "Terms of
245 See :ref:`core-plugin-section` for plugin documentation
251 This release has one important change. You need to act when
252 upgrading from a previous version!
254 This release changes the database system from MongoDB to
255 SQL(alchemy). If you want to setup a fresh instance, just
256 follow the instructions in the deployment chapter. If on
257 the other hand you want to continue to use one instance,
260 To convert your data from MongoDB to SQL(alchemy), you need
261 to follow these steps:
263 1. Make sure your MongoDB is still running and has your
264 data, it's needed for the conversion.
266 2. Configure the ``sql_engine`` URI in the config to represent
267 your target database (see: :ref:`deploying-chapter`)
269 3. You need an empty database.
271 4. Then run the following command::
273 bin/gmg [-cf mediagoblin_config.ini] convert_mongo_to_sql
275 5. Start your server and investigate.