Skip to content
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

minor: rewrite/expand show_documentation #980

Merged
merged 2 commits into from
Jan 17, 2020
Merged

Conversation

blueyed
Copy link
Collaborator

@blueyed blueyed commented Jan 10, 2020

The documentation test fails with newer Jedi, this is for investigating it.

________________ test_integration[test/vspec/documentation.vim] ________________
test/vspec/documentation.vim failed:
"__doc__" [New File]
# ImportError(*args, name: Optional[str]=..., path: Optional[str]=...)
not ok 1 - documentation docstrings simple
# Expected stridx(content, "Import can't find module") > 0 at line 11
#       Actual value: -1
#     Expected value: 0
5 buffers wiped out
ok 2 - documentation docstrings no documentation
1..2

TODO:

  • failure on py27

    test/vspec/documentation.vim failed:
    not found in 'runtimepath': "ftdetect/*.vim"
    not ok 1 - documentation docstrings simple
    # Expected header[0] == "Docstring for builtins:class ImportError" at line 7
    #       Actual value: "Docstring for __builtin__:class ImportError"
    #     Expected value: "Docstring for builtins:class ImportError"
    5 buffers wiped out
    ok 2 - documentation docstrings no documentation
    1..2
    

@codecov-io
Copy link

codecov-io commented Jan 17, 2020

Codecov Report

Merging #980 into master will increase coverage by 0.14%.
The diff coverage is 60%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #980      +/-   ##
==========================================
+ Coverage   47.68%   47.83%   +0.14%     
==========================================
  Files           3        3              
  Lines         799      807       +8     
  Branches      164      165       +1     
==========================================
+ Hits          381      386       +5     
- Misses        384      386       +2     
- Partials       34       35       +1
Flag Coverage Δ
#py27 45.95% <60%> (+0.16%) ⬆️
#py37 45.07% <60%> (+0.17%) ⬆️
#py38 46.09% <60%> (+0.16%) ⬆️
Impacted Files Coverage Δ
pythonx/jedi_vim.py 49.14% <60%> (+0.15%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update e2abec2...454c4bc. Read the comment docs.

@blueyed blueyed changed the title [WIP] minor: rewrite/expand show_documentation minor: rewrite/expand show_documentation Jan 17, 2020
Expect header[0] == "Docstring for builtins:class ImportError"
Expect header[1] == "========================================"
endif
let content = join(getline(3, '$'), "\n")
Expect stridx(content, "Import can't find module") > 0
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@davidhalter with Jedi master "content" is "ImportError(*args, name: Optional[str]=..., path: Optional[str]=...)" here, i.e. the signature itself?!
git-bisected to davidhalter/jedi@4161bfc

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@blueyed For whatever reason, the documentation of some builtins doesn't seem to work anymore and the tests don't catch it. No idea why, I will investigate and fix it. I have noticed it a few days ago when documentation for open didn't show up. So really a Jedi bug.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It works with the submodule's version, doesn't it?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I.e. the test fails locally when updating Jedi to the above commit.
Going to merge this for now.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make sense, thanks!

@blueyed blueyed merged commit e8790b1 into davidhalter:master Jan 17, 2020
@blueyed blueyed deleted the docs branch January 17, 2020 12:48
yangle pushed a commit to yangle/jedi-vim that referenced this pull request Mar 8, 2020
    * pythonx/jedi 60415033...35e5cf2c (106):
      > A small Changelog improvement
      > Cleanup Changelog for the next release
      > Make it possible to access functions that were inherited, see #1347
      > Messed up a Windows test
      > Again a small windows issue fixed.
      > Need to escape the path backslash for windows slashes
      > Make it possible to access properties again
      > A small compatibility fix
      > Fix an issue with type vars that might have been a problem for other things as well
      > Don't add quotes after paths if they are already there
      > A small speed optimization that helps a lot with sys.version_info >= (3, 0) patterns in typeshed
      > Remove an unnecessary isinstance usage
      > Make CompiledValue lazy
      > A python 2 fix
      > Fix an error that occured because of some refactorings
      > Fix one more os.path.join issue
      > Fix more issues with os.path path completion
      > Make join detection much easier
      > Fix some remaining issues with file path completions
      > A few more tests for path completions (join)
      > Fix quote completions for os.path.join path completions
      > Fix first param argument of os.path.join file completions
      > Fix arglist/trailer issues
      > in os.path.join completions, directories should not end in a slash
      > Make some file path completions in os.path.join work
      > Fix os.path.join static value gathering
      > os.path.sep should always have a clear value
      > Fix string name completion for stuff like dirname and abspath
      > Fix bytes issue with file path adding
      > Python 2 compatibility
      > Make __file__ return the correct value
      > Fix string additions when used in certain ways
      > Make string additions work for file path completion
      > Fix interpeter project path
      > Fix the REPL completer for file path completions
      > Fix a few more file name completion cases
      > A first iteration for file path completions
      > Fix a test failure
      > Add Definition.execute, fixes davidhalter#1076
      > Add tests to show that davidhalter#516 is not working, yet
      > List possible Definition.type in its docstring, fixes davidhalter#1069.
      > Start writing the Changelog for 0.15.0
      > 3.8-dev should not be allowed to fail
      > Skip more Python 2 tests
      > Skipping of tests was done the wrong way again
      > Skip the right tests
      > Parameter.kind is not avaialble in Python 3.5
      > Fix Python 2 test issues
      > Add a few docstrings to make some things clearer
      > Add ParamDefinition.kind, fixes #1361
      > Make it possible to format a param to a string, fixes davidhalter#1074
      > Add another test for signature annotations
      > Add Signature.to_string() with proper tests, fixes davidhalter#779, fixes davidhalter#780
      > Test infer_default
      > Use a helper to create definitions
      > Add a execute_annotation option to infer_annotation
      > Test infer_annotation
      > Make it possible for users to infer annotations/defaults
      > A first iteration of adding signatures to the API, fixes #1139
      > Fix a caching issue
      > Forgot the right resolve_stars parameters in one place
      > Cache getting resolved param names
      > Turn around resolve_stars, it shouldn't by default be resolved
      > Remove a class that is not needed anymore
      > Revert "Use __str__ instead of to_string"
      > Fix the last remaining issues with function signature
      > overloaded_functions should be private
      > Use __str__ instead of to_string
      > Better repr for CallSignature
      > Fix some minor signature issues
      > Remove the unused function signature_matches
      > Fix signatures for __init__ calls when used with supers, fixes #1163
      > Fix some issues for args resolving in method calls
      > Remove a bit of code that i sprobably unused
      > Move get_signatures from Function to FunctionMixin
      > Merge the signature changes
      > Remove an import
      > Small refactoring
      > Skipped Python 2 Interpreter tests the wrong way
      > Remove a paragraph in docs that was arguing that stubs and generics (and other things) were not properly supported, fixes davidhalter#1012
      > Fix partial signatures for MixedObject
      > Fix partial signatures, fixes #1371
      > Make sure with a test that the staticmethod signature is also correct
      > Fix classmethod signature, fixes davidhalter#498
      > Deal with annotation on *args and **kwargs correctly, fixes davidhalter#980
      > Use LazyContextWrapper more
      > Very small refactoring
      > Fix for failing assertion on native modules Issue #1354 (#1370)
      > Skip numpydoc tests for Python 2
      > Remove code that didn't mean anything
      > Fix docstrings for wrapped functions, fixes davidhalter#906
      > Fix an isue about dict ordering in Python before 3.6.
      > Make it clearer when get_param is used.
      > A small dataclass refactoring
      > Evaluate annotations for dataclasses when infer is called on param
      > Get inheritance of dataclass right
      > A first working iteration of dataclass signatures, fixes #1213
      > Remove an unused function
      > Dataclass progress
      > Add enum changes to changelog
      > Fix a recursion error about getting metaclasses
      > One test about recursion issues only applied to Python 2
      > Use class filters in instances differently so metaclass plugins work, fixes davidhalter#1090
      > First step in working with metaclasses in plugins, see davidhalter#1090.
      > Refactor the plugin registry
      > Remove classes from plugins and use decorators instead
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.

3 participants