0.23.0 - 2023-09-29
- Implement
preserveSvg
flag forsrcSet
(#370) @mgax
preserveSVG
is true by default (#371) @mgax- Improvements to the CI pipelines
0.22.0 - 2023-09-18
- Add global mechanism for overriding the base
PageInterface
(#325) @Leden, @dopry, @zerolab - Allow defining additional interfaces via
graphql_interfaces
(#366) @mgax, @zerolab This applies to all models, including StreamField blocks
0.21.0 - 2023-09-04
- Support for SVGs when using Wagtail 5.0+ (#359) @zerolab
You can differentiate images using the
isSVG
property. The image rendition field accepts apreserveSvg
argument which will help prevent raster image operations (e.g. format-webp, bgcolor, etc.) being applied to SVGs. Reference
- Use consistent ID type for pages and page queries (#350) @estyxx
⚠️ Warning note: if your query looked likequery($id: Int) { page(id: $id) { ... } }
, it must now bequery($id: ID) { page(id: $id) { ... } }
- Pass the
GraphQLResolveInfo
object to the StreamField callables (#356) @zerolab This is passed as theinfo
kwarg. - The image rendition query will now surface any errors when:
- using filters not present in the
ALLOWED_IMAGE_FILTERS
Grapple setting, - there are no filters to apply (for example you are requesting an SVG rendition but supply raster image operations)
- the source image is not present
0.20.0 - 2023-07-10
searchScore
field for pages (#320) @dopry- Support for passing callables for resolving
StreamField
block values (#322) @bbliem, @dopry - Support for graphene type arguments, chiefly
description
and `deprecation_reason (#333) @Morsey187, @jams2 - Testing with PostgreSQL (#301) @dopry
- All middleware defined in the decorator will be used (#281) @seb-b
GraphQLError
no longer raised when querying for a site by hostname that doesn't match anySite
s (None
is returned instead) - (#342) @kbayliss- When querying pages with a site filter (e.g.
pages(site: "localhost")
) whose hostname does not match aSite
, we no longer return pages for the firstSite
(None
is returned instead) - (#342) @kbayliss - When querying site setting/settings without a site filter (e.g.
setting(name: "SocialMediaSettings")
) and there are multipleSite
s, we no longer return settings for the firstSite
(GraphQLError
is raised instead) - (#342) @kbayliss - Updated to graphiql 2.4.x
- Switched to using Ruff for linting (#334) @zerolab
- Switched to using flit for building the package (#335) @zerolab
- Switched to PyPI Trusted Publishing. @zerolab
- Fix rendition interface definition (#337) @engAmirEng, @zerolab
- Channels support (#336) @zerolab
- Unused preview template, and Gatsby reference
- Support for Wagtail < 4.1
0.19.2 - 2023-01-17
- Fix order_by_relevance needed for Postgres and queryset ordered searches (#299) @dopry
0.19.1 - 2023-01-09
- An error when using deprecated settings. (#298) Thanks @kbayliss for the heads up
- Previews for drafts (#277) @dopry
0.19.0 - 2023-01-09
- Upgrade graphene to v3 (#143, #285) @fabienheureux, @dopry
- Change search queries to respect specified order (#292) @dopry
- Allows installation on Django 4.1
0.18.1 - 2022-11-29
- Upgrade graphiql to 2.0.13, React to 18.2.0 (#273) @dopry
0.18.0 - 2022-10-31
- New
GraphQLRichText
field type, and RichText(Scalar) type (#266) @jams2
- Fix errors with attributes when checking for rich text fields (#261) @Tijani-Dia
- Fix IDs for
StrucBlock
s nested inStreamBlock
s (#269) @Tijani-Dia - Renditions are prefetched when using Wagtail 3.0+ (#271) @zerolab with hat-tip to @Tijani-Dia
0.17.1 - 2022-08-24
- Fix errors with attributes when checking for rich text fields (#261) @Tijani-Dia
0.17.0 - 2022-08-19
- Multi-site page query filters. (#258) @kaedroho
- Ancestor, parent filter for the pages query. (#240) dopry
- Proper snippet values in
SnippetChooserBlock
. (#256) @jams2 - Support specifying format in image srcSet query. (#257) @jams2
RICHTEXT_FORMAT
setting for the rich text field. (#259) @zerolab Note: both now use the "html", rendered format. Set it to "raw" for the database representation.- Support for comma separated list of
content_type
s in thepages
query. (#250) @dopry
- Removed unnecessary processing of embed urls. (#252) @dopry
- Update graphiql version to fix XSS vulnerability. (#248) @dopry
RichTextField
andRichTextBlock
output now uses theRICHTEXT_FORMAT
setting for consistent output. (#259) @zerolab, @Tijani-Dia Note:RichTextBlock
'srawValue
output is always the non-rendered version. h/t @isolationism
0.16.0 - 2022-08-03
- Support for Generic Settings models (#233) Thanks @kaedroho
- Support for Wagtail 4.0 (#232) Thanks @kaedroho
- wagtailmedia import error when package installed,
but not used in
INSTALLED_APPS
(#235) Thanks @kaedroho
- All blind
except:
clauses (#236) Thanks @kaedroho
0.15.1 - 2022-06-23
- Add missing
urlPath
to page field underSiteObjectType
(#230) Thanks @Morsey187
0.15.0 - 2022-06-07
- Support for Wagtail 3.0 (#229) @fabienheureux
- Additional linting to improve consistency between contributors (#223) @kbayliss
- Check callable field sources before execution (#228) Thanks @danbentley
- Support for Wagtail < 2.15 (#229) @fabienheureux
0.14.1 - 2022-03-31
- StreamField block values are passed to callables (#222). Thanks @kbayliss
- README and linting tidy up. Thanks @kbayliss
0.14.0 - 2022-03-25
- Support for attributes and callable sources within
StreamField
s (#220). Thanks @kbayliss - flake8/isort linting configuration
0.13.0 - 2022-02-25
- Support for Wagtail 2.16 (#212). Thanks @fabienheureux
- Support for queryset slicing when using
searchQuery
(#206). Thanks @protasove - Tweak for GitHub to show dependents (#216). Thanks @thibaudcolas
- Switched to the latest stable release of black
- Deprecated use of
ugettext_lazy
#202. Thanks @13hakta - Support for Wagtail < 2.14, Python < 3.7
- Docker build (#210). Thanks @dopry
0.12.0 - 2021-11-08
- Fix: custom document model not working with Wagtail grapple (#153). Thanks @fabienheureux
- Fix/empty list in structblock (#165). Thanks @bbliem
- Use absolute URL for renditions (#181). Thanks @fabienheureux
- Fix channels versions solving issues introduced by Wagtail 2.14 support (#184). Thanks @fabienheureux
- Channels can now be used with Django >= 3.x
- Use correct endpoint url for GraphiQL when the API endpoint is on a subpath #194. Thanks @ruisaraiva19
- Add contentType filter on site pages query (#171). Thanks @sks
- Add hooks for registering mutation and subscription mixins (#155). Thanks @ruisaraiva19
- Add single
GRAPPLE
setting (#175). Thanks @ruisaraiva19 - Add middleware support for queries (#177). Thanks @ruisaraiva19
- Add support for Wagtail v2.14 (#172). Thanks @fabienheureux
- Add support for Wagtail v2.15 (#197). Thanks @ruisaraiva19
- Add missing fields to images and documents (#195). Thanks @ruisaraiva19
- Use Wagtail Sphinx theme for docs (#183). Thanks @fabienheureux
- Middleware docs updates
- Use
blacken-docs
(#187)
0.11.0 - 2021-03-09
- 🚀 Introduced a new settings -
GRAPPLE_ALLOWED_IMAGE_FILTERS
- which accepts a list of filters (thus renditions) that are allowed to generate. Read more about generating renditions in Wagtail docs
- 🤖 Got deployed to PyPi automatically through the power of GitHub Actions! Yes to automation 🎉
- 📜 Changed the license from MIT to BSD 3, for better alignment with Wagtail
- Allow running alongside Wagtail 2.12
- Tweak exclusion lists for pages #148
- Query page via url path (#52). Thanks @NathHorrigan
- Fix filtering by content type in page/pages queries (#147). Thanks @isolationism for another PR that finally propted that fix
- Fix "excluding custom field" warning with graphene-django>=2.8.1 (#146)
0.9.3 - 2020-12-08
- Fix: use correct media type in GraphQLMedia #142
- Fix @register_singular_query_field usage with non-Wagtail page models did not return any result
0.9.2 - 2020-11-12
- Fix a small bug for correct custom Media models support
0.9.1 - 2020-11-06
- Return specific instances for
PageChooserBlock
s
0.9.0 - 2020-11-04
- Support Wagtail 2.11. Further testing welcome!
- Add collections types (#111). Thanks @fabienheureux
- Add hook for registering query mixins (#132). See documentation. @zerolab
- Add webpquality support for renditions (#130). Thanks @ruisaraiva19
- Fix StubModel already registered RuntimeWarning (#133). @zerolab
- Add .live().public() to all relevant methods (#129). Thanks @mmmente
0.8.0 - 2020-10-07
- Multi-site support - add SitesQuery and resolve pages based on site (#115) Thanks @leewesleyv
- Add GraphQLTag model (#124) Thanks @ruisaraiva19
- Add embed data for StreamField Embed blocks (#122)
- Add
register_singular_query_field
decorator (#112) - Add token/slug support to register_query_field/register_paginated_query_field (#108)
- Fix parent attribute (#127)
- Fix nested StructBlock not resolving (#118)
- Fix pageType returns null
- Fix: use url instead of urlPath in redirections (#109) Thanks @fabienheureux
- Make wagtailmedia an optional dependency (#106)
- Add GraphQLPage to model types docs (#119) @zerolab
- Remove unused imports and cleanup repeat queries (#113)
- Update supported versions Django (>=2.2, <3.2) and django-graphene (#105)
0.7.0 - 2020-09-02
- Add pagination support (#101). Thanks @ruisaraiva19
- Add contributors to README.md (#102) following the all-contributors specification. Thanks @ruisaraiva19
0.6.0 - 2020-08-21
- Add non-nullable support to
register_query_field
decorator (#62). Thanks to @ruisaraiva19 - Add
url
toDocumentObjectType
(#95). Thanks to @tbrlpld - Use consistent media url attributes (#97). @zerolab
- Add support for custom
Media
classes. @zerolab - Wheel packages are now created as well. @zerolab
- All media (core
Image
,Document
and wagtailmediaMedia
) have aurl
attribute that returns the full URL to the file.- The
file
attribute onMediaObjectType
now returns the relative path. Useurl
for the full URL - The
src
attribute onBaseImageObjectType
is now deprecated in favour ofurl
- The
- Fix StructValue' object has no attribute 'value' (#92). Thanks to @timmysmalls and @zerolab
- Fix typos, update links, and lint files with pre-commit (#91) Thanks to @ruisaraiva19
- Made Channels-related functionality optional to unblock Django 3.0.x compatibility.
If you are using Grapple with Channels, you need to change your requirements to
wagtail_grapple[channels]
. Channels currently works only with Django 2.x
0.4.8 - 2019-12-14
- Fix packaging issue that prevented installation with Wagtail 2.7
0.4.7 - 2019-12-14
- Add missing migration
- Add the base url for the embed block when needed