- Package import now uses
importlib.metadatato get the version and throwsPackageNotFoundErrorif the package is not installed.
gqlrequirement is now3.6.0b2
- Python requirement is now
>= 3.8.0,<3.13. - Updated
pylintto^3.0in support of the above.
- [BREAKING CHANGE] Python requirement is now
>= 3.8.0,<3.12. - Unpegged
urllib3. - Utilizing pydantic v2 syntax and best practices.
- Improves file handling with
FileCompatibleBaseModel(Thanks @cyrusradfar!)
- Updated
pydanticpackage dependency tov2, but still usingv1internally. - [BREAKING CHANGE] Python requirement is now
>= 3.8.0, up from>= 3.7.2.
- Fixed issue with
requests_toolbelt(gqldependency) using an incompatible version ofurllib3. This caused an error ofImportError: cannot import name 'appengine'to be thrown.
- [BREAKING CHANGE]
graphql-python/gqlis now the main GraphQL client implementation. All functions should still work the same as before. If there are any issues please let us know inpython-anvilGitHub issues. - Updated examples to reflect new GraphQL implementation and added
examples/make_graphql_request.pyexample.
- [BREAKING CHANGE] Minimum required Python version updated to
>=3.7.2
- Clearer version number support
- Add additional variables for
CreateEtchPacketmutation - Add missing
webhookURLvariable inForgeSubmitmutation - Add
forgeSubmitexample
- Added support for multipart uploads on
CreateEtchPacketrequests. - New example for multipart uploads in
examples/create_etch_upload_file_multipart.py - Added environment variable usage in all
examples/files for easier usage. - Updated a few minor development packages.
- Added support for
version_numberin PDF Fill requests.
- Added support for HTML/CSS and Markdown in
CreateEtchPacket. See examples here.
- Added support for
ForgeSubmitmutation.
- Updated
mkdocsdependency to fix issue with Read the Docs.
- Updated a number of packages to fix linter and pre-commit issues
- Added support for
CreateEtchPacket.merge_pdfs.
- Updated
clickpackage dependency to^8.0 - Update other minor dependencies. See full list here.
- Fixed optional field
CreateEtchPacket.signature_email_subjectbeing required. This is now truly optional. - Added support for
CreateEtchPacket.signature_email_body. - Added support for
CreateEtchPacket.replyToNameandCreateEtchPacket.replyToEmailwhich customizes the "Reply-To" header in Etch packet emails.
- Fixed issue with Etch packet
is_testandis_draftoptions not properly applying to the final GraphQL mutation when usingCreateEtchPacket.create_payload.
- Added
py.typedfor better mypy support. - Updated a number of dev dependencies.
- Added support for
webhook_urlon Etch packets. Please see theCreateEtchPacketPayloadclass and Anvil API docs for more info. - Better support for extra (unsupported) fields in all models. Previously fields not defined in models would be stripped, or would raise a runtime error. Additional fields will no longer be stripped and will be used in JSON payloads as you may expect. Note that, though this is now supported, the Anvil API will return an error for any unsupported fields.
- Updated documentation.
- [BREAKING CHANGE]
dataclasses-jsonlibrary removed and replaced with pydantic. This should not affect any users who only use the CLI and API methods, but if you are using any models directly fromapi_resources/payload.py, you will likely need to update all usages. Please see pydantic's docs for more details. - [BREAKING CHANGE] Increased minimum required Python version to 3.6.2.
- Updated
EtchSignermodel to be more in sync with new official documentation. Seecreate_etch_existing_cast.pyfile for examples andapi_resources/payload.pyforEtchSignerchanges. - Updated CLI command
anvil cast --listto only return casts that are templates. Useanvil cast --allif you'd like the previous behavior. - Updated a number of dependencies, the vast majority being dev-dependencies.
- Fixed API ratelimit not being set correctly
- Added support for setting API key environment which sets different API rate limits
- Added support for
--include-headersin all API methods which includes HTTP response headers in function returns - Added support for
--retryin all API methods which enables/disables automatic retries - Added support for
--debugflag in CLI which outputs headers from HTTP responses
- Added support for HTML to PDF on
generate_pdf
- Fixed for REST API calls failing
- Added GraphQL queries
- Raw queries
- casts
- etchPackets
- currentUser
- availableQueries
- welds
- weldData
- Added GraphQL mutations
- TODO: sendEtchPacket
- createEtchPacket
- generateEtchSignURL
- Added other requests
- Fill PDF
- Generate PDF
- Download Documents