[squeak-dev] The Trunk: Monticello-ct.766.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Jan 15 21:29:14 UTC 2022


Christoph Thiede uploaded a new version of Monticello to project The Trunk:
http://source.squeak.org/trunk/Monticello-ct.766.mcz

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

Name: Monticello-ct.766
Author: ct
Time: 15 January 2022, 10:28:56.255373 pm
UUID: f41641f1-16a2-434c-b7c4-d08d34d77ef4
Ancestors: Monticello-mt.765

Accelerates saving of a new version by caching the current repository during all pre-checks. This eliminates 3 redundant requests to the server before you can upload a new version to the Inbox.

=============== Diff against Monticello-mt.765 ===============

Item was changed:
  ----- Method: MCHttpRepository>>allFileNames (in category 'private-files') -----
  allFileNames
  
  	| index |
+ 	Transcript showln: {self. thisContext sender}.
  	index := self displayProgress: 'Updating ', self description during: [
  		self httpGet: self locationWithTrailingSlash, '?C=M;O=D' arguments: nil ].
  	^index ifNotNil: [ self parseFileNamesFromStream: index ]!

Item was changed:
  ----- Method: MCWorkingCopyBrowser>>saveVersion (in category 'actions') -----
  saveVersion
+ 	| repo version |
- 	| repo |
  	self canSave ifFalse: [^self].
- 	self class checkForNewerVersionsBeforeSave ==> [self checkForNewerVersions] ifFalse: [^self].
  	repo := self repository.
+ 	
+ 	repo cacheAllFileNamesDuring: [
+ 		self class checkForNewerVersionsBeforeSave ==> [self checkForNewerVersions]
+ 			ifFalse: [^self].
+ 		
+ 		(repo == MCRepository trunk and: [SystemVersion current isFeatureFreeze])
+ 			ifTrue: [self inform: 'FEATURE FREEZE. A new release is being prepared.\Please do only do bugfixes, but no new features.' translated withCRs].
+ 		(repo == MCRepository trunk and: [SystemVersion current isCodeFreeze])
+ 			ifTrue: [self inform: 'CODE FREEZE. The new release is almost ready.\Please do only do URGENT fixes, if any.' translated withCRs].
+ 		
+ 		version := self withRepository: repo do: [workingCopy newVersion]].
+ 	version ifNil: [^ self].
+ 	
+ 	(MCVersionInspector new version: version) show.
+ 	Cursor wait showWhile: [repo storeVersion: version].
+ 	MCCacheRepository default cacheAllFileNamesDuring: 
+ 		[repo cacheAllFileNamesDuring: 
+ 			[version allAvailableDependenciesDo:
+ 				[:dep |
+ 				(repo includesVersionNamed: dep info name)
+ 					ifFalse: [repo storeVersion: dep]]]].!
- 	(repo == MCRepository trunk and: [SystemVersion current isFeatureFreeze])
- 		ifTrue: [self inform: 'FEATURE FREEZE. A new release is being prepared.\Please do only do bugfixes, but no new features.' translated withCRs].
- 	(repo == MCRepository trunk and: [SystemVersion current isCodeFreeze])
- 		ifTrue: [self inform: 'CODE FREEZE. The new release is almost ready.\Please do only do URGENT fixes, if any.' translated withCRs].
- 				
- 	(self withRepository: repo do: [workingCopy newVersion]) ifNotNil:
- 		[:v |
- 		(MCVersionInspector new version: v) show.
- 		Cursor wait showWhile: [repo storeVersion: v].
- 		MCCacheRepository default cacheAllFileNamesDuring: 
- 			[repo cacheAllFileNamesDuring: 
- 				[v allAvailableDependenciesDo:
- 					[:dep |
- 					(repo includesVersionNamed: dep info name)
- 						ifFalse: [repo storeVersion: dep]]]]]!



More information about the Squeak-dev mailing list