Steven Myint
095740253c
Handle Latin-1 encoded text in diffs
This is useful for avoiding crashing on "cdiff -l" (on Python 3) in
https://github.com/myint/cppclean.
Also handle unknown encodings gracefully rather than crashing.
11 years ago
Matthew Wang
bc2b4bf5db
Version bumped up to 0.9.3
11 years ago
Matthew Wang
61d9e93b7b
Remove unused 'os'
11 years ago
Matthew Wang
1755970048
Adjust Popen object creation order to fix issue #30
Have to create pager Popen object before the translator Popen object
in PatchStreamForwarder, otherwise the `stdin=subprocess.PIPE` would cause
trouble to the translator pipe (select() never see EOF after input stream
ended), most likely python bug 12607 (http://bugs.python.org/issue12607)
which was fixed in python 2.7.3.
11 years ago
Matthew Wang
2d2815a228
Update: try for issue #30 works for python >= 2.7.3
11 years ago
Matthew Wang
12efc9d2c7
Implement next() for Python 2.5
11 years ago
Matthew Wang
d4ed688e5c
Another try for issue #30
blocking mode with select() and bufsize=1, buggy in python 2.x:
close() does not notify select() for EOF
11 years ago
Matthew Wang
c2f3622c8a
Lazy fix #32 by set default encoding to utf-8
11 years ago
Matthew Wang
73e8e660b4
Fix issue #31 by catching UnicodeDecodeError as well
11 years ago
Matthew Wang
e83642c799
Use file object's .closed instead of _istream_open
11 years ago
Steven Myint
d3032476c1
Remove code made unnecessary by #28
11 years ago
Steven Myint
2cb541c957
Handle all keyboard interrupts more completely
Also handle abruptly closed pipe gracefully.
11 years ago
Matthew Wang
af8a8eb48d
Version bumped to 0.9.2
11 years ago
Matthew Wang
5f671d7bdd
Show extra help message after option list
Use OptionGroup for hack
11 years ago
Matthew Wang
57e62f2a7c
Stop on first unknown option and pass them down
- Close issue #26 (user can now use cdiff -s -U5 --cached)
11 years ago
Matthew Wang
e19f384ba4
Fix issue #23 with --no-ext-diff
Use `--no-ext-diff` to disable GIT_EXTERNAL_DIFF and diff.external which might
break cdiff output
11 years ago
killarny
bcb99110bd
Temporarily unset GIT_EXTERNAL_DIFF when invoking git diff.
When the git diff command is customized through setting GIT_EXTERNAL_DIFF in the environment, the output of cdiff is broken and defaults to the output of the tool git has been configured to use.
Temporarily unsetting this variable when cdiff invokes git diff fixes the issue.
11 years ago
Matthew Wang
56eb7bce95
Version info and document update for 0.9
11 years ago
Matthew Wang
04ac895387
Refactor to make logic clearer, no DiffOps anymore
If need to support normal diff, writing a ndiff to udiff translator
makes more sense
11 years ago
Matthew Wang
ab9a9981c6
Enhance diff parser on handling hunk links, fix #20
11 years ago
Matthew Wang
e7854dddde
Support context diff via filterdiff, fixed #15
11 years ago
Matthew Wang
2e49a7eb3f
Fall through unknown format to 'unified', fixed #18
11 years ago
Steven Myint
5ddd06fd05
Handle a diff with only an svn property change
11 years ago
Matthew Wang
b87376fac9
Should tolerate dos format
11 years ago
Matthew Wang
69e4b1683e
Probe context diff for #15
11 years ago
Matthew Wang
7881a41f69
- Naming enhancement for unified diff
11 years ago
Matthew Wang
b6a591a6ce
Version bump up to 0.8
11 years ago
Matthew Wang
e191e54ea6
Fixed #14 by tolerating dangling headers and short patch < 4 lines
11 years ago
Matthew Wang
6a6249f4c6
Dirty fix false alarm of dangling header reported in issue #14
11 years ago
Matthew Wang
a09947c1b5
Enough unit tests (95%)
11 years ago
Matthew Wang
45b95d6e09
Split Diff detector methods to class DiffOps
11 years ago
Matthew Wang
b601b6206d
Use '# pragma: no cover' to ignore 1 line logic
11 years ago
Matthew Wang
f64e6ceb35
Conform PEP8 (with minor own flavors)
11 years ago
Matthew Wang
7203ec0983
Version bump up to 0.7.1
11 years ago
Matthew Wang
a413a0351d
Handle 'Binary files ... differ'
11 years ago
Matthew Wang
c929b5fc3a
Remove unused 'IS_PY3'
11 years ago
Matthew Wang
176bd406a6
Document/usage update for 0.7
11 years ago
Matthew Wang
957483ad17
Inline usage update
11 years ago
Matthew Wang
75b79f0935
Support reading diff or log for given files/dirs in workspace (usage changed on
11 years ago
Matthew Wang
0525f7c1dc
Handle 'Only in <dir>: ' header in output from diff -ru d1 d2
11 years ago
Matthew Wang
8f1aa45c8b
revert debug code; clean up
11 years ago
Matthew Wang
e4eccf3fbc
Code and doc lint
11 years ago
Matthew Wang
4835304ffa
Document update and clean up for v0.6
11 years ago
Matthew Wang
8bea7f19f0
Less useless getters
11 years ago
Matthew Wang
6e60a56c0c
Make patch parser more solid
11 years ago
Steven Myint
ec6d34da5b
Show merge history in Subversion log
Without this, some of the logs will not be shown.
11 years ago
Matthew Wang
8f24a53487
More clear logic with _fit_with_marker_mix()
11 years ago
Matthew Wang
58bb01b0a7
Performance enhancement
11 years ago
Matthew Wang
7debe071d5
- Fixed incorrect yield on diff missing eof
- Fixed a bug in diff format probe
- Handle keyboard interrupt and large diffs in non-color mode
- Code clean up
11 years ago
Steven Myint
6e9d22e205
Gracefully handle keyboard interrupt
Previously, a keyboard interrupt would result in a corrupted terminal.
This would manifest when doing "cdiff --log" on somewhat large
repositories.
11 years ago