Commit Graph

728 Commits

Author SHA1 Message Date
3622fad9c2 Merge remote-tracking branch 'origin/master' 2017-03-28 16:43:22 +02:00
c846ee9823 Add support for video tag 2017-03-28 16:43:12 +02:00
fd541d2243 Changed interpretation of '' in form handling of integer properties. 2017-03-28 16:04:40 +02:00
fcaa4fb936 Upgraded VRViewer:
- upgraded vrviewer to latest master (ffbc9ff4bf0c550cc79003ec188ca16e9e83c31e)
- added some notes on how to upgrade to the readme
- added support for setting default yaw angle
- added support for float properties
2017-03-28 16:04:26 +02:00
41414319a5 Merge branch 'master' into wip-storage-backend 2017-03-23 12:06:36 +01:00
1ed31d26e5 Be more explicit in logging which video encoding service is used 2017-03-22 17:08:15 +01:00
c02c6d89b0 Removed unused import 2017-03-22 16:43:04 +01:00
6b526f6b53 Fixed bug in local file storage URL generation. 2017-03-22 16:05:38 +01:00
cce388049d Big refactoring of file storage handling
- Moved pillar.api.utils.{gcs,storage} to pillar.api.file_storage_backends
- Implemented GCS and local storage using abstract Bucket and Blob classes
- Removed file processing from the Blob class, and kept it in the
  file_storage/__init__.py class. That way storage and processing are
  kept separate.
2017-03-22 15:49:56 +01:00
fdfdd38c38 Removed route for direct GCS storage browsing 2017-03-22 15:49:52 +01:00
56b631d4a2 Added type annotations 2017-03-22 15:49:52 +01:00
6eadc09c10 Use __init_subclass__ to register storage backends
See https://docs.python.org/3.6/whatsnew/3.6.html#pep-487-simpler-customization-of-class-creation
2017-03-22 15:49:52 +01:00
1f3d699a0c Ran 2to3 on pillar/api/utils/storage.py 2017-03-22 15:49:52 +01:00
0eb2f17624 Raise exception on not-implemented methods, instead of just pass'ing 2017-03-22 15:49:52 +01:00
47eba6786a Renamed 'file_in_storage' to 'blob' 2017-03-22 15:49:52 +01:00
8934eb8b8d Fix for crash on extension blueprints loading
It the extension was registered with url_prefix=None, we set url_prefix to empty string so it can be added to blueprint.url_prefix.
2017-03-22 15:49:51 +01:00
ae5009c9ef Python 3.6: Fixed issue with gravatar function
Hashing of string object doesn't work. Also added a deprecation warning
that pillar.api.utils.gravatar should be used; pillar.web.utils.gravatar
is just a copy.
2017-03-22 15:49:51 +01:00
dcdcd99393 Python 3.6 compatibility: random bits & bcrypt
Switched from Sybren's RSA library to the new stdlib module 'secrets' to
generate secret tokens. This also means that the rsa library was demoted
to secondary requirement.
2017-03-22 15:49:51 +01:00
2e41c074b5 Python 3.6 compatibility: bytes vs strings stuff
These changes mostly revolve around the change in ObjectId constructor
when running on Python 3.6. Where on 2.7 the constructor would accept
12- and 24-byte strings, now only 12-byte bytes and 24-character strings
are accepted. Good thing, but required some changes in our code.

Other changes include hashing of strings, which isn't supported, so they
are converted to bytes first, and sometimes converted back afterwards.
2017-03-22 15:49:51 +01:00
c2206e6b27 Python 3.6 compatibility: Prevent comparison with None 2017-03-22 15:49:51 +01:00
fb25e3e03f Fixup of syntax error introduced by 2to3 2017-03-22 15:49:51 +01:00
4e138d38a1 Removed no longer compatibility thingy for Python 3 2017-03-22 15:49:51 +01:00
e0c525389f Renamed static.py to staticfile.py
Python 3 supports 'namespace packages', and thus can see a directory
without __init__.py as something importable. This caused a name conflict,
since there were both the file static.py and the dir static.
2017-03-22 15:49:51 +01:00
663627358f Ran 2to3 on pillar + some manual fixups
The 'manual fixups' are:

- incorrect use of dict.items() where dict.iteritems() was meant; this
  results in list(dict.items()), which I changed to dict.items().
- removal of 'from __future__ import' lines, which 2to3 changes into
  empty lines; I removed the empty lines.
2017-03-22 15:49:51 +01:00
e6fb64621f Introducing GOOGLE_SITE_VERIFICATION
Used for cross-verification on various Google sites (eg. YouTube) . By default it is not rendered in the pages.
2017-03-21 15:45:36 +01:00
1eb1cd7b64 Fix for crash on extension blueprints loading
It the extension was registered with url_prefix=None, we set url_prefix to empty string so it can be added to blueprint.url_prefix.
2017-03-12 18:46:08 +01:00
a0a8257df0 Python 3.6: Fixed issue with gravatar function
Hashing of string object doesn't work. Also added a deprecation warning
that pillar.api.utils.gravatar should be used; pillar.web.utils.gravatar
is just a copy.
2017-03-03 14:42:13 +01:00
3fe9472d27 Python 3.6 compatibility: random bits & bcrypt
Switched from Sybren's RSA library to the new stdlib module 'secrets' to
generate secret tokens. This also means that the rsa library was demoted
to secondary requirement.
2017-03-03 14:16:29 +01:00
a9e40ccf10 Python 3.6 compatibility: bytes vs strings stuff
These changes mostly revolve around the change in ObjectId constructor
when running on Python 3.6. Where on 2.7 the constructor would accept
12- and 24-byte strings, now only 12-byte bytes and 24-character strings
are accepted. Good thing, but required some changes in our code.

Other changes include hashing of strings, which isn't supported, so they
are converted to bytes first, and sometimes converted back afterwards.
2017-03-03 14:14:36 +01:00
6fb58a3f26 Python 3.6 compatibility: Prevent comparison with None 2017-03-03 14:10:47 +01:00
60c608d095 Fixup of syntax error introduced by 2to3 2017-03-03 12:33:23 +01:00
82157af84b Removed no longer compatibility thingy for Python 3 2017-03-03 12:32:21 +01:00
b65dd49aa6 Renamed static.py to staticfile.py
Python 3 supports 'namespace packages', and thus can see a directory
without __init__.py as something importable. This caused a name conflict,
since there were both the file static.py and the dir static.
2017-03-03 12:01:38 +01:00
7c055b5f56 Ran 2to3 on pillar + some manual fixups
The 'manual fixups' are:

- incorrect use of dict.items() where dict.iteritems() was meant; this
  results in list(dict.items()), which I changed to dict.items().
- removal of 'from __future__ import' lines, which 2to3 changes into
  empty lines; I removed the empty lines.
2017-03-03 12:00:30 +01:00
647ae0f3d6 Fixed create_from_file(filename) bug (should be file obj, not name) 2017-03-01 08:56:26 +01:00
e5b4ce0890 GoogleCloudStorageBucket.gcs_bucket → _gcs_bucket
Added a few FIXME comments where _gcs_bucket is used outside of the class.
2017-03-01 08:56:26 +01:00
27df603299 Started moving processing function in subclasses 2017-03-01 08:56:26 +01:00
4d6bf65a99 Attempt at proper naming
Using Bucket and Blob as base classes.
2017-03-01 08:56:26 +01:00
c06533db5b Breaking stuff by introducting decorator & abstract base class stuff. 2017-03-01 08:56:26 +01:00
b3b9c68486 Fixed uploading of images.
Thumbnailing is still broken, though.
2017-03-01 08:56:26 +01:00
aecab0561e WIP introducing STORAGE_BACKEND
We introduce two new classes StorageBackend and FileInStorage, which
are subclassed by CGS and local Pillar. This makes supporting multiple
storage solutions easier.
2017-03-01 08:56:26 +01:00
4570b4637b Move attachment parsing on the node level 2017-02-27 16:23:21 +01:00
6765276519 Introducing attachments fixes for blog posts and assets.
Requires migration of attachments schema using
python manage.py maintenance upgrade_attachment_schema --all
2017-02-21 18:08:42 +01:00
0a86ad357f Analytics for videojs 2017-02-08 16:27:52 +01:00
089b0f1535 Own copy of videojs 5.8.8 2017-02-02 16:57:31 +01:00
eb02fa5eec Replace Flowplayer with the open source Video.js library 2017-02-02 16:06:41 +01:00
2b528f0fff Added pillar.api.utils.bsonify(some_dict)
It was used in an experiment in Flamenco as an alternative to JSON; it
might still be used in the future if BSON turns out to be significantly
faster to generate.
2017-01-24 09:19:24 +01:00
e3fc5d1b9b Initial support for AMP (Accelerated Mobile Pages)
https://www.ampproject.org/

Basic implementation. Still needs the node description to be parsed,
as <img> tags need to be <amp-img> with special tags.
2017-01-23 15:47:14 +01:00
604d6c1a07 Added pillar.web.utils.last_page_index()
This returns the last page number (base-1) of a paged Eve result.
2017-01-19 15:13:01 +01:00
129ec94608 Renamed flamenco.jobs to flamenco_jobs 2016-12-14 14:48:37 +01:00