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

[mypyc] Precompute set literals for "in" ops against / iteration over set literals #14409

Merged
merged 17 commits into from
Jan 10, 2023

Commits on Aug 23, 2022

  1. Configuration menu
    Copy the full SHA
    b0f57ab View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2022

  1. Configuration menu
    Copy the full SHA
    c8d2dda View commit details
    Browse the repository at this point in the history

Commits on Jan 6, 2023

  1. Configuration menu
    Copy the full SHA
    779a598 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7fabcfe View commit details
    Browse the repository at this point in the history
  3. [wip] more tests

    ichard26 committed Jan 6, 2023
    Configuration menu
    Copy the full SHA
    97faab5 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3ccf951 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    de47fef View commit details
    Browse the repository at this point in the history

Commits on Jan 7, 2023

  1. Configuration menu
    Copy the full SHA
    0036e20 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e1527e2 View commit details
    Browse the repository at this point in the history
  3. Oh look, I found constant_fold_expr()

    constant_fold_expr() replaces my custom logic for string/integer
    literals and final references. It even supports folding constant
    expressions which means even {1 + 2} could be precomputed!
    
    This means final references to bool, float, bytes*, and complex values
    are no longer supported, but that's okay for now. In a later patch, we
    can add proper support for (some of) these types to
    constant_fold_expr().
    
    *Also bytes are just in general really annoying to work with (because
    the true bytes value isn't stored anywhere, you have to convert the
    string representation to bytes instead... ugh) so I don't really care
    about final refs to bytes values/literals right now. Byte literals IN
    the sets are still supported.
    ichard26 committed Jan 7, 2023
    Configuration menu
    Copy the full SHA
    e3d3045 View commit details
    Browse the repository at this point in the history
  4. Run flake8/isort

    ichard26 committed Jan 7, 2023
    Configuration menu
    Copy the full SHA
    8d68a7b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1b75b7d View commit details
    Browse the repository at this point in the history
  6. Work around mypyc bug ...

    ichard26 committed Jan 7, 2023
    Configuration menu
    Copy the full SHA
    1a55fa4 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3d44293 View commit details
    Browse the repository at this point in the history
  8. Work around mypyc bug ... attempt 3

    I got tired of trying to compile mypy locally (15 minutes and it's still
    not done), let's see what CI has to say.
    ichard26 committed Jan 7, 2023
    Configuration menu
    Copy the full SHA
    fefac47 View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2023

  1. Configuration menu
    Copy the full SHA
    9cdfc98 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2f18f30 View commit details
    Browse the repository at this point in the history