d60a1878e7
Skip missing keys in convert_datetime
2016-04-26 17:33:36 +02:00
e6ef3c2332
Pass empty password when using token
2016-04-13 15:32:10 +02:00
463eb068f6
Ensuring more projections
2016-04-13 15:31:58 +02:00
9a51c82d9a
Added util function for filename sanitation
2016-03-22 14:32:34 +01:00
dac5d638da
Added support for saving Pillar resources as JSON.
2016-03-22 12:42:31 +01:00
2c39a88cfe
Removed unused import
2016-03-22 12:42:13 +01:00
20a9c61fac
Include link & link_expires in mandatory projections for File.
2016-03-22 12:41:41 +01:00
886e3c7eaf
Sort parameters on the URL to allow caching.
...
Python randomizes dict item order with a random seed, which changes every
time Python/Blender is run. As a result, Pillar GET parameters on the URL
would change, making them uncachable. Sorting the parameters solves this.
2016-03-18 16:37:16 +01:00
1ec234716a
Log to 'pillarsdk.api' logger, instead of the root logger.
...
Also switched to percent-formatting, as this allows the logging module
to skip string formatting altogether if the log entry is filtered out
(for example for INFO messages on a logger with level=WARNING).
2016-03-18 14:00:55 +01:00
c8cc82f96b
Don't assume UTF-8, just use content encoding from HTTP headers.
2016-03-18 13:56:26 +01:00
2ef050dd8f
Simplified code
2016-03-18 12:41:36 +01:00
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
914e8f9eaa
Moved _ensure_projections(...) up from Find to Resource
...
It's now also used in List
2016-03-18 10:59:57 +01:00
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
42fd0aebd9
Added doc string for remove_none_attributes
2016-03-16 16:08:02 +01:00
b690755b84
Made utils.merge_dict None-safe, and removed lots of "thing or {}"
2016-03-11 10:24:19 +01:00
9284671ca7
PEP8 formatting
2016-03-11 10:23:46 +01:00
8a652ec455
Nuked the prints
2016-03-11 10:23:12 +01:00
379fee60a8
Added required projections on Node class
2016-03-09 17:32:11 +01:00
d9921667ce
Replace Activity with ActivitySubscription
2016-03-09 16:56:50 +01:00
6ff7adeb27
Use utils.remove_none_attributes in more methods
2016-03-09 16:56:50 +01:00
bdecff27d4
Added downloading thumbnails to file
2016-03-09 14:00:59 +01:00
8c34f04bc6
Adds generic way of adding extra projections to Pillar queries
2016-03-09 14:00:33 +01:00
949f140981
Simplified thumbnail code
2016-03-09 13:59:47 +01:00
4179bf2bd8
Add required projections to File.find()
...
Without these, Pillar will throw KeyErrors.
2016-03-09 12:42:19 +01:00
1a1c2c51fe
Added parameter support to Resource.find()
...
This makes the overrides in subclasses unnecessary
2016-03-09 12:41:52 +01:00
ec11e82f32
PEP8 formatting
2016-03-09 12:40:19 +01:00
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
87ebdb0b2f
Removed six from requirements, as Blender isn't shipped with it.
2016-03-08 16:01:22 +01:00
418b15caf4
Added dict → JSON and unicode → UTF8 conversion for URL parameters.
2016-03-08 13:52:51 +01:00
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
bc1a146ef2
New remove_none_attributes utility
...
Returns a new dict with all None values removed.
2016-03-05 23:18:40 +01:00
bec21e14e6
Support for gravatar in User
2016-03-05 23:18:20 +01:00
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
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
819245762a
Fix for typo
2016-03-04 15:46:39 +01:00
083c8216f0
Strip embedded files form Project on update
2016-02-09 17:15:49 +01:00
9f939e9319
Minor tweak to node_type_has_method
2016-01-28 12:59:38 +01:00
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
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
928e6d06f8
Allow use of internal file variations
2015-11-25 16:15:07 +01:00
c2db3eb4cd
Fixes for mixing exception call
2015-11-05 00:23:20 +01:00
227d13c45f
Added function to rebuild Resource from a dictionary
2015-11-04 12:54:55 +01:00
84e94a29c1
Now the thumbnail function support multiple backends
2015-11-04 12:54:24 +01:00
49685cfcb2
Fix for typo
2015-11-01 22:54:59 +01:00
bdeaae71b4
Tweak to debug prints for http response
2015-10-30 23:35:50 +01:00
1afc0a2716
Organization import was missing for use in pillarsdk
2015-10-28 20:34:36 +01:00
3fd5fdf154
Missing argument for .pop('_links') on Node update
2015-10-20 14:57:16 +02:00
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
9a6af611da
Added has_method to NodeType
2015-10-20 11:38:34 +02:00