-
Notifications
You must be signed in to change notification settings - Fork 363
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Migrated] [async] Check if args/kwargs are JSON Serializable while running locally #704
Labels
Comments
I can add these changes if you need contributors, this has bitten us a few times where a dev will pass Django objects, see that it is working locally, and push to release. |
I had a branch up, but I like your changes more. |
monkut
added a commit
that referenced
this issue
Sep 15, 2022
…unning locally (#1154) * ✨ add feature (#705) - JSON unserializable content passed to asyncronous task during local develop will raise exception on purpose to allow developers to catch JSON unserializable errors during development. :white_check_mark: add `test_async_call_arg_not_json_seralizable` testcase :fire: remove unnecessary coding comment in `test_async.py` * :art: fix flake8 * :pencil: fix typo :wrench: add specific `UnserializableJsonError` exception for clarity * :white_check_mark: expand testcase to include custome exception, `UnserializableJsonError`. * :art: run isort/black * :fire: remove unnecessary assert Co-authored-by: javulticat <31746850+javulticat@users.noreply.github.com> * :recycle: simplify `validate_json_serializable()` to accept *args, **kwargs as per review comment * :fire: remove unnecessary import and use `object()` as unserializable_object sample. Co-authored-by: javulticat <31746850+javulticat@users.noreply.github.com>
released in 0.56.0, closing. |
Ian288
pushed a commit
to tackle-io/Zappa
that referenced
this issue
Jul 11, 2023
…ile running locally (zappa#1154) * ✨ add feature (zappa#705) - JSON unserializable content passed to asyncronous task during local develop will raise exception on purpose to allow developers to catch JSON unserializable errors during development. :white_check_mark: add `test_async_call_arg_not_json_seralizable` testcase :fire: remove unnecessary coding comment in `test_async.py` * :art: fix flake8 * :pencil: fix typo :wrench: add specific `UnserializableJsonError` exception for clarity * :white_check_mark: expand testcase to include custome exception, `UnserializableJsonError`. * :art: run isort/black * :fire: remove unnecessary assert Co-authored-by: javulticat <31746850+javulticat@users.noreply.github.com> * :recycle: simplify `validate_json_serializable()` to accept *args, **kwargs as per review comment * :fire: remove unnecessary import and use `object()` as unserializable_object sample. Co-authored-by: javulticat <31746850+javulticat@users.noreply.github.com>
BarNehemia
added a commit
to Lightricks/Zappa
that referenced
this issue
Aug 10, 2023
…zappa-0.57.0 * commit '0b1eab14ca39c3a3bfb4e915347e07495171dcba': (27 commits) updating workflow actions to remove deprecation warnings (zappa#1243) 📝 CHANGELOG.md update for 0.57.0 (zappa#1246) fixing compatibility with Django 4.2 (zappa#1237) Update Readme with patreon and donors (zappa#1234) adding support for Python 3.10 (zappa#1231) Nose to pytest (zappa#1239) lint: updating code style with `make black` (zappa#1238) Alternative way to check if running in Docker (zappa#1204) 📝 CHANGELOG.md update for 0.56.0 release (zappa#1187) Improve `get_best_match_zone()` to match by most matched components instead of by length of domain (zappa#1193) Bypass python version runtime check when code run in docker (zappa#1180) Be able to pass in a batch window when using batch size (zappa#1118) Correction to README. (zappa#1177) (zappa#908) Update BINARY_SUPPORT to use Content-Encoding to identify if data is binary (zappa#1155) Remove special check for Django<1.7, fix for zappa#1158 (zappa#1159) Resolve (zappa#410) Logs are missing query strings (zappa#1165) Handle spaces in x-forwared-for/remove six (zappa#1127) (zappa#1163) add feature (zappa#704) Check if args/kwargs are JSON Serializable while running locally (zappa#1154) docs: Add documentation for s3 event object key_filters (zappa#1169) Add feature pyenv virtualenv detecting .python-version file (zappa#1153) ... # Conflicts: # zappa/cli.py
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Originally from: Miserlou/Zappa#1791 by mariamrf
Context
@task
locally, theargs
andkwargs
are passed as they are (even if they're not JSON Serializable).Expected Behavior
@task
is run locally with invalid args/kwargs (non-serializable), it should break/raise an exception as this is the actual behavior when it's deployed.Actual Behavior
@task
is run locally with invalid args/kwargs (non-serializable), it just runs as a normal function and therefore, we can't catch errors of this kind in the tests.Possible Fix
In
async.py
:and in
utilities.py
:Steps to Reproduce
Your Environment
0.45.1
Operating System andPython version: 3.6The output ofpip freeze
:Link to your project (optional):Yourzappa_settings.py
:The text was updated successfully, but these errors were encountered: