home / github

Menu
  • GraphQL API
  • Search all tables

issue_comments

Table actions
  • GraphQL API for issue_comments

24 rows where author_association = "MEMBER" and issue = 391865060 sorted by updated_at descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: reactions, created_at (date), updated_at (date)

user 4

  • TomNicholas 13
  • shoyer 6
  • dcherian 4
  • max-sixty 1

issue 1

  • API for N-dimensional combine · 24 ✖

author_association 1

  • MEMBER · 24 ✖
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions performed_via_github_app issue
505517099 https://github.com/pydata/xarray/pull/2616#issuecomment-505517099 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNTUxNzA5OQ== shoyer 1217238 2019-06-25T16:18:29Z 2019-06-25T16:18:29Z MEMBER

Pushing to a merged PR definitely doesn't work :). You should start a new branch after syncing master.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
505516435 https://github.com/pydata/xarray/pull/2616#issuecomment-505516435 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNTUxNjQzNQ== TomNicholas 35968931 2019-06-25T16:16:46Z 2019-06-25T16:16:46Z MEMBER

@shoyer I like that suggestion a lot - not sure why we didn't think of something similar before.

How does it work if I push to a merged PR?

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
505514716 https://github.com/pydata/xarray/pull/2616#issuecomment-505514716 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNTUxNDcxNg== shoyer 1217238 2019-06-25T16:12:03Z 2019-06-25T16:12:03Z MEMBER

I started thinking about names for these functions again....

I don't love the non-descriptive nature of combine_auto and combine_manual. All "auto" and "manual" tells me is that one is more automatic than the other, without saying how it's more automatic. This is probably even more confusing because we used "auto" previously to mean some hybrid behavior between what we now call "manual" and "auto".

What about calling these combine_by_coords and combine_nested instead? On open_mfdataset, these would be combine='by_coords' and combine='nested'.

{
    "total_count": 2,
    "+1": 2,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
505505734 https://github.com/pydata/xarray/pull/2616#issuecomment-505505734 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNTUwNTczNA== TomNicholas 35968931 2019-06-25T15:49:55Z 2019-06-25T15:49:55Z MEMBER

:tada: Thanks for your help!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
505504094 https://github.com/pydata/xarray/pull/2616#issuecomment-505504094 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNTUwNDA5NA== max-sixty 5635139 2019-06-25T15:45:56Z 2019-06-25T15:45:56Z MEMBER

Thanks @TomNicholas !

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
505490600 https://github.com/pydata/xarray/pull/2616#issuecomment-505490600 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNTQ5MDYwMA== shoyer 1217238 2019-06-25T15:14:54Z 2019-06-25T15:14:54Z MEMBER

OK, in it goes! Thanks @TomNicholas for your perseverance here

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
504468333 https://github.com/pydata/xarray/pull/2616#issuecomment-504468333 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwNDQ2ODMzMw== TomNicholas 35968931 2019-06-21T15:29:41Z 2019-06-21T15:29:41Z MEMBER

Okay I've changed those things. @shoyer if you want to just double check that the new error catching behaviour in dimension_coords_exist() is what you wanted, then this should be good to go!

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
503199369 https://github.com/pydata/xarray/pull/2616#issuecomment-503199369 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDUwMzE5OTM2OQ== shoyer 1217238 2019-06-18T15:56:42Z 2019-06-18T15:56:42Z MEMBER

I left a couple of minor comments, but I think this is pretty much ready to go! We should merge this and let users give it a try :).

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
496536455 https://github.com/pydata/xarray/pull/2616#issuecomment-496536455 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ5NjUzNjQ1NQ== TomNicholas 35968931 2019-05-28T14:17:39Z 2019-05-28T14:17:39Z MEMBER

Thanks for the detailed review @shoyer !

I'm loving all the documentation and test coverage here (though I haven't read them all carefully yet!).

Great - the only test I think you should definitely look at is test_manual_concat_too_many_dims_at_once, and my diagnosis of the issue it exposes in #2975.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
494100381 https://github.com/pydata/xarray/pull/2616#issuecomment-494100381 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ5NDEwMDM4MQ== TomNicholas 35968931 2019-05-20T18:29:48Z 2019-05-20T18:29:48Z MEMBER

Thanks for the review - I've fixed those mistakes, and added a note explaining why there are 3 similar-sounding functions.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
493957592 https://github.com/pydata/xarray/pull/2616#issuecomment-493957592 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ5Mzk1NzU5Mg== TomNicholas 35968931 2019-05-20T12:02:26Z 2019-05-20T12:02:26Z MEMBER

Ah yes that worked, thanks @dcherian !

I think this PR is finally complete - ready to merge @shoyer?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
493829782 https://github.com/pydata/xarray/pull/2616#issuecomment-493829782 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ5MzgyOTc4Mg== dcherian 2448579 2019-05-20T03:46:44Z 2019-05-20T03:46:44Z MEMBER

Thanks @TomNicholas. You can use @pytest.mark.filterwarnings to filter specific warnings. I think that's what the decorator is called anyway. There are places where it's used in the testing code so you have plenty of examples to copy from.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
493796718 https://github.com/pydata/xarray/pull/2616#issuecomment-493796718 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ5Mzc5NjcxOA== TomNicholas 35968931 2019-05-19T22:17:56Z 2019-05-19T22:17:56Z MEMBER

@dcherian I added another section to the https://xarray.pydata.org/en/stable/combining.html docs page to explain what the new functions do.

One thing - this deprecation cycle means that for now warnings get thrown basically however you use auto_combine. The test suites are generating a lot of these warnings - is there a way to get pytest to ignore specific warnings for specific tests or is it okay leaving it?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
481900732 https://github.com/pydata/xarray/pull/2616#issuecomment-481900732 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ4MTkwMDczMg== dcherian 2448579 2019-04-10T23:08:47Z 2019-04-10T23:08:47Z MEMBER

@dcherian the relevant docstrings have been significantly altered, including giving some examples.

Yes I saw that but missed https://github.com/pydata/xarray/blob/513764fa4094acda67aec5fea8397bc5726afb90/xarray/core/combine.py#L307

However I haven't changed any of the main documentation pages, I guess I should look through to see if this will change any of the syntax in any of those examples.

Or are you suggesting there should be a new section of the documentation explaining what the difference between combine_manual and combine_auto is?

Yes, I think you can add the examples from the docstrings to https://xarray.pydata.org/en/stable/combining.html since that's where users will look for such functionality.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
481899529 https://github.com/pydata/xarray/pull/2616#issuecomment-481899529 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ4MTg5OTUyOQ== TomNicholas 35968931 2019-04-10T23:03:13Z 2019-04-10T23:03:13Z MEMBER

@dcherian the relevant docstrings have been significantly altered, including giving some examples.

However I haven't changed any of the main documentation pages, I guess I should look through to see if this will change any of the syntax in any of those examples.

Or are you suggesting there should be a new section of the documentation explaining what the difference between combine_manual and combine_auto is?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
481898359 https://github.com/pydata/xarray/pull/2616#issuecomment-481898359 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ4MTg5ODM1OQ== dcherian 2448579 2019-04-10T22:57:49Z 2019-04-10T22:57:49Z MEMBER

I haven't reviewed the PR but noticed that there's no documentation to go along with it. Is that intentional?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
474262793 https://github.com/pydata/xarray/pull/2616#issuecomment-474262793 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ3NDI2Mjc5Mw== TomNicholas 35968931 2019-03-19T09:26:18Z 2019-03-19T09:26:18Z MEMBER

@shoyer I think this is ready for a final review.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
470939071 https://github.com/pydata/xarray/pull/2616#issuecomment-470939071 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ3MDkzOTA3MQ== TomNicholas 35968931 2019-03-08T14:04:37Z 2019-03-08T14:04:37Z MEMBER

We can deprecate the old auto_combine but keep it around for now to enable a smooth transition.

This might be a little bit confusing until the deprecation cycle is complete, but it will allow us to complete the cycle in only one edition, rather than two (one to introduce combine_manual, and one to change the behaviour of auto_combine). It also means that users who want to eventually use the "coordinate-ordering" behaviour will only have to change their code once.

I'll do it this way.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
470260814 https://github.com/pydata/xarray/pull/2616#issuecomment-470260814 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ3MDI2MDgxNA== shoyer 1217238 2019-03-06T20:19:32Z 2019-03-06T20:19:32Z MEMBER

If we use combine_auto and combine_manual then it simplifies the deprecation cycle because we can have the old auto_combine and the new combine_auto in the API simultaneously (though maybe that's too confusing).

I think this is a good idea. We can deprecate the old auto_combine but keep it around for now to enable a smooth transition.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
470114401 https://github.com/pydata/xarray/pull/2616#issuecomment-470114401 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ3MDExNDQwMQ== dcherian 2448579 2019-03-06T13:51:47Z 2019-03-06T13:51:47Z MEMBER

+1 for switching to combine_auto, combine_manual but not having both auto_combine and combine_auto.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
469089587 https://github.com/pydata/xarray/pull/2616#issuecomment-469089587 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ2OTA4OTU4Nw== TomNicholas 35968931 2019-03-04T01:34:25Z 2019-03-04T01:34:25Z MEMBER

I think that manual_combine and auto_combine (or combine_auto etc.) are pretty suitable.

Any variation on concat is a little misleading because these functions will also merge. Anything with nested or multi is kind of superfluous when the idea of the library is sort of that multi-dimensional operations are as easy as single-dimensional operations.

combine (dictionary definition: to join or merge to form a single unit or substance) does accurate describe what the functions do.

If we use combine_auto and combine_manual then it simplifies the deprecation cycle because we can have the old auto_combine and the new combine_auto in the API simultaneously (though maybe that's too confusing).

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
469086121 https://github.com/pydata/xarray/pull/2616#issuecomment-469086121 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ2OTA4NjEyMQ== shoyer 1217238 2019-03-04T01:04:39Z 2019-03-04T01:04:39Z MEMBER

Do we want to stick with the names manual_combine and auto_combine?

Some other possibilities:

  • Instead of manual_combine: concat_nd, concat_nested, multi_concat
  • Instead of auto_combine:assemble, reassemble, combine_sorted, concat_sorted, unify

I guess auto/manual works well with the values of the keyword argument, and makes it clear that these are a different class of operation than the primitive concat and merge. Though if we really want to emphasize the similarity (especially to help auto-complete), we might consider even switching the order of the words, e.g., combine_auto and combine_manual.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
469019590 https://github.com/pydata/xarray/pull/2616#issuecomment-469019590 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ2OTAxOTU5MA== TomNicholas 35968931 2019-03-03T12:46:08Z 2019-03-03T12:46:08Z MEMBER

Okay @shoyer so the way I've gone about this deprecation problem is to essentially introduce manual_combine whilst reverting auto_combine. That means that auto_combine isn't a breaking change yet, but it's inputs are checked and if they will break in future it throws a warning saying "please use manual_combine instead because the behaviour of auto_combine will soon change".

This way we don't have two publicly-accessible versions of auto_combine present simultaneously, and if users heed the warnings and switch to using manual_combine then their code won't break when we later update auto_combine from the old to the new behaviour.

This approach means there currently isn't a way to opt-in to the new auto_combine behaviour early, but as you can opt-in to future-compatible behaviour by using manual_combine instead, then I think that's fine?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060
451786609 https://github.com/pydata/xarray/pull/2616#issuecomment-451786609 https://api.github.com/repos/pydata/xarray/issues/2616 MDEyOklzc3VlQ29tbWVudDQ1MTc4NjYwOQ== TomNicholas 35968931 2019-01-06T23:43:57Z 2019-01-07T01:09:53Z MEMBER

Okay so this is mostly done - I've completely rearranged the tests and they pass on my unmerged branch, there are just a few TODOs left.

~~However, when I tried to merge master in then everything failed again due to #2648, I don't understand what ReprObject does?~~ (Fixed with bfch4e3)

Some other questions:

1) We didn't decide whether the ability to infer concatenation dimensions (i.e. when concat_dim='_CONCAT_DIM_DEFAULT') should be retained or not. I'm not sure we need it at all any more - you're either using auto_combine, which will concatenate dimension coordinates and leave other dimensions alone, or you're using manual_combine, in which you're supposed to explicitly state all the dimensions you wish to concatenate along anyway. I think this is also related to a bug I don't properly understand (marked with an xfail in test_manual_concat_too_many_dims_at_once).

2) Ordering the datasets along one dimension according to the values in their dimension coordinates (done in _infer_order_1d) turned out to be a bit more complicated than I thought. Is the method using a Pandas.Series okay? Do we want to use natural sorting on strings? How should I deal with datetime objects? I also think it's probably easier to check that the coords can actually be arranged to be monotonic after all the concatenation has been done, not before.

3) Some input which previously wouldn't be valid now is (see the TODO in line 538 of test_combine.py), is that the desired behaviour in that case?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  API for N-dimensional combine 391865060

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [issue_comments] (
   [html_url] TEXT,
   [issue_url] TEXT,
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [created_at] TEXT,
   [updated_at] TEXT,
   [author_association] TEXT,
   [body] TEXT,
   [reactions] TEXT,
   [performed_via_github_app] TEXT,
   [issue] INTEGER REFERENCES [issues]([id])
);
CREATE INDEX [idx_issue_comments_issue]
    ON [issue_comments] ([issue]);
CREATE INDEX [idx_issue_comments_user]
    ON [issue_comments] ([user]);
Powered by Datasette · Queries took 14.875ms · About: xarray-datasette