[squeak-dev] The Trunk: System-mt.1262.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Dec 2 15:13:09 UTC 2021


Marcel Taeumel uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-mt.1262.mcz

==================== Summary ====================

Name: System-mt.1262
Author: mt
Time: 2 December 2021, 4:13:05.311715 pm
UUID: 777eacd2-3987-4b40-9431-85e1eb125748
Ancestors: System-dtl.1261

When the system asks you for your author intials, cross-check against the list of known contributors. If there is a match, greet the user and ask if the match is correct. Encourage the user to enter "firstname.lastname" as author initials to avoid conflicts with older initials.

Thanks to Christoph (ct) for the idea!

Try to derive #authorName from #authorInitials and vice versa using the list of known contributors.

Minor tweak of the text layout for the version's alpha-warning text.

=============== Diff against System-dtl.1261 ===============

Item was changed:
  ----- Method: SystemVersion>>description (in category 'printing') -----
  description
  
+ 	self isAlpha ifTrue: [^ 'ALPHA. New features which are not stable yet may come in\with each update. Also, existing features might not work\reliably due to updates and related changes.' translated withCRs].
- 	self isAlpha ifTrue: [^ 'ALPHA. New features which are not stable yet may come in\with each update. Also, existing features might not work reliably\due to updates and related changes.' translated withCRs].
  	
  	(self isFeatureFreeze and: [self isCodeFreeze not]) ifTrue: [^ 'FEATURE FREEZE. A new release is being prepared.\There will be only bugfixes, but no new features.' translated withCRs].
  	
  	self isCodeFreeze ifTrue: [^ 'RELEASE CANDIDATE. The new release is almost ready.\There will be only bugfixes, if any.' translated withCRs].
  		
  	self isRelease ifTrue: [^ ''].!

Item was changed:
  ----- Method: Utilities class>>authorInitials (in category 'identification') -----
  authorInitials
+ 	"Maybe interactive. Answer the initials to be used to identify the current code author. Ask the user if the initials are empty. Try to derive the initials from the existing author name."
- 	"Answer the initials to be used to identify the current code author.  "
  
+ 	(AuthorInitials isEmpty and: [AuthorName notEmpty])
+ 		ifTrue: [
+ 			SystemNavigation authors
+ 				at: AuthorName
+ 				ifPresent: [:authorInitials |
+ 					AuthorInitials := authorInitials anyOne. "Can be multiple matches"
+ 					self setAuthorInitials "Let the user confirm"]].
+ 
  	[AuthorInitials isEmpty] whileTrue: [self setAuthorInitials].
  	^ AuthorInitials!

Item was changed:
  ----- Method: Utilities class>>authorName (in category 'identification') -----
  authorName
+ 	"Maybe interactive. Answer the full name to be used in various tools to identify the user/author. Ask the user if the name is empty. Try to derive the name from existing initials."
+ 
+ 	^ AuthorName ifEmpty: [
+ 		AuthorInitials
+ 			ifEmpty: [self setAuthorName. AuthorName]
+ 			ifNotEmpty: [:initials |
+ 				SystemNavigation authorsInverted
+ 					at: initials
+ 					ifPresent: [:authorNames |
+ 						AuthorName := authorNames sorted joinSeparatedBy: '/'.
+ 						self setAuthorName. "Let the user confirm"]
+ 					ifAbsent: [self setAuthorName. AuthorName]]]!
- 	AuthorName ifEmpty: [self setAuthorName].
- 	^ AuthorName!

Item was changed:
  ----- Method: Utilities class>>setAuthorInitials (in category 'identification') -----
  setAuthorInitials
+ 	"Put up a dialog allowing the user to specify the author's initials. Inform the user about collisions with known contributors. See SystemNavigation class >> #authors. "
- 	"Put up a dialog allowing the user to specify the author's initials.  "
  
+ 	| newInitials newName |
+ 	newInitials := Project uiManager
+ 		request: 'Please type your initials:' translated
+ 		initialAnswer: AuthorInitials.
+ 
+ 	SystemNavigation authorsInverted at: newInitials ifPresent: [:existingNames |
+ 		newName := existingNames sorted joinSeparatedBy: '/'].
+ 
+ 	(self confirm: ('Hello, <b>{1}</b>!! :-)<br><br><font face="{4}" size="{5}">Our <a href="code://{3}">list of known contributors</{6}> associates the initials you<br>have entered with this name. If this is not you, please<br>consider entering alternative initials, preferably in the<br>format <b>firstName.lastName</b> to avoid collisions.</font><br><br>Are these your author initials?<br><br>	<b>{2}</b>' translated format: {
+ 		newName ifNil: [newInitials].
+ 		newInitials.
+ 		'SystemReporter open model categoryAt: 1 put: true'.
+ 		Preferences standardButtonFont familyName.
+ 		Preferences standardButtonFont pointSize.
+ 		"mt: Avoid triggering the Windows Defender. See http://lists.squeakfoundation.org/pipermail/squeak-dev/2021-December/217346.html"
+ 		'a' }) asTextFromHtml) 
+ 
+ 		ifTrue: [self authorInitials: newInitials].!
- 	self authorInitials:
- 		(UIManager default request: 'Please type your initials: ' translated
- 					initialAnswer: AuthorInitials)!

Item was changed:
  ----- Method: Utilities class>>setAuthorName (in category 'identification') -----
  setAuthorName
+ 
+ 	AuthorName := Project uiManager 
+ 		request: 'Please type your name:' translated
+ 		initialAnswer: (AuthorName ifEmpty: ['Your Name' translated]).!
- 	AuthorName := UIManager default 
- 			request: 'Please type your name:' translated
- 			initialAnswer: 'Your Name' translated!



More information about the Squeak-dev mailing list