Commit Graph

388 Commits

Author SHA1 Message Date
sierreis
5c191b9062 Add support for filterset_class meta parameter
* Allow for use of either filter_fields or filterset_class
* Add tests to check that the behavior is similar to filter_fields
* Add documentation to show how to make use of the parameter
2019-03-25 00:38:49 -04:00
Adam Johnson
ea2cd9894f Always use HTTPS for CDN files (#498)
* Always use HTTPS for CDN files

There's no point using insecure, deprecated HTTP even if the current page is on HTTP.

* add integrity and crossorigin attributes
2019-03-19 20:34:10 +00:00
Jonathan Kim
297b807f96
Merge pull request #508 from danpalmer/graphiql-no-querystring
Improve Security of GraphiQL
2019-03-16 11:30:32 +00:00
Jonathan Kim
ce8fa7f9f2 Fix lint error 2019-03-09 22:39:04 +01:00
Syrus Akbary
f76f38ef30
Merge pull request #512 from kalekseev/schema-to-stdout
Provide a way to dump schema to stdout.
2018-09-09 22:49:53 +02:00
Dan Palmer
2b08e59bea
Revert to default query execution behaviour
The only security risk here is persuading a user to execute a mutation,
which is probably not a big risk. To mitigate this risk and still keep
the same UX (that is so valuable), would require more work than is
proportionate for this PR.
2018-09-09 21:44:30 +01:00
Dan Palmer
040f6aa10e
Document, including whether fields are required 2018-09-09 19:01:00 +01:00
Dan Palmer
e6b21594d7
Add some documentation to DjangoDebug 2018-09-09 18:59:28 +01:00
Konstantin Alekseev
85527e1f94 Provide a way to dump schema to stdout. 2018-09-08 15:34:48 +03:00
Syrus Akbary
f4bbae29df
Updated version to 2.2.0 2018-09-05 23:20:25 +02:00
Syrus Akbary
21bad6105c
Merge pull request #472 from wsantos/master
Exclude id from mutation for create operations
2018-09-05 13:20:38 +02:00
Jay Hale
0314931f12 Removed Django < 1.11 compatibility checks from tests 2018-09-04 13:15:04 -04:00
Jay Hale
f8dff38e29 Remove unnecessary compat utility for Django < 1.11 2018-09-04 13:15:04 -04:00
Jay Hale
d8bdda94df Add back support for django-filter < 2 2018-09-04 13:15:04 -04:00
Jay Hale
dc0c2900d1 Making GrapheneFilterSetMixin compatible with django_filter 2 2018-09-04 13:15:04 -04:00
Dan Palmer
7e8f6dbd4e
Change quotes to improve some syntax highlighting 2018-08-30 20:58:00 +01:00
Dan Palmer
e50e12bc9f
Move GraphiQL's JS into a separate file for ease of CSP 2018-08-30 20:36:26 +01:00
Dan Palmer
24ebc20bf4
Fix comment 2018-08-30 20:32:38 +01:00
Dan Palmer
d1b734f07d
Allow the user to see the query before prompting
This also allows the introspection query through so that the user can
edit with intellisense before being prompted.
2018-08-30 20:31:39 +01:00
Dan Palmer
9a5b3556d3
Special case reloads as allowed if we can 2018-08-30 19:48:38 +01:00
Dan Palmer
0d8f9db3fb
Pass options from the fragment, not the template context 2018-08-30 19:48:21 +01:00
Dan Palmer
3755850c2e
Use the fragment for the URL 2018-08-30 19:47:48 +01:00
Dan Palmer
219005952a
Don't execute on GET for GraphiQL
We can also now return GraphiQL earlier in the request handling.
2018-08-30 19:29:33 +01:00
Waldecir Santos
d4a9c2bb89 Fix tests. 2018-07-22 23:53:58 +01:00
Waldecir Santos
c1bd3c4c15 Exclude id from mutation, useful for create operations. 2018-07-22 23:35:11 +01:00
Syrus Akbary
dc561c68c4 Updated version to 2.1.0 2018-07-19 16:52:24 -07:00
Syrus Akbary
54ef52e1c6 Reformatted files using black 2018-07-19 16:52:24 -07:00
Syrus Akbary
1755948768
Update __init__.py 2018-06-08 11:53:00 -07:00
Syrus Akbary
763665f2f6 Updated version to 2.1rc0 2018-06-05 15:21:11 -07:00
Syrus Akbary
27a7c0e299 Added support for FilePathField 2018-06-05 14:39:51 -07:00
Syrus Akbary
a9d819e1f7 Removed repeated function 2018-06-05 14:24:41 -07:00
Syrus Akbary
10d2f3eea7 Commented the input form class, for now 2018-06-05 14:17:07 -07:00
Syrus Akbary
364d4f8f41 Merge branch 'master' into form_mutations 2018-06-05 13:32:45 -07:00
Syrus Akbary
546a82b7ec Updated time imports 2018-06-05 13:32:32 -07:00
Syrus Akbary
bb6da28008 Merge branch 'master' into form_mutations 2018-06-05 13:31:29 -07:00
Syrus Akbary
a9e5beb9eb Merge branch 'master' into form_mutations
# Conflicts:
#	graphene_django/forms/converter.py
#	graphene_django/forms/tests/test_converter.py
2018-06-05 13:23:39 -07:00
Syrus Akbary
883d1778d5
Merge pull request #336 from urbandove/django2
support Django 2 + in tests
2018-06-05 13:02:09 -07:00
Syrus Akbary
7563045d75
Merge pull request #290 from DouglasConnect/fix-distinct-bug
Fix distinct bug
2018-06-05 12:57:19 -07:00
Syrus Akbary
a65f786ba4 Fixed requirement 2018-06-05 12:31:25 -07:00
Syrus Akbary
33c6fdf5ab Added graphql-core min version to requirements 2018-06-05 01:24:53 -07:00
=
43c0c99136 fix lint error 2018-04-15 00:21:53 -04:00
=
b331319aea Fix merge conflicts 2018-04-15 00:12:49 -04:00
Syrus Akbary
a480a39713
Merge pull request #326 from pizzapanther/drf-serializer-update
DRF Serializer update
2018-03-29 23:22:14 -07:00
Syrus Akbary
70dffa94e7
Merge pull request #212 from maqquettex/fix_cbv_inheritance
Inheritance support for GraphQLView (class attributes)
2018-03-29 23:19:29 -07:00
Syrus Akbary
d2c1e7c87b
Merge pull request #391 from mongkok/test-custom-meta-setdefault
Test DjangoObjectType custom meta .setdefault()
2018-03-29 21:02:35 -07:00
Daniel Bachler
c32340662c Remove print statement 2018-03-28 12:28:58 +02:00
Syrus Akbary
fdb7d5a253
Merge pull request #395 from mbarrientos/drf-list-serializers
Fixes #371 - Support ListSerializer fields in SerializerMutation
2018-03-14 23:31:10 -07:00
Daniel Bachler
34f5978446 Move distinct check code to merge_querysets again 2018-02-28 17:52:27 +01:00
Daniel Bachler
4d41160379 Update resolve method signature to 2.0 style in new test 2018-02-28 17:45:25 +01:00
Daniel Bachler
e05fbcc1b3 Fix failing unit test by handling cases where a connection is resolved involving a query with inner join and distinct that is then filtered and would be combined with a filtered queryset that is not distinct. 2018-02-28 14:41:47 +01:00
Daniel Bachler
23eb8eea80 Add failing test case 2018-02-28 14:41:47 +01:00
eyal0803
e12c329507
Added support for Django 1.8.x
Since I didn't know why the `rel` attribute wasn't there in the first place, maybe it's better to use the `remote_field` only if it's there and leave `rel` as a default (i.e else).
2018-02-23 12:20:37 +02:00
eyal0803
e51f6070df
Fixes #400
After more digging than I expected (and planned), I'm 99% sure that the problem comes from `graphene_django`.

I found a [comment](16436f3751/django/db/models/fields/reverse_related.py (L4-L6)) in Django's source that refers to an attribute named `remote_field`, instead of `rel`.

It seamed to fix the problem for me without any other bugs (yet).
2018-02-22 05:45:40 +02:00
mbarrientos
3793ce17c0 Add support for ListSerializer fields in SerializerMutation 2018-02-13 12:12:50 +01:00
Syrus Akbary
dbd3957a9f
Merge pull request #340 from urbandove/qfactor
Fix qfactor rankings for HTTP-ACCEPT
2018-02-11 14:01:18 -08:00
Syrus Akbary
5b17e98217
Merge pull request #356 from jkimbo/upgrade-graphiql
Upgrade graphiql and react versions
2018-02-11 13:47:48 -08:00
Syrus Akbary
c0edb0c927
Merge pull request #373 from jm2242/proxy-model-support
Basic Proxy model support
2018-02-11 13:46:13 -08:00
=
12b022a49a Remove old test 2018-02-09 16:46:22 -05:00
Syrus Akbary
94ee97085f
Merge pull request #368 from sciyoshi/convert-date-time
Convert Date/Time/DateTime form fields to appropriate Graphene types
2018-02-08 12:15:00 -08:00
Syrus Akbary
adde400893
Merge pull request #335 from urbandove/master
models.DateField => graphene Date Scalar
2018-02-08 12:14:13 -08:00
Paul Bailey
91a99ee39c serializer update support 2018-02-06 13:37:28 -06:00
Syrus Akbary
c585982a1a
Merge pull request #382 from patrick91/patch-1
Improve ErrorType
2018-02-03 22:25:03 -08:00
Jonathan Mares
bfcfccfc8d undo cascade changes 2018-02-03 22:51:25 -05:00
=
da3bb5eea8 Bump graphene-django version 2018-02-03 18:35:38 -05:00
=
1bf5da2a8d Remove commits related to django 2.0 support from pull request 2018-02-03 18:32:18 -05:00
Jonathan Mares
bc1d47efb5 fix a line break 2018-02-03 14:36:25 -05:00
Jonathan Mares
0b103417f9 on_delete param where needed due to django 2 requirements
added support for querying a model with objects that may be a proxy model, fixed and added tests

a few style changes
2018-02-03 11:10:04 -05:00
mongkok
55dc65753e Test custom meta .setdefault() 2018-02-03 21:12:35 +05:30
Syrus Akbary
e827b10e7b
Merge pull request #379 from mongkok/default-meta
Allow DjangoObjectType to have default meta
2018-02-02 15:06:09 -08:00
Syrus Akbary
fd3faf04e5
Merge pull request #341 from urbandove/tests
Add tests
2018-02-02 13:57:12 -08:00
mongkok
3051374b46 Fix Python 2.7 super arguments 2018-02-03 03:23:10 +05:30
mongkok
b81e961c86 Test DjangoObjectType with custom meta #364 2018-02-03 03:16:58 +05:30
Anton Zhdan-Pushkin
3682fe0318 Test of inherited class 2018-02-01 16:39:06 +02:00
Anton Zhdan-Pushkin
2cb3d4b68e Class attributes for GraphQLView (schema, pretty, graphiql, batch) 2018-02-01 16:39:06 +02:00
Jonathan Kim
cf35f7c76c Upgrade graphiql and react versions 2018-02-01 10:01:05 +00:00
Samuel Cormier-Iijima
bb2d24ec27
Convert Date/Time/DateTime form fields to appropriate Graphene types 2018-02-01 09:57:24 +00:00
Patrick Arminio
6a152820ca
Improve ErrorType
Marks some fields as required and non null, it also prevents to do useless checks on the frontend if using a typed language.
2018-02-01 09:52:16 +00:00
mongkok
167d0a3964 Allow DjangoObjectType to have default _meta 2018-01-22 01:03:52 +05:30
=
1352d4e02b Fix func names 2017-12-18 12:33:42 -05:00
=
f31db13cd0 Add blank line for linting 2017-12-18 12:02:04 -05:00
=
28cccb49f7 add saces for linter 2017-12-18 11:40:19 -05:00
=
6da95d72ea Rename [html/json]_index to _priority 2017-12-16 19:32:01 -05:00
=
51f794edb6 Test Connectionfield with custom Manager 2017-12-12 12:52:32 -05:00
=
616c549d2c Fix ConnectionField Last Test 2017-12-12 12:49:02 -05:00
=
29935c2d33 Test Last works 2017-12-12 12:33:32 -05:00
=
de59d26968 Test: erro if last is greater than max - plus fix wrong variable 2017-12-12 12:24:11 -05:00
=
65e63026a0 Add tests 2017-12-11 21:23:00 -05:00
=
6008cb6de4 Fix qfactor rankings for HTTP-ACCEPT 2017-12-11 21:08:42 -05:00
=
d2db5f5584 Remove Django1.7 shims 2017-12-10 00:53:13 -05:00
=
f687406ac5 Add on_delete atrributes to test models foreignkeys 2017-12-07 13:00:22 -05:00
=
384bff08e8 Add fallback for depracated atrribute 2017-12-06 13:10:03 -05:00
=
d314d1041f rel -> remote_field: Update Django DeprecatedAttribute 2017-12-06 12:50:55 -05:00
=
62c0694901 models.DateField corresponds to graphene Date Scalar 2017-12-05 15:04:29 -05:00
=
73706fa6bb Add on_delete atrributes to test models foreignkeys 2017-12-05 15:01:52 -05:00
Grant McConnaughey
c3938d1e4f Fix line length 2017-11-29 15:31:26 -06:00
Grant McConnaughey
6d7a0d053d Make id field an ID type 2017-11-29 15:25:24 -06:00
Grant McConnaughey
748dc4c509 Add id input field to model form mutation 2017-11-29 15:15:16 -06:00
Grant McConnaughey
d6dbe2a4a8 Default return_field_name is camcelcased 2017-11-29 14:20:56 -06:00
Grant McConnaughey
40610c64a3 Support instance kwarg 2017-11-29 14:12:02 -06:00
Syrus Akbary
5661db88d1
Merge pull request #156 from aaxelb/master
Fix #87: Don't create duplicate Enums for fields with choices
2017-11-14 21:14:51 -08:00
Syrus Akbary
670437d756
Merge branch 'master' into patch-1 2017-11-14 21:05:47 -08:00
Paul Bailey
6cfd5b2854 added line ending 2017-11-14 22:10:26 +00:00
Paul Bailey
0a660e5e56 Merge remote-tracking branch 'upstream/master' 2017-11-14 22:04:02 +00:00
Syrus Akbary
568073a090
Merge pull request #325 from urbandove/master
Fix infinite recursion when sublassing DjangoFilterConnectionField
2017-11-14 13:16:26 -08:00
Paul Bailey
345fe877c4 added ModelSerializer tests 2017-11-13 20:35:00 +00:00
Paul Bailey
c72e7e55eb added ModelSerializer tests 2017-11-13 20:33:12 +00:00
=
3f08ed629c Fix infinite recursion when sublassing DjangoFilterConnectionField and merging querysets 2017-11-13 14:56:25 -05:00
Samuel Cormier-Iijima
1db1cbdd9c
Fix passing request context to filterset creation
Currently this code throws an error about `context` not being defined.
2017-11-13 12:47:55 -05:00
Paul Bailey
3d30038795 Merge remote-tracking branch 'upstream/master' 2017-11-13 16:10:56 +00:00
Paul Bailey
75e11a8195 add created field to test 2017-11-13 16:06:07 +00:00
Syrus Akbary
bc59d0ad8e
Merge pull request #232 from basilfx/master
Pass context object to FilterSet for request-baed filtering
2017-11-13 02:39:18 -08:00
Syrus Akbary
b8fb64d893
Merge branch 'master' into fix-select-related 2017-11-13 02:31:15 -08:00
Syrus Akbary
94e2a5c49f
Merge pull request #313 from BossGrand/feature/allow_abstract_connections
Allow DjangoObjectType to use an Abstract Connection Class
2017-11-13 02:23:46 -08:00
Paul Bailey
e05f41af40 fixed indentation 2017-11-12 23:10:29 +00:00
Paul Bailey
e7391937dd fixes #322, fixed incorrect serializer instance usage 2017-11-10 21:49:48 +00:00
Charles Haro
4013f78ecb fix default_queryset overriding queryset when merging queries 2017-11-03 12:26:49 -07:00
Charles Haro
6d0837e7cb add test to show annotation not being perservered 2017-11-03 12:26:33 -07:00
Charles Haro
5491e2cb00 add test to show .reverse() not being perserved 2017-11-03 12:25:22 -07:00
Abram Booth
b5e7614b05 More specific None check. 2017-10-31 09:33:16 -04:00
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