Commit | Line | Data |
---|---|---|
5be6425c E |
1 | .. MediaGoblin Documentation |
2 | ||
3 | Written in 2012 by MediaGoblin contributors | |
4 | ||
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 | |
8 | any warranty. | |
9 | ||
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/>. | |
13 | ||
b21220e9 CAW |
14 | .. _release-notes: |
15 | ||
5be6425c E |
16 | ============= |
17 | Release Notes | |
18 | ============= | |
19 | ||
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. | |
23 | ||
a35b7c7f CAW |
24 | .. note:: |
25 | ||
26 | ALWAYS do backups before upgrading, especially before | |
27 | running migrations! That way if something goes wrong, we can fix | |
28 | things! | |
29 | ||
30 | And be sure to shut down your current mediagoblin/celery processes | |
31 | before upgrading! | |
32 | ||
9fa1e602 CAW |
33 | .. note:: |
34 | ||
35 | The MediaGoblin repository used to be on gitorious.org, but since | |
36 | gitorious.org shut down, we had to move. We are presently on | |
37 | Savannah. You may need to update your git repository location:: | |
38 | ||
39 | git remote set-url origin git://git.savannah.gnu.org/mediagoblin.git | |
50c6dc2b | 40 | |
3ae23712 | 41 | |
9b9c04e6 CAW |
42 | 0.8.1 |
43 | ===== | |
44 | ||
45 | This release is a security and bugfix release. We recommend you upgrade as | |
46 | soon as possible. | |
47 | ||
48 | **Do this to upgrade** | |
49 | ||
50 | 0. If you haven't already, switch the git remote URL: | |
51 | ``git remote set-url origin git://git.savannah.gnu.org/mediagoblin.git`` | |
52 | 1. Update to the latest release. If checked out from git, run: | |
53 | ``git fetch && git checkout -q v0.8.1`` | |
54 | 2. Run | |
55 | ``./bootstrap.sh && ./configure && make`` | |
56 | 3. Also run | |
57 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
58 | ||
59 | (Please check intermediate release steps as well if not upgrading from | |
60 | 0.8.0) | |
61 | ||
62 | **Bugfixes/improvements:** | |
63 | ||
64 | Most importantly, there is an **important security fix**: | |
65 | ||
66 | Quoting here a portion of the | |
67 | `release blogpost <http://mediagoblin.org/news/mediagoblin-0.8.1-security-release.html>`_:: | |
68 | ||
69 | We have had a security problem in our OAuth implementation reported to | |
70 | us privately and have taken steps to address it. The security problem | |
ca3dd10e | 71 | affects all versions of GNU MediaGoblin since 0.5.0. I have created a patch |
9b9c04e6 CAW |
72 | for this and released a minor version 0.8.1. It's strongly advised |
73 | that everyone upgrade as soon as they can. | |
74 | ||
75 | In order to exploit the security issue, an attacker must have had | |
76 | access to a logged in session to your GNU MediaGoblin account. If you | |
77 | have kept your username and password secret, logging in only over | |
78 | HTTPS and you've not left yourself logged in on publicly accessible | |
79 | computers, you should be safe. However it's still advised all users | |
80 | take the following precautions, listed below. | |
81 | ||
82 | Users should check their authorized clients. Any client which looks | |
83 | unfamiliar to you, you should deauthorize. To check this: | |
84 | ||
85 | 1) Log in to the GNU MediaGoblin instance | |
86 | 2) Click the drop down arrow in the upper right | |
87 | 3) Click "Change account settings" | |
88 | 4) At the bottom click the "Deauthorize applications" link | |
89 | ||
90 | If you are unsure of any of these, click "Deauthorize". | |
91 | ||
92 | There are other bugfixes, but they are fairly minor. | |
93 | ||
94 | ||
a87db7f5 CAW |
95 | 0.8.0 |
96 | ===== | |
97 | ||
98 | This release has a number of changes related to the way we recommend | |
99 | building MediaGoblin; upgrade steps are below, but if you run into | |
100 | trouble, consider pinging the MediaGoblin list or IRC channel. | |
101 | ||
102 | **Do this to upgrade** | |
103 | ||
11199c31 CAW |
104 | 0. If you haven't already, switch the git remote URL: |
105 | ``git remote set-url origin git://git.savannah.gnu.org/mediagoblin.git`` | |
3169dde0 CAW |
106 | 1. If you don't have node.js installed, you'll need it for handling |
107 | MediaGoblin's static web dependencies. Install this via your | |
108 | distribution! (In the glorious future MediaGoblin will be simply | |
109 | packaged for your distribution so you won't have to worry about | |
110 | this!) | |
111 | 2. Update to the latest release. If checked out from git, run: | |
6adee95a | 112 | ``git fetch && git checkout -q v0.8.0`` |
3169dde0 | 113 | 3. Run |
a87db7f5 | 114 | ``./bootstrap.sh && ./configure && make`` |
3169dde0 | 115 | 4. Also run |
a87db7f5 CAW |
116 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` |
117 | ||
c2382bd4 CAW |
118 | Please note the important steps of 0 and 2, which have not appeared in |
119 | prior upgrade guides! | |
a87db7f5 CAW |
120 | |
121 | Additionally: | |
122 | ||
123 | - Are you using audio or video media types? In that case, you'll need | |
124 | to update your Gstreamer instance to 1.0. | |
125 | - The Pump API needs some data passed through to the WSGI application, | |
126 | so if you are using apache with mod_wsgi you should be sure to make | |
127 | sure to add "WSGIPassAuthorization On" to your config. (Using the | |
128 | default MediaGoblin documnetation and config, things should work | |
129 | as-is.) | |
130 | ||
131 | ||
132 | **Bugfixes/improvements:** | |
133 | ||
134 | - Preliminary / experimental support for Python 3! | |
135 | - Footer forced to the bottom of page | |
136 | - Massive improvements to Pump API support | |
137 | - Able to run on multiple existing Pump clients! Including Pumpa | |
138 | and Dianara! | |
139 | - much cleaner ./configure && make support; it's now the default | |
140 | - Clearer documentation on permissions and installation | |
141 | - Switched from Transifex, which had become proprietary, to an | |
142 | instance of Pootle hosted for GNU | |
143 | - Moved to Gstreamer 1.0! This also adds a new thumbnailer which | |
144 | gives much better results in | |
145 | - Removed terrible check-javascript-dependencies-into-your-application | |
146 | setup, now using Bower for dependency tracking | |
147 | - Put some scaffolding in place for Alembic, which will be used for | |
148 | future mitration work | |
149 | - Automatically create a fresh mediagoblin.ini from | |
150 | mediagoblin.ini.example | |
151 | - no more need for mediagoblin_local.ini (though it's still supported) | |
152 | - Fix lowercasing of username in auth steps | |
153 | - Slowly moving towards removing global state (a source of many bugs) | |
154 | ||
be1dfb99 CAW |
155 | 0.7.1 |
156 | ===== | |
157 | ||
158 | This is a purely bugfix release. Important changes happened since | |
159 | 0.7.0; if running MediaGoblin 0.7.0, an upgrade is highly recommended; | |
160 | see below. This release is especially useful if you have been running | |
161 | postgres and have been receiving seemingly random database transaction | |
162 | errors. | |
163 | ||
164 | **Do this to upgrade** | |
165 | ||
166 | 1. Update to the latest release. If checked out from git, run: | |
167 | ``git fetch && git checkout -q v0.7.1 && git submodule init && git submodule update`` | |
168 | 2. Make sure to run | |
169 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
170 | ||
171 | That's it, probably! If you run into problems, don't hesitate to | |
172 | `contact us <http://mediagoblin.org/pages/join.html>`_ | |
173 | (IRC is often best). | |
174 | ||
175 | **Bugfixes/improvements:** | |
176 | ||
177 | - The *MOST IMPORTANT* change in this release: | |
b95d06f6 | 178 | Disabling a couple of non-critical features that were causing |
be1dfb99 | 179 | database transaction issues. (These should be back by 0.8.0.) |
b95d06f6 CAW |
180 | |
181 | + Disabled the "checking if the database is up to date at | |
be1dfb99 | 182 | mediagoblin startup" feature |
b95d06f6 | 183 | + Disabled the garbage collection stuff by default for now |
be1dfb99 CAW |
184 | (You can set garbage_collection under the config mediagoblin |
185 | header to something other than 0 to turn it back on for now, but | |
186 | it's potentially risky for the moment.) | |
b95d06f6 | 187 | |
be1dfb99 CAW |
188 | - Some fixes to the 0.7.0 docs |
189 | - Fixed Sandy 70s speedboat navbar by updating git submodule | |
190 | - Added support for cr2 files in raw_image media type | |
191 | - Added a description to setup.py | |
192 | - Collection and CollectionItem objects now have nicer in-python representations | |
193 | - Fixed unicode error with raw image mediatype logging | |
194 | - Fixed #945 "Host metadata does not confirm to spec (/.well-known/meta-data)" | |
b95d06f6 CAW |
195 | |
196 | + Add XRD+XML formatting for /.well-known/host-meta | |
197 | + Add /.well-known/webfinger API to lookup user hrefs | |
198 | ||
be1dfb99 CAW |
199 | - deleteuser gmg subcommand now fails gracefully |
200 | - Removed a false download link from setup.py | |
201 | ||
3b56b277 | 202 | 0.7.0 |
2757e76c | 203 | ===== |
3b56b277 CAW |
204 | |
205 | **Do this to upgrade** | |
206 | ||
207 | 1. Update to the latest release. If checked out from git, run: | |
c7690151 | 208 | ``git fetch && git checkout -q v0.7.0 && git submodule init && git submodule update`` |
3b56b277 CAW |
209 | 2. Make sure to run |
210 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
211 | ||
fcee02a7 CAW |
212 | (NOTE: earlier versions of the 0.7.0 release instructions left out the |
213 | ``git submodule init`` step! If you did an upgrade earlier based on | |
214 | these instructions and your theme looks weirdly aligned, try running | |
215 | the following:) | |
216 | ||
217 | ``git submodule init && git submodule update`` | |
218 | ||
3b56b277 CAW |
219 | That's it, probably! If you run into problems, don't hesitate to |
220 | `contact us <http://mediagoblin.org/pages/join.html>`_ | |
221 | (IRC is often best). | |
222 | ||
223 | **New features:** | |
224 | ||
225 | - New mobile upload API making use of the | |
226 | `Pump API <https://github.com/e14n/pump.io/blob/master/API.md>`_ | |
227 | (which will be the foundation for MediaGoblin's federation) | |
228 | - New theme: Sandy 70s Speedboat! | |
229 | ||
230 | - Metadata features! We also now have a json-ld context. | |
231 | ||
232 | - Many improvements for archival institutions, including metadata | |
233 | support and featuring items on the homepage. With the (new!) | |
234 | archivalook plugin enabled, featuring media is possible. | |
235 | Additionally, metadata about the particular media item will show up | |
236 | in the sidebar. | |
237 | ||
238 | In the future these plugins may be separated, but for now they have | |
239 | come together as part of the same plugin. | |
240 | ||
241 | - There is a new gmg subcommand called batchaddmedia that allows for | |
242 | uploading many files at once. This is aimed to be useful for | |
243 | archival institutions and groups where there is an already existing | |
244 | and large set of available media that needs to be included. | |
245 | - Speaking of, the call to postgres in the makefile is fixed. | |
246 | - We have a new, generic media-page context hook that allows for | |
247 | adding context depending on the type of media. | |
248 | - Tired of video thumbnails breaking during processing all the time? | |
249 | Good news, everyone! Video thumbnail generation should not fail | |
250 | frequently anymore. (We think...) | |
251 | - You can now set default permissions for new users in the config. | |
252 | ||
253 | - bootstrap.sh / gnu configuration stuff still exists, but moves to be | |
254 | experimental-bootstrap.sh so as to not confuse newcomers. There are | |
255 | some problems currently with the autoconf stuff that we need to work | |
256 | out... we still have interest in supporting it, though help is | |
257 | welcome. | |
258 | ||
259 | - MediaGoblin now checks whether or not the database is up to date | |
260 | when starting. | |
261 | - Switched to `Skeleton <http://www.getskeleton.com/>`_ as a system for | |
262 | graphic design. | |
263 | - New gmg subcommands for administrators: | |
264 | - A "deletemedia" command | |
265 | - A "deleteuser" command | |
266 | - We now have a blogging media type... it's very experimental, | |
267 | however. Use with caution! | |
268 | - We have switched to exifread as an external library for reading EXIF | |
269 | data. It's basically the same thing as before, but packaged | |
270 | separately from MediaGoblin. | |
271 | - Many improvements to internationalization. Also (still rudimentary, | |
272 | but existant!) RTL language support! | |
273 | ||
274 | **Known issues:** | |
cb9f5570 | 275 | - The host-meta is now json by default; in the spec it should be xml by |
3b56b277 CAW |
276 | default. We have done this because of compatibility with the pump |
277 | API. We are checking with upstream to see if there is a way to | |
278 | resolve this discrepancy. | |
279 | ||
280 | ||
29166813 CAW |
281 | 0.6.1 |
282 | ===== | |
283 | ||
284 | This is a short, bugfix release. | |
285 | ||
286 | **Do this to upgrade** | |
287 | ||
288 | 1. Update to the latest release. If checked out from git, run: | |
289 | ``git fetch && git checkout -q v0.6.1`` | |
290 | 2. Make sure to run | |
291 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
292 | ||
293 | This release switches the default terms of service to be off by | |
294 | default and corrects some mistakes in the default terms of service. | |
295 | ||
296 | Turning the terms of service on is very easy, just set ``show_tos`` in | |
297 | the ``[mediagoblin]`` section of your config to ``true``. | |
298 | ||
299 | ||
2691bfe1 CAW |
300 | 0.6.0 |
301 | ===== | |
302 | ||
303 | **Do this to upgrade** | |
304 | ||
29166813 CAW |
305 | 1. Update to the latest release. If checked out from git, run: |
306 | ``git fetch && git checkout -q v0.6.0`` | |
307 | 2. Make sure to run | |
2691bfe1 | 308 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` |
2691bfe1 | 309 | |
29166813 | 310 | That's it, probably! If you run into problems, don't hesitate to |
2691bfe1 CAW |
311 | `contact us <http://mediagoblin.org/pages/join.html>`_ |
312 | (IRC is often best). | |
313 | ||
314 | This tool has a lot of new tools for administrators, hence the | |
315 | nickname "Lore of the Admin"! | |
316 | ||
317 | **New features:** | |
318 | ||
319 | - New tools to control how much users can upload, both as a general | |
320 | user limit, or per file. | |
321 | ||
322 | You can set this with the following options in your mediagoblin | |
323 | config file: `upload_limit` and `max_file_size`. Both are integers | |
324 | in megabytes. | |
325 | ||
326 | There is an option to control how much each individual user can | |
327 | upload too, though an interface for this is not yet exposed. See | |
328 | the "uploaded" field on the core__users table. | |
329 | ||
330 | - MediaGoblin now contains an authentication plugin for ldap! You | |
331 | can turn on the mediagoblin.plugins.ldap plugin to make use of | |
332 | this. See the documentation: :ref:`ldap-plugin` | |
333 | ||
334 | - There's a new command line upload tool! At long last! See | |
335 | `./bin/gmg addmedia --help` for info on how to use this. | |
336 | ||
337 | - There's now a terms of service document included in MediaGoblin. | |
338 | It's turned on by default, but you can turn it off if you prefer, | |
339 | just set the configuration option of `show_tos` in the [mediagoblin] | |
340 | section of your config to false. | |
341 | ||
342 | Alternately, you can override the template for the terms of service | |
343 | document to set up your own. | |
344 | ||
345 | - We have a lot of new administrative tooling features! | |
346 | - There's a built-in privileges/permissions system now. | |
347 | Administrators are given access to modifying these parameters | |
348 | from a user administration panel. | |
349 | - Users can submit reports about other problematic users or media | |
350 | and administrators are given tools to resolve said reports and | |
351 | ban/unban users if needed. | |
352 | ||
353 | - New version of video.js is included with MediaGoblin. Slight | |
354 | amount of skinning to match the MediaGoblin look, otherwise also | |
355 | uses the new default skin. | |
356 | ||
357 | Developer-oriented changes: | |
358 | ||
359 | - New developer tool for quickly setting up a development environment | |
360 | in `devtools/make_example_database.sh`. Requires doing a checkout | |
361 | of our other tool `mg_dev_environments <https://gitorious.org/mediagoblin/mg-dev-environments/>`_ | |
362 | (probably in the parent Directory) though! | |
363 | - A "foundations" framework has entered into the codebase. | |
364 | This is mostly just relevant to coders, but it does mean that it's | |
365 | much easier to add database structures that need some entries filled | |
366 | automatically by default. | |
367 | - Refactoring to the authentication code and the reprocessing code | |
368 | ||
a66fbf97 | 369 | |
d4edbfd5 CAW |
370 | 0.5.1 |
371 | ===== | |
372 | ||
373 | v0.5.1 is a bugfix release... the steps are the same as for 0.5.1. | |
374 | ||
375 | **Bugfixes:** | |
376 | ||
377 | - python 2.6 compatibility restored | |
378 | - Fixed last release's release notes ;) | |
379 | ||
380 | ||
a126ef4d RE |
381 | 0.5.0 |
382 | ===== | |
383 | ||
abff297c CAW |
384 | **NOTE:** If using the API is important to you, we're in a state of |
385 | ransition towards a new API via the Pump API. As such, though the old | |
386 | API still probably works, some changes have happened to the way oauth | |
387 | works to make it more Pump-compatible. If you're heavily using | |
388 | clients using the old API, you may wish to hold off on upgrading for | |
389 | now. Otherwise, jump in and have fun! :) | |
390 | ||
a126ef4d RE |
391 | **Do this to upgrade** |
392 | ||
393 | 1. Make sure to run | |
394 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
395 | after upgrading. | |
396 | ||
397 | .. mention something about new, experimental configure && make support | |
398 | ||
399 | 2. Note that a couple of things have changed with ``mediagoblin.ini``. First | |
400 | we have a new Authentication System. You need to add | |
401 | ``[[mediagoblin.plugins.basic_auth]]`` under the ``[plugins]`` section of | |
402 | your config file. Second, media types are now plugins, so you need to add | |
403 | each media type under the ``[plugins]`` section of your config file. | |
404 | ||
405 | ||
406 | 3. We have made a script to transition your ``mediagoblin_local.ini`` file for | |
a0a31ddf | 407 | you. This script can be found at: |
a126ef4d | 408 | |
a0a31ddf | 409 | http://mediagoblin.org/download/0.5.0_config_converter.py |
a126ef4d RE |
410 | |
411 | If you run into problems, don't hesitate to | |
412 | `contact us <http://mediagoblin.org/pages/join.html>`_ | |
413 | (IRC is often best). | |
414 | ||
415 | **New features** | |
416 | ||
417 | * As mentioned above, we now have a plugable Authentication system. You can | |
418 | use any combination of the multiple authentication systems | |
419 | (:ref:`basic_auth-chapter`, :ref:`persona-chapter`, :ref:`openid-chapter`) | |
420 | or write your own! | |
421 | * Media types are now plugins! This means that new media types will | |
422 | be able to do new, fancy things they couldn't in the future. | |
423 | * We now have notification support! This allows you to subscribe to media | |
424 | comments and to be notified when someone comments on your media. | |
425 | * New reprocessing framework! You can now reprocess failed uploads, and | |
426 | send already processed media back to processing to re-transcode or resize | |
427 | media. | |
428 | * Comment preview! | |
429 | * Users now have the ability to change their email associated with their | |
430 | account. | |
431 | * New oauth code as we move closer to federation support. | |
432 | * Experimental pyconfigure support for GNU-style configue and makefile | |
433 | deployment. | |
434 | * Database foundations! You can now pre-populate the database models. | |
435 | * Way faster unit test run-time via in-memory database. | |
436 | * All mongokit stuff has been cleaned up. | |
437 | * Fixes for non-ascii filenames. | |
438 | * The option to stay logged in. | |
439 | * Mediagoblin has been upgraded to use the latest `celery <http://celeryproject.org/>`_ | |
440 | version. | |
441 | * You can now add jinja2 extensions to your config file to use in custom | |
442 | templates. | |
443 | * Fixed video permission issues. | |
444 | * Mediagoblin docs are now hosted with multiple versions. | |
445 | * We removed redundent tooltips from the STL media display. | |
446 | * We are now using itsdangerous for verification tokens. | |
447 | ||
448 | ||
bed9ad06 CAW |
449 | 0.4.1 |
450 | ===== | |
451 | ||
452 | This is a bugfix release for 0.4.0. This only implements one major | |
453 | fix in the newly released document support which prevented the | |
454 | "conversion via libreoffice" feature. | |
455 | ||
456 | If you were running 0.4.0 you can upgrade to v0.4.1 via a simple | |
457 | switch and restarting mediagoblin/celery with no other actions. | |
458 | ||
d3b1fd2e CAW |
459 | Otherwise, follow 0.4.0 instructions. |
460 | ||
bed9ad06 | 461 | |
8ca51d32 CAW |
462 | 0.4.0 |
463 | ===== | |
464 | ||
24ede044 | 465 | **Do this to upgrade** |
a66fbf97 | 466 | |
5622cc44 CAW |
467 | 1. Make sure to run |
468 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
469 | after upgrading. | |
24ede044 CAW |
470 | 2. See "For Theme authors" if you have a custom theme. |
471 | 3. Note that ``./bin/gmg theme assetlink`` is now just | |
472 | ``./bin/gmg assetlink`` and covers both plugins and assets. | |
473 | Keep on reading to hear more about new plugin features. | |
474 | 4. If you want to take advantage of new plugins that have statically | |
475 | served assets, you are going to need to add the new "plugin_static" | |
476 | section to your nginx config. Basically the following for nginx:: | |
477 | ||
478 | # Plugin static files (usually symlinked in) | |
479 | location /plugin_static/ { | |
480 | alias /srv/mediagoblin.example.org/mediagoblin/user_dev/plugin_static/; | |
481 | } | |
482 | ||
51702d5b CAW |
483 | Similarly, if you've got a modified paste config, you may want to |
484 | borrow the app:plugin_static section from the default paste.ini | |
485 | file. | |
486 | 5. We now use itsdangerous for sessions; if you had any references to | |
487 | beaker in your paste config you can remove them. Again, see the | |
488 | default paste.ini config | |
d3b1fd2e | 489 | 6. We also now use git submodules. Please do: |
64ad0bee | 490 | ``git submodule init && git submodule update`` |
d3b1fd2e | 491 | You will need to do this to use the new PDF support. |
51702d5b | 492 | |
8ca51d32 CAW |
493 | **For theme authors** |
494 | ||
495 | If you have your own theme or you have any "user modified templates", | |
496 | please note the following: | |
497 | ||
498 | * mediagoblin/bits/ files above-content.html, body-end.html, | |
499 | body-start.html now are renamed... they have underscores instead of | |
500 | dashes in the filenames now :) | |
501 | * There's a new file: ``mediagoblin/bits/frontpage_welcome.html``. | |
502 | You can easily customize this to give a welcome page appropriate to | |
503 | your site. | |
504 | ||
51702d5b | 505 | |
24ede044 | 506 | **New features** |
b33feb18 | 507 | |
51702d5b CAW |
508 | * PDF media type! |
509 | * Improved plugin system. More flexible, better documented, with a | |
510 | new plugin authoring section of the docs. | |
511 | * itsdangerous based sessions. No more beaker! | |
512 | * New, experimental Piwigo-based API. This means you should be able | |
513 | to use MediaGoblin with something like Shotwell. (Again, a word of | |
514 | caution: this is *very experimental*!) | |
515 | * Human readable timestamps, and the option to display the original | |
516 | date of an image when available (available as the | |
517 | "original_date_visible" variable) | |
518 | * Moved unit testing system from nosetests to py.test so we can better | |
519 | handle issues with sqlalchemy exploding with different database | |
520 | configurations. Long story :) | |
521 | * You can now disable the ability to post comments. | |
522 | * Tags now can be up to length 255 characters by default. | |
24ede044 | 523 | |
8ca51d32 | 524 | |
6e2dcbff | 525 | 0.3.3 |
8d19cb24 SS |
526 | ===== |
527 | ||
6e2dcbff CAW |
528 | **Do this to upgrade** |
529 | ||
530 | 1. Make sure to run ``bin/gmg dbupdate`` after upgrading. | |
531 | 2. OpenStreetMap is now a plugin, so if you want to use it, add the | |
997ef976 | 532 | following to your config file: |
6e2dcbff | 533 | |
997ef976 E |
534 | .. code-block:: ini |
535 | ||
5058cd51 SC |
536 | [plugins] |
537 | [[mediagoblin.plugins.geolocation]] | |
6e2dcbff CAW |
538 | |
539 | If you have your own theme, you may need to make some adjustments to | |
a28c6c4c CAW |
540 | it as some theme related things may have changed in this release. If |
541 | you run into problems, don't hesitate to | |
542 | `contact us <http://mediagoblin.org/pages/join.html>`_ | |
543 | (IRC is often best). | |
6e2dcbff | 544 | |
8d19cb24 SS |
545 | **New features** |
546 | ||
6e2dcbff CAW |
547 | * New dropdown menu for accessing various features. |
548 | ||
549 | * Significantly improved URL generation. Now mediagoblin won't give | |
550 | up on making a slug if it looks like there will be a duplicate; | |
551 | it'll try extra hard to generate a meaningful one instead. | |
552 | ||
553 | Similarly, linking to an id no longer can possibly conflict with | |
554 | linking to a slug; /u/username/m/id:35/ is the kind of reference we | |
555 | now use to linking to entries with ids. However, old links with | |
556 | entries that linked to ids should work just fine with our migration. | |
557 | The only urls that might break in this release are ones using colons | |
558 | or equal signs. | |
559 | ||
560 | * New template hooks for plugin authoring. | |
561 | ||
562 | * As a demonstration of new template hooks for plugin authoring, | |
563 | openstreetmap support now moved to a plugin! | |
564 | ||
a28c6c4c CAW |
565 | * Method to add media to collections switched from icon of paperclip |
566 | to button with "add to collection" text. | |
6e2dcbff CAW |
567 | |
568 | * Bug where videos often failed to produce a proper thumbnail fixed! | |
569 | ||
fda5ea7a | 570 | * Copying around files in MediaGoblin now much more efficient, doesn't |
6e2dcbff CAW |
571 | waste gobs of memory. |
572 | ||
573 | * Video transcoding now optional for videos that meet certain | |
fda5ea7a CAW |
574 | criteria. By default, MediaGoblin will not transcode webm videos |
575 | that are smaller in resolution than the MediaGoblin defaults, and | |
576 | MediaGoblin can also be configured to allow theora files to not be | |
a28c6c4c | 577 | transcoded as well. |
6e2dcbff CAW |
578 | |
579 | * Per-user license preference option; always want your uploads to be | |
580 | BY-SA and tired of changing that field? You can now set your | |
581 | license preference in your user settings. | |
582 | ||
583 | * Video player now responsive; better for mobile! | |
584 | ||
70177c1f CAW |
585 | * You can now delete your account from the user preferences page if |
586 | you so wish. | |
587 | ||
a28c6c4c | 588 | **Other changes** |
8d19cb24 | 589 | |
b0c8328e SS |
590 | * Plugin writers: Internal restructuring led to mediagoblin.db.sql* be |
591 | mediagoblin.db.* starting from 0.3.3 | |
592 | ||
6e2dcbff CAW |
593 | * Dependency list has been reduced not requiring the "webob" package anymore. |
594 | ||
595 | * And many small fixes/improvements, too numerous to list! | |
596 | ||
8d19cb24 | 597 | |
cacb6fea SS |
598 | 0.3.2 |
599 | ===== | |
600 | ||
601 | This will be the last release that is capable of converting from an earlier | |
602 | MongoDB-based MediaGoblin instance to the newer SQL-based system. | |
603 | ||
1f01df1d CAW |
604 | **Do this to upgrade** |
605 | ||
42ce372e ML |
606 | # directory of your mediagoblin install |
607 | cd /srv/mediagoblin.example.org | |
608 | ||
609 | # copy source for this release | |
610 | git fetch | |
611 | git checkout tags/v0.3.2 | |
612 | ||
613 | # perform any needed database updates | |
614 | bin/gmg dbupdate | |
615 | ||
616 | # restart your servers however you do that, e.g., | |
617 | sudo service mediagoblin-paster restart | |
618 | sudo service mediagoblin-celeryd restart | |
1f01df1d | 619 | |
cacb6fea SS |
620 | |
621 | **New features** | |
622 | ||
1f01df1d CAW |
623 | * **3d model support!** |
624 | ||
625 | You can now upload STL and OBJ files and display them in | |
626 | MediaGoblin. Requires a recent-ish Blender; for details see: | |
627 | :ref:`deploying-chapter` | |
cacb6fea SS |
628 | |
629 | * **trim_whitespace** | |
630 | ||
631 | We bundle the optional plugin trim_whitespace which reduces the size | |
632 | of the delivered html output by reducing redundant whitespace. | |
633 | ||
634 | See :ref:`core-plugin-section` for plugin documentation | |
635 | ||
1f01df1d CAW |
636 | * **A new API!** |
637 | ||
638 | It isn't well documented yet but we do have an API. There is an | |
639 | `android application in progress <https://gitorious.org/mediagoblin/mediagoblin-android>`_ | |
640 | which makes use of it, and there are some demo applications between | |
641 | `automgtic <https://github.com/jwandborg/automgtic>`_, an | |
642 | automatic media uploader for your desktop | |
643 | and `OMGMG <https://github.com/jwandborg/omgmg>`_, an example of | |
644 | a web application hooking up to the API. | |
645 | ||
646 | This is a plugin, so you have to enable it in your mediagoblin | |
647 | config file by adding a section under [plugins] like:: | |
648 | ||
649 | [plugins] | |
650 | [[mediagoblin.plugins.api]] | |
651 | ||
652 | Note that the API works but is not nailed down... the way it is | |
653 | called may change in future releases. | |
654 | ||
655 | * **OAuth login support** | |
656 | ||
657 | For applications that use OAuth to connect to the API. | |
658 | ||
659 | This is a plugin, so you have to enable it in your mediagoblin | |
660 | config file by adding a section under [plugins] like:: | |
661 | ||
662 | [plugins] | |
663 | [[mediagoblin.plugins.oauth]] | |
664 | ||
665 | * **Collections** | |
666 | ||
667 | We now have user-curated collections support. These are arbitrary | |
668 | galleries that are customizable by users. You can add media to | |
669 | these by clicking on the paperclip icon when logged in and looking | |
670 | at a media entry. | |
671 | ||
672 | * **OpenStreetMap licensing display improvements** | |
673 | ||
674 | More accurate display of OSM licensing, and less disruptive: you | |
675 | click to "expand" the display of said licensing. | |
676 | ||
677 | Geolocation is also now on by default. | |
678 | ||
679 | * **Miscelaneous visual improvements** | |
680 | ||
681 | We've made a number of small visual improvements including newer and | |
682 | nicer looking thumbnails and improved checkbox placement. | |
683 | ||
684 | ||
5be6425c | 685 | |
3a438f5e WKG |
686 | 0.3.1 |
687 | ===== | |
688 | ||
9e579cde WKG |
689 | **Do this to upgrade** |
690 | ||
691 | 1. Make sure to run ``bin/gmg dbuptdate`` after upgrading. | |
692 | ||
693 | 2. If you set up your server config with an older version of | |
694 | mediagoblin and the mediagoblin docs, it's possible you don't | |
695 | have the "theme static files" alias, so double check to make | |
696 | sure that section is there if you are having problems. | |
697 | ||
698 | ||
699 | ||
700 | **New features** | |
701 | ||
702 | * **theming support** | |
703 | ||
704 | MediaGoblin now also includes theming support, which you can | |
705 | read about in the section :ref:`theming-chapter`. | |
706 | ||
707 | * **flatpages** | |
708 | ||
709 | MediaGoblin has a flatpages plugin allowing you to add pages that | |
710 | are aren't media-related like "About this site...", "Terms of | |
711 | service...", etc. | |
712 | ||
713 | See :ref:`core-plugin-section` for plugin documentation | |
3a438f5e WKG |
714 | |
715 | ||
6e930791 CAW |
716 | 0.3.0 |
717 | ===== | |
5be6425c E |
718 | |
719 | This release has one important change. You need to act when | |
720 | upgrading from a previous version! | |
721 | ||
722 | This release changes the database system from MongoDB to | |
723 | SQL(alchemy). If you want to setup a fresh instance, just | |
724 | follow the instructions in the deployment chapter. If on | |
725 | the other hand you want to continue to use one instance, | |
726 | read on. | |
727 | ||
dce37922 | 728 | To convert your data from MongoDB to SQL(alchemy), you need |
5be6425c E |
729 | to follow these steps: |
730 | ||
731 | 1. Make sure your MongoDB is still running and has your | |
732 | data, it's needed for the conversion. | |
733 | ||
abe74178 WKG |
734 | 2. Configure the ``sql_engine`` URI in the config to represent |
735 | your target database (see: :ref:`deploying-chapter`) | |
5be6425c E |
736 | |
737 | 3. You need an empty database. | |
738 | ||
739 | 4. Then run the following command:: | |
740 | ||
abe74178 | 741 | bin/gmg [-cf mediagoblin_config.ini] convert_mongo_to_sql |
5be6425c E |
742 | |
743 | 5. Start your server and investigate. | |
744 | ||
745 | 6. That's it. |