-
Notifications
You must be signed in to change notification settings - Fork 89
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Now the types need to pass through Numba. (#31)
The types pass through Numba: `NumpyArray` takes a literal `Type` (known at compile-time, because deriving it is complicated) and all other arrays take a runtime `Type` (because `RegularType`'s `size` needs to change in response to some slice lengths, known only at runtime). I think I forgot to set the dynamic `RegularType.size` (after all that effort!). At least it will be easy to add. If `isbare`, Types are not propagated through Numba so that `isbare` is preserved. However, all current tests pass without that streamlining. * [WIP] Now the types need to pass through Numba. * Move util.py to _util.py; it's not for users. * Start the types-in-numba task. * Add namespace qualifier to all Awkward types in Numba. * Type wrapper can be very simple... * RecordArray and RecordType have constructors based on an explicit lookup/reverselookup, so they can be round-tripped through Pickle. * Working on pickleability of Types. * Still working on pickleability of Types. * All types are pickleable except for DressedType. * All types are pickleable; boxing ArrayType works. * Punt on Python 2.7 for pickling in pybind11 (and hence passing Types through Numba). * Types in repr print-out. * Working on unfinished PR028 issue: RegularType in NumpyArray. * NumpyArray::type is now correct. * Maybe fixed all the Windows bugs. * Types pass through Numba. * Added placeholders for all Type::none() insertions, just as we previously did for C++. Next: add a property that is for bare types and use that instead of . * Fixed bug in RegularArray/List*Array::innertype. * NumpyArray,RegularArray,List*Array::box are all type-aware, RecordArray and Record are next. * All *Array::box methods are type-aware. * Fix test to be dict-order independent. * Types will have to become runtime objects in Numba because of RegularType. * Passing through types will require more thought. * Both literal and by-value Types work; next, use literal for NumpyArray and by-value for everything else. * All but RecordArray works. * All Types in Numba work, for all array types. * This should fix old tests. * Only propagate Types through Numba if necessary. Also, reinstate 32-bit Python 3.7 because Numba isn't tested in Python 3.8.
- Loading branch information
Showing
30 changed files
with
1,100 additions
and
220 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
0.1.28 | ||
0.1.31 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.