Skip to content
This repository has been archived by the owner on Jun 21, 2022. It is now read-only.

[WIP] Table in awk-cpp #146

Open
wants to merge 98 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
73c2264
parents2startsstops
cescott May 31, 2019
5440a15
uniques2offsetsparents
cescott May 31, 2019
9f41ac6
JaggedArraySrc in ._jagged
EscottC Jun 3, 2019
7d149e0
templates
EscottC Jun 5, 2019
075fb96
work in progress
EscottC Jun 6, 2019
f2e5f2d
learning mess in progress
EscottC Jun 7, 2019
a0a519e
deeper into the rabbit hole...
EscottC Jun 7, 2019
c5c6e1c
Revert "deeper into the rabbit hole..."
EscottC Jun 7, 2019
adcebc9
Revert "learning mess in progress"
EscottC Jun 7, 2019
840a16c
Revert "work in progress"
EscottC Jun 7, 2019
abbbc52
pybind method macro
EscottC Jun 8, 2019
6bc6878
Fixed some warnings
EscottC Jun 10, 2019
1f1ce5e
travis didn't like that last commit
EscottC Jun 10, 2019
93b89f3
strides
EscottC Jun 11, 2019
af7395f
Trying to fix the travis build
EscottC Jun 11, 2019
8f13371
Bug Fixes
EscottC Jun 11, 2019
1368cfc
convert output to int64
EscottC Jun 11, 2019
3d2003d
size_t to ssize_t
EscottC Jun 12, 2019
bec5419
starting to work on init
EscottC Jun 12, 2019
c4344a4
__init__
EscottC Jun 12, 2019
6847063
fixing previous commit
EscottC Jun 12, 2019
8b3e3c4
cleanup + WIP __getitem__
EscottC Jun 13, 2019
1525899
starts, stops, getitem
EscottC Jun 13, 2019
1ea3535
some in-line validity checks in __getitem__
EscottC Jun 14, 2019
d9ab79d
getters, setters, __repr__
EscottC Jun 14, 2019
827d9fe
fixes #144
jpivarski Jun 17, 2019
c56313a
cpp-table first commit
duynht Jun 17, 2019
24c681b
ignore .vscode
duynht Jun 17, 2019
bf5c9ad
git rm .vscode/
duynht Jun 17, 2019
dcab91f
Merge pull request #145 from scikit-hep/issue-144
jpivarski Jun 17, 2019
9e69cd2
byteorder on Python-side
EscottC Jun 17, 2019
56dfaaf
Update appveyor.yml
nsmith- Jun 17, 2019
6ba0fff
__iter__ and __next__
EscottC Jun 17, 2019
cd431e2
__str__
EscottC Jun 17, 2019
0bebe83
non-native endian support
EscottC Jun 18, 2019
32746cf
byteswap support for all systems
EscottC Jun 18, 2019
01bcf82
simplified byteswap functions
EscottC Jun 18, 2019
d353455
wrapped numpy arrays
EscottC Jun 18, 2019
1dc15b9
Fixed explicit specialization issue?
EscottC Jun 18, 2019
34ee8ba
fix: taking address of temporary (hopefully)
EscottC Jun 18, 2019
2317f8a
[array] tojagged: fixed compactness condition
Nollde Jun 19, 2019
05bce92
Merge pull request #148 from Nollde/patch-1
jpivarski Jun 19, 2019
99bcb59
awk_util.h for makeNative(int) method
EscottC Jun 19, 2019
4954aee
fixed property issues, changed py::array_t to py::array
EscottC Jun 19, 2019
126f838
Merge pull request #147 from nsmith-/patch-1
jpivarski Jun 20, 2019
28c7484
add jagged boolean indexing test
masonproffitt Jun 20, 2019
1113b80
jagged boolean indexing fix
masonproffitt Jun 20, 2019
2710ca3
use numpy.resize instead of numpy.array.resize
masonproffitt Jun 20, 2019
21d80db
Merge pull request #151 from masonproffitt/boolean_indexing_fix
jpivarski Jun 20, 2019
0474d74
__str__ and __repr__ in NumpyArray
EscottC Jun 20, 2019
d402009
these changes are all over the place
EscottC Jun 22, 2019
afb544f
class-ify persists.serialize
bfis Jun 24, 2019
5532da1
Fixed delimiter argument for serialize
bfis Jun 24, 2019
02b7f71
cleanup and testing
EscottC Jun 24, 2019
eb760ee
the tests worked on my system?
EscottC Jun 24, 2019
6f4f57b
I think I found the issue
EscottC Jun 24, 2019
20c8b46
does this work?
EscottC Jun 25, 2019
adfd0a5
this might not work
EscottC Jun 25, 2019
159d043
Revert "this might not work"
EscottC Jun 25, 2019
b67c5cd
Move compression policy list back to module level
bfis Jun 25, 2019
6613748
Merge pull request #137 from scikit-hep/awk-cpp
jpivarski Jun 25, 2019
660a779
trivial change
jpivarski Jun 25, 2019
c9e46cb
Change C++ name from JaggedArraySrc to JaggedArray.
jpivarski Jun 25, 2019
9858264
Fix bug in JaggedArray choose() when using non-offsetsaliased arrays
nsmith- Jun 25, 2019
e7fd6fd
Use numpy.repeat() to accelerate offsets2parents
nsmith- Jun 25, 2019
c887b12
Dropped double underscore and __repr__
EscottC Jun 25, 2019
018b218
Reorganized .cpp and .h files
EscottC Jun 25, 2019
d564673
Vectorized startsstops2parents, optimize index property
nsmith- Jun 25, 2019
4cdbe1f
Numpy <1.16 compatible
nsmith- Jun 26, 2019
3bb821b
Try setting INDEXTYPE as intp and see what happens
nsmith- Jun 26, 2019
ca00c21
JaggedArrayIterator & wrapped content property
EscottC Jun 26, 2019
9d27775
unwrap jaggediter __next__() method
EscottC Jun 26, 2019
a829b5f
Revert "Try setting INDEXTYPE as intp and see what happens"
nsmith- Jun 26, 2019
03cccfb
Wrap sensitive inputs to reduce_at and repeat for windows
nsmith- Jun 26, 2019
60cfe53
I might have to sign up for azure cloud at this point geez
nsmith- Jun 26, 2019
e4f650f
whack-a-mole
nsmith- Jun 26, 2019
bbca1d5
Reverted compression parameter handling to original behaviour
bfis Jun 26, 2019
0d3400d
BlobSerializer.compression stores parsed policies
bfis Jun 26, 2019
a214a14
implemented StringArrays to Arrow (the mistake earlier was in not set…
jpivarski Jun 26, 2019
5b5e33f
Fix Python 2 by ignoring the difference between bytes and strings (Bi…
jpivarski Jun 26, 2019
142f202
Merge pull request #154 from nsmith-/fix_choose_masked
jpivarski Jun 26, 2019
ec7b7a6
finished hierarchy, wrapped pybind
EscottC Jun 27, 2019
233f7e7
Merge pull request #152 from bfis/master
jpivarski Jun 27, 2019
917ccc6
fixed repr (was calling py::object::repr)
EscottC Jun 27, 2019
cec8279
Return JaggedArray index with correct dtype if empty
nsmith- Jun 27, 2019
9efaeee
fixed doubly jagged bug
EscottC Jun 27, 2019
e5bdf9f
fix gcc complaint about casting ptr to int
EscottC Jun 27, 2019
3f31d9c
Merge pull request #155 from nsmith-/empty_index_type
jpivarski Jun 27, 2019
737a35a
Merge pull request #153 from scikit-hep/collaborate-on-jaggedarray-cpp
EscottC Jun 27, 2019
500ff69
cpp-table first commit
duynht Jun 17, 2019
3ef472c
ignore .vscode
duynht Jun 17, 2019
329c8b1
git rm .vscode/
duynht Jun 17, 2019
caf104c
rebase before continuing
duynht Jun 28, 2019
d73ff34
still figuring out next steps
duynht Jul 2, 2019
8828e26
scikit-hep/awkward-array#146
duynht Jul 2, 2019
67cc54c
resolve conflict
duynht Jul 2, 2019
c224c36
removed conflict marker, buildable
duynht Jul 2, 2019
327c833
- experimenting with std::valarray
duynht Jul 10, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
# Byte-compiled / optimized / DLL files
# vscode
.vscode/

# Allowing .pyd extension modules
__pycache__/
*.py[cod]
Expand Down
5 changes: 5 additions & 0 deletions awkward-cpp/awkward/cpp/array/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,8 @@ def awkward(self):
def JaggedArray(self):
import awkward.cpp.array.jagged
return awkward.cpp.array.jagged.JaggedArrayCpp

@property
def Table(self):
import awkward.cpp.array.table
return awkward.cpp.array.table.TableCpp
43 changes: 43 additions & 0 deletions tests/test_cpp_table.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#!/usr/bin/env python

# Copyright (c) 2019, IRIS-HEP
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice, this
# list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# * Neither the name of the copyright holder nor the names of its
# contributors may be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

import sys

import unittest

import numpy
import pytest

import awkward
awkward_cpp = pytest.importorskip("awkward.cpp")

class Test(unittest.TestCase):
def runTest(self):
pass