| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| | |
seberg/fix-void-cast-safety-promotion-and-comparison
API: Fix structured dtype cast-safety, promotion, and comparison
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This PR replaces the old gh-15509 implementing proper type promotion
for structured voids. It further fixes the casting safety to consider
casts with equivalent field number and matching order as "safe"
and if the names, titles, and offsets match as "equiv".
The change perculates into the void comparison, and since it fixes
the order, it removes the current FutureWarning there as well.
This addresses https://github.com/liberfa/pyerfa/issues/77
and replaces gh-15509 (the implementation has changed too much).
Fixes gh-15494 (and probably a few more)
Co-authored-by: Allan Haldane <allan.haldane@gmail.com>
|
| |
| |
| |
| |
| |
| | |
Closes gh-9982.
(Plus a few small PEP 8 fixes.)
|
|/ |
|
|
|
|
|
|
|
|
| |
Optimizes the parsing of shape tuples and integers by avoiding multiple conversions and generally
refactoring the code.
Closes gh-19010, that parsing a single integer was very slow (due to trying to convert it to a squence twice).
Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
|
| |
|
| |
|
|
|
|
|
|
|
| |
* Added `mat` cases to smoke tests
* Changed type checks to handle new change which uses ufuncs order for
result determination
* Added cases for `ma` to check subclass info retention
|
| |
|
|
|
|
|
|
| |
* Smoke tests to ensure `np.kron` works.
* Shape tests to check if `np.kron` computes the right shape for
different edge cases of input arrays
|
|\
| |
| | |
MAINT: extend delete single value optimization
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
When the delimiter is None and we are splitting on whitespace,
a final empty field is always ignored to match the behaviour
of pythons split: `" 1 ".split()`.
Closes gh-21052
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
nrows gt chunksize.
|
| |
| |
| |
| | |
Includes comments param, which is handled on the Python side.
|
| | |
|
| | |
|
| |
| |
| | |
Adds some tests for the behavior of control characters, e.g. comments, delimiter and quotechar, when they have the same value. At this stage, these tests are more to frame the discussion about what the behavior should be, not to test what it currently is. I personally think raising an exception is correct for most of these situations, though it's worth noting that np.loadtxt currently doesn't for most of these corner cases (and seems to randomly assign precedence to delimiter over comments or vice versa depending on the values).
|
| |
| |
| |
| |
| |
| | |
The `str` values for those weird values used for longdouble are
truncated by PyPy's complex `str` output. Which seems fine probably
since PyPy's `repr` does the right thing and will not truncate.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Longdouble is a source of problems here especially (mainly due to
it sometimes using double in the background, or maybe just buggy
implementations). Together with strings that correctly parsed
do not roundtrip (if printed using less precision), things just do
not work out... This fixes it, and is simpler/clearer anyway.
|
| |
| |
| |
| |
| |
| | |
PyPy has a small bug with error formatting, so these cause it to
crash. Simply skip the tests on old PyPy versions for now.
(Matti fixed the issue long ago, just waiting for a new PyPy release :))
|
| |
| |
| |
| |
| |
| |
| | |
I had a lingering feeling I should double check this, turns out
that feeling was right ;).
(Fixes up the tokenizer doc a bit.)
|
| |
| |
| |
| |
| | |
Also fix style a bit to silence linter (hopefully), removes some
black style, but I am not too opinionated about that :)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This also adds two basic new tests around files/strings containing
the \0 character (prooving that we handle that gracefully).
Also adds tests for:
* the `_` thousands delimiter (should fail, but doesn't for float128
right now)
* Failure modes when the number of rows changes (negative specifically)
Many of these tests came originally from Warren Weckesser and others
were added by Ross Barnowsky:
Co-authored-by: Warren Weckesser <warren.weckesser@gmail.com>
Co-authored-by: Ross Barnowski <rossbar@berkeley.edu>
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
And remove one silly leftover struct member that was unused
|
| | |
|
| |
| |
| |
| |
| |
| | |
This also slightly cleans up the empty-line handling: previously
we sometimes just had some extra empty-lines that just effectively
never mattered
|
| |
| |
| |
| |
| |
| |
| |
| | |
Of course to actually use that many columns you need A LOT of memory
right now. Each field stores at least a UCS4 NUL character, but
the field is padded enough to require 16 bytes.
We always parse a full row, so that requires 20 bytes per field...
(i.e. 32 GiB RAM is not enough to test this :)).
|
| | |
|
| |
| |
| |
| | |
If a memory error happens, we should at least not crash the interpreter
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Also correct exception message.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Add test for parsing scientific notation.
- Add multiple-char comment test.
- Port over tests for structured dtypes.
- Add tests for exceptions on skiprows/max_rows.
- port over ndmin tests.
- Make structured data reusable, add unpack tests.
- Port over delimiter tests.
- Port over maxrows test w/ various dtypes.
- Port over test of exception msg on parse failure.
- Port over test for converters w/neg indices.
- Port over usecols tests
- Port over unicode tests.
- Port over more converter tests.
- Port over test for large rows.
- Port over test for string-len discovery.
- Port over float conversion accuracy test.
- Port over bool test.
- Add test for implicit float->int conversion.
- Port over complex parsing tests.
- Port over tests for reading from generator.
- Port over object cleanup test.
- Port over bytes incompat test.
- Port over converters tests.
Co-authored-by: Warren Weckesser <warren.weckesser@gmail.com>
Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
|