Releases: stellar/django-polaris
Releases · stellar/django-polaris
v2.0.7
Bug Fixes
- SEP-24
POST /deposit
andPOST /withdraw
endpoints would return501 Not Implemented
if the anchor had not implemented the.save_sep9_fields()
integration function, but saving these fields is optional- Anchors can now ignore SEP-9 values passed in SEP-24 requests
v2.0.6
Bug Fixes
- The
WithdrawalIntegration.save_sep9_fields()
function definition did not include thetoken: SEP10Token
argument, which Polaris passes. This resulted in aTypeError
thrown if SEP-9 fields were passed in withdrawal requests.- This release adds the
token
parameter
- This release adds the
v1.6.4
Polaris v1 releases use a version of the Stellar SDK that is not fully compatible with Stellar's Protocol 18 and above. Upgrade to Polaris v2 to ensure full compatibility.
With Protocol 18 of the Stellar Network, deserializing TransactionResult
objects containing path payment information is no longer possible with v2 of the Python Stellar SDK. This patch release removes the deserialization of transaction results from watch_transactions
while maintaining the current functionality.
Fixes
- The
watch_transaction
command can now successfully process Strict Send payments
v2.0.5
v1.6.3
v2.0.3
Bug Fixes
- SEP-24:
after_form_validation()
was not called prior to attempting to fetch the next form usingform_for_transaction()
- This likely affects SEP-24 implementations that depend on state changes implemented in
after_form_validation()
to determine which form to return in calls toform_for_transaction()
- This likely affects SEP-24 implementations that depend on state changes implemented in
Security
sqlparse
, a sub-dependency of Django, was listed as a direct dependency until Django requires v0.4.2 or above.
v2.0.2
Bug Fixes
- Call
SEP31ReceiverIntegration.info()
fromPOST /transactions
requests with the appropriate keyword arguments- This only affects those whose
.info()
implementation used the function's arguments. - If your implementation returned a static dictionary this change has no effect
- This only affects those whose
Miscellaneous
- Allow clients to send an empty
fields
object in SEP-31POST /transactions
requests- This is not in-line with the specification but is semantically identical to sending a
"fields": {"transaction": {}}
value
- This is not in-line with the specification but is semantically identical to sending a
v2.0.1
v2.0
Update: this version will not run properly for SEP-24 deployments. Use version 2.0.1 or higher.
Breaking Changes
Dependencies
- Upgraded
django
to 3.2 - Upgraded
stellar-sdk
to 4.1 - Upgraded
pyjwt
to 2.1 - Removed
psycopg2-binary
- Add
pytest-asyncio
to dev dependencies - Require latest minor version of all other dependencies, accept future minor updates
Data Model
- Removed the
Asset.distribution_account_master_signer
property - Removed the
Asset.distribution_account_signers
property - Removed the
Asset.distribution_account_thresholds
property - Added the
Asset.get_distribution_account_data()
method - Added the
Asset.get_distribution_account_signers()
method - Added the
Asset.get_distribution_account_thresholds()
method - Added the
Asset.get_distribution_account_master_signer()
method
Templates
- Updated all template
block
tags to use double quotes
Middleware
- Remove
PolarisSameSiteMiddleware
Integrations
- All unimplemented integration functions raise
NotImplementedError()
- Removed
DepositIntegration.instructions_for_pending_deposit()
- Removed JavaScript integrations (
TemplateScript
,register_integrations(scripts=<>)
) - Added the
rest_framework.request.Request
to all integration functions called within requests - Added a new
SEP10Token
object to all integration functions called within requests authenticated via SEP-10 - Added
*args
and**kwargs
parameters to all integration functions so adding future parameters is non-breaking
CLI Commands
- Renamed
poll_pending_deposits
toprocess_pending_deposits
and made it asynchronous, mergedcheck_trustlines
functionality into this command- Integration functions called within this process are still called from a synchronous context
- Remove
check_trustlines
command