Skip to content
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

Generalize benchmarks #532

Closed
wants to merge 25 commits into from
Closed

Commits on Apr 17, 2022

  1. Fix handling of surrogates on encoding

    This allows surrogates anywhere in the input, compatible with the json module from the standard library.
    
    This also refactors two interfaces:
    - The `PyUnicode` to `char*` conversion is moved into its own function, separated from the `JSONTypeContext` handling, so it can be reused for other things in the future (e.g. indentation and separators) which don't have a type context.
    - Converting the `char*` output to a Python string with surrogates intact requires the string length for `PyUnicode_Decode` & Co. While `strlen` could be used, the length is already known inside the encoder, so the encoder function now also takes an extra `size_t` pointer argument to return that and no longer NUL-terminates the string. This also permits output that contains NUL bytes (even though that would be invalid JSON), e.g. if an object's `__json__` method return value were to contain them.
    
    Fixes ultrajson#156
    Fixes ultrajson#447
    Supersedes ultrajson#284
    JustAnotherArchivist committed Apr 17, 2022
    Configuration menu
    Copy the full SHA
    c9df712 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2022

  1. Configuration menu
    Copy the full SHA
    92b044d View commit details
    Browse the repository at this point in the history
  2. Use older PyObject_call API

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    5c05078 View commit details
    Browse the repository at this point in the history
  3. Allow custom indent

    [pre-commit.ci] auto fixes from pre-commit.com hooks
    
    for more information, see https://pre-commit.ci
    
    Fix compiler warnings
    
    Update python/objToJSON.c
    
    Co-authored-by: JustAnotherArchivist <JustAnotherArchivist@users.noreply.github.com>
    
    camelCase
    
    whitespace
    
    Update tests/test_ujson.py
    
    Co-authored-by: JustAnotherArchivist <JustAnotherArchivist@users.noreply.github.com>
    Erotemic and JustAnotherArchivist committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    c71d9ab View commit details
    Browse the repository at this point in the history
  4. Debug code

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    d82654b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4c68a0b View commit details
    Browse the repository at this point in the history
  6. remove printf

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    993b262 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    4ae8a0b View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    70e9085 View commit details
    Browse the repository at this point in the history
  9. Enable all agree checks

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    6861525 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    183d863 View commit details
    Browse the repository at this point in the history
  11. remove flake8 long lines

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    fa84e27 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    84ca3d1 View commit details
    Browse the repository at this point in the history
  13. remove compat tests

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    5853a4f View commit details
    Browse the repository at this point in the history
  14. Fix negative allocation

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    ed8de3c View commit details
    Browse the repository at this point in the history
  15. remove non portable min/max

    Erotemic committed Apr 18, 2022
    Configuration menu
    Copy the full SHA
    520f2ec View commit details
    Browse the repository at this point in the history

Commits on Apr 20, 2022

  1. Configuration menu
    Copy the full SHA
    1e0885d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2cc3544 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    75895fc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    35bb31a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    cbd3019 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9864596 View commit details
    Browse the repository at this point in the history

Commits on Apr 21, 2022

  1. Cleanup openskill code

    Erotemic committed Apr 21, 2022
    Configuration menu
    Copy the full SHA
    85260e6 View commit details
    Browse the repository at this point in the history
  2. Fix merge issue

    Erotemic committed Apr 21, 2022
    Configuration menu
    Copy the full SHA
    75cd254 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1ccacdd View commit details
    Browse the repository at this point in the history