Ben Sturmfels [Mon, 20 Apr 2020 02:51:27 +0000 (12:51 +1000)]
Add draft Fedora dockerfile.
Ben Sturmfels [Thu, 16 Apr 2020 01:39:40 +0000 (11:39 +1000)]
Merge branch 'no-fastcgi' of https://github.com/mtlynch/mediagoblin
Michael Lynch [Thu, 16 Apr 2020 00:14:11 +0000 (20:14 -0400)]
Adding 'Waitress' where 'FastCGI' was previously referenced
Michael Lynch [Wed, 15 Apr 2020 00:45:54 +0000 (20:45 -0400)]
Removing flup and fastcgi from documentation
flup is not supported on Python3, so MediaGoblin doesn't have a supported way to enable FastCGI support.
This change removes all references to flup and FastCGI and updates deployment instructions to use simple HTTP forwarding with nginx to access mediagoblin's non-static resources.
Ben Sturmfels [Tue, 14 Apr 2020 08:40:55 +0000 (18:40 +1000)]
Note how to run test suite under Docker.
Ben Sturmfels [Tue, 14 Apr 2020 08:02:12 +0000 (18:02 +1000)]
Fix "KeyError: 'No such transport: sqlite. Did you mean sqla?'" in tests.
This is caused by Celery dropping the "sqlite" transport alias from version
4.3.0, so I've pinned an upper limit.
Ben Sturmfels [Tue, 14 Apr 2020 06:40:38 +0000 (16:40 +1000)]
Remove "git submodule init && git submodule update" from Dockerfiles.
These commands are run by `bootstrap.sh`. Also includes a couple more tidy-ups.
Ben Sturmfels [Thu, 9 Apr 2020 21:14:39 +0000 (07:14 +1000)]
Require jinja2<3.0.0 due to use of f-strings.
Ben Sturmfels [Thu, 9 Apr 2020 05:53:49 +0000 (15:53 +1000)]
Decode request.query_string before use.
Prior to this change, when pagination kicks in on the user management or report
management panel, the following exception is raised:
TypeError: a bytes-like object is required, not 'str'
The cause is that `request.query_string` in the URL parameters in raw bytestring
form as per Werkzeug documentation.
Ben Sturmfels [Thu, 9 Apr 2020 05:48:21 +0000 (15:48 +1000)]
Revert "Decode request.query_string before use."
This reverts commit
b6fba854007bb4392846085a60178c44dbd7989e.
Ben Sturmfels [Thu, 9 Apr 2020 05:29:51 +0000 (15:29 +1000)]
Decode request.query_string before use.
This doesn't seem to be an issue in my Guix SD/Python 3.7 testing, but hit an
issue on Debian 9/Python3.5 where concatenating text to `request.query_string`
was causing the error:
TypeError: a bytes-like object is required, not 'str'
This clearly hasn't been an issue in the past though, so I suspect there's a
library somewhere that's on a different version and is behaving differently.
Ben Sturmfels [Tue, 7 Apr 2020 06:45:17 +0000 (16:45 +1000)]
Document SSL/TLS SMTP options.
Ben Sturmfels [Tue, 7 Apr 2020 06:35:09 +0000 (16:35 +1000)]
Fix Jorge's audio upload workaround in Python 3.
Unfortunately now the player isn't showing up because there's no thumbnail.
Ben Sturmfels [Thu, 2 Apr 2020 06:18:39 +0000 (17:18 +1100)]
Note possible future steps for Python 3 audio thumbnailing.
Jorge [Fri, 10 Feb 2017 22:18:19 +0000 (23:18 +0100)]
Use audio icon when spectrogram fails. Add note to doc:media-types.
In addition to side-stepping spectrograms completely in Python 3 in
1038aea8,
this commit adds some fallbacks that will help with potential issues in Python 2.
Fixes Issue #5457
Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
Author: Jorge <mediagoblin@gybs.waa>
Ben Sturmfels [Thu, 2 Apr 2020 04:29:30 +0000 (15:29 +1100)]
Fix broken Dockerfile reference.
Ben Sturmfels [Thu, 2 Apr 2020 03:00:10 +0000 (14:00 +1100)]
Add Muto to AUTHORS.
Muto [Mon, 20 Jan 2020 18:33:35 +0000 (11:33 -0700)]
Add visual feedback on link hover
Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
Ben Sturmfels [Wed, 1 Apr 2020 05:52:05 +0000 (16:52 +1100)]
Fix audio thumbnailing once and for all.
This change adds a Python 3-specific audio thumbnailer that side-steps the
bundled Python 2-only `audioprocessing` module. Instead of an audio spectrogram,
Python 3 users will get a static image.
This also allows me to remove my ineffective customisations to
`audioprocessing`, returning it to the upstream version as should always be the
case for vendored code in "extlib".
Ben Sturmfels [Wed, 1 Apr 2020 04:32:42 +0000 (15:32 +1100)]
Handle moved SharedDataMiddleware in werkzeug >= 0.15.0.
Ben Sturmfels [Wed, 1 Apr 2020 04:30:25 +0000 (15:30 +1100)]
Note werkzeug breaking in Guix.
The `python-lxml` package has also moved.
Ben Sturmfels [Wed, 1 Apr 2020 04:26:47 +0000 (15:26 +1100)]
Pin werkzeug < 1.0.0.
In 1.0.0, the werkzeug.contrib module was removed which was required for `werkzeug.contrib.atom.AtomFeed`.
Ben Sturmfels [Wed, 27 Nov 2019 11:31:16 +0000 (22:31 +1100)]
Note potential issues with guix environment --pure.
Ben Sturmfels [Wed, 27 Nov 2019 11:30:19 +0000 (22:30 +1100)]
Use items() for Python 3 support.
Ben Sturmfels [Wed, 27 Nov 2019 11:14:52 +0000 (22:14 +1100)]
Extend install instructions for raven plugin.
Ben Sturmfels [Tue, 19 Nov 2019 01:55:59 +0000 (12:55 +1100)]
Rename Dockerfiles to be more specific.
Ben Sturmfels [Tue, 19 Nov 2019 01:53:48 +0000 (12:53 +1100)]
Document and improve Docker handling of mounted source code directory.
Ben Sturmfels [Fri, 1 Nov 2019 05:41:45 +0000 (16:41 +1100)]
Prevent warning when importing GstPbutils.
Warning was:
PyGIWarning: GstPbutils was imported without specifying a version first. Use gi.require_version('GstPbutils', '1.0') before import to ensure that the right version gets loaded.
Ben Sturmfels [Fri, 20 Sep 2019 00:39:35 +0000 (10:39 +1000)]
Add Olivier Mehani to AUTHORS.
Olivier Mehani [Sun, 3 Mar 2019 11:17:27 +0000 (22:17 +1100)]
Add datetime_format config option.
Moves the datetime_format used in various places to the config and allows a
global override per site.
Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
Ben Sturmfels [Fri, 20 Sep 2019 00:01:10 +0000 (10:01 +1000)]
Merge branch swo-gitignore.
Thanks mlynch for the contribution!
Ben Sturmfels [Thu, 19 Sep 2019 23:58:15 +0000 (09:58 +1000)]
Add expression to ignore Vim temporary swap files.
I gather that Vim continues back through the alphabet with .swp, swo, swn etc:
https://groups.google.com/forum/#!msg/vim_use/JBHSs3kPPJU/X9WeMsZcfWAJ
Ben Sturmfels [Thu, 19 Sep 2019 07:28:48 +0000 (17:28 +1000)]
Note use of direnv with guix.
Ben Sturmfels [Wed, 18 Sep 2019 07:36:36 +0000 (17:36 +1000)]
metadata_display: Refine spacing.
Ben Sturmfels [Wed, 18 Sep 2019 07:28:43 +0000 (17:28 +1000)]
metadata_display: Improve default alignment/spacing of metadata.
Ben Sturmfels [Wed, 18 Sep 2019 06:02:38 +0000 (16:02 +1000)]
Even up top/bottom margins around header dropdown button.
Bottom margin was less than top margin.
Ben Sturmfels [Wed, 18 Sep 2019 05:58:24 +0000 (15:58 +1000)]
Add basic duplicate prevention for batchaddmedia.
Ben Sturmfels [Wed, 18 Sep 2019 05:57:16 +0000 (15:57 +1000)]
Add omitted --system-site-packages for Python 3 on Guix, add update_extlib.sh docs.
Ben Sturmfels [Wed, 18 Sep 2019 05:30:32 +0000 (15:30 +1000)]
Update metadata_display plugin for Python 3.
Switching from iteritems() to items() is technically less memory efficient on
Python 2, but this appeared be a significantly cleaner approach than adding six
to the template context. It's also the right choice assuming the project will at
some point go Python 3 only.
Ben Sturmfels [Mon, 16 Sep 2019 08:08:57 +0000 (18:08 +1000)]
Add Python 3 docker-compose recipe for MediaGoblin hacking.
Ben Sturmfels [Mon, 16 Sep 2019 07:27:05 +0000 (17:27 +1000)]
Reorder Python 2 Dockerfile to install dependencies together.
Ben Sturmfels [Thu, 12 Sep 2019 10:23:08 +0000 (20:23 +1000)]
Add Python 2 & 3 Docker files for MediaGoblin hacking.
Ben Sturmfels [Thu, 12 Sep 2019 09:58:32 +0000 (19:58 +1000)]
Work around lack of scikits.audiolab support on Python 3.
Ben Sturmfels [Thu, 12 Sep 2019 09:39:54 +0000 (19:39 +1000)]
batchaddmedia: Simplify the Python 2 & 3 unicode handling.
To avoid issues with quotes, I've replaced the manual CSV handling with
csv.DictReader and simplified the unicode handling down to a single line. I
don't believe any special encoding is required when writing to the database.
This has been tested by importing a CSV with braille characters on Python 3 and
Python 2.
Ben Sturmfels [Thu, 12 Sep 2019 05:41:36 +0000 (15:41 +1000)]
Remove unicode literals in batchaddmedia.
Ben Sturmfels [Thu, 12 Sep 2019 04:47:45 +0000 (14:47 +1000)]
Fix URL-based importing with batchaddmedia command.
The command was raising "io.UnsupportedOperation: seek" for URL-based imports
and didn't support HTTPS.
Ben Sturmfels [Thu, 12 Sep 2019 04:39:11 +0000 (14:39 +1000)]
Fix bulkupload documentation example.
The `bulkupload` command expects "dc:title", rather than "dcterms:title".
Similar for description.
Ben Sturmfels [Thu, 12 Sep 2019 04:31:56 +0000 (14:31 +1000)]
Note issues uploading H264 video under Guix.
Ben Sturmfels [Mon, 9 Sep 2019 06:24:45 +0000 (16:24 +1000)]
Provide an update_extlib.sh alternative for Guix.
Ben Sturmfels [Mon, 9 Sep 2019 05:20:52 +0000 (15:20 +1000)]
Update guix-env.scm for use with current version of Guix.
Michael Lynch [Thu, 1 Nov 2018 13:12:39 +0000 (09:12 -0400)]
Adding *.swo to gitignore
Boris Bobrov [Mon, 13 Aug 2018 08:53:52 +0000 (10:53 +0200)]
require higher version of six due to installation problems
Boris Bobrov [Fri, 13 Jul 2018 17:05:38 +0000 (19:05 +0200)]
Fix saving original of the video
Original of the video was not saved because info about it was not
written to the database. Fixed that.
Also removed original video from get_all_media listing. The method is
weird, we should evaluate whether it is video-specific and how to
generalize it.
Boris Bobrov [Fri, 13 Jul 2018 16:29:01 +0000 (18:29 +0200)]
simplify an if and fix string formatting
Boris Bobrov [Fri, 13 Jul 2018 13:00:58 +0000 (15:00 +0200)]
nitpicking
Boris Bobrov [Thu, 12 Jul 2018 17:06:18 +0000 (19:06 +0200)]
close tag in subtitles html
Boris Bobrov [Thu, 12 Jul 2018 17:04:45 +0000 (19:04 +0200)]
move subtitles out of media streams in html
Boris Bobrov [Thu, 12 Jul 2018 16:49:35 +0000 (18:49 +0200)]
Merge branch 'transcoding_progress'
This probably broke stuff
Boris Bobrov [Thu, 12 Jul 2018 16:27:44 +0000 (18:27 +0200)]
Fixes for small bugs
There were some blocking issues in the code. They are small, but break
tests and/or production. Fixed some of them.
Boris Bobrov [Thu, 12 Jul 2018 10:50:54 +0000 (12:50 +0200)]
always guess the same filetype
Boris Bobrov [Thu, 12 Jul 2018 10:50:37 +0000 (12:50 +0200)]
finally fix url validator
Boris Bobrov [Thu, 12 Jul 2018 05:36:00 +0000 (07:36 +0200)]
Revert "Revert "Import messages in blog views""
This reverts commit
8c36ec5246828e3c99d956edd8524f3ade430571.
Boris Bobrov [Wed, 11 Jul 2018 16:26:23 +0000 (18:26 +0200)]
fix typo
Boris Bobrov [Wed, 11 Jul 2018 15:30:09 +0000 (17:30 +0200)]
fix auth error and simplify url and email checks
Boris Bobrov [Wed, 11 Jul 2018 14:54:08 +0000 (16:54 +0200)]
remove requirement for the file to be with single dot in name
Boris Bobrov [Wed, 11 Jul 2018 14:53:32 +0000 (16:53 +0200)]
fix default gmg help message
Boris Bobrov [Tue, 10 Jul 2018 16:29:30 +0000 (18:29 +0200)]
Merge remote-tracking branch 'gsoc2016/Subtitle-1'
Andrew Browning [Sun, 8 Jul 2018 23:00:52 +0000 (19:00 -0400)]
Fix server crash on blog about page [#5572]
Don't bother checking for user's blog if no user returned.
ĎÚβĨŐÚŚ Dod [Tue, 26 Jun 2018 13:28:29 +0000 (09:28 -0400)]
2 bug fixes in editor views
* `WTForms` instances get `__init__`-ed with `defaults` as `kwargs`.
The first arg is a `request.form` (which is what one must supply if
this is a `POST` and must *not* supply otherwise).
The content of that form (empty on `GET`) has higher priority than
the defaults (which makes the user get an empty form).
* Fix `edit_profile()` to allow changing `location` from a non-blank
value to blank (i.e. removing the location).
(cherry picked from commit
75f3e23b92392b9bd309fab4c1a52fd38d453627)
Boris Bobrov [Fri, 8 Jun 2018 15:46:29 +0000 (17:46 +0200)]
Revert "cap sqlalchemy"
This reverts commit
d803f14361ec02878afe4f6b196ce917010a1e2f.
WTForms 2.2 was releases, see
https://issues.mediagoblin.org/ticket/5570#comment:6
Dpg [Wed, 23 May 2018 14:59:38 +0000 (00:59 +1000)]
Add Creative Commons 4.0 licenses [#955]
Add CC version 4.0 licenses to SORTED_LICENSES.
Boris Bobrov [Mon, 30 Apr 2018 18:26:34 +0000 (20:26 +0200)]
cap sqlalchemy
Closes #5557 and fixes some complaints in irc
Andrew Browning [Sun, 8 Apr 2018 23:49:46 +0000 (19:49 -0400)]
Add moderation panel thumbnail header [#5563]
Add moderation panel column header for thumbnail column.
Andrew Browning [Sun, 8 Apr 2018 23:40:02 +0000 (19:40 -0400)]
Process videos with incorrect date tags [#5409]
Video processing expects datetime tags in a specific format. This
commit allows videos with missing or incorrect datetime tags to be
processed with no datetime tags instead of failing.
Andrew Browning [Wed, 25 Oct 2017 06:33:49 +0000 (02:33 -0400)]
Prevent video plugin from processing svg [#934]
Prior to the gstreamer-1.0 upgrade, the video processing engine included
a check for excluded extensions which gstreamer might accept despite us
not wanting to process them. In commit
91f5f5e, the check against
EXCLUDED_EXT was removed. Since then, the video plugin has accepted and
attempted to process svg files.
This commit adds the check against EXCLUDED_EXTS into the sniff_handler
function so that we can bail out on certain file extensions before the
plugins tries to sniff the file type. The previous implementation
excluded nef files, which appears to be a Nikon camera image. I've
copied that forward to this code. I've also added a log message to
indicate that we're purposefully refusing to process the file.
Andrew Browning [Wed, 4 Apr 2018 19:24:08 +0000 (15:24 -0400)]
Remove backup file added in
b5dd245
Andrew Browning [Mon, 2 Apr 2018 05:34:35 +0000 (01:34 -0400)]
Use https:// instead of git:// to clone [#5551]
This was partially addressed in
eee3e41 but missed many items.
Andrew Browning [Wed, 29 Nov 2017 16:56:22 +0000 (11:56 -0500)]
Add chrysn to AUTHORS
chrysn [Wed, 30 Aug 2017 20:59:32 +0000 (22:59 +0200)]
Fix EXIF rotation to make the image portrait on demand
Closes: https://issues.mediagoblin.org/ticket/5525
Signed-off-by: Andrew Browning <ayleph@thisshitistemp.com>
Boris Bobrov [Fri, 17 Nov 2017 11:23:12 +0000 (14:23 +0300)]
add alembic migrations to MANIFEST
Alembic migrations do not get imported anywhere. Because of it
they do not get included to the python package. But they need to
be there in order for migrations to succeed.
Boris Bobrov [Tue, 14 Nov 2017 19:01:19 +0000 (22:01 +0300)]
move alembic.ini to python app dir
Boris Bobrov [Tue, 14 Nov 2017 16:22:17 +0000 (19:22 +0300)]
add alembic.ini to MANISFEST.in
Boris Bobrov [Sun, 12 Nov 2017 23:43:25 +0000 (02:43 +0300)]
remove mentions of mediagoblin_local.ini
Boris Bobrov [Sun, 12 Nov 2017 23:38:44 +0000 (02:38 +0300)]
clarify installation instructions about mediagoblin.ini
Romain Porte [Sat, 11 Nov 2017 18:23:31 +0000 (19:23 +0100)]
Added tests for tags in image API object
Romain Porte [Sat, 11 Nov 2017 18:23:30 +0000 (19:23 +0100)]
Added tags in API (view them and edit them)
Romain Porte [Sat, 11 Nov 2017 18:02:12 +0000 (19:02 +0100)]
Improved gitignores for patch submitting
In order to ease the patch submitting process, *.patch was added as per
Linux kernel's .gitignore. Test cache directory was also added in its
own gitignore (as per kernel's recommendation on .gitignore location).
Romain Porte [Sat, 11 Nov 2017 17:29:56 +0000 (18:29 +0100)]
Fixed flake8 errors for tests/test_api.py
Since I am adding a test I also took time to fix all flake8 errors in
this test file, since I may add more tests in there and I prefer to work
on a coherent code base.
Romain Porte [Sat, 11 Nov 2017 17:29:55 +0000 (18:29 +0100)]
Added tests for custom file name using API
This adds a new test and verify that the old test has the
"unknown.<extension>" format. As funny as it seems, the "image/jpeg"
Content-Type will generate a ".jpe" extension but I was expecting a more
common ".jpg" extension. This may be a bug, but this is not the subject
of this patch.
Romain Porte [Sat, 11 Nov 2017 17:29:54 +0000 (18:29 +0100)]
Change API filename upload using custom header
When uploading a file using the API its same is always going to be
'unknown.<extension>', which is not good looking for file urls. This
patch proposes a custom header named 'X-File-Name' that allows to
specify a file name using an API client.
This changeset was tested with a local OAuth1 client.
Boris Bobrov [Sat, 11 Nov 2017 13:05:43 +0000 (16:05 +0300)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/mediagoblin
Boris Bobrov [Sat, 11 Nov 2017 13:05:02 +0000 (16:05 +0300)]
add Roman to AUTHORS
Romain Porte [Sat, 11 Nov 2017 12:34:59 +0000 (13:34 +0100)]
Replaced /bin/celeryd by /bin/celery in lazycelery
On a fresh clone the celeryd executable is not present. This is because
of the celery version migration to celery 4.x. As per celery's
documentation at http://docs.celeryproject.org/en/latest/whatsnew-4.0.html,
celeryd is no longer shipped in this version.
Andrew Browning [Tue, 31 Oct 2017 15:55:52 +0000 (11:55 -0400)]
Fix location of host-meta.xml file [#5543]
Andrew Browning [Mon, 23 Oct 2017 04:05:37 +0000 (00:05 -0400)]
Fix trivial spelling error in test comment
Simen Heggestøyl [Sun, 8 Oct 2017 09:04:10 +0000 (11:04 +0200)]
Port batchaddmedia command to Python 3
Simen Heggestøyl [Sun, 8 Oct 2017 13:57:38 +0000 (15:57 +0200)]
Make admin panel headers readable in Airy theme
The admin panel headers are white by default, making them almost
unreadable on the light background used in the Airy theme. Make the
headers dark, like text elsewhere in the theme.
Simen Heggestøyl [Sun, 15 Oct 2017 11:33:36 +0000 (13:33 +0200)]
Handle collection in batchaddmedia command
Make the batchaddmedia command look for a 'collection-slug' column, that
for each row may specify the slug of a collection that the media should
be added to. This matches the '--collection-slug' argument of the
addmedia command.
Simen Heggestøyl [Sat, 14 Oct 2017 21:46:17 +0000 (23:46 +0200)]
Support Unicode characters in configuration values
Prior to this commit, using a Unicode character in a configuration
string would result in a `UnicodeDecodeError` being raised. Supporting
Unicode characters is especially useful in user-facing configuration
strings, such as `html_title`.
Simen Heggestøyl [Sun, 15 Oct 2017 11:44:17 +0000 (13:44 +0200)]
Remove dead code in batchaddmedia.py
Remove an unused import and an unused local variable from
batchaddmedia.py.