PackageTrack
Sign in Get early access

a1

A package that implements A1 Notation used in spreadsheets and worksheets

2.2.0 sjhorn/a1

What this package is like to depend on

Last release 6 months ago

31 Jan 2026

Ships unpredictably

gaps range from 9 days to 1.6 years

Nearly every release is documented

notes for 18 of 18 stable releases

Nothing withdrawn

no release was ever pulled

2 years old

18 releases · first in 2024

2 releases in the last 12 months

see the full history below

Release timeline

18 releases · Mar 2024 to Jan 2026
2025 2026
Release Pre-release

Releases

latest 18
  1. 2.2.0 31 Jan 2026
    Release notes

    Parse and round-trip $A$1, $A1, A$1 absolute reference markers.
    Equality and hashCode remain position-based only.

    Co-Authored-By: Claude Opus 4.5 [email protected]

    Open source →
    Release notes
    • Added $ absolute reference notation support ($A$1, $A1, A$1, A1)
    • Added columnAbsolute and rowAbsolute fields to A1, A1Partial, and A1Reference
    • toString() round-trips absolute markers: $A$1 parses and serializes correctly
    • Equality and hashCode remain position-based (absolute state does not affect equality)
    • Added A1.copyWith() for changing absolute flags on existing references
    Open source →
  2. 2.1.0 31 Jan 2026
    Release notes
    • Added A1.maxRows and A1.maxColumns constants with bounds validation on construction
    • Added A1Range.collapsed() factory, isCollapsed getter, rowIterable() and columnIterable() methods
    • Refactored [Quadtree] internals from array-based to map-based with Quadrant enum for correctness
    • Improved internal naming for row/column partial helpers
    • Fixed A1Reference.parse to treat bare cell/range strings (e.g. A1, A1:B2) as cell references instead of worksheet names
    • Upgraded to petitparser ^7.0.1 and lints ^6.1.0
    Open source →
  3. 2.0.0 11 Jun 2024
    Release notes
    • Breaking changes on comparison of [A1], to provide deterministic binary searches
    • Addition of [A1RangeSearch] that features a binary, quadtree searches and merge movements across mutliple [A1Range]s for a match
    • Simplified [A1Range], [A1] and [A1Partial] to use rectangle-like logic, even for unbounded ranges
    • Adding left,top,right,bottom as well as columnSpan and rowSpan to [A1Range]
    • Refactored numerous tests to match the new more deterministic logic for comparisons, column/row matches
    Open source →
  4. 1.1.0 25 May 2024
    Release notes
    • Add features for A1Range to selection single border for left,top,right,bottom of range
    • Fix range [A1Range] comparison to compare whole single/multi-column, single/multi-whole row, whole sheet
    • Bug fix [A1Range] hashCode for range A1:A1, as this would return zero (0) for single value ranges like A1:A1, B2:B2
    • Add intersect, subtract and overlayRanges to assist with formatting ranges in a worksheet
    • Worthy of a minor version bump to 1.1.0
    Open source →
  5. 1.0.13 29 Apr 2024
    Release notes
    • Bug fix for hasRow, hasColumn for whole columns/rows ie. A:A, 1:1 cases
    • Add features to check if a partial represents a whole row or column or either
    • Add A1Range.all and A1Partial.all to support these single use-cases
    Open source →
  6. 1.0.12 26 Apr 2024
    Release notes
    • Fixeg bug in hasCorner or the A:A, 2:2 cases ie. whole row or column selection
    Open source →
  7. 1.0.11 26 Apr 2024
    Release notes
    • Add hasRow/Column method for A1Range to help with showing selection in a spreadsheet UI
    • Fixed bug that didn't allow parsing A1Range A:C (cols)
    Open source →
  8. 1.0.10 25 Apr 2024
    Release notes
    • Add method for A1Range to check if an A1 is in one of its corners, typically a suitable place for an anchor cell
    Open source →
  9. 1.0.9 23 Apr 2024
    Release notes
    • Fix edge case in a A1Range where the FROM has a greater column than the TO
    Open source →
  10. 1.0.8 23 Apr 2024
    Release notes
    • Enhanced A1Range with an optional anchor cell
    Open source →
  11. 1.0.7 23 Apr 2024
    Release notes
    • Enhanced A1Range with fromA1s method.
    • Enhanced A1Partial with fromA1 method.
    Open source →
  12. 1.0.6 07 Apr 2024
    Release notes
    • Enhanced A1Partial to accept a vector
    • Moved the int to A1 Letters into an extension on int
    Open source →
  13. 1.0.5 07 Apr 2024
    Release notes
    • Added testing is an A1 is in an A1Range with contains method
    • Slight tweak on comparing a A1Partial eg. A with 1, it will now use the larger index rather than have A always be larger
    • Adjusted tests for above tweak
    Open source →
  14. 1.0.4 02 Apr 2024
    Release notes
    • Added support for A1 mapping as an extension on Map<String,String> to Map<A1,A1> to assist with A1 moves
    Open source →
  15. 1.0.3 01 Apr 2024
    Release notes
    • Added support for A1 as an extension on Set to simplify creating an a1 set from String
    Open source →
  16. 1.0.2 30 Mar 2024
    Release notes

    Start matching GitHub releases with pub.dev

    Open source →
    Release notes
    • Added A1Range and A1Reference examples to readme and example
    • Adjusted area to be a double for A1 and build this into a range
    • Fixed minor bug with parsing a partial range in a reference
    • Added github action build pipeline with coverage
    • Move test coverage to 100%
    Open source →
  17. 1.0.1 28 Mar 2024
    Release notes
    • Minor fixes in docs and imports
    • Added icon
    Open source →
  18. 1.0.0 28 Mar 2024
    Release notes
    • Initial version that implements
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive