id,node_id,number,state,locked,title,user,body,created_at,updated_at,closed_at,merged_at,merge_commit_sha,assignee,milestone,draft,head,base,author_association,auto_merge,repo,url,merged_by 15798892,MDExOlB1bGxSZXF1ZXN0MTU3OTg4OTI=,126,closed,0,Return numpy.datetime64 arrays for non-standard calendars,2443309,"Fixes issues in #118 and #121 ",2014-05-13T00:22:51Z,2015-07-27T05:38:06Z,2014-05-16T00:21:08Z,2014-05-16T00:21:08Z,e80836b9736fcfba1af500c08aab22bcda4e8912,,664063,0,e07bc93589bbd23fe3bfa1ae1e1daf15eebf83f2,ed3143e3082ba339d35dc4678ddabc7e175dd6b8,MEMBER,,13221727,https://github.com/pydata/xarray/pull/126, 16085838,MDExOlB1bGxSZXF1ZXN0MTYwODU4Mzg=,137,closed,0,Dataset.reduce methods,2443309,"A first attempt at implementing Dataset reduction methods. #131 ",2014-05-20T01:53:30Z,2014-07-25T06:37:31Z,2014-05-21T20:23:36Z,2014-05-21T20:23:36Z,f6a6e7317c78e108176b74f1f67e12f5880e14fa,,650893,0,b5d82a0887f7156ddd4ab1c1aab89345bd642162,7732816216bbb5d0c98946149c9f3b8dc54eb28f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/137, 16140780,MDExOlB1bGxSZXF1ZXN0MTYxNDA3ODA=,139,closed,0,Enable keep attrs,2443309,"Fixes #138 ",2014-05-21T00:48:47Z,2015-07-27T05:38:13Z,2014-05-21T21:43:21Z,,cfc9de74d9dccfd61798e6f0db6fdd8cf47f4e7f,,,0,1c08e190d2b3d05b7107d3d7a988c2afac37b911,fd5268f7bbf932767b589169112efc2ee5a8a012,MEMBER,,13221727,https://github.com/pydata/xarray/pull/139, 16190479,MDExOlB1bGxSZXF1ZXN0MTYxOTA0Nzk=,141,closed,0,Add keep_attrs to reduction methods,2443309,"fixes #138 This is a much cleaner version of #139. ",2014-05-21T21:48:19Z,2014-05-22T00:35:21Z,2014-05-22T00:29:22Z,2014-05-22T00:29:22Z,70a6f9b29743e2b5480bdb25ced7c184c99df268,,,0,555def48f18e75246a91decd4a3b3c951e247ff1,fd5268f7bbf932767b589169112efc2ee5a8a012,MEMBER,,13221727,https://github.com/pydata/xarray/pull/141, 30390417,MDExOlB1bGxSZXF1ZXN0MzAzOTA0MTc=,357,closed,0,updated monthly mean averaging example using new virtual variable syntax,2443309,"uses new virtual variable syntax discussed in #345 and applied in #351. Also see #337. ",2015-03-03T16:46:23Z,2015-07-27T05:37:57Z,2015-03-03T18:19:54Z,2015-03-03T18:19:54Z,f6ef602975e20fc6b2558a8ff32fb9e7bace66e5,,,0,ef124194e21db227112d75a9d4bf774e258a0651,52bbca3507081ec98360d844dc079d4dfbf0e152,MEMBER,,13221727,https://github.com/pydata/xarray/pull/357, 39720670,MDExOlB1bGxSZXF1ZXN0Mzk3MjA2NzA=,465,closed,0,update monthly-means.rst using example data from xray-data repo,2443309,"fixes #424 related: https://github.com/xray/xray-data/pull/1 ",2015-07-10T20:20:26Z,2015-07-27T05:37:53Z,2015-07-15T17:34:09Z,2015-07-15T17:34:09Z,68a024c4ca3ee41915782a74af1dc1ad09c0babd,,,0,3f9b5d4409309c2be5aa49aa0e1103cdd9895834,bf55bfd496e7fce55091bc760c8b6347211469e6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/465, 39988955,MDExOlB1bGxSZXF1ZXN0Mzk5ODg5NTU=,474,closed,0,add weighted seasonal means example ipython notebook,2443309,"closes #424 related: #465 and https://github.com/xray/xray-data/issues/1 ",2015-07-15T05:21:00Z,2015-07-27T05:37:54Z,2015-07-15T17:33:05Z,2015-07-15T17:33:05Z,9083956533d511cc83431688f864b96b15b5472c,,,0,5e7ccf73507c56c6f98a8ae58c55b64d2241043e,0e77e5a86ffa2355f986ef165b5b6970411d5ef6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/474, 40324635,MDExOlB1bGxSZXF1ZXN0NDAzMjQ2MzU=,481,closed,0,Add pointwise indexing via isel_points method,2443309,"This provides behavior equivalent to numpy slicing with multiple lists. ## Example ``` python >>> da = xray.DataArray(np.arange(56).reshape((7, 8)), dims=['x', 'y']) >>> da array([[ 0, 1, 2, 3, 4, 5, 6, 7], [ 8, 9, 10, 11, 12, 13, 14, 15], [16, 17, 18, 19, 20, 21, 22, 23], [24, 25, 26, 27, 28, 29, 30, 31], [32, 33, 34, 35, 36, 37, 38, 39], [40, 41, 42, 43, 44, 45, 46, 47], [48, 49, 50, 51, 52, 53, 54, 55]]) Coordinates: * x (x) int64 0 1 2 3 4 5 6 * y (y) int64 0 1 2 3 4 5 6 7 >>> da.isel_points(x=[0, 1, 6], y=[0, 1, 0]) array([ 0, 9, 48]) Coordinates: y (points) int64 0 1 0 x (points) int64 0 1 6 * points (points) int64 0 1 2 ``` related: #475 ",2015-07-20T05:41:36Z,2015-07-27T05:37:19Z,2015-07-27T05:04:46Z,2015-07-27T05:04:46Z,ca0d6d6dee86e11170363cc226ec13c553ad5232,,1213895,0,5ab9d4b2f65584aac74e0e54050a84a1a0697773,1faf1b2cbf0cbed1d1b62b71df4aec8dbe63bb99,MEMBER,,13221727,https://github.com/pydata/xarray/pull/481, 40856682,MDExOlB1bGxSZXF1ZXN0NDA4NTY2ODI=,496,closed,0,fix typo in combine/concat warning,2443309,,2015-07-26T17:38:53Z,2015-07-27T05:37:49Z,2015-07-27T02:01:18Z,2015-07-27T02:01:18Z,938a818061d3481f9197a81c50b8c9bb53db9c4d,,,0,3f39475e540f501c930847cf52358da34b0a43f9,0bee5e5fe41e5dbc74d953c3cb3b5335cfab1b3d,MEMBER,,13221727,https://github.com/pydata/xarray/pull/496, 41422864,MDExOlB1bGxSZXF1ZXN0NDE0MjI4NjQ=,509,closed,0,Discrete colormap/colorbar option,2443309,"This PR adds a discrete colormap / colorbar option to xray plots. closes #500 ``` python import matplotlib.pyplot as plt import numpy as np import xray # sample DataArray x = np.arange(start=0, stop=10, step=2) y = np.arange(start=9, stop=-7, step=-3) xy = np.dstack(np.meshgrid(x, y)) distance = np.linalg.norm(xy, axis=2) distance = xray.DataArray(distance, list(zip(('y', 'x'), (y, x)))) # Sample plots fig, axes = plt.subplots(2, 2, figsize=(8, 8), sharex=True, sharey=True) distance.plot(ax=axes[0, 0]) axes[0, 0].set_title('Default') distance.plot(vmin=0, vmax=12, levels=6, ax=axes[1, 0]) axes[1, 0].set_title('Setting with integer levels') distance.plot(levels=[1, 2, 4, 5, 7, 9], extend='both', cmap='Spectral', ax=axes[0, 1]) axes[0, 1].set_title('Setting with list of levels') flatui = [""#9b59b6"", ""#3498db"", ""#95a5a6"", ""#e74c3c"", ""#34495e"", ""#2ecc71""] distance.plot(levels=[1, 2, 4, 5, 7], cmap=flatui, extend='both', ax=axes[1, 1]) axes[1, 1].set_title('Using custom list of colors') ``` Produces these plots: ![discrete_example](https://cloud.githubusercontent.com/assets/2443309/9027555/93d8220c-390e-11e5-8184-9f1b75b9ebfe.png) There are potential issues that I'd still like to look into a bit further. 1. Does discretizing `cmap` impact the `contour` and `contourf` plot types? We may need some logic to only discretize when the plot type is `imshow` or `pcolormesh`. 2. It is possible, in some cases, to end up masking out values equal to `vmax`: ``` python distance.plot(levels=6) ``` Produces this plot: ![missing_corner](https://cloud.githubusercontent.com/assets/2443309/9027585/0e5ea5f4-3910-11e5-911a-7be312a59876.png) In the first example, we corrected for this by setting `extend='max'`. ",2015-08-02T19:17:31Z,2015-08-06T19:53:17Z,2015-08-06T16:06:33Z,2015-08-06T16:06:33Z,9edb6b0f5989431554b8dbf2e2758e2993c0faf1,,,0,1d60752d0ea977cea19a72ca30879a0f0bdfaf64,43489589958b2a7604e738c99f0b601b9601bef6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/509, 41960189,MDExOlB1bGxSZXF1ZXN0NDE5NjAxODk=,520,closed,0,added to_masked_array method and masked_array property ,2443309,"This PR adds convienience methods to convert DataArrays to numpy masked arrays. `DataArray.to_masked_array(copy=True)` returns a numpy Masked array `DataArray.masked_array` returns a masked array that is a view to the `DataArray.values.` closes #460 ",2015-08-08T20:47:41Z,2015-08-12T18:34:17Z,2015-08-12T18:34:16Z,2015-08-12T18:34:16Z,283940acff0b2d9eece93f3a423d4c0d510ce907,,1213895,0,84ee4d0f61a3b9f7c45589568690fa10a67f87b8,200aeb006781528cf6d4ca2f118d7f9257bd191b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/520, 43195526,MDExOlB1bGxSZXF1ZXN0NDMxOTU1MjY=,549,closed,0,cast DataArray name to string if not None,2443309,"closes #533 ",2015-08-24T16:44:40Z,2015-10-21T07:05:47Z,2015-08-25T15:46:39Z,,bc0e3f00652732f385216cde8b9ff4ce03ab9a3d,,1307323,0,dfc2940d01797f69e5d1f5ed82c80b0b0e2402c1,8847ede760cc00c712a25dced49e6dc0158be966,MEMBER,,13221727,https://github.com/pydata/xarray/pull/549, 43302640,MDExOlB1bGxSZXF1ZXN0NDMzMDI2NDA=,551,closed,0,raise error if dataarray.name is wrong type,2443309,"closes #533 xref #549 ",2015-08-25T15:50:09Z,2015-10-26T20:28:19Z,2015-09-16T23:40:54Z,,bd1bd8250f7387018f67ca6648ce338a9db28518,,1307323,0,0b315eac39ad8e40cd8a6cebbec780ce8bfc3433,8847ede760cc00c712a25dced49e6dc0158be966,MEMBER,,13221727,https://github.com/pydata/xarray/pull/551, 45237492,MDExOlB1bGxSZXF1ZXN0NDUyMzc0OTI=,580,closed,0,Raise an error if DataArray name is not able to be written to netCDF.,2443309,"closes #533 xref #549, #551 ",2015-09-16T23:42:54Z,2015-10-21T07:07:59Z,2015-09-18T17:35:26Z,2015-09-18T17:35:26Z,82b2821a6099a99cd8cd564bcdc58362c3b76c58,,1307323,0,2da0e7d8be49f944ef16d89e561d500cabea7782,c13ee9875b31dceb505b4aead83272fbcbeef27e,MEMBER,,13221727,https://github.com/pydata/xarray/pull/580, 45435627,MDExOlB1bGxSZXF1ZXN0NDU0MzU2Mjc=,583,closed,0,Add Python 3.5 to Travis Builds,2443309,,2015-09-18T18:10:06Z,2015-10-21T07:07:59Z,2015-09-19T16:00:53Z,2015-09-19T16:00:53Z,95b359633ba927bca23f0ae7a3bba9a4dc555166,,1307323,0,0a11b794b58fde21d8b979f13443c96422186983,a2a3f21e92f9f32c9c4aed3f595856df43faa199,MEMBER,,13221727,https://github.com/pydata/xarray/pull/583, 46347492,MDExOlB1bGxSZXF1ZXN0NDYzNDc0OTI=,594,closed,0,Spring cleaning,2443309,"This is basically just a style/pep cleanup. I removed a bunch of unused variables from internal modules. I should say that I'm somewhat sheepishly submitting this PR, especially after seeing [this](https://youtu.be/wf-BqAjZb8M?list=PLP1xYYjBXksOm402NpkV1Ah5TRUKiQThn) talk by Raymond Hettinger. However, since my [linter](https://atom.io/packages/linter-flake8) was constantly complaining about many of these, I figured I'd knock off all of them at once. There are quite a few line changes here but none of them should result in different behavior. ",2015-09-29T23:59:14Z,2015-10-21T07:08:00Z,2015-09-30T17:36:16Z,2015-09-30T17:36:16Z,f8442801c3b1088f0231cdf2fe298e3a5c917625,,1307323,0,b71022b12b0f3769c5252b63edce453ed94fb201,d704524a030aef7e2029ec43d19099143b72f653,MEMBER,,13221727,https://github.com/pydata/xarray/pull/594, 46363372,MDExOlB1bGxSZXF1ZXN0NDYzNjMzNzI=,595,closed,0,unsorted integer indexing on netCDF4 objections on disk,2443309,"add more informative error message when unsorted integer array is used to index netCDF4 variable on disk. Closes #593 ",2015-09-30T05:43:06Z,2015-10-21T07:08:00Z,2015-10-02T21:41:11Z,2015-10-02T21:41:11Z,462170a1ad08ba5cd52e7a3f6df884f4a28fc6e4,,1307323,0,fcddcee53c4f505c08cf4c73df1ebc66592d9fc1,4c35dcc008a064858a9c8ae11ae4e800a0ac4305,MEMBER,,13221727,https://github.com/pydata/xarray/pull/595, 46467643,MDExOlB1bGxSZXF1ZXN0NDY0Njc2NDM=,596,closed,0,add landscape.yml config file,2443309,"@shoyer - we can ignore any warnings you don't like (e.g. `dangerous-default-value`). xref #594 ",2015-09-30T22:56:36Z,2015-10-21T07:08:00Z,2015-10-01T18:45:31Z,2015-10-01T18:45:31Z,80bdee536d7b1ef542e70304de544ed82285d13e,,1307323,0,2d213e5d822b6d876fea9fa7e8486a056f051175,1ec0e3592be5e9136824144809aa763499134ec7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/596, 46483378,MDExOlB1bGxSZXF1ZXN0NDY0ODMzNzg=,598,closed,0,Fix colormap for facet grid plots,2443309,"Fixes #592 Added test to check that all subplots in facet grid have same data range and colormap. This fixes two issues present in the existing code: 1) colormap was being selected for each subplot 2) range was being selected for each subplot and colorbar was the result of only the last subplot Some sample code: ``` Python data = (np.random.random(size=(20, 25, 12)) + np.linspace(-3, 3, 12)) # range is ~ -3 to 4 da = xray.DataArray(data, dims=['x', 'y', 'time'], name='data') fg = da.plot.pcolormesh(col='time', col_wrap=4) ``` previously yielded this plot: ![broken](https://cloud.githubusercontent.com/assets/2443309/10212715/f752a92e-67b7-11e5-8477-f5fc877fe716.png) and now yields this plot: ![fixed](https://cloud.githubusercontent.com/assets/2443309/10212716/000fe1f8-67b8-11e5-8265-7ce2a89f8fa4.png) ",2015-10-01T04:15:04Z,2015-10-21T07:08:00Z,2015-10-01T17:10:31Z,2015-10-01T17:10:31Z,e881473120221e89608c566f55f2aa4b9e013bf3,,1307323,0,ca5b1cbd52ddc210bf2a016522213dbdec499c9e,1ec0e3592be5e9136824144809aa763499134ec7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/598, 46689632,MDExOlB1bGxSZXF1ZXN0NDY2ODk2MzI=,604,closed,0,Add subplot_kws arg to plotting interfaces,2443309,"This argument is only used in the FacetGrid class and allows users to pass arguments to subplot constructor. The api change is a pretty simple and just accepts a single new argument (`subplot_kws`). I think we need to think about how to tweak the subplots a bit more in terms of aspect. Here's some example code that produces the plot below: ``` Python import xray import cartopy.crs as ccrs ds = xray.open_dataset('xray-data/ncep_temperature_north-america_2013-14.nc') ds.lon -= 360 lon0 = ds.lon.values.mean() dss = ds.groupby('time.season').mean('time') g = dss.air.plot.pcolormesh(col='season', col_wrap=2, transform=ccrs.PlateCarree(), subplot_kws=dict(projection=ccrs.PlateCarree(lon0))) for ax in g.axes.flat: ax.coastlines() ax.gridlines() ax.set_extent((-161.25, -28.75, 20, 40)) ``` ![projection1](https://cloud.githubusercontent.com/assets/2443309/10259220/a1f694a4-691a-11e5-805c-2fbbafcab773.png) Obviously there are some issues with the grid lines too but that may end up getting fixed by a more flexible aspect. cc @clarkfitzg closes #603 xref: https://github.com/mwaskom/seaborn/pull/320 ",2015-10-02T22:36:04Z,2016-11-30T08:00:48Z,2015-10-06T15:10:01Z,2015-10-06T15:10:00Z,b5749f006c11827562f6042afc7a83f3b2ccee2a,,1307323,0,98946aa7cd7338b0643b738e7c1c713d6d53bc3f,89adda5e719a2bba6231310e3726185597f9beab,MEMBER,,13221727,https://github.com/pydata/xarray/pull/604, 46709838,MDExOlB1bGxSZXF1ZXN0NDY3MDk4Mzg=,606,closed,0,example of how to use cf convention to use 2d coordinates for plotting,2443309,"This is one idea of how to handle 2d coordinate variables. Attribute names may need to change but this is working for my application. No test written and existing roundtrip tests will likely fail on this first commit. ",2015-10-03T17:53:07Z,2015-10-26T20:28:26Z,2015-10-06T15:56:15Z,,5fd548404f9005bfd7431aa75ae61f31fd6c636f,,1307323,0,c6a61bdc4340099f6b1a2e00dc3d867396e2072e,89adda5e719a2bba6231310e3726185597f9beab,MEMBER,,13221727,https://github.com/pydata/xarray/pull/606, 46720115,MDExOlB1bGxSZXF1ZXN0NDY3MjAxMTU=,608,closed,0,allow passing coordinate names as x and y to plot methods,2443309,"This allows us to use coordinate names as plotting arguments for `x` and `y`. I have a test for this that isn't quite working yet. ",2015-10-04T06:15:36Z,2015-11-15T21:50:18Z,2015-10-09T14:21:25Z,2015-10-09T14:21:25Z,b52f8ebea2aff0fce517601b8523db391870c2ac,,1307323,0,e25ac4b58dbe91b933bebc06d8d081e3f0c40339,cb4e4138fdb52078d27341dadf0feedb15e1de80,MEMBER,,13221727,https://github.com/pydata/xarray/pull/608, 47104188,MDExOlB1bGxSZXF1ZXN0NDcxMDQxODg=,612,closed,0,keep coordinates encoding even when coordinates are decoded,2443309,"fixes #610 ",2015-10-08T02:01:20Z,2015-10-26T20:28:26Z,2015-10-08T18:03:19Z,2015-10-08T18:03:19Z,c63a72a821d6fc264e05b19d9af8433c4dad397b,,1307323,0,e3508a8ee48ac1b1722df9ec1e932abd173502e7,0966b78003e3e25ef9d41f9e7f938bfaefeb7d22,MEMBER,,13221727,https://github.com/pydata/xarray/pull/612, 47349510,MDExOlB1bGxSZXF1ZXN0NDczNDk1MTA=,618,closed,0,numpy 1.10 compat fixes,2443309,"fixes #617 @shoyer - can you take a look at `test_index_0d_not_a_time` and see if you can figure out why that test is failing? I couldn't sort it out. Also, we're now getting a ton of these warnings: `FutureWarning: numpy equal will not check object identity in the future. The comparison did not return the same result as suggested by the identity (`is`)) and will change.` I thought about trying to suppress the ones that come directly from xray but that seems tricky to do safely. matplotlib and numpy itself are raising the same warnings. err... ",2015-10-10T17:04:45Z,2016-01-04T23:11:55Z,2015-10-12T20:37:14Z,2015-10-12T20:37:14Z,e45f0f730c879535320fa43635fb81fe9c644cd4,,1307323,0,675578f982272fbf3eec99c1d3249f38397e8bdb,a2fa27004f6cac476a3dbec2fa0774716f05f198,MEMBER,,13221727,https://github.com/pydata/xarray/pull/618, 48667587,MDExOlB1bGxSZXF1ZXN0NDg2Njc1ODc=,638,closed,0,Feature/pytest,2443309,"Uses `py.test` instead of `nosetests` for test collection and execution. I was mostly curious if this would work given xray's testing structure. Turns out it does (with one exception in Python 2.6). I much prefer the traceback that `py.test` returns when tests fail. ",2015-10-24T23:13:14Z,2015-10-26T20:42:02Z,2015-10-26T18:23:51Z,2015-10-26T18:23:51Z,056ea1726c0e13999eea5665f891852f3a26ece8,,,0,69878cf469437ce449512d84f9ef918caddffe86,187a9f7974a13e99c013117d00ea150128b3b040,MEMBER,,13221727,https://github.com/pydata/xarray/pull/638, 50156922,MDExOlB1bGxSZXF1ZXN0NTAxNTY5MjI=,650,closed,0,Feature/average,2443309,"closes #422 ",2015-11-09T18:11:35Z,2016-05-11T04:25:04Z,2016-05-11T04:25:04Z,,13609579644e5eb3919ff7a381e3ce05f546f65e,,,0,2f5787520d850ac8520b048faa838c47b680dc52,44059471a1af4a3ad9ac665d2038c17c299451c0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/650, 52455751,MDExOlB1bGxSZXF1ZXN0NTI0NTU3NTE=,668,closed,0,Feature/rolling,2443309,"This is an initial take at the rolling aggregation object and methods in xray. This PR implements: - A new `Rolling` class available in `DataArray` objects: ``` Python rolling_obj = da.rolling(time=7) ``` - `bottleneck.move_*` functions are wrapped and are available in the following manor: ``` Python rolling_obj.mean() ``` - generic reduce method ``` Python from numpy import nanpercentile rolling_obj.reduce(nanpercentile, q=5) ``` - iterating through the rolling object: ``` Python for label, da_window in rolling_obj: # da_window is a view of da ``` TODO: - [x] Documentation - [x] Cleanup `_setup_windows` - [x] Inject bottleneck methods in some generic way - [x] ~~Possibly create a `Window` object to hold windowed `DataArray`s~~ closes #641 #130 xref pydata/pandas#11603, pydata/pandas#11704 cc @shoyer @bartnijssen ",2015-12-02T21:20:34Z,2016-02-20T02:37:52Z,2016-02-20T02:32:33Z,2016-02-20T02:32:33Z,e28d39c6c2106fb6b5f3e8e84f27e77d42581fb8,,,0,68ba033b699d2e4dc36e5fb0659a26233f9d1f64,44059471a1af4a3ad9ac665d2038c17c299451c0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/668, 60034784,MDExOlB1bGxSZXF1ZXN0NjAwMzQ3ODQ=,772,closed,0,update rolling doc string,2443309,"minor update of `rolling` doc string. Missed this update after @shoyer's last review. xref: #668 ",2016-02-20T02:46:32Z,2016-02-20T21:34:00Z,2016-02-20T17:01:45Z,2016-02-20T17:01:45Z,4a6a7785a7441a5878d2270750a3940ac19524ea,,,0,a829c0bce3754475d31f20b9779cb866253fa5bd,a59e6ddb450530640b5d641c4a7f26c3cf9807d0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/772, 60054139,MDExOlB1bGxSZXF1ZXN0NjAwNTQxMzk=,774,closed,0,fix/update math with dataset docs,2443309,"Fixes the build failure in the docs here: http://xarray.pydata.org/en/latest/computation.html#math-with-datasets ",2016-02-20T17:22:04Z,2016-02-20T21:08:50Z,2016-02-20T21:08:50Z,2016-02-20T21:08:50Z,390e64566a9f50f5cf37d8b85a238facc4ac768f,,,0,3fea1e1a49b7847aaaf4ac65484b11a0126d6fb9,4242f700102284b8d69aae19faf07fc9a22e14dd,MEMBER,,13221727,https://github.com/pydata/xarray/pull/774, 60059840,MDExOlB1bGxSZXF1ZXN0NjAwNTk4NDA=,775,closed,0,remove extra line from rolling doc string,2443309,"(sorry about this...) ",2016-02-20T20:48:50Z,2016-02-27T01:40:21Z,2016-02-27T01:40:21Z,2016-02-27T01:40:21Z,c2e948f1daf80953a7e14d54c48648174b93617b,,,0,9135b5062e6bb4206352f127c8c627338ac9b940,4242f700102284b8d69aae19faf07fc9a22e14dd,MEMBER,,13221727,https://github.com/pydata/xarray/pull/775, 60062707,MDExOlB1bGxSZXF1ZXN0NjAwNjI3MDc=,777,closed,0,minor refactor of Rolling.reduce to handle nans,2443309,"fixes #776 ~~Still need to add a regression test~~ ",2016-02-20T22:13:51Z,2016-03-01T08:10:11Z,2016-03-01T08:10:09Z,2016-03-01T08:10:09Z,ac8e186abd143572c4aaf2c97c0dfd59aa2628b8,,,0,72e2d185961a40c459f5acc3d0d99a94c134efbe,b15f0ee759248ef52b9a53d410090133b86216ee,MEMBER,,13221727,https://github.com/pydata/xarray/pull/777, 61515856,MDExOlB1bGxSZXF1ZXN0NjE1MTU4NTY=,782,closed,0,dont infer interval breaks in pcolormesh when ax is a cartopy axis,2443309,"This PR chooses not to infer interval breaks in pcolormesh if the axis is a Cartopy axis. Below is an example of a plot using the new behavior - compare to https://github.com/pydata/xarray/issues/781#issuecomment-191595449. ![xarray_new](https://cloud.githubusercontent.com/assets/2443309/13486346/313825d4-e0c5-11e5-97a3-795d3958b39e.png) I'll come up with a few tests here. closes #781. ",2016-03-03T06:24:00Z,2016-03-11T18:59:02Z,2016-03-11T18:59:01Z,2016-03-11T18:59:01Z,34d082b02e427ff8602917f345658db6d10e0bcb,,,0,e3c17ead98debbfaaab41a41501303adc961c4a9,660d29d33cfc647324543e338d0b03ce7be1383b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/782, 70302527,MDExOlB1bGxSZXF1ZXN0NzAzMDI1Mjc=,849,closed,0,roundtrip boolean datatype,2443309,"This PR allows boolean datatypes to be faithfully roundtripped. My approach follows @shoyer's suggestions in https://github.com/pydata/xarray/pull/401#issuecomment-96085330. closes #401 cc @klapo, @khaeru ",2016-05-17T05:42:53Z,2016-05-23T04:54:42Z,2016-05-23T04:54:40Z,2016-05-23T04:54:40Z,c9cde62c764251b7d39269e860a4a0553c79630f,,,0,e4bd6a1dc93b766996c69aac05c4849b677bbd7b,b9fab55e19d78c52090e41538753bd5d4ce54df7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/849, 70998690,MDExOlB1bGxSZXF1ZXN0NzA5OTg2OTA=,856,closed,0,drop python 2.6 support,2443309,"closes #855. There is still a code base of work-arounds for Python 2.6 (examples below). I'm not sure if we want to remove those now or just stop testing with 2.6 in this PR. Thoughts from @shoyer and @MaximilianR? - [tests](https://github.com/pydata/xarray/blob/master/xarray/test/__init__.py#L110-L120) - [backends](https://github.com/pydata/xarray/blob/master/xarray/backends/api.py#L196-L197) ",2016-05-23T02:45:12Z,2016-05-23T19:38:09Z,2016-05-23T19:38:07Z,2016-05-23T19:38:07Z,765f17d3b31af1228c6c8def8e108f62a27d7260,,,0,f21fe2b68350e3d62bddc905b16dd2bbf12daf3b,b9fab55e19d78c52090e41538753bd5d4ce54df7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/856, 80024579,MDExOlB1bGxSZXF1ZXN0ODAwMjQ1Nzk=,941,closed,0,add faq on how to cite xarray,2443309,"closes #290 closes #931 ",2016-08-04T06:28:14Z,2016-08-04T21:17:55Z,2016-08-04T21:17:53Z,2016-08-04T21:17:53Z,b0727412fd32e1110d20dbad001292bde856656e,,,0,c5f6e513f46730bfa9e548c7ae8a2bf071e4593e,9d8bb1325b2d5992574622273bc379bb51fa663c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/941, 82424747,MDExOlB1bGxSZXF1ZXN0ODI0MjQ3NDc=,982,closed,0,update rasm example - ipython notebook and rst,2443309,"xref: https://github.com/pydata/xarray-data/pull/5 ",2016-08-23T19:20:46Z,2016-08-23T19:37:13Z,2016-08-23T19:37:11Z,2016-08-23T19:37:11Z,ea26738e01db357c4b3d886914e49dc7b344af74,,,0,3c46ebbc121711fe5e5d8c6dd8adf49be05055cf,584e70378c64e3fa861e5b4b4fd61d21639661c6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/982, 82449206,MDExOlB1bGxSZXF1ZXN0ODI0NDkyMDY=,983,closed,0,Update the Multimension coordinate groupby example,2443309,"cc @rabernat @shoyer now using `ds = xr.tutorial.load_dataset('rasm')` ",2016-08-23T22:01:33Z,2016-08-27T19:06:49Z,2016-08-27T19:04:51Z,2016-08-27T19:04:51Z,fda00bd246f8a1ac282efd8d4ca41c6bb5413777,,,0,1ac459b847fbf2d76a3847914407aa54adc4edd4,ea26738e01db357c4b3d886914e49dc7b344af74,MEMBER,,13221727,https://github.com/pydata/xarray/pull/983, 84765407,MDExOlB1bGxSZXF1ZXN0ODQ3NjU0MDc=,1000,closed,0,update how to cite xarray,2443309,,2016-09-10T19:30:09Z,2016-09-12T00:03:15Z,2016-09-12T00:03:13Z,2016-09-12T00:03:13Z,64b4f35f1ff220b5fd54e19490fc7cbab543ecee,,,0,98a49efa16d3afef1900ce3a61fe9ba17fddf49e,f00ab9b8f55cd630a2dca905ad07ac1a8093a256,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1000, 87374389,MDExOlB1bGxSZXF1ZXN0ODczNzQzODk=,1021,closed,0,Add colorbar object to FacetGrid object.,2443309,,2016-09-29T19:07:49Z,2016-09-30T17:17:09Z,2016-09-30T17:17:07Z,2016-09-30T17:17:07Z,38930f02145b453fdd7a04e273760cf070b223b0,,,0,99e6b04dfb04f004fc86f4f224ddad5225bb4131,fbb4f0618eade20981bd5cfb9771b82fd88a8db5,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1021, 98427057,MDExOlB1bGxSZXF1ZXN0OTg0MjcwNTc=,1170,closed,0,Dataset.encoding and unlimited dimensions for to_netcdf,2443309,"Add `Dataset.encoding` attribute and support unlimited dimensions for scipy/netcdf4 backends. closes #992",2016-12-17T01:13:04Z,2017-01-24T06:43:33Z,2017-01-24T06:38:49Z,2017-01-24T06:38:49Z,6d5ad44e4666a50ed91a201ce28ad0b4e3d727a4,,,0,cb22ba139d7adbfaab5d5340dcdb412f9b2ea766,c5146e8f82ae8387a24b99b27fb8b7e623b38778,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1170, 98873849,MDExOlB1bGxSZXF1ZXN0OTg4NzM4NDk=,1176,closed,0,add info method to dataset,2443309,"I don't know if this is exactly what we want but here's an idea that emulates `ncdump -h`. I'm sure people will have thoughts on the implementation and output so I'll just throw this first cut up and let people discuss. closes #1150 fixes #244 xref: #1044, #820",2016-12-21T05:23:22Z,2016-12-23T17:36:58Z,2016-12-23T17:36:54Z,2016-12-23T17:36:54Z,81921900fe208c33fcdc74f1a8ce36ecf4a5d006,,,0,74df621815e32c8bad7a8b01d194d205a9d0b901,aec3e8e8208f557864feb8f3e6a1c8c6cc200bc5,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1176, 99281642,MDExOlB1bGxSZXF1ZXN0OTkyODE2NDI=,1183,closed,0,Test with Python 3.6,2443309,"Updated tests to use Python 3.6 for base test and development version tests. closes #1182",2016-12-23T21:09:51Z,2017-01-22T04:31:08Z,2017-01-22T04:31:04Z,2017-01-22T04:31:04Z,80fbc6e46c5a36bd4bfe24c667bd44d1f4e8e53a,,,0,b616fca994aed00f56a3c939e3e33ee774b94376,601c26250745eb1d032d867ea970067a7756b594,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1183, 99497806,MDExOlB1bGxSZXF1ZXN0OTk0OTc4MDY=,1187,closed,0,add quantile method to DataArray,2443309,"This PR adds the `quantile` method to the DataArray. There may be a way to better fit this in with `.apply` or `reduce` it wasn't immediately clear to me how to do that. It uses `np.nanpercentile` under the hood so this shouldn't be expected to work well with dask. The main advantage to this method, over using `apply(np.nanpercentile)` is the handling of the `quantile` coordinate. example usage: ```Python In [12]: x = np.random.random(size=(2, 3, 800)) In [13]: da = xr.DataArray(x, dims=('x', 'y', 'time')) In [14]: da.quantile([1, 5, 10, 25, 50, 75, 90, 95, 99], dim='time', interpolation='lower') Out[14]: array([[[ 0.00835474, 0.01126747, 0.00778847], [ 0.00803924, 0.00919259, 0.01150164]], [[ 0.04902814, 0.05346976, 0.04493341], [ 0.04236611, 0.05273082, 0.05858802]], [[ 0.09370776, 0.09976448, 0.09256707], [ 0.08943787, 0.09331907, 0.08832309]], [[ 0.25416402, 0.22577298, 0.24407393], [ 0.25386087, 0.23052584, 0.24621966]], [[ 0.534169 , 0.46017551, 0.49817391], [ 0.50968059, 0.49427688, 0.51573855]], [[ 0.76633412, 0.73405412, 0.77210754], [ 0.76759837, 0.74243892, 0.76703357]], [[ 0.90832116, 0.89495854, 0.91818434], [ 0.91492771, 0.88063773, 0.91416636]], [[ 0.95260527, 0.95132871, 0.95979701], [ 0.95988286, 0.93137055, 0.95941658]], [[ 0.98597133, 0.98883232, 0.99013424], [ 0.98951238, 0.97550784, 0.99224201]]]) Coordinates: * quantile (quantile) float64 1.0 5.0 10.0 25.0 50.0 75.0 90.0 95.0 99.0 o x (x) - o y (y) - ``` closes #303 fixes #561 ",2016-12-28T01:06:51Z,2017-01-23T18:23:06Z,2017-01-23T18:22:14Z,2017-01-23T18:22:14Z,d5f4af50d14de165e6d5a5be4826910540384fc7,,,0,d8ba5694351b6948dee89748a8b4a38dfaa7f2bd,80fbc6e46c5a36bd4bfe24c667bd44d1f4e8e53a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1187, 99609843,MDExOlB1bGxSZXF1ZXN0OTk2MDk4NDM=,1190,closed,0,only use bottleneck version 1.0 and later,2443309,closes #808,2016-12-29T01:36:24Z,2017-01-07T07:43:37Z,2017-01-07T07:43:34Z,2017-01-07T07:43:34Z,417797e602f8d5a1463a9923968c3cb2f3e4b1f1,,,0,88b47104ac3d436bb638506bb955ba54af50844b,27d04a15e27645e3c0d2db93ed7a8c983f5818a4,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1190, 103973581,MDExOlB1bGxSZXF1ZXN0MTAzOTczNTgx,1242,closed,0,Cleanup,2443309,"This is just a quick PR to clean up a few style violations that have crept in. I also removed a number of unused imports. - [ ] closes #xxxx - [x] tests passed - [x] passes ``git diff upstream/master | flake8 --diff`` - [ ] whatsnew entry ",2017-01-31T16:37:34Z,2017-01-31T20:07:21Z,2017-01-31T19:07:55Z,2017-01-31T19:07:55Z,93d6963315026f87841c7cf39cc39bb78f555345,,,0,4d9485884221a21f45247227acb8f0c655a7f462,176cd4f81ffa7c849ddd9c4592addf331a616e9f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1242, 103977310,MDExOlB1bGxSZXF1ZXN0MTAzOTc3MzEw,1243,closed,0,use latest doi badge for zenodo,2443309,"Quick update to docs to use latest zenodo doi ",2017-01-31T16:55:05Z,2017-01-31T18:38:07Z,2017-01-31T18:38:04Z,2017-01-31T18:38:04Z,588339cd40bdefb9f33c534b1f1a320c2437f802,,,0,1821e426b62398e7ada4a1aeea67b77012d6c1c8,176cd4f81ffa7c849ddd9c4592addf331a616e9f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1243, 104709202,MDExOlB1bGxSZXF1ZXN0MTA0NzA5MjAy,1250,closed,0,add DataArray.pipe to api docs,2443309," - [ ] closes #xxxx - [ ] tests added / passed - [ ] passes ``git diff upstream/master | flake8 --diff`` - [ ] whatsnew entry ",2017-02-05T18:28:52Z,2017-02-05T21:15:02Z,2017-02-05T21:15:02Z,2017-02-05T21:15:02Z,7761c4b801437e6a092a778a0c9cd154b1e505c0,,,0,50308359998325b16ef35ff06788c729fda79540,93d6963315026f87841c7cf39cc39bb78f555345,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1250, 106945192,MDExOlB1bGxSZXF1ZXN0MTA2OTQ1MTky,1278,closed,0,Feature/support bn 1 1,2443309,"Bottleneck added support for rolling variance calculations (`bn.move_var`) as well as a few other functions in version 1.1. This PR conditionally uses those new functions, when they are available. - [x] closes #1276 - [x] tests added / passed - [x] passes ``git diff upstream/master | flake8 --diff`` - [x] whatsnew entry cc @shoyer and @d-chambers",2017-02-20T06:12:07Z,2017-03-06T01:32:38Z,2017-03-06T01:32:14Z,2017-03-06T01:32:14Z,e92a8079d119d6f65936657be721605156c8bfbd,,,0,0f2e1014dae8c6e99d5b237dc732ef3a802ca94f,7f71e4087147938afa503e1460a05631f07c5c24,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1278, 114629774,MDExOlB1bGxSZXF1ZXN0MTE0NjI5Nzc0,1355,closed,0,update docs to reflect recently published paper on xarray,2443309," - [x] closes #931 and #290 (already closed) A few doc updates to reflect the newly published status of our xarray paper.",2017-04-06T15:30:09Z,2017-04-11T18:08:39Z,2017-04-06T19:05:31Z,2017-04-06T19:05:31Z,61bb71db1753fd3192dfbe2ba29bdc43fda5e657,,,0,70e4496dfa596b5c9cf920b12b75dd0cc5592d5e,94790388c273c0c1ce2c203940a706d331deb14f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1355, 125936835,MDExOlB1bGxSZXF1ZXN0MTI1OTM2ODM1,1457,closed,0,Feature/benchmark,2443309," - [x] Closes #1257 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API This is a very bare bones addition of the [asv](https://github.com/spacetelescope/asv/) benchmarking tool to xarray. I have added four very rudimentary benchmarks in the `dataset_io.py` module. Usage of `asv` is pretty straightforward but I'll outline the steps for those who want to try this out: ``` cd xarray conda install asv -c conda-forge asv run # this will install some conda environments in ./.asv/envs asv publish # this collates the results asv preview # this will launch a web server so you can visually compare the tests ``` Before I go any further, I want to get some input from @pydata/xarray on what we want to see in this PR. In previous projects, I have found designing tests after the fact can end up being fairly arbitrary and I want to avoid that if at all possible. I'm guessing that we will want to focus our efforts for now on I/O and dask related performance but how we do that is up for discussion. cc @shoyer, @rabernat, @MaximilianR, @Zac-HD",2017-06-16T00:11:52Z,2017-11-13T04:09:53Z,2017-07-26T16:17:34Z,2017-07-26T16:17:34Z,96e6e8f7ad8dd493c9d15df2951999c6dd04e8c9,,2415632,0,6c058083bfa7e4e044e50ea7e048c60c35686e22,5d245b22e9500a7eb805193ba5c65bb5474a5ae1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1457, 131816195,MDExOlB1bGxSZXF1ZXN0MTMxODE2MTk1,1485,closed,0,add ISSUE_TEMPLATE for github and xr.show_versions(),2443309," - [x] xref #986 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API This PR adds a new module level function `xr.show_versions()` and a new Github Issue Template to help with debugging user issues. Hopefully, we stop having to ask ""what version of dask are you using?"" Functionality is copied from [pandas](https://github.com/pandas-dev/pandas/blob/e99f56e43ab65710a34440067efe372d5f74280b/pandas/util/_print_versions.py). ",2017-07-21T16:54:29Z,2017-10-28T01:24:08Z,2017-10-28T01:24:02Z,2017-10-28T01:24:02Z,3a995294a99a00a62fb451c8dc3f0c404c8e92f5,,2415632,0,97ee679446ca3941a2ec9098142623d2bba8be2d,63902306176da07cf3db52805f3a90a62e18ad46,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1485, 137864749,MDExOlB1bGxSZXF1ZXN0MTM3ODY0NzQ5,1529,closed,0,raise TypeError in Variable.quantile if data is a dask array,2443309," - [x] Closes #1524 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-08-28T03:19:11Z,2017-08-28T17:31:57Z,2017-08-28T17:31:57Z,2017-08-28T17:31:57Z,174bad061dc5ac37a4b5e849ad2afa957127745f,,,0,c40336d5a06cf0c803998f75f249dbb0483b5b16,bcd608101133c0cb84c74d341d22edef71ef4818,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1529, 138539001,MDExOlB1bGxSZXF1ZXN0MTM4NTM5MDAx,1538,closed,0,Fix/1120,2443309," - [x] Closes #1120 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-08-30T22:02:52Z,2017-09-06T00:07:11Z,2017-09-06T00:07:08Z,2017-09-06T00:07:08Z,216bb6720dbe22b67fc6194f4f9525ae0f8924e2,,2415632,0,59039a9213c116821ca0697f2fb5f4a9077a035e,5472fb585b9bfda7b0ce5b54d0182d608199df35,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1538, 138552535,MDExOlB1bGxSZXF1ZXN0MTM4NTUyNTM1,1539,closed,0,remove warning and raise error when dataset constructor is called wit…,2443309,"…h coords dict and not dims - [x] Closes #1197 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-08-30T23:42:57Z,2017-08-31T19:17:32Z,2017-08-31T19:17:29Z,2017-08-31T19:17:29Z,4571d60859850ec121fbaae04d717754f5a35dd1,,,0,a2bf80b0c107dcacc7961d49aad29af2817506ce,0b2424a1813bf1af712780c360a94a5588523adf,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1539, 138758173,MDExOlB1bGxSZXF1ZXN0MTM4NzU4MTcz,1543,closed,0,pass dask compute/persist args through from load/compute/perist,2443309," - [x] Closes #1523 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @crusaderky - putting this up in case its useful to you. I'm frankly not sure if my tests are doing what they need to but everything seems to be playing nicely.",2017-08-31T20:24:50Z,2017-09-05T19:55:50Z,2017-09-05T19:55:46Z,2017-09-05T19:55:46Z,5472fb585b9bfda7b0ce5b54d0182d608199df35,,,0,a879214ad6fe9b513c8f41e91ff190dd5098266f,d1ab8051bd4ae42a2e197a7175db1aa915363107,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1543, 138789324,MDExOlB1bGxSZXF1ZXN0MTM4Nzg5MzI0,1544,closed,0,allow positional indexing with unsigned integer types,2443309," - [x] Fixes #1405, Closes #1406 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @gerritholl",2017-08-31T23:42:52Z,2017-09-01T14:18:51Z,2017-09-01T14:18:51Z,,9a045768de9d0077420e12dfdede5bbccc524f57,,,0,46dd7c7cd0a9980572bcfd8f8362d5fb32c7444f,4571d60859850ec121fbaae04d717754f5a35dd1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1544, 138793278,MDExOlB1bGxSZXF1ZXN0MTM4NzkzMjc4,1545,closed,0,Concat retain encoding,2443309," - [x] Closes #1438, Fixes #1299 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @gerritholl ",2017-09-01T00:21:41Z,2017-09-05T04:10:05Z,2017-09-05T04:10:02Z,2017-09-05T04:10:02Z,d1ab8051bd4ae42a2e197a7175db1aa915363107,,,0,5e210b2b43278371efadb2d2dfe5c96148384c5b,4571d60859850ec121fbaae04d717754f5a35dd1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1545, 138954907,MDExOlB1bGxSZXF1ZXN0MTM4OTU0OTA3,1546,closed,0,return bytes from DataArray.to_netcdf when path is not provided,2443309," - [x] Closes #1410 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-09-01T19:06:38Z,2017-09-05T13:51:00Z,2017-09-05T13:50:55Z,2017-09-05T13:50:55Z,d11a4b1063d492b431952507836f2c991b59e8db,,,0,59ef8a91a94e8cfd54d2829cb027392eac7804ef,d1ab8051bd4ae42a2e197a7175db1aa915363107,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1546, 139705782,MDExOlB1bGxSZXF1ZXN0MTM5NzA1Nzgy,1556,closed,0,raise error if objects other than datasets are passed to save_mfdataset,2443309," - [x] Closes #1555 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-09-07T02:50:41Z,2017-09-07T07:38:49Z,2017-09-07T07:38:46Z,2017-09-07T07:38:46Z,98a05f11c6f38489c82e86c9e9df796e7fb65fd2,,,0,af08f696aec83752c932f814354292b2d126dbb5,216bb6720dbe22b67fc6194f4f9525ae0f8924e2,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1556, 139715643,MDExOlB1bGxSZXF1ZXN0MTM5NzE1NjQz,1557,closed,0,fix unintentional skipped tests,2443309," - [x] Closes #1531 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API As @crusaderky pointed out, just moving the `@requires_pynio` decorator inside the `TestPyNio` class seems to fix the problems described in #1531. It looks like `requires_pynio` is nullifying `CFEncodedDataTest, Only32BitTypes, TestCase` in addition to `TestPyNio`, hence the propagation. This PR also includes a cleanup of `tests/__init__.py`. ",2017-09-07T04:47:27Z,2017-10-04T23:12:52Z,2017-10-04T23:12:48Z,2017-10-04T23:12:48Z,e7136689751059619fe3aa07cd6f1469fd4a0ad4,,,0,993992def9afc075f52bedc2423bca03ac744672,24643ecee2eab04d0f84c41715d753e829f448e6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1557, 139738491,MDExOlB1bGxSZXF1ZXN0MTM5NzM4NDkx,1558,closed,0,stop skipping test_bivariate_ufunc in test_dask.py,2443309," - [x] Closes #1090 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` The fix for this issue went into dask v.0.13 (Jan 2, 2017). xrefs https://github.com/dask/dask/pull/1799, https://github.com/dask/dask/issues/1764",2017-09-07T07:55:04Z,2017-09-07T20:04:15Z,2017-09-07T20:04:07Z,2017-09-07T20:04:07Z,3a81942eb0cc38129208a52c391f7150af6f2538,,,0,4dc57c8d99ba74b921a5581e3017981b5582ecd3,98a05f11c6f38489c82e86c9e9df796e7fb65fd2,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1558, 140484541,MDExOlB1bGxSZXF1ZXN0MTQwNDg0NTQx,1568,closed,0,support dask arrays in rolling computations using bottleneck functions,2443309," - [x] Closes #1279 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @shoyer, @darothen, @arbennett, @vnoel",2017-09-12T04:11:31Z,2017-09-14T17:19:55Z,2017-09-14T17:19:51Z,2017-09-14T17:19:51Z,ae4df1d8304ccd1eebec2c50e66f1671c1682ef8,,,0,59455721d584b948d9958f286c3bab7dc772575f,fa6a7bee082332108d49fbbf452d04f8e7285172,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1568, 144724548,MDExOlB1bGxSZXF1ZXN0MTQ0NzI0NTQ4,1607,closed,0,fix nc4 shuffle option roundtrip,2443309," - [x] Closes #1606 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-10-04T17:04:51Z,2017-10-05T00:12:41Z,2017-10-05T00:12:38Z,2017-10-05T00:12:38Z,c748062ef4353f5e249553b06a198a44c71083c4,,,0,635f9d7bf4ffd0416e80ba93d8e31b00c22005d1,e7136689751059619fe3aa07cd6f1469fd4a0ad4,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1607, 144733698,MDExOlB1bGxSZXF1ZXN0MTQ0NzMzNjk4,1608,closed,0,Fix resample/interpolate for non-upsampling case,2443309," - [x] Closes #1605 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - ~[ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API~ cc @darothen ",2017-10-04T17:49:10Z,2017-10-05T16:57:03Z,2017-10-05T16:34:14Z,2017-10-05T16:34:14Z,8710e0872533ccb82ac9716c24aa6e91f24113d0,,,0,9c5601384fb4500daf2d8cabd74377312e5d1a1b,24643ecee2eab04d0f84c41715d753e829f448e6,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1608, 144775591,MDExOlB1bGxSZXF1ZXN0MTQ0Nzc1NTkx,1609,closed,0,fix to_netcdf append bug (GH1215),2443309," - [x] Closes #1215 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ~TODO: Additional tests needed to verify this works for all the write backends and that the correct errors are raised when dims are different between writes.~",2017-10-04T21:05:29Z,2017-10-25T05:09:10Z,2017-10-25T05:09:10Z,2017-10-25T05:09:10Z,f01d69802d9fd37d28817f77ad3cb9b6344268a3,,,0,09101d63db0ece7e66b0fcee8082a13783733708,423d3902ae432989a8a28bf9608621805d7095c5,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1609, 145761497,MDExOlB1bGxSZXF1ZXN0MTQ1NzYxNDk3,1622,closed,0,Improved netcdf4 error message when opening non existent file,2443309," - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` This is particularly helpful when using `open_mfdataset` with a list of files. For example: Current behavior (unclear which file is causing open_dataset to choke): ```Python-traceback In [2]: xr.open_mfdataset(['foo.nc', 'bar.nc'], engine='netcdf4') --------------------------------------------------------------------------- OSError Traceback (most recent call last) in () ----> 1 xr.open_mfdataset(['foo.nc', 'bar.nc'], engine='netcdf4') ... /Users/jhamman/Dropbox/src/xarray/xarray/backends/netCDF4_.py in _open_netcdf4_group(filename, mode, group, **kwargs) 183 import netCDF4 as nc4 184 --> 185 ds = nc4.Dataset(filename, mode=mode, **kwargs) 186 187 with close_on_error(ds): netCDF4/_netCDF4.pyx in netCDF4._netCDF4.Dataset.__init__() netCDF4/_netCDF4.pyx in netCDF4._netCDF4._ensure_nc_success() OSError: No such file or directory ``` And the new behavior ```Python-traceback In [2]: xr.open_mfdataset(['foo.nc', 'bar.nc'], engine='netcdf4') ... /Users/jhamman/Dropbox/src/xarray/xarray/backends/netCDF4_.py in _open_netcdf4_group(filename, mode, group, **kwargs) 186 ds = nc4.Dataset(filename, mode=mode, **kwargs) 187 except OSError as e: --> 188 raise OSError(""Error opening %r"" % filename, e) 189 190 with close_on_error(ds): OSError: [Errno Error opening '/Users/jhamman/Dropbox/src/xarray/foo.nc'] No such file or directory ",2017-10-10T18:03:16Z,2017-10-20T19:35:11Z,2017-10-20T19:35:11Z,,6b74f020418e31a52144e1e79359f739af91b947,,,0,e864567484b2b484ff6c35614289880eb2ce2dd5,b46fcd656391d786b8d25b0615f6d4bd30b524b7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1622, 146944492,MDExOlB1bGxSZXF1ZXN0MTQ2OTQ0NDky,1634,closed,0,catch/supress seaborn import warning,2443309," - [x] Closes #1633 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-10-17T05:07:07Z,2017-10-23T15:58:12Z,2017-10-23T15:58:09Z,2017-10-23T15:58:09Z,2c83e5496f7cf9984c8eb70a88ef5d30d278c673,,,0,2c3792422e2f42b80e11707cd392eaadac707e24,2949558b75a65404a500a237ec54834fd6946d07,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1634, 147133026,MDExOlB1bGxSZXF1ZXN0MTQ3MTMzMDI2,1637,closed,0,Add unlim dims for h5netcdf,2443309," - [x] Closes #1636 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (*these tests will fail until conda-forge get's an updated version of h5netcdf*) ",2017-10-17T19:35:40Z,2017-10-18T19:56:46Z,2017-10-18T19:56:43Z,2017-10-18T19:56:43Z,4c3c3328a7ea8269e1411c5119dd0b3d4d972cc4,,,0,6efca5265f36a9ba8dd9c931848de2d8932e2ac5,2949558b75a65404a500a237ec54834fd6946d07,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1637, 147695311,MDExOlB1bGxSZXF1ZXN0MTQ3Njk1MzEx,1640,closed,0,WIP: Feature/interpolate,2443309," - [x] Closes #1631 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Rough draft of interpolate method for filling of arbitrary nans. cc @darothen ",2017-10-20T00:26:25Z,2017-12-30T06:58:52Z,2017-12-30T06:21:42Z,2017-12-30T06:21:42Z,783b527b8ed2a79fbb1439c9a87db144edc55cf7,,,0,d3220f3324b215cd0b1c8041f642f5ddf3c6c0ae,6eac8574f85623b18b59ba1ac9cf95e09c87980b,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1640, 148568774,MDExOlB1bGxSZXF1ZXN0MTQ4NTY4Nzc0,1657,closed,0,fixes for warnings related to unit tests and nan comparisons,2443309," - [x] Closes #1652 - [x] Tests added / passed - [x] Passes ``git diff upstream/master | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API This first commit just includes the fixes for the warnings issued in our unit tests. I've temporarily added `-W error` to the travis builds so we can see the warnings/errors for all environments. Next step is to address the warnings in the xarray code itself. ",2017-10-25T04:38:09Z,2017-10-29T18:19:44Z,2017-10-29T18:19:06Z,2017-10-29T18:19:05Z,d016ea7d925d3d53796b7c68b6d377bdb7497a8e,,,0,c2126fc0bced0e78d9ac3d0a240e2e25a329c943,c58d1426401a1f7b6ad14a14a67afe25189e4ff3,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1657, 148724400,MDExOlB1bGxSZXF1ZXN0MTQ4NzI0NDAw,1660,closed,0,fix CI builds (pytest/hypothesis) ,2443309," - [x] Closes #1655 - [x] Tests added / passed ",2017-10-25T16:54:34Z,2017-10-25T17:59:52Z,2017-10-25T17:59:49Z,2017-10-25T17:59:48Z,888b383b844fedae8b04095d0cb0d08066b19de9,,,0,2d3c7d1ba719c60806775b393bc34f382ef71ec8,f01d69802d9fd37d28817f77ad3cb9b6344268a3,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1660, 150448641,MDExOlB1bGxSZXF1ZXN0MTUwNDQ4NjQx,1685,closed,0,fix bugs in is_scalar and as_variable for dask arrays,2443309," - [x] Closes #1684 - [x] Tests added / passed - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API xref: #1674 cc @shoyer, @mrocklin ",2017-11-03T03:18:30Z,2017-11-05T11:04:43Z,2017-11-05T01:29:45Z,2017-11-05T01:29:45Z,acae757d869af776a4b2bd980fb77a1873f4c510,,,0,e94bd8d9d29efd1082fc4182c2b12694ce50e743,f83361c76b6aa8cdba8923080bb6b98560cf3a96,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1685, 156877513,MDExOlB1bGxSZXF1ZXN0MTU2ODc3NTEz,1767,closed,0,use pandas Grouper instead of TimeGrouper,2443309," - [x] Closes #1766 - [ ] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-12-07T00:43:05Z,2017-12-07T01:33:33Z,2017-12-07T01:33:29Z,2017-12-07T01:33:28Z,3a28b611e40f2a09c05f982242f638cc3f7d94bf,,,0,c5e338335296b1752c99c4d284aa7437b53691da,c2b205f29467a4431baa80b5c07fe31bda67fbef,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1767, 159286994,MDExOlB1bGxSZXF1ZXN0MTU5Mjg2OTk0,1793,closed,0,fix distributed writes,2443309," - [x] Closes #1464 - [x] Tests added - [x] Tests passed - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Right now, I've just modified the dask distributed integration tests so we can all see the [failing tests](https://travis-ci.org/jhamman/xarray/jobs/317603224#L4400-L4571). I'm happy to push this further but I thought I'd see if either @shoyer or @mrocklin have an idea where to start?",2017-12-19T22:24:41Z,2018-03-13T15:32:54Z,2018-03-10T15:43:18Z,2018-03-10T15:43:18Z,2f590f7d7f34c7dfddea4d1d4f8877bca081b601,,3008859,0,3c2ffbf5b85299a59e0fa12fdec8dff03346527f,870e4eaf1895cfeffdc27dab61ad739e67133777,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1793, 159582273,MDExOlB1bGxSZXF1ZXN0MTU5NTgyMjcz,1797,closed,0,fix to docs and update print_versions with distributed/zarr,2443309," - [x] Tests passed (for all non-documentation changes) - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` ",2017-12-21T06:09:41Z,2017-12-21T06:41:09Z,2017-12-21T06:41:06Z,2017-12-21T06:41:06Z,4a9c1e313037ccadd6d4b1251de8d8f943443270,,,0,da877b2e3797be90bee06c00541381bfd1c771b5,eeb109d9181c84dfb93356c5f14045d839ee64cb,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1797, 159735727,MDExOlB1bGxSZXF1ZXN0MTU5NzM1NzI3,1799,closed,0,move backend append logic to the prepare_variable methods,2443309," - [x] Closes #1798 - [ ] Tests added (ideas for how to test that load is not called? Regression tests from #1609 are passing) - [x] Tests passed - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` (remove if you did not edit any Python files) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2017-12-21T19:44:54Z,2017-12-28T05:40:21Z,2017-12-28T05:40:17Z,2017-12-28T05:40:16Z,6eac8574f85623b18b59ba1ac9cf95e09c87980b,,,0,ec5172e2a6b9aea2f1d3326fa5370b64dc453a9c,4a9c1e313037ccadd6d4b1251de8d8f943443270,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1799, 160165627,MDExOlB1bGxSZXF1ZXN0MTYwMTY1NjI3,1800,closed,0,WIP: Performance improvements for zarr backend,2443309," - [x] Closes #https://github.com/pangeo-data/pangeo/issues/48 - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` (remove if you did not edit any Python files) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) This is building on top of #1799. Based on the suggestion from @alimanfoo in https://github.com/pangeo-data/pangeo/issues/48#issuecomment-353807691, I have reworked the handling of attributes in the zarr backend. There is more to do here, particularly in the `set_dimensions` arena but this is giving almost a 2x speedup in writing to GCP. cc @rabernat, @mrocklin and @alimanfoo ",2017-12-26T20:37:45Z,2018-01-24T14:56:57Z,2018-01-24T14:55:52Z,2018-01-24T14:55:52Z,0a0593d78fad6c0b776d4c3c6b32a24b2bdfba35,,3008859,0,96996eff5fbbd07ea87003762bc27befd70bbf58,f3deb2f2495220af819021b199a5305b0d62ef36,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1800, 161508331,MDExOlB1bGxSZXF1ZXN0MTYxNTA4MzMx,1811,closed,0,WIP: Compute==False for to_zarr and to_netcdf,2443309,"review of this can wait until after #1800 is merged. - [x] Closes #1784 - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) cc @mrocklin ",2018-01-07T05:01:42Z,2018-05-16T15:06:51Z,2018-05-16T15:05:03Z,2018-05-16T15:05:03Z,8ef194f2e6f2e68f1f818606d6362ddfe801df1e,,,0,75b2431beaf077f2a237f234de436b81d1f07b4f,9f58d509a432f18d9ceb69bdc0808f2cb9b77f6c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1811, 161953502,MDExOlB1bGxSZXF1ZXN0MTYxOTUzNTAy,1814,closed,0,Fix/plot error and warning,2443309," - [x] Closes #1813 ~[ ] Tests added~ - [x] Tests passed - [x] Passes ``git diff upstream/master **/*py | flake8 --diff`` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) ",2018-01-09T19:16:31Z,2018-01-10T07:13:53Z,2018-01-10T07:13:53Z,2018-01-10T07:13:53Z,b6300ea9d9e84e24fc2e03bdff06d8d0659e2344,,,0,e59fcf66d7e7d5c80a3d26c13425471ba4ace485,ab0db05a58fd47fe895d1a85c09c37d96263d3b7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1814, 165877425,MDExOlB1bGxSZXF1ZXN0MTY1ODc3NDI1,1868,closed,0,add h5py to show_versions(),2443309," - [x] Closes #1867 - [x] Tests passed (for all non-documentation changes) ",2018-01-30T03:25:13Z,2018-01-30T15:33:14Z,2018-01-30T06:21:15Z,2018-01-30T06:21:15Z,e7e2778a4c6b2d41d98481b8cef94032eff9ebc2,,,0,e9c0c139901d5b406842ef5d6c9b8f27336e32a2,015daca45bd7be32377bdf429c02117d5955452c,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1868, 166163249,MDExOlB1bGxSZXF1ZXN0MTY2MTYzMjQ5,1871,closed,0,add warning stating that xarray will drop python 2 support at the end of 2018,2443309," - [x] Closes #1830 (remove if there is no corresponding issue, which should only be the case for minor changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2018-01-31T04:25:14Z,2018-02-01T06:04:12Z,2018-02-01T06:04:08Z,2018-02-01T06:04:08Z,55257b86fcfedba1c4be35183e55fa1f2de13667,,,0,11e5cce26820bfc0116c3ec0fee4ad484fac4c00,7b17b4f42abf90f7300a4865839fe6f6faae16ca,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1871, 166177839,MDExOlB1bGxSZXF1ZXN0MTY2MTc3ODM5,1872,closed,0,added contributing guide,2443309,"- [x] Closes #640 - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API This is something we've talked about for a while and I'm capitalizing on a moment of inspiration. Full disclosure, I've taken most of this from Pandas and edited it just where it makes sense for Xarray. If others would like specific changes to this, please comment only on `doc/contributing.rst`, ~`CONTRIBUTING.md` is auto generated with `pandoc`~. @pydata/xarray, feel free to push directly to this branch if there are larger edits you'd like to add.",2018-01-31T06:41:34Z,2018-02-23T06:16:00Z,2018-02-05T21:00:02Z,2018-02-05T21:00:01Z,7357a07806d2493c7cb2765f01d54ec9a8f2c87d,,,0,2008f301237d79403ea552088d8439c7ed59a00b,23866d0447da2765a0d655138edeefa454d99af1,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1872, 168927473,MDExOlB1bGxSZXF1ZXN0MTY4OTI3NDcz,1907,closed,0,drop zarr variable name from the dask chunk name,2443309," - [x] Closes #1894 - [ ] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @mrocklin ",2018-02-13T18:55:33Z,2018-02-17T04:40:18Z,2018-02-17T04:40:15Z,2018-02-17T04:40:15Z,e0621c7d66c13b486b1890f67a126caec2990da7,,,0,ed60c914b02c0f9a55001014bfd45c881890180b,33660b76057b7dc5b9c7dac77e286bb755b1d68e,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1907, 168942588,MDExOlB1bGxSZXF1ZXN0MTY4OTQyNTg4,1908,closed,0,Build documentation on TravisCI,2443309," - [x] Closes #1898 (remove if there is no corresponding issue, which should only be the case for minor changes) - [x] Tests added (for all bug fixes or enhancements) - [ ] Tests passed (for all non-documentation changes) - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) ",2018-02-13T20:04:07Z,2018-02-15T23:20:34Z,2018-02-15T23:20:31Z,2018-02-15T23:20:31Z,174fe5d28b94147ecb0cb88d5301ca9479c6d7ad,,,0,0f669670f864a52d046786069e4e62bc7859d635,2aa5b8a5c094593569f5bd9ae220d1f2fc0ecda0,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1908, 169737884,MDExOlB1bGxSZXF1ZXN0MTY5NzM3ODg0,1920,closed,0,Add netcdftime as an optional dependency. ,2443309," - [x] Helps with #1084 - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) I've added a temporary travis build with the master branch of `netcdftime`. After a while, we can probably remove that. This is helping us move towards https://github.com/Unidata/netcdf4-python/issues/601 and #1252 cc @jswhit and @spencerkclark ",2018-02-16T22:12:01Z,2018-02-22T03:23:25Z,2018-02-19T21:25:57Z,2018-02-19T21:25:57Z,e544e0db42819076dc4a0c70f513b726fe8da511,,,0,c2b35c1adee869d2c77680b305e83ac0679e421c,e0621c7d66c13b486b1890f67a126caec2990da7,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1920, 170385828,MDExOlB1bGxSZXF1ZXN0MTcwMzg1ODI4,1933,closed,0,Use conda-forge netcdftime wherever netcdf4 was tested ,2443309," - [x] Closes #1920 - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented: see #1920 ",2018-02-21T06:22:08Z,2018-03-09T19:22:34Z,2018-03-09T19:22:20Z,2018-03-09T19:22:19Z,8c6a28435282b1fd988e3984ecec539de94b10ca,,,0,493c262c5e6318dfce1a931c6a19c99e3bf4aec2,33095885e6a4d7b2504ced5d9d4d34f1d6e872e2,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1933, 171238397,MDExOlB1bGxSZXF1ZXN0MTcxMjM4Mzk3,1939,closed,0,Fix/dask isnull,2443309," - [x] Closes #1937 - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API Thanks @fujiisoup for the report. ",2018-02-25T16:32:47Z,2018-02-25T20:52:17Z,2018-02-25T20:52:16Z,2018-02-25T20:52:16Z,ec6e1603680ffa5a975baf890953cf2605394f0c,,,0,6a18a1c5b58603301194754dcb3016f4475f4b10,fc7fe4875289778014fc1ea04b6b09be12f9750a,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1939, 174185429,MDExOlB1bGxSZXF1ZXN0MTc0MTg1NDI5,1980,closed,0,Fix for failing zarr test,2443309," - [x] Closes #1979 and #1955 - [x] Tests added - [x] Tests passed ",2018-03-10T19:26:37Z,2018-03-12T05:37:09Z,2018-03-12T05:37:02Z,2018-03-12T05:37:02Z,aa83d0ec5a0da9e8880d3194864ff212d5990d6b,,,0,f755975813f324dbf9df18fa5f2877799b1a1d4c,2f590f7d7f34c7dfddea4d1d4f8877bca081b601,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1980, 174531572,MDExOlB1bGxSZXF1ZXN0MTc0NTMxNTcy,1983,closed,0,Parallel open_mfdataset,2443309," - [x] Closes #1981 - [x] Tests added - [x] Tests passed - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API I'm sharing this in the hopes of getting comments from @mrocklin and @pydata/xarray. What this does: - implements a `dask.bag` map/apply on the xarray `open_dataset` and `preprocess` steps in `open_mfdataset` - adds a new `parallel` option to `open_mfdataset` - provides about a 40% speedup in opening a multifile dataset when using the distributed scheduler (I tested on 1000 netcdf files that took about 9 seconds to open/concatenate in the default configuration) What it does not do (yet): - check that `autoclose=True` when multiple processes are being use (multiprocessing/distributed scheduler) - provide any speedup with the multiprocessing backend (I do not understand why this is) ------ ### Benchmark Example ```Python In [1]: import xarray as xr ...: import dask ...: import dask.threaded ...: import dask.multiprocessing ...: from dask.distributed import Client ...: In [2]: c = Client() ...: c ...: Out[2]: In [4]: %%time ...: with dask.set_options(get=dask.multiprocessing.get): ...: ds = xr.open_mfdataset('../test_files/test_netcdf_*nc', autoclose=True, parallel=True) ...: CPU times: user 4.76 s, sys: 201 ms, total: 4.96 s Wall time: 7.74 s In [5]: %%time ...: with dask.set_options(get=c.get): ...: ds = xr.open_mfdataset('../test_files/test_netcdf_*nc', autoclose=True, parallel=True) ...: ...: CPU times: user 1.88 s, sys: 60.6 ms, total: 1.94 s Wall time: 4.41 s In [6]: %%time ...: with dask.set_options(get=dask.threaded.get): ...: ds = xr.open_mfdataset('../test_files/test_netcdf_*nc') ...: CPU times: user 7.77 s, sys: 247 ms, total: 8.02 s Wall time: 8.17 s In [7]: %%time ...: with dask.set_options(get=dask.threaded.get): ...: ds = xr.open_mfdataset('../test_files/test_netcdf_*nc', autoclose=True) ...: ...: CPU times: user 7.89 s, sys: 202 ms, total: 8.09 s Wall time: 8.21 s In [8]: ds Out[8]: Dimensions: (lat: 45, lon: 90, time: 1000) Coordinates: * lon (lon) float64 0.0 4.045 8.09 12.13 16.18 20.22 24.27 28.31 ... * lat (lat) float64 -90.0 -85.91 -81.82 -77.73 -73.64 -69.55 -65.45 ... * time (time) datetime64[ns] 1970-01-01 1970-01-02 1970-01-11 ... Data variables: foo (time, lon, lat) float64 dask.array bar (time, lon, lat) float64 dask.array baz (time, lon, lat) float32 dask.array Attributes: history: created for xarray benchmarking ``` ",2018-03-13T00:44:35Z,2018-04-20T12:04:31Z,2018-04-20T12:04:23Z,2018-04-20T12:04:23Z,093518207f4a3210ec692308da2b181a646115d6,,,0,b0a794822b1d717a2ca2d473c96d61ce6d930fbe,68090bbfc6ce3ea72f8166375441d31f830de1ea,MEMBER,,13221727,https://github.com/pydata/xarray/pull/1983, 187978886,MDExOlB1bGxSZXF1ZXN0MTg3OTc4ODg2,2131,closed,0,Feature/pickle rasterio,2443309," - [x] Closes #2121 - [x] Tests added - [x] Tests passed - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @rsignell-usgs",2018-05-14T23:38:59Z,2018-06-08T05:00:59Z,2018-06-07T18:02:56Z,2018-06-07T18:02:56Z,21a9f3d7e3a5dd729aeafd08dda966c365520965,,,0,8d7c7689063c4b23fd2baa5db4023989bae03afe,bc52f8aa64833d8c97f9ef5253b6a78c7033f521,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2131, 188518786,MDExOlB1bGxSZXF1ZXN0MTg4NTE4Nzg2,2141,closed,0,expose CFTimeIndex to public API,2443309," - [x] Closes #2140 ~- [ ] Tests added (for all bug fixes or enhancements)~ - [ ] Tests passed - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API cc @spencerkclark and @shoyer ",2018-05-16T18:19:59Z,2018-05-16T19:48:00Z,2018-05-16T19:48:00Z,2018-05-16T19:48:00Z,4972dfd84d4e7ed31875b4257492ca84939eda4a,,,0,bac56d1b94b2175af82b3f0d4361687e39dab6b9,8ef194f2e6f2e68f1f818606d6362ddfe801df1e,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2141, 188875457,MDExOlB1bGxSZXF1ZXN0MTg4ODc1NDU3,2154,closed,0,fix unlimited dims bug,2443309," - [x] Closes #2134 - [x] Tests added - [x] Tests passed - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2018-05-17T22:13:51Z,2018-05-25T00:32:02Z,2018-05-18T14:48:11Z,2018-05-18T14:48:11Z,ecb10e347bbe0f0e4bab8a358f406923e5468dcf,,,0,a03bcf32fa4271f309bdee1a5e5f21b2c1fccc66,7bab27cc637a60bff2b510d4f4a419c9754eeaa3,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2154, 189128764,MDExOlB1bGxSZXF1ZXN0MTg5MTI4NzY0,2163,closed,0,Versioneer,2443309," - [x] Closes #1300 (in a more portable way) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) This eliminates the need to edit `setup.py` before / after release and is a nice step towards simplifying xarray's release process.",2018-05-18T20:35:39Z,2018-05-20T23:14:03Z,2018-05-20T23:14:03Z,2018-05-20T23:14:03Z,585b9a7913d98e26c28b4f1da599c1c6db551362,,,0,b278cd9c7571bdfdd5cceb6b4470ab8df7045030,c346d3b7bcdbd6073cf96fdeb0710467a284a611,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2163, 191585858,MDExOlB1bGxSZXF1ZXN0MTkxNTg1ODU4,2204,closed,0,update minimum versions and associated code cleanup,2443309," - [x] closes #2200, closes #1829, closes #2203 - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) This updates the following minimum versions: - numpy: 1.11 (Mar 27, 2016) --> 1.12 (Jan 15, 2017) - pandas: 0.18 (Mar 11, 2016) --> 0.19 (Oct 2, 2016) - dask: 0.9 (May 10, 2016) --> 0.16 and drops our tests for python 3.4. ",2018-05-30T21:27:14Z,2018-07-08T00:55:36Z,2018-07-08T00:55:32Z,2018-07-08T00:55:31Z,1688a59803786a9d88eeb43aa4c935f7052d6a80,,2856429,0,b8aa4c082095d30c0a116c4d0fea0c9d39999328,448c3f1ae919f94a2b594eaeb91c6fd950eca43f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2204, 194407359,MDExOlB1bGxSZXF1ZXN0MTk0NDA3MzU5,2228,closed,0,fix zarr chunking bug,2443309," - [x] Closes #2225 - [x] Tests added - [x] Tests passed - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2018-06-12T21:04:10Z,2018-06-13T13:07:58Z,2018-06-13T05:51:36Z,2018-06-13T05:51:36Z,66be9c5db7d86ea385c3a4cd4295bfce67e3f25b,,,0,97dcc9476dc0f05b89a84babe4e0210a8e6fff73,6c3abedf906482111b06207b9016ea8493c42713,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2228, 199925487,MDExOlB1bGxSZXF1ZXN0MTk5OTI1NDg3,2271,closed,0,dev/test build for python 3.7,2443309," - [x] Tests added - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2018-07-08T05:02:19Z,2018-09-22T23:09:43Z,2018-09-22T20:13:28Z,2018-09-22T20:13:28Z,04253f271c66a12366a82d357c2a889dd3eea42f,,,0,ffcfc9d1512b2958856780e2a64bdcc89f6b9a34,4577ed891f9839722fd9e606e4f3bdb8e6acef4f,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2271, 200888374,MDExOlB1bGxSZXF1ZXN0MjAwODg4Mzc0,2282,closed,0,fix dask get_scheduler warning,2443309," - [x] Closes #2238 - [ ] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [ ] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2018-07-12T05:01:02Z,2018-07-14T16:19:58Z,2018-07-14T16:19:53Z,2018-07-14T16:19:53Z,afee350789cacecc689c63fe580c98025e29d3db,,,0,20330b36b1593072ce7f7cabac172b9334def8c6,1688a59803786a9d88eeb43aa4c935f7052d6a80,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2282, 204488426,MDExOlB1bGxSZXF1ZXN0MjA0NDg4NDI2,2320,closed,0,Fix for zarr encoding bug,2443309," - [x] Closes #2278 - [x] Tests added - [ ] Tests passed - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API ",2018-07-27T17:05:27Z,2018-08-14T03:46:37Z,2018-08-14T03:46:34Z,2018-08-14T03:46:34Z,df4a4b145b68c11d50576c961cf33c09b5bb9905,,,0,6b74e5254e99dd5ca97eddd63cf57b6538ccb460,4df048c146b8da7093faf96b3e59fb4d56945ec5,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2320, 213668183,MDExOlB1bGxSZXF1ZXN0MjEzNjY4MTgz,2403,closed,0,add some blurbs about numfocus sponsorship to docs,2443309,"Xarray is now a fiscally sponsored project of NumFOCUS. This PR adds a few blurbs of text highlighting that on the main readme and index page of the docs. TODO: - Update flipcause to xarray specific donation page ",2018-09-06T15:54:06Z,2018-09-19T05:37:34Z,2018-09-11T02:14:18Z,2018-09-11T02:14:18Z,59bf7a7c13d8b01fd9600cb76c82b35b465f5707,,,0,01c359fcf5ab0339a5d0d9c05e7018ccb9ca6b31,66a8f8dd7f5a2997ff614f3966d1951587915e7e,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2403, 214500699,MDExOlB1bGxSZXF1ZXN0MjE0NTAwNjk5,2409,closed,0,Numfocus,2443309,"followup PR fixing two small typos in my previous PR. ",2018-09-11T03:15:52Z,2018-09-11T05:13:51Z,2018-09-11T05:13:51Z,2018-09-11T05:13:51Z,4de8dbc3b1de461c0c9d3b002e55d60b46d2e6d2,,,0,ba468a1c868dbe32da6c9483b3f681e8542c96f0,59bf7a7c13d8b01fd9600cb76c82b35b465f5707,MEMBER,,13221727,https://github.com/pydata/xarray/pull/2409,