{"thread":{"id":"1860","subject":"What shall we do with the GECOS field again?","startedAt":"2005-09-19T13:48:38Z","lastAt":"2005-09-20T10:31:15Z","messageCount":20,"participants":["Petr Baudis","Kevin O'Riordan","A Large Angry SCM","Matthias Urlichs","Junio C Hamano","Nikolai Weibull","Linus Torvalds","Ryan Anderson"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"8855","messageId":"20050919134838.GC2903@pasky.or.cz","threadId":"1860","inReplyTo":null,"subject":"What shall we do with the GECOS field again?","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-09-19T13:48:38Z","receivedAt":"2005-09-19T13:48:38Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"  Hello,\n\n  after today's another confrontation with angry mob of real-world\nCogito users, I decided to revive the old discussion about what part of\nthe GECOS field should be used to prefill GIT_*_NAME. Linus stated in\n<Pine.LNX.4.58.0504171636590.7211@ppc970.osdl.org> that he does not want\nto cut based on ',', because it might throw away the first name of gecos\nfields in the \"Torvalds, Linus\" name.\n\n  Well, I have to say that from the GECOS fields I saw, none use that\nformat, but a lot of them used the realname,phone,something,phone,...\nformat. The other point is, that users usually do not expect their phone\nnumber to end up in their name information in GIT commits, which results\nin a very unpleasant surprise (doubly so due to the immutable GIT\nnature). Yes, they should check after the first commit if they are happy\nwith everything, and yes, GECOS is world-readable and therefore they\nshouldn't put information they don't want to be public to it. Still they\ndo and I think GIT shouldn't make them unpleasant surprises.\n\n  So my proposal (patch will follow soon) is to cut everything after the\nfirst , or ; from the GECOS field. These are the usual delimiters used\nin the GECOS field, and hopefully this will prevent polluting the\nrealname fields of commit headers with crap and surprising the users.\nIn the (I think rather rare) situation of the \"Baudis, Petr\"-like GECOS\nfields, this will just result in only the surname being in the realname\nfield, which seems to be much less harmful and comparably less evil to\nme. \n\n  Opinions?\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nIf you want the holes in your knowledge showing up try teaching\nsomeone.  -- Alan Cox\n"},{"id":"8857","messageId":"20050919141106.GA31983@compsoc.com","threadId":"1860","inReplyTo":"20050919134838.GC2903@pasky.or.cz","subject":"Re: What shall we do with the GECOS field again?","fromName":"Kevin O'Riordan","fromEmail":"kor@compsoc.com","sentAt":"2005-09-19T14:11:06Z","receivedAt":"2005-09-19T14:11:06Z","isPatch":false,"sender":{"key":"kor@compsoc.com","avatar":null},"body":"\nHi,\n\n> [cutting] based on ',', ... might throw away the first name of gecos\n> fields in the \"Torvalds, Linus\" name.\n...\n> ... a lot of them used the realname,phone,something,phone,... format.\n...\n> So my proposal ... is to cut everything after the first , or ; from\n> the GECOS field.\n...\n> In the ... situation of the \"Baudis, Petr\"-like GECOS fields, this\n> will just result in only the surname being in the realname field,\n> which seems to be much less harmful and comparably less evil to me. \n\nIn case this hasn't been suggested, how about cutting on \",\" but taking\nthe first and second fields instead of just the first, and then\ndiscarding the second if it contains numbers (or is empty, or whatever) ?\n\n-kor\n"},{"id":"8860","messageId":"432ECB92.5000505@gmail.com","threadId":"1860","inReplyTo":"20050919134838.GC2903@pasky.or.cz","subject":"Re: What shall we do with the GECOS field again?","fromName":"A Large Angry SCM","fromEmail":"gitzilla@gmail.com","sentAt":"2005-09-19T14:30:42Z","receivedAt":"2005-09-19T14:30:42Z","isPatch":false,"sender":{"key":"gitzilla@gmail.com","avatar":"https://gravatar.com/avatar/354625c442439908ff3dd99757dee330e29e9df7847472384faf7a00add247fb?d=mp&s=160"},"body":"Petr Baudis wrote:\n>   Hello,\n> \n>   after today's another confrontation with angry mob of real-world\n> Cogito users, I decided to revive the old discussion about what part of\n> the GECOS field should be used to prefill GIT_*_NAME. Linus stated in\n> <Pine.LNX.4.58.0504171636590.7211@ppc970.osdl.org> that he does not want\n> to cut based on ',', because it might throw away the first name of gecos\n> fields in the \"Torvalds, Linus\" name.\n> \n>   Well, I have to say that from the GECOS fields I saw, none use that\n> format, but a lot of them used the realname,phone,something,phone,...\n> format. The other point is, that users usually do not expect their phone\n> number to end up in their name information in GIT commits, which results\n> in a very unpleasant surprise (doubly so due to the immutable GIT\n> nature). Yes, they should check after the first commit if they are happy\n> with everything, and yes, GECOS is world-readable and therefore they\n> shouldn't put information they don't want to be public to it. Still they\n> do and I think GIT shouldn't make them unpleasant surprises.\n> \n>   So my proposal (patch will follow soon) is to cut everything after the\n> first , or ; from the GECOS field. These are the usual delimiters used\n> in the GECOS field, and hopefully this will prevent polluting the\n> realname fields of commit headers with crap and surprising the users.\n> In the (I think rather rare) situation of the \"Baudis, Petr\"-like GECOS\n> fields, this will just result in only the surname being in the realname\n> field, which seems to be much less harmful and comparably less evil to\n> me. \n> \n>   Opinions?\n> \n\nPetr,\n\nYour view of GECOS field contents (formatting) does not match my \nexperience. Many organizations, both large and small, have standards and \nrequirements for the contents and formatting of information in the GECOS \nfield. Saying that the user's name is first and a particular punctuation \ncharacter SHALL be the standard cut point and everyone not happy with \nthe results should explicitly set the Git environment variables is the \nwrong approach.\n\nA better approach is to not use the GECOS field contents at all and \nforce everyone the set the Git environment variables, AND/OR to include \nthe what Git thinks the user's name name might be in the commit message \ntemplate they're editing (like the file list).\n"},{"id":"8863","messageId":"pan.2005.09.19.14.34.50.221824@smurf.noris.de","threadId":"1860","inReplyTo":"20050919141106.GA31983@compsoc.com","subject":"Re: What shall we do with the GECOS field again?","fromName":"Matthias Urlichs","fromEmail":"smurf@smurf.noris.de","sentAt":"2005-09-19T14:34:51Z","receivedAt":"2005-09-19T14:34:51Z","isPatch":false,"sender":{"key":"matthias@urlichs.de","avatar":"https://gravatar.com/avatar/2708905af227313eba6f2b2ae0f7d0259b5ac5d71baef58fe5a13c699ce0bbf0?d=mp&s=160"},"body":"Hi, Kevin O'Riordan wrote:\n\n> In case this hasn't been suggested, how about cutting on \",\" but taking\n> the first and second fields instead of just the first, and then\n> discarding the second if it contains numbers (or is empty, or whatever) ?\n\n... or contains a room name or a street or ...  Bah.\n\n*If* we want heuristics, then I'd check for the presence of more than one\nsemicolon or comma (semicolon to be checked first). Yes => use the part\nbefore the semicolon or comma. No => use the whole field.\n\nHowever, I'd argue that we don't want heuristics, we should cut at the\nfirst delimiter, and anybody who wants to change their commit info gets to\nset an envvar.\n\n-- \nMatthias Urlichs   |   {M:U} IT Design @ m-u-it.de   |  smurf@smurf.noris.de\nDisclaimer: The quote was selected randomly. Really. | http://smurf.noris.de\n - -\nI've got a patent pending on swallowing, oxidation, and chewing gum.\n"},{"id":"8866","messageId":"pan.2005.09.19.14.47.51.811409@smurf.noris.de","threadId":"1860","inReplyTo":"432ECB92.5000505@gmail.com","subject":"Re: What shall we do with the GECOS field again?","fromName":"Matthias Urlichs","fromEmail":"smurf@smurf.noris.de","sentAt":"2005-09-19T14:47:54Z","receivedAt":"2005-09-19T14:47:54Z","isPatch":false,"sender":{"key":"matthias@urlichs.de","avatar":"https://gravatar.com/avatar/2708905af227313eba6f2b2ae0f7d0259b5ac5d71baef58fe5a13c699ce0bbf0?d=mp&s=160"},"body":"Hi, A Large Angry SCM wrote:\n\n> Saying that the user's name is first and a particular punctuation \n> character SHALL be the standard cut point and everyone not happy with \n> the results should explicitly set the Git environment variables is the \n> wrong approach.\n\nI disagree. Standard add-user tools use the gecos field in one of two ways:\n- fullname\n- fullname,and,some,other,cruft\n\nSure, many organizations bake their own, but I'd argue that the majority\ndoesn't.\n\n> AND/OR to include \n> the what Git thinks the user's name name might be in the commit message\n> template they're editing (like the file list).\n\nI think that's a good idea, as long as people are told how to change it\n(i.e., an envvar -- NOT by editing the file).\n\n-- \nMatthias Urlichs   |   {M:U} IT Design @ m-u-it.de   |  smurf@smurf.noris.de\nDisclaimer: The quote was selected randomly. Really. | http://smurf.noris.de\n - -\nOn those occasions when the angel managed to get his mind into the\ntwentieth century, it always gravitated to 1950.\n        -- (Terry Pratchett & Neil Gaiman, Good Omens)\n"},{"id":"8873","messageId":"7vll1trqiq.fsf@assigned-by-dhcp.cox.net","threadId":"1860","inReplyTo":"20050919134838.GC2903@pasky.or.cz","subject":"Re: What shall we do with the GECOS field again?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2005-09-19T16:06:21Z","receivedAt":"2005-09-19T16:06:21Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Petr Baudis <pasky@suse.cz> writes:\n\n>   Well, I have to say that from the GECOS fields I saw, none use that\n> format, but a lot of them used the realname,phone,something,phone,...\n> format.\n\n>   Opinions?\n\nIf the real world GECOS were either only plain and\nname,room,blah,... format as you say and assume I think a\nheuristics like you suggested would be better than the\ncurrent heuristics of assuming everything is a name, but I\nhaven't seen what \"angry mob\" actually has so cannot judge.\n\nWhat do popular MUAs do to come up with the real-name fields?\nDon't they face the same problem, trying to using GECOS?\n"},{"id":"8876","messageId":"20050919161636.GA18320@pasky.or.cz","threadId":"1860","inReplyTo":"7vll1trqiq.fsf@assigned-by-dhcp.cox.net","subject":"Re: What shall we do with the GECOS field again?","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-09-19T16:16:36Z","receivedAt":"2005-09-19T16:16:36Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"Dear diary, on Mon, Sep 19, 2005 at 06:06:21PM CEST, I got a letter\nwhere Junio C Hamano <junkio@cox.net> told me that...\n> Petr Baudis <pasky@suse.cz> writes:\n> \n> >   Well, I have to say that from the GECOS fields I saw, none use that\n> > format, but a lot of them used the realname,phone,something,phone,...\n> > format.\n> \n> >   Opinions?\n> \n> If the real world GECOS were either only plain and\n> name,room,blah,... format as you say and assume I think a\n> heuristics like you suggested would be better than the\n> current heuristics of assuming everything is a name, but I\n> haven't seen what \"angry mob\" actually has so cannot judge.\n\nIt uses the name,room,blah,... format.\n\n> What do popular MUAs do to come up with the real-name fields?\n> Don't they face the same problem, trying to using GECOS?\n\nmutt:\n\n  { \"gecos_mask\",       DT_RX,   R_NONE, UL &GecosMask, UL \"^[^,]*\" },\n\nA regular expression used by mutt to parse the GECOS field of a password\nentry when expanding the alias.  By default the regular expression is\nset to \"^[^,]*\" which will return the string up to the first \",\"\nencountered.  If the GECOS field contains a string like \"lastname,\nfirstname\" then you should set the gecos_mask=\".*\".\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nIf you want the holes in your knowledge showing up try teaching\nsomeone.  -- Alan Cox\n"},{"id":"8877","messageId":"432EE46F.9000806@gmail.com","threadId":"1860","inReplyTo":"pan.2005.09.19.14.47.51.811409@smurf.noris.de","subject":"Re: What shall we do with the GECOS field again?","fromName":"A Large Angry SCM","fromEmail":"gitzilla@gmail.com","sentAt":"2005-09-19T16:16:47Z","receivedAt":"2005-09-19T16:16:47Z","isPatch":false,"sender":{"key":"gitzilla@gmail.com","avatar":"https://gravatar.com/avatar/354625c442439908ff3dd99757dee330e29e9df7847472384faf7a00add247fb?d=mp&s=160"},"body":"Matthias Urlichs wrote:\n> Hi, A Large Angry SCM wrote:\n> \n>>Saying that the user's name is first and a particular punctuation \n>>character SHALL be the standard cut point and everyone not happy with \n>>the results should explicitly set the Git environment variables is the \n>>wrong approach.\n> \n> I disagree. Standard add-user tools use the gecos field in one of two ways:\n\ns/two/many/\n\n> - fullname\n> - fullname,and,some,other,cruft\n- title,name and other stuff\n- department, name and other stuff\n- other punctuation, etc.\n\n> \n> Sure, many organizations bake their own, but I'd argue that the majority\n> doesn't.\n\nThe point is we should not be telling them what and how to put stuff in \nthe GECOS field.\n\n>>AND/OR to include \n>>the what Git thinks the user's name name might be in the commit message\n>>template they're editing (like the file list).\n> \n> I think that's a good idea, as long as people are told how to change it\n> (i.e., an envvar -- NOT by editing the file).\n\nYes.\n"},{"id":"8878","messageId":"20050919163219.GA8862@puritan.pnetwork","threadId":"1860","inReplyTo":"20050919134838.GC2903@pasky.or.cz","subject":"Re: What shall we do with the GECOS field again?","fromName":"Nikolai Weibull","fromEmail":"mailing-lists.git@rawuncut.elitemail.org","sentAt":"2005-09-19T16:32:19Z","receivedAt":"2005-09-19T16:32:19Z","isPatch":false,"sender":{"key":"mailing-lists.git@rawuncut.elitemail.org","avatar":null},"body":"Petr Baudis wrote:\n\n>   So my proposal (patch will follow soon) is to cut everything after the\n> first , or ; from the GECOS field. These are the usual delimiters used\n> in the GECOS field, and hopefully this will prevent polluting the\n> realname fields of commit headers with crap and surprising the users.\n> In the (I think rather rare) situation of the \"Baudis, Petr\"-like GECOS\n> fields, this will just result in only the surname being in the realname\n> field, which seems to be much less harmful and comparably less evil to\n> me. \n\nIf we stop using GECOS, then can we please start using $EMAIL (or\nperhaps use it regardless of whether we use GECOS or not)?  A lot of\napplications seem to look for $EMAIL and I think that it's universal\nenough for git to use it as well.  To me it seems that both\nGIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, GIT_COMMITTER_NAME, and\nGIT_COMMITTER_EMAIL can use it, as I set $EMAIL as\n\nEMAIL=\"Nikolai Weibull <something@something.something>\"\n\nPerhaps I should provide a patch instead of just putting out requests?,\n        nikolai\n\n-- \nNikolai Weibull: now available free of charge at http://bitwi.se/!\nBorn in Chicago, IL USA; currently residing in Gothenburg, Sweden.\nmain(){printf(&linux[\"\\021%six\\012\\0\"],(linux)[\"have\"]+\"fun\"-97);}\n"},{"id":"8879","messageId":"Pine.LNX.4.58.0509190924280.9106@g5.osdl.org","threadId":"1860","inReplyTo":"7vll1trqiq.fsf@assigned-by-dhcp.cox.net","subject":"Re: What shall we do with the GECOS field again?","fromName":"Linus Torvalds","fromEmail":"torvalds@osdl.org","sentAt":"2005-09-19T16:32:38Z","receivedAt":"2005-09-19T16:32:38Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Mon, 19 Sep 2005, Junio C Hamano wrote:\n> \n> What do popular MUAs do to come up with the real-name fields?\n> Don't they face the same problem, trying to using GECOS?\n\nSince I have my pine installed in git, I could git grep it. It says\n\n    /* full name is all chars up to first ',' (or whole gcos, if no ',') */\n    /* replace any & with logname in upper case */\n\nI don't know why the & rule, but there you have it..\n\nThe Perl User::pwent module seems to agree, btw (also about '&'):\n\n   \"Interpretation of the gecos field varies between systems, but\n    traditionally holds 4 comma-separated fields containing the user's\n    full name, office location, work phone number, and home phone number.  \n\n    An & in the gecos field should be replaced by the user's properly\n    capitalized login name.\"\n\nI still worry about names of the type \"Torvalds, Linus\", but maybe that's \njust not an issue.\n\n\t\tLinus\n"},{"id":"8880","messageId":"20050919163439.GB18320@pasky.or.cz","threadId":"1860","inReplyTo":"432EE46F.9000806@gmail.com","subject":"Re: What shall we do with the GECOS field again?","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2005-09-19T16:34:39Z","receivedAt":"2005-09-19T16:34:39Z","isPatch":false,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"Dear diary, on Mon, Sep 19, 2005 at 06:16:47PM CEST, I got a letter\nwhere A Large Angry SCM <gitzilla@gmail.com> told me that...\n> >Sure, many organizations bake their own, but I'd argue that the majority\n> >doesn't.\n> \n> The point is we should not be telling them what and how to put stuff in \n> the GECOS field.\n\nThe point is that our guess should be something which works for the most\npeople.\n\n> >>AND/OR to include \n> >>the what Git thinks the user's name name might be in the commit message\n> >>template they're editing (like the file list).\n> >\n> >I think that's a good idea, as long as people are told how to change it\n> >(i.e., an envvar -- NOT by editing the file).\n> \n> Yes.\n\nI'll change cg-commit to always include the name/email fields in its\ntemplate. I think it's verbose enough as it is now, though, and I don't\nwant it to bloat it with more generic help text. I've expanded the\ndocumentation of cg-commit on the GIT_ variables and that ought to be\nenough. :-)\n\n-- \n\t\t\t\tPetr \"Pasky\" Baudis\nStuff: http://pasky.or.cz/\nIf you want the holes in your knowledge showing up try teaching\nsomeone.  -- Alan Cox\n"},{"id":"8882","messageId":"7vd5n5q9xu.fsf@assigned-by-dhcp.cox.net","threadId":"1860","inReplyTo":"Pine.LNX.4.58.0509190924280.9106@g5.osdl.org","subject":"Re: What shall we do with the GECOS field again?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2005-09-19T16:49:49Z","receivedAt":"2005-09-19T16:49:49Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Linus Torvalds <torvalds@osdl.org> writes:\n\n> The Perl User::pwent module seems to agree, btw (also about '&'):\n>\n>    \"Interpretation of the gecos field varies between systems, but\n>     traditionally holds 4 comma-separated fields containing the user's\n>     full name, office location, work phone number, and home phone number.  \n>\n>     An & in the gecos field should be replaced by the user's properly\n>     capitalized login name.\"\n\nI vaguelly recall seeing that & somewhere and wondering what\nthey do with mcdonalds ;-)\n\n> I still worry about names of the type \"Torvalds, Linus\", but maybe that's \n> just not an issue.\n\nDoes not appear to be.  So I'd vote for us doing the \"cut at\nfirst comma, substitute & with toupper(login[0])+login[1..]\".\n"},{"id":"8884","messageId":"Pine.LNX.4.58.0509190957090.9106@g5.osdl.org","threadId":"1860","inReplyTo":"7vd5n5q9xu.fsf@assigned-by-dhcp.cox.net","subject":"Re: What shall we do with the GECOS field again?","fromName":"Linus Torvalds","fromEmail":"torvalds@osdl.org","sentAt":"2005-09-19T16:59:42Z","receivedAt":"2005-09-19T16:59:42Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Mon, 19 Sep 2005, Junio C Hamano wrote:\n> \n> I vaguelly recall seeing that & somewhere and wondering what\n> they do with mcdonalds ;-)\n\nPine uppercases _all_ of the login field. So mcdonalds would be MCDONALDS. \nWhich isn't much better than Mcdonalds, but might explain people out \nthere with all-upcase last names.\n\n\t\tLinus\n"},{"id":"8903","messageId":"20050919212113.GB8862@puritan.pnetwork","threadId":"1860","inReplyTo":"20050919163219.GA8862@puritan.pnetwork","subject":"Re: What shall we do with the GECOS field again?","fromName":"Nikolai Weibull","fromEmail":"mailing-lists.git@rawuncut.elitemail.org","sentAt":"2005-09-19T21:21:13Z","receivedAt":"2005-09-19T21:21:13Z","isPatch":false,"sender":{"key":"mailing-lists.git@rawuncut.elitemail.org","avatar":null},"body":"Nikolai Weibull wrote:\n\n> If we stop using GECOS, then can we please start using $EMAIL (or\n> perhaps use it regardless of whether we use GECOS or not)?  A lot of\n> applications seem to look for $EMAIL and I think that it's universal\n> enough for git to use it as well.  To me it seems that both\n> GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, GIT_COMMITTER_NAME, and\n> GIT_COMMITTER_EMAIL can use it, as I set $EMAIL as\n> \n> EMAIL=\"Nikolai Weibull <something@something.something>\"\n> \n> Perhaps I should provide a patch instead of just putting out requests?,\n\nPerhaps something like the following patch will do?,\n        nikolai\n\n---\ndiff --git a/ident.c b/ident.c\n--- a/ident.c\n+++ b/ident.c\n@@ -127,18 +127,22 @@ char *get_ident(const char *name, const \n \tchar date[50];\n \tint i;\n \n-\tif (!name)\n-\t\tname = real_name;\n-\tif (!email)\n-\t\temail = real_email;\n+\tif (!name && !email && getenv(\"EMAIL\")) {\n+\t\ti = copy(buffer, sizeof(buffer), 0, getenv(\"EMAIL\"));\n+\t\ti = add_raw(buffer, sizeof(buffer), i, \" \");\n+\t} else {\n+\t\tif (!name)\n+\t\t\tname = real_name;\n+\t\tif (!email)\n+\t\t\temail = real_email;\n+\t\ti = copy(buffer, sizeof(buffer), 0, name);\n+\t\ti = add_raw(buffer, sizeof(buffer), i, \" <\");\n+\t\ti = copy(buffer, sizeof(buffer), i, email);\n+\t\ti = add_raw(buffer, sizeof(buffer), i, \"> \");\n+\t}\n \tstrcpy(date, real_date);\n \tif (date_str)\n \t\tparse_date(date_str, date, sizeof(date));\n-\n-\ti = copy(buffer, sizeof(buffer), 0, name);\n-\ti = add_raw(buffer, sizeof(buffer), i, \" <\");\n-\ti = copy(buffer, sizeof(buffer), i, email);\n-\ti = add_raw(buffer, sizeof(buffer), i, \"> \");\n \ti = copy(buffer, sizeof(buffer), i, date);\n \tif (i >= sizeof(buffer))\n \t\tdie(\"Impossibly long personal identifier\");\n\n-- \nNikolai Weibull: now available free of charge at http://bitwi.se/!\nBorn in Chicago, IL USA; currently residing in Gothenburg, Sweden.\nmain(){printf(&linux[\"\\021%six\\012\\0\"],(linux)[\"have\"]+\"fun\"-97);}\n"},{"id":"8942","messageId":"7v8xxsfqrw.fsf@assigned-by-dhcp.cox.net","threadId":"1860","inReplyTo":"20050919163219.GA8862@puritan.pnetwork","subject":"Re: What shall we do with the GECOS field again?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2005-09-20T01:53:55Z","receivedAt":"2005-09-20T01:53:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Nikolai Weibull <mailing-lists.git@rawuncut.elitemail.org> writes:\n\n> If we stop using GECOS, then can we please start using $EMAIL (or\n> perhaps use it regardless of whether we use GECOS or not)?  A lot of\n> applications seem to look for $EMAIL and I think that it's universal\n> enough for git to use it as well.  To me it seems that both\n> GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, GIT_COMMITTER_NAME, and\n> GIT_COMMITTER_EMAIL can use it,...\n\nI am not convinced $EMAIL is used as widely as you claim above\n(could you give a list of applications please?), but if it is\nthat sounds like a sensible idea.\n"},{"id":"8961","messageId":"20050920040236.GB6383@mythryan2.michonline.com","threadId":"1860","inReplyTo":"Pine.LNX.4.58.0509190957090.9106@g5.osdl.org","subject":"Re: What shall we do with the GECOS field again?","fromName":"Ryan Anderson","fromEmail":"ryan@michonline.com","sentAt":"2005-09-20T04:02:36Z","receivedAt":"2005-09-20T04:02:36Z","isPatch":false,"sender":{"key":"ryan@michonline.com","avatar":null},"body":"On Mon, Sep 19, 2005 at 09:59:42AM -0700, Linus Torvalds wrote:\n> On Mon, 19 Sep 2005, Junio C Hamano wrote:\n> > \n> > I vaguelly recall seeing that & somewhere and wondering what\n> > they do with mcdonalds ;-)\n> \n> Pine uppercases _all_ of the login field. So mcdonalds would be MCDONALDS. \n> Which isn't much better than Mcdonalds, but might explain people out \n> there with all-upcase last names.\n\nI think that's more of an Asian response to the confusion westerners\nhave with \"family name\" vs \"given name\" and \"first name\" vs \"last name\".\nThe simple solution is to convert the \"family\" name to all upper case and\nthen whatever order is used is no longer ambiguous (assuming you know\nthe convention).\n\nThat, at least, is my conclusion from seeing Japanese business cards.\n\nI could be totally wrong, of course.\n\n-- \n\nRyan Anderson\n  sometimes Pug Majere\n"},{"id":"8963","messageId":"Pine.LNX.4.58.0509192110580.2553@g5.osdl.org","threadId":"1860","inReplyTo":"20050920040236.GB6383@mythryan2.michonline.com","subject":"Re: What shall we do with the GECOS field again?","fromName":"Linus Torvalds","fromEmail":"torvalds@osdl.org","sentAt":"2005-09-20T04:13:35Z","receivedAt":"2005-09-20T04:13:35Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Tue, 20 Sep 2005, Ryan Anderson wrote:\n\n> On Mon, Sep 19, 2005 at 09:59:42AM -0700, Linus Torvalds wrote:\n>\n> > Pine uppercases _all_ of the login field. So mcdonalds would be MCDONALDS. \n> > Which isn't much better than Mcdonalds, but might explain people out \n> > there with all-upcase last names.\n> \n> I think that's more of an Asian response to the confusion westerners\n> have with \"family name\" vs \"given name\" and \"first name\" vs \"last name\".\n\nI'd believe you, except I have this clear memory of it being pretty common\nin France too.\n\nI remember it vividly from the original extfs author: Remy CARD. And I \ndon't think that one was the odd man out.\n\n\t\t\tLinus\n"},{"id":"8976","messageId":"7vzmq86ykl.fsf@assigned-by-dhcp.cox.net","threadId":"1860","inReplyTo":"7vd5n5q9xu.fsf@assigned-by-dhcp.cox.net","subject":"Re: What shall we do with the GECOS field again?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2005-09-20T06:30:18Z","receivedAt":"2005-09-20T06:30:18Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <junkio@cox.net> writes:\n\n> Does not appear to be.  So I'd vote for us doing the \"cut at\n> first comma, substitute & with toupper(login[0])+login[1..]\".\n\nI've done this in the proposed updates branch.\n"},{"id":"8978","messageId":"7v8xxs5i5x.fsf@assigned-by-dhcp.cox.net","threadId":"1860","inReplyTo":"20050919212113.GB8862@puritan.pnetwork","subject":"Re: What shall we do with the GECOS field again?","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2005-09-20T07:10:02Z","receivedAt":"2005-09-20T07:10:02Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Nikolai Weibull <mailing-lists.git@rawuncut.elitemail.org> writes:\n\n> Perhaps something like the following patch will do?,\n>         nikolai\n\nThanks for the patch.  Some nits and requests.\n\n(1) Proper commit log message here, with your Signed-off-by line.\n\n> +\tif (!name && !email && getenv(\"EMAIL\")) {\n> +\t\ti = copy(buffer, sizeof(buffer), 0, getenv(\"EMAIL\"));\n> +\t\ti = add_raw(buffer, sizeof(buffer), i, \" \");\n\n(2) Perhaps have `#define IDENT_ENVIRONMENT \"EMAIL\"' in cache.h\n    and use it, like we do for other environment variables.\n\n(3) Probably you need to validate what is in $EMAIL before\n    trusting it, so that we can guard ourselves from EMAIL in a\n    format that is suitable for other applications but not for\n    us?  If you find that the value does not look good, just\n    refuse it with an error message to set more specific\n    GIT_{AUTHOR,COMMITTER}_* environment variables.\n\n    Unlike GIT_* environment variables, EMAIL is a convention we\n    did not invent ourselves.  We cannot expect it to always be\n    formatted to our liking, and more importantly, we should not\n    demand the user to set it to the way we like -- the other\n    application the user originally set EMAIL for might not like\n    what we want.\n"},{"id":"8983","messageId":"20050920103115.GA8979@puritan.pnetwork","threadId":"1860","inReplyTo":"7v8xxsfqrw.fsf@assigned-by-dhcp.cox.net","subject":"Re: What shall we do with the GECOS field again?","fromName":"Nikolai Weibull","fromEmail":"mailing-lists.git@rawuncut.elitemail.org","sentAt":"2005-09-20T10:31:15Z","receivedAt":"2005-09-20T10:31:15Z","isPatch":false,"sender":{"key":"mailing-lists.git@rawuncut.elitemail.org","avatar":null},"body":"Junio C Hamano wrote:\n\n> Nikolai Weibull <mailing-lists.git@rawuncut.elitemail.org> writes:\n\n> > If we stop using GECOS, then can we please start using $EMAIL (or\n> > perhaps use it regardless of whether we use GECOS or not)?  A lot of\n> > applications seem to look for $EMAIL and I think that it's universal\n> > enough for git to use it as well.  To me it seems that both\n> > GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, GIT_COMMITTER_NAME, and\n> > GIT_COMMITTER_EMAIL can use it,...\n\n> I am not convinced $EMAIL is used as widely as you claim above (could\n> you give a list of applications please?), but if it is that sounds\n> like a sensible idea.\n\nI was sadly mistaken.  It doesn't seem to be so well-used after all.\nHere's a list of applications that use it:\n\n* mutt (the only one that really counts)\n* darcs (which also uses DARCS_EMAIL)\n* various debian utilities (who cares)\n* Vim's changelog package (which I have written, so that doesn't count)\n\nQuite a sad list, so I suppose that there's really no point in it...,\n        nikolai\n\n-- \nNikolai Weibull: now available free of charge at http://bitwi.se/!\nBorn in Chicago, IL USA; currently residing in Gothenburg, Sweden.\nmain(){printf(&linux[\"\\021%six\\012\\0\"],(linux)[\"have\"]+\"fun\"-97);}\n"}]}