On December 9, 2024 11:15 AM, Usman Akinyemi wrote: >Thank you to everyone who participated in this discussion. I am Usman Akinyemi, >one of the two selected Outreachy interns. I have been selected to work on the >project “Finish adding an 'os-version' >capability to Git protocol v2,” which involves implementing the features discussed in >this thread. > >You can find the full discussion about my proposal for this project >here: https://public-inbox.org/git/CAPSxiM_rvt-tkQjHYmYNv- >Wyr0=X4+123dt=vZKtc++PGRjQMQ@xxxxxxxxxxxxxx/ > >In summary, this is an outline of my proposal and what I plan to implement, which >has been influenced by the discussion in this thread: > >- Send only the OS name by default while allowing a knob (custom >configuration) to specify other information (e.g., version details) and disable >sending OS names and any other information entirely. > >After discussing with my mentor, @Christian, we think that adding this as a new >capability (os-version) is a better option compared to appending it to the user- >agent. This ensures that we do not disrupt people's scripts that collect statistics >from the user-agent or perform other actions. > >Intentions of implementing this project: >- For statistical purposes. >- Most importantly, for security and debugging purposes. This will allow servers to >instruct users to upgrade or perform specific debugging actions when necessary. > >For example:- >A server seeing that a client is using an old Git version that has security issues on >one platform, like MacOS, could check if the user is indeed running MacOS before >sending it a message to upgrade. > >Also a server seeing a client that could benefit from an upgrade, for example for >performance reasons, could better customize the message it sends to the client to >nudge it to upgrade. If the client is on Windows for example the server could send it >a link to https://gitforwindows.org/ as part of the message. > >Please, if anyone has any suggestion or addition or concerns that might, kindly add. >Thank you very much. Is this build-time or runtime? If run-time, please make sure the code is portable or provides hooks so that non-linux systems can contribute content. Thanks, Randall -- Brief whoami: NonStop&UNIX developer since approximately UNIX(421664400) NonStop(211288444200000000) -- In real life, I talk too much.