Skip to content

Add types to refs #1295

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 22 commits into from
Jul 19, 2021
Merged

Add types to refs #1295

merged 22 commits into from
Jul 19, 2021

Conversation

Yobmod
Copy link
Contributor

@Yobmod Yobmod commented Jul 19, 2021

Adding types to refs module, and backtracking to make sure they agree with previous types.

I also changed the hard-coding of Traversable.list_traverse(on_edge= True) that I put in last time to be a check for it in kwargs. At the moment all it does is raise an additional deprecation warning if anyone tried to use on_edge= True - I don't think anyone would be, but better than breaking it without warning.
Also made Traversable, Serilizable and IterableObj into Protocols (typings version of abstract base classes) - shouldnt have any effect on users unless they are doing something wierd.

Added flake8-bugbear and flake8-comprehensions and fixed the (minor) complaints they had.

Removed some checks for python 3.5 in tests.

@Byron Byron merged commit cfd653a into gitpython-developers:main Jul 19, 2021
@Byron
Copy link
Member

Byron commented Jul 19, 2021

Tremendous work, thank you!

@Byron Byron added this to the v3.1.19 - Bugfixes milestone Jul 23, 2021
EliahKagan added a commit to EliahKagan/GitPython that referenced this pull request Nov 4, 2023
Major changes:

- Add a comment in the git.compat module above the definitions of
  is_win, is_posix, and is_darwin stating that they are deprecated
  and recommending that os.name (or, where applicable,
  sys.platform) be used directly instead for clarity (and sometimes
  accuracy).

- Remove all uses of is_win and is_posix in git/ and test/,
  replacing them with `os.name == "nt"` and `os.name == "posix"`,
  respectively.

There were no uses of is_darwin to be replaced. Although it had
been used at one time, the last reference to it appears to have
been removed in 4545762 (gitpython-developers#1295).

This doesn't emit a DeprecationWarning when those attributes are
accessed in the git.compat module. (That might be valuable thing to
do in the future, if the git.compat module is to remain
non-deprecated overall.)

Two related less consequential changes are also included:

- Improve ordering and grouping of imports, in modules where they
  were already being changed as a result of no longer needing to
  import is_<platform> (usually is_win) from git.compat.

- Make minor revisions to a few comments, for readability. (This is
  in addition to somewhat more substantial revisions of comments
  where rewording was related to replacing uses of is_<platform>.)
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants