-
-
Notifications
You must be signed in to change notification settings - Fork 353
Some publicly exposed functions/properties have no documentation #3226
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
So what it does is:
If neither pyright nor runtime sees the docstring (and it's not It might be that comments/docstrings need clarification, but I don't think the logic is wrong. |
I think that's misguided. Like it makes sense but accomplishes an incorrect goal. Either the goal is:
In the first case we shouldn't care about if the docstrings are available at runtime, I think. (I don't use VSCode so I can't say whether it gets docstrings at runtime, but I assume not.) In the second, we now have a better check so we can disable this. I suppose the current logic makes sense if we're trying to accomplish "you can call |
Hah, I actually read a lot of docstrings in the live prompt with But it sounds like the test should be rewritten to not put both of those in the same bucket, since we both want to support static tools and |
Likewise, I find using |
This issue should only really be looked at after #3221 is closed (because this is mainly about what people see in an editor, rather than our documentation). The following attributes are listed in our
_type_completeness.json
as not having a docstring:trio._unix_pipes.FdStream.send_all
trio._unix_pipes.FdStream.wait_send_all_might_not_block
trio._unix_pipes.FdStream.receive_some
trio._unix_pipes.FdStream.close
trio._unix_pipes.FdStream.aclose
trio._unix_pipes.FdStream.fileno
trio._core._io_epoll._EpollStatistics
trio._channel.MemoryReceiveChannel
trio._channel.MemoryChannelStatistics
trio._channel.MemorySendChannel
trio._core._run.Task
trio._socket.SocketType
trio._highlevel_socket.SocketStream.send_all
trio._highlevel_socket.SocketStream.wait_send_all_might_not_block
trio._highlevel_socket.SocketStream.send_eof
trio._highlevel_socket.SocketStream.receive_some
trio._highlevel_socket.SocketStream.aclose
trio._subprocess.HasFileno.fileno
trio._sync.AsyncContextManagerMixin
trio._sync._HasAcquireRelease.acquire
trio._sync._HasAcquireRelease.release
trio._sync._LockImpl
trio._core._local._NoValue
trio._core._local.RunVarToken
trio.socket.gaierror
trio.socket.herror
trio._core._mock_clock.MockClock.start_clock
trio._core._mock_clock.MockClock.current_time
trio._core._mock_clock.MockClock.deadline_to_sleep_time
trio.testing._raises_group._ExceptionInfo.exconly
trio.testing._raises_group._ExceptionInfo.errisinstance
trio.testing._raises_group._ExceptionInfo.getrepr
trio.testing._raises_group.RaisesGroup.expected_type
I expect most of these are trivial. There's a couple groups I noticed while copying them over:
check_type_completeness.py
to filter them out (e.g._HasAcquireRelease
)SocketStream.wait_send_all_might_not_block
). I don't know if pyright supports anything like that but it shouldI think some of the logic from
check_type_completeness.py
is kind of strange: it shouldn't filter out docstrings that are available at runtime because... pyright still can't see those?The text was updated successfully, but these errors were encountered: