Comments (3)
(by glyph)
Just bumped into this again. I think it's quite confusing for users to be tossed into private parts of the hierarchy in order to see what interfaces are available.
from pydoctor.
@mwhudson @hawkowl FYI: in a couple of recent interactions with users I have noticed that this is definitely the source of a lot of confusion.
from pydoctor.
What would the desired output look like?
Should the documentation page for a class just list all (directly or via inheritance) implemented interfaces in a simple list? For example:
Implements interfaces: IBoxSender, IProtocol, IResponderLocator, IBoxReceiver.
Or should methods be grouped by which interface defines them? And if so, should they be moved there from the implementation class, possibly dropping some implementation classes from the class page altogether if they have 0 methods left after the moves?
For example, the current documentation reads:
Inherited from _DescriptorExchanger (via BinaryBoxProtocol):
Method fileDescriptorReceived: Collect received file descriptors to be claimed later by Descriptor.
But it could be presented like this instead:
From IFileDescriptorReceiver:
Method fileDescriptorReceived: Called when a file descriptor is received over the connection.
As shown here, the implementation docstring is not the same as the interface docstring, so which should be shown?
Also, should there be a mention of where the implementation resides? I imagine that for people using Twisted that doesn't matter much, but for developers or people tracking down a bug it can be useful to have a source link to the implementation.
from pydoctor.
Related Issues (20)
- Fix compatibility with docutils 0.21.x
- Transform deprecated typing annotation into python 3.10 style HOT 1
- Codecov is failing HOT 7
- Docutils is slow for constructor links HOT 1
- doc(FAQ): How to lint? HOT 1
- Release automation is broken HOT 3
- Move away from appdirs package
- 24.3.3: pytest fails in `pydoctor/test/test_cyclic_imports_base_classes.py::test_cyclic_imports_base_classes` unit HOT 1
- Add support for PEP727 - typing.Doc
- Do a real distinction in between the code model and the view model
- Add support for doc comments HOT 2
- HTML: Break function signature elements into multiple spans HOT 2
- Drop python 3.7
- Source code files are always assumed to be uft-8
- Syntax error reports don't contain information about the error HOT 2
- Minimize the docstring line numbers offset introduced by napoleon
- pydoctor crashes on Windows when trying to symlink to a nonexistent file: 'index.html' HOT 5
- Create a new test module for the linker
- Setup security bug report process
- Inline docstring is confused if there is a comment
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pydoctor.