Skip to content

[WIP] Add docutils/nodes stubs #5237

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

Closed
wants to merge 4 commits into from

Conversation

danieleades
Copy link
Contributor

@danieleades danieleades commented Apr 21, 2021

No description provided.

@github-actions
Copy link
Contributor

According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉

1 similar comment
@github-actions
Copy link
Contributor

According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉

@danieleades danieleades marked this pull request as ready for review April 21, 2021 12:36
@danieleades
Copy link
Contributor Author

danieleades commented Apr 21, 2021

@Akuli, @srittau
i could really use some mentoring on this

  • is it preferable to leave the autogenerated Any types, or remove these entirely?
  • is there a way to check these are consistent with the source files (or do any of the CI jobs do that automagically?)

note that this is still very much a work in progress. i've only manually added types to a small subset of the total file. i may not attempt to do the whole file in this one pull request (it's a big'un)

edit: I see from the contributing guide, that the dummy Any annotations should be removed, to leave the type signatures with no annotations. that about right?

@github-actions
Copy link
Contributor

According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉

@hauntsaninja
Copy link
Collaborator

Yup, it's preferable to remove autogenerated Any types (unless you've confirmed that they should be Any)

You can check consistency with source using:

python -m pip install git+https://github.com/python/mypy.git
MYPYPATH=stubs/docutils python -m mypy.stubtest --custom-typeshed-dir ~/path_to_typeshed docutils --concise

(CI jobs only do this automagically for stdlib, currently)

@srittau
Copy link
Collaborator

srittau commented Apr 22, 2021

Thank you for this! I haven't looked at it in depth, but I have a minor style nit: Defaults (= ...) are redundant for module and class fields and should be omitted.

@danieleades danieleades marked this pull request as draft April 22, 2021 09:54
@danieleades
Copy link
Contributor Author

Thank you for this! I haven't looked at it in depth, but I have a minor style nit: Defaults (= ...) are redundant for module and class fields and should be omitted.

when are defaults required?

@srittau
Copy link
Collaborator

srittau commented Apr 23, 2021

Defaults are only useful for function and method arguments.

@github-actions
Copy link
Contributor

According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉

@danieleades danieleades marked this pull request as ready for review April 24, 2021 08:49
@danieleades
Copy link
Contributor Author

danieleades commented Apr 24, 2021

Yup, it's preferable to remove autogenerated Any types (unless you've confirmed that they should be Any)

You can check consistency with source using:

python -m pip install git+https://github.com/python/mypy.git
MYPYPATH=stubs/docutils python -m mypy.stubtest --custom-typeshed-dir ~/path_to_typeshed docutils --concise

(CI jobs only do this automagically for stdlib, currently)

i think i'm doing this wrong.

cd /path/to/typeshed/repo
MYPYPATH=stubs/docutils python -m mypy.stubtest --custom-typeshed-dir . docutils --concise
error: failed mypy build.
stubs/docutils/docutils/parsers/rst/__init__.pyi:2: error: Skipping analyzing "typing_extensions": found module but no type hints or library stubs
stubs/docutils/docutils/parsers/rst/__init__.pyi:2: note: See https://mypy.readthedocs.io/en/stable/running_mypy.html#missing-imports

am i using this correctly? can i limit the consistency check to only docutils/nodes?

update: figured it out. using the wrong interpreter

mypy.stubtest output
docutils.nodes.Element.clear is not present in stub
docutils.nodes.Element.coerce_append_attr_list is not present in stub
docutils.nodes.Element.copy_attr_coerce is not present in stub
docutils.nodes.Element.copy_attr_concatenate is not present in stub
docutils.nodes.Element.copy_attr_consistent is not present in stub
docutils.nodes.Element.copy_attr_convert is not present in stub
docutils.nodes.Element.first_child_matching_class is not present in stub
docutils.nodes.Element.first_child_not_matching_class is not present in stub
docutils.nodes.Element.has_key variable differs from runtime type def (self: Any, attr: Any) -> Any
docutils.nodes.Element.replace is not present in stub
docutils.nodes.Element.replace_attr is not present in stub
docutils.nodes.Element.replace_self is not present in stub
docutils.nodes.Element.update_all_atts is not present in stub
docutils.nodes.Element.update_all_atts_coercion is not present in stub
docutils.nodes.Element.update_all_atts_concatenating is not present in stub
docutils.nodes.Element.update_all_atts_consistantly is not present in stub
docutils.nodes.Element.update_all_atts_convert is not present in stub
docutils.nodes.GenericNodeVisitor.depart_Text is not present in stub
docutils.nodes.GenericNodeVisitor.depart_abbreviation is not present in stub
docutils.nodes.GenericNodeVisitor.depart_acronym is not present in stub
docutils.nodes.GenericNodeVisitor.depart_address is not present in stub
docutils.nodes.GenericNodeVisitor.depart_admonition is not present in stub
docutils.nodes.GenericNodeVisitor.depart_attention is not present in stub
docutils.nodes.GenericNodeVisitor.depart_attribution is not present in stub
docutils.nodes.GenericNodeVisitor.depart_author is not present in stub
docutils.nodes.GenericNodeVisitor.depart_authors is not present in stub
docutils.nodes.GenericNodeVisitor.depart_block_quote is not present in stub
docutils.nodes.GenericNodeVisitor.depart_bullet_list is not present in stub
docutils.nodes.GenericNodeVisitor.depart_caption is not present in stub
docutils.nodes.GenericNodeVisitor.depart_caution is not present in stub
docutils.nodes.GenericNodeVisitor.depart_citation is not present in stub
docutils.nodes.GenericNodeVisitor.depart_citation_reference is not present in stub
docutils.nodes.GenericNodeVisitor.depart_classifier is not present in stub
docutils.nodes.GenericNodeVisitor.depart_colspec is not present in stub
docutils.nodes.GenericNodeVisitor.depart_comment is not present in stub
docutils.nodes.GenericNodeVisitor.depart_compound is not present in stub
docutils.nodes.GenericNodeVisitor.depart_contact is not present in stub
docutils.nodes.GenericNodeVisitor.depart_container is not present in stub
docutils.nodes.GenericNodeVisitor.depart_copyright is not present in stub
docutils.nodes.GenericNodeVisitor.depart_danger is not present in stub
docutils.nodes.GenericNodeVisitor.depart_date is not present in stub
docutils.nodes.GenericNodeVisitor.depart_decoration is not present in stub
docutils.nodes.GenericNodeVisitor.depart_definition is not present in stub
docutils.nodes.GenericNodeVisitor.depart_definition_list is not present in stub
docutils.nodes.GenericNodeVisitor.depart_definition_list_item is not present in stub
docutils.nodes.GenericNodeVisitor.depart_description is not present in stub
docutils.nodes.GenericNodeVisitor.depart_docinfo is not present in stub
docutils.nodes.GenericNodeVisitor.depart_doctest_block is not present in stub
docutils.nodes.GenericNodeVisitor.depart_document is not present in stub
docutils.nodes.GenericNodeVisitor.depart_emphasis is not present in stub
docutils.nodes.GenericNodeVisitor.depart_entry is not present in stub
docutils.nodes.GenericNodeVisitor.depart_enumerated_list is not present in stub
docutils.nodes.GenericNodeVisitor.depart_error is not present in stub
docutils.nodes.GenericNodeVisitor.depart_field is not present in stub
docutils.nodes.GenericNodeVisitor.depart_field_body is not present in stub
docutils.nodes.GenericNodeVisitor.depart_field_list is not present in stub
docutils.nodes.GenericNodeVisitor.depart_field_name is not present in stub
docutils.nodes.GenericNodeVisitor.depart_figure is not present in stub
docutils.nodes.GenericNodeVisitor.depart_footer is not present in stub
docutils.nodes.GenericNodeVisitor.depart_footnote is not present in stub
docutils.nodes.GenericNodeVisitor.depart_footnote_reference is not present in stub
docutils.nodes.GenericNodeVisitor.depart_generated is not present in stub
docutils.nodes.GenericNodeVisitor.depart_header is not present in stub
docutils.nodes.GenericNodeVisitor.depart_hint is not present in stub
docutils.nodes.GenericNodeVisitor.depart_image is not present in stub
docutils.nodes.GenericNodeVisitor.depart_important is not present in stub
docutils.nodes.GenericNodeVisitor.depart_inline is not present in stub
docutils.nodes.GenericNodeVisitor.depart_label is not present in stub
docutils.nodes.GenericNodeVisitor.depart_legend is not present in stub
docutils.nodes.GenericNodeVisitor.depart_line is not present in stub
docutils.nodes.GenericNodeVisitor.depart_line_block is not present in stub
docutils.nodes.GenericNodeVisitor.depart_list_item is not present in stub
docutils.nodes.GenericNodeVisitor.depart_literal is not present in stub
docutils.nodes.GenericNodeVisitor.depart_literal_block is not present in stub
docutils.nodes.GenericNodeVisitor.depart_math is not present in stub
docutils.nodes.GenericNodeVisitor.depart_math_block is not present in stub
docutils.nodes.GenericNodeVisitor.depart_note is not present in stub
docutils.nodes.GenericNodeVisitor.depart_option is not present in stub
docutils.nodes.GenericNodeVisitor.depart_option_argument is not present in stub
docutils.nodes.GenericNodeVisitor.depart_option_group is not present in stub
docutils.nodes.GenericNodeVisitor.depart_option_list is not present in stub
docutils.nodes.GenericNodeVisitor.depart_option_list_item is not present in stub
docutils.nodes.GenericNodeVisitor.depart_option_string is not present in stub
docutils.nodes.GenericNodeVisitor.depart_organization is not present in stub
docutils.nodes.GenericNodeVisitor.depart_paragraph is not present in stub
docutils.nodes.GenericNodeVisitor.depart_pending is not present in stub
docutils.nodes.GenericNodeVisitor.depart_problematic is not present in stub
docutils.nodes.GenericNodeVisitor.depart_raw is not present in stub
docutils.nodes.GenericNodeVisitor.depart_reference is not present in stub
docutils.nodes.GenericNodeVisitor.depart_revision is not present in stub
docutils.nodes.GenericNodeVisitor.depart_row is not present in stub
docutils.nodes.GenericNodeVisitor.depart_rubric is not present in stub
docutils.nodes.GenericNodeVisitor.depart_section is not present in stub
docutils.nodes.GenericNodeVisitor.depart_sidebar is not present in stub
docutils.nodes.GenericNodeVisitor.depart_status is not present in stub
docutils.nodes.GenericNodeVisitor.depart_strong is not present in stub
docutils.nodes.GenericNodeVisitor.depart_subscript is not present in stub
docutils.nodes.GenericNodeVisitor.depart_substitution_definition is not present in stub
docutils.nodes.GenericNodeVisitor.depart_substitution_reference is not present in stub
docutils.nodes.GenericNodeVisitor.depart_subtitle is not present in stub
docutils.nodes.GenericNodeVisitor.depart_superscript is not present in stub
docutils.nodes.GenericNodeVisitor.depart_system_message is not present in stub
docutils.nodes.GenericNodeVisitor.depart_table is not present in stub
docutils.nodes.GenericNodeVisitor.depart_target is not present in stub
docutils.nodes.GenericNodeVisitor.depart_tbody is not present in stub
docutils.nodes.GenericNodeVisitor.depart_term is not present in stub
docutils.nodes.GenericNodeVisitor.depart_tgroup is not present in stub
docutils.nodes.GenericNodeVisitor.depart_thead is not present in stub
docutils.nodes.GenericNodeVisitor.depart_tip is not present in stub
docutils.nodes.GenericNodeVisitor.depart_title is not present in stub
docutils.nodes.GenericNodeVisitor.depart_title_reference is not present in stub
docutils.nodes.GenericNodeVisitor.depart_topic is not present in stub
docutils.nodes.GenericNodeVisitor.depart_transition is not present in stub
docutils.nodes.GenericNodeVisitor.depart_version is not present in stub
docutils.nodes.GenericNodeVisitor.depart_warning is not present in stub
docutils.nodes.GenericNodeVisitor.visit_Text is not present in stub
docutils.nodes.GenericNodeVisitor.visit_abbreviation is not present in stub
docutils.nodes.GenericNodeVisitor.visit_acronym is not present in stub
docutils.nodes.GenericNodeVisitor.visit_address is not present in stub
docutils.nodes.GenericNodeVisitor.visit_admonition is not present in stub
docutils.nodes.GenericNodeVisitor.visit_attention is not present in stub
docutils.nodes.GenericNodeVisitor.visit_attribution is not present in stub
docutils.nodes.GenericNodeVisitor.visit_author is not present in stub
docutils.nodes.GenericNodeVisitor.visit_authors is not present in stub
docutils.nodes.GenericNodeVisitor.visit_block_quote is not present in stub
docutils.nodes.GenericNodeVisitor.visit_bullet_list is not present in stub
docutils.nodes.GenericNodeVisitor.visit_caption is not present in stub
docutils.nodes.GenericNodeVisitor.visit_caution is not present in stub
docutils.nodes.GenericNodeVisitor.visit_citation is not present in stub
docutils.nodes.GenericNodeVisitor.visit_citation_reference is not present in stub
docutils.nodes.GenericNodeVisitor.visit_classifier is not present in stub
docutils.nodes.GenericNodeVisitor.visit_colspec is not present in stub
docutils.nodes.GenericNodeVisitor.visit_comment is not present in stub
docutils.nodes.GenericNodeVisitor.visit_compound is not present in stub
docutils.nodes.GenericNodeVisitor.visit_contact is not present in stub
docutils.nodes.GenericNodeVisitor.visit_container is not present in stub
docutils.nodes.GenericNodeVisitor.visit_copyright is not present in stub
docutils.nodes.GenericNodeVisitor.visit_danger is not present in stub
docutils.nodes.GenericNodeVisitor.visit_date is not present in stub
docutils.nodes.GenericNodeVisitor.visit_decoration is not present in stub
docutils.nodes.GenericNodeVisitor.visit_definition is not present in stub
docutils.nodes.GenericNodeVisitor.visit_definition_list is not present in stub
docutils.nodes.GenericNodeVisitor.visit_definition_list_item is not present in stub
docutils.nodes.GenericNodeVisitor.visit_description is not present in stub
docutils.nodes.GenericNodeVisitor.visit_docinfo is not present in stub
docutils.nodes.GenericNodeVisitor.visit_doctest_block is not present in stub
docutils.nodes.GenericNodeVisitor.visit_document is not present in stub
docutils.nodes.GenericNodeVisitor.visit_emphasis is not present in stub
docutils.nodes.GenericNodeVisitor.visit_entry is not present in stub
docutils.nodes.GenericNodeVisitor.visit_enumerated_list is not present in stub
docutils.nodes.GenericNodeVisitor.visit_error is not present in stub
docutils.nodes.GenericNodeVisitor.visit_field is not present in stub
docutils.nodes.GenericNodeVisitor.visit_field_body is not present in stub
docutils.nodes.GenericNodeVisitor.visit_field_list is not present in stub
docutils.nodes.GenericNodeVisitor.visit_field_name is not present in stub
docutils.nodes.GenericNodeVisitor.visit_figure is not present in stub
docutils.nodes.GenericNodeVisitor.visit_footer is not present in stub
docutils.nodes.GenericNodeVisitor.visit_footnote is not present in stub
docutils.nodes.GenericNodeVisitor.visit_footnote_reference is not present in stub
docutils.nodes.GenericNodeVisitor.visit_generated is not present in stub
docutils.nodes.GenericNodeVisitor.visit_header is not present in stub
docutils.nodes.GenericNodeVisitor.visit_hint is not present in stub
docutils.nodes.GenericNodeVisitor.visit_image is not present in stub
docutils.nodes.GenericNodeVisitor.visit_important is not present in stub
docutils.nodes.GenericNodeVisitor.visit_inline is not present in stub
docutils.nodes.GenericNodeVisitor.visit_label is not present in stub
docutils.nodes.GenericNodeVisitor.visit_legend is not present in stub
docutils.nodes.GenericNodeVisitor.visit_line is not present in stub
docutils.nodes.GenericNodeVisitor.visit_line_block is not present in stub
docutils.nodes.GenericNodeVisitor.visit_list_item is not present in stub
docutils.nodes.GenericNodeVisitor.visit_literal is not present in stub
docutils.nodes.GenericNodeVisitor.visit_literal_block is not present in stub
docutils.nodes.GenericNodeVisitor.visit_math is not present in stub
docutils.nodes.GenericNodeVisitor.visit_math_block is not present in stub
docutils.nodes.GenericNodeVisitor.visit_note is not present in stub
docutils.nodes.GenericNodeVisitor.visit_option is not present in stub
docutils.nodes.GenericNodeVisitor.visit_option_argument is not present in stub
docutils.nodes.GenericNodeVisitor.visit_option_group is not present in stub
docutils.nodes.GenericNodeVisitor.visit_option_list is not present in stub
docutils.nodes.GenericNodeVisitor.visit_option_list_item is not present in stub
docutils.nodes.GenericNodeVisitor.visit_option_string is not present in stub
docutils.nodes.GenericNodeVisitor.visit_organization is not present in stub
docutils.nodes.GenericNodeVisitor.visit_paragraph is not present in stub
docutils.nodes.GenericNodeVisitor.visit_pending is not present in stub
docutils.nodes.GenericNodeVisitor.visit_problematic is not present in stub
docutils.nodes.GenericNodeVisitor.visit_raw is not present in stub
docutils.nodes.GenericNodeVisitor.visit_reference is not present in stub
docutils.nodes.GenericNodeVisitor.visit_revision is not present in stub
docutils.nodes.GenericNodeVisitor.visit_row is not present in stub
docutils.nodes.GenericNodeVisitor.visit_rubric is not present in stub
docutils.nodes.GenericNodeVisitor.visit_section is not present in stub
docutils.nodes.GenericNodeVisitor.visit_sidebar is not present in stub
docutils.nodes.GenericNodeVisitor.visit_status is not present in stub
docutils.nodes.GenericNodeVisitor.visit_strong is not present in stub
docutils.nodes.GenericNodeVisitor.visit_subscript is not present in stub
docutils.nodes.GenericNodeVisitor.visit_substitution_definition is not present in stub
docutils.nodes.GenericNodeVisitor.visit_substitution_reference is not present in stub
docutils.nodes.GenericNodeVisitor.visit_subtitle is not present in stub
docutils.nodes.GenericNodeVisitor.visit_superscript is not present in stub
docutils.nodes.GenericNodeVisitor.visit_system_message is not present in stub
docutils.nodes.GenericNodeVisitor.visit_table is not present in stub
docutils.nodes.GenericNodeVisitor.visit_target is not present in stub
docutils.nodes.GenericNodeVisitor.visit_tbody is not present in stub
docutils.nodes.GenericNodeVisitor.visit_term is not present in stub
docutils.nodes.GenericNodeVisitor.visit_tgroup is not present in stub
docutils.nodes.GenericNodeVisitor.visit_thead is not present in stub
docutils.nodes.GenericNodeVisitor.visit_tip is not present in stub
docutils.nodes.GenericNodeVisitor.visit_title is not present in stub
docutils.nodes.GenericNodeVisitor.visit_title_reference is not present in stub
docutils.nodes.GenericNodeVisitor.visit_topic is not present in stub
docutils.nodes.GenericNodeVisitor.visit_transition is not present in stub
docutils.nodes.GenericNodeVisitor.visit_version is not present in stub
docutils.nodes.GenericNodeVisitor.visit_warning is not present in stub
docutils.nodes.Node.asdom is not present in stub
docutils.nodes.SparseNodeVisitor.depart_Text is not present in stub
docutils.nodes.SparseNodeVisitor.depart_abbreviation is not present in stub
docutils.nodes.SparseNodeVisitor.depart_acronym is not present in stub
docutils.nodes.SparseNodeVisitor.depart_address is not present in stub
docutils.nodes.SparseNodeVisitor.depart_admonition is not present in stub
docutils.nodes.SparseNodeVisitor.depart_attention is not present in stub
docutils.nodes.SparseNodeVisitor.depart_attribution is not present in stub
docutils.nodes.SparseNodeVisitor.depart_author is not present in stub
docutils.nodes.SparseNodeVisitor.depart_authors is not present in stub
docutils.nodes.SparseNodeVisitor.depart_block_quote is not present in stub
docutils.nodes.SparseNodeVisitor.depart_bullet_list is not present in stub
docutils.nodes.SparseNodeVisitor.depart_caption is not present in stub
docutils.nodes.SparseNodeVisitor.depart_caution is not present in stub
docutils.nodes.SparseNodeVisitor.depart_citation is not present in stub
docutils.nodes.SparseNodeVisitor.depart_citation_reference is not present in stub
docutils.nodes.SparseNodeVisitor.depart_classifier is not present in stub
docutils.nodes.SparseNodeVisitor.depart_colspec is not present in stub
docutils.nodes.SparseNodeVisitor.depart_comment is not present in stub
docutils.nodes.SparseNodeVisitor.depart_compound is not present in stub
docutils.nodes.SparseNodeVisitor.depart_contact is not present in stub
docutils.nodes.SparseNodeVisitor.depart_container is not present in stub
docutils.nodes.SparseNodeVisitor.depart_copyright is not present in stub
docutils.nodes.SparseNodeVisitor.depart_danger is not present in stub
docutils.nodes.SparseNodeVisitor.depart_date is not present in stub
docutils.nodes.SparseNodeVisitor.depart_decoration is not present in stub
docutils.nodes.SparseNodeVisitor.depart_definition is not present in stub
docutils.nodes.SparseNodeVisitor.depart_definition_list is not present in stub
docutils.nodes.SparseNodeVisitor.depart_definition_list_item is not present in stub
docutils.nodes.SparseNodeVisitor.depart_description is not present in stub
docutils.nodes.SparseNodeVisitor.depart_docinfo is not present in stub
docutils.nodes.SparseNodeVisitor.depart_doctest_block is not present in stub
docutils.nodes.SparseNodeVisitor.depart_document is not present in stub
docutils.nodes.SparseNodeVisitor.depart_emphasis is not present in stub
docutils.nodes.SparseNodeVisitor.depart_entry is not present in stub
docutils.nodes.SparseNodeVisitor.depart_enumerated_list is not present in stub
docutils.nodes.SparseNodeVisitor.depart_error is not present in stub
docutils.nodes.SparseNodeVisitor.depart_field is not present in stub
docutils.nodes.SparseNodeVisitor.depart_field_body is not present in stub
docutils.nodes.SparseNodeVisitor.depart_field_list is not present in stub
docutils.nodes.SparseNodeVisitor.depart_field_name is not present in stub
docutils.nodes.SparseNodeVisitor.depart_figure is not present in stub
docutils.nodes.SparseNodeVisitor.depart_footer is not present in stub
docutils.nodes.SparseNodeVisitor.depart_footnote is not present in stub
docutils.nodes.SparseNodeVisitor.depart_footnote_reference is not present in stub
docutils.nodes.SparseNodeVisitor.depart_generated is not present in stub
docutils.nodes.SparseNodeVisitor.depart_header is not present in stub
docutils.nodes.SparseNodeVisitor.depart_hint is not present in stub
docutils.nodes.SparseNodeVisitor.depart_image is not present in stub
docutils.nodes.SparseNodeVisitor.depart_important is not present in stub
docutils.nodes.SparseNodeVisitor.depart_inline is not present in stub
docutils.nodes.SparseNodeVisitor.depart_label is not present in stub
docutils.nodes.SparseNodeVisitor.depart_legend is not present in stub
docutils.nodes.SparseNodeVisitor.depart_line is not present in stub
docutils.nodes.SparseNodeVisitor.depart_line_block is not present in stub
docutils.nodes.SparseNodeVisitor.depart_list_item is not present in stub
docutils.nodes.SparseNodeVisitor.depart_literal is not present in stub
docutils.nodes.SparseNodeVisitor.depart_literal_block is not present in stub
docutils.nodes.SparseNodeVisitor.depart_math is not present in stub
docutils.nodes.SparseNodeVisitor.depart_math_block is not present in stub
docutils.nodes.SparseNodeVisitor.depart_note is not present in stub
docutils.nodes.SparseNodeVisitor.depart_option is not present in stub
docutils.nodes.SparseNodeVisitor.depart_option_argument is not present in stub
docutils.nodes.SparseNodeVisitor.depart_option_group is not present in stub
docutils.nodes.SparseNodeVisitor.depart_option_list is not present in stub
docutils.nodes.SparseNodeVisitor.depart_option_list_item is not present in stub
docutils.nodes.SparseNodeVisitor.depart_option_string is not present in stub
docutils.nodes.SparseNodeVisitor.depart_organization is not present in stub
docutils.nodes.SparseNodeVisitor.depart_paragraph is not present in stub
docutils.nodes.SparseNodeVisitor.depart_pending is not present in stub
docutils.nodes.SparseNodeVisitor.depart_problematic is not present in stub
docutils.nodes.SparseNodeVisitor.depart_raw is not present in stub
docutils.nodes.SparseNodeVisitor.depart_reference is not present in stub
docutils.nodes.SparseNodeVisitor.depart_revision is not present in stub
docutils.nodes.SparseNodeVisitor.depart_row is not present in stub
docutils.nodes.SparseNodeVisitor.depart_rubric is not present in stub
docutils.nodes.SparseNodeVisitor.depart_section is not present in stub
docutils.nodes.SparseNodeVisitor.depart_sidebar is not present in stub
docutils.nodes.SparseNodeVisitor.depart_status is not present in stub
docutils.nodes.SparseNodeVisitor.depart_strong is not present in stub
docutils.nodes.SparseNodeVisitor.depart_subscript is not present in stub
docutils.nodes.SparseNodeVisitor.depart_substitution_definition is not present in stub
docutils.nodes.SparseNodeVisitor.depart_substitution_reference is not present in stub
docutils.nodes.SparseNodeVisitor.depart_subtitle is not present in stub
docutils.nodes.SparseNodeVisitor.depart_superscript is not present in stub
docutils.nodes.SparseNodeVisitor.depart_system_message is not present in stub
docutils.nodes.SparseNodeVisitor.depart_table is not present in stub
docutils.nodes.SparseNodeVisitor.depart_target is not present in stub
docutils.nodes.SparseNodeVisitor.depart_tbody is not present in stub
docutils.nodes.SparseNodeVisitor.depart_term is not present in stub
docutils.nodes.SparseNodeVisitor.depart_tgroup is not present in stub
docutils.nodes.SparseNodeVisitor.depart_thead is not present in stub
docutils.nodes.SparseNodeVisitor.depart_tip is not present in stub
docutils.nodes.SparseNodeVisitor.depart_title is not present in stub
docutils.nodes.SparseNodeVisitor.depart_title_reference is not present in stub
docutils.nodes.SparseNodeVisitor.depart_topic is not present in stub
docutils.nodes.SparseNodeVisitor.depart_transition is not present in stub
docutils.nodes.SparseNodeVisitor.depart_version is not present in stub
docutils.nodes.SparseNodeVisitor.depart_warning is not present in stub
docutils.nodes.SparseNodeVisitor.visit_Text is not present in stub
docutils.nodes.SparseNodeVisitor.visit_abbreviation is not present in stub
docutils.nodes.SparseNodeVisitor.visit_acronym is not present in stub
docutils.nodes.SparseNodeVisitor.visit_address is not present in stub
docutils.nodes.SparseNodeVisitor.visit_admonition is not present in stub
docutils.nodes.SparseNodeVisitor.visit_attention is not present in stub
docutils.nodes.SparseNodeVisitor.visit_attribution is not present in stub
docutils.nodes.SparseNodeVisitor.visit_author is not present in stub
docutils.nodes.SparseNodeVisitor.visit_authors is not present in stub
docutils.nodes.SparseNodeVisitor.visit_block_quote is not present in stub
docutils.nodes.SparseNodeVisitor.visit_bullet_list is not present in stub
docutils.nodes.SparseNodeVisitor.visit_caption is not present in stub
docutils.nodes.SparseNodeVisitor.visit_caution is not present in stub
docutils.nodes.SparseNodeVisitor.visit_citation is not present in stub
docutils.nodes.SparseNodeVisitor.visit_citation_reference is not present in stub
docutils.nodes.SparseNodeVisitor.visit_classifier is not present in stub
docutils.nodes.SparseNodeVisitor.visit_colspec is not present in stub
docutils.nodes.SparseNodeVisitor.visit_comment is not present in stub
docutils.nodes.SparseNodeVisitor.visit_compound is not present in stub
docutils.nodes.SparseNodeVisitor.visit_contact is not present in stub
docutils.nodes.SparseNodeVisitor.visit_container is not present in stub
docutils.nodes.SparseNodeVisitor.visit_copyright is not present in stub
docutils.nodes.SparseNodeVisitor.visit_danger is not present in stub
docutils.nodes.SparseNodeVisitor.visit_date is not present in stub
docutils.nodes.SparseNodeVisitor.visit_decoration is not present in stub
docutils.nodes.SparseNodeVisitor.visit_definition is not present in stub
docutils.nodes.SparseNodeVisitor.visit_definition_list is not present in stub
docutils.nodes.SparseNodeVisitor.visit_definition_list_item is not present in stub
docutils.nodes.SparseNodeVisitor.visit_description is not present in stub
docutils.nodes.SparseNodeVisitor.visit_docinfo is not present in stub
docutils.nodes.SparseNodeVisitor.visit_doctest_block is not present in stub
docutils.nodes.SparseNodeVisitor.visit_document is not present in stub
docutils.nodes.SparseNodeVisitor.visit_emphasis is not present in stub
docutils.nodes.SparseNodeVisitor.visit_entry is not present in stub
docutils.nodes.SparseNodeVisitor.visit_enumerated_list is not present in stub
docutils.nodes.SparseNodeVisitor.visit_error is not present in stub
docutils.nodes.SparseNodeVisitor.visit_field is not present in stub
docutils.nodes.SparseNodeVisitor.visit_field_body is not present in stub
docutils.nodes.SparseNodeVisitor.visit_field_list is not present in stub
docutils.nodes.SparseNodeVisitor.visit_field_name is not present in stub
docutils.nodes.SparseNodeVisitor.visit_figure is not present in stub
docutils.nodes.SparseNodeVisitor.visit_footer is not present in stub
docutils.nodes.SparseNodeVisitor.visit_footnote is not present in stub
docutils.nodes.SparseNodeVisitor.visit_footnote_reference is not present in stub
docutils.nodes.SparseNodeVisitor.visit_generated is not present in stub
docutils.nodes.SparseNodeVisitor.visit_header is not present in stub
docutils.nodes.SparseNodeVisitor.visit_hint is not present in stub
docutils.nodes.SparseNodeVisitor.visit_image is not present in stub
docutils.nodes.SparseNodeVisitor.visit_important is not present in stub
docutils.nodes.SparseNodeVisitor.visit_inline is not present in stub
docutils.nodes.SparseNodeVisitor.visit_label is not present in stub
docutils.nodes.SparseNodeVisitor.visit_legend is not present in stub
docutils.nodes.SparseNodeVisitor.visit_line is not present in stub
docutils.nodes.SparseNodeVisitor.visit_line_block is not present in stub
docutils.nodes.SparseNodeVisitor.visit_list_item is not present in stub
docutils.nodes.SparseNodeVisitor.visit_literal is not present in stub
docutils.nodes.SparseNodeVisitor.visit_literal_block is not present in stub
docutils.nodes.SparseNodeVisitor.visit_math is not present in stub
docutils.nodes.SparseNodeVisitor.visit_math_block is not present in stub
docutils.nodes.SparseNodeVisitor.visit_note is not present in stub
docutils.nodes.SparseNodeVisitor.visit_option is not present in stub
docutils.nodes.SparseNodeVisitor.visit_option_argument is not present in stub
docutils.nodes.SparseNodeVisitor.visit_option_group is not present in stub
docutils.nodes.SparseNodeVisitor.visit_option_list is not present in stub
docutils.nodes.SparseNodeVisitor.visit_option_list_item is not present in stub
docutils.nodes.SparseNodeVisitor.visit_option_string is not present in stub
docutils.nodes.SparseNodeVisitor.visit_organization is not present in stub
docutils.nodes.SparseNodeVisitor.visit_paragraph is not present in stub
docutils.nodes.SparseNodeVisitor.visit_pending is not present in stub
docutils.nodes.SparseNodeVisitor.visit_problematic is not present in stub
docutils.nodes.SparseNodeVisitor.visit_raw is not present in stub
docutils.nodes.SparseNodeVisitor.visit_reference is not present in stub
docutils.nodes.SparseNodeVisitor.visit_revision is not present in stub
docutils.nodes.SparseNodeVisitor.visit_row is not present in stub
docutils.nodes.SparseNodeVisitor.visit_rubric is not present in stub
docutils.nodes.SparseNodeVisitor.visit_section is not present in stub
docutils.nodes.SparseNodeVisitor.visit_sidebar is not present in stub
docutils.nodes.SparseNodeVisitor.visit_status is not present in stub
docutils.nodes.SparseNodeVisitor.visit_strong is not present in stub
docutils.nodes.SparseNodeVisitor.visit_subscript is not present in stub
docutils.nodes.SparseNodeVisitor.visit_substitution_definition is not present in stub
docutils.nodes.SparseNodeVisitor.visit_substitution_reference is not present in stub
docutils.nodes.SparseNodeVisitor.visit_subtitle is not present in stub
docutils.nodes.SparseNodeVisitor.visit_superscript is not present in stub
docutils.nodes.SparseNodeVisitor.visit_system_message is not present in stub
docutils.nodes.SparseNodeVisitor.visit_table is not present in stub
docutils.nodes.SparseNodeVisitor.visit_target is not present in stub
docutils.nodes.SparseNodeVisitor.visit_tbody is not present in stub
docutils.nodes.SparseNodeVisitor.visit_term is not present in stub
docutils.nodes.SparseNodeVisitor.visit_tgroup is not present in stub
docutils.nodes.SparseNodeVisitor.visit_thead is not present in stub
docutils.nodes.SparseNodeVisitor.visit_tip is not present in stub
docutils.nodes.SparseNodeVisitor.visit_title is not present in stub
docutils.nodes.SparseNodeVisitor.visit_title_reference is not present in stub
docutils.nodes.SparseNodeVisitor.visit_topic is not present in stub
docutils.nodes.SparseNodeVisitor.visit_transition is not present in stub
docutils.nodes.SparseNodeVisitor.visit_version is not present in stub
docutils.nodes.SparseNodeVisitor.visit_warning is not present in stub
docutils.nodes.Transform is not present at runtime
docutils.nodes.Transformer is not present at runtime
docutils.nodes.TreeCopyVisitor.get_tree_copy is not present in stub
docutils.nodes._traversal_list.reverse is inconsistent, stub does not have *args argument "args"
docutils.nodes.document.__init__ is inconsistent, stub argument "rawsource" differs from runtime argument "settings"
docutils.nodes.document.__init__ is inconsistent, stub argument "rawsource" has a default value but runtime argument does not
docutils.nodes.document.__init__ is inconsistent, stub does not have argument "reporter"
docutils.nodes.document.asdom is not present in stub
docutils.nodes.document.document variable differs from runtime type None
docutils.nodes.document.has_name is not present in stub
docutils.nodes.document.note_anonymous_target is not present in stub
docutils.nodes.document.note_autofootnote is not present in stub
docutils.nodes.document.note_autofootnote_ref is not present in stub
docutils.nodes.document.note_citation is not present in stub
docutils.nodes.document.note_citation_ref is not present in stub
docutils.nodes.document.note_explicit_target is not present in stub
docutils.nodes.document.note_footnote is not present in stub
docutils.nodes.document.note_footnote_ref is not present in stub
docutils.nodes.document.note_implicit_target is not present in stub
docutils.nodes.document.note_indirect_target is not present in stub
docutils.nodes.document.note_parse_message is not present in stub
docutils.nodes.document.note_pending is not present in stub
docutils.nodes.document.note_refid is not present in stub
docutils.nodes.document.note_refname is not present in stub
docutils.nodes.document.note_source is not present in stub
docutils.nodes.document.note_substitution_def is not present in stub
docutils.nodes.document.note_substitution_ref is not present in stub
docutils.nodes.document.note_symbol_footnote is not present in stub
docutils.nodes.document.note_symbol_footnote_ref is not present in stub
docutils.nodes.document.note_transform_message is not present in stub
docutils.nodes.document.set_duplicate_name_id is not present in stub
docutils.nodes.document.set_id is not present in stub
docutils.nodes.document.set_name_id_map is not present in stub

@danieleades
Copy link
Contributor Author

so i'm a little surprised to discover that adding def __getattr__(self, name: str) -> Any: ... # incomplete to a class doesn't appear to suppress warnings about missing stubs for that class.

is that expected?

@github-actions
Copy link
Contributor

According to mypy_primer, this change has no effect on the checked open source code. 🤖🎉

@hauntsaninja
Copy link
Collaborator

For stubtest? Yeah, that's expected. stubtest is meant to help you complete and check stubs and if something is not-dynamic enough that stubtest can find it, it really should be in the stubs. If you want stubtest to shut up about things you haven't added yet and just check the things that you have, run with --ignore-missing-stubs. If you want more customised ignoring of errors, use stubtest's allowlisting functionality.

@Akuli
Copy link
Collaborator

Akuli commented Apr 25, 2021

Before merging, I think we should compare this with @tk0miya's stubs (mentioned in #1269), or somehow combine the stubs together.

@danieleades
Copy link
Contributor Author

danieleades commented Apr 26, 2021

Before merging, I think we should compare this with @tk0miya's stubs (mentioned in #1269), or somehow combine the stubs together.

I concur.

a quick diff shows a lot of differences

  • i dont think i'm typing variadics (*args, **kwargs) correctly
  • the original implementation uses bound variables to refer to the 'self' type. is that required?
  • str is aliased in the source. I tend to use the alias, while @tk0miya uses str. is there a preference?
  • there's a few instances where i use Sequence or Iterable instead of List

@tk0miya, if you have the time i'd really appreciate a review

edit: on second thoughts, it might be better to abandon this pull request, and do a wholesale merge of https://github.com/tk0miya/docutils-stubs into typeshed. It's far more complete that what i've done here. I'll be happy to review that pull request

@danieleades
Copy link
Contributor Author

@tk0miya how do you feel about opening a pull request to merge your work in docutils stubs?

@JelleZijlstra
Copy link
Member

Any updates here?

@JelleZijlstra
Copy link
Member

Going to close this as stale for now to keep the list of open PRs manageable. If you're still interested in seeing this through, feel free to reopen or open a new PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants