Преглед изворни кода

Adds the committer in the config + python3 support

Jean-Marc Martins пре 12 година
родитељ
комит
fe28b040bd
3 измењених фајлова са 14 додато и 4 уклоњено
  1. 5 0
      config
  2. 3 0
      radicale/config.py
  3. 6 4
      radicale/storage/filesystem.py

+ 5 - 0
config

@@ -94,6 +94,11 @@ http_user_parameter =
 http_password_parameter =
 
 
+[git]
+# Git default options
+committer = Firstname Lastname <Radicale@Radicale.org>
+
+
 [rights]
 # Rights management method
 # Value: None | owner_only | owner_write | from_file

+ 3 - 0
radicale/config.py

@@ -72,6 +72,9 @@ INITIAL_CONFIG = {
         "http_url": "",
         "http_user_parameter": "",
         "http_password_parameter": ""},
+    "git": {
+        "committer": "Firstname Lastname <Radicale@Radicale.org>",
+    },
     "rights": {
         "type": "None",
         "file": "~/.config/radicale/rights"},

+ 6 - 4
radicale/storage/filesystem.py

@@ -26,16 +26,17 @@ import os
 import posixpath
 import json
 import time
+import sys
 from contextlib import contextmanager
 from .. import config, ical
 
 
 FOLDER = os.path.expanduser(config.get("storage", "filesystem_folder"))
-
+FILESYSTEM_ENCODING = sys.getfilesystemencoding()
 
 try:
     from dulwich.repo import Repo
-    GIT_REPOSITORY = Repo(FOLDER)
+    GIT_REPOSITORY = Repo(FOLDER).encode(FILESYSTEM_ENCODING)
 except:
     GIT_REPOSITORY = None
 
@@ -52,8 +53,9 @@ def open(path, mode="r"):
     # On exit
     if GIT_REPOSITORY and mode == "w":
         path = os.path.relpath(abs_path, FOLDER)
-        GIT_REPOSITORY.stage([path.encode("utf-8")])
-        GIT_REPOSITORY.do_commit("Commit by Radicale")
+        GIT_REPOSITORY.stage([path.encode(FILESYSTEM_ENCODING)])
+        committer = config.get("git", "committer")
+        GIT_REPOSITORY.do_commit("Commit by Radicale", committer=committer)
 # pylint: enable=W0622