GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
GeezerVison is showing github.com — sphinx-codeautolink improvements by scottyhq · Pull Request #281 · xarray-contrib/xarray-tutorial Conversation
|
|
🎊 PR Preview 2e3e0f5 has been successfully built and deployed to https://xarray-contrib-xarray-tutorial-preview-pr-281.surge.sh 🕐 Build time: 0.01s 🤖 By surge-preview |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| codeautolink_inventory_map: { | ||
| # unfortunately mapping the top level doesn't work, need all methods | ||
| #"xarray.core.dataarray.DataArray": "xarray.DataArray", | ||
| "xarray.core.accessor_dt.DatetimeAccessor": "xarray.DataArray.dt", | ||
| "xarray.core.dataarray.DataArray.coarsen": "xarray.DataArray.coarsen", | ||
| "xarray.core.dataarray.DataArray.groupby": "xarray.DataArray.groupby", | ||
| "xarray.core.dataarray.DataArray.groupby_bins": "xarray.DataArray.groupby_bins", |
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
@felix-hilden, I realize this issue (felix-hilden/sphinx-codeautolink#131 (comment) ) has been closed for a while, but curious based on your comment if it does seems straightforward to implement a simplification of ("xarray.core.dataarray.DataArray": "xarray.DataArray") to avoid having to enumerate every method?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Would setting __module__ fix this? (pydata/xarray#4279)
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Based on the above issue, if I add
import xarray xarray.DataArray.__module__ = "xarray"
to conf.py before building I'm getting Handler <bound method SphinxCodeAutoLink.create_references of <sphinx_codeautolink.extension.SphinxCodeAutoLink object at 0x145730710>> for event 'env-updated' threw an exception (exception: maximum recursion depth exceeded) ...
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Can you try adding it to xarrays init.py?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Hi! Yeah I'm not at all opposed to having the feature that was discussed in the issue, I've just been out of the game for a while focusing on other things and I have personally no need for that. But I'm very open to contributions 👌
Personally I've opted for changing module attributes like so and it's worked well for me.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
actually it does look like chaning either conf.py or xarray/__init__.py works, I think the recursion error was coming from some issue with my local settings/cache...
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
kind of a pain to modify conf.py via jupyter book (jupyter-book/jupyter-book#858,
jupyter-book/jupyter-book#1673 (comment)) but that is probably the way to go...
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Let's do it upstream? I think we'd like this in Xarray too.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| .sphinx-codeautolink-a:link { | ||
| border-bottom-color: lightgray; | ||
| border-bottom-style: dotted; | ||
| border-bottom-width: 1px; | ||
| } | ||
|
|
||
| .sphinx-codeautolink-a:hover { | ||
| border-bottom-color: rgb(255, 139, 139); | ||
| border-bottom-style: dotted; | ||
| border-bottom-width: 1px; | ||
| } |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
@dcherian @zmoon I think a subtle dotted underline is nice, personally I think the thick underlines (https://scikit-image.org/docs/stable/auto_examples/segmentation/plot_regionprops.html) are a bit distracting and distinct from the jupyterlab experience, but open to other opinions!
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
I concur!
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
A little darker would be nicer to me. It's also convention that solid lines are clickable links, so perhaps just a thin darker line?
Sorry, something went wrong.
There was an error while loading. Please reload this page.
| }, | ||
| "outputs": [], | ||
| "source": [ | ||
| "da: xr.DataArray = xr.tutorial.load_dataset(\"air_temperature\", engine=\"netcdf4\").air\n", |
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Need a type hint on da in order for subsequent methods to be picked up (da.resample). Also, if chaining methods only the first is picked up da.isel(time=0).plot() links to isel but not plot
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Opened discussion for clarification on this felix-hilden/sphinx-codeautolink#146.
Edit: method chaining links would need some work felix-hilden/sphinx-codeautolink#147
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.