[squeak-dev] Re: Corrupt sources file

Levente Uzonyi leves at elte.hu
Wed Apr 7 00:14:14 UTC 2010

On Wed, 7 Apr 2010, Levente Uzonyi wrote:

> On Tue, 6 Apr 2010, Andreas Raab wrote:
>> On 4/6/2010 4:20 PM, Levente Uzonyi wrote:
>>> I was about to remove the #expectedFailures from SMDependencyTest, since
>>> it should pass now (but it fails if SqueakMap is not initialized
>>> properly...). As a final check I decided to run the test it in the
>>> latest beta, where it failed. When I tried to browse SMSqueakMap >>
>>> #reload to see how it can be fixed, I got the note about the corrupted
>>> sources file, so I think something went wrong during the latest
>>> sources/changes merging.
>> Strange ... no problems here. I downloaded
>>  http://ftp.squeak.org/trunk/4.1rc2/Squeak4.1-9885-beta.zip
>> from the website to verify and it worked fine.
>> Any chance that your extraction utility has been "smart" about replacing 
>> CRs with CRLFs or something like that? Can you verify that 
>> SqueakV41.sources is
> No.
>> exactly 25,878,239 bytes? Can someone else verify the problem? (if you do,
> Yes.
>> please include your platform so we know whether that's a platform issue or 
>> not)
> I could narrow down the issue a bit: It only happens if the vm is in a 
> read-only directory (like C:\Program Files\Squeak), otherwise it works as 
> expected. With with older images, both case works as expected.

If I start the vm with administrator rights, then everything is fine.


> Levente
>> Cheers,
>>  - Andreas
>>> On Sun, 4 Apr 2010, Andreas Raab wrote:
>>>> Folks -
>>>> I've prepared rc2 for testing of the 4.1 release on Squeak.org:
>>>> http://ftp.squeak.org/trunk/4.1rc2/
>>>> If you look at the release schedule [1] you'll notice that we're
>>>> slipping a little (which I had expected). The new release candidate
>>>> includes the following changes:
>>>> * Condensed sources file. As previously mentioned, the new sources
>>>> file is a strict superset of the 4.0 sources file and preserves
>>>> version history between 4.1 and 4.0.
>>>> * Welcome notice(s). Please review in particular the welcome screen.
>>>> I've attached the welcome note below for review and improvement. If
>>>> you see anything that hasn't been mentioned but should, please let me
>>>> know. I've also revived two workspaces that I found useful in the
>>>> past, one about some of the less common UI elements and one about how
>>>> to work with Squeak.
>>>> * An updated Windows VM (4.0.2) which fixes various issues with 4.0.1.
>>>> (Ian, if you could build an updated installer I'd appreciate that)
>>>> As it stands, we're currently missing updated Unix and Mac VMs (I know
>>>> Ian has been working on it, so I'll ping him and John separately), we
>>>> still don't have all tests green, and there are still a few open
>>>> issues on Mantis [2].
>>>> If you can offer any help on any of these issues, you're extremely
>>>> welcome. I'm still hopeful that we can ship 4.1 with minimal delay but
>>>> in order to do that we need to address the pending issues, in
>>>> particular the failing tests.
>>>> And of course, please keep testing. Load your packages, run them, make
>>>> sure they work!
>>>> Cheers,
>>>> - Andreas
>>>> [1]http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-March/147166.html
>>>> [2]http://bugs.squeak.org/view.php?id=7480
>>>> =======================================================================
>>>> Welcome to Squeak - a free, open Smalltalk system.
>>>> Squeak 4.1 combines the license change occuring in the 4.0 release
>>>> with the development work that has been going on while the relicensing
>>>> process took place. Here are the highlights of the changes that
>>>> resulted in Squeak 4.1:
>>>> User Interface
>>>> --------------
>>>> We have adapted the 'face lift' look originally developed for
>>>> Newspeak. For those of us who like colored windows (quite a few as it
>>>> turns out) you can switch between uniform and colored windows in the
>>>> 'Extras' menu under 'Window Colors'.
>>>> The new menu bar makes Squeak much easier to discover than before. The
>>>> process of transitioning from the world menu is not complete yet,
>>>> there are still items that can only be accessed from the world menu
>>>> (i.e., by clicking on the desktop).
>>>> The search field integrated in the menu bar allows for direct
>>>> navigation to classes and methods - simply type in a partial class or
>>>> method name and see what happens.
>>>> A new set of inexpensive sub-pixel antialiased fonts derived from the
>>>> DejaVu fonts ('Bitmap DejaVu' in the font chooser) has been added.
>>>> True type font support has been upgraded to operate directly on files
>>>> on disk without the need to load the entire file into memory.
>>>> A new set of text editors has been added, allowing to decouple the
>>>> Morphic and MVC implementations for improved modularity. Morphic has
>>>> now regular blinking insertion point cursors instead of the (virtually
>>>> invisible) static cursor previously.
>>>> Compiler
>>>> --------
>>>> Squeak 4.1 includes the closure implementation from Cog as a
>>>> prerequisite for full Cog adoption later. With this implementation
>>>> Squeak finally has 'full' closures, allowing classic recursive
>>>> examples like the following to work:
>>>> fac := [:n| n > 1 ifTrue:[n * (fac value: n-1)] ifFalse:[1]].
>>>> fac value: 5.
>>>> Support for literal ByteArray syntax has been added. Byte arrays can
>>>> now be written as #[1 2 3] instead of #(1 2 3) asByteArray avoiding
>>>> the need for conversion.
>>>> Selectors including minus are now parsed correctly, for example 3 <- 4
>>>> is now parsed as (3) <- (4) instead of (3) < (-4). White space is no
>>>> longer allowed after an unary minus to denote a negative number literal.
>>>> Development
>>>> -----------
>>>> Syntax highlighting, based on Shout, is now included in all Squeak
>>>> tools by default. For workspaces, it can be explicitly disabled in the
>>>> window menu (entry 'syntax highlighting').
>>>> Sources and changes files are no longer limited to 32MB max size.
>>>> ExpandedSourceFileArray provides an implementation for source files of
>>>> arbitrary length, based on the CompiledMethodTrailer changes.
>>>> MessageTrace has been added, allowing senders and implementors to be
>>>> viewed without opening new windows all the time. It utilizes a new
>>>> AlternatePluggableListMorphOfMany, which allows quick and easy
>>>> customization of the list. A quick adoption of DependencyBrowser has
>>>> been added allowing to browse dependencies between packages.
>>>> Core Libraries
>>>> --------------
>>>> Sets can now store nil just as any other collection. The collection
>>>> hierachy has been refactored to have both Set and Dictionary a
>>>> subclass of HashedCollection instead of having Dictionary a subclass
>>>> of Set. Squeak now uses a better distributed scaledIdentityHash for
>>>> identity sets and dictionaries.
>>>> StandardFilestream now performs read-buffering, dramatically speading
>>>> up some operations like "Object compileAll" (2x improvement) as well
>>>> as various other operations (scanning change lists etc).
>>>> A new traits implementation has been added. The implementation is
>>>> significantly smaller and simpler than the old version and can be
>>>> unloaded and reloaded without loss of information (i.e., traits
>>>> flattened during unload are restored during traits reloading).
>>>> A new extensible number parser hierharchy has been introduced
>>>> NumberParser and its subclasses provide support for parsing and
>>>> building numbers from strings and streams.
>>>> A new general cleanup protocol has been added. The cleanUp protocol
>>>> takes an optional argument to indicate whether we're doing an
>>>> aggressive cleanup (which involves deleting projects, change sets, and
>>>> possibly other destructive actions) or a more gentle cleanup that's
>>>> only supposed to clean out transient caches.
>>>> SystemDictionary and SmalltalkImage have been refactored. Smalltalk is
>>>> now an instance of SmalltalkImage, representing a facade for
>>>> system-wide queries and actions. SmalltalkImage contains a global
>>>> environment, an instance of SystemDictionary, which the environment
>>>> used by classes. Thus, SmalltalkImage current == Smalltalk, Object
>>>> environment == Smalltalk globals.
>>>> Modularity
>>>> ----------
>>>> The following packages have been made reloadable: ReleaseBuilder,
>>>> ScriptLoader, 311Deprecated, 39Deprecated, Universes, SMLoader,
>>>> SMBase, Installer-Core, VersionNumberTests, VersionNumber,
>>>> Services-Base, PreferenceBrowser, Nebraska, CollectionsTests,
>>>> GraphicsTests, KernelTests, MorphicTests, MultilingualTests,
>>>> NetworkTests, ToolsTests, TraitsTests, XML-Parser, Traits,
>>>> SystemChangeNotification-Tests, FlexibleVocabularies, EToys,
>>>> Protocols, Tests, SUnitGUI. To unload all of these, execute:
>>>> Smalltalk unloadAllKnownPackages.

More information about the Squeak-dev mailing list