threads / discuss / 36103

Potential GSOC microproject idea

Subject: Potential GSOC microproject idea

## tl;dr

2 messages between Mar 9, 2014 and Mar 10, 2014.

replies: 1people: 2as markdown or json

Kyle J. McKay· Mar 9, 2014, 01:54 UTC · lore
On Mar 3, 2014, at 23:58, Michael Haggerty wrote:
> list
> regulars should FEEL ENCOURAGED to submit microprojects to add to the
> list.  (Either submit them as a pull request to the GitHub repository
> that contains the text [1] or to the mailing list with CC to me.)
Potential idea for a microproject:
Add a new config setting:
   user.allowImplicitIdentity
     Defaults to true.
     If user.name and GIT_COMMITTER_NAME are unset or user.email and
     GIT_COMMITTER_EMAIL and EMAIL are unset, an implicit value is
     substituted for one or both of user.name and user.email.  If
     an automatically generated value is used for both name and email
     a warning "Your name and email address were configured  
automatically..."
     is displayed.  If set to false, no or never, instead of a warning,
     an error is generated and the operation fails:
         *** Please tell me who you are.
         Run
           git config --global user.email "you@example.com"
           git config --global user.name "Your Name"
         to set your account's default identity.
         Omit --global to set the identity only in this repository.
         fatal: implicit user identity not allowed
     the advice portion can be suppressed by setting  
advice.implicitIdentity to false,
     but not the "fatal: implicit user identity not allowed" part.

Note that if "git config --system --bool user.allowImplicitIdentity false" is in effect, it should still be possible to clone (ref logs may be updated, but they should be allowed to use an implicit identity). In other words user.allowImplicitIdentity=false should only inhibit writing any new commit/tag objects that need the current user's name and email when it has not been explicitly provided.

I'm not sure how micro this is. :) I do think the amount of code involved is rather small though. Support for something like this has popped up on the list before. Perhaps "user.allowAutomaticIdentity" and "advice.automaticIdentity" would be better config names.

--Kyle
Michael Haggerty· Mar 10, 2014, 08:35 UTC · re: Kyle J. McKay · lore

Re: Potential GSOC microproject idea

On 03/09/2014 02:54 AM, Kyle J. McKay wrote:
Show 48 quoted lines
> On Mar 3, 2014, at 23:58, Michael Haggerty wrote:
>> list
>> regulars should FEEL ENCOURAGED to submit microprojects to add to the
>> list.  (Either submit them as a pull request to the GitHub repository
>> that contains the text [1] or to the mailing list with CC to me.)
> 
> Potential idea for a microproject:
> 
> Add a new config setting:
> 
>   user.allowImplicitIdentity
>     Defaults to true.
>     If user.name and GIT_COMMITTER_NAME are unset or user.email and
>     GIT_COMMITTER_EMAIL and EMAIL are unset, an implicit value is
>     substituted for one or both of user.name and user.email.  If
>     an automatically generated value is used for both name and email
>     a warning "Your name and email address were configured
> automatically..."
>     is displayed.  If set to false, no or never, instead of a warning,
>     an error is generated and the operation fails:
> 
>         *** Please tell me who you are.
> 
>         Run
> 
>           git config --global user.email "you@example.com"
>           git config --global user.name "Your Name"
> 
>         to set your account's default identity.
>         Omit --global to set the identity only in this repository.
> 
>         fatal: implicit user identity not allowed
> 
>     the advice portion can be suppressed by setting
> advice.implicitIdentity to false,
>     but not the "fatal: implicit user identity not allowed" part.
> 
> Note that if "git config --system --bool user.allowImplicitIdentity
> false" is in effect, it should still be possible to clone (ref logs may
> be updated, but they should be allowed to use an implicit identity).  In
> other words user.allowImplicitIdentity=false should only inhibit writing
> any new commit/tag objects that need the current user's name and email
> when it has not been explicitly provided.
> 
> I'm not sure how micro this is.  :)  I do think the amount of code
> involved is rather small though.  Support for something like this has
> popped up on the list before.  Perhaps "user.allowAutomaticIdentity" and
> "advice.automaticIdentity" would be better config names.

This would be much more work than the other microprojects. The ones that I wrote were mostly one- or few-line changes that didn't require the student to learn a lot of context. (And most students struggled mightily with even those.) So I'm not sure this task is suitable.

Other feedback welcome. We're pretty much out of microprojects, which is possibly even worse than having difficult ones.

Michael
-- 
Michael Haggerty
mhagger@alum.mit.edu
http://softwareswirl.blogspot.com/

← back to recent threads