aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-05-25fix(remote): remove assertion in favour of runtime stabilitySebastian Thiel
Fixes #442
2016-05-25chore(changes): put fix to correct patch levelSebastian Thiel
2016-05-25fix(requirements): now works with toxSebastian Thiel
2016-05-25fix(RemoteProgress): improve message sanitizationSebastian Thiel
Don't allow `, ` prefixes or suffixes in messages. Fixes #438
2016-05-24Fix link to latest changelogVincent Driessen
2016-05-24Fixes for RST syntaxVincent Driessen
2016-05-24Bump the version to 2.0.32.0.3Vincent Driessen
2016-05-24Wrap long lines for display in terminalsVincent Driessen
2016-05-24Add fix to changelogVincent Driessen
2016-05-24Merge branch 'jonathanchu-master'Vincent Driessen
2016-05-24Ignore trailing last empty string in .split() outputVincent Driessen
2016-05-24Check if byte string is empty for py3 compatibilityJonathan Chu
2016-05-24fix(cmd): fix with_stdout implementationSebastian Thiel
Admittedly this fix is solely based on the documentation provided for this parameter, which indicated a different intend than was actually implemented. Also I don't believe doing this will cause any harm. As a special note: the call to `open(os.devnull, 'wb')` does not seem leak the handle, apparently it is given as-is to the subprocess, which will then close it naturally. This was tested using an interactive session via `htop` on osx. Fixes #437
2016-05-24Split lines by new line charactersJonathan Chu
Opt to split lines by the new line character instead of letting `splitlines()` do this. This helps catch the issue when there are special characters in the line, particular the commit summary section.
2016-05-24fix(cmd): don't catch progress handler exceptionsSebastian Thiel
Fixes #435
2016-05-19Merge pull request #433 from StevenWColby/masterSebastian Thiel
Need spaces in Emacs style encoding comment
2016-05-19Merge pull request #431 from guyzmo/fix-opt_arg-orderSebastian Thiel
Fix order of operators before executing the git command
2016-05-19Use correct mode for executable filesSebastian Thiel
Fixes #430
2016-05-19Clarify costs of certain propertiesSebastian Thiel
Fixes #428
2016-05-19Deprecate Diffable.rename for .renamed_fileSebastian Thiel
Fixes #426
2016-05-18Need spaces in Emacs style encoding commentSteven Colby
Although it's hard to see, PEP-0263 does have ws delimiting the 'coding' string. This commit will fix the root cause of (at least) one bug: https://lists.fedoraproject.org/archives/list/eclipse-sig@lists.fedoraproject.org/thread/5XQ5JRHG6DPPMGRDU7TA2AO4EYS2H7AG/
2016-05-12Fix order of operators before executing the git commandGuyzmo
Since Python 3.3, the hash value of an object is seeded randomly, making it change between each call. As a consequence, the `dict` type relying on the hash value for the order of the items upon iterating on it, and the parameters passed to `git` being passed as `kwargs` to the `execute()` method, the order of parameters will change randomly between calls. For example, when you call `git.remote.pull()` in a code, two consecutives run will generate: 1. git pull --progress -v origin master 2. git pull -v --progress origin master Within the `transform_kwargs()` method, I'm promoting `kwargs` into an `collections.OrderedDict` being built with `kwargs` sorted on the keys. Then it will ensure that each subsequent calls will execute the parameters in the same order.
2016-05-11Merge pull request #429 from inderpreet99/fix-reqs-docSebastian Thiel
Update requirements doc
2016-05-10Update requirements docinderpreet99
2016-04-28This is 2.0.22.0.2Vincent Driessen
2016-04-28Include doc sources in sdistVincent Driessen
2016-04-25Exclude *.pyc files from source tarballsVincent Driessen
2016-04-24Add contributorsVincent Driessen
2016-04-24Remove check that didn't work as expected2.0.1Vincent Driessen
2016-04-24This is 2.0.1Vincent Driessen
2016-04-24Automate steps to upload to PyPIVincent Driessen
2016-04-24Update changelogVincent Driessen
2016-04-24Allow "@" sign in fetch output linesVincent Driessen
2016-04-24Information on how to make a release on pypiSebastian Thiel
2016-04-24set upcoming versionSebastian Thiel
2016-04-24Travis should now be able to test tagsSebastian Thiel
It's just a guess, maybe we are lucky. The original problem is that travis checks out tags without branches, and thus checking out master does only work if travis runs on master. With tags, it will only heckout and locally know the tag in question. The changes should allow it to retry and create the master branch instead.
2016-04-22Fix assertion2.0.0Sebastian Thiel
Who would have thought we ever go 2.0 ;).
2016-04-22version 2.0.0Sebastian Thiel
2016-04-22Declare support for py3.5Sebastian Thiel
2016-04-20Add change log entryVincent Driessen
2016-04-20Bump minor insteadVincent Driessen
2016-04-20Add change log entryVincent Driessen
2016-04-20Merge pull request #414 from nvie/support-full-datetimes-on-commitsSebastian Thiel
Add support for getting "aware" datetime info
2016-04-20Merge pull request #415 from nvie/fix-for-unicode-pathsSebastian Thiel
Fix diff patch parser for paths with unsafe chars
2016-04-20Allow "$" sign in fetch output linesVincent Driessen
2016-04-20Python 3 compat fixesVincent Driessen
Specifically "string_escape" does not exist as an encoding anymore.
2016-04-19Fix diff patch parser for paths with unsafe charsVincent Driessen
This specifically covers the cases where unsafe chars occur in path names, and git-diff -p will escape those. From the git-diff-tree manpage: > 3. TAB, LF, double quote and backslash characters in pathnames are > represented as \t, \n, \" and \\, respectively. If there is need > for such substitution then the whole pathname is put in double > quotes. This patch checks whether or not this has happened and will unescape those paths accordingly. One thing to note here is that, depending on the position in the patch format, those paths may be prefixed with an a/ or b/. I've specifically made sure to never interpret a path that actually starts with a/ or b/ incorrectly. Example of that subtlety below. Here, the actual file path is "b/normal". On the diff file that gets encoded as "b/b/normal". diff --git a/b/normal b/b/normal new file mode 100644 index 0000000000000000000000000000000000000000..eaf5f7510320b6a327fb308379de2f94d8859a54 --- /dev/null +++ b/b/normal @@ -0,0 +1 @@ +dummy content Here, we prefer the "---" and "+++" lines' values. Note that these paths start with a/ or b/. The only exception is the value "/dev/null", which is handled as a special case. Suppose now the file gets moved "b/moved", the output of that diff would then be this: diff --git a/b/normal b/b/moved similarity index 100% rename from b/normal rename to b/moved We prefer the "rename" lines' values in this case (the "diff" line is always a last resort). Take note that those lines are not prefixed with a/ or b/, but the ones in the "diff" line are (just like the ones in "---" or "+++" lines).
2016-04-19Fix accidentally added importVincent Driessen
2016-04-19Add support for getting "aware" datetime infoVincent Driessen
This adds 2 properties to commits. Their values are derived from the existing data stored on them, but this makes them more conveniently queryable: - authored_datetime - committed_datetime These return "aware" datetimes, so they are effectively companions to their raw timestamp equivalents, respectively `authored_date` and `committed_date`. These datetime instances are convenient structures since they show the author-local commit date and their UTC offset.
2016-04-19Merge pull request #413 from nvie/support-repeated-cmd-kwargsVincent Driessen
Support repeated kwargs