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

feat: Improve the syntax for conditions with multiple predicates #3427

Merged
merged 122 commits into from
Jul 18, 2024

Commits on May 29, 2024

  1. fix: add overloads for condition

    Returned type is only `core.SchemaBase` under one very specific case.
    dangotbanned committed May 29, 2024
    Configuration menu
    Copy the full SHA
    303f784 View commit details
    Browse the repository at this point in the history
  2. build: regen __all__ excluding @overload

    Appears to have been there since at least 5.0.0
    dangotbanned committed May 29, 2024
    Configuration menu
    Copy the full SHA
    866a50e View commit details
    Browse the repository at this point in the history
  3. fix: add statement overloads for condition

    Should cover all valid combinations, including that only one of `if_true`, `if_false` may be `str`.
    dangotbanned committed May 29, 2024
    Configuration menu
    Copy the full SHA
    7ddd214 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2024

  1. refactor: add typing.Tuple to api and update_init_file

    Required for an annotation in later commit, but the import complicated the diff
    dangotbanned committed May 30, 2024
    Configuration menu
    Copy the full SHA
    2b3c2f8 View commit details
    Browse the repository at this point in the history
  2. feat(typing): amend and extend aliases for conditions

    - `expr.Expression` -> `_expr_core.Expression` fixes the type appearing as `Any`
    - `dict` -> `TypingDict[str, Any]` fixes the type appearing as `dict[Unknown, Unknown]`
    - Generally, the hierarchy of `Union`'s is allowing reuse and trailing docstrings, which I think improves readability.
    
    These will be used in `alt.condition` and related functions
    dangotbanned committed May 30, 2024
    Configuration menu
    Copy the full SHA
    61ab923 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a33efa3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    79af12d View commit details
    Browse the repository at this point in the history
  5. refactor: extract condition parsing functions

    Split out the `_PredicateType`/`_StatementType` parsing for reuse in `when-then-otherwise`.
    dangotbanned committed May 30, 2024
    Configuration menu
    Copy the full SHA
    d901679 View commit details
    Browse the repository at this point in the history
  6. refactor: add ruff ignores to keep expr in api

    Unsure if `expr` is still needed here as a side effect, but it is no longer needed internal to `api`.
    Purely a conservative step.
    dangotbanned committed May 30, 2024
    Configuration menu
    Copy the full SHA
    03a372c View commit details
    Browse the repository at this point in the history
  7. refactor: replaced contents of condition with extracted functions

    Allows the distinct steps to be reused
    dangotbanned committed May 30, 2024
    Configuration menu
    Copy the full SHA
    8d455d1 View commit details
    Browse the repository at this point in the history
  8. style: rerun ruff

    dangotbanned committed May 30, 2024
    Configuration menu
    Copy the full SHA
    8df67e1 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    aa35acf View commit details
    Browse the repository at this point in the history

Commits on May 31, 2024

  1. Configuration menu
    Copy the full SHA
    747ca6b View commit details
    Browse the repository at this point in the history
  2. perf: Build base units for utils.parse_shorthand once

    This operation was performed on every call, but was entirely static.
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    14f6ea1 View commit details
    Browse the repository at this point in the history
  3. feat: align both sides of if_true/ if_false parsing

    These need to be decoupled for the following cases:
    - Only `if_true` provided
    - multiple (`if_true`,`if_false`)
      - Ending of an `if_false`
      - Ending of an `if_true`
    
    Also adds a placeholder `TypeError`.
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    f20949d View commit details
    Browse the repository at this point in the history
  4. test: Update single test that relied on intermediate shorthand

    Resolves:
    
    > FAILED tests/utils/test_core.py::test_infer_encoding_types_with_condition - AssertionError: assert {'color': Col...  value: 2})} == {'color': Col...  value: 2})}
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    9d202e5 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    278f4f4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    113a793 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d6fea15 View commit details
    Browse the repository at this point in the history
  8. feat: Adds initial when-then-otherwise implementation

    - Sufficient for solving [vega#3301](vega#3301)
    - Still a work-in-progress
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    9c89bce View commit details
    Browse the repository at this point in the history
  9. test: Add tests for when-then-otherwise

    Will need updating with tests on `_Then`. Currently the wrapped `dict` should be a parseable input, but the rest of `altair` doesn't know what to do with `_Then` yet.
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    a09c13c View commit details
    Browse the repository at this point in the history
  10. fix(typing): Use typing.List

    `list` fails on 3.8
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    e7be069 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    1ad06f4 View commit details
    Browse the repository at this point in the history
  12. fix(typing): Use safer typing_extensions.runtime_checkable unless `…

    …python>=3.12.0`
    
    Any objects using `__getattr__`, e.g. `Parameter` break on older versions [see PR](python/cpython#103034)
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    61279cd View commit details
    Browse the repository at this point in the history
  13. perf: Don't recheck type after positive case in infer_encoding_types

    Within a recursive call, an `str` would always be checked for each case - despite the last always being false.
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    cf92402 View commit details
    Browse the repository at this point in the history
  14. feat: adds _Then.to_dict

    Somewhat duck-typing as `SchemaBase`.
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    22e89a8 View commit details
    Browse the repository at this point in the history
  15. feat: allow _Then as an encoding input

    Temporary solution while `when-then-otherwise` is not related to any other `altair` classes.
    dangotbanned committed May 31, 2024
    Configuration menu
    Copy the full SHA
    dfc14de View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    328338a View commit details
    Browse the repository at this point in the history

Commits on Jun 2, 2024

  1. fix(typing): Remove UndefinedType from _ConditionType

    - Adds more specific return type for `_get_predicate_expr`
    - Adds guard `_is_undefined`
    dangotbanned committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    430898f View commit details
    Browse the repository at this point in the history
  2. refactor: Simplify _predicate_to_condition

    - Removes the need for `**kwargs`, as only a single keyword is every checked
    - Removes need for explanation comment
    - Simplifies return type
    dangotbanned committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    5f49715 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    460444c View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c8469ed View commit details
    Browse the repository at this point in the history
  5. refactor: moved comment

    dangotbanned committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    4b8353b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f1d9dc2 View commit details
    Browse the repository at this point in the history
  7. feat: extend and refactor when-then-otherwise functionality

    - Wrap literals passed to `then`, `otherwise` in `alt.value`
      - opt-out as default
      - added overloads
    - Wrap kwargs passed to `when` as `alt.datum.key == (value)`
    - Accept multiple predicates in `when`, reducing all predicates as an `AND` reduction.
    - Refactor to reduce code duplication
    - Added some initial docs
    dangotbanned committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    38d425f View commit details
    Browse the repository at this point in the history
  8. fix(typing): exclude typing_extensions.Protocol and short TypeVar

    …s from `__all__`
    
    The `TypeVar` rule is broad, but covers common names like `T`, `S`, `R`, etc
    dangotbanned committed Jun 2, 2024
    Configuration menu
    Copy the full SHA
    80c32d3 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    7b5f711 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    b962c48 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    3a1c640 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    7b671db View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2024

  1. feat: Support additional predicate types in when, condition

    Experimental and will require some features in later commits to work reliably
    dangotbanned committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    5f631de View commit details
    Browse the repository at this point in the history
  2. feat: adds conversion functions between alt.condition/`when-then-ot…

    …herwise` to expressions
    
    Proof-of-concept only.
    
    Used for passing some new tests
    dangotbanned committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    fbd9205 View commit details
    Browse the repository at this point in the history
  3. feat: Adds config to alt.value wrapping in when-then-otherwise

    - Allows the option to parse strings as literals, skipping `parse_shorthand`.
    - This behaviour is opt-out
    dangotbanned committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    9af55c2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    80fbcbd View commit details
    Browse the repository at this point in the history
  5. test: additional when-then-otherwise tests

    Responding to @mattijn [comment](vega#3427 (comment))
    dangotbanned committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    5da5622 View commit details
    Browse the repository at this point in the history
  6. fix(typing): satisfy mypy

    Mostly test errors which are being checked
    dangotbanned committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    c994bf8 View commit details
    Browse the repository at this point in the history
  7. revert: 7b671db

    Deprecated since pandas 2.2.0, but CI uses version prior to new values introduction
    dangotbanned committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    8c0f45a View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2024

  1. feat(typing): adds _FieldEqualType for when constraints

    - Provides static type checking instead of `Any`
    - Alias name hints towards usage
    - Alias doc gives further context, without requiring repeating & syncing wherever it is used
    dangotbanned committed Jun 16, 2024
    Configuration menu
    Copy the full SHA
    989b1f5 View commit details
    Browse the repository at this point in the history
  2. docs, feat: Add draft doc for alt.when and make public

    I'm happy with the content in the doc, hopefully this can be refined during review.
    
    - It adapts parts of `alt.condition`, but not verbatim as there was a `# TODO: update the docstring`
    - Contains links to other sources of inspo
    - Deliberately avoided the word "condition" as much as possible
      -  `when`'s result can become a condition, but only after calling `result.then(...)`.
      - Stressing that `when` != `condition`
    dangotbanned committed Jun 16, 2024
    Configuration menu
    Copy the full SHA
    7d41219 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    80a0812 View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2024

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

    dangotbanned committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    237c874 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f4b51b8 View commit details
    Browse the repository at this point in the history
  4. refactor: Remove unused expr import in api

    Was only kept around in case some other code relied on it as a side-effect.
    Have now confirmed that is not the case and is safe to remove.
    
    Resolves vega#3427 (comment)
    dangotbanned committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    0a070c9 View commit details
    Browse the repository at this point in the history
  5. feat(typing): Preserve wrapper type in alt.condition

    I believe `mypy` failed this on an earlier commit, but some uncommitted improvements to `Chart.Encode` have identified problems in `hexbins`, `select_detail` examples.
    
    I'm planning to open another PR with that fix
    dangotbanned committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    b85223f View commit details
    Browse the repository at this point in the history
  6. fix(typing): remove now-unused ignores

    Fixes 2/3 of vega@b85223f
    dangotbanned committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    30c1ad1 View commit details
    Browse the repository at this point in the history
  7. fix: Simplify complex expr import behaviour

    Replaces the prior `mypy` error producing relative+implicit import logic with a single top-level, explicit import.
    Amends some tests that were reliant on undocumented `alt.expr....` behaviour.
    dangotbanned committed Jun 19, 2024
    Configuration menu
    Copy the full SHA
    95093d7 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    55cc301 View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2024

  1. docs: refine alt.when doc

    - Fix inconsistent `&`/`AND` usage
    - Fix url link endings
    - Use specific directives instead of generic, where appropriate
    dangotbanned committed Jun 22, 2024
    Configuration menu
    Copy the full SHA
    62ad8d1 View commit details
    Browse the repository at this point in the history
  2. docs: Improve _When docs

    - Use crossref directives
    - Adds doc for `_When.then`
    dangotbanned committed Jun 22, 2024
    Configuration menu
    Copy the full SHA
    9cf84f9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    58e0054 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    fe8ab25 View commit details
    Browse the repository at this point in the history
  5. docs: Fix some user guide sphinx errors

    Possibly related to 95093d7
    dangotbanned committed Jun 22, 2024
    Configuration menu
    Copy the full SHA
    e159ea0 View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2024

  1. Merge remote-tracking branch 'origin/main' into condition-multiple

    - This was quite a tricky merge
    dangotbanned committed Jun 28, 2024
    Configuration menu
    Copy the full SHA
    8e92953 View commit details
    Browse the repository at this point in the history
  2. revert(typing): re-enable mypy unused-ignore

    This was temporary se vega@55cc301
    dangotbanned committed Jun 28, 2024
    Configuration menu
    Copy the full SHA
    910f493 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2276d50 View commit details
    Browse the repository at this point in the history
  4. refactor: UX-first improvements to imports, annotations

    - utilise annotation scope/ `TYPE_CHECKING` is more places
    - reduce the number of import aliases
    -more robust handling of the `core.Dict`/`typing.Dict` special-case
    dangotbanned committed Jun 28, 2024
    Configuration menu
    Copy the full SHA
    591a55b View commit details
    Browse the repository at this point in the history

Commits on Jun 29, 2024

  1. Configuration menu
    Copy the full SHA
    0be41e8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    11841d0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b48a812 View commit details
    Browse the repository at this point in the history
  4. docs: Add doc for ChainedWhen.then, misc fixes

    Spotted some inconsistencies during testing that were corrected here
    dangotbanned committed Jun 29, 2024
    Configuration menu
    Copy the full SHA
    8c1e36b View commit details
    Browse the repository at this point in the history
  5. docs: add api-cls tree

    dangotbanned committed Jun 29, 2024
    Configuration menu
    Copy the full SHA
    5baaa34 View commit details
    Browse the repository at this point in the history

Commits on Jun 30, 2024

  1. refactor: remove seq_as_lit option

    This added complexity, and setting `seq_as_lit=False` doesn't make much sense from the perspective of the user
    dangotbanned committed Jun 30, 2024
    Configuration menu
    Copy the full SHA
    801cccc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    25ac2fa View commit details
    Browse the repository at this point in the history

Commits on Jul 2, 2024

  1. Configuration menu
    Copy the full SHA
    b238aef View commit details
    Browse the repository at this point in the history
  2. chore: remove type ignore comments

    Utilises vega#3458
    dangotbanned committed Jul 2, 2024
    Configuration menu
    Copy the full SHA
    5f7d949 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2024

  1. Configuration menu
    Copy the full SHA
    f89990f View commit details
    Browse the repository at this point in the history
  2. fix: mypy error

    ```
    tests\vegalite\v5\test_api.py:258: error: Item "None" of "dict[str, str | Expression | PredicateComposition | Any] | Any | None" has no attribute "pop"  [union-attr]
    ```
    dangotbanned committed Jul 3, 2024
    Configuration menu
    Copy the full SHA
    c217b4f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8f66b7a View commit details
    Browse the repository at this point in the history

Commits on Jul 6, 2024

  1. Configuration menu
    Copy the full SHA
    d12a741 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    87b6014 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6f06b80 View commit details
    Browse the repository at this point in the history
  4. feat: redesign when-then-otherwise to account for condition restric…

    …tions
    
    - Utilise `TypedDict.__extra_items__` https://peps.python.org/pep-0728/
    - Use generics where knowledge of the internal structure was lacking
    - Make `Then` a subclass of `SchemaBase`
    - Introduce some informative errors for complex structural issues
    - Update/add `@overload`s
    dangotbanned committed Jul 6, 2024
    Configuration menu
    Copy the full SHA
    1292962 View commit details
    Browse the repository at this point in the history
  5. test: update test to use Then's getattr

    Previously didn't inherit from `SchemaBase`
    dangotbanned committed Jul 6, 2024
    Configuration menu
    Copy the full SHA
    b110f65 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f33a9cd View commit details
    Browse the repository at this point in the history
  7. ci: fix PT001 rule inversion conflict

    See astral-sh/ruff#12106
    
    I've fixed to the new behaviour and disabled the rule
    dangotbanned committed Jul 6, 2024
    Configuration menu
    Copy the full SHA
    f95be1a View commit details
    Browse the repository at this point in the history
  8. feat(DRAFT): add experimental _str_as

    See vega#3427 (comment)
    
    Not yet exposed as an option
    dangotbanned committed Jul 6, 2024
    Configuration menu
    Copy the full SHA
    31bad3f View commit details
    Browse the repository at this point in the history

Commits on Jul 7, 2024

  1. refactor: str_as_lit -> str_as, invert default

    - Suggested in vega#3427 (comment)
    - New default is less likely to cause errors in spec
    - See also vega#3427 (comment)
    dangotbanned committed Jul 7, 2024
    Configuration menu
    Copy the full SHA
    d0784f8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fbd9088 View commit details
    Browse the repository at this point in the history

Commits on Jul 8, 2024

  1. Configuration menu
    Copy the full SHA
    c8f7d6c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8f5d352 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    49c4d24 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    38d8a8e View commit details
    Browse the repository at this point in the history
  5. refactor(typing): remove lesser used aliases

    Some of these are less helpful now that annotation scope can be used
    dangotbanned committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    bd26c07 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    6245a8b View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    5e64fcb View commit details
    Browse the repository at this point in the history
  8. test: remove alt.value from example-based tests

    These are intended to show the desired solution for an example.
    Therefore they should use the most concise syntax
    dangotbanned committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    a3531fb View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2024

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

Commits on Jul 13, 2024

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

Commits on Jul 15, 2024

  1. merge remote

    dangotbanned committed Jul 15, 2024
    Configuration menu
    Copy the full SHA
    86880c9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e712b61 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d607c70 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2024

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

Commits on Jul 18, 2024

  1. Configuration menu
    Copy the full SHA
    0f862ad View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    290da86 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3fa4a3f View commit details
    Browse the repository at this point in the history
  4. docs: minor consistency update to _ComposablePredicateType

    Now matches `when()`, where it is used
    dangotbanned committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    528ca16 View commit details
    Browse the repository at this point in the history
  5. chore: exclude TypeAliasType from __all__

    This is used for generic type aliases
    dangotbanned committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    159bcf1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    500f7e1 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    db473c3 View commit details
    Browse the repository at this point in the history
  8. docs: fix lowercase

    dangotbanned committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    de08676 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    633736d View commit details
    Browse the repository at this point in the history
  10. revert: remove unrelated expr changes

    These will all be superseded by vega#3466
    dangotbanned committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    0f54057 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    0ed9eab View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    fc6ce16 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    4bc4732 View commit details
    Browse the repository at this point in the history
  14. refactor: Define SHORTHAND_KEYS in utils.core

    This is closer to the function that builds the `dict` and will be less likely to fall out of sync
    dangotbanned committed Jul 18, 2024
    Configuration menu
    Copy the full SHA
    f0bc7b8 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    33e17fa View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    59af293 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    c70d535 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    87cd9bd View commit details
    Browse the repository at this point in the history