RFC: support for multiple identities (name, email, ...)

Friedrich W. H. Kossebau kossebau at kde.org
Fri Jan 6 15:48:17 UTC 2017


Hi,

PROBLEM

when it comes to copyright notions in code/files and authorship/committer id 
in version control systems, the name and the contact information, like email 
address, can be a few different ones for oneself. E.g. when working in 
different FLOSS projects, with each email address dedicated to the project, or 
when working on a FLOSS project both in name of an employer, but also 
privately in free times.

Currently KDevelop is hard-coded to use whatever is set for the default 
profile of KEMailSettings in file templates, the only place which I found to 
use authorship metadata. KMail seems to be feeding KEMailSettings, but 
otherwise there might be no data in there. So the developer has to manually 
complete the fields in the generated code.

I would like to improve things here, as I like to work with templates and 
having to manually fix copyright/contact information all the time is annoying, 
or resulted in unwanted info leaks when forgotten.


SOLUTION

KDevelop could know about the concept of author identity, allow to have 
multiple identities available to select from for a project, and allow plugins 
to make use of identity details e.g. on doing VCS commits or generating code.

I started a planning page for this feature at
	https://community.kde.org/KDevelop/AuthorIdentities

For a start I am interested in your user stories, to know what might be nice 
to have support for when it comes to author identities.

Please add the things you would like to see supported (soon or one day) to
	https://community.kde.org/KDevelop/AuthorIdentities#User_stories

Other contributions to the page are welcome, too. It is a wiki :)


CURRENT STATE

Next to collecting user stories for designing the feature (and its multiple 
enhancement steps), for learning how to implement this and what works out, 
locally I have some first experimental code for editing different author 
identites in the KDevelop settings. Right now I am looking into how to access 
and use that data from the from-template-generator plugins and how to have 
per-project selection of an identity.


What do you think? Anything related which is worth looking into for this? 
Other comments?
(Be aware, "Do not get in the way" is first user story :) )

Cheers
Friedrich

PS: Yes, support for Remote Building I once planned to work on is still a 
sleeping thing, hope to get back to it one day. For now this here is way more 
simple and should at least help to get a better understanding of KDevelop code 
for me, so it can be considered a tiny step also for Remote Building support 
;)


More information about the KDevelop-devel mailing list