[squeak-dev] Monticello issues in the Trunk
Levente Uzonyi
leves at elte.hu
Sat May 7 12:56:49 UTC 2011
On Sat, 7 May 2011, Frank Shearar wrote:
> On 2011/05/07 02:30, Levente Uzonyi wrote:
>> Hi,
>>
>> there are a few issues with MC in the Trunk, which is a big problem
>> IMHO, because our developement process is based on it:
>>
>> 1) The update process doesn't merge packages automatically anymore. If
>> you update your image now, it should have Tools-fbs.350 and
>> Tools-fbs.349 merged, but only Tools-fbs.350 is loaded.
>
> I had worried that something bad might happen. These two share a common
> ancestor (348), so we have what I usually call a split branch. Monticello
> looks like it treats the more recent split as the new head, which is not
> unreasonable.
>
> So we need a new commit to remerge? See Tools-fbs.351, after which history
> will (or should, at least) look like this:
>
> /- 350 -\
> -- 348 351
> \- 349 -/
The MC update process used to do it automatically without creating a new
version. So after updating your image you should see Tools (fbs.349,
fbs.350), instead of Tools (fbs.350).
>
>>
>> 2) Monticello's test are broken, probably due to the changes of it's
>> mock package structure. A clear sign of the bug is that MCSnapshotTest
>> >> #mockClassExtension is removed after running the tests, which
>> results in several errors and failures. The reason why this went
>> unnoticed is probably because of the lack of manual test runs, but IMHO
>> that's mandatory if you upload stuff to the Trunk.
>>
>> 3) In the various MC browsers mczs are sometimes duplicated in the lists
>> (e.g. Kernel-nice.582.mcz appears twice), but only the first can be
>> selected (this is probably a property of the list that holds the versions).
>
> The underlying list (like MCFileRepositoryInspector's versionNames, the
> current culprit) looks sane. Ah, but allVersionNames has the duplication.
>
> That's because a booboo happens in
> MCCacheRepository(MCFileBasedRepository)>>#readableFileNames:
>
> <snip>
> all := self allFileNamesOrCache. "from repository"
> <snip>
> new := all difference: cachedSet.
> ^ (cached asArray, new)
> select: [:ea | self canReadFileNamed: ea]
>
> I don't quite follow PluggableSet>>#scanFor: (called by #difference:), but
> that's what ultimately results in new erroneously containing that
> MCVersionName.
Yay, I'll check it out soon, thanks.
Levente
>
> frank
>
>
More information about the Squeak-dev
mailing list
|