summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2016-09-11 20:42:33 +0200
committerSebastian Thiel <byronimo@gmail.com>2016-09-11 20:44:35 +0200
commit48c149c16a9bb06591c2eb0be4cca729b7feac3e (patch)
tree2b534be329c22de1045a95f6a979ce0cda9a73a4 /doc
parent06c9c919707ba4116442ca53ac7cf035540981f2 (diff)
downloadgitpython-48c149c16a9bb06591c2eb0be4cca729b7feac3e.tar.gz
doc(limitations): be very clear about known issues
Fixes #508
Diffstat (limited to 'doc')
-rw-r--r--doc/source/intro.rst16
1 files changed, 16 insertions, 0 deletions
diff --git a/doc/source/intro.rst b/doc/source/intro.rst
index 6c4e50f5..1c1b0d1b 100644
--- a/doc/source/intro.rst
+++ b/doc/source/intro.rst
@@ -59,6 +59,22 @@ script:
.. note:: In this case, you have to manually install `GitDB`_ as well. It would be recommended to use the :ref:`git source repository <source-code-label>` in that case.
+Limitations
+===========
+
+Leakage of System Resources
+---------------------------
+
+GitPython is not suited for long-running processes (like daemons) as it tends to
+leak system resources. It was written in a time where destructors (as implemented
+in the `__del__` method) still ran deterministically.
+
+In case you still want to use it in such a context, you will want to search the
+codebase for `__del__` implementations and call these yourself when you see fit.
+
+Another way assure proper cleanup of resources is to factor out GitPython into a
+separate process which can be dropped periodically.
+
Getting Started
===============