git: Record the username from openid in the git author email. (This avoids display...
authorJoey Hess <joey@kitenet.net>
Wed, 23 Jun 2010 23:44:41 +0000 (19:44 -0400)
committerJoey Hess <joey@kitenet.net>
Wed, 23 Jun 2010 23:44:41 +0000 (19:44 -0400)
IkiWiki/Plugin/git.pm
debian/changelog
doc/rcs.mdwn
doc/todo/Separate_OpenIDs_and_usernames.mdwn

index 85368606e12e52e6ebcbdb85cf687ec54af5e601..3e289e0c3f630adb9f0284f81f7233338fb70e38 100644 (file)
@@ -506,6 +506,11 @@ sub rcs_commit_staged (@) {
                if (defined $u) {
                        $u=encode_utf8($u);
                        $ENV{GIT_AUTHOR_NAME}=$u;
+               }
+               if (defined $params{session}->param("username")) {
+                       $u=encode_utf8($params{session}->param("username"));
+               }
+               if (defined $u) {
                        $ENV{GIT_AUTHOR_EMAIL}="$u\@web";
                }
        }
index 88ed3a90bfb2cbb26dde366cae7a7ff6f1b4b44b..dfa862e5b65f785bd9a6f34f5016a78e24ad2ead 100644 (file)
@@ -5,6 +5,8 @@ ikiwiki (3.20100624) UNRELEASED; urgency=low
     parameters.
   * Fixed some confusion and bugginess about whether
     rcs_getctime/rcs_getmtime were passed absolute or relative filenames.
+  * git: Record the username from openid in the git author email.
+    (This avoids display of ugly google openids.)
 
  -- Joey Hess <joeyh@debian.org>  Wed, 23 Jun 2010 15:30:04 -0400
 
index 248d930245ea207078485168fc795f48077a0e0f..83c6910d07252f59c98cf6d15bbd74f0139cfb61 100644 (file)
@@ -10,13 +10,8 @@ generic that it can be adapted to work with many systems by writing a
 
 While all supported revision control systems work well enough for basic
 use, some advanced or special features are not supported in all of them.
-Lack of support in [[ikiwiki-makerepo]] or auto.setup can make it harder to
-set up a wiki using that revision control system. The `rcs_commit_staged`
-hook is needed to use [[attachments|plugins/attachment]] or
-[[plugins/comments]]. `rcs_getctime` may be implemented in a fast way
-(ie, one log lookup for all files), or very slowly (one lookup per file).
-And so on. The table below summarises this for each revision control
-system and links to more information about each.
+The table below summarises this for each revision control system and
+links to more information about each.
 
 [[!table data="""
 feature             |[[git]]|[[svn]]|[[bzr]]   |[[monotone]]|[[mercurial]]|[[darcs]]|[[tla]]   |[[cvs]]
@@ -30,7 +25,18 @@ auto.setup          |yes    |yes    |incomplete|yes         |incomplete   |yes
 `rcs_getmtime`      |fast   |slow   |slow      |no          |no           |no       |no        |no
 anonymous push      |yes    |no     |no        |no          |no           |no       |no        |no
 conflict handling   |yes    |yes    |yes       |buggy       |yes          |yes      |yes       |yes
+openid username     |yes    |no     |no        |no          |no           |no       |no        |no
 """]]
 
+Notes:
+
+* Lack of support in [[ikiwiki-makerepo]] or auto.setup can make it harder to
+  set up a wiki using that revision control system.
+* The `rcs_commit_staged` hook is needed to use [[attachments|plugins/attachment]]
+  or [[plugins/comments]].
+* `rcs_getctime` and `rcs_getmtime` may be implemented in a fast way (ie, one log
+  lookup for all files), or very slowly (one lookup per file).
+* Openid username support allows avoiding display of Google's ugly openids.
+
 There is a page with [[details]] about how the different systems work with
 ikiwiki, for the curious.
index fcdb49f6d2c641a92e2742367750c36f651bf74c..60b7b6c61eacc2e2dd71886a24c0a355a2e7421b 100644 (file)
@@ -38,10 +38,13 @@ A slightly more complex next step would be to request sreg from the provider and
 > * Change `rcs_commit` and `rcs_commit_staged` to take a session object,
 >   instead of just a userid. (For back-compat, if the parameter is 
 >   not an object, it's a userid.) Bump ikiwiki plugin interface version.
+>   (done)
 > * Modify all RCS plugins to include the session username somewhere
 >   in the commit, and parse it back out in `rcs_recentchanges`.
+>   (done for git only so far)
 > * Modify recentchanges plugin to display the username instead of the
 >   `openiduser`.
+>   (done)
 > * Modify comment plugin to put the session username in the comment
 >   template instead of the `openiduser`.