Boris Bobrov [Mon, 4 Aug 2014 07:59:37 +0000 (11:59 +0400)]
a tiny fix to function doc
Boris Bobrov [Sun, 27 Jul 2014 03:25:14 +0000 (07:25 +0400)]
Add new hook for two-step media type checking
Before uploaded media files were checked by extension. This led to
situations when a plugin can support file with specific extension but
doesn't due to lack of codecs, for example. Since the plugin reported
that it supports uploaded file type, the upload was being declared
successful, but transcoding failed.
The failures were not easy to debug.
The change adds a new hook that could allow two-step checking of the
content. The result of the hook execution returns a tuple with
media type name, manager and a callable sniffer, that can be used to
perform probably expensive checks of the content.
Also the change adds implementation of the hook for video.
Boris Bobrov [Sun, 20 Jul 2014 15:33:18 +0000 (19:33 +0400)]
updated function docs
Boris Bobrov [Fri, 20 Jun 2014 03:18:33 +0000 (07:18 +0400)]
added a/v submission testing
Boris Bobrov [Mon, 16 Feb 2015 02:05:41 +0000 (05:05 +0300)]
added docs about new gstreamer
Boris Bobrov [Fri, 13 Jun 2014 06:02:10 +0000 (10:02 +0400)]
Port of audio to GStreamer 1.0
Includes:
- transcoders
- thumbs
- tests
Boris Bobrov [Thu, 5 Jun 2014 11:42:12 +0000 (15:42 +0400)]
Porting video to GStreamer 1.0
Porting includes:
- thumbnailer
- transcoder
- metadata handling
- new common discoverer for media
- new tests with in-memory test video generating
- handling regardless of audio availability in the file
- Pythonic gst pipelines
Boris Bobrov [Thu, 29 May 2014 10:50:32 +0000 (14:50 +0400)]
Rewrite thumbnailer
Previous thumbnailer didn't always work properly. It was also not ready
to be ported to GStreamer 1.0
The rewrite makes it shorter, more pythonic and prepares it for porting.
- no longer uses playbin2;
- is tested
- logs some events
- previous thumbnailer is removed
Jessica Tallon [Tue, 20 Jan 2015 10:49:24 +0000 (10:49 +0000)]
Let parser handle typing for deletuser command
Boris Bobrov [Mon, 19 Jan 2015 20:14:22 +0000 (23:14 +0300)]
fixed wrong git mv in Pootle transition script
Christopher Allan Webber [Sun, 18 Jan 2015 22:03:38 +0000 (16:03 -0600)]
Committing extracted and compiled translations
Christopher Allan Webber [Sun, 18 Jan 2015 21:55:58 +0000 (15:55 -0600)]
Compile .po files to the LC_MESSAGES subdir
This ought to make both python's gettext and pootle happy :P
Christopher Allan Webber [Sun, 18 Jan 2015 20:03:11 +0000 (14:03 -0600)]
Exclude the LC_MESSAGES stuff (and master pulling)
Christopher Allan Webber [Fri, 16 Jan 2015 22:06:42 +0000 (16:06 -0600)]
Moving translation files over for Pootle move.
Boris Bobrov [Sun, 14 Dec 2014 22:25:28 +0000 (01:25 +0300)]
Exclude index dir from sync with Pootle
Pootle creates some dir with index file. It has nothing to do with our
files, so it should be excluded in the rsync call.
Christopher Allan Webber [Sun, 14 Dec 2014 20:56:15 +0000 (14:56 -0600)]
Update the pootle translation updating script to compile the right files
Made similar changes in the Transifex script, so ported those over.
Also, the script did not seem to be running the compile step as it
wasn't finding the files (different file structure), but it is doing
fine now.
Boris Bobrov [Sun, 7 Dec 2014 17:54:16 +0000 (20:54 +0300)]
Added facilities for Pootle.
Previously we used Transifex as a web-tool for translations. Some time
ago Transifex went proprietary and we decided to move to Pootle.
Old script for updating translations was renamed and a new one was
added. Also a script for making the layout more Pootle-friendly was
added.
To accomplish the transition first run the old script:
./devtools/update_translations_transifex.sh
Then run the layout changing script:
./devtools/move_translations_for_pootle.sh
Commit and push. After that use the new
./devtools/update_translations_pootle.sh
to update the translations.
Closes bug: #913
Christopher Allan Webber [Fri, 16 Jan 2015 21:15:20 +0000 (15:15 -0600)]
Committing extracted and compiled translations
Berker Peksag [Fri, 9 Jan 2015 21:25:59 +0000 (23:25 +0200)]
Silenced a Sphinx warning.
docs/source/siteadmin/relnotes.rst:72: WARNING: Title underline too short.
Berker Peksag [Fri, 9 Jan 2015 21:05:04 +0000 (23:05 +0200)]
Added an "htmlview" target to open docs after building them.
This is helpful if you build and test documentation updates in
your development env.
Copied from CPython's and Django's Doc/Makefile.
Jessica Tallon [Fri, 9 Jan 2015 15:15:29 +0000 (15:15 +0000)]
Minor fixes to API documentation: typos and dates, etc.
Jessica Tallon [Fri, 9 Jan 2015 14:02:49 +0000 (14:02 +0000)]
Update and reorganise API documentation
Jessica Tallon [Tue, 6 Jan 2015 12:06:12 +0000 (12:06 +0000)]
Add upper limit to count GET param for inbox and feed
Jessica Tallon [Tue, 30 Dec 2014 15:01:20 +0000 (16:01 +0100)]
Clean up documentation and add documentation on activities
Jessica Tallon [Mon, 22 Dec 2014 11:47:41 +0000 (11:47 +0000)]
Fix
1e0c938 by allowing target to be translatable in Activity.content
Jessica Tallon [Mon, 22 Dec 2014 11:00:44 +0000 (11:00 +0000)]
Allow Activity.content to be fully translatable
Jessica Tallon [Thu, 18 Dec 2014 08:53:05 +0000 (08:53 +0000)]
Fix #1066 - Fix OAuth issue when using GET params
Jessica Tallon [Tue, 16 Dec 2014 12:15:13 +0000 (12:15 +0000)]
Fix #1078 - Stop 500 error when GET request on inbox
Jessica Tallon [Tue, 16 Dec 2014 12:05:18 +0000 (12:05 +0000)]
Fix #1077 - Fix updating comment via API and add test
Jessica Tallon [Mon, 15 Dec 2014 18:04:50 +0000 (18:04 +0000)]
Fix #1064 - Add major and minor feed for outbox/feed
Jessica Tallon [Mon, 15 Dec 2014 11:17:57 +0000 (11:17 +0000)]
Fix #1069 - Add deleting images and comments via delete activities
Christopher Allan Webber [Sun, 14 Dec 2014 21:02:50 +0000 (15:02 -0600)]
Committing extracted and compiled translations
Christopher Allan Webber [Sun, 14 Dec 2014 18:56:33 +0000 (12:56 -0600)]
Recommend cloning the stable branch instead of master from now on
This commit sponsored by Karen Rustad. You're awesome, Karen!
Christopher Allan Webber [Sat, 13 Dec 2014 16:03:48 +0000 (10:03 -0600)]
Committing extracted and compiled translations
Christopher Allan Webber [Sat, 13 Dec 2014 16:03:26 +0000 (10:03 -0600)]
Fix the output file to the correct one in the new i18n compile loop
Christopher Allan Webber [Sat, 13 Dec 2014 15:58:36 +0000 (09:58 -0600)]
Just spacing things out to look a bit cleaner.
Christopher Allan Webber [Sat, 13 Dec 2014 15:50:13 +0000 (09:50 -0600)]
Submitting workaround to skip compiling Lojban. Sniff :(
We'll eventually support Lojban again. This issue fixes #1071, but
leaves #1070 open.
Christopher Allan Webber [Sat, 6 Dec 2014 20:33:16 +0000 (14:33 -0600)]
Committing present MediaGoblin translations before pushing extracted messages
Jessica Tallon [Fri, 12 Dec 2014 13:55:14 +0000 (13:55 +0000)]
Fix #1056 - Add flag to accept URLs without a trailing slash
Jessica Tallon [Thu, 11 Dec 2014 16:35:10 +0000 (16:35 +0000)]
Fix #1055 - API feed should be sorted in order of newest first
Jessica Tallon [Thu, 11 Dec 2014 11:29:03 +0000 (11:29 +0000)]
Fix #1053 - Add height and width attributes and MetadataProcess task
Added "height" and "width" attributes to "image" and "fullImage"
in the API where possible. The height and width of images wasn't
being stored anywhere so I've created a task to add or update
the metadata on images and also started adding those to new images
when they're submitted in the InitialProcessor.
Jessica Tallon [Tue, 9 Dec 2014 19:04:55 +0000 (19:04 +0000)]
Fix #1026 - Add inbox feed with major, minor and direct endpoints
jpope777 [Mon, 8 Dec 2014 17:46:56 +0000 (11:46 -0600)]
Fix #1058 - Verifier page could be clearer
Jessica Tallon [Mon, 8 Dec 2014 17:00:33 +0000 (17:00 +0000)]
Fix #1057 - unquote redirection URL on successful OAuth authorization
Jessica Tallon [Mon, 8 Dec 2014 14:46:48 +0000 (14:46 +0000)]
Fix #1054 - Add missing attributes to Activity.serialize
Jessica Tallon [Mon, 8 Dec 2014 13:44:33 +0000 (13:44 +0000)]
Fix OAuth length problems in clients by removing that constraint
Jessica Tallon [Fri, 5 Dec 2014 17:22:55 +0000 (17:22 +0000)]
Partial fix #1048 - Don't require as long nonce
Jessica Tallon [Fri, 5 Dec 2014 14:03:52 +0000 (14:03 +0000)]
Fix #1049 - name renamed to displayName for Location
Christopher Allan Webber [Wed, 3 Dec 2014 19:38:18 +0000 (13:38 -0600)]
There's absolutely no reason for a Session().commit object mirrored onto Session() :)
Thanks for catching, Elrond :)
Christopher Allan Webber [Wed, 3 Dec 2014 19:26:13 +0000 (13:26 -0600)]
Use request.db to do a query to support a global-free view :)
Christopher Allan Webber [Wed, 3 Dec 2014 19:25:19 +0000 (13:25 -0600)]
Make all mixin methods ignore mg_globals and use self._app instead
This commit sponsored by Daniel Lang. Thank you!
Christopher Allan Webber [Wed, 3 Dec 2014 19:13:58 +0000 (13:13 -0600)]
Attach the MediaGoblinApp to the engine, and provide a way for models to access
This allows SQLAlchemy models to gain access to app-level configuration
without the need for global variables.
This commit sponsored by Peter Hogg. Thank you, Peter!
Christopher Allan Webber [Wed, 3 Dec 2014 17:19:34 +0000 (11:19 -0600)]
Use request.app.auth instead of mg_globals
Christopher Allan Webber [Wed, 3 Dec 2014 17:17:31 +0000 (11:17 -0600)]
Reforming get_jinja_env to make better use of the MediaGoblinApp
Christopher Allan Webber [Sun, 30 Nov 2014 22:40:10 +0000 (16:40 -0600)]
Starting to deprecate the app_config, global_config by attaching stuff to app
- app.global_config, app.app_config
- making setup_crypto use app.app_config
- setting app.workbench_manager
Christopher Allan Webber [Sun, 30 Nov 2014 22:14:05 +0000 (16:14 -0600)]
Context objects now use a contextmanager (and update gmg shell to use it)
This means that we have a really convenient way to make sure that you
have a context/request that threads its way through the application,
where everything needed gets "shut down" appropriately by the end.
You always get a context object via a context manager! And by the time
you're done with it, things should be cleaned up.
Christopher Allan Webber [Sun, 30 Nov 2014 21:17:09 +0000 (15:17 -0600)]
Adding query property to DatabaseMaster for forward compatibility
Christopher Allan Webber [Sun, 30 Nov 2014 21:09:12 +0000 (15:09 -0600)]
Make "gmg shell" work with the new globals-less setup
Christopher Allan Webber [Sun, 30 Nov 2014 21:08:40 +0000 (15:08 -0600)]
Attach the base models to sessions and the DatabaseMaster for backwards compatibility
Really we should stop relying on that though.
Christopher Allan Webber [Sun, 30 Nov 2014 21:08:14 +0000 (15:08 -0600)]
Only conditionally import Session in db/util.py
Christopher Allan Webber [Sun, 30 Nov 2014 20:50:50 +0000 (14:50 -0600)]
Set up request.db / app.db(_manager) depending on DISABLE_GLOBALS
Christopher Allan Webber [Sun, 30 Nov 2014 20:04:20 +0000 (14:04 -0600)]
Move the scoped_session, sessionmaker imports
Christopher Allan Webber [Sun, 30 Nov 2014 20:04:09 +0000 (14:04 -0600)]
Some docstrings
Christopher Allan Webber [Sun, 30 Nov 2014 19:53:21 +0000 (13:53 -0600)]
Return DatabaseManager or DatabaseMaster depending on DISABLE_GLOBALS
They're both similar! One sets up sessions, one grabs sessions from a global object.
Christopher Allan Webber [Sun, 30 Nov 2014 19:49:01 +0000 (13:49 -0600)]
Oops, got the boolean backwards :P
Christopher Allan Webber [Sun, 30 Nov 2014 19:29:59 +0000 (13:29 -0600)]
Adding DatabaseManager as an alternative to DatabaseMaster
This is another step to get to a no-globals configuration. I'm not
sure if this code works yet or not... :)
Christopher Allan Webber [Sun, 30 Nov 2014 18:49:26 +0000 (12:49 -0600)]
An environment variable to transition towards removing global variables
Christopher Allan Webber [Sun, 30 Nov 2014 16:58:11 +0000 (10:58 -0600)]
Give our sqlalchemy objects access to their own session
Christopher Allan Webber [Sat, 29 Nov 2014 19:56:41 +0000 (13:56 -0600)]
Add context generator: first step towards removing globals from the application
This allows you to generate a "context" object that gets threaded
throughout the application... this object should keep track of the same
things that currently we use global variables for.
jpope777 [Tue, 2 Dec 2014 22:54:24 +0000 (16:54 -0600)]
Fix #1046 - Media breaking out of container
Jessica Tallon [Tue, 2 Dec 2014 14:50:35 +0000 (14:50 +0000)]
Fix #1024 - Correctly set generator on Activities
Christopher Allan Webber [Mon, 1 Dec 2014 18:44:07 +0000 (12:44 -0600)]
Change the suggested data_basedir, and fix a typo
This commit sponsored by Raimund Sacherer. Thank you!
jpope777 [Mon, 1 Dec 2014 16:56:55 +0000 (10:56 -0600)]
Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin
jpope777 [Mon, 1 Dec 2014 16:56:18 +0000 (10:56 -0600)]
fix #1000 - Button style in Report file dialogue
Jessica Tallon [Mon, 1 Dec 2014 13:39:35 +0000 (13:39 +0000)]
Fix #658 and #974 - Rollback database on_return of task
Jessica Tallon [Thu, 27 Nov 2014 10:12:53 +0000 (10:12 +0000)]
Fix #1040 - Comments should have published attribute
Christopher Allan Webber [Wed, 26 Nov 2014 22:44:28 +0000 (16:44 -0600)]
This import_export stuff is mongodb days leftovers. Removing!
This commit sponsored by Ray Redd. Thanks!
Berker Peksag [Mon, 17 Nov 2014 05:11:44 +0000 (07:11 +0200)]
Fix unicode handling in "gmg addmedia".
Jessica Tallon [Fri, 21 Nov 2014 13:18:25 +0000 (13:18 +0000)]
Fix #1025 - Make API IDs IRIs
Christopher Allan Webber [Thu, 20 Nov 2014 17:36:29 +0000 (11:36 -0600)]
Patch by Sturm: explain permissions on media directories in deployment docs
This should hopefully reduce the amount that users are confused by their
media files not being available.
Jessica Tallon [Thu, 20 Nov 2014 10:14:43 +0000 (10:14 +0000)]
Fix #1039 - Fix typo in user model 'oublished' to 'published'
Jessica Tallon [Thu, 20 Nov 2014 09:46:37 +0000 (09:46 +0000)]
Fix #1021 - Skip broken activities which caused feed/inbox to 500
Jessica Tallon [Wed, 19 Nov 2014 10:49:42 +0000 (10:49 +0000)]
Fix #1023 - Make timestamps in API timezone aware
Jessica Tallon [Tue, 4 Nov 2014 10:39:01 +0000 (10:39 +0000)]
Fix User and MediaEntry serialize and add serialize to models which need it
Jessica Tallon [Tue, 4 Nov 2014 09:54:04 +0000 (09:54 +0000)]
Fix #1016 - Covert the timestamp from seconds to datetime object
Christopher Allan Webber [Thu, 30 Oct 2014 19:27:26 +0000 (14:27 -0500)]
Fix airy to properly work with the "forced to the bottom of the page" footer
Christopher Allan Webber [Thu, 30 Oct 2014 19:17:40 +0000 (14:17 -0500)]
Remove ^P character
Christopher Allan Webber [Thu, 30 Oct 2014 18:56:55 +0000 (13:56 -0500)]
Clarifying the json processing callbacks even further
Rodrigo Rodrigues da Silva [Fri, 17 Oct 2014 13:01:55 +0000 (10:01 -0300)]
Fix misleading log message reported in #985.
Rodrigo Rodrigues da Silva [Thu, 7 Aug 2014 17:57:35 +0000 (14:57 -0300)]
Add a template hook to stl sideinfo. Fixes #940.
ayleph [Wed, 22 Oct 2014 14:27:56 +0000 (07:27 -0700)]
Updates per request of moggers87
ayleph [Thu, 18 Sep 2014 05:30:15 +0000 (22:30 -0700)]
Unit tests
Added unit tests for lowercasify username on login.
ayleph [Sun, 3 Aug 2014 22:55:16 +0000 (15:55 -0700)]
Pass validated username to check_login_simple
The login function in mediagoblin/auth/views.py grabs the username prior to
form validation. If validation passes, the pre-validated username is passed to
the check_login_simple function.
Lowercasifying of the username occurs as part of form validation. By sending
the pre-validated username, there's a chance of sending a username with
uppercase letters. This will fail to match any user ids in the database, as
all of the usernames are lowercased during the registration process.
This change sends the post-validated username to check_login_simple, so that
any username that was entered by the user with uppercase letters has a chance
to be properly lowercased before being passed.
Christopher Allan Webber [Thu, 30 Oct 2014 16:14:59 +0000 (11:14 -0500)]
Template hook to allow plugin authors to add extra things to the header
Thanks to Andrew Browning for requesting this and suggesting where to
put it!
Jessica Tallon [Wed, 29 Oct 2014 08:47:09 +0000 (08:47 +0000)]
Fix #1017 - Exception caused by activity being set on incorrect foreign key
The .activity ForeignKey on several models such as MediaEntry expects
a ActivityIntmediatory ID not an Activity ID however in submit code the
activity attribute was being set the Activity, simply removing this
assignment should fix the issue as everything is set correctly at this point.
I have also moved the creation of the activity above the processing of media
to avoid race conditions.
Jessica Tallon [Mon, 27 Oct 2014 11:11:43 +0000 (11:11 +0000)]
Fix #1007 - get location object not string of location name; caused 500 when editing profile
Jessica Tallon [Mon, 27 Oct 2014 09:45:23 +0000 (09:45 +0000)]
Fix #1010 - Typos in mediagoblin/media_types/image/migrations.py
Jessica Tallon [Mon, 27 Oct 2014 09:28:56 +0000 (09:28 +0000)]
Fix #1005 - location.position is a dictionary so 'value' in dict check needed
Jessica Tallon [Wed, 22 Oct 2014 20:42:57 +0000 (21:42 +0100)]
Only create a slug after a media upload via the API when there is a title
Jessica Tallon [Wed, 22 Oct 2014 17:59:04 +0000 (18:59 +0100)]
Fix problem where duplicate slug would cause an update exception