Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork938
Retrofitrepo
class as context-man to cleanup global mman on repo-delete#555
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
Uh oh!
There was an error while loading.Please reload this page.
Conversation
Improve API for problems likegitpython-developers#553.
Apply codereview comments ofgitpython-developers#541.
codecov-io commentedDec 8, 2016 • edited
Loading Uh oh!
There was an error while loading.Please reload this page.
edited
Uh oh!
There was an error while loading.Please reload this page.
Current coverage is 94.50% (diff: 92.00%)
|
@ankostis Do you think I should wait till tomorrow until I cut the release to be able to include this one? Or would you prefer to just have this released separately at a later time? |
Sorry@Byron , I've just seen your message. I'm not exactly sure what happened and you could not include my PR in 2.1.1. |
Even though the implementation seems to be in place, it would certainly be nice to include an example in the |
Apologies for not having the time, Too overloaded to fix the TCs in the next weeks :-( |
I think so too :)! Sorry for the incredible delays. |
The gc module was already imported at module scope ingit/repo/base.py, sincef1a82e4 (gitpython-developers#555). Importing the top-levelgit module or any submodule of it runs that import statement.Because the gc module is already imported, reimporting it is fast.Imports that there is no specific reason to do locally should be atmodule scope. Having them local decreased readability, in partbecause of how black inserts a black line between them andgc.collect() calls they are imported to allow.An alternative to this change would be to remove the preexistingtop-level "import gc" (there is also another one in the test suite)and replace it with a local import as well. I am unsure if thatwould affect performance and, if so, whether the effect would begood or bad, since the small delay of the import might potentiallybe less desirable to an applicaion if it occurs while the work ofthe application is already in progress.If a gc.collect() call runs as a consequence of a finally block or__del__ method being called during interpreter shutdown, then in(very) rare cases the variable may have been set to None. But thisdoes not appear to have been the intent behind making the importslocal. More importantly, a local import should not be expected tosucceed, or the imported module usable, in such a situation.
Uh oh!
There was an error while loading.Please reload this page.
Some changes for this release:
See#553 for difficulties when working on Windows, where open file-handles actually "lock" the underlying files, and repos cannot be deleted.
More changes:
cmd._call_process()
.gitpython.util.rmtree()
for deleting repos inWindows where blobs are readonly.