Commit Graph

419 Commits

Author SHA1 Message Date
Charles Haro
2a39f5d8ea Allow abstract Connection Class to DjangoObjectType
referred to as connection_class, it will instantiate the connection from the provided class or default to graphene.Connection if not supplied
2017-10-30 14:35:29 -07:00
Syrus Akbary
5051d3bb61 Fixed lint 2017-10-25 10:54:13 -07:00
Syrus Akbary
de3947351b Updated graphene-django to 2.0 🎉 2017-10-25 10:49:37 -07:00
Jacob
1d76db8164 Use super for base queryset logic 2017-10-14 13:23:08 -05:00
Cameron Dawson
69cec060d8 Fix select_related with filtering 2017-10-14 13:23:08 -05:00
Grant McConnaughey
bf7ad7eeda Test invalid forms 2017-10-02 13:15:29 -05:00
Grant McConnaughey
463ce68b16 Change mutations to new 2.0 format 2017-10-02 13:03:20 -05:00
Grant McConnaughey
666ddb2ff3 Merge form converter modules 2017-10-02 09:42:57 -05:00
Grant McConnaughey
f5083cb190 Change form valid method names 2017-10-02 09:32:36 -05:00
Grant McConnaughey
4f904f4700 Test mutation 2017-10-02 09:31:58 -05:00
Grant McConnaughey
80a06a0354 Fix flake8 issue 2017-10-02 09:31:58 -05:00
Grant McConnaughey
26a4d315c5 Use options correctly 2017-10-02 09:31:58 -05:00
Grant McConnaughey
f034946cda Add Django form-based mutations 2017-10-02 09:31:58 -05:00
Ivan Belokobylskiy
459d7df42b Access to batch endpoint without parameters fixed
ValueError: max() arg is an empty sequence exception fixed
2017-09-27 18:46:32 +03:00
Syrus Akbary
55f9d72ecc Updated dev version 2017-09-01 01:19:22 -07:00
Syrus Akbary
2a73e5e479 Fixed flake 2017-09-01 00:52:57 -07:00
Syrus Akbary
728bcacb0e Merge pull request #261 from q3aiml/fix-serializermutation-regression
fix various SerializerMutation regressions
2017-09-01 00:47:34 -07:00
Andy Clayton
c130490b4f ensure SerializerMutation.errors is None on success in 2.x
Upon success the result was correct but also included:

"errors": [
  {
    "message": "User Error: expected iterable, but did not find one
for field <SerializerMutation_Subclass>Payload.errors."
  }
]

This seemed to be due to Payload.errors defaulting to graphene.List
rather than unset or None. Unsure what exactly changed with 2.x to break
this, so I welcome a better fix, but explicitly setting errors to None
also seems easy enough.
2017-08-31 12:37:54 -05:00
Andy Clayton
cc58b91e43 fix SerializerMutation regression for 2.x
72529b7 seems to break SerializerMutation by commenting out support for
input fields. As a result input only ever had a clientMutationId field.
2017-08-31 12:21:50 -05:00
Syrus Akbary
a4cc360184 Merge branch 'master' into fix-deprecation-warnings 2017-08-29 22:33:10 -07:00
Abram Booth
be20450a66 Don't break on inherited choices fields.
Store converted Django fields in the registry, so choices enums are not
created multiple times when inherited by child models.
2017-08-24 12:49:02 -04:00
Ed Morley
b0df510872 Remove usages of deprecated field.rel
Since they were only required for Django <1.8 and cause the following
deprecation warnings:

```
utils.py:61: RemovedInDjango20Warning: Usage of field.rel has been deprecated. Use field.remote_field instead.
    if hasattr(field, 'rel'):
utils.py:63: RemovedInDjango20Warning: Usage of ForeignObjectRel.to attribute has been deprecated. Use the model attribute instead.
    return field.rel.to
```

Fixes #242.
2017-08-14 14:01:04 +01:00
Syrus Akbary
872ce3922e Added support for wheel package 2017-07-31 22:46:27 -07:00
Syrus Akbary
3d58148f03 Code adapted to new resolver API 2017-07-28 09:43:27 -07:00
Bas Stottelaar
4bdcf054eb Pass context object to FilterSet instance to support request-baed filtering (fixes #203). 2017-07-28 16:46:39 +02:00
Syrus Akbary
64118790ff Fixed list resolver 2017-07-26 23:41:34 -07:00
Syrus Akbary
6ceb07c51c Improved resolver consistency 2017-07-26 23:36:08 -07:00
Syrus Akbary
72529b70bb Fixed all tests and flake issues 2017-07-24 23:42:40 -07:00
Syrus Akbary
48bcccdac2 Improved integration with Graphene 2.0 2017-07-24 22:27:50 -07:00
Syrus Akbary
18db46e132 Removed Meta inheritance in favor of __init_subclass_with_meta__ 2017-07-24 22:27:26 -07:00
Syrus Akbary
1bddae1ced Merge pull request #214 from khankuan/patch-3
Updated graphiql version for new features
2017-07-23 21:15:50 -07:00
Syrus Akbary
6ad64ddbef Merge pull request #186 from patrick91/feature/rest-framework
Support for Django Rest Framework serializers
2017-07-23 21:12:20 -07:00
Jacob Foster
afbe6c90b7 Add nested model mutation tests 2017-07-18 14:02:29 -05:00
Jacob Foster
81a6dff9d0 Update field converter tests 2017-07-18 14:02:28 -05:00
Kuan
2790f3bc02 Updated graphiql version for new versions 2017-07-13 15:14:06 -07:00
Jacob Foster
ee23638378 Add converters for datetime fields 2017-07-11 13:35:12 -05:00
Jacob Foster
302ea0d3cf Account for nested ModelSerializers 2017-07-11 13:29:30 -05:00
Patrick Arminio
93bbc194bf Add missing new line 2017-06-29 09:59:21 +01:00
Syrus Akbary
0588f89b89 Merge pull request #148 from khankuan/patch-2
Fix graphiql refreshing operationName undefined
2017-06-28 20:53:32 -07:00
Syrus Akbary
7263485225 Merge pull request #194 from dvdmgl/173-annotation-bug
Fix graphene 1.3 annotation bug
2017-06-28 20:53:01 -07:00
Patrick Arminio
5c3306e78d Return empty errors when successful 2017-06-26 18:16:55 +01:00
Patrick Arminio
000ef6c42e Fix result from mutation 2017-06-26 18:03:01 +01:00
Patrick Arminio
7888fa76fb Restore django filter check 2017-06-26 15:31:34 +01:00
Patrick Arminio
1a04d608ed Add support for MultipleChoiceField 2017-06-26 14:32:57 +01:00
Patrick Arminio
510ee9383e Add support for JSONField 2017-06-26 14:28:03 +01:00
Patrick Arminio
0e2c736c74 Add test for image field 2017-06-26 14:26:26 +01:00
Patrick Arminio
66d1875eb7 Fix missing path 2017-06-26 14:25:57 +01:00
Patrick Arminio
b500ffb8b0 Add test for IPAddressField 2017-06-26 14:24:16 +01:00
Patrick Arminio
47c5dfcab7 Add test for FilePathField 2017-06-26 14:23:45 +01:00
Patrick Arminio
772e2d114a Add test for file field 2017-06-26 14:23:17 +01:00
Patrick Arminio
a7c3337903 Add test for duration field 2017-06-26 14:22:38 +01:00
Patrick Arminio
68f6281ec8 Add support for dict field 2017-06-26 14:19:55 +01:00
Patrick Arminio
f747102e35 Add support for rest framework List Field 2017-06-26 12:14:04 +01:00
Patrick Arminio
6de3bbc352 Small test refactor 2017-06-26 12:11:35 +01:00
Patrick Arminio
d10895d9ce Refactor converter 2017-06-26 11:36:48 +01:00
Patrick Arminio
c3899248af Use six.with_metaclass to support python 2.7 2017-06-26 09:19:49 +01:00
Patrick Arminio
14bc1cdb92 Add SerializerMutation base class 2017-06-26 09:19:49 +01:00
Patrick Arminio
2fd3cb032c Fix import on python 2 2017-06-26 09:19:49 +01:00
Patrick Arminio
fb2af7067f Initial implementation of serializer field converter 2017-06-26 09:19:49 +01:00
Syrus Akbary
7c52aa3c7f Merge pull request #180 from arianon/master
Make DjangoConnectionField compatible with Promise-based iterables.
2017-06-24 15:44:51 -07:00
Syrus Akbary
3667157e4a Merge pull request #145 from dotsbb/fix-too-broad-exception
Wrong error message "invalid JSON" when "RequestDataTooBig" raised
2017-06-24 15:44:15 -07:00
Syrus Akbary
7eb4106e7c Merge pull request #202 from patrick91/feature/up-django
Remove support to django 1.6 and 1.7
2017-06-24 15:43:35 -07:00
Patrick Arminio
82055ac109 Add missing imports 2017-06-23 13:05:11 +01:00
Patrick Arminio
712d57e043 Delete RelatedObject import 2017-06-23 12:51:19 +01:00
Patrick Arminio
7fd6125199 Fix compatibility with pypy 2017-06-23 12:48:32 +01:00
Patrick Arminio
245ebe3d91 Remove some compatility layers for django 1.6 2017-06-23 12:32:43 +01:00
David Miguel
b3c761b1c8 Fix graphene 1.3 annotation bug
Issue #173
2017-06-06 19:19:29 +01:00
Jacob Foster
95510987f1 Reorganize for clarity 2017-05-25 11:15:13 -05:00
Jacob Foster
74e4e1aa77 Drop reverse flag, remove duplicates in get_model_fields 2017-05-25 11:01:29 -05:00
Jacob Foster
ca06d74195 Make test sort for stable comparison 2017-05-22 17:36:00 -05:00
Jacob Foster
cfe38ae208 Add tests 2017-05-22 17:20:56 -05:00
Jacob Foster
7a765537e9 Only evaluate reverse M2Ms in get_reverse_fields 2017-05-22 16:43:20 -05:00
arianon@openmailbox.org
bfcac1d48c Use Promise.then instead of Promise.get on DjangoConnectionField 2017-05-19 19:33:00 -04:00
arianon@openmailbox.org
4350582c52 Support Connections created from Promises 2017-05-19 19:12:28 -04:00
Syrus Akbary
46a1ddedd8 Added RELAY_CONNECTION_MAX_LIMIT and RELAY_CONNECTION_ENFORCE_FIRST_OR_LAST settings
Relay connections will be limited to 100 records by default.
2017-04-15 02:15:17 -07:00
Syrus Akbary
cc03da0598 Moved tests to filter field tests 2017-04-15 01:17:53 -07:00
Syrus Akbary
5833cb83be Fixed filterset limit issue 2017-04-15 01:00:02 -07:00
Syrus Akbary
055c6e2359 Merge branch 'master' into fix-filter-and-resolver 2017-04-15 00:04:19 -07:00
Kuan
8eb881e085 Fix graphiql refreshing operationName undefined
operationName is serialized into the query string as a string. When getting the query value for operationName, we need to convert string "null" into None.
2017-04-13 10:11:10 -07:00
Alexey Subbotin
33b2b42e6f Rewrite unit test to make it working on all versions of django 2017-04-12 13:04:03 +02:00
Alexey Subbotin
a9f34dab93 request.body might raise RawPostDataException, RequestDataTooBig, UnreadablePostError exceptions which are not related to invalid JSON data 2017-04-12 12:43:21 +02:00
Syrus Akbary
eb02f8781c Merge pull request #74 from momamene/fix-reverse-fields-name
#63 Get name of reverse_fields from model.__dict__
2017-03-15 21:37:48 -07:00
Sam Parkinson
46048cd218
Add tests for DjangoObjectType only/exclude_fields 2017-03-11 07:40:04 +11:00
Niall
2117cb2b01 Example for order_by being ignored 2017-03-06 20:19:39 +00:00
Niall
7210e308ec Fix test 2017-03-06 20:00:01 +00:00
Niall
fda876fdc2 Long-winded intersection using sets 2017-03-06 19:41:45 +00:00
Niall
e2284fefb5 Clean up 2017-03-06 18:20:31 +00:00
Niall
69457cffdf Attempt fix. Breaks tests 2017-03-06 18:13:40 +00:00
Niall
67804fdc09 Add broken test 2017-03-05 19:17:00 +00:00
Niall
7085437a12 Fix filtering with a resolver and DjangoFilter filter. 2017-03-05 17:13:09 +00:00
Syrus Akbary
1139507a14 Merge pull request #123 from HorizonXP/fix-batch-response-format
Remove payload key from response and stick to original format.
2017-03-04 18:25:12 -08:00
Xitij Ritesh Patel
f720912415 Update tests to expect new batch response format 2017-03-03 15:04:22 -05:00
Syrus Akbary
335339c7a8 Fixed Django 1.8 issue 2017-03-02 18:38:03 -08:00
Syrus Akbary
87f0c33983 Merge pull request #118 from gamingexperience/fix/node-filtery-efficiency
Avoids redundant filtering with non-nested nodes.
2017-03-02 18:04:06 -08:00
Syrus Akbary
4cc46736bf Simplified DjangoFilterConnectionField logic 2017-03-02 18:00:05 -08:00
Xitij Ritesh Patel
9eb339e2e3 Remove payload key from response and stick to original format. 2017-03-02 01:47:28 -05:00
Tony Angerilli
57dbcd34f4
Merge remote-tracking branch 'remote/master' into recursive-nodes 2017-02-28 23:40:46 -08:00
Pablo Chinea
7f471252da Avoids redundant filtering with non-nested nodes. 2017-02-23 14:24:25 +00:00
Syrus Akbary
2660de969f Improved batch view tests 2017-02-20 01:58:21 -08:00
Syrus Akbary
f217731066 Improved GraphQL batch view errors. 2017-02-20 01:58:21 -08:00
Syrus Akbary
0ec8d2c828 Merge pull request #104 from Tritlo/skip-registry
Allow nodes to skip the registry
2017-02-18 13:03:22 -08:00
Matthías Páll Gissurarson
aed7229bae Allow nodes to skip the registry 2017-02-02 20:29:21 +01:00
Nick Hudkins
15664bdc0b accept connections for DjangoFilterConnectionField 2017-01-27 10:47:56 -05:00
Tony Angerilli
e82ee8816c
Revert "adding the option of defining a filterset_class in the Meta class"
This reverts commit 9b1c1b4bad.
2017-01-23 22:18:09 -08:00
Elena
9b1c1b4bad adding the option of defining a filterset_class in the Meta class 2017-01-23 17:40:07 -08:00
Syrus Akbary
2d1ab4b92a Merge pull request #82 from gamingexperience/fix/node-filtering
Fixes filtering in nested nodes.
2017-01-14 18:35:52 -08:00
Nick Hudkins
0200b3244c Merge branch 'master' into recursive-nodes 2017-01-13 10:16:13 -05:00
Pablo Chinea
89d0f0ca92 Handles multiple collisions with the same key. 2017-01-05 09:49:26 +00:00
Pablo Chinea
2c26774c62 Avoid collisions in choices names conversion. 2017-01-04 16:23:17 +00:00
Pablo Chinea
16a0d9ce58 Fixes identation in queries test file. 2016-12-30 12:27:45 +00:00
Pablo Chinea
b5a450cb6d Fixes nested node test when django-filter is not installed. 2016-12-30 09:57:50 +00:00
Pablo Chinea
dfb55cda6b Adds test for nested node filtering. 2016-12-30 09:34:59 +00:00
Pablo Chinea
b26f914b54 Fixes filtering in nested nodes. 2016-12-29 15:40:12 +00:00
momamene
45542b6a93 Remove meaningless guard 2016-12-14 12:13:11 +00:00
momamene
8bb55ed79d Get name of reverse_fields from model.__dict__ 2016-12-14 08:13:46 +00:00
Paul Bailey
aa6edfc62c Merge remote-tracking branch 'upstream/master' 2016-11-28 12:55:20 -05:00
Paul Bailey
10699c0b6b added time field 2016-11-23 12:25:59 -05:00
Paul Bailey
402cd645e8 added time field test 2016-11-23 12:24:53 -05:00
Paul Bailey
509645d3bd added time field test 2016-11-23 12:07:40 -05:00
Paul Bailey
91365ff670 added timefield support 2016-11-23 11:29:04 -05:00
Syrus Akbary
9216772315 Removed unused imports 2016-11-23 02:30:14 -08:00
Syrus Akbary
b3fbac5818 Fixed tests 2016-11-23 02:28:21 -08:00
Syrus Akbary
8dfe7bbcf5 Remove filter order_by as Django Filters have deprecated it in 1.0 2016-11-23 02:15:05 -08:00
Syrus Akbary
48993ddca0 Fixed order_by 2016-11-23 01:20:10 -08:00
Tony Angerilli
207f4ebb41 added a test and made the type property better 2016-11-14 23:44:50 -08:00
Syrus Akbary
d8567f1c58 Fixed JSONField import only in Django 1.9+. Fixed #40 2016-11-14 23:07:45 -08:00
Syrus Akbary
96236408c5 Fixed lint issue 2016-11-14 22:34:49 -08:00
Syrus Akbary
5289cd06d7 Improved choice Enum converter 2016-11-14 22:30:20 -08:00
Syrus Akbary
854aa4aa9b Fixed tests 2016-11-14 22:30:20 -08:00
Tony Angerilli
dc6e8f110a fix typo 2016-11-14 10:40:47 -08:00
Tony Angerilli
73f4a92b4f Merge branch 'master' into recursive-nodes 2016-11-14 00:32:56 -08:00
chaffeqa
a6d3887fb3 Fix missing operation_name warning 2016-11-11 14:35:41 -05:00
Timothy Laurent
1fdd7756ec better endswith 2016-11-10 10:16:44 -08:00
Timothy Laurent
aa6be2c527 cast name to string 2016-11-10 00:19:35 -08:00
Timothy Laurent
6801b69ce9 don\'t use fields that end in a plus 2016-11-09 23:56:14 -08:00
Syrus Akbary
a7caad0cf4 Merge pull request #38 from TangoAgency/batch
Add support for batching several requests into one
2016-11-02 20:48:10 -07:00
Michał Ochman
6bd89f2c78 Fix UnboundLocalError occurrences 2016-10-31 12:16:58 +01:00
Michał Ochman
0a18558bf6 Add support for batching several requests into one
Batch format compatible with ReactRelayNetworkLayer (https://github.com/nodkz/react-relay-network-layer)
2016-10-31 12:03:56 +01:00
Beau Barker
87422a0e40 Display variables as JSON in GraphiQL
Closes #36
2016-10-31 13:05:30 +11:00
Tony Angerilli
3e5ae5a3d1 don’t try to access the type until after initialization
this allows for fields in a node (using a DjangoFilterConnectionField) that reference themselves
2016-10-21 17:41:07 -07:00
cph
62d3eb911a add indent support for graphql_schema command 2016-10-17 15:08:04 +08:00
Syrus Akbary
60bcc0beef Use filter label as argument description. Fixed #16 2016-10-15 18:21:54 -07:00
Syrus Akbary
775221c427 Fixed returns in class init 2016-10-15 18:19:34 -07:00
Syrus Akbary
d73f4aa235 Added support for SimpleLazyObject. Fixed #22 2016-10-15 17:40:12 -07:00
Syrus Akbary
8136223bb1 Added duration field and improved UUID conversion 2016-10-15 16:43:27 -07:00
Syrus Akbary
459270cc09 Fixed tests 2016-10-15 16:04:32 -07:00
Syrus Akbary
3a9ffba560 Merge pull request #23 from morgante/fix_choice_enums
Fix #19 by using choice keys as enum keys, not choice descriptions
2016-10-15 15:58:29 -07:00
Morgante Pell
5ad21f1765
Fix #19 by using choice keys as enum keys, not choice descriptions 2016-10-13 22:01:54 -04:00
Morgante Pell
900354837e
Fix id lookup to handle cases where the primary key of the Django model is not called ID 2016-10-13 02:52:58 -04:00
Syrus Akbary
1a728e4e88 Fixed tests 2016-09-22 20:49:51 -07:00
Syrus Akbary
b8f9fec674 Added required conversion to model and form fields. Fixed #2 2016-09-22 20:03:47 -07:00
Syrus Akbary
7fbc3e69b1 Improved Django List retreival and added extra tests. 2016-09-21 19:34:30 -07:00
Syrus Akbary
9cfe337032 Merge pull request #4 from DeskConnect/to-many-field
Added a DjangoToManyField to handle to-many relationships
2016-09-21 19:18:31 -07:00
Syrus Akbary
b65afdc8c9 Merge pull request #6 from BossGrand/master
Fixed a bug that was causing graphql_schmea command to not import properly
2016-09-21 19:12:52 -07:00
BossGrand
1cb5f24f5b Fixed a bug that was causing graphql_schmea command to not import properly 2016-09-21 14:57:47 -07:00
Syrus Akbary
c8c403edfd Fixed django-filter integration (0.15) 2016-09-20 23:50:28 -07:00
Conrad Kramer
17178cfcbf Added a DjangoToManyField to handle to-many relationships
To-many relationships return a manager, which needs to be turned
into an iterable (its queryset) using `maybe_queryset`.
2016-09-20 21:25:05 -07:00
Syrus Akbary
34f3c72da6 Updated middleware view management 2016-09-20 00:08:14 -07:00
Syrus Akbary
317c8ceec4 Ensure CSRF cookie is set. Updated dev version 2016-09-19 23:14:59 -07:00
Syrus Akbary
f806fefff3 Fixed tests 2016-09-19 22:53:56 -07:00
Syrus Akbary
8caa2cd00f Fixed middleware 2016-09-19 22:38:27 -07:00
Syrus Akbary
70dbd4b512 Improved PEP8 syntax 2016-09-19 22:15:10 -07:00
Syrus Akbary
d11719507c Fixed tests 2016-09-19 22:11:48 -07:00
Syrus Akbary
3aa929fdc9 Moved django-graphql-view and django-graphiql into graphene-django 😎 2016-09-19 22:04:23 -07:00
Syrus Akbary
459e390b47 Fixed connection field if django-filter is not installed 2016-09-17 18:41:14 -07:00
Syrus Akbary
5cba3f67fe Fixed OneToOneField Django 1.6+ bug 2016-09-17 18:11:38 -07:00
Syrus Akbary
7756b0df8f Fixed Python3 tests 2016-09-17 17:28:41 -07:00
Syrus Akbary
4e23c3ccf6 Improved python syntax and sorts (pep8). Improved Readme 2016-09-17 17:09:56 -07:00
Syrus Akbary
0434899b4e Isolated Graphene Django in a new package 2016-09-17 16:31:17 -07:00