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
579722569,MDExOlB1bGxSZXF1ZXN0Mzg3MDY0ODEz,3858,Backend env,2444231,closed,0,,,5,2020-03-12T06:30:28Z,2023-01-05T03:58:54Z,2023-01-05T03:58:54Z,NONE,,0,pydata/xarray/pulls/3858,"This merge request allows the user to set a `backend_env` while opening a file. This should be a dictionary, and the key/value pairs are temporarily added to `os.enviorn` while opening the file. The old environment is restored later.


 - [x] Closes #3853
    Maybe -- I'm not sure if it is clever to actually close this issue at this point. I added the `backend_env` idea.
 - [ ] Tests added

   Here, I need some help: How should I actually design the tests? The environment is only temporarily modified, so as soon as the open_dataset function ends again, the environment is restored. I would have though temporarily adding an equivalent to  `$ export lala=tada` into the environment and checking for that would be an idea; but since I restore the environment right away, there is no way I can see to actually access the new `os.environ`
 - [x] Passes `isort -rc . && black . && mypy . && flake8`
 - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API

   I added a section to the relevant docstring. Not sure how much this needs to also be included in the other files.
","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3858/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull