html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue
https://github.com/pydata/xarray/issues/1879#issuecomment-362793230,https://api.github.com/repos/pydata/xarray/issues/1879,362793230,MDEyOklzc3VlQ29tbWVudDM2Mjc5MzIzMA==,1964655,2018-02-03T09:24:19Z,2018-02-03T09:24:19Z,CONTRIBUTOR,"> I guess that by your definition it would be suggested?
Correct.
> Is rasterio going to make it to debian as an apt package?
That's already the case, see: https://packages.debian.org/source/sid/rasterio
What about `toolz` used by `auto_combine`?","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,293830986
https://github.com/pydata/xarray/issues/1879#issuecomment-362712709,https://api.github.com/repos/pydata/xarray/issues/1879,362712709,MDEyOklzc3VlQ29tbWVudDM2MjcxMjcwOQ==,1964655,2018-02-02T21:27:40Z,2018-02-02T21:27:40Z,CONTRIBUTOR,"Well, I am considering (perhaps wrongly) what's in `xarray/__init__.py` as the public API of `xarray`. With that logic in mind, any unconditional import should be treated as an install dependency. Otherwise, users will indeed get an `ImportError` which is not very good.
Back to the original topic, should `toolz` and `rasterio` be strict dependencies, recommended or suggested then?","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,293830986
https://github.com/pydata/xarray/issues/1879#issuecomment-362709426,https://api.github.com/repos/pydata/xarray/issues/1879,362709426,MDEyOklzc3VlQ29tbWVudDM2MjcwOTQyNg==,1964655,2018-02-02T21:14:13Z,2018-02-02T21:14:13Z,CONTRIBUTOR,"And `open_rasterio` is also exposed by `xarray/__init__.py` and imports `rasterio` unconditionally. So again, that makes `rasterio` an `install_requires` too.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,293830986
https://github.com/pydata/xarray/issues/1879#issuecomment-362708442,https://api.github.com/repos/pydata/xarray/issues/1879,362708442,MDEyOklzc3VlQ29tbWVudDM2MjcwODQ0Mg==,1964655,2018-02-02T21:10:27Z,2018-02-02T21:10:27Z,CONTRIBUTOR,"Indeed. `xarray/__init__.py` does import `auto_combine` from `xarray/core/combine.py`, so `toolz` should be listed as `install_depends` I guess.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,293830986
https://github.com/pydata/xarray/issues/1879#issuecomment-362707544,https://api.github.com/repos/pydata/xarray/issues/1879,362707544,MDEyOklzc3VlQ29tbWVudDM2MjcwNzU0NA==,1964655,2018-02-02T21:06:49Z,2018-02-02T21:06:49Z,CONTRIBUTOR,And what about `toolz` which is used in `xarray/core/combine.py`?,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,293830986
https://github.com/pydata/xarray/issues/1879#issuecomment-362705948,https://api.github.com/repos/pydata/xarray/issues/1879,362705948,MDEyOklzc3VlQ29tbWVudDM2MjcwNTk0OA==,1964655,2018-02-02T21:00:25Z,2018-02-02T21:00:25Z,CONTRIBUTOR,"So, just to confirm, the recommended dependencies are just `dask`, `netCDF4` and `bottleneck`, right? The rest should be suggested.
What about `cyordereddict`? It is listed in the docs but its description says it is obsolete.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,293830986
https://github.com/pydata/xarray/pull/1358#issuecomment-292738236,https://api.github.com/repos/pydata/xarray/issues/1358,292738236,MDEyOklzc3VlQ29tbWVudDI5MjczODIzNg==,1964655,2017-04-08T18:54:54Z,2017-04-08T18:54:54Z,CONTRIBUTOR,"And it looks like most projects in the Debian [archive](https://codesearch.debian.net/search?q=pytest_addoption&perpkg=1) using `pytest_addoption` have it declared either as a plugin or inside the `tests` folder, as the note in the pytest documentation says.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,220160378
https://github.com/pydata/xarray/pull/1358#issuecomment-292738027,https://api.github.com/repos/pydata/xarray/issues/1358,292738027,MDEyOklzc3VlQ29tbWVudDI5MjczODAyNw==,1964655,2017-04-08T18:51:59Z,2017-04-08T18:51:59Z,CONTRIBUTOR,"> I can get the tests to work at build time
By adding conftest.py manually if that was not clear.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,220160378
https://github.com/pydata/xarray/pull/1358#issuecomment-292737976,https://api.github.com/repos/pydata/xarray/issues/1358,292737976,MDEyOklzc3VlQ29tbWVudDI5MjczNzk3Ng==,1964655,2017-04-08T18:51:13Z,2017-04-08T18:51:13Z,CONTRIBUTOR,"I can get the tests to work at build time, but the CI tests using --pyargs (to test against the installed library under site-packages) no longer do, i.e. I get a bunch of `ValueError: no option named '--run-flaky'`","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,220160378
https://github.com/pydata/xarray/pull/1358#issuecomment-292737868,https://api.github.com/repos/pydata/xarray/issues/1358,292737868,MDEyOklzc3VlQ29tbWVudDI5MjczNzg2OA==,1964655,2017-04-08T18:49:23Z,2017-04-08T18:49:23Z,CONTRIBUTOR,There is a special note for [pytest_addoption](https://docs.pytest.org/en/latest/_modules/_pytest/hookspec.html#pytest_addoption) which might explain the problem.,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,220160378
https://github.com/pydata/xarray/pull/1358#issuecomment-292698431,https://api.github.com/repos/pydata/xarray/issues/1358,292698431,MDEyOklzc3VlQ29tbWVudDI5MjY5ODQzMQ==,1964655,2017-04-08T06:23:31Z,2017-04-08T06:23:31Z,CONTRIBUTOR,"> Another alternative is to make the test-suite robust to its absence, and not bother to packaging it, given that it is mostly useful for development purposes.
If by *packaging* you mean *distributing* here, then I am very disappointed by your statement. From a package maintainer's perspective, I would consider the lack of a test suite a severe regression, should the latter be removed from source distribution in the future.
I would also remind you that it is that very same test suite that lead to the triage of the regressions with `bottleneck` whilst I was bootstrapping the Debian packaging effort.
Please consider fixing the current test suite or reverting to the old design. The fact that `conftest.py` does not work reliably (see the bug linked above) should be a sign that the decision to jump to this design happened too soon.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,220160378
https://github.com/pydata/xarray/pull/1358#issuecomment-292494259,https://api.github.com/repos/pydata/xarray/issues/1358,292494259,MDEyOklzc3VlQ29tbWVudDI5MjQ5NDI1OQ==,1964655,2017-04-07T09:56:39Z,2017-04-07T09:56:39Z,CONTRIBUTOR,"Unfortunately, even if I patch the code base to add the missing file, the tests cannot be run due to the following bug: https://github.com/pytest-dev/pytest/issues/1889
Too bad you guys decided to change the design of the test suite for a point release :-(","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,220160378
https://github.com/pydata/xarray/pull/1305#issuecomment-285733086,https://api.github.com/repos/pydata/xarray/issues/1305,285733086,MDEyOklzc3VlQ29tbWVudDI4NTczMzA4Ng==,1964655,2017-03-10T17:34:17Z,2017-03-10T17:34:17Z,CONTRIBUTOR,"I really fail to understand how much of a bug deal it is to introduce a NOTICE file with the right content and keep the LICENSE file and the rest of the code base unchanged. It cannot get any simpler than this.
Anyway, your commit provided the missing copyright information I was seeking. For the rest, I gave you a piece of advice for easy compliance (the `NOTICE` file) and you are free to follow or disregard it. Moving on.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,213265588
https://github.com/pydata/xarray/issues/1254#issuecomment-282557948,https://api.github.com/repos/pydata/xarray/issues/1254,282557948,MDEyOklzc3VlQ29tbWVudDI4MjU1Nzk0OA==,1964655,2017-02-26T14:02:48Z,2017-02-26T14:02:48Z,CONTRIBUTOR,"FYI, `xarray` is now available in [Debian](https://packages.debian.org/source/sid/python-xarray).","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,206137485
https://github.com/pydata/xarray/issues/1283#issuecomment-281805302,https://api.github.com/repos/pydata/xarray/issues/1283,281805302,MDEyOklzc3VlQ29tbWVudDI4MTgwNTMwMg==,1964655,2017-02-22T21:11:25Z,2017-02-22T21:11:25Z,CONTRIBUTOR,You meant `MANIFEST.in` right?,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,209581495
https://github.com/pydata/xarray/issues/1254#issuecomment-278698787,https://api.github.com/repos/pydata/xarray/issues/1254,278698787,MDEyOklzc3VlQ29tbWVudDI3ODY5ODc4Nw==,1964655,2017-02-09T16:43:22Z,2017-02-09T16:43:22Z,CONTRIBUTOR,"The complex bit of code embedding is that both MIT and BSD have a clause saying that redistribution from source (even partially) should keep the original copyright notice (which includes authors, dates and license summary). It is straightforward to do when the original file is untouched, however things get a bit more difficult when portions of code gets included in larger modules, or so-called ""compatibility"" modules, where there is an aggregate of code with **mixed** copyright.
That's why the `NOTICE` file is useful. You just have to aggregate all copyright information in this one file and you are guaranteed to comply. Besides, commercial entities or packagers like myself, who need to survey the compliance of each software, have an easier time doing their work.
Did my explanation make sense?","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,206137485
https://github.com/pydata/xarray/issues/1254#issuecomment-278693067,https://api.github.com/repos/pydata/xarray/issues/1254,278693067,MDEyOklzc3VlQ29tbWVudDI3ODY5MzA2Nw==,1964655,2017-02-09T16:25:24Z,2017-02-09T16:25:24Z,CONTRIBUTOR,"*Most* Apache-licensed software follow these guidelines, nonetheless. And for the case of `xarray`, where there are instances of embedded code from other copyrighted projects, I believe it should be beneficial to follow these conventions too. The final decision is yours at the end.
Regardless of your decision, I need a comprehensive list of all embedded code which falls under a different copyright than `xarray`.
Thanks,","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,206137485
https://github.com/pydata/xarray/issues/1254#issuecomment-278590912,https://api.github.com/repos/pydata/xarray/issues/1254,278590912,MDEyOklzc3VlQ29tbWVudDI3ODU5MDkxMg==,1964655,2017-02-09T09:32:36Z,2017-02-09T09:32:36Z,CONTRIBUTOR,"> Probably we should include text of each license at the appropriate locations, or at least a direct reference to the fact hat it has a different license.
That is indeed the purpose of the NOTICE file. Since the Apache license state that all source code should start with the Apache copyright header, then individual copyrights from embedded portions of code should be listed in an additional `NOTICE` file to comply with their respective redistribution clauses.
> I'm not opposed to adding a NOTICE file
You do know you are supposed to provide one as per the [Apache Software Policy](http://apache.org/dev/apply-license.html), right? Details about its content and formatting are provided [here](http://www.apache.org/legal/src-headers.html#notice).
I am also providing an example from the [ITK project](https://github.com/Kitware/ITK/blob/master/NOTICE), since you seem to be having doubts about my statement. I can give you many more if your are still not convinced.
> but I haven't seen it in other projects in the scientific Python space
Because most projects from the scientific Python stack (including [Numpy](https://github.com/numpy/numpy/blob/master/LICENSE.txt) and [Pandas](https://github.com/pandas-dev/pandas/blob/master/LICENSE) that you mentioned) use the simpler [BSD-3-Clause](https://opensource.org/licenses/BSD-3-Clause).
> Maybe we're all just being careless, though :)
Nope, just yourself in this case.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,206137485
https://github.com/pydata/xarray/issues/1208#issuecomment-275392455,https://api.github.com/repos/pydata/xarray/issues/1208,275392455,MDEyOklzc3VlQ29tbWVudDI3NTM5MjQ1NQ==,1964655,2017-01-26T13:51:15Z,2017-01-26T13:51:15Z,CONTRIBUTOR,"Re-opening. Debian now has a version of Numpy with the fix which broke `bottleneck`. However, the tests still do not pass with the following log:
```
=================================== FAILURES ===================================
___________________ TestDataArray.test_groupby_apply_center ____________________
self =
def test_groupby_apply_center(self):
def center(x):
return x - np.mean(x)
array = self.make_groupby_example_array()
grouped = array.groupby('abc')
expected_ds = array.to_dataset()
exp_data = np.hstack([center(self.x[:, :9]),
center(self.x[:, 9:10]),
center(self.x[:, 10:])])
expected_ds['foo'] = (['x', 'y'], exp_data)
expected_centered = expected_ds['foo']
> self.assertDataArrayAllClose(expected_centered, grouped.apply(center))
xarray/tests/test_dataarray.py:1495:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xarray/tests/__init__.py:169: in assertDataArrayAllClose
assert_allclose(ar1, ar2, rtol=rtol, atol=atol)
xarray/testing.py:125: in assert_allclose
assert_allclose(a.variable, b.variable)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
a =
array([[ 1.086411e-01, -4.940766e-01, -3.4...e-01,
3.025169e-01, -4.970776e-03, -2.526321e-02, 4.464467e-01]])
b =
array([[ 1.086411e-01, -4.940766e-01, -3.4...e-01,
3.025169e-01, -4.970776e-03, -2.526321e-02, 4.464467e-01]])
rtol = 1e-05, atol = 1e-08, decode_bytes = True
def assert_allclose(a, b, rtol=1e-05, atol=1e-08, decode_bytes=True):
""""""Like :py:func:`numpy.testing.assert_allclose`, but for xarray objects.
Raises an AssertionError if two objects are not equal up to desired
tolerance.
Parameters
----------
a : xarray.Dataset, xarray.DataArray or xarray.Variable
The first object to compare.
b : xarray.Dataset, xarray.DataArray or xarray.Variable
The second object to compare.
rtol : float, optional
Relative tolerance.
atol : float, optional
Absolute tolerance.
decode_bytes : bool, optional
Whether byte dtypes should be decoded to strings as UTF-8 or not.
This is useful for testing serialization methods on Python 3 that
return saved strings as bytes.
See also
--------
assert_identical, assert_equal, numpy.testing.assert_allclose
""""""
import xarray as xr
___tracebackhide__ = True # noqa: F841
assert type(a) == type(b)
if isinstance(a, xr.Variable):
assert a.dims == b.dims
allclose = _data_allclose_or_equiv(a.values, b.values,
rtol=rtol, atol=atol,
decode_bytes=decode_bytes)
> assert allclose, '{}\n{}'.format(a.values, b.values)
E AssertionError: [[ 1.08641053e-01 -4.94076627e-01 -3.45099073e-01 2.39968246e-01
E 1.70028797e-04 -3.54496330e-01 2.22851030e-01 3.72358514e-01
E -1.43769756e-01 -2.74687658e-01 -2.45407871e-01 2.15556579e-01
E -4.03911607e-01 3.87184795e-01 -4.18200302e-01 -4.06039565e-01
E -3.83684191e-01 -2.96458046e-01 4.74874038e-02 1.26236739e-01]
E [ 3.61580852e-01 -4.79206943e-02 -2.66600721e-01 1.55428994e-01
E 2.61949104e-01 -2.14716556e-01 -3.06136650e-01 1.22278069e-01
E -6.66015156e-02 -1.69577684e-01 3.87460083e-01 1.76306072e-01
E -4.44331607e-01 -5.25418189e-01 1.02862502e-01 -2.85689326e-02
E -2.02277044e-02 9.84154078e-02 2.13794060e-01 3.01328151e-01]
E [ 2.95736742e-01 4.25678417e-02 1.09718836e-01 -4.88189636e-01
E 4.03312049e-02 -2.29350832e-01 4.14023579e-01 2.97767319e-02
E -2.67128794e-01 3.21459151e-01 3.17043658e-01 -2.23716814e-01
E -2.66104828e-01 -3.28529266e-01 8.57802322e-02 -3.77281481e-01
E 3.19405419e-01 -2.14206353e-01 1.44674807e-01 -3.10715376e-01]
E [ 2.81673580e-01 2.73754200e-03 -3.38780740e-01 -3.34309419e-01
E -3.53325764e-01 3.60925598e-01 -1.82147600e-01 4.78926180e-01
E -5.15467328e-01 -3.67560456e-02 -4.19994747e-01 -1.07446917e-01
E 2.66933947e-01 -1.08693646e-01 4.91030682e-03 2.77558294e-01
E -1.86235207e-01 2.48140256e-01 4.43512756e-02 1.26844065e-01]
E [ 3.01363974e-01 -1.09877347e-01 1.22309126e-01 4.31480566e-01
E 4.76386916e-01 2.85348322e-01 2.76157706e-02 4.35295440e-01
E 1.70634220e-02 -1.45109715e-01 3.74386086e-01 -3.66322521e-01
E -3.46253595e-02 -2.91631220e-01 -2.43084987e-01 2.23311739e-01
E -4.16467323e-01 2.14347435e-02 -3.60138536e-01 -9.76142770e-02]
E [ -2.41033567e-01 -3.46475587e-01 -1.15366138e-01 4.41278309e-01
E -1.18403292e-01 2.82655028e-01 4.28244101e-01 -1.79257638e-01
E -1.03689353e-01 -2.18645467e-02 4.46969306e-02 5.81598169e-02
E 2.65938587e-01 1.92085853e-01 -4.32495899e-01 -2.24346584e-01
E 5.34276468e-02 5.48206231e-02 -5.89989991e-03 -3.15437391e-01]
E [ -1.62051319e-01 -9.45765818e-02 -5.03109630e-01 4.17684367e-01
E -3.06186685e-01 -1.46334025e-01 -9.56430059e-02 -4.25805199e-01
E 1.03351228e-01 4.13053193e-01 -1.06769941e-01 3.80051241e-01
E -2.82681942e-01 -5.40183672e-02 -1.20729983e-01 2.51349129e-01
E 3.98594071e-01 -1.25509013e-02 -2.20384829e-01 3.53787835e-01]
E [ 8.63994358e-02 3.30289251e-01 3.34951245e-01 4.74269877e-01
E -3.76742368e-01 -1.06150098e-01 2.75894947e-01 2.58433673e-01
E 1.72780099e-01 -1.23719179e-01 1.87148326e-01 2.30802594e-02
E -1.91651687e-02 -1.24840109e-01 -3.47666075e-02 1.94775931e-01
E 1.57854118e-01 2.36980122e-01 4.19620283e-01 3.92725774e-01]
E [ -1.20034155e-01 2.87247357e-01 3.46581678e-02 -2.91391233e-01
E -1.41828417e-01 -1.02849154e-01 -2.22434220e-01 5.88958162e-02
E 5.10373849e-02 8.00973720e-02 -4.20339680e-01 3.77197946e-02
E -1.19250042e-01 1.89674423e-01 -3.08228692e-02 2.09467152e-01
E -2.95852048e-01 3.88376081e-02 -7.35402315e-02 2.08679192e-01]
E [ -5.81460294e-02 -4.49176762e-01 1.06408912e-01 4.43941698e-01
E -4.43932980e-01 8.99339636e-02 -1.99292909e-01 -4.60542036e-01
E 1.91585641e-01 -4.28948878e-02 -4.56597716e-01 1.85430017e-01
E 3.29358074e-01 1.29811129e-01 2.80559136e-01 3.70777734e-01
E 3.02516908e-01 -4.97077643e-03 -2.52632109e-02 4.46446732e-01]]
E [[ 1.08641053e-01 -4.94076627e-01 -3.45099073e-01 2.39968246e-01
E 1.70028797e-04 -3.54496330e-01 2.22851030e-01 3.72358514e-01
E -1.43769756e-01 1.03282389e-01 -2.45407871e-01 2.15556579e-01
E -4.03911607e-01 3.87184795e-01 -4.18200302e-01 -4.06039565e-01
E -3.83684191e-01 -2.96458046e-01 4.74874038e-02 1.26236739e-01]
E [ 3.61580852e-01 -4.79206943e-02 -2.66600721e-01 1.55428994e-01
E 2.61949104e-01 -2.14716556e-01 -3.06136650e-01 1.22278069e-01
E -6.66015156e-02 2.08392364e-01 3.87460083e-01 1.76306072e-01
E -4.44331607e-01 -5.25418189e-01 1.02862502e-01 -2.85689326e-02
E -2.02277044e-02 9.84154078e-02 2.13794060e-01 3.01328151e-01]
E [ 2.95736742e-01 4.25678417e-02 1.09718836e-01 -4.88189636e-01
E 4.03312049e-02 -2.29350832e-01 4.14023579e-01 2.97767319e-02
E -2.67128794e-01 6.99429199e-01 3.17043658e-01 -2.23716814e-01
E -2.66104828e-01 -3.28529266e-01 8.57802322e-02 -3.77281481e-01
E 3.19405419e-01 -2.14206353e-01 1.44674807e-01 -3.10715376e-01]
E [ 2.81673580e-01 2.73754200e-03 -3.38780740e-01 -3.34309419e-01
E -3.53325764e-01 3.60925598e-01 -1.82147600e-01 4.78926180e-01
E -5.15467328e-01 3.41214002e-01 -4.19994747e-01 -1.07446917e-01
E 2.66933947e-01 -1.08693646e-01 4.91030682e-03 2.77558294e-01
E -1.86235207e-01 2.48140256e-01 4.43512756e-02 1.26844065e-01]
E [ 3.01363974e-01 -1.09877347e-01 1.22309126e-01 4.31480566e-01
E 4.76386916e-01 2.85348322e-01 2.76157706e-02 4.35295440e-01
E 1.70634220e-02 2.32860332e-01 3.74386086e-01 -3.66322521e-01
E -3.46253595e-02 -2.91631220e-01 -2.43084987e-01 2.23311739e-01
E -4.16467323e-01 2.14347435e-02 -3.60138536e-01 -9.76142770e-02]
E [ -2.41033567e-01 -3.46475587e-01 -1.15366138e-01 4.41278309e-01
E -1.18403292e-01 2.82655028e-01 4.28244101e-01 -1.79257638e-01
E -1.03689353e-01 3.56105501e-01 4.46969306e-02 5.81598169e-02
E 2.65938587e-01 1.92085853e-01 -4.32495899e-01 -2.24346584e-01
E 5.34276468e-02 5.48206231e-02 -5.89989991e-03 -3.15437391e-01]
E [ -1.62051319e-01 -9.45765818e-02 -5.03109630e-01 4.17684367e-01
E -3.06186685e-01 -1.46334025e-01 -9.56430059e-02 -4.25805199e-01
E 1.03351228e-01 7.91023240e-01 -1.06769941e-01 3.80051241e-01
E -2.82681942e-01 -5.40183672e-02 -1.20729983e-01 2.51349129e-01
E 3.98594071e-01 -1.25509013e-02 -2.20384829e-01 3.53787835e-01]
E [ 8.63994358e-02 3.30289251e-01 3.34951245e-01 4.74269877e-01
E -3.76742368e-01 -1.06150098e-01 2.75894947e-01 2.58433673e-01
E 1.72780099e-01 2.54250868e-01 1.87148326e-01 2.30802594e-02
E -1.91651687e-02 -1.24840109e-01 -3.47666075e-02 1.94775931e-01
E 1.57854118e-01 2.36980122e-01 4.19620283e-01 3.92725774e-01]
E [ -1.20034155e-01 2.87247357e-01 3.46581678e-02 -2.91391233e-01
E -1.41828417e-01 -1.02849154e-01 -2.22434220e-01 5.88958162e-02
E 5.10373849e-02 4.58067419e-01 -4.20339680e-01 3.77197946e-02
E -1.19250042e-01 1.89674423e-01 -3.08228692e-02 2.09467152e-01
E -2.95852048e-01 3.88376081e-02 -7.35402315e-02 2.08679192e-01]
E [ -5.81460294e-02 -4.49176762e-01 1.06408912e-01 4.43941698e-01
E -4.43932980e-01 8.99339636e-02 -1.99292909e-01 -4.60542036e-01
E 1.91585641e-01 3.35075160e-01 -4.56597716e-01 1.85430017e-01
E 3.29358074e-01 1.29811129e-01 2.80559136e-01 3.70777734e-01
E 3.02516908e-01 -4.97077643e-03 -2.52632109e-02 4.46446732e-01]]
xarray/testing.py:123: AssertionError
_______________________ TestDataArray.test_groupby_math ________________________
self =
def test_groupby_math(self):
array = self.make_groupby_example_array()
for squeeze in [True, False]:
grouped = array.groupby('x', squeeze=squeeze)
expected = array + array.coords['x']
actual = grouped + array.coords['x']
self.assertDataArrayIdentical(expected, actual)
actual = array.coords['x'] + grouped
self.assertDataArrayIdentical(expected, actual)
ds = array.coords['x'].to_dataset('X')
expected = array + ds
actual = grouped + ds
self.assertDatasetIdentical(expected, actual)
actual = ds + grouped
self.assertDatasetIdentical(expected, actual)
grouped = array.groupby('abc')
expected_agg = (grouped.mean() - np.arange(3)).rename(None)
actual = grouped - DataArray(range(3), [('abc', ['a', 'b', 'c'])])
actual_agg = actual.groupby('abc').mean()
> self.assertDataArrayAllClose(expected_agg, actual_agg)
xarray/tests/test_dataarray.py:1541:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xarray/tests/__init__.py:169: in assertDataArrayAllClose
assert_allclose(ar1, ar2, rtol=rtol, atol=atol)
xarray/testing.py:125: in assert_allclose
assert_allclose(a.variable, b.variable)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
a =
array([ 0.504303, -0.53899 , -1.97593 ])
b =
array([ 0.504303, -0.53899 , -0.175924])
rtol = 1e-05, atol = 1e-08, decode_bytes = True
def assert_allclose(a, b, rtol=1e-05, atol=1e-08, decode_bytes=True):
""""""Like :py:func:`numpy.testing.assert_allclose`, but for xarray objects.
Raises an AssertionError if two objects are not equal up to desired
tolerance.
Parameters
----------
a : xarray.Dataset, xarray.DataArray or xarray.Variable
The first object to compare.
b : xarray.Dataset, xarray.DataArray or xarray.Variable
The second object to compare.
rtol : float, optional
Relative tolerance.
atol : float, optional
Absolute tolerance.
decode_bytes : bool, optional
Whether byte dtypes should be decoded to strings as UTF-8 or not.
This is useful for testing serialization methods on Python 3 that
return saved strings as bytes.
See also
--------
assert_identical, assert_equal, numpy.testing.assert_allclose
""""""
import xarray as xr
___tracebackhide__ = True # noqa: F841
assert type(a) == type(b)
if isinstance(a, xr.Variable):
assert a.dims == b.dims
allclose = _data_allclose_or_equiv(a.values, b.values,
rtol=rtol, atol=atol,
decode_bytes=decode_bytes)
> assert allclose, '{}\n{}'.format(a.values, b.values)
E AssertionError: [ 0.5043027 -0.53899037 -1.97592983]
E [ 0.5043027 -0.53899037 -0.17592373]
xarray/testing.py:123: AssertionError
----------------------------- Captured stderr call -----------------------------
/<>/.pybuild/pythonX.Y_2.7/build/xarray/tests/test_dataarray.py:1529: FutureWarning: the order of the arguments on DataArray.to_dataset has changed; you now need to supply ``name`` as a keyword argument
ds = array.coords['x'].to_dataset('X')
________________________ TestDataArray.test_groupby_sum ________________________
self =
def test_groupby_sum(self):
array = self.make_groupby_example_array()
grouped = array.groupby('abc')
expected_sum_all = Dataset(
{'foo': Variable(['abc'], np.array([self.x[:, :9].sum(),
self.x[:, 10:].sum(),
self.x[:, 9:10].sum()]).T),
'abc': Variable(['abc'], np.array(['a', 'b', 'c']))})['foo']
self.assertDataArrayAllClose(expected_sum_all, grouped.reduce(np.sum))
> self.assertDataArrayAllClose(expected_sum_all, grouped.sum())
xarray/tests/test_dataarray.py:1440:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
xarray/tests/__init__.py:169: in assertDataArrayAllClose
assert_allclose(ar1, ar2, rtol=rtol, atol=atol)
xarray/testing.py:125: in assert_allclose
assert_allclose(a.variable, b.variable)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
a =
array([ 45.861725, 46.894773, 4.057272])
b =
array([ 45.861725, 46.894773, 0.877923])
rtol = 1e-05, atol = 1e-08, decode_bytes = True
def assert_allclose(a, b, rtol=1e-05, atol=1e-08, decode_bytes=True):
""""""Like :py:func:`numpy.testing.assert_allclose`, but for xarray objects.
Raises an AssertionError if two objects are not equal up to desired
tolerance.
Parameters
----------
a : xarray.Dataset, xarray.DataArray or xarray.Variable
The first object to compare.
b : xarray.Dataset, xarray.DataArray or xarray.Variable
The second object to compare.
rtol : float, optional
Relative tolerance.
atol : float, optional
Absolute tolerance.
decode_bytes : bool, optional
Whether byte dtypes should be decoded to strings as UTF-8 or not.
This is useful for testing serialization methods on Python 3 that
return saved strings as bytes.
See also
--------
assert_identical, assert_equal, numpy.testing.assert_allclose
""""""
import xarray as xr
___tracebackhide__ = True # noqa: F841
assert type(a) == type(b)
if isinstance(a, xr.Variable):
assert a.dims == b.dims
allclose = _data_allclose_or_equiv(a.values, b.values,
rtol=rtol, atol=atol,
decode_bytes=decode_bytes)
> assert allclose, '{}\n{}'.format(a.values, b.values)
E AssertionError: [ 45.86172541 46.89477337 4.05727211]
E [ 45.86172541 46.89477337 0.87792268]
xarray/testing.py:123: AssertionError
============= 3 failed, 1161 passed, 341 skipped in 40.75 seconds ==============
``` ","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,200908727
https://github.com/pydata/xarray/issues/1208#issuecomment-273561115,https://api.github.com/repos/pydata/xarray/issues/1208,273561115,MDEyOklzc3VlQ29tbWVudDI3MzU2MTExNQ==,1964655,2017-01-18T18:36:38Z,2017-01-18T18:36:38Z,CONTRIBUTOR,We'd need to wait for numpy-1.12.1 to be absolutely sure. I don't have time to deploy a dev version of numpy to test.,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,200908727
https://github.com/pydata/xarray/issues/1208#issuecomment-273559627,https://api.github.com/repos/pydata/xarray/issues/1208,273559627,MDEyOklzc3VlQ29tbWVudDI3MzU1OTYyNw==,1964655,2017-01-18T18:31:01Z,2017-01-18T18:31:01Z,CONTRIBUTOR,"It turned out to be a bug in numpy 1.12.0, fixed in 1.12.1, which made `bottleneck` fail. Closing.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,200908727
https://github.com/pydata/xarray/issues/1208#issuecomment-272832666,https://api.github.com/repos/pydata/xarray/issues/1208,272832666,MDEyOklzc3VlQ29tbWVudDI3MjgzMjY2Ng==,1964655,2017-01-16T11:04:48Z,2017-01-16T11:04:48Z,CONTRIBUTOR,"Thanks, I'll iterate with the Debian maintainer of bottleneck.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,200908727
https://github.com/pydata/xarray/issues/1209#issuecomment-272832299,https://api.github.com/repos/pydata/xarray/issues/1209,272832299,MDEyOklzc3VlQ29tbWVudDI3MjgzMjI5OQ==,1964655,2017-01-16T11:02:53Z,2017-01-16T11:02:53Z,CONTRIBUTOR,"The build process does run Sphinx so only the source suffices. You don't need to ship a build of the documentation.
Indeed wheels should be the preferred mean of installation.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,200909658
https://github.com/pydata/xarray/issues/1167#issuecomment-272750949,https://api.github.com/repos/pydata/xarray/issues/1167,272750949,MDEyOklzc3VlQ29tbWVudDI3Mjc1MDk0OQ==,1964655,2017-01-16T00:39:53Z,2017-01-16T00:39:53Z,CONTRIBUTOR,"> The final release should be some time this week, up to you if you want to wait.
Thanks @shoyer, I used the rc to try out the packaging and give you some initial feedback. See #1208 and #1209.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,195971828
https://github.com/pydata/xarray/issues/1167#issuecomment-272667110,https://api.github.com/repos/pydata/xarray/issues/1167,272667110,MDEyOklzc3VlQ29tbWVudDI3MjY2NzExMA==,1964655,2017-01-15T01:39:50Z,2017-01-15T01:39:50Z,CONTRIBUTOR,@shoyer Do you plan to push a release tarball for `0.9.0rc1` on PyPI? I'd prefer to use this version over `0.8.2` as the basis for the initial Debian packaging. I tested both and found `0.9.0rc1` to lead to less errors with the test suite than `0.8.2`. I could also wait for `0.9.0` final if its release is planned soon.,"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,195971828