seaside 3.0 merging details.

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

seaside 3.0 merging details.

Nick
As I'm still not terribly comfortable with the merging tools in Pharo, I've tried to be as cautious as possible:
1) check there are no changes against in my image from magritte2 or pier2 repositories.
2) merge with magritte or pier repository - if uncertain check changes over last few months in 2.8 repositories
3) check the merged code for expected differences in the magritte2 or pier2 repositories


Magritte-Model & Magritte-Pharo-Model
Merge was straightforward. examining the differences after merge between the two repositories I noticed:
MACompatibility doesn't exist with most of the methods being moved to GRPlatform. However request:default: has been added in MACompatibility for which there doesn't appear to be a equivalent in GRPlatform Also I couldn't find an equivalent of openWorkspace:titled: in GRPlatform. So I added magritteRequest:default: and magritteOpenWorkspace:title to GRPlatform with Pharo implementations in GRPharoPlatform.

Magritte-Tests
Lots of merge conflicts, but then I realised that I'd only loaded Magritte-Tests-Model and Magritte-Tests-Pharo-Model *not* Magritte-Tests - Suddenly what was being said previously in the list about maintaining version history made sense. I reloaded the tests and tried to merge again. No merge conflicts, only three updated methods.
-all tests pass-

Magritte-Morph
No changes - though I fixed the load error in MAFileMorph>>choose I changed FileList2 -> FileList

Magritte-Seaside & Magritte-Pharo-Seaside
Straightforward merge, didn't spot anything which needed to be changed for cross-platform


Pier
------
What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests packages in the pier2 repository? I used the packages in the magritte2 repository. Hope that was the plan.

Pier-Core - empty package

Pier-Model
lots of changes but only a couple of merge conflicts and a couple of s/asString/greaseString/ and one s/allSubInstancesOf:do:/magritteAllSubInstancesOf:do:/

Pier-Seaside
lots of changes, but again only a couple of merge conflicts and one s/displayString/greaseString/

Pier-Security
only a couple of methods had changed, one merge conflict

Pier-Tests
lots of changes, only one merge conflict
-all tests pass-

I'm about the save the merged code, but when I try I get an Error: HTTP1.1 401 Unauthorized
Does someone need to give me write permissions to http://source.lukas-renggli.ch/magritte2 and http://source.lukas-renggli.ch/pier2

Cheers

Nick



_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Lukas Renggli
> [...]

I guess Julian has to comment on that, but to me it sounds good :-)

> What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests
> packages in the pier2 repository? I used the packages in the magritte2 repository.
> Hope that was the plan.

@Julian: Should these versions be moved or deleted?

> I'm about the save the merged code, but when I try I get an Error: HTTP1.1
> 401 Unauthorized

Accidentally the Magritte repository didn't had public write
permissions. I changed that.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Nick
I've saved the merged packages into pier2 and magritte2. When I merged magritte I updated Magritte-Tests (the super package?) as well as Magritte-Tests-Model. For pier I only updated Pier-Tests-Model *not* Pier-Tests, but it makes sense to me to update Pier-Tests as well. Should I.

I'll now try to loading all into a clean seaside 3.0a5 image.

2010/1/7 Lukas Renggli <[hidden email]>
> [...]

I guess Julian has to comment on that, but to me it sounds good :-)

> What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests
> packages in the pier2 repository? I used the packages in the magritte2 repository.
> Hope that was the plan.

@Julian: Should these versions be moved or deleted?

> I'm about the save the merged code, but when I try I get an Error: HTTP1.1
> 401 Unauthorized

Accidentally the Magritte repository didn't had public write
permissions. I changed that.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Julian Fitzell-2
In reply to this post by Lukas Renggli
On Thu, Jan 7, 2010 at 12:13 PM, Lukas Renggli <[hidden email]> wrote:
> [...]

I guess Julian has to comment on that, but to me it sounds good :-)

I don't have time to look carefully at it right now, but the description sounded reasonable.
 
> What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests
> packages in the pier2 repository? I used the packages in the magritte2 repository.
> Hope that was the plan.

@Julian: Should these versions be moved or deleted?

Moved, I think (unless I already copied them, which is possible). Those would be from before you created the /magritte2 repo.
 
> I'm about the save the merged code, but when I try I get an Error: HTTP1.1
> 401 Unauthorized

Accidentally the Magritte repository didn't had public write
permissions. I changed that.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Julian Fitzell-2
In reply to this post by Nick
I just check my image and the same should be true of Magritte-Tests as of Pier-Tests (ie. I split the package into several sub-packages and thus the original all-encompassing package is now obsolete).

Julian

On Thu, Jan 7, 2010 at 12:34 PM, Nick Ager <[hidden email]> wrote:
I've saved the merged packages into pier2 and magritte2. When I merged magritte I updated Magritte-Tests (the super package?) as well as Magritte-Tests-Model. For pier I only updated Pier-Tests-Model *not* Pier-Tests, but it makes sense to me to update Pier-Tests as well. Should I.

I'll now try to loading all into a clean seaside 3.0a5 image.

2010/1/7 Lukas Renggli <[hidden email]>

> [...]

I guess Julian has to comment on that, but to me it sounds good :-)

> What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests
> packages in the pier2 repository? I used the packages in the magritte2 repository.
> Hope that was the plan.

@Julian: Should these versions be moved or deleted?

> I'm about the save the merged code, but when I try I get an Error: HTTP1.1
> 401 Unauthorized

Accidentally the Magritte repository didn't had public write
permissions. I changed that.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Nick
Does that mean I should revert the changes I made to Magritte-Tests or save the latest version of Pier-Tests? I now realise their value for merging, though the problem at the moment is that if you inadvertently load Pier-Tests you'll end up with load errors, which at least for me was initially off-putting.

2010/1/7 Julian Fitzell <[hidden email]>
I just check my image and the same should be true of Magritte-Tests as of Pier-Tests (ie. I split the package into several sub-packages and thus the original all-encompassing package is now obsolete).

Julian


On Thu, Jan 7, 2010 at 12:34 PM, Nick Ager <[hidden email]> wrote:
I've saved the merged packages into pier2 and magritte2. When I merged magritte I updated Magritte-Tests (the super package?) as well as Magritte-Tests-Model. For pier I only updated Pier-Tests-Model *not* Pier-Tests, but it makes sense to me to update Pier-Tests as well. Should I.

I'll now try to loading all into a clean seaside 3.0a5 image.

2010/1/7 Lukas Renggli <[hidden email]>

> [...]

I guess Julian has to comment on that, but to me it sounds good :-)

> What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests
> packages in the pier2 repository? I used the packages in the magritte2 repository.
> Hope that was the plan.

@Julian: Should these versions be moved or deleted?

> I'm about the save the merged code, but when I try I get an Error: HTTP1.1
> 401 Unauthorized

Accidentally the Magritte repository didn't had public write
permissions. I changed that.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Nick
In reply to this post by Nick
Magritte and Pier loaded successfully with one load error:
PRSegmentPersistency>>cleanupSeaside (WAEntryPoint is Undeclared) 

the code is:

PRSegmentPersistency>>cleanupSeaside
"Clear all the entry points that reference other entry points, state and continuations by overriding them with a blank version. Do not try to call #clearAllHandlers because this spawns a new process. Also dump the default dispatcher just to be sure."
<cleanup>

WAEntryPoint allSubInstances
do: [ :entry | entry copyFrom: entry class basicNew ].
WADispatcher instVarNamed: 'default' put: nil

which I think should be changed to:
PRSegmentPersistency>>cleanupSeaside
    <cleanup>
    WAAdmin clearAll

but I'm not sure WAAdmin clearAll is doing exactly what the original code intended


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Nick
In reply to this post by Nick
Now the hard part ensuring the code works..
I merged in some code in PRPierFrame (package Pier-Seaside) which assumed that urls were strings not WAUrls. I've found another suspicious use in PREmbeddedRenderer>>visitExternalLink, but there might be more. 
I've re-added a couple of methods, so that I could successfully render the first page which had been removed from the pier2 repository; PRPierFrame>>dispatcher & PRPierFrame>>invalidDispatcher.
The opening page now appears, however clicking on a link results in a MNU 'receiver of context is nil' from the call 'PRCurrentContext value: self' in
PRContext>>activationCallback
^ WAActionCallback on: [
PRCurrentContext value: self.
(self command isView and: [ self command viewComponent isFullResponse ])
ifTrue: [ self command viewComponent handle: self requestContext ] ]

I can see that the code results in an exception being called which returns nil from the signal method, at which stage I'm lost...


2010/1/7 Nick Ager <[hidden email]>
I've saved the merged packages into pier2 and magritte2. When I merged magritte I updated Magritte-Tests (the super package?) as well as Magritte-Tests-Model. For pier I only updated Pier-Tests-Model *not* Pier-Tests, but it makes sense to me to update Pier-Tests as well. Should I.

I'll now try to loading all into a clean seaside 3.0a5 image.

2010/1/7 Lukas Renggli <[hidden email]>

> [...]

I guess Julian has to comment on that, but to me it sounds good :-)

> What's the purpose of the Magritte-Model, Magritte-Seaside and Magritte-Tests
> packages in the pier2 repository? I used the packages in the magritte2 repository.
> Hope that was the plan.

@Julian: Should these versions be moved or deleted?

> I'm about the save the merged code, but when I try I get an Error: HTTP1.1
> 401 Unauthorized

Accidentally the Magritte repository didn't had public write
permissions. I changed that.

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki



_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki
Reply | Threaded
Open this post in threaded view
|

Re: seaside 3.0 merging details.

Julian Fitzell-2
In reply to this post by Nick
That code's a bit weird and I don't entirely understand the goal... Lukas would have to comment.

Julian

On Thu, Jan 7, 2010 at 1:49 PM, Nick Ager <[hidden email]> wrote:
Magritte and Pier loaded successfully with one load error:
PRSegmentPersistency>>cleanupSeaside (WAEntryPoint is Undeclared) 

the code is:

PRSegmentPersistency>>cleanupSeaside
"Clear all the entry points that reference other entry points, state and continuations by overriding them with a blank version. Do not try to call #clearAllHandlers because this spawns a new process. Also dump the default dispatcher just to be sure."
<cleanup>

WAEntryPoint allSubInstances
do: [ :entry | entry copyFrom: entry class basicNew ].
WADispatcher instVarNamed: 'default' put: nil

which I think should be changed to:
PRSegmentPersistency>>cleanupSeaside
    <cleanup>
    WAAdmin clearAll

but I'm not sure WAAdmin clearAll is doing exactly what the original code intended


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki


_______________________________________________
Magritte, Pier and Related Tools ...
https://www.iam.unibe.ch/mailman/listinfo/smallwiki