Provide an easy option to turn off the terms of service
[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
a66fbf97 24
d4edbfd5
CAW
250.5.1
26=====
27
28v0.5.1 is a bugfix release... the steps are the same as for 0.5.1.
29
30**Bugfixes:**
31
32- python 2.6 compatibility restored
33- Fixed last release's release notes ;)
34
35
a126ef4d
RE
360.5.0
37=====
38
abff297c
CAW
39**NOTE:** If using the API is important to you, we're in a state of
40ransition towards a new API via the Pump API. As such, though the old
41API still probably works, some changes have happened to the way oauth
42works to make it more Pump-compatible. If you're heavily using
43clients using the old API, you may wish to hold off on upgrading for
44now. Otherwise, jump in and have fun! :)
45
a126ef4d
RE
46**Do this to upgrade**
47
481. Make sure to run
49 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
50 after upgrading.
51
52.. mention something about new, experimental configure && make support
53
542. Note that a couple of things have changed with ``mediagoblin.ini``. First
55 we have a new Authentication System. You need to add
56 ``[[mediagoblin.plugins.basic_auth]]`` under the ``[plugins]`` section of
57 your config file. Second, media types are now plugins, so you need to add
58 each media type under the ``[plugins]`` section of your config file.
59
60
613. We have made a script to transition your ``mediagoblin_local.ini`` file for
a0a31ddf 62 you. This script can be found at:
a126ef4d 63
a0a31ddf 64 http://mediagoblin.org/download/0.5.0_config_converter.py
a126ef4d
RE
65
66If you run into problems, don't hesitate to
67`contact us <http://mediagoblin.org/pages/join.html>`_
68(IRC is often best).
69
70**New features**
71
72* As mentioned above, we now have a plugable Authentication system. You can
73 use any combination of the multiple authentication systems
74 (:ref:`basic_auth-chapter`, :ref:`persona-chapter`, :ref:`openid-chapter`)
75 or write your own!
76* Media types are now plugins! This means that new media types will
77 be able to do new, fancy things they couldn't in the future.
78* We now have notification support! This allows you to subscribe to media
79 comments and to be notified when someone comments on your media.
80* New reprocessing framework! You can now reprocess failed uploads, and
81 send already processed media back to processing to re-transcode or resize
82 media.
83* Comment preview!
84* Users now have the ability to change their email associated with their
85 account.
86* New oauth code as we move closer to federation support.
87* Experimental pyconfigure support for GNU-style configue and makefile
88 deployment.
89* Database foundations! You can now pre-populate the database models.
90* Way faster unit test run-time via in-memory database.
91* All mongokit stuff has been cleaned up.
92* Fixes for non-ascii filenames.
93* The option to stay logged in.
94* Mediagoblin has been upgraded to use the latest `celery <http://celeryproject.org/>`_
95 version.
96* You can now add jinja2 extensions to your config file to use in custom
97 templates.
98* Fixed video permission issues.
99* Mediagoblin docs are now hosted with multiple versions.
100* We removed redundent tooltips from the STL media display.
101* We are now using itsdangerous for verification tokens.
102
103
bed9ad06
CAW
1040.4.1
105=====
106
107This is a bugfix release for 0.4.0. This only implements one major
108fix in the newly released document support which prevented the
109"conversion via libreoffice" feature.
110
111If you were running 0.4.0 you can upgrade to v0.4.1 via a simple
112switch and restarting mediagoblin/celery with no other actions.
113
d3b1fd2e
CAW
114Otherwise, follow 0.4.0 instructions.
115
bed9ad06 116
8ca51d32
CAW
1170.4.0
118=====
119
24ede044 120**Do this to upgrade**
a66fbf97 121
5622cc44
CAW
1221. Make sure to run
123 ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate``
124 after upgrading.
24ede044
CAW
1252. See "For Theme authors" if you have a custom theme.
1263. Note that ``./bin/gmg theme assetlink`` is now just
127 ``./bin/gmg assetlink`` and covers both plugins and assets.
128 Keep on reading to hear more about new plugin features.
1294. If you want to take advantage of new plugins that have statically
130 served assets, you are going to need to add the new "plugin_static"
131 section to your nginx config. Basically the following for nginx::
132
133 # Plugin static files (usually symlinked in)
134 location /plugin_static/ {
135 alias /srv/mediagoblin.example.org/mediagoblin/user_dev/plugin_static/;
136 }
137
51702d5b
CAW
138 Similarly, if you've got a modified paste config, you may want to
139 borrow the app:plugin_static section from the default paste.ini
140 file.
1415. We now use itsdangerous for sessions; if you had any references to
142 beaker in your paste config you can remove them. Again, see the
143 default paste.ini config
d3b1fd2e 1446. We also now use git submodules. Please do:
64ad0bee 145 ``git submodule init && git submodule update``
d3b1fd2e 146 You will need to do this to use the new PDF support.
51702d5b 147
8ca51d32
CAW
148**For theme authors**
149
150If you have your own theme or you have any "user modified templates",
151please note the following:
152
153* mediagoblin/bits/ files above-content.html, body-end.html,
154 body-start.html now are renamed... they have underscores instead of
155 dashes in the filenames now :)
156* There's a new file: ``mediagoblin/bits/frontpage_welcome.html``.
157 You can easily customize this to give a welcome page appropriate to
158 your site.
159
51702d5b 160
24ede044 161**New features**
b33feb18 162
51702d5b
CAW
163* PDF media type!
164* Improved plugin system. More flexible, better documented, with a
165 new plugin authoring section of the docs.
166* itsdangerous based sessions. No more beaker!
167* New, experimental Piwigo-based API. This means you should be able
168 to use MediaGoblin with something like Shotwell. (Again, a word of
169 caution: this is *very experimental*!)
170* Human readable timestamps, and the option to display the original
171 date of an image when available (available as the
172 "original_date_visible" variable)
173* Moved unit testing system from nosetests to py.test so we can better
174 handle issues with sqlalchemy exploding with different database
175 configurations. Long story :)
176* You can now disable the ability to post comments.
177* Tags now can be up to length 255 characters by default.
24ede044 178
8ca51d32 179
6e2dcbff 1800.3.3
8d19cb24
SS
181=====
182
6e2dcbff
CAW
183**Do this to upgrade**
184
1851. Make sure to run ``bin/gmg dbupdate`` after upgrading.
1862. OpenStreetMap is now a plugin, so if you want to use it, add the
997ef976 187 following to your config file:
6e2dcbff 188
997ef976
E
189 .. code-block:: ini
190
5058cd51
SC
191 [plugins]
192 [[mediagoblin.plugins.geolocation]]
6e2dcbff
CAW
193
194If you have your own theme, you may need to make some adjustments to
a28c6c4c
CAW
195it as some theme related things may have changed in this release. If
196you run into problems, don't hesitate to
197`contact us <http://mediagoblin.org/pages/join.html>`_
198(IRC is often best).
6e2dcbff 199
8d19cb24
SS
200**New features**
201
6e2dcbff
CAW
202* New dropdown menu for accessing various features.
203
204* Significantly improved URL generation. Now mediagoblin won't give
205 up on making a slug if it looks like there will be a duplicate;
206 it'll try extra hard to generate a meaningful one instead.
207
208 Similarly, linking to an id no longer can possibly conflict with
209 linking to a slug; /u/username/m/id:35/ is the kind of reference we
210 now use to linking to entries with ids. However, old links with
211 entries that linked to ids should work just fine with our migration.
212 The only urls that might break in this release are ones using colons
213 or equal signs.
214
215* New template hooks for plugin authoring.
216
217* As a demonstration of new template hooks for plugin authoring,
218 openstreetmap support now moved to a plugin!
219
a28c6c4c
CAW
220* Method to add media to collections switched from icon of paperclip
221 to button with "add to collection" text.
6e2dcbff
CAW
222
223* Bug where videos often failed to produce a proper thumbnail fixed!
224
fda5ea7a 225* Copying around files in MediaGoblin now much more efficient, doesn't
6e2dcbff
CAW
226 waste gobs of memory.
227
228* Video transcoding now optional for videos that meet certain
fda5ea7a
CAW
229 criteria. By default, MediaGoblin will not transcode webm videos
230 that are smaller in resolution than the MediaGoblin defaults, and
231 MediaGoblin can also be configured to allow theora files to not be
a28c6c4c 232 transcoded as well.
6e2dcbff
CAW
233
234* Per-user license preference option; always want your uploads to be
235 BY-SA and tired of changing that field? You can now set your
236 license preference in your user settings.
237
238* Video player now responsive; better for mobile!
239
70177c1f
CAW
240* You can now delete your account from the user preferences page if
241 you so wish.
242
a28c6c4c 243**Other changes**
8d19cb24 244
b0c8328e
SS
245* Plugin writers: Internal restructuring led to mediagoblin.db.sql* be
246 mediagoblin.db.* starting from 0.3.3
247
6e2dcbff
CAW
248* Dependency list has been reduced not requiring the "webob" package anymore.
249
250* And many small fixes/improvements, too numerous to list!
251
8d19cb24 252
cacb6fea
SS
2530.3.2
254=====
255
256This will be the last release that is capable of converting from an earlier
257MongoDB-based MediaGoblin instance to the newer SQL-based system.
258
1f01df1d
CAW
259**Do this to upgrade**
260
42ce372e
ML
261 # directory of your mediagoblin install
262 cd /srv/mediagoblin.example.org
263
264 # copy source for this release
265 git fetch
266 git checkout tags/v0.3.2
267
268 # perform any needed database updates
269 bin/gmg dbupdate
270
271 # restart your servers however you do that, e.g.,
272 sudo service mediagoblin-paster restart
273 sudo service mediagoblin-celeryd restart
1f01df1d 274
cacb6fea
SS
275
276**New features**
277
1f01df1d
CAW
278* **3d model support!**
279
280 You can now upload STL and OBJ files and display them in
281 MediaGoblin. Requires a recent-ish Blender; for details see:
282 :ref:`deploying-chapter`
cacb6fea
SS
283
284* **trim_whitespace**
285
286 We bundle the optional plugin trim_whitespace which reduces the size
287 of the delivered html output by reducing redundant whitespace.
288
289 See :ref:`core-plugin-section` for plugin documentation
290
1f01df1d
CAW
291* **A new API!**
292
293 It isn't well documented yet but we do have an API. There is an
294 `android application in progress <https://gitorious.org/mediagoblin/mediagoblin-android>`_
295 which makes use of it, and there are some demo applications between
296 `automgtic <https://github.com/jwandborg/automgtic>`_, an
297 automatic media uploader for your desktop
298 and `OMGMG <https://github.com/jwandborg/omgmg>`_, an example of
299 a web application hooking up to the API.
300
301 This is a plugin, so you have to enable it in your mediagoblin
302 config file by adding a section under [plugins] like::
303
304 [plugins]
305 [[mediagoblin.plugins.api]]
306
307 Note that the API works but is not nailed down... the way it is
308 called may change in future releases.
309
310* **OAuth login support**
311
312 For applications that use OAuth to connect to the API.
313
314 This is a plugin, so you have to enable it in your mediagoblin
315 config file by adding a section under [plugins] like::
316
317 [plugins]
318 [[mediagoblin.plugins.oauth]]
319
320* **Collections**
321
322 We now have user-curated collections support. These are arbitrary
323 galleries that are customizable by users. You can add media to
324 these by clicking on the paperclip icon when logged in and looking
325 at a media entry.
326
327* **OpenStreetMap licensing display improvements**
328
329 More accurate display of OSM licensing, and less disruptive: you
330 click to "expand" the display of said licensing.
331
332 Geolocation is also now on by default.
333
334* **Miscelaneous visual improvements**
335
336 We've made a number of small visual improvements including newer and
337 nicer looking thumbnails and improved checkbox placement.
338
339
5be6425c 340
3a438f5e
WKG
3410.3.1
342=====
343
9e579cde
WKG
344**Do this to upgrade**
345
3461. Make sure to run ``bin/gmg dbuptdate`` after upgrading.
347
3482. If you set up your server config with an older version of
349 mediagoblin and the mediagoblin docs, it's possible you don't
350 have the "theme static files" alias, so double check to make
351 sure that section is there if you are having problems.
352
353
354
355**New features**
356
357* **theming support**
358
359 MediaGoblin now also includes theming support, which you can
360 read about in the section :ref:`theming-chapter`.
361
362* **flatpages**
363
364 MediaGoblin has a flatpages plugin allowing you to add pages that
365 are aren't media-related like "About this site...", "Terms of
366 service...", etc.
367
368 See :ref:`core-plugin-section` for plugin documentation
3a438f5e
WKG
369
370
6e930791
CAW
3710.3.0
372=====
5be6425c
E
373
374This release has one important change. You need to act when
375upgrading from a previous version!
376
377This release changes the database system from MongoDB to
378SQL(alchemy). If you want to setup a fresh instance, just
379follow the instructions in the deployment chapter. If on
380the other hand you want to continue to use one instance,
381read on.
382
dce37922 383To convert your data from MongoDB to SQL(alchemy), you need
5be6425c
E
384to follow these steps:
385
3861. Make sure your MongoDB is still running and has your
387 data, it's needed for the conversion.
388
abe74178
WKG
3892. Configure the ``sql_engine`` URI in the config to represent
390 your target database (see: :ref:`deploying-chapter`)
5be6425c
E
391
3923. You need an empty database.
393
3944. Then run the following command::
395
abe74178 396 bin/gmg [-cf mediagoblin_config.ini] convert_mongo_to_sql
5be6425c
E
397
3985. Start your server and investigate.
399
4006. That's it.