OK, I will check it now.

On Fri, Nov 29, 2019 at 7:08 AM Harbs <harbs.li...@gmail.com> wrote:

> I’m getting two test failures on the XML tests.
>
> testXMLNormalize is failing, but the test looks wrong to me. Could you
> take a look?
>
> > On Nov 28, 2019, at 7:32 PM, Greg Dove <greg.d...@gmail.com> wrote:
> >
> > Oh - just saw this. Thanks.
> > Please ignore my comments in the other thread :).
> >
> >
> > On Fri, Nov 29, 2019 at 6:12 AM Harbs <harbs.li...@gmail.com> wrote:
> >
> >> I finally got the nerve together to update my local environment.
> >>
> >> The changes look pretty good.
> >>
> >> I made a couple of small changes.
> >>
> >> One fixes hasAttribute which somehow broke with your changes.
> >>
> >> The second is a small tweak to the memory optimizations. The memory
> >> footprint seems to be a bit smaller than what it used to be.
> >>
> >> Good work. :-)
> >>
> >> Harbs
> >>
> >>> On Oct 2, 2019, at 11:29 AM, Greg Dove <greg.d...@gmail.com> wrote:
> >>>
> >>> @harbs
> >>>
> >>> FYI in addition to some other stuff, I am close to pushing my updates
> to
> >>> XML. This should be in the next hour or so.
> >>>
> >>> I kept the QName caching pretty close to how you had it, with only some
> >>> minor changes.
> >>> I tried to do some extra memory optimization, and in theory it should
> >>> provide better results, but to be honest I don't have a good way to
> >> measure
> >>> this in the browser. I tried the Chrome performance.memory extensions
> >> but I
> >>> don't have much confidence in that given how much it varies between
> >> reloads
> >>> without changing anything else. The extra code changes I made were to
> >> make
> >>> the '_nodeKind' strings into String object references, so they only
> refer
> >>> to a single reference to a string instead of multiple copies of
> >> primitives.
> >>> That change is isolated to a single commit so can easily be reversed if
> >>> there is something not good about it... but all my local tests continue
> >> to
> >>> pass. I will get the new tests into RoyaleUnit in the coming days.
> >>>
> >>>
> >>>
> >>>
> >>> On Thu, Sep 5, 2019 at 7:39 AM Greg Dove <greg.d...@gmail.com> wrote:
> >>>
> >>>> Yeah, I saw that ;) Don't worry, I am aware of it.
> >>>>
> >>>> My first goal is to make sure it works like it should, because that
> >> comes
> >>>> first, and then to optimize. I'll check the memory side of things and
> >> make
> >>>> sure it's at least the same as before. If you can point me to some
> >>>> publicly accessible large test cases that would be really helpful. I
> >> will
> >>>> work through that before I push anything.
> >>>>
> >>>> On Thu, Sep 5, 2019 at 7:26 AM Harbs <harbs.li...@gmail.com> wrote:
> >>>>
> >>>>> Heads up:
> >>>>>
> >>>>> I did some (on first blush) odd things in XML related to QNames.
> QNames
> >>>>> are pooled and many XML properties are not initialized by default.
> The
> >>>>> reason I did this was it avoided many MB of memory waste for complex
> >> XML.
> >>>>> Please don’t mess that up.
> >>>>>
> >>>>> Thanks,
> >>>>> Harbs
> >>>>>
> >>>>>> On Sep 4, 2019, at 1:02 PM, Greg Dove <greg.d...@gmail.com> wrote:
> >>>>>>
> >>>>>> This is particularly for Harbs and Yishay, as I think you are both
> (or
> >>>>> both
> >>>>>> have been) using XML quite a bit. I have quite a few  fixes coming.
> >> All
> >>>>>> with tests that match on swf and js.
> >>>>>>
> >>>>>> I am currently working to demonstrate proof of concept to a
> >> prospective
> >>>>>> client for migration of a Flex app. The app makes extensive use of
> e4x
> >>>>> and
> >>>>>> uses a bunch of features that I expect had not received attention
> >>>>>> previously, because they were originally either not working with the
> >>>>>> codebase I am porting, or i think some even caused errors in the
> >>>>> javascript
> >>>>>> output.
> >>>>>>
> >>>>>> So I have spent the last several days almost full time figuring
> things
> >>>>> out
> >>>>>> and working on fixes, between the compiler and emulation classes.
> >>>>>> All the previous XML tests continue to pass, but I have many more
> unit
> >>>>>> tests and fixes lined up for the following:
> >>>>>>
> >>>>>> namespace directives
> >>>>>> default xml namespace
> >>>>>> use namespace (multiple)
> >>>>>>
> >>>>>> a number of fixes for xml filtering, including:
> >>>>>> -'this' resolves correctly in filters that include external
> references
> >>>>> from
> >>>>>> the fitler expression to the 'this' scope
> >>>>>> -handles alternate ordering of comparisons between XML 'getters' and
> >>>>>> literals
> >>>>>> e.g. something.(name() = "cat")  or something.("cat" = name())
> (these
> >>>>> are
> >>>>>> the same)
> >>>>>> -it (will) now handle XML e4x references in nested function calls
> >> inside
> >>>>>> the filter, e.g. things like:
> >>>>>> e.g.
> >>>>>> var people:XML = <people>
> >>>>>>              <person>
> >>>>>>                  <name>Bob</name>
> >>>>>>                  <age>32</age>
> >>>>>>              </person>
> >>>>>>              <person>
> >>>>>>                  <name>Joe</name>
> >>>>>>                  <age>46</age>
> >>>>>>              </person>
> >>>>>>          </people>;
> >>>>>> var findJoeByAge:Function = function (i:int):Boolean {
> >>>>>>              return i > 40;
> >>>>>>          };
> >>>>>> people.person.(findJoeByAge(parseInt(age))).name
> >>>>>>
> >>>>>>
> >>>>>> I have lots more granular tests in QName, Namespace, and XML with
> >>>>> tuning to
> >>>>>> improve reliability.
> >>>>>> toXMLString XML node output also matches flash more correctly in
> what
> >> I
> >>>>>> have coming.
> >>>>>>
> >>>>>> One thing that I am trying to figure out, which I would appreciate
> >>>>> input on
> >>>>>> if someone has an answer:
> >>>>>> For the example:
> >>>>>>
> >>>>>> var feed:XML = new XML(
> >>>>>>                  '<feed xmlns:atom="http://www.w3.org/2005/Atom";
> >>>>>> xmlns:m="nothing">\n' +
> >>>>>>                  '  <link rel="no_namespace"
> >>>>>> href="blah/12321/domain/"/>\n' +
> >>>>>>                  '</feed>\n');
> >>>>>> var atomSpace:Namespace = new Namespace('
> http://www.w3.org/2005/Atom'
> >> );
> >>>>>>
> >>>>>> Can anyone explain why this (in SWF, as a reference implementation):
> >>>>>> trace(feed.atomSpace::link.length())
> >>>>>> trace(feed.atomSpace::link.toXMLString())
> >>>>>> //output:
> >>>>>> 0
> >>>>>> {empty string}
> >>>>>> is different to:
> >>>>>> trace(feed.child(new QName(atomSpace,'link')).length())
> >>>>>> trace(feed.child(new QName(atomSpace,'link')).toXMLString())
> >>>>>> //output:
> >>>>>> 1
> >>>>>> <link rel="no_namespace" href="blah/12321/domain/" xmlns:atom="
> >>>>>> http://www.w3.org/2005/Atom"; xmlns:m="nothing"/>
> >>>>>>
> >>>>>> I had assumed the above cases would be the same, but the second one
> is
> >>>>>> behaving as if it has the default namespace included with the
> >> specified
> >>>>>> namespace in the QName matching (it does correctly match the
> namespace
> >>>>>> specifically as well -with e.g. <atom:link nodes where the prefix
> atom
> >>>>> is
> >>>>>> bound to the uri, but also seems to include link nodes with the
> >> default
> >>>>>> namespace, whether or not it is declared). I can accommodate this
> >>>>>> difference to make them behave the same, I just would like to
> >> understand
> >>>>>> the basis for the actual rules if anyone knows....
> >>>>>>
> >>>>>> I should be in a position to push the updates this coming weekend I
> >>>>> think.
> >>>>>
> >>>>>
> >>
> >>
>
>

Reply via email to