Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Ultraplot/UltraPlot
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 3eb03e3
Choose a base ref
...
head repository: Ultraplot/UltraPlot
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 6626cc9
Choose a head ref
  • 5 commits
  • 8 files changed
  • 1 contributor

Commits on Jul 17, 2026

  1. Extract keyword/alias helpers into internals.kwargs and add _alias_kw…

    …args
    
    The internals package __init__ had grown into a grab-bag mixing keyword/alias
    resolution with rc, location, and lazy-import helpers. Move the cohesive
    keyword-argument cluster (_not_none, _alias_maps, the _pop_* poppers, and the
    signature helpers) into a dedicated internals/kwargs.py, and re-export them from
    the package so every existing 'from ..internals import _not_none' keeps working
    unchanged. Add a new _alias_kwargs decorator that folds synonym keywords into
    their canonical names with the same precedence and conflict warning as
    _not_none, replacing the repetitive 'x = _not_none(x=x, y=y)' boilerplate at the
    top of aliased functions.
    cvanelteren committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    c33b97f View commit details
    Browse the repository at this point in the history
  2. Use @_alias_kwargs for Figure.__init__ keyword aliases

    Replace the six-line block of _not_none alias resolutions at the top of
    Figure.__init__ with a single @_alias_kwargs table and drop the redundant alias
    parameters (ref, aspect, axwidth, axheight, width, height) from the signature;
    they are now folded into their canonical names before the body runs. Behavior is
    unchanged, including the conflict warning and the refnum default of 1. This is
    the first real adopter of the new decorator and the pattern for retiring the
    scattered _not_none alias boilerplate elsewhere.
    cvanelteren committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    a91b118 View commit details
    Browse the repository at this point in the history
  3. Preserve refnum=None default and clarify _alias_kwargs conflicts

    Adversarial review found that dropping the six _not_none lines let an explicit
    Figure(refnum=None) survive as None instead of collapsing to 1 the way
    _not_none(refnum=refnum, ref=ref, default=1) did, which loses the reference axes
    and changes the figure size. Restore the canonical None default and coerce it
    with a single _not_none call, and cover the case in the tests. Also reword the
    decorator's conflict warning so it no longer implies the canonical keyword was
    passed when two synonyms collide, and document that it handles keyword aliases
    only.
    cvanelteren committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    a060074 View commit details
    Browse the repository at this point in the history
  4. Lead shared style docstrings with the canonical parameter name

    The reusable style-parameter snippets (line, patch, pcolor/contour collections,
    text) opened each numpydoc field with a pile of alias names like
    'lw, linewidth, linewidths :', which every plotting method inherited and which
    made the parameter tables hard to scan. Lead each field with the canonical name
    and move the common documented synonyms into a short trailing 'Aliases:' note,
    built through a small _aliases_note helper. This also fixes a drifted typo in the
    contour snippet ('a, alpha, alpha' -> 'a, alpha, alphas'). Behavior is unchanged;
    all synonyms are still accepted at runtime via _pop_props.
    cvanelteren committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    2b789f1 View commit details
    Browse the repository at this point in the history
  5. Fold geo format alias entries into canonical-first notes

    The geo format docstring documented gridline-locator aliases as separate
    'lonlines, latlines : optional / Aliases for lonlocator, latlocator' blocks
    sitting next to the canonical entries, doubling the number of parameter entries
    a reader scans. Fold each alias set into a trailing 'Aliases:' note on its
    canonical entry (lonlocator, lonlocator_kw, lonminorlocator, lonminorlocator_kw),
    matching the shared style-snippet presentation. Documentation only; the alias
    keywords are still accepted.
    cvanelteren committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    6626cc9 View commit details
    Browse the repository at this point in the history
Loading