Metacello load error

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Metacello load error

Max Leske
Hi.

ConfigurationOfMetacello loads ConfigurationOfMetacello-dkh.800.mcz for 4.6alpha. That version is damaged (the zip is invalid). It would be great if that could be fixed (I can’t load Fuel into 4.6 at the moment).

Cheers,
Max
Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Dale Henrichs-3
Max,

Where are you getting that package from?

I just checked and the version available from GemSource[1] loads
(unzips) in both GemStone/GsDevKit and Pharo3.0...it's almost certain
that the Metacello and that package has been tested against Squeak4.5
and a couple of earlier versions as I've just run a test against the
latest Metacello up on Travis .. I am not testing against Squeak4.6 ...
yet ... but I have been testing regularly against the Squeak-Trunk and
those tests passed today[3][4]

So perhaps the problem with the mcz file is in how Squeak 4.6 unzips things?

I suppose I should add Squeak4.6 to my Metacello lineup, but I've been
waiting for a PR from Frank[2] and it looks like he is waiting for the
Squeak 4.6 release.

Dale

[1] http://seaside.gemtalksystems.com/ss/metacello
[2] https://github.com/dalehenrich/builderCI/issues/71
[3] https://travis-ci.org/dalehenrich/metacello-work/jobs/54910423
[4] https://travis-ci.org/dalehenrich/metacello-work/jobs/54910425

On 03/18/2015 01:50 PM, Max Leske wrote:
> Hi.
>
> ConfigurationOfMetacello loads ConfigurationOfMetacello-dkh.800.mcz for 4.6alpha. That version is damaged (the zip is invalid). It would be great if that could be fixed (I can’t load Fuel into 4.6 at the moment).
>
> Cheers,
> Max


Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Tobias Pape
Hey,

On 18.03.2015, at 22:20, Dale Henrichs <[hidden email]> wrote:

> Max,
>
> Where are you getting that package from?
>
> I just checked and the version available from GemSource[1] loads (unzips) in both GemStone/GsDevKit and Pharo3.0...it's almost certain that the Metacello and that package has been tested against Squeak4.5 and a couple of earlier versions as I've just run a test against the latest Metacello up on Travis .. I am not testing against Squeak4.6 ... yet ... but I have been testing regularly against the Squeak-Trunk and those tests passed today[3][4]
>
> So perhaps the problem with the mcz file is in how Squeak 4.6 unzips things?
>
> I suppose I should add Squeak4.6 to my Metacello lineup, but I've been waiting for a PR from Frank[2] and it looks like he is waiting for the Squeak 4.6 release.

FWIW, trunk is equivalent to 4.6 util the release.


>
> Dale
>
> [1] http://seaside.gemtalksystems.com/ss/metacello
> [2] https://github.com/dalehenrich/builderCI/issues/71
> [3] https://travis-ci.org/dalehenrich/metacello-work/jobs/54910423
> [4] https://travis-ci.org/dalehenrich/metacello-work/jobs/54910425
>
> On 03/18/2015 01:50 PM, Max Leske wrote:
>> Hi.
>>
>> ConfigurationOfMetacello loads ConfigurationOfMetacello-dkh.800.mcz for 4.6alpha. That version is damaged (the zip is invalid). It would be great if that could be fixed (I can’t load Fuel into 4.6 at the moment).
>>
>> Cheers,
>> Max



Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Dale Henrichs-3
Thanks Tobias, I was thinking that that was why Frank was going to wait
until the release ...

Dale

On 03/18/2015 02:53 PM, Tobias Pape wrote:

> Hey,
>
> On 18.03.2015, at 22:20, Dale Henrichs <[hidden email]> wrote:
>
>> Max,
>>
>> Where are you getting that package from?
>>
>> I just checked and the version available from GemSource[1] loads (unzips) in both GemStone/GsDevKit and Pharo3.0...it's almost certain that the Metacello and that package has been tested against Squeak4.5 and a couple of earlier versions as I've just run a test against the latest Metacello up on Travis .. I am not testing against Squeak4.6 ... yet ... but I have been testing regularly against the Squeak-Trunk and those tests passed today[3][4]
>>
>> So perhaps the problem with the mcz file is in how Squeak 4.6 unzips things?
>>
>> I suppose I should add Squeak4.6 to my Metacello lineup, but I've been waiting for a PR from Frank[2] and it looks like he is waiting for the Squeak 4.6 release.
> FWIW, trunk is equivalent to 4.6 util the release.
>
>
>> Dale
>>
>> [1] http://seaside.gemtalksystems.com/ss/metacello
>> [2] https://github.com/dalehenrich/builderCI/issues/71
>> [3] https://travis-ci.org/dalehenrich/metacello-work/jobs/54910423
>> [4] https://travis-ci.org/dalehenrich/metacello-work/jobs/54910425
>>
>> On 03/18/2015 01:50 PM, Max Leske wrote:
>>> Hi.
>>>
>>> ConfigurationOfMetacello loads ConfigurationOfMetacello-dkh.800.mcz for 4.6alpha. That version is damaged (the zip is invalid). It would be great if that could be fixed (I can’t load Fuel into 4.6 at the moment).
>>>
>>> Cheers,
>>> Max
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Max Leske
In reply to this post by Max Leske

On 19 Mar 2015, at 11:41, [hidden email] wrote:

Max,

Where are you getting that package from?

The Fuel configuration does #ensureMetacello which then seems to get the latest ConfigurationOfMetacello.


I just checked and the version available from GemSource[1] loads 
(unzips) in both GemStone/GsDevKit and Pharo3.0...it's almost certain 
that the Metacello and that package has been tested against Squeak4.5 
and a couple of earlier versions as I've just run a test against the 
latest Metacello up on Travis .. I am not testing against Squeak4.6 ... 
yet ... but I have been testing regularly against the Squeak-Trunk and 
those tests passed today[3][4]

I’m not sure from which repository the file comes.


So perhaps the problem with the mcz file is in how Squeak 4.6 unzips things?

That’s what I thought at first but the same file behaves the same way in 4.5 (invalid zip).

You should be able to reproduce the problem with this script:

"load development"
[ (Smalltalk at: #Gofer) new
package: 'ConfigurationOfFuel';
load.
 (Smalltalk at: #ConfigurationOfFuel) loadBleedingEdge ] on: Error do: [
((Smalltalk at: #Installer) monticello http: 'http://smalltalkhub.com/mc/Pharo/Fuel/')
project: 'main';
package: 'ConfigurationOfFuel';
install.
(Smalltalk at: #ConfigurationOfFuel) loadBleedingEdge ].


I’ve attached the file, just in case.

Cheers,
Max




I suppose I should add Squeak4.6 to my Metacello lineup, but I've been 
waiting for a PR from Frank[2] and it looks like he is waiting for the 
Squeak 4.6 release.

Dale




ConfigurationOfMetacello-dkh.800.mcz (72K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Dale Henrichs-3
Max,

Before I go about trying to install Squeak on my machine, could you provide me with more details about the environment that you are running in?

I'm not seeing any issues with my travis builds nor has anyone else run into this issue... So I'm suspicious that the root cause is going to be something unique to your working environment. I haven't run Squeak myself in months:) and I rely on Travis .... So I have to find and download all the bits and pieces to install Squeak in my environment in the hopes that when I execute your expression I will see the same corruption as you are seeing (I don't have a great batting average in this regards) ...

It certainly appears that ConfigurationOfMetacello-dkh.800.mcz is not corrupted up on smalltalkhub or gemsource (the two repos accessed during bootstrapping)... which also leads me to believe that the root cause is in your setup ...

Your package has been truncated it should be 128999 bytes and your copy is 53989 ... perhaps your copy of the package is corrupted in the package-cache?

The next most likely culprit is the vm ... which brings me back to why I asked the question at the top of the email ... if you give me the details about your setup - vm version is probably the most important, since I get the impression that there a lot of them running around and the version you have depends upon when you downloaded yours... but it would help if you told me where you got your images and changes files as well ... oh and the os version, too...

Dale
On 3/19/15 5:41 AM, Max Leske wrote:

On 19 Mar 2015, at 11:41, [hidden email] wrote:

Max,

Where are you getting that package from?

The Fuel configuration does #ensureMetacello which then seems to get the latest ConfigurationOfMetacello.


I just checked and the version available from GemSource[1] loads 
(unzips) in both GemStone/GsDevKit and Pharo3.0...it's almost certain 
that the Metacello and that package has been tested against Squeak4.5 
and a couple of earlier versions as I've just run a test against the 
latest Metacello up on Travis .. I am not testing against Squeak4.6 ... 
yet ... but I have been testing regularly against the Squeak-Trunk and 
those tests passed today[3][4]

I’m not sure from which repository the file comes.


So perhaps the problem with the mcz file is in how Squeak 4.6 unzips things?

That’s what I thought at first but the same file behaves the same way in 4.5 (invalid zip).

You should be able to reproduce the problem with this script:

"load development"
[ (Smalltalk at: #Gofer) new
package: 'ConfigurationOfFuel';
load.
 (Smalltalk at: #ConfigurationOfFuel) loadBleedingEdge ] on: Error do: [
((Smalltalk at: #Installer) monticello http: 'http://smalltalkhub.com/mc/Pharo/Fuel/')
project: 'main';
package: 'ConfigurationOfFuel';
install.
(Smalltalk at: #ConfigurationOfFuel) loadBleedingEdge ].


I’ve attached the file, just in case.

Cheers,
Max





I suppose I should add Squeak4.6 to my Metacello lineup, but I've been 
waiting for a PR from Frank[2] and it looks like he is waiting for the 
Squeak 4.6 release.

Dale




    



Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Max Leske
In reply to this post by Max Leske

On 19 Mar 2015, at 20:18, [hidden email] wrote:

Max,

Before I go about trying to install Squeak on my machine, could you 
provide me with more details about the environment that you are running in?

I’m sorry you had to write all this stuff. I’m usually more thorrough with my reports.


I'm not seeing any issues with my travis builds nor has anyone else run 
into this issue... So I'm suspicious that the root cause is going to be 
something unique to your working environment. I haven't run Squeak 
myself in months:) and I rely on Travis .... So I have to find and 
download all the bits and pieces to install Squeak in my environment in 
the hopes that when I execute your expression I will see the same 
corruption as you are seeing (I don't have a great batting average in 
this regards) ...

It certainly appears that ConfigurationOfMetacello-dkh.800.mcz is not 
corrupted up on smalltalkhub or gemsource (the two repos accessed during 
bootstrapping)... which also leads me to believe that the root cause is 
in your setup ...

Your package has been truncated it should be 128999 bytes and your copy 
is 53989 ... perhaps your copy of the package is corrupted in the 
package-cache?

The next most likely culprit is the vm ... which brings me back to why I 
asked the question at the top of the email ... if you give me the 
details about your setup - vm version is probably the most important, 
since I get the impression that there a lot of them running around and 
the version you have depends upon when you downloaded yours... but it 
would help if you told me where you got your images and changes files as 
well ... oh and the os version, too...

Dale


I've figured it out. Your were right, the newest Cog VM doesn’t exhibit the problem. The problem seems to be the method ZipWriteStream>>deflateBlock:chainLength:goodMatch:. The primitive in that method fails in 4.6 only when I open the 4.6 image with the VM packaged with the 4.5 all-in-one app ('Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.331] 4.5’). The fallback method generates an error.
This is reproducible when using the fallback instead of the primitive with the other VM and a 4.5 image too, so there is definitely something wrong with the Zip implementation. Here’s a snippet for reproducing the problem:

ZipWriteStream removeSelector: #deflateBlock:chainLength:goodMatch:.

package: 'Gofer-Core-lr.115.mcz';
install.

(Smalltalk at: #Gofer) new
addPackage: 'ConfigurationOfMetacello';
load


So no need for you to fix anything about Metacello. Sorry about the fuss.

Cheers,
Max


Reply | Threaded
Open this post in threaded view
|

Re: Metacello load error

Dale Henrichs-3
Max,

Sorry for being cranky:) You caught early in the morning before I had coffee:)

It's good news, bad news ... the good news is that I can rely on travis to do a ton of testing ... the bad news is that I don't have test systems at my fingertips for Squeak or Pharo ... I develop Metacello in GemStone and when Pharo/Squeak tests fail on Travis, I can usually get away with editing the Squeak/Pharo packages in-place in my filetree checkout:). I also depend up Frank Shearar, Tobias and the HPI crew for tracking down specific issues that may show up during testing...

I am always on the look out for bugs that may creep into the system and bootstrapping Metacello has been a historically hard problem ... in the last few years (thanks in large part to travis), I've been able to keep bootstrapping issues from escaping into the wild... but one never really knows ...

I am glad that you got to the bottom of this and I appreciate your patience.

Dale

On 03/19/2015 02:28 PM, Max Leske wrote:

On 19 Mar 2015, at 20:18, [hidden email] wrote:

Max,

Before I go about trying to install Squeak on my machine, could you 
provide me with more details about the environment that you are running in?

I’m sorry you had to write all this stuff. I’m usually more thorrough with my reports.


I'm not seeing any issues with my travis builds nor has anyone else run 
into this issue... So I'm suspicious that the root cause is going to be 
something unique to your working environment. I haven't run Squeak 
myself in months:) and I rely on Travis .... So I have to find and 
download all the bits and pieces to install Squeak in my environment in 
the hopes that when I execute your expression I will see the same 
corruption as you are seeing (I don't have a great batting average in 
this regards) ...

It certainly appears that ConfigurationOfMetacello-dkh.800.mcz is not 
corrupted up on smalltalkhub or gemsource (the two repos accessed during 
bootstrapping)... which also leads me to believe that the root cause is 
in your setup ...

Your package has been truncated it should be 128999 bytes and your copy 
is 53989 ... perhaps your copy of the package is corrupted in the 
package-cache?

The next most likely culprit is the vm ... which brings me back to why I 
asked the question at the top of the email ... if you give me the 
details about your setup - vm version is probably the most important, 
since I get the impression that there a lot of them running around and 
the version you have depends upon when you downloaded yours... but it 
would help if you told me where you got your images and changes files as 
well ... oh and the os version, too...

Dale


I've figured it out. Your were right, the newest Cog VM doesn’t exhibit the problem. The problem seems to be the method ZipWriteStream>>deflateBlock:chainLength:goodMatch:. The primitive in that method fails in 4.6 only when I open the 4.6 image with the VM packaged with the 4.5 all-in-one app ('Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.331] 4.5’). The fallback method generates an error.
This is reproducible when using the fallback instead of the primitive with the other VM and a 4.5 image too, so there is definitely something wrong with the Zip implementation. Here’s a snippet for reproducing the problem:

ZipWriteStream removeSelector: #deflateBlock:chainLength:goodMatch:.

package: 'Gofer-Core-lr.115.mcz';
install.

(Smalltalk at: #Gofer) new
addPackage: 'ConfigurationOfMetacello';
load


So no need for you to fix anything about Metacello. Sorry about the fuss.

Cheers,
Max