Committing extracted and compiled translations
[mediagoblin.git] / docs / source / siteadmin / relnotes.rst
CommitLineData
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=============
17Release Notes
18=============
19
20This chapter has important information for releases in it.
21If you're upgrading from a previous release, please read it
22carefully, or at least skim over it.
23
3b56b277
CAW
240.7.0
25====
26
27**Do this to upgrade**
28
291. Update to the latest release. If checked out from git, run:
c7690151 30 ``git fetch && git checkout -q v0.7.0 && git submodule init && git submodule update``
3b56b277
CAW
312. Make sure to run
32 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
33
fcee02a7
CAW
34(NOTE: earlier versions of the 0.7.0 release instructions left out the
35``git submodule init`` step! If you did an upgrade earlier based on
36these instructions and your theme looks weirdly aligned, try running
37the following:)
38
39 ``git submodule init && git submodule update``
40
3b56b277
CAW
41That's it, probably! If you run into problems, don't hesitate to
42`contact us <http://mediagoblin.org/pages/join.html>`_
43(IRC is often best).
44
45**New features:**
46
47- New mobile upload API making use of the
48 `Pump API <https://github.com/e14n/pump.io/blob/master/API.md>`_
49 (which will be the foundation for MediaGoblin's federation)
50- New theme: Sandy 70s Speedboat!
51
52- Metadata features! We also now have a json-ld context.
53
54- Many improvements for archival institutions, including metadata
55 support and featuring items on the homepage. With the (new!)
56 archivalook plugin enabled, featuring media is possible.
57 Additionally, metadata about the particular media item will show up
58 in the sidebar.
59
60 In the future these plugins may be separated, but for now they have
61 come together as part of the same plugin.
62
63- There is a new gmg subcommand called batchaddmedia that allows for
64 uploading many files at once. This is aimed to be useful for
65 archival institutions and groups where there is an already existing
66 and large set of available media that needs to be included.
67- Speaking of, the call to postgres in the makefile is fixed.
68- We have a new, generic media-page context hook that allows for
69 adding context depending on the type of media.
70- Tired of video thumbnails breaking during processing all the time?
71 Good news, everyone! Video thumbnail generation should not fail
72 frequently anymore. (We think...)
73- You can now set default permissions for new users in the config.
74
75- bootstrap.sh / gnu configuration stuff still exists, but moves to be
76 experimental-bootstrap.sh so as to not confuse newcomers. There are
77 some problems currently with the autoconf stuff that we need to work
78 out... we still have interest in supporting it, though help is
79 welcome.
80
81- MediaGoblin now checks whether or not the database is up to date
82 when starting.
83- Switched to `Skeleton <http://www.getskeleton.com/>`_ as a system for
84 graphic design.
85- New gmg subcommands for administrators:
86 - A "deletemedia" command
87 - A "deleteuser" command
88- We now have a blogging media type... it's very experimental,
89 however. Use with caution!
90- We have switched to exifread as an external library for reading EXIF
91 data. It's basically the same thing as before, but packaged
92 separately from MediaGoblin.
93- Many improvements to internationalization. Also (still rudimentary,
94 but existant!) RTL language support!
95
96**Known issues:**
cb9f5570 97 - The host-meta is now json by default; in the spec it should be xml by
3b56b277
CAW
98 default. We have done this because of compatibility with the pump
99 API. We are checking with upstream to see if there is a way to
100 resolve this discrepancy.
101
102
29166813
CAW
1030.6.1
104=====
105
106This is a short, bugfix release.
107
108**Do this to upgrade**
109
1101. Update to the latest release. If checked out from git, run:
111 ``git fetch && git checkout -q v0.6.1``
1122. Make sure to run
113 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
114
115This release switches the default terms of service to be off by
116default and corrects some mistakes in the default terms of service.
117
118Turning the terms of service on is very easy, just set ``show_tos`` in
119the ``[mediagoblin]`` section of your config to ``true``.
120
121
2691bfe1
CAW
1220.6.0
123=====
124
125**Do this to upgrade**
126
29166813
CAW
1271. Update to the latest release. If checked out from git, run:
128 ``git fetch && git checkout -q v0.6.0``
1292. Make sure to run
2691bfe1 130 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
2691bfe1 131
29166813 132That's it, probably! If you run into problems, don't hesitate to
2691bfe1
CAW
133`contact us <http://mediagoblin.org/pages/join.html>`_
134(IRC is often best).
135
136This tool has a lot of new tools for administrators, hence the
137nickname "Lore of the Admin"!
138
139**New features:**
140
141- New tools to control how much users can upload, both as a general
142 user limit, or per file.
143
144 You can set this with the following options in your mediagoblin
145 config file: `upload_limit` and `max_file_size`. Both are integers
146 in megabytes.
147
148 There is an option to control how much each individual user can
149 upload too, though an interface for this is not yet exposed. See
150 the "uploaded" field on the core__users table.
151
152- MediaGoblin now contains an authentication plugin for ldap! You
153 can turn on the mediagoblin.plugins.ldap plugin to make use of
154 this. See the documentation: :ref:`ldap-plugin`
155
156- There's a new command line upload tool! At long last! See
157 `./bin/gmg addmedia --help` for info on how to use this.
158
159- There's now a terms of service document included in MediaGoblin.
160 It's turned on by default, but you can turn it off if you prefer,
161 just set the configuration option of `show_tos` in the [mediagoblin]
162 section of your config to false.
163
164 Alternately, you can override the template for the terms of service
165 document to set up your own.
166
167- We have a lot of new administrative tooling features!
168 - There's a built-in privileges/permissions system now.
169 Administrators are given access to modifying these parameters
170 from a user administration panel.
171 - Users can submit reports about other problematic users or media
172 and administrators are given tools to resolve said reports and
173 ban/unban users if needed.
174
175- New version of video.js is included with MediaGoblin. Slight
176 amount of skinning to match the MediaGoblin look, otherwise also
177 uses the new default skin.
178
179Developer-oriented changes:
180
181- New developer tool for quickly setting up a development environment
182 in `devtools/make_example_database.sh`. Requires doing a checkout
183 of our other tool `mg_dev_environments <https://gitorious.org/mediagoblin/mg-dev-environments/>`_
184 (probably in the parent Directory) though!
185- A "foundations" framework has entered into the codebase.
186 This is mostly just relevant to coders, but it does mean that it's
187 much easier to add database structures that need some entries filled
188 automatically by default.
189- Refactoring to the authentication code and the reprocessing code
190
a66fbf97 191
d4edbfd5
CAW
1920.5.1
193=====
194
195v0.5.1 is a bugfix release... the steps are the same as for 0.5.1.
196
197**Bugfixes:**
198
199- python 2.6 compatibility restored
200- Fixed last release's release notes ;)
201
202
a126ef4d
RE
2030.5.0
204=====
205
abff297c
CAW
206**NOTE:** If using the API is important to you, we're in a state of
207ransition towards a new API via the Pump API. As such, though the old
208API still probably works, some changes have happened to the way oauth
209works to make it more Pump-compatible. If you're heavily using
210clients using the old API, you may wish to hold off on upgrading for
211now. Otherwise, jump in and have fun! :)
212
a126ef4d
RE
213**Do this to upgrade**
214
2151. Make sure to run
216 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
217 after upgrading.
218
219.. mention something about new, experimental configure && make support
220
2212. Note that a couple of things have changed with ``mediagoblin.ini``. First
222 we have a new Authentication System. You need to add
223 ``[[mediagoblin.plugins.basic_auth]]`` under the ``[plugins]`` section of
224 your config file. Second, media types are now plugins, so you need to add
225 each media type under the ``[plugins]`` section of your config file.
226
227
2283. We have made a script to transition your ``mediagoblin_local.ini`` file for
a0a31ddf 229 you. This script can be found at:
a126ef4d 230
a0a31ddf 231 http://mediagoblin.org/download/0.5.0_config_converter.py
a126ef4d
RE
232
233If you run into problems, don't hesitate to
234`contact us <http://mediagoblin.org/pages/join.html>`_
235(IRC is often best).
236
237**New features**
238
239* As mentioned above, we now have a plugable Authentication system. You can
240 use any combination of the multiple authentication systems
241 (:ref:`basic_auth-chapter`, :ref:`persona-chapter`, :ref:`openid-chapter`)
242 or write your own!
243* Media types are now plugins! This means that new media types will
244 be able to do new, fancy things they couldn't in the future.
245* We now have notification support! This allows you to subscribe to media
246 comments and to be notified when someone comments on your media.
247* New reprocessing framework! You can now reprocess failed uploads, and
248 send already processed media back to processing to re-transcode or resize
249 media.
250* Comment preview!
251* Users now have the ability to change their email associated with their
252 account.
253* New oauth code as we move closer to federation support.
254* Experimental pyconfigure support for GNU-style configue and makefile
255 deployment.
256* Database foundations! You can now pre-populate the database models.
257* Way faster unit test run-time via in-memory database.
258* All mongokit stuff has been cleaned up.
259* Fixes for non-ascii filenames.
260* The option to stay logged in.
261* Mediagoblin has been upgraded to use the latest `celery <http://celeryproject.org/>`_
262 version.
263* You can now add jinja2 extensions to your config file to use in custom
264 templates.
265* Fixed video permission issues.
266* Mediagoblin docs are now hosted with multiple versions.
267* We removed redundent tooltips from the STL media display.
268* We are now using itsdangerous for verification tokens.
269
270
bed9ad06
CAW
2710.4.1
272=====
273
274This is a bugfix release for 0.4.0. This only implements one major
275fix in the newly released document support which prevented the
276"conversion via libreoffice" feature.
277
278If you were running 0.4.0 you can upgrade to v0.4.1 via a simple
279switch and restarting mediagoblin/celery with no other actions.
280
d3b1fd2e
CAW
281Otherwise, follow 0.4.0 instructions.
282
bed9ad06 283
8ca51d32
CAW
2840.4.0
285=====
286
24ede044 287**Do this to upgrade**
a66fbf97 288
5622cc44
CAW
2891. Make sure to run
290 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
291 after upgrading.
24ede044
CAW
2922. See "For Theme authors" if you have a custom theme.
2933. Note that ``./bin/gmg theme assetlink`` is now just
294 ``./bin/gmg assetlink`` and covers both plugins and assets.
295 Keep on reading to hear more about new plugin features.
2964. If you want to take advantage of new plugins that have statically
297 served assets, you are going to need to add the new "plugin_static"
298 section to your nginx config. Basically the following for nginx::
299
300 # Plugin static files (usually symlinked in)
301 location /plugin_static/ {
302 alias /srv/mediagoblin.example.org/mediagoblin/user_dev/plugin_static/;
303 }
304
51702d5b
CAW
305 Similarly, if you've got a modified paste config, you may want to
306 borrow the app:plugin_static section from the default paste.ini
307 file.
3085. We now use itsdangerous for sessions; if you had any references to
309 beaker in your paste config you can remove them. Again, see the
310 default paste.ini config
d3b1fd2e 3116. We also now use git submodules. Please do:
64ad0bee 312 ``git submodule init && git submodule update``
d3b1fd2e 313 You will need to do this to use the new PDF support.
51702d5b 314
8ca51d32
CAW
315**For theme authors**
316
317If you have your own theme or you have any "user modified templates",
318please note the following:
319
320* mediagoblin/bits/ files above-content.html, body-end.html,
321 body-start.html now are renamed... they have underscores instead of
322 dashes in the filenames now :)
323* There's a new file: ``mediagoblin/bits/frontpage_welcome.html``.
324 You can easily customize this to give a welcome page appropriate to
325 your site.
326
51702d5b 327
24ede044 328**New features**
b33feb18 329
51702d5b
CAW
330* PDF media type!
331* Improved plugin system. More flexible, better documented, with a
332 new plugin authoring section of the docs.
333* itsdangerous based sessions. No more beaker!
334* New, experimental Piwigo-based API. This means you should be able
335 to use MediaGoblin with something like Shotwell. (Again, a word of
336 caution: this is *very experimental*!)
337* Human readable timestamps, and the option to display the original
338 date of an image when available (available as the
339 "original_date_visible" variable)
340* Moved unit testing system from nosetests to py.test so we can better
341 handle issues with sqlalchemy exploding with different database
342 configurations. Long story :)
343* You can now disable the ability to post comments.
344* Tags now can be up to length 255 characters by default.
24ede044 345
8ca51d32 346
6e2dcbff 3470.3.3
8d19cb24
SS
348=====
349
6e2dcbff
CAW
350**Do this to upgrade**
351
3521. Make sure to run ``bin/gmg dbupdate`` after upgrading.
3532. OpenStreetMap is now a plugin, so if you want to use it, add the
997ef976 354 following to your config file:
6e2dcbff 355
997ef976
E
356 .. code-block:: ini
357
5058cd51
SC
358 [plugins]
359 [[mediagoblin.plugins.geolocation]]
6e2dcbff
CAW
360
361If you have your own theme, you may need to make some adjustments to
a28c6c4c
CAW
362it as some theme related things may have changed in this release. If
363you run into problems, don't hesitate to
364`contact us <http://mediagoblin.org/pages/join.html>`_
365(IRC is often best).
6e2dcbff 366
8d19cb24
SS
367**New features**
368
6e2dcbff
CAW
369* New dropdown menu for accessing various features.
370
371* Significantly improved URL generation. Now mediagoblin won't give
372 up on making a slug if it looks like there will be a duplicate;
373 it'll try extra hard to generate a meaningful one instead.
374
375 Similarly, linking to an id no longer can possibly conflict with
376 linking to a slug; /u/username/m/id:35/ is the kind of reference we
377 now use to linking to entries with ids. However, old links with
378 entries that linked to ids should work just fine with our migration.
379 The only urls that might break in this release are ones using colons
380 or equal signs.
381
382* New template hooks for plugin authoring.
383
384* As a demonstration of new template hooks for plugin authoring,
385 openstreetmap support now moved to a plugin!
386
a28c6c4c
CAW
387* Method to add media to collections switched from icon of paperclip
388 to button with "add to collection" text.
6e2dcbff
CAW
389
390* Bug where videos often failed to produce a proper thumbnail fixed!
391
fda5ea7a 392* Copying around files in MediaGoblin now much more efficient, doesn't
6e2dcbff
CAW
393 waste gobs of memory.
394
395* Video transcoding now optional for videos that meet certain
fda5ea7a
CAW
396 criteria. By default, MediaGoblin will not transcode webm videos
397 that are smaller in resolution than the MediaGoblin defaults, and
398 MediaGoblin can also be configured to allow theora files to not be
a28c6c4c 399 transcoded as well.
6e2dcbff
CAW
400
401* Per-user license preference option; always want your uploads to be
402 BY-SA and tired of changing that field? You can now set your
403 license preference in your user settings.
404
405* Video player now responsive; better for mobile!
406
70177c1f
CAW
407* You can now delete your account from the user preferences page if
408 you so wish.
409
a28c6c4c 410**Other changes**
8d19cb24 411
b0c8328e
SS
412* Plugin writers: Internal restructuring led to mediagoblin.db.sql* be
413 mediagoblin.db.* starting from 0.3.3
414
6e2dcbff
CAW
415* Dependency list has been reduced not requiring the "webob" package anymore.
416
417* And many small fixes/improvements, too numerous to list!
418
8d19cb24 419
cacb6fea
SS
4200.3.2
421=====
422
423This will be the last release that is capable of converting from an earlier
424MongoDB-based MediaGoblin instance to the newer SQL-based system.
425
1f01df1d
CAW
426**Do this to upgrade**
427
42ce372e
ML
428 # directory of your mediagoblin install
429 cd /srv/mediagoblin.example.org
430
431 # copy source for this release
432 git fetch
433 git checkout tags/v0.3.2
434
435 # perform any needed database updates
436 bin/gmg dbupdate
437
438 # restart your servers however you do that, e.g.,
439 sudo service mediagoblin-paster restart
440 sudo service mediagoblin-celeryd restart
1f01df1d 441
cacb6fea
SS
442
443**New features**
444
1f01df1d
CAW
445* **3d model support!**
446
447 You can now upload STL and OBJ files and display them in
448 MediaGoblin. Requires a recent-ish Blender; for details see:
449 :ref:`deploying-chapter`
cacb6fea
SS
450
451* **trim_whitespace**
452
453 We bundle the optional plugin trim_whitespace which reduces the size
454 of the delivered html output by reducing redundant whitespace.
455
456 See :ref:`core-plugin-section` for plugin documentation
457
1f01df1d
CAW
458* **A new API!**
459
460 It isn't well documented yet but we do have an API. There is an
461 `android application in progress <https://gitorious.org/mediagoblin/mediagoblin-android>`_
462 which makes use of it, and there are some demo applications between
463 `automgtic <https://github.com/jwandborg/automgtic>`_, an
464 automatic media uploader for your desktop
465 and `OMGMG <https://github.com/jwandborg/omgmg>`_, an example of
466 a web application hooking up to the API.
467
468 This is a plugin, so you have to enable it in your mediagoblin
469 config file by adding a section under [plugins] like::
470
471 [plugins]
472 [[mediagoblin.plugins.api]]
473
474 Note that the API works but is not nailed down... the way it is
475 called may change in future releases.
476
477* **OAuth login support**
478
479 For applications that use OAuth to connect to the API.
480
481 This is a plugin, so you have to enable it in your mediagoblin
482 config file by adding a section under [plugins] like::
483
484 [plugins]
485 [[mediagoblin.plugins.oauth]]
486
487* **Collections**
488
489 We now have user-curated collections support. These are arbitrary
490 galleries that are customizable by users. You can add media to
491 these by clicking on the paperclip icon when logged in and looking
492 at a media entry.
493
494* **OpenStreetMap licensing display improvements**
495
496 More accurate display of OSM licensing, and less disruptive: you
497 click to "expand" the display of said licensing.
498
499 Geolocation is also now on by default.
500
501* **Miscelaneous visual improvements**
502
503 We've made a number of small visual improvements including newer and
504 nicer looking thumbnails and improved checkbox placement.
505
506
5be6425c 507
3a438f5e
WKG
5080.3.1
509=====
510
9e579cde
WKG
511**Do this to upgrade**
512
5131. Make sure to run ``bin/gmg dbuptdate`` after upgrading.
514
5152. If you set up your server config with an older version of
516 mediagoblin and the mediagoblin docs, it's possible you don't
517 have the "theme static files" alias, so double check to make
518 sure that section is there if you are having problems.
519
520
521
522**New features**
523
524* **theming support**
525
526 MediaGoblin now also includes theming support, which you can
527 read about in the section :ref:`theming-chapter`.
528
529* **flatpages**
530
531 MediaGoblin has a flatpages plugin allowing you to add pages that
532 are aren't media-related like "About this site...", "Terms of
533 service...", etc.
534
535 See :ref:`core-plugin-section` for plugin documentation
3a438f5e
WKG
536
537
6e930791
CAW
5380.3.0
539=====
5be6425c
E
540
541This release has one important change. You need to act when
542upgrading from a previous version!
543
544This release changes the database system from MongoDB to
545SQL(alchemy). If you want to setup a fresh instance, just
546follow the instructions in the deployment chapter. If on
547the other hand you want to continue to use one instance,
548read on.
549
dce37922 550To convert your data from MongoDB to SQL(alchemy), you need
5be6425c
E
551to follow these steps:
552
5531. Make sure your MongoDB is still running and has your
554 data, it's needed for the conversion.
555
abe74178
WKG
5562. Configure the ``sql_engine`` URI in the config to represent
557 your target database (see: :ref:`deploying-chapter`)
5be6425c
E
558
5593. You need an empty database.
560
5614. Then run the following command::
562
abe74178 563 bin/gmg [-cf mediagoblin_config.ini] convert_mongo_to_sql
5be6425c
E
564
5655. Start your server and investigate.
566
5676. That's it.