[Seaside-dev] Re: [Seaside Commits] Seaside 3.0: Seaside-Core-dkh.588.mcz

Dale Henrichs dale.henrichs at gemstone.com
Wed Nov 18 00:59:54 UTC 2009


To get even wackier, I could stash the copy size in a temp to avoid doubling the #size sends but that's heading in a different direction ... I'll use  #notEmpty and go with with your initial gut reaction... 

Dale
 
----- "Julian Fitzell" <jfitzell at gmail.com> wrote:

| Mm... well the starting point wouldn't be 3 in this algorithm unless
| you were making the copy 2 bigger than the original. It seems to me
| that what we're saying in all cases is "if the original isn't empty,
| copy its elements into the end of the copy".
| 
| If you'd rather deal with indexes, it would seem clearer to say "copy
| size > 1" or even "copy size >= 2", since that's the error condition
| you're trying to avoid, no?
| 
| I realize this is getting a little pedantic at this point... :)
| 
| Julian
| 
| On Tue, Nov 17, 2009 at 3:41 PM, Dale Henrichs
| <dale.henrichs at gemstone.com> wrote:
| > Will do so with future commits...
| >
| > The algorithm is based on manipulating the sizes of the collection
| and directly using indexes ... if the starting point had been 3
| instead of 2, then the test would have to be 'size > 1', but #notEmpty
| will work right now, if you prefer.
| >
| > Dale
| > ----- "Julian Fitzell" <jfitzell at gmail.com> wrote:
| >
| > | Hey Dale,
| > |
| > | Just FYI, if you merge a diverged branch into a modified working
| > | copy,
| > | it means we can't see what changes you made and which were the
| result
| > | of the merge. We generally try to commit first and then do the
| merge
| > | in a separate commit. It *is* safe to merge, though, in the
| special
| > | case where your working copy's ancestor is an ancestor of the
| version
| > | you are merging (in this case, your WC's ancestry will be updated
| to
| > | point to the merged-in version instead of its old parent).
| > |
| > | That is, you can safely merge before committing when it looks
| like
| > | this:
| > |
| > | jf.3
| > |   |
| > | jf.2 --- WC
| > |   |
| > | jf.1
| > |
| > | But not when it looks like this:
| > |
| > | jf.3
| > |   |
| > | jf.2 --- lr.3 --- WC
| > |   |
| > | jf.1
| > |
| > | To be safe, you can just always commit your changes first and
| then
| > | merge.
| > |
| > | Also, what about using #isEmpty (or #notEmpty) here?
| > |
| > | Julian
| > |
| > |
| > | On Tue, Nov 17, 2009 at 2:55 PM,
| > | <squeak-dev-noreply at lists.squeakfoundation.org> wrote:
| > | > Dale Henrichs uploaded a new version of Seaside-Core to project
| > | Seaside 3.0:
| > | > http://www.squeaksource.com/Seaside30/Seaside-Core-dkh.588.mcz
| > | >
| > | > ==================== Summary ====================
| > | >
| > | > Name: Seaside-Core-dkh.588
| > | > Author: dkh
| > | > Time: 17 November 2009, 2:54:40 pm
| > | > UUID: a6d2df5b-b368-44e4-8103-8efc4e52a1f5
| > | > Ancestors: Seaside-Core-dkh.585, Seaside-Core-pmm.587
| > | >
| > | > - fix Issue 494:
| > | http://code.google.com/p/seaside/issues/detail?id=494
| > | >
| > | > =============== Diff against Seaside-Core-dkh.585
| ===============
| > | >
| > | > Item was changed:
| > | >  ----- Method: WAHtmlDocument>>addLoadScriptFirst: (in category
| > | 'load scripts') -----
| > | >  addLoadScriptFirst: anObject
| > | >        | copy |
| > | >        copy := loadScripts species new: loadScripts size + 1.
| > | > +       loadScripts size > 0
| > | > +               ifTrue: [ copy replaceFrom: 2 to: copy size
| with:
| > | loadScripts ].
| > | > -       copy replaceFrom: 2 to: copy size with: loadScripts.
| > | >        copy at: 1 put: anObject.
| > | >        loadScripts := copy.
| > | >        ^ anObject!
| > | >
| > | > Item was added:
| > | > + ----- Method: WAFile>>contentsDecoded (in category
| 'accessing')
| > | -----
| > | > + contentsDecoded
| > | > +       "Answer the contents decoded using the character set in
| the
| > | part header. Signal an error if not character set is present in
| the
| > | part header."
| > | > +       | type charSet |
| > | > +       type := self contentType.
| > | > +       charSet := type isNil ifFalse: [ type charSet ].
| > | > +       ^charSet isNil
| > | > +               ifTrue: [ WAIllegalStateException signal: 'no
| > | character set of file upload can not be determined' ]
| > | > +               ifFalse: [ self contentsDecodedUsing: charSet
| ]!
| > | >
| > | > Item was changed:
| > | >  ----- Method: WAFile>>size (in category 'accessing') -----
| > | >  size
| > | >        "the file size in bytes"
| > | > +       ^self rawContents size!
| > | > -       ^self contents size!
| > | >
| > | > Item was changed:
| > | >  ----- Method: WAMimeType>>charSet (in category 'parameters')
| -----
| > | >  charSet
| > | > +       ^self parameters at: 'charset' ifAbsent: [ nil ]!
| > | > -       ^self parameters at: 'charset'!
| > | >
| > | > Item was added:
| > | > + ----- Method: WAFile>>rawContents (in category 'accessing')
| -----
| > | > + rawContents
| > | > +       "Answer the raw, undecoded contents as sent by the user
| > | agent as a ByteArray.
| > | > +
| > | > +       Use #contentsDecoded or #contentsDecodeUsing: to access
| the
| > | decoded contents."
| > | > +
| > | > +       ^ contents!
| > | >
| > | > Item was changed:
| > | >  ----- Method: WARequest>>bodyDecoded (in category
| 'accessing-body')
| > | -----
| > | >  bodyDecoded
| > | >        "Answer the body decoded using the character set in the
| > | request header. Answer nil if no body is present. Signal an error
| if
| > | not character set is present in the request header."
| > | >        | contentType charSet |
| > | >        contentType := self contentType.
| > | >        charSet := contentType isNil ifFalse: [ contentType
| charSet
| > | ].
| > | >        ^charSet isNil
| > | > +               ifTrue: [ WAIllegalStateException signal: 'no
| > | character set of request body can not be determined' ]
| > | > -               ifTrue: [ WAIllegalStateException signal: 'no
| > | content type of request body can not be determined' ]
| > | >                ifFalse: [ self bodyDecodeUsing: charSet ]!
| > | >
| > | > Item was changed:
| > | >  ----- Method: WAFile>>contents (in category 'accessing') -----
| > | >  contents
| > | > +       "Answer a String"
| > | > +       self
| > | > +               greaseDeprecatedApi: 'WAFile>>#contents'
| > | > +               details: 'Use #rawContents, #contentsDecoded or
| > | #contentsDecodedUsing: instead'.
| > | > +       ^  self contentsDecodedUsing: 'ISO-8859-1'!
| > | > -       "Answer a ByteArray"
| > | > -       ^ contents!
| > | >
| > | > Item was added:
| > | > + ----- Method: WAFile>>contentsDecodedUsing: (in category
| > | 'accessing') -----
| > | > + contentsDecodedUsing: aCharSetName
| > | > +       "Answer the contents decoded using the given character
| set
| > | name."
| > | > +       ^ (GRCodec forEncoding: aCharSetName) decode: self
| > | rawContents!
| > | >
| > | >
| > | > _______________________________________________
| > | > commits mailing list
| > | > To unsubscribe, email commits-leave at lists.seaside.st
| > | > http://lists.seaside.st/listinfo/commits
| > | >
| > | _______________________________________________
| > | seaside-dev mailing list
| > | seaside-dev at lists.squeakfoundation.org
| > | http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
| > _______________________________________________
| > seaside-dev mailing list
| > seaside-dev at lists.squeakfoundation.org
| > http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev
| >


More information about the seaside-dev mailing list