diff --git a/README.rst b/README.rst index 8734161..8679049 100644 --- a/README.rst +++ b/README.rst @@ -45,47 +45,48 @@ for the topic), send a pull request. Authors ============== -The following people have contributed at least one patch to the -pygit2 project (sorted alphabetically): +This is the list of authors of pygit2, sorted by number of commits (as shown by +``git shortlog -sn``): +- J David Ibáñez +- Nico von Geyso +- W Trevor King +- Dave Borowitz +- Carlos Martín Nieto +- Christian Boos +- Julien Miotte +- Richo Healey +- Martin Lenders +- Xavier Delannoy +- Yonggang Luo +- Valentin Haenel +- John Szakmeister +- David Versmisse +- Petr Hosek +- Sebastian Thiel +- Han-Wen Nienhuys +- Petr Viktorin - Alex Chamberlain - Amit Bakshi -- András Veres-Szentkirályi - Ben Davis +- Jared Flatow +- Sarath Lakshman +- Vicent Marti +- Zoran Zaric +- András Veres-Szentkirályi - Benjamin Kircher - Benjamin Pollack - Bryan O'Sullivan -- Carlos Martín Nieto -- Christian Boos -- David Borowitz (*Original author*) - David Sanders -- David Versmisse - Eric Davis - Eric Schrijver - Erik van Zijst - Ferengee -- Han-Wen Nienhuys - Hugh Cole-Baker -- J David Ibáñez (*Current maintainer*) -- Jared Flatow -- John Szakmeister - Josh Bleecher Snyder -- Julien Miotte -- Martin Lenders -- Nico von Geyso -- Petr Hosek -- Petr Viktorin -- Richo Healey +- Jun Omae - Ridge Kennedy - Rui Abreu Ferreira -- Sarath Lakshman -- Sebastian Thiel -- Valentin Haenel -- Vicent Marti -- W Trevor King -- Xavier Delannoy -- Yonggang Luo -- Zoran Zaric - pistacchio diff --git a/docs/diff.rst b/docs/diff.rst index 513d08e..4d50ed8 100644 --- a/docs/diff.rst +++ b/docs/diff.rst @@ -17,6 +17,12 @@ A diff shows the changes between trees, an index or the working dir:: # Diff a tree with the current working dir >>> diff = head.tree.diff() + # Get all patches for a diff + >>> t0 = repo.revparse_single('HEAD^').tree + >>> t1 = repo.revparse_single('HEAD~3').tree + >>> diff = t0.diff(t1) + >>> patches = [p for p in diff] + The Diff type ==================== diff --git a/src/diff.c b/src/diff.c index d7c2b69..aa69ee2 100644 --- a/src/diff.c +++ b/src/diff.c @@ -227,7 +227,7 @@ PyTypeObject DiffIterType = { }; -PyDoc_STRVAR(Diff_patch__doc__, "Patch."); +PyDoc_STRVAR(Diff_patch__doc__, "Patch diff string."); PyObject * Diff_patch__get__(Diff *self) diff --git a/src/repository.c b/src/repository.c index 45fda4e..74c7a50 100644 --- a/src/repository.c +++ b/src/repository.c @@ -854,30 +854,15 @@ PyObject * Repository_git_reference_symbolic_create(Repository *self, PyObject *args, PyObject *kw) { - PyObject *py_obj; git_reference *c_reference; char *c_name, *c_target; int err, force; - if (!PyArg_ParseTuple(args, "sOi", &c_name, &py_obj, &force)) - return NULL; - - #if PY_MAJOR_VERSION == 2 - c_target = PyBytes_AsString(py_obj); - #else - // increases ref counter, so we have to release it afterwards - PyObject* py_str = PyUnicode_AsASCIIString(py_obj); - c_target = PyBytes_AsString(py_str); - #endif - if (c_target == NULL) + if (!PyArg_ParseTuple(args, "ssi", &c_name, &c_target, &force)) return NULL; err = git_reference_symbolic_create(&c_reference, self->repo, c_name, c_target, force); - #if PY_MAJOR_VERSION > 2 - Py_CLEAR(py_str); - #endif - if (err < 0) return Error_set(err); @@ -1025,6 +1010,7 @@ Repository_create_remote(Repository *self, PyObject *args) return Error_set(err); py_remote = PyObject_New(Remote, &RemoteType); + Py_INCREF(self); py_remote->repo = self; py_remote->remote = remote;