Commit Graph

77 Commits

Author SHA1 Message Date
Sybren A. Stüvel 0fd043ecb8 Support session objects.
This not only improves general performance by sharing socket connections
between HTTP calls, but also allows for caching with Requests-Cache.
2016-03-18 12:41:24 +01:00
Sybren A. Stüvel 914e8f9eaa Moved _ensure_projections(...) up from Find to Resource
It's now also used in List
2016-03-18 10:59:57 +01:00
Francesco Siddi bcde995e64 Tweak to Project update
Now we use utils.remove_none_attributes to remove None values, and
revert to file _id only if it exists.
2016-03-16 16:08:51 +01:00
Francesco Siddi 42fd0aebd9 Added doc string for remove_none_attributes 2016-03-16 16:08:02 +01:00
Sybren A. Stüvel b690755b84 Made utils.merge_dict None-safe, and removed lots of "thing or {}" 2016-03-11 10:24:19 +01:00
Sybren A. Stüvel 9284671ca7 PEP8 formatting 2016-03-11 10:23:46 +01:00
Sybren A. Stüvel 8a652ec455 Nuked the prints 2016-03-11 10:23:12 +01:00
Sybren A. Stüvel 379fee60a8 Added required projections on Node class 2016-03-09 17:32:11 +01:00
Francesco Siddi d9921667ce Replace Activity with ActivitySubscription 2016-03-09 16:56:50 +01:00
Francesco Siddi 6ff7adeb27 Use utils.remove_none_attributes in more methods 2016-03-09 16:56:50 +01:00
Sybren A. Stüvel bdecff27d4 Added downloading thumbnails to file 2016-03-09 14:00:59 +01:00
Sybren A. Stüvel 8c34f04bc6 Adds generic way of adding extra projections to Pillar queries 2016-03-09 14:00:33 +01:00
Sybren A. Stüvel 949f140981 Simplified thumbnail code 2016-03-09 13:59:47 +01:00
Sybren A. Stüvel 4179bf2bd8 Add required projections to File.find()
Without these, Pillar will throw KeyErrors.
2016-03-09 12:42:19 +01:00
Sybren A. Stüvel 1a1c2c51fe Added parameter support to Resource.find()
This makes the overrides in subclasses unnecessary
2016-03-09 12:41:52 +01:00
Sybren A. Stüvel ec11e82f32 PEP8 formatting 2016-03-09 12:40:19 +01:00
Sybren A. Stüvel ed0630aa7c Added parameter type checking for utils.join_url
This made things a bit easier to debug, while re.sub() raises less
descriptive errors.
2016-03-09 12:40:13 +01:00
Sybren A. Stüvel e6089e07b6 Ignore more 2016-03-09 12:36:02 +01:00
Sybren A. Stüvel 05b0442064 Build universal wheel, as our code should run on Python 2 and 3 2016-03-08 16:01:33 +01:00
Sybren A. Stüvel 87ebdb0b2f Removed six from requirements, as Blender isn't shipped with it. 2016-03-08 16:01:22 +01:00
Sybren A. Stüvel 8a29a20462 Don't measure coverage, it's not working (yet) 2016-03-08 14:02:51 +01:00
Sybren A. Stüvel 418b15caf4 Added dict → JSON and unicode → UTF8 conversion for URL parameters. 2016-03-08 13:52:51 +01:00
Sybren A. Stüvel e86824e5bb Added Tox for unit testing on different versions of Python 2016-03-08 13:51:42 +01:00
Sybren A. Stüvel 77fc1315b0 Don't import the application in setup.py
Importing the application itself is bad practice, as it isn't guaranteed
to be importable before running setup.py.
2016-03-08 13:50:01 +01:00
Francesco Siddi bc1a146ef2 New remove_none_attributes utility
Returns a new dict with all None values removed.
2016-03-05 23:18:40 +01:00
Francesco Siddi bec21e14e6 Support for gravatar in User 2016-03-05 23:18:20 +01:00
Francesco Siddi ae59249196 Introducing Notifications
Currently we make use of the Notification and Activity objects to pull
the relevant information. In the future only Notification will be
needed.
2016-03-05 23:18:04 +01:00
Francesco Siddi f034c9b2d2 Introducing pop_none_attributes
This function allows cleanup of dicts with None values before they get
sent to the validator (and cause potential validation failures).
2016-03-04 15:47:37 +01:00
Francesco Siddi 819245762a Fix for typo 2016-03-04 15:46:39 +01:00
Sybren A. Stüvel 874f107948 PEP8-formatted setup.py 2016-03-02 10:21:07 +01:00
Sybren A. Stüvel 675daf9ef6 Use setuptools instead of distutils 2016-03-02 10:17:51 +01:00
Francesco Siddi 083c8216f0 Strip embedded files form Project on update 2016-02-09 17:15:49 +01:00
Francesco Siddi 9f939e9319 Minor tweak to node_type_has_method 2016-01-28 12:59:38 +01:00
Francesco Siddi a8225cf5a3 Introducing node_type_has_method
Utility method that checks if a given node_type has the requested
method.
2016-01-26 18:27:00 +01:00
Francesco Siddi a8c7b8b37b Merge branch 'projects' 2016-01-25 16:19:55 +01:00
Francesco Siddi 61d8cc32ac Introducing Project object
Project are a new collection, used to group node_types on a per-project
basis.
2016-01-25 16:18:51 +01:00
Francesco Siddi 928e6d06f8 Allow use of internal file variations 2015-11-25 16:15:07 +01:00
Francesco Siddi c2db3eb4cd Fixes for mixing exception call 2015-11-05 00:23:20 +01:00
Francesco Siddi 227d13c45f Added function to rebuild Resource from a dictionary 2015-11-04 12:54:55 +01:00
Francesco Siddi 84e94a29c1 Now the thumbnail function support multiple backends 2015-11-04 12:54:24 +01:00
Francesco Siddi 49685cfcb2 Fix for typo 2015-11-01 22:54:59 +01:00
Francesco Siddi bdeaae71b4 Tweak to debug prints for http response 2015-10-30 23:35:50 +01:00
Francesco Siddi 1afc0a2716 Organization import was missing for use in pillarsdk 2015-10-28 20:34:36 +01:00
Pablo Vazquez 3fd5fdf154 Missing argument for .pop('_links') on Node update 2015-10-20 14:57:16 +02:00
Francesco Siddi c1ff4ba9bb Introducing convert_datetime function
Starting from an JSON object, find and replace the _create and _updated
keys with actual datetime objects.
2015-10-20 13:03:34 +02:00
Francesco Siddi 9a6af611da Added has_method to NodeType 2015-10-20 11:38:34 +02:00
Francesco Siddi 3d392b3b13 Added find_one as a resource class method 2015-10-19 19:09:48 +02:00
Francesco Siddi 92d1dad594 Return ResourceNotFound on find_one if not found 2015-10-15 18:01:25 +02:00
Francesco Siddi 90f8922667 Introducing find_one method for Node resources 2015-10-15 16:11:19 +02:00
Francesco Siddi 5a856c8972 Tweaks to node update method
We override the update method so that the allowed_methods property can
be stripped before being sent to the server, avoiding validation issues.

We also introduce a new has_method method, which can be used in the UI
to check if the user can perform a specific method on the node.
2015-10-12 18:24:57 +02:00