Sybren A. Stüvel
1ed31d26e5
Be more explicit in logging which video encoding service is used
2017-03-22 17:08:15 +01:00
Sybren A. Stüvel
b36dc63335
Added simple mocking test for GCS
2017-03-22 16:43:17 +01:00
Sybren A. Stüvel
c02c6d89b0
Removed unused import
2017-03-22 16:43:04 +01:00
Sybren A. Stüvel
563bb2c244
Added unittest for Bucket.copy_to_bucket()
2017-03-22 16:14:06 +01:00
Sybren A. Stüvel
6b526f6b53
Fixed bug in local file storage URL generation.
2017-03-22 16:05:38 +01:00
Sybren A. Stüvel
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
Sybren A. Stüvel
fdfdd38c38
Removed route for direct GCS storage browsing
2017-03-22 15:49:52 +01:00
Sybren A. Stüvel
56b631d4a2
Added type annotations
2017-03-22 15:49:52 +01:00
Sybren A. Stüvel
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
Sybren A. Stüvel
1f3d699a0c
Ran 2to3 on pillar/api/utils/storage.py
2017-03-22 15:49:52 +01:00
Sybren A. Stüvel
0eb2f17624
Raise exception on not-implemented methods, instead of just pass'ing
2017-03-22 15:49:52 +01:00
Sybren A. Stüvel
47eba6786a
Renamed 'file_in_storage' to 'blob'
2017-03-22 15:49:52 +01:00
Pablo Vazquez
ec1db0a725
Groups view: Background gradient gray doesn't look good
2017-03-22 15:49:51 +01:00
Pablo Vazquez
04a235ca12
Larger image for collections header
2017-03-22 15:49:51 +01:00
Pablo Vazquez
5b59d6b6b1
Slightly bigger thumbnail size for posts in homepage
2017-03-22 15:49:51 +01:00
Pablo Vazquez
0e6bdf9467
Update CSS caches
2017-03-22 15:49:51 +01:00
Pablo Vazquez
6d1f81b26a
Minor tweaks to homepage listing
...
Thumbnails are now slightly larger (22px wider), and did some rearrangement
2017-03-22 15:49:51 +01:00
Pablo Vazquez
a000176db9
Tweaks to group listing
...
Non-square thumbnails, always display icon type
2017-03-22 15:49:51 +01:00
Pablo Vazquez
9f49140230
Video Player: Vertical volume slider and loop by default
2017-03-22 15:49:51 +01:00
Francesco Siddi
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
Sybren A. Stüvel
26f8a3fec7
Synced dev requirements with Pillar Python SDK
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
49500570d4
Added missing redis requirement
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
b2b3e8acf1
Fixed version conflict with pillarsdk dev requirements
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
67bce48de8
Auto-install -e pillar
...
It uses ../pillar instead of . so that it is a valid path from blender-cloud as well.
2017-03-22 15:49:51 +01:00
Francesco Siddi
3d1c8625a3
Remove redundant requirement
...
It is already defined in requirements.txt in pillar-python-sdk.
2017-03-22 15:49:51 +01:00
Francesco Siddi
41600f208e
Remove Linux venv specific dependencies
...
Was giving install error on macOS.
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
ef6e76f153
Upgraded development requirements to speed up code coverage recording
...
Removed requests from requirements.txt file, because it's already a req
of pillar-python-sdk.
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
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
Sybren A. Stüvel
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
Sybren A. Stüvel
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
Sybren A. Stüvel
c2206e6b27
Python 3.6 compatibility: Prevent comparison with None
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
c58d616bfc
Don't run failed unittests first.
...
This can cause false positives when the failure was caused by inter-test
interference.
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
fb25e3e03f
Fixup of syntax error introduced by 2to3
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
16b2b119fd
Referring to Pillar Python SDK requirements
...
This forces us to remove common requirements from Pillar's requirements.txt
file (which is a good thing).
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
4e138d38a1
Removed no longer compatibility thingy for Python 3
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
bced6cae68
Ran 2to3 on unittests, same sort of manual fixups as before
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
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
Sybren A. Stüvel
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
Sybren A. Stüvel
10b3318419
Added development requirements to requirements-dev.txt
...
In this commit (and the previous ones on requirements files) I haven't
changed the package versions. Upgrading our dependencies is for another
time.
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
c2c19bd6f3
Removed development requirements and unused secondary requirements.
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
1266d4b5d9
Made requirements.txt py36-compatible
...
Some packages had to be removed; they are deployment-specific anyway,
and may not even be needed any more.
I've also added some secondary requirements that weren't specified yet.
The next steps will be to split into runtime and development requirements.
2017-03-22 15:49:51 +01:00
Sybren A. Stüvel
647ae0f3d6
Fixed create_from_file(filename) bug (should be file obj, not name)
2017-03-01 08:56:26 +01:00
Sybren A. Stüvel
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
Francesco Siddi
27df603299
Started moving processing function in subclasses
2017-03-01 08:56:26 +01:00
Francesco Siddi
4d6bf65a99
Attempt at proper naming
...
Using Bucket and Blob as base classes.
2017-03-01 08:56:26 +01:00
Sybren A. Stüvel
c06533db5b
Breaking stuff by introducting decorator & abstract base class stuff.
2017-03-01 08:56:26 +01:00
Sybren A. Stüvel
b3b9c68486
Fixed uploading of images.
...
Thumbnailing is still broken, though.
2017-03-01 08:56:26 +01:00
Francesco Siddi
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
Francesco Siddi
4570b4637b
Move attachment parsing on the node level
last-py27
2017-02-27 16:23:21 +01:00
Francesco Siddi
e381ca774e
On Page load use replaceState instead of pushState
...
Fix T50797 and replace the id-based url with a custom url for page in the browser's history.
2017-02-27 13:08:56 +01:00