id,node_id,number,title,user,state,locked,assignee,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,draft,pull_request,body,reactions,performed_via_github_app,state_reason,repo,type 1318173644,I_kwDOAMm_X85OkbvM,6827,xarray.concat for datasets fails when object is a child class of Dataset,33315687,closed,0,,,6,2022-07-26T12:31:01Z,2023-01-13T17:14:36Z,2023-01-13T17:14:36Z,NONE,,,,"### What happened? The following error is thrown: ``` > result = type(datasets[0])(result_vars, attrs=result_attrs) E TypeError: __init__() got an unexpected keyword argument 'attrs' ``` This is coming from the change merged as part of this PR: https://github.com/pydata/xarray/pull/6784/files (line 593) When ""datasets"" is a list of class objects which are the child of Dataset, `type(datasets[0])` will return that class as the type. This class however, doesn't necessary has `attrs` in its own init, hence the code breaks. I'm not convinced that this is a correct behaviour, and if you want to initialize the Dataset class, you should revert that line of change. ### What did you expect to happen? Code to run without any errors. ### Minimal Complete Verifiable Example ```Python import xarray class MyDataset(xarray.Dataset): __slots__ = () def __init__(self, a, b, c, d=None): super().__init__() attrs = { 'at1': b, 'at2': d } super().__init__(a, coords=c, attrs=attrs) if __name__ == '__main__': a = { ""x"": 1, ""y"": 3 } b = [""x"", ""y""] c = { ""coord1"": 0, ""coord2"": 1 } ds1 = MyDataset(a, b, c) ds2 = MyDataset(a, b, c) ds3 = MyDataset(a, b, c) xarray.concat([ds1, ds2, ds3], dim=""coord1"") ``` ### MVCE confirmation - [X] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray. - [X] Complete example — the example is self-contained, including all data and the text of any traceback. - [X] Verifiable example — the example copy & pastes into an IPython prompt or [Binder notebook](https://mybinder.org/v2/gh/pydata/xarray/main?urlpath=lab/tree/doc/examples/blank_template.ipynb), returning the result. - [X] New issue — a search of GitHub Issues suggests this is not a duplicate. ### Relevant log output _No response_ ### Anything else we need to know? _No response_ ### Environment xarray==2022.6.0 python: 3.9.12 | packaged by conda-forge | (main, Mar 24 2022, 23:27:05) ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/6827/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue