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
[DOC] Include guidelines for private functions in contributing docs #3946
Conversation
👋 @ymzayek Thanks for creating a PR! Until this PR is ready for review, you can include the [WIP] tag in its title, or leave it as a github draft. Please make sure it is compliant with our contributing guidelines. In particular, be sure it checks the boxes listed below.
For new features:
For bug fixes:
We will review it as quick as possible, feel free to ping us with questions if needed. |
Codecov Report
@@ Coverage Diff @@
## main #3946 +/- ##
==========================================
- Coverage 91.75% 91.70% -0.06%
==========================================
Files 134 134
Lines 15751 15751
Branches 3283 3283
==========================================
- Hits 14453 14444 -9
- Misses 753 764 +11
+ Partials 545 543 -2
Flags with carried forward coverage won't be shown. Click here to find out more. see 6 files with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good with me
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Very useful, indeed !
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
||
In some cases when private functions are in a private module (filename beginning with an underscore), | ||
but are used outside of that file, we do not name them with a leading underscore. Example: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks! maybe this summary here could read something like:
we start a name with a leading underscore to indicate that it is an internal implementation detail, not to be accessed directly from outside, of the enclosing context: the parent module (for a submodule name), the module (for the name of a top-level function, class or global variable), or the class (for a method or attribute name). Moreover, modules explicitly declare their interface through the __all__
attribute, and any name not listed in __all__
should not be accessed from outside the module
Sorry @jeromedockes I merged this too quickly: will take your comment in a separate issue, so we do not forget about it |
I just copied the example from the issue with @jeromedockes cited as the source at the bottom of the example (but it won't render in the html). IS it ok?