99 lines
4.2 KiB
Markdown
99 lines
4.2 KiB
Markdown
I'd strongly recommend this modification to ikiwiki. Any particular limitations that anyone can think of?
|
|
|
|
I might even have a try at this patch, though I'd have to hack the user preferences page to include author name...
|
|
|
|
As to the question of whether the committer was the 'script' or the wiki editor... I'm not sure. Marking it as the script somehow (`ikiwiki-cgi <ikiwiki@sitename>`)? seems to make sense and would make it easier to manage.
|
|
|
|
[[harningt]]
|
|
|
|
I've been thinking a bit about the GIT attribution in ikiwiki...
|
|
|
|
If no email set, I think "$USERNAME" is reasonable... no point in the
|
|
'<>' causing clutter.
|
|
>> **adjustement wrt comments**: leave the '<>' in due to requirements in git
|
|
|
|
If no username set... then something like '@[IPADDR]' makes sense...
|
|
(not in email brackets).
|
|
|
|
> Why not put it in email brackets? --[[Joey]]
|
|
|
|
In the case of OpenID login.. I think that's a special case... I don't
|
|
think attempting to munge something meaningful out of the OpenID makes
|
|
sense... but I think some massaging might need to be done.
|
|
|
|
Ex: I've noticed in the current mode where logging in w/
|
|
harningt.eharning.us/ shows up in the logs w/o HTTP and if I login w/
|
|
http://harningt.eharning.us/ is shows up w/ the http... causing some
|
|
inconsistency. I think it oughtta make sure that it has the properly
|
|
discovered, canonicalized form (ex: if there's a redirect to another
|
|
site (harningt.eharning.us -> www.eharning.us) then technically the
|
|
target site is the 'real' openid (at least according to how most OpenID
|
|
RPs take it).
|
|
|
|
...
|
|
|
|
For OpenID edits, I think there should be a way to tell it what
|
|
username to show in the preferences dialog (so you can have a 'normal'
|
|
$USER <$EMAIL> setup.) This could by default be filled in w/ sreg
|
|
nickname value (as well as email for that matter)...
|
|
|
|
To convey the openid used to make the edit, I think it would be
|
|
important that some sort of footer line along the lines of the
|
|
Signed-off: $USER <$EMAIL> conventions I've seen.
|
|
|
|
Perhaps an OpenID: $OPENID_URL would make sense. This could help w/
|
|
making sure that no one irrefutably spoofs a post by someone (since w/
|
|
the setup where email and effective username are configurable, there's
|
|
no determination of uniqueness)
|
|
>> **adj re git req**: "$OPENID_URL <>"
|
|
|
|
[[harningt]]
|
|
|
|
[[madduck]]: git requires `Name <Email@address>` format, as far as I know.
|
|
|
|
> Yes, it does:
|
|
>
|
|
> joey@kodama:~/tmp/foo/bar>git commit --author "foo"
|
|
> fatal: malformed --author parameter
|
|
>
|
|
> It seems to be happy with anything of the form "foo <foo>" -- doesn't seem to
|
|
> do any kind of strict checking. Even "http://joey.kitenet.net <>" will be
|
|
> accepted. --[[Joey]]
|
|
>>
|
|
>>Sounds good to me,
|
|
>>
|
|
>> --[[harningt]]
|
|
|
|
> I think the thing to do is, as Josh suggested originally, use
|
|
> GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL. Note that setting these
|
|
> individually is best, so git can independently validate/sanitize both
|
|
> (which it does do somewhat). Always put the username/openid/IP in
|
|
> GIT_AUTHOR_NAME; if the user has configured an email address,
|
|
> GIT_AUTHOR_EMAIL can also be set.
|
|
>
|
|
> There is one thing yet to be solved, and that is how to tell the
|
|
> difference between a web commit by 'Joey Hess <joey@kitenet.net>',
|
|
> and a git commit by the same. I think we do want to differentiate these,
|
|
> and the best way to do it seems to be to add a line to the end of the
|
|
> commit message. Something like: "\n\nWeb-commit: true"
|
|
>
|
|
> For backwards compatability, the code that parses the current stuff needs
|
|
> to be left in. But it will need to take care to only parse that if the
|
|
> commit isn't flagged as a web commit! Else web committers could forge
|
|
> commits from others. --[[Joey]]
|
|
>
|
|
> BTW, I decided not to use the user's email address in the commit, because
|
|
> then the email becomes part of project history, and you don't really
|
|
> expect that to happen when you give your email address on signup to a web
|
|
> site.
|
|
>
|
|
> The problem with leaving the email empty is that it confuses some things
|
|
> that try to parse it, including:
|
|
> * cia (wants a username in there):
|
|
> * git pull --rebase (?)
|
|
> * github pushes to twitter ;-)
|
|
>
|
|
> So while I tried that way at first, I'm now leaning toward encoding the
|
|
> username in the email address. Like "user <user@web>", or
|
|
> "joey <http://joey.kitenet.net/@web>".
|