This is the first (pre) release of Awkward 2, after `main` and `main-v1` have diverged (considerably). There is no `awkward._v2` submodule in this release. Any instances of
python
import awkward._v2 as ak
need to be changed to
python
import awkward as ak
to use this release. Also, there is no guarantee that Awkward 1 code will work in this release; it is a (slightly) backward incompatible major release, but not final until 2.0.0 (no "rc" number).
New features
* feat: replace v1 with v2 (preserve-history) by agoose77 in https://github.com/scikit-hep/awkward/pull/1721
* feat: add _v2 proxy module by agoose77 in https://github.com/scikit-hep/awkward/pull/1730
* feat: make ak.from_json with schema ignore unspecified fields (instead of error). by jpivarski in https://github.com/scikit-hep/awkward/pull/1770
* feat: add new `"fields"` key to `RecordForm` by agoose77 in https://github.com/scikit-hep/awkward/pull/1773
* feat: support scalars in `TypeTracer` operations by agoose77 in https://github.com/scikit-hep/awkward/pull/1774
* feat: add `RegularArray._reduce_next` implementation by agoose77 in https://github.com/scikit-hep/awkward/pull/1811
* feat: Array Builder in Numba - add missing methods by ianna in https://github.com/scikit-hep/awkward/pull/1677
* feat: to/from RDataFrame support for bool type arrays by ianna in https://github.com/scikit-hep/awkward/pull/1829
* feat: preserve `None` in `np.ravel()` by agoose77 in https://github.com/scikit-hep/awkward/pull/1826
Bug-fixes and performance
* fix: ensure `behavior` is taken from wrapped array in `ak.Array` by agoose77 in https://github.com/scikit-hep/awkward/pull/1715
* refactor!: disable iteration of records by agoose77 in https://github.com/scikit-hep/awkward/pull/1725
* fix: Record is not in contents, but in record by ianna in https://github.com/scikit-hep/awkward/pull/1739
* fix: use proper lengths in `ByteMaskedArray.mergemany` by agoose77 in https://github.com/scikit-hep/awkward/pull/1749
* fix: don't assume trailing `.` for module name in `is_XXX_buffer` by agoose77 in https://github.com/scikit-hep/awkward/pull/1743
* fix: kernel name in `IndexedArray` by agoose77 in https://github.com/scikit-hep/awkward/pull/1754
* fix: use raise with `ak._errors.wrap_error` by agoose77 in https://github.com/scikit-hep/awkward/pull/1760
* fix: use dict representation of Form in pickling by agoose77 in https://github.com/scikit-hep/awkward/pull/1768
* fix: ignore unknown JAX "buffer" types & fix nplike mixing by agoose77 in https://github.com/scikit-hep/awkward/pull/1769
* fix: propagate mask through `from_numpy` by agoose77 in https://github.com/scikit-hep/awkward/pull/1777
* fix: use the flag for non-persistence by ianna in https://github.com/scikit-hep/awkward/pull/1781
* fix: simplify `ListOffsetArray_reduce_nonlocal_outstartsstops` by agoose77 in https://github.com/scikit-hep/awkward/pull/1796
* fix: allow empty sublists in ak.run_lengths by agoose77 in https://github.com/scikit-hep/awkward/pull/1795
* fix: `ak.prod` for booleans had been incorrectly casting output by jpivarski in https://github.com/scikit-hep/awkward/pull/1827
* fix: visit all layout nodes with `ak.fill_none(..., axis=None)` by agoose77 in https://github.com/scikit-hep/awkward/pull/1830
* perf: only stringify function arguments if nplike is delayed. by jpivarski in https://github.com/scikit-hep/awkward/pull/1825
Other
* refactor: replace Behavior with collections.ChainMap by agoose77 in https://github.com/scikit-hep/awkward/pull/1731
* refactor: rename `ak.nplike` → `ak.nplikes` & `nplikes.of` →`nplikes.nplike_of` by agoose77 in https://github.com/scikit-hep/awkward/pull/1744
* refactor: split error-handling code from `_util` by agoose77 in https://github.com/scikit-hep/awkward/pull/1752
* refactor: drop unused code from Form, rename serialisation methods by agoose77 in https://github.com/scikit-hep/awkward/pull/1748
* refactor: reduce qualified names of Content, Form, Type subclasses by jpivarski in https://github.com/scikit-hep/awkward/pull/1757
* refactor: make _v2 facade a static module. by jpivarski in https://github.com/scikit-hep/awkward/pull/1758
* refactor: move `is_XXX_buffer` into respective nplikes by agoose77 in https://github.com/scikit-hep/awkward/pull/1761
* refactor: cleanup `_connect` submodule by agoose77 in https://github.com/scikit-hep/awkward/pull/1763
* test: ensure that parameters are kept for `NumpyArray`s under ufunc operations by agoose77 in https://github.com/scikit-hep/awkward/pull/1712
* test: remove `ak.behavior` usage in tests by agoose77 in https://github.com/scikit-hep/awkward/pull/1716
* test: use a temp dir for writting out the test files by ianna in https://github.com/scikit-hep/awkward/pull/1804
* build(deps): bump amannn/action-semantic-pull-request from 4 to 5.0.1 by dependabot in https://github.com/scikit-hep/awkward/pull/1788
* build(deps): bump docker/setup-qemu-action from 2.0.0 to 2.1.0 by dependabot in https://github.com/scikit-hep/awkward/pull/1783
* build(deps): bump amannn/action-semantic-pull-request from 5.0.1 to 5.0.2 by dependabot in https://github.com/scikit-hep/awkward/pull/1798
* build(deps): bump pypa/cibuildwheel from 2.10.2 to 2.11.1 by dependabot in https://github.com/scikit-hep/awkward/pull/1787
* ci: bump pypa/cibuildwheel from 2.10.0 to 2.10.2 by dependabot in https://github.com/scikit-hep/awkward/pull/1740
* ci: run Codecov for commits to main by agoose77 in https://github.com/scikit-hep/awkward/pull/1751
* ci: enable versions for built docs by agoose77 in https://github.com/scikit-hep/awkward/pull/1812
* ci: use custom PR message action by agoose77 in https://github.com/scikit-hep/awkward/pull/1816
* docs: update docstring of `ak.with_name` to reflect `None` interpretation by agoose77 in https://github.com/scikit-hep/awkward/pull/1665
* docs: merge new docs into main by agoose77 in https://github.com/scikit-hep/awkward/pull/1776
* docs: remove `vector_design_prototype`'s reference by Saransh-cpp in https://github.com/scikit-hep/awkward/pull/1803
* docs: fix redirects by agoose77 in https://github.com/scikit-hep/awkward/pull/1815
* docs: fix kernel generation by agoose77 in https://github.com/scikit-hep/awkward/pull/1800
* docs: enable plausible.js analytics by agoose77 in https://github.com/scikit-hep/awkward/pull/1822
* docs: add vertical margin between badges by agoose77 in https://github.com/scikit-hep/awkward/pull/1832
* docs: add notes on "declaring `ArrayBuilder` type" by agoose77 in https://github.com/scikit-hep/awkward/pull/1831
* chore: update CITATION.cff by agoose77 in https://github.com/scikit-hep/awkward/pull/1717
* chore: use codecov action by agoose77 in https://github.com/scikit-hep/awkward/pull/1722
* chore: add isort by henryiii in https://github.com/scikit-hep/awkward/pull/1666
* chore: set `VERSION_INFO` contents to `2.0.0rc1` by agoose77 in https://github.com/scikit-hep/awkward/pull/1723
* chore: remove sre_parse dependency from Lark-generated parser. by jpivarski in https://github.com/scikit-hep/awkward/pull/1759
* chore: update pre-commit hooks by pre-commit-ci in https://github.com/scikit-hep/awkward/pull/1733
* chore: update pre-commit hooks by pre-commit-ci in https://github.com/scikit-hep/awkward/pull/1779
* chore: update pre-commit hooks by pre-commit-ci in https://github.com/scikit-hep/awkward/pull/1801
**Full Changelog**: https://github.com/scikit-hep/awkward/compare/v1.10.1...v2.0.0rc1