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 | ||
a66fbf97 | 24 | |
d4edbfd5 CAW |
25 | 0.5.1 |
26 | ===== | |
27 | ||
28 | v0.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 |
36 | 0.5.0 |
37 | ===== | |
38 | ||
abff297c CAW |
39 | **NOTE:** If using the API is important to you, we're in a state of |
40 | ransition towards a new API via the Pump API. As such, though the old | |
41 | API still probably works, some changes have happened to the way oauth | |
42 | works to make it more Pump-compatible. If you're heavily using | |
43 | clients using the old API, you may wish to hold off on upgrading for | |
44 | now. Otherwise, jump in and have fun! :) | |
45 | ||
a126ef4d RE |
46 | **Do this to upgrade** |
47 | ||
48 | 1. 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 | ||
54 | 2. 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 | ||
61 | 3. 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 | |
66 | If 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 |
104 | 0.4.1 |
105 | ===== | |
106 | ||
107 | This is a bugfix release for 0.4.0. This only implements one major | |
108 | fix in the newly released document support which prevented the | |
109 | "conversion via libreoffice" feature. | |
110 | ||
111 | If you were running 0.4.0 you can upgrade to v0.4.1 via a simple | |
112 | switch and restarting mediagoblin/celery with no other actions. | |
113 | ||
d3b1fd2e CAW |
114 | Otherwise, follow 0.4.0 instructions. |
115 | ||
bed9ad06 | 116 | |
8ca51d32 CAW |
117 | 0.4.0 |
118 | ===== | |
119 | ||
24ede044 | 120 | **Do this to upgrade** |
a66fbf97 | 121 | |
5622cc44 CAW |
122 | 1. Make sure to run |
123 | ``./bin/python setup.py develop --upgrade && ./bin/gmg dbupdate`` | |
124 | after upgrading. | |
24ede044 CAW |
125 | 2. See "For Theme authors" if you have a custom theme. |
126 | 3. 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. | |
129 | 4. 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. | |
141 | 5. 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 | 144 | 6. 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 | ||
150 | If you have your own theme or you have any "user modified templates", | |
151 | please 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 | 180 | 0.3.3 |
8d19cb24 SS |
181 | ===== |
182 | ||
6e2dcbff CAW |
183 | **Do this to upgrade** |
184 | ||
185 | 1. Make sure to run ``bin/gmg dbupdate`` after upgrading. | |
186 | 2. 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 | |
194 | If you have your own theme, you may need to make some adjustments to | |
a28c6c4c CAW |
195 | it as some theme related things may have changed in this release. If |
196 | you 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 |
253 | 0.3.2 |
254 | ===== | |
255 | ||
256 | This will be the last release that is capable of converting from an earlier | |
257 | MongoDB-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 |
341 | 0.3.1 |
342 | ===== | |
343 | ||
9e579cde WKG |
344 | **Do this to upgrade** |
345 | ||
346 | 1. Make sure to run ``bin/gmg dbuptdate`` after upgrading. | |
347 | ||
348 | 2. 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 |
371 | 0.3.0 |
372 | ===== | |
5be6425c E |
373 | |
374 | This release has one important change. You need to act when | |
375 | upgrading from a previous version! | |
376 | ||
377 | This release changes the database system from MongoDB to | |
378 | SQL(alchemy). If you want to setup a fresh instance, just | |
379 | follow the instructions in the deployment chapter. If on | |
380 | the other hand you want to continue to use one instance, | |
381 | read on. | |
382 | ||
dce37922 | 383 | To convert your data from MongoDB to SQL(alchemy), you need |
5be6425c E |
384 | to follow these steps: |
385 | ||
386 | 1. Make sure your MongoDB is still running and has your | |
387 | data, it's needed for the conversion. | |
388 | ||
abe74178 WKG |
389 | 2. Configure the ``sql_engine`` URI in the config to represent |
390 | your target database (see: :ref:`deploying-chapter`) | |
5be6425c E |
391 | |
392 | 3. You need an empty database. | |
393 | ||
394 | 4. Then run the following command:: | |
395 | ||
abe74178 | 396 | bin/gmg [-cf mediagoblin_config.ini] convert_mongo_to_sql |
5be6425c E |
397 | |
398 | 5. Start your server and investigate. | |
399 | ||
400 | 6. That's it. |