summaryrefslogtreecommitdiff
path: root/git/util.py
Commit message (Collapse)AuthorAgeFilesLines
...
| * cygwin, #533: polish abs-paths in `git add` commandsKostis Anagnostopoulos2016-10-161-0/+1
| | | | | | | | | | | | | | | | | | | | | | + Modify TCs - no main-code changes. + FIXed: + `TestSubmodule.test_git_submodules_and_add_sm_with_new_commit()` + TestDiff.test_diff_with_staged_file() - Cygwin TCs failing: - PY2: err: 12, fail: 2 - PY3: err: 11, fail: 2
| * cygwin, #533: Allow '/cygdrive/c/' paths on repo initKostis Anagnostopoulos2016-10-141-1/+13
| | | | | | | | | | | | - Cygwin TCs failing: - PY2: err: 13, fail: 2 - PY3: err: 12, fail: 2
| * cygwin, #533: Try to make it work with Cygwin's Git.Kostis Anagnostopoulos2016-10-141-8/+147
| | | | | | | | | | | | | | | | | | + Make `Git.polish_url()` convert paths into Cygwin-friendly paths. + Add utility and soe TCs for funcs for detecting cygwin and converting abs-paths to `/cygdrive/c/...`. - Cygwin TCs failing: - PY2: err: 14, fail: 3 - PY3: err: 13, fail: 3
* | Fix some typosSantiago Castro2016-10-201-4/+4
|/
* remote, #525: FIX BUG push-cmd misses error messagesKostis Anagnostopoulos2016-10-141-1/+1
| | | | | | + Bug discovered after enabling TC in prev commit and rework of fetch. + remote_tc: unitestize assertions. + util: DEL unused `_mktemp()`.
* remote, #525: pump fetch-infos instead of GIL-read stderrKostis Anagnostopoulos2016-10-131-10/+13
| | | | | | + `handle_process_output()` accepts null-finalizer, to pump completely stderr before raising any errors. + test: Enable `TestGit.test_environment()` on Windows (to checks stderr consumption).
* test, #525: allow disabling freeze errors separatelyKostis Anagnostopoulos2016-10-131-0/+1
| | | | | + cmd: use DEVNULL for non PIPEs; no open-file. + TCs: some unitestize-assertions on base & remote TCs.
* FIX #526: Do not depend on test-sourcesKostis Anagnostopoulos2016-10-111-3/+8
| | | | | | + Move `HIDE_WINDOWS_KNOWN_ERRORS` flag from `git.test.lib.helper-->git.util`; regular modules in main-sources folder also depend on that flag. + Use unittest.SkipTest instead of from non-standard `nose` lib.
* src: No PyDev warningsKostis Anagnostopoulos2016-10-041-7/+7
| | | | | | | | + Mark all unused vars and other non-pep8 (PyDev) warnings + test_utils: + enable & fix forgotten IterableList looped path. + unittestize all assertions. + remote: minor fix progress dispatching unknown err-lines
* hidden win-errs: Let leaking TCs run till end, then hideKostis Anagnostopoulos2016-10-041-1/+10
| | | | | | | | | + Detect code breaking the body of TCs eventually hidden win-errors by raising SkipTest ALAP. + submodule.base.py: import classes from `git.objects` instead of `utils`. + had to ++ ulimit 100->110 for the extra code tested (more leaks :-) + Centralize is_win detection.
* RF: use @functools.wraps within decorators instead of manual __name__ ↵Yaroslav Halchenko2016-10-021-1/+3
| | | | | | reassignment @wraps does more and does it right ;)
* io, #519: ALL open() --> with open()Kostis Anagnostopoulos2016-10-011-1/+1
| | | + Some cases had restructuring of code.
* repo-TCs, #519: FIX config resource leaksKostis Anagnostopoulos2016-10-011-1/+4
| | | | | | + Modify lock/read-config-file code to ensure files closed. + Use `with GitConfigarser()` more systematically in TCs. + Clear any locks left hanging from prev Tcs. + Util: mark lock-files as SHORT_LIVED; save some SSDs...
* ci: restore ci log-level to normal, coverage on Win-AppveyorKostis Anagnostopoulos2016-10-011-24/+29
| | | | + Extract util-method to delete lock-files, also on Windows (will be needed by TCs).
* remote, #519: FIX1-of-2 double-decoding push-infosKostis Anagnostopoulos2016-09-281-0/+1
| | | | | + When `universal_lines==True` (515a6b9ccf8) must tel `handle_process_output` to stop decoding strings.
* Win, hook, #519: Consume Hook Popen-proc out of GILKostis Anagnostopoulos2016-09-281-7/+6
| | | | | | | | + HookException thrown on Popen, and were missed on Windows. + No SHELL on Popen?? + Minor fixes: + Try harder to delete trees - no remorses. + Simplify exception reprs. + Unittest-ize test_index assertions.
* Win, #519: FIX with_rw_directory() to remove read-only dirsKostis Anagnostopoulos2016-09-281-1/+1
| | | | | + Stop using gitdb's respective helper. + Fix files chmod(555) which CANNOT DELETE on Windows (but do on Linux).
* src: constify is_<platform>() callsKostis Anagnostopoulos2016-09-281-2/+2
| | | + TCs: unittest-asserts for git-tests.
* src, #519: collect all is_<platform>() callsKostis Anagnostopoulos2016-09-271-4/+4
|
* test, #519: Popen() pump: remove WaitGroupKostis Anagnostopoulos2016-09-261-33/+3
|
* fix(misc): various cleanupSebastian Thiel2016-06-131-4/+8
| | | | | | | | | Just went through all changes and adjusted them to the best of my abilities. As there are no tests to claim otherwise, I believe this is correct enough. However, it becomes evident that it's no longer possible to just make changes without backing them with a respective test.
* Make sure that stderr is converted to bytesBarry Scott2016-05-301-2/+2
| | | remove stderr for a wait() that is not the GitPython wrapper.
* Fix flake8 complaintsBarry Scott2016-05-301-2/+2
|
* Return stderr lines from a pull() call that failsBarry Scott2016-05-291-1/+9
|
* chore(remote): better super-class call syntaxSebastian Thiel2016-05-291-1/+1
| | | | | | Python :) !! Related to #451
* chore(flake8): whitespace ...Sebastian Thiel2016-05-291-1/+1
| | | | | | Related to #451 Signed-off-by: Sebastian Thiel <byronimo@gmail.com>
* Fix traceback because _seen_ops is not initialisedBarry Scott2016-05-291-2/+2
| | | | must call the base class __init__
* fix(remote): Add CallableRemoteProgressSebastian Thiel2016-05-291-10/+19
| | | | | | That way, the base type doesn't need any adjustment. Related to #450
* chore(misc): cleanup and docsSebastian Thiel2016-05-291-8/+5
| | | | | | Minor adjustments to PR to match current code style. Related to #450
* The progress arg to push, pull, fetch and clone is now a python callable.Barry Scott2016-05-281-4/+8
| | | | | | | | | | | | | This simplifies the API and removes the parser, RemoteProgres, from the API as RemoteProgress is an internal detail of the implementation. progress is accepted as: * None - drop progress messages * callable (function etc) - call the function with the same args as update * object - assume its RemoteProgress derived as use as before RemoteProgress takes an optional progress_function argument. It will call the progress function if not None otherwise call self.update as it used to.
* fix(RemoteProgress): improve message sanitizationSebastian Thiel2016-05-251-5/+9
| | | | | | Don't allow `, ` prefixes or suffixes in messages. Fixes #438
* fix(cmd): allow improved errors during clone operationSebastian Thiel2016-02-141-2/+2
| | | | Related to #383
* Forgot to update _num_op_codesThibault Clerice2015-12-021-1/+1
|
* Added CHECKING_OUT as a logged operationThibault Clerice2015-12-021-1/+3
| | | | Closes #330
* don't 'log' to stderr in `RemoteProgress`Sebastian Thiel2015-07-281-1/+0
| | | | | | There is simply no excuse to doing that. Closes #330
* fix(logging): monkeypatch logging with NullHandlerSebastian Thiel2015-06-261-0/+10
| | | | | This will make usage of the `NullHandler` possible in python 2.6 and below.
* fix(indent): flake-8 happynessSebastian Thiel2015-04-161-1/+2
|
* fix(util): Correct number of op codesMatt Jordan2015-04-151-1/+1
| | | | | | | The previous patch failed to update the expected number of op_codes, which would result in an exception when creating an instance of RemoteProgress. This patch corrects the value to the new expected number of op_codes (8)
* fix(util): Handle 'Finding sources' messages in RemoteProgressMatt Jordan2015-04-151-1/+3
| | | | | | | | | | | When running a long running operation (such as a clone on a large repo), Git may return a message indicating that it is 'Finding sources'. Since there is no bit field value for this message, this causes a large amount of error messages to be emitted to stderr. This patch fixes this by adding another bit field value for this message, FINDING_SOURCES. Derived classes can look for this op_code and handle it appropriately.
* fix(remote): allow to raise during push/fetchSebastian Thiel2015-04-081-30/+2
| | | | | | | | | | Do not swallow non-zero exit status during push and fetch unless we managed to parse head information. This behaviour will effetively handle cases were no work was done due to invalid refspecs or insufficient permissions. Fixes #271
* fix(docs): be clear about exit code handlingSebastian Thiel2015-04-081-0/+17
| | | | | | | | When pushing/pulling, we ignore errors unless it's exit code 128. The reason for this is now made explicit to make clear that issues are handled by PushInfo flags accordingly. Related #271
* Fixed regression in test-suite for IndexFileSebastian Thiel2015-01-211-2/+20
| | | | | Previously, it checked for AssertionErrors, now we have to implement need-unbare-repo check ourselves.
* Fixed flake8 and a minor test regression.Sebastian Thiel2015-01-201-3/+3
| | | | | The latter happened as now BadName is thrown, instead of BadObject. Changes.rst was marked accordingly
* Greatly improved possible safety of Submodule.update(), which is used by ↵Sebastian Thiel2015-01-201-1/+4
| | | | | | | | | | | | default. Previously, the implementation would gladly reset new commits in submodules, and/or reset a dirty working tree. Now the new force_reset/force flag has to be specified explicitly to get back to the old behaviour. All submodule tests except for one are working.
* Improved unicode handling when using os.environ or GitConfigParserSebastian Thiel2015-01-191-2/+10
| | | | | | | Assured unicode values are supported when reading the configuration, and when getting author/committer information from the environment. Fixes #237
* Fixed some doc strings to build correctly with sphinxSebastian Thiel2015-01-141-2/+5
| | | | | | Fixes #7 [ci skip]
* Made sure commits accept unicode or unicode charactersSebastian Thiel2015-01-071-1/+1
|
* Fix flake8Sebastian Thiel2015-01-071-5/+5
|
* Using a wait-group seems to properly sync the threads for buffer depletionSebastian Thiel2015-01-071-1/+31
|
* Implemented non-blocking operations using poll()Sebastian Thiel2015-01-071-0/+8
| | | | Next up is using threads