Re: Flex Issue : AS3 FLEX MOBILE APP CRASHING WHEN SCALING IMAGE

2017-09-21 Thread Mihai Chira
Paul, did you end up making any progress on this? I'd love to know if there
was any improvement you could find.

On Tue, May 31, 2016 at 6:13 PM Clint M  wrote:

> Hmmm... if it just crashes you might be hitting the max bitmap data size of
> the operating system that the app is running on.
>
> "Starting with AIR 3 and Flash player 11, the size limits for a BitmapData
> object have been removed. The maximum size of a bitmap is now dependent on
> the operating system."
>
> http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/BitmapData.html
>
> On Tue, May 31, 2016 at 6:42 AM, Paul Moreau 
> wrote:
>
> > Thanks for the reply Clint but the crash happens while the user is
> zooming
> > on the image, so I cannot call the dispose function as the image needs to
> > remain onscreen while the user pan zooms.
> >
> > Paul
> >
> > On Thu, May 26, 2016 at 5:40 PM, Clint M  wrote:
> >
> > > My immediate reaction whenever I hear memory problems with images is
> > > somewhere some code is forgetting to call bitmapdata.dispose() before a
> > > bitmapdata object is discarded.
> > >
> > > In situations like this Adobe Scout is your friend.
> > > https://www.adobe.com/products/scout.html
> > > It let's your profile memory (and other things). Although I think you
> > need
> > > to compile it with Flash Builder 4.7 so you can use the advanced
> > telemetry
> > > compiler option.  Although I'm not sure that's required either to do
> > memory
> > > profiling.
> > >
> > > On Thu, May 26, 2016 at 9:14 AM, Paul Moreau 
> > > wrote:
> > >
> > > > Hi folks,
> > > >
> > > > Apologies if this is the wrong place to be posting this kind of
> thing,
> > > Ive
> > > > also posted on StackOverflow but thought I'd post here as I know
> there
> > > are
> > > > some Flex experts in this forum and haven't had huge feedback on
> > > > StackOverflow on Flex/AIR issues in the past.
> > > >
> > > > AS3 FLEX MOBILE APP CRASHING WHEN SCALING IMAGE
> > > >
> > > > *Problem:*
> > > >
> > > > Zooming in on image by scaling and moving using matrix causes the app
> > to
> > > > run out of memory and crash.
> > > >
> > > > *Additional Libraries used:*
> > > >
> > > > Gestouch - https://github.com/fljot/Gestouch
> > > >
> > > > *Description:*
> > > >
> > > > In my Flex Mobile app I have an Image inside a Group with pan/zoom
> > > enabled
> > > > using the Gestouch library. The zoom works to an extent but causes
> the
> > > app
> > > > to die (not freeze, just exit) with no error message after a certain
> > zoom
> > > > level.
> > > >
> > > > This would be managable except I can’t figure out how to implement a
> > > > threshold to stop the zoom at, as it crashes at a different zoom
> level
> > > > almost every time. I also use dynamic images so the source of the
> image
> > > > could be any size or resolution.
> > > >
> > > > They are usually JPEGS ranging from about 800x600 - 9000x6000.
> > > >
> > > > As of the AS3 docs there is no longer a limit to the size of the
> > > BitmapData
> > > > object so that shouldn't be the issue.
> > > >
> > > > “Starting with AIR 3 and Flash player 11, the size limits for a
> > > BitmapData
> > > > object have been removed. The maximum size of a bitmap is now
> dependent
> > > on
> > > > the operating system.”
> > > >
> > > > The crash mainly happens on iPad Mini and older Android devices.
> > > >
> > > >
> > > > *Things I have tried already tried:*
> > > >
> > > > Using Adobe Scout to pin point when the memory leak occurs.
> > > >
> > > > Debugging to find the exact height and width of the marker layer and
> > > image
> > > > at the time of crash.
> > > >
> > > > Setting a max zoom variable based on the size of the image.
> > > >
> > > > Cropping the image on zoom to only show the visible area. ( crashes
> on
> > > > copyPixels  function and BitmapData.draw() function )
> > > >
> > > > Using imagemagick to make lower quality images ( small images still
> > > crash )
> > > >
> > > > Using imagemagick to make  very low res image and make a grid of
> > smaller
> > > > images . Displaying in the mobile app using a List and Tile layout.
> > > >
> > > >
> > > > Any suggestions would be appreciated.
> > > >
> > > >
> > > > Thanks,
> > > >
> > > >
> > > > Paul
> > > >
> > > > --
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > *DISCLAIMER: This electronic message together with any attachments is
> > > > confidential. If you are not the intended recipient, do not copy,
> > > disclose
> > > > or use the contents in any way. Please also advise us by return
> e-mail
> > > that
> > > > you have received the message and then please destroy. Zutec  Ltd is
> > not
> > > > responsible for any changes made to this message and / or any
> > attachments
> > > > after sending by Zutec. We use virus scanning software but exclude
> all
> > > > liability for viruses or anything similar in this email or any
> > > attachment.*
> > > >
> > >
> >
> >
> >
> > --
> >
> >
> >
> >
> >
> >
> > *DISCLAIMER: This electronic

Re: [VOTE] Should the Project Name of the Proposed Fork be FlexJS?

2017-09-14 Thread Mihai Chira
Abstain

On Thu, 14 Sep 2017 17:37 Dave Fisher  wrote:

> VOTE Should the Project Name of the Proposed Fork be FlexJS?
>
> [ ] Yes - The forked project should be Apache FlexJS.
> [ ] No - The forked project should have another name which will be
> discussed.
> [ ] Abstain - Don’t care what the forked project is called.
>
> The vote will be open for 72 hours until Sunday September 17, 16:00 UT.
>
>


Re: [DISCUSS] Name of the FlexJS Fork

2017-09-14 Thread Mihai Chira
How about FlexForward? Maybe better for the project name.

On Thu, 14 Sep 2017 11:48 Harbs  wrote:

> Here’s a list of other options which came up off-list:
>
> > Limber (or maybe Limbre/Limbur for a unique name)
> > LimberApp
> > Boinga (unique name which retains the message)
> >
> > Actually, Bead or alternately Beed might be usable
> > Strands can probably also work.
>
> > Beads
> >
> > and second
> >
> > Strands
>
> > Action
>
>
> > KickAS
> >
> > Another idea: NewAction
> >
> > What about FractionScript?
> >
> > NewScript?
> > Warp
> >
> > We can also go for a translation of Flex.
> >
> > Biegen anyone? ;-)
> >
> > The Swedish translation looks cool: Böja
>
> > Maybe something to do with connections or lineage...  Heritage /
> Ancestry / Derivation ?
> >
> > Or more towards the future / destination arrive / attain / reach /
> emerge / dawn / arise
> >
> >
> > "AS Dawn" sounds like a new beginning.
>
>
> > On Sep 14, 2017, at 8:01 AM, Piotr Zarzycki 
> wrote:
> >
> > Don't you think guys that is too much references, regarding what Alex
> found?
> >
> > We are writing in AS - what about emphasis this to RoyaleAS?
> >
> > I'm still not sure yet whether name change convince me..
> >
> > Piotr
> >
> > On Thu, Sep 14, 2017, 03:35 Jeffry Houser  wrote:
> >
> >> Wasn't Royale the beta name for some version of Flex?  [Flex 2? or was
> >> it Flex 1?]
> >>
> >>
> >> On 9/13/2017 6:30 PM, Dave Fisher wrote:
> >>> Hi -
> >>>
> >>> I did a quick suitable name search.
> >>>
> >>> Royale might be taken by this individual’s project
> >>> https://github.com/ian-culleton/royale
> >>>
> >>> Otherwise Royale in a TESS search is liquor and beauty products mostly.
> >>> There is a lot of “Clash Royale"
> >>>
> >>> And there is also “Royale with Cheese” - a reference in Pulp Fiction
> >>> to what a Macdonald’s Quarter Pounder is called in Paris.
> >>>
> >>> Regards,
> >>> Dave
> >>>
>  On Sep 13, 2017, at 3:09 PM, Dave Fisher   > wrote:
> 
>  Hi -
> 
>  We have one alternative name - Royale
> 
>  Are there others that people would like to propose?
> 
>  If not then we can have a simple VOTE between FlexJS and Royale.
> 
>  Regards,
>  Dave
> 
> > On Sep 13, 2017, at 3:01 PM, Dave Fisher  > > wrote:
> >
> > Hi Om,
> >
> > I think that dilutes the votes and biases the result towards FlexJS.
> > If we want to go that way then we need a preference ranking and more
> > complicated VOTE counting.
> >
> > Regards,
> > Dave
> >
> >> On Sep 13, 2017, at 2:57 PM, OmPrakash Muppirala
> >> mailto:bigosma...@gmail.com>> wrote:
> >>
> >> We could always structure the VOTE like this:
> >>
> >> 1.  Royale
> >> 2.  XXX
> >> 3.  YYY
> >> 4.  FlexJS
> >>
> >> One vote should answer both questions.
> >>
> >> Thanks,
> >> Om
> >>
> >> On Wed, Sep 13, 2017 at 2:52 PM, Piotr Zarzycki
> >> mailto:piotrzarzyck...@gmail.com>>
> >> wrote:
> >>
> >>> On the other hand, we have rather majority of voices for do not
> >>> change the
> >>> name and Alex is right. - I'm seeing more people asking for help
> with
> >>> porting. - We may disappear in the sea of frameworks with changed
> >>> name...
> >>>
> >>> Maybe better have solid framework and invest in current name still
> >>> with
> >>> nice branding. I'm puzzled, so definitely I will give myself at
> >>> least one
> >>> day more before VOTE.
> >>>
> >>> Piotr
> >>>
> >>>
> >>>
> >>> 2017-09-13 23:31 GMT+02:00 Piotr Zarzycki
> >>> mailto:piotrzarzyck...@gmail.com>>:
> >>>
>  +1 for Dave's proposition on starting the VOTE for name change.
> 
>  I would like to also add that Carlos's proposition for help to
>  build new
>  brand triggers me. Peter helped also do understand that we can
> >> always
> >>> state
>  from where we have come and what was our story.
> 
>  I'm going to change my mind on name changing and pickup "Royale"
>  as the
>  most powerful for the new one. - The main question is can we use
>  it since
>  it was code name of Macromedia Framework ?
> 
>  Thanks,
>  Piotr
> 
>  2017-09-13 22:59 GMT+02:00 Dave Fisher   >:
> 
> > Hi -
> >
> > Sent from my iPhone
> >
> >> On Sep 13, 2017, at 1:40 PM, Harbs  >> > wrote:
> >>
> >> Carlos’ argument carries weight to me.
> >>
> >> If a new name will help motivate him in terms of marketing it,
> >> that’s
> > value I can recognize.
> >>
> >> The name is not as important to me as motivating people to be
> >> i

Fwd: [jira] [Commented] (FLEX-35321) LayoutManager initializes components which are no longer on stage

2017-06-07 Thread Mihai Chira
-- Forwarded message --
From: Mihai Chira (JIRA) 
Date: 7 June 2017 at 13:25
Subject: [jira] [Commented] (FLEX-35321) LayoutManager initializes
components which are no longer on stage
To: iss...@flex.apache.org



[ 
https://issues.apache.org/jira/browse/FLEX-35321?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16040726#comment-16040726
]

Mihai Chira commented on FLEX-35321:


Thank you for your thoughts, Alex. Indeed, it would be quite
complicated to remove component trees from the
{{updateCompleteQueue}}. But actually the bug (seems to me that it) is
fixable in a simpler way: just checking for a {{nestLevel}} different
from 0 before setting the component's {{initialized}} flag to
{{true}}. The bug's unit test passes with these changes, and I've just
done a smoke test of our (large) application with these
{{LayoutManager}} changes. Please see the patch that I've attached and
let me know if you anticipate any problems. In the meantime I'll add a
couple more unit test functions for some scenarios issues that I can
anticipate. Thanks!

> LayoutManager initializes components which are no longer on stage
> -
>
> Key: FLEX-35321
> URL: https://issues.apache.org/jira/browse/FLEX-35321
> Project: Apache Flex
>  Issue Type: Bug
>  Components: Layout - General
>Affects Versions: Apache Flex 4.16.0
>        Reporter: Mihai Chira
>Assignee: Mihai Chira
> Fix For: Apache Flex 4.17.0
>
> Attachments: FLEX-35321 potential solution.patch
>
>
> *Scenario A*: during an object's validation cycle some code resulting from 
> {{validateSize()}}, {{validateProperties()}} or {{validateDisplayList()}} 
> results in the object's removal from stage.
> *Scenario B*: a user performs an action whose effect is the removal of a 
> component, exactly when that component is being validated in phases 
> ({{LayoutManager.usePhasedInstantiation == true}}, which is to say, in the 
> span of two-three frames.
> (For the unit test that models this scenario.)
> 
> *Expected behaviour*: {{LayoutManager}} detects the object's removal from 
> stage, stops validating it, and never sets its {{initialized}} flag to 
> {{true}}.
> *Actual behaviour*: {{LayoutManager}} does not detect the object's removal 
> from stage, continues validating it, and ends up setting the object's 
> {{initialized}} flag to {{true}}.
> *Unit test*: {{LayoutManager_FLEX_35321_Tests}}.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


Fwd: [jira] [Updated] (FLEX-35321) LayoutManager initializes components which are no longer on stage

2017-06-05 Thread Mihai Chira
Hi all, I just want to make sure that my assumptions about LayoutManager
are sound. This behavior (which I would personally catalogue as a bug) is
causing our application some problems: dialogues initialised after they've
been removed from stage, thus triggering their mediators' onRegister method
(via RobotLegs), which try to work with data that's no longer there,
resulting in fatal errors.

Thanks.
-- Forwarded message ------
From: "Mihai Chira (JIRA)" 
Date: 5 Jun 2017 14:00
Subject: [jira] [Updated] (FLEX-35321) LayoutManager initializes components
which are no longer on stage
To: 
Cc:


 [ https://issues.apache.org/jira/browse/FLEX-35321?page=
com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mihai Chira updated FLEX-35321:
---
Description:
*Scenario A*: during an object's validation cycle some code resulting from
{{validateSize()}}, {{validateProperties()}} or {{validateDisplayList()}}
results in the object's removal from stage.

*Scenario B*: a user performs an action whose effect is the removal of a
component, exactly when that component is being validated in phases
({{LayoutManager.usePhasedInstantiation == true}}, which is to say, in the
span of two-three frames.
(For the unit test that models this scenario.)



*Expected behaviour*: {{LayoutManager}} detects the object's removal from
stage, stops validating it, and never sets its {{initialized}} flag to
{{true}}.
*Actual behaviour*: {{LayoutManager}} does not detect the object's removal
from stage, continues validating it, and ends up setting the object's
{{initialized}} flag to {{true}}.
*Unit test*: {{LayoutManager_FLEX_35321_Tests}}.

  was:
*Scenario A*: during an object's validation cycle some code resulting from
{{validateSize()}}, {{validateProperties()}} or {{validateDisplayList()}}
results in the object's removal from stage.

*Scenario B*: a user performs an action whose effect is the removal of a
component, exactly when that component is being validated in phases
({{LayoutManager.usePhasedInstantiation == true}}, which is to say, in the
span of two-three frames.
(For the unit test that models this scenario, see {{LayoutManagerTests}}.)



*Expected behaviour*: {{LayoutManager}} detects the object's removal from
stage, stops validating it, and never sets its {{initialized}} flag to
{{true}}.
*Actual behaviour*: {{LayoutManager}} does not detect the object's removal
from stage, continues validating it, and ends up setting the object's
{{initialized}} flag to {{true}}.


> LayoutManager initializes components which are no longer on stage
> -
>
> Key: FLEX-35321
> URL: https://issues.apache.org/jira/browse/FLEX-35321
> Project: Apache Flex
>  Issue Type: Bug
>  Components: Layout - General
>    Affects Versions: Apache Flex 4.16.0
>Reporter: Mihai Chira
>Assignee: Mihai Chira
> Fix For: Apache Flex 4.17.0
>
>
> *Scenario A*: during an object's validation cycle some code resulting
from {{validateSize()}}, {{validateProperties()}} or
{{validateDisplayList()}} results in the object's removal from stage.
> *Scenario B*: a user performs an action whose effect is the removal of a
component, exactly when that component is being validated in phases
({{LayoutManager.usePhasedInstantiation == true}}, which is to say, in the
span of two-three frames.
> (For the unit test that models this scenario.)
> 
> *Expected behaviour*: {{LayoutManager}} detects the object's removal from
stage, stops validating it, and never sets its {{initialized}} flag to
{{true}}.
> *Actual behaviour*: {{LayoutManager}} does not detect the object's
removal from stage, continues validating it, and ends up setting the
object's {{initialized}} flag to {{true}}.
> *Unit test*: {{LayoutManager_FLEX_35321_Tests}}.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


Re: Build failed in Jenkins: flex-sdk #1453

2017-03-16 Thread Mihai Chira
I'm just taking a look at this

On 15 March 2017 at 11:56,   wrote:
> See 
>
> --
> [...truncated 2049 lines...]
> main:
>  [echo] Compiling frameworks/locale/en_US/automation_rb.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\automation\bundle-config.xml
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
> [compc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\locale\en_US\automation_rb.swc (2132 
> bytes)
>
> tool_air:
>
> bundles-clean:
>  [echo] IN bundles clean
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> tool_air_bundles-clean:
>
> clean:
>
> compile:
>  [echo] Compiling tool_air.swc
>  [echo] Using c:\Adobe\AIRSDK40/frameworks/libs/air/airglobal.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\tool_air\compile-config.xml
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
> [compc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\libs\automation\tool_air.swc (67238 
> bytes)
>
> main:
>
> automation_spark:
>
> clean:
>
> compile:
>  [echo] Compiling frameworks/libs/automation/automation_spark.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\automation_spark\compile-config.xml
> [compc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\libs\automation\automation_spark.swc 
> (87001 bytes)
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
>
> main:
>
> automation_flashflexkit:
>
> clean:
>
> compile:
>  [echo] Compiling frameworks/libs/automation/automation_flashflexkit.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\automation_flashflexkit\compile-config.xml
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
> [compc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\libs\automation\automation_flashflexkit.swc
>  (7331 bytes)
>
> main:
>
> automation_air:
>
> clean:
>
> compile:
>  [echo] Compiling frameworks/libs/automation/automation_air.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\automation_air\compile-config.xml
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
> [compc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\libs\automation\automation_air.swc 
> (16016 bytes)
>
> main:
>
> automation_airspark:
>
> clean:
>
> compile:
>  [echo] Compiling frameworks/libs/automation/automation_airspark.swc
>  [echo] Using c:\Adobe\AIRSDK40/frameworks/libs/air/airglobal.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\automation_airspark\compile-config.xml
> [compc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\libs\automation\automation_airspark.swc
>  (4534 bytes)
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
>
> main:
>
> flatspark:
>
> clean:
>
> compile:
>  [echo] Compiling frameworks/libs/flatspark.swc
> [compc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\projects\flatspark\compile-config.xml
> [compc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
> [compc] C:\Jenkins\workspace\flex-sdk\frameworks\libs\flatspark.swc 
> (479358 bytes)
>
> main:
>
> javascript:
>
> clean:
>
> compile-swfs:
>  [echo] Compiling 
> 
> [mxmlc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\flex-config.xml
> [mxmlc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\javascript\FABridge\samples\EmptySwf.swf
>  (5753 bytes)
> [mxmlc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
>  [echo] Compiling 
> 
> [mxmlc] Loading configuration file 
> C:\Jenkins\workspace\flex-sdk\frameworks\flex-config.xml
> [mxmlc] 
> C:\Jenkins\workspace\flex-sdk\frameworks\javascript\FABridge\samples\app.swf 
> (517080 bytes)
> [mxmlc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
>
> samples:
>
> main:
>
> main:
>
> ide:
>
> create-config-files:
>  [copy] Copying 3 files to 
> 
>
> expand-config-tokens:
>  [echo] expanding {airHome} and {playerglobalHome} tokens
>
> main:
>
> post-build:
>
> main:
>  [echo]

Re: draft announcement for 4.16.0

2017-03-10 Thread Mihai Chira
I see that we're duplicating links. Is it for some specific email readers?

Also made some small changes (in-line).

On 12 February 2017 at 00:30, Justin Mclean  wrote:
> The Apache Flex community is pleased to announce the release of Apache
> Flex SDK 4.16.0
>
> The Apache Flex SDK is a highly productive, open source application
> framework for building and maintaining expressive applications that deploy
> consistently on all major browsers, desktops and devices (including
> smartphones, tablets and tv).
>
> Apache Flex SDK 4.16.0 is an update to Apache Flex SDK 4.15.0 that
> adds support for the latest Flash Player and AIR runtimes and many bug fixes.
>
> For more details, see the release notes at:
> http://www.apache.org/dist/flex/4.16.0/RELEASE_NOTES 
> 
>
> It's recommended you install the Apache Flex SDK by using the Apache Flex
> IDE installer:
> http://flex.apache.org/installer.html 
>
> The Apache Flex SDK is available in source form from the following
> download page:
> http://flex.apache.org/download-source.html 
> 
>
> When downloading from a mirror site, please remember to verify the
> downloads using signatures or MD5 hashes.
>
> For more information on Apache Flex, visit the project home page:
> http://flex.apache.org 
>
> Thank you for using Apache Flex,
> The Apache Flex Community


Fwd: [jira] [Commented] (FLEX-27509) AdvancedListBase itemMaskFreeList is null

2017-01-12 Thread Mihai Chira
FYI, for anyone who may be interested.


-- Forwarded message --
From: Mihai Chira (JIRA) 
Date: 12 January 2017 at 13:36
Subject: [jira] [Commented] (FLEX-27509) AdvancedListBase
itemMaskFreeList is null
To: iss...@flex.apache.org



[ 
https://issues.apache.org/jira/browse/FLEX-27509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15820903#comment-15820903
]

Mihai Chira commented on FLEX-27509:


As I mentioned in the fix commit message, "Ideally there should be a
flag that specifies whether {{AdvancedListBase.addClipMask()}} has
applied the masking mechanism." I could apply and use this flag, but I
don't feel I sufficiently understand this masking mechanism to be able
to test that there are no regressions. If anyone wants to do this,
feel free to reopen this ticket.

> AdvancedListBase itemMaskFreeList is null
> -
>
> Key: FLEX-27509
> URL: https://issues.apache.org/jira/browse/FLEX-27509
> Project: Apache Flex
>  Issue Type: Bug
>  Components: Advanced Data Grid, mx: DataGrid
>Affects Versions: Adobe Flex SDK 3.5 (Release), Apache Flex 4.15.0
> Environment: Affected OS(s): Windows
> Affected OS(s): Windows XP
> Browser: Internet Explorer 8.x
> Language Found: English
>    Reporter: Adobe JIRA
>Assignee: Mihai Chira
> Fix For: Apache Flex 4.17.0
>
> Attachments: Reproduce FLEX-27509.avi
>
>
> Steps to reproduce:
> 1.This bug is in a complex proprietary system, so I am unable to post the 
> whole code or easily come up with a simpler system to reproduce. (Is remote 
> debugging a possibility?) However, I do have a call stack of the crash.
> Actual Results:
> Main Thread (Suspended: TypeError: Error #1009: Cannot access a 
> property or method of a null object reference.)
> 
> mx.controls.listClasses::AdvancedListBase/http://www.adobe.com/2006/flex/mx/internal::removeClipMask
> mx.controls.listClasses::AdvancedListBase/updateList
> mx.controls.listClasses::AdvancedListBase/setSelectionDataLoop
>   mx.controls.listClasses::AdvancedListBase/commitSelectedItems
>   mx.controls.listClasses::AdvancedListBase/commitSelectedItem
>   mx.controls.listClasses::AdvancedListBase/set selectedItem
>   com.connect3.proofing.views::CommentList/selectComment
>   com.connect3.proofing.views::CommentList/updateCompleteDG
>   
> com.connect3.proofing.views::CommentList/__dgComment_updateComplete
>   flash.events::EventDispatcher/dispatchEventFunction [no source]
>   flash.events::EventDispatcher/dispatchEvent [no source]
>   mx.core::UIComponent/dispatchEvent
>   mx.managers::LayoutManager/doPhasedInstantiation
>   Function/http://adobe.com/AS3/2006/builtin::apply [no source]
>   mx.core::UIComponent/callLaterDispatcher2
>   mx.core::UIComponent/callLaterDispatcher
>   flash.utils::Timer/_timerDispatch [no source]
>   flash.utils::Timer/tick [no source]
>   The error is in AdvancedListBase.removeClipMask line 5174. 
> itemMaskFreeList is null.
>   This is the code for CommentList.selectComment, where 
> dpHierarchy is
>   [Bindable] private var dpHierarchy:HierarchicalData;
>updateComplete="updateCompleteDG(event)" defaultLeafIcon="{null}" x="0" 
> y="22" width="100%" height="100%" id="dgComment"
>   variableRowHeight="true" 
> verticalGridLines="false" sortExpertMode="true" useRollOver="false"
>   folderOpenIcon="{null}" 
> folderClosedIcon="{null}" 
> sortItemRenderer="com.connect3.proofing.renderers.SortItemRenderer"
>   horizontalScrollPolicy="auto"> ... 
> 
>   dgComment.dataProvider = dpHierarchy;
>   public function selectComment(userCommentID:int):void {
>   var commentList:ArrayCollection = 
> ArrayCollection(dpHierarchy.source);
>
>   for(var i:int=0; i i++){
>   var comment:Object = 
> commentList.getItemAt(i);
>
>   if (comment.userCommentID == 
> userCommentID) {
>   dgComment.selectedItem = 
> com

Re: [DISCUSS] Apache Flex SDK 4.16 RC1 release

2017-01-12 Thread Mihai Chira
I just resolved FLEX-27509 (on develop). Shall I move it onto the 4.16
branch to add it to this release (and update the release notes)?


Re: [VOTE] Release Apache Flex SDK 4.16 RC1

2017-01-12 Thread Mihai Chira
> Thanks for voting but it we’re already working on the next RC.
Cool, I'll take another look when it's out.


Re: [VOTE] Release Apache Flex SDK 4.16 RC1

2017-01-12 Thread Mihai Chira
-1
md5 ok, but when I compile our application (currently deployed with
4.15) I see a very noticeable show-stopper bug with the all (spark)
DropDownLists. Please see this screenshot [1] for the differences
(same codebase, just different SDKs). The show-stopping part of the
bug is that when I select anything from the list, the label either
becomes "1" (no matter what I've chosen" or remains empty.

Also, minor: In README it doesn't say we support AIR 24. Do we not?

(We can continue the discussion of this bug in the discuss thread)

[1] https://i.imgsafe.org/764f84e32f.png

On 12 December 2016 at 22:35, Justin Mclean  wrote:
> Hi,
>
> This is a  Apache Flex 4.16 release candidate 1. Please see the
> RELEASE_NOTES and the README.
>
> The release candidate can be found here;
> https://dist.apache.org/repos/dist/dev/flex/sdk/4.16.0/rc1/ 
> 
>
> Before voting please review the section,"What are the ASF requirements on
> approving a release?", at:
> http://www.apache.org/dev/release.html#approving-a-release 
> 
>
> At a minimum you would be expected to check that:
> - MD5 and signed packages are correct
> - README, RELEASE_NOTES, NOTICE and LICENSE files are all fine
> - That you can compile from source package
> - That the SDK can be used in your IDE of choice
> - That the SDK can be used to make a mobile, desktop and browser
> application
>
> Please vote to approve this release:
> +1 Approve the release
> -1 Don’t approve the release (please provide specific comments to why)
>
> This vote will be open for 72 hours or until a result can be called.
>
> The vote passes if there is:
> - At least 3 +1 votes from the PMC
> - More positive votes than negative votes
>
> If you find an issue with the release that's a "show stopper" please don't
> hold off voting -1. If someone votes -1 please continue testing we want to
> try and catch as many issues as we can and cut down on the number of
> release candidates. Remember existing voters can change their vote during
> the voting process.
>
> People who are not in PMC are also encouraged to test out the release and
> vote, although their votes will not be binding, they can influence how the
> PMC votes.
>
> When voting please indicate what OS, IDE, Flash Player version and AIR
> version you tested the SDK with.
>
> Please put all discussion about this release in the DISCUSSION thread not
> this VOTE thread.
>
> Thanks,
> Justin


Re: [LAST CALL] Flex SDK 4.16

2016-11-09 Thread Mihai Chira
I am reverting [1] in the next few hours, and we'll continue the
discussion after the release to find a solution which doesn't break
backwards compatibility.

On 8 November 2016 at 23:59, Justin Mclean  wrote:
> Hi,
>
> We’re getting closer to making a release candidate for the next Flex SDK 
> release.
>
> Currently the two things holding up this release are there two JIRAs:
> [1] FLEX-34880 Place Sort and SortField state setters behind mx_internal
> [2] FLEX-35166 Installer can't handle Adobe AIR 24
>
> I notice that [2] is currently unassigned, can someone confirm that they are 
> looking in to and assign it to themselves.
>
> Now would also be a good time to check that the LICENSE and NOTICE files are 
> correct.
>
> If there are any other issues that you know about please reply here.
>
> Thanks,
> Justin
>
> 1. https://issues.apache.org/jira/browse/FLEX-34880
> 2. https://issues.apache.org/jira/browse/FLEX-35166
>


Re: [jira] [Updated] (FLEX-34853) ListCollectionView.getItemIndex throws RTE when the Sort's sortFields change

2016-11-07 Thread Mihai Chira
> It may also be an issue with 3rd party libraries that you don’t have the 
> source code to that use sort code.
good point

> Possibly one option is to use  the flex compatibility version so that people 
> can set it to 4.15 to get the previous functionality.
sorry, how does that work? It sounds interesting.


Re: [jira] [Updated] (FLEX-34853) ListCollectionView.getItemIndex throws RTE when the Sort's sortFields change

2016-11-07 Thread Mihai Chira
> Seems like you could just copy your current code into ImmutableSortField
sure, but ImmutableSortField would have the discovery problem - who
would know to use it - and wouldn't actually prevent any of the
fatals.

I will revert SortField and the other changes (tomorrow), and I'll
remove the ticket from the list for this release, so that gives us
time to find a solution with backwards compatibility, if at all (we
could even just say it's a known risk).


Re: [jira] [Updated] (FLEX-34853) ListCollectionView.getItemIndex throws RTE when the Sort's sortFields change

2016-11-07 Thread Mihai Chira
> I guess I
> don't fully understand the issue, so I don't have an alternate proposal,

To help those reading this anew (but if responding, please also read
the whole thread), the issue is:
1. You have a sorted collection
2. You change any of the properties of the Sort or SortField (the
order, numeric or not, the field by which to sort, the sorting
function, anything)
3. You (or, more frequently, the SDK itself, through a component's
dataProvider) call getItemIndex() or removeItem() or removeAll() on
that collection.

In this situation there will very likely be a fatal. Reason: refresh()
wasn't called on the collection, so it (as the code is designed now)
assumes that the collection has been sorted by the *modified* sorting
rules, when in reality it's sorted by the original rules.

There were 5 potential solutions suggested in the thread, and for the
moment I chose the first one (making Sort and SortField immutable, but
with an intermediary stage of hiding the state setters behind
mx_internal for a few "transition" releases), thinking that the
benefits of moving errors from the runtime to compile time is greater
than strict backwards compatibility. (For the code changes this would
imply, see FLEX-34880[1].)

If, however, we decide that strict backwards compatibility is more
important, I can revert the current changes (which achieved this for
SortField; Sort was pending) and change course (but probably not for
this impending release). If indeed it turns out this change is
undesired, I can also go back and review the other solutions in more
depth.

For the record, I still personally think that sometimes it's ok to
(minimally) break backwards compatibility (eventually, after a few
transition releases) in favour of a better designed, less
runtime-error prone framework which encourages better coding. What's
good is that people upgrading their projects would get compile errors
rather than changed behaviour at runtime, which is much harder to
detect. And if we document these changes well, it should make it
relatively easy to transition.

[1] https://issues.apache.org/jira/browse/FLEX-34880


Re: New Flex SDK release

2016-11-03 Thread Mihai Chira
> If there are any issues you want to see fixed in this release please add them 
> to this subtask [2] in the release JIRA.
I'd like to get FLEX-34880 done for this release. If I work on it in
the weekend, would it be too late, you think?


Re: [jira] [Comment Edited] (FLEX-35078) Fatal when SelectionManager tries to reapply selection onto changed textFlow

2016-10-20 Thread Mihai Chira
No problem, and thanks for that, I appreciate it! Will email you a reminder.

On 20 October 2016 at 10:37, Harbs  wrote:
> Hi Mihai,
>
> I forgot about this. I’m not going to have time to look into this for at 
> least a week or two.
>
> Please email me a reminder to take a look in a couple of weeks…
>
> Harbs
>
> On Oct 20, 2016, at 11:29 AM, Mihai Chira  wrote:
>
>> If anyone with TLF knowledge wants to take a look at this, it would be
>> quite helpful. Some of the investigation work is already done, and
>> someone who understands what _should_ happen can probably spot the
>> problem quickly. Thank you!
>>
>> On 29 August 2016 at 15:26, Mihai Chira  wrote:
>>> Hi Harbs, just a quick reminder about this ticket, for when you have time.
>>>
>>> Many thanks!
>>> Mihai
>>>
>>> On 13 April 2016 at 12:54, Mihai Chira  wrote:
>>>> Actually this bug seems to occur when the empty span is *not* removed.
>>>> Thanks for taking a look!
>>>>
>>>> On 13 April 2016 at 12:53, Harbs  wrote:
>>>>> I think TLF is more aggressive than it used to be in removing empty spans.
>>>>>
>>>>> I’ll try to look into this when I find the time.
>>>>>
>>>>> On Apr 13, 2016, at 1:22 PM, Mihai Chira  wrote:
>>>>>
>>>>>> Hey guys, I feel I've done as much as I can on this ticket to pave the
>>>>>> way for someone with more TLF knowledge to hopefully have an easy time
>>>>>> understanding and fixing it. Do any of you have time to take a look?
>>>>>> Many thanks!
>>>>>>
>>>>>> On 13 April 2016 at 11:50, Mihai Chira (JIRA)  wrote:
>>>>>>>
>>>>>>>   [ 
>>>>>>> https://issues.apache.org/jira/browse/FLEX-35078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15238824#comment-15238824
>>>>>>>  ]
>>>>>>>
>>>>>>> Mihai Chira edited comment on FLEX-35078 at 4/13/16 9:49 AM:
>>>>>>> -
>>>>>>>
>>>>>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>>>>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>>>>>> {{textLine.rawTextLength == 37}}
>>>>>>> * after validation (see the *Workaround* in the ticket description) the 
>>>>>>> text flow
>>>>>>> {noformat}
>>>>>>> >>>>>> xmlns="http://ns.adobe.com/textLayout/2008";>>>>>>> fontSize="15">The bug is in the function 
>>>>>>> TextFlowLine.adjustEndElementForBidi
>>>>>>> {noformat} is converted into {noformat}
>>>>>>> >>>>>> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>>>>>> function 
>>>>>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>>>>>> (where the empty span is where the bullet text used to be) and the 
>>>>>>> fatal isn't thrown.
>>>>>>>
>>>>>>>
>>>>>>> was (Author: evolverine):
>>>>>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>>>>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>>>>>> {{textLine.rawTextLength == 37}}
>>>>>>> * after validation (see the *Workaround* in the ticket description) the 
>>>>>>> text flow
>>>>>>> {noformat}
>>>>>>> >>>>>> xmlns="http://ns.adobe.com/textLayout/2008";>>>>>>> fontSize="15">The bug is in the function 
>>>>>>> TextFlowLine.adjustEndElementForBidi
>>>>>>> {noformat} is converted into {noformat}
>>>>>>> >>>>>> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>>>>>> function 
>>>>>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>>>>>> where the empty span is where the bullet text used to be.
>>>>>>>
>>>>>>>> Fatal when SelectionManager tries to reapply selection onto changed 
>>>>>>>> textFlow
>>>>>>>> --

Re: [jira] [Comment Edited] (FLEX-35078) Fatal when SelectionManager tries to reapply selection onto changed textFlow

2016-10-20 Thread Mihai Chira
If anyone with TLF knowledge wants to take a look at this, it would be
quite helpful. Some of the investigation work is already done, and
someone who understands what _should_ happen can probably spot the
problem quickly. Thank you!

On 29 August 2016 at 15:26, Mihai Chira  wrote:
> Hi Harbs, just a quick reminder about this ticket, for when you have time.
>
> Many thanks!
> Mihai
>
> On 13 April 2016 at 12:54, Mihai Chira  wrote:
>> Actually this bug seems to occur when the empty span is *not* removed.
>> Thanks for taking a look!
>>
>> On 13 April 2016 at 12:53, Harbs  wrote:
>>> I think TLF is more aggressive than it used to be in removing empty spans.
>>>
>>> I’ll try to look into this when I find the time.
>>>
>>> On Apr 13, 2016, at 1:22 PM, Mihai Chira  wrote:
>>>
>>>> Hey guys, I feel I've done as much as I can on this ticket to pave the
>>>> way for someone with more TLF knowledge to hopefully have an easy time
>>>> understanding and fixing it. Do any of you have time to take a look?
>>>> Many thanks!
>>>>
>>>> On 13 April 2016 at 11:50, Mihai Chira (JIRA)  wrote:
>>>>>
>>>>>[ 
>>>>> https://issues.apache.org/jira/browse/FLEX-35078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15238824#comment-15238824
>>>>>  ]
>>>>>
>>>>> Mihai Chira edited comment on FLEX-35078 at 4/13/16 9:49 AM:
>>>>> -
>>>>>
>>>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>>>> {{textLine.rawTextLength == 37}}
>>>>> * after validation (see the *Workaround* in the ticket description) the 
>>>>> text flow
>>>>> {noformat}
>>>>> >>>> xmlns="http://ns.adobe.com/textLayout/2008";>>>>> fontSize="15">The bug is in the function 
>>>>> TextFlowLine.adjustEndElementForBidi
>>>>> {noformat} is converted into {noformat}
>>>>> >>>> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>>>> function 
>>>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>>>> (where the empty span is where the bullet text used to be) and the fatal 
>>>>> isn't thrown.
>>>>>
>>>>>
>>>>> was (Author: evolverine):
>>>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>>>> {{textLine.rawTextLength == 37}}
>>>>> * after validation (see the *Workaround* in the ticket description) the 
>>>>> text flow
>>>>> {noformat}
>>>>> >>>> xmlns="http://ns.adobe.com/textLayout/2008";>>>>> fontSize="15">The bug is in the function 
>>>>> TextFlowLine.adjustEndElementForBidi
>>>>> {noformat} is converted into {noformat}
>>>>> >>>> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>>>> function 
>>>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>>>> where the empty span is where the bullet text used to be.
>>>>>
>>>>>> Fatal when SelectionManager tries to reapply selection onto changed 
>>>>>> textFlow
>>>>>> 
>>>>>>
>>>>>>Key: FLEX-35078
>>>>>>URL: https://issues.apache.org/jira/browse/FLEX-35078
>>>>>>Project: Apache Flex
>>>>>> Issue Type: Bug
>>>>>> Components: Spark: RichEditableText, TLF
>>>>>>   Affects Versions: Apache Flex 4.15.0
>>>>>>   Reporter: Mihai Chira
>>>>>>   Assignee: Mihai Chira
>>>>>>Fix For: Apache Flex 4.16.0
>>>>>>
>>>>>>Attachments: Main.mxml
>>>>>>
>>>>>>
>>>>>> *Steps to reproduce*:
>>>>>> * run the attached mxml
>>>>>> * click on the "Bullets" button
>>>>>> *Expected results*: the bullet text is removed from the paragraph and 
>>

Re: [jira] [Comment Edited] (FLEX-35078) Fatal when SelectionManager tries to reapply selection onto changed textFlow

2016-08-29 Thread Mihai Chira
Hi Harbs, just a quick reminder about this ticket, for when you have time.

Many thanks!
Mihai

On 13 April 2016 at 12:54, Mihai Chira  wrote:
> Actually this bug seems to occur when the empty span is *not* removed.
> Thanks for taking a look!
>
> On 13 April 2016 at 12:53, Harbs  wrote:
>> I think TLF is more aggressive than it used to be in removing empty spans.
>>
>> I’ll try to look into this when I find the time.
>>
>> On Apr 13, 2016, at 1:22 PM, Mihai Chira  wrote:
>>
>>> Hey guys, I feel I've done as much as I can on this ticket to pave the
>>> way for someone with more TLF knowledge to hopefully have an easy time
>>> understanding and fixing it. Do any of you have time to take a look?
>>> Many thanks!
>>>
>>> On 13 April 2016 at 11:50, Mihai Chira (JIRA)  wrote:
>>>>
>>>>[ 
>>>> https://issues.apache.org/jira/browse/FLEX-35078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15238824#comment-15238824
>>>>  ]
>>>>
>>>> Mihai Chira edited comment on FLEX-35078 at 4/13/16 9:49 AM:
>>>> -
>>>>
>>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>>> {{textLine.rawTextLength == 37}}
>>>> * after validation (see the *Workaround* in the ticket description) the 
>>>> text flow
>>>> {noformat}
>>>> >>> xmlns="http://ns.adobe.com/textLayout/2008";>>>> fontSize="15">The bug is in the function 
>>>> TextFlowLine.adjustEndElementForBidi
>>>> {noformat} is converted into {noformat}
>>>> >>> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>>> function 
>>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>>> (where the empty span is where the bullet text used to be) and the fatal 
>>>> isn't thrown.
>>>>
>>>>
>>>> was (Author: evolverine):
>>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>>> {{textLine.rawTextLength == 37}}
>>>> * after validation (see the *Workaround* in the ticket description) the 
>>>> text flow
>>>> {noformat}
>>>> >>> xmlns="http://ns.adobe.com/textLayout/2008";>>>> fontSize="15">The bug is in the function 
>>>> TextFlowLine.adjustEndElementForBidi
>>>> {noformat} is converted into {noformat}
>>>> >>> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>>> function 
>>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>>> where the empty span is where the bullet text used to be.
>>>>
>>>>> Fatal when SelectionManager tries to reapply selection onto changed 
>>>>> textFlow
>>>>> 
>>>>>
>>>>>Key: FLEX-35078
>>>>>URL: https://issues.apache.org/jira/browse/FLEX-35078
>>>>>Project: Apache Flex
>>>>> Issue Type: Bug
>>>>> Components: Spark: RichEditableText, TLF
>>>>>   Affects Versions: Apache Flex 4.15.0
>>>>>   Reporter: Mihai Chira
>>>>>   Assignee: Mihai Chira
>>>>>Fix For: Apache Flex 4.16.0
>>>>>
>>>>>Attachments: Main.mxml
>>>>>
>>>>>
>>>>> *Steps to reproduce*:
>>>>> * run the attached mxml
>>>>> * click on the "Bullets" button
>>>>> *Expected results*: the bullet text is removed from the paragraph and the 
>>>>> RichEditableText is focused.
>>>>> *Actual results*: the bullet text is removed, but when the focus moves 
>>>>> back to the RichEditableText component, the following fatal is thrown:
>>>>> {noformat}
>>>>> [Fault] exception, information=RangeError: Error #2006: The supplied 
>>>>> index is out of bounds.
>>>>> at flash.text.engine::TextLine/getAtomBidiLevel()
>>>>> at 
>>>>> flashx.textLayout.compose::TextFlowLine/adjustEndElementForBidi()[C:\Users\evolverine\Adobe
>>>>>  Flash Bui

Re: Volunteers needed to update the Flex showcase

2016-04-22 Thread Mihai Chira
Great, thanks for updating the wiki, Om.

On 17 April 2016 at 23:30, Harbs  wrote:
> It looks like the website is mirrored on Github as well.[1]
>
> That means anyone could fork it and submit a pull request as well.
>
> [1]https://github.com/apache/flex-site/
>
> On Apr 17, 2016, at 9:53 PM, Mihai Chira  wrote:
>
>> I couldn't find such a guide on the wiki, so I just added it, under
>> Helping Out[1]. Let me know if you'd like me to change anything (or,
>> if you have the time, go right ahead and make the edits).
>>
>> [1] https://cwiki.apache.org/confluence/display/FLEX/Helping+Out
>>
>> On 1 October 2015 at 10:00, OmPrakash Muppirala  wrote:
>>> Great, thanks for volunteering.
>>>
>>> Only committers have access to the website SVN  repo, but anyone can check
>>> it out, make changes and submit patches.  If you can do that, it would be
>>> awesome.
>>>
>>> Steps:
>>> 1.  Get the SVN repo from: https://svn.apache.org/repos/asf/flex/site
>>> 2.  Open the /trunk/content/showcase/data/showcase.xml file, and add in the
>>> new website details.  This is the format:
>>>   >>  author=""
>>>  website=""
>>> dev=""
>>>>
>>>  
>>>   
>>>   
>>>  
>>>   
>>>   
>>>   
>>>  
>>>  
>>>   
>>>   
>>>
>>> 3.  Add the images to the /trunk/content/showcase/images/{app name}
>>> folder.  The preview thumbnails go in the
>>> /trunk/content/showcase/images/{app name}/prev folder (if the images are
>>> not in the required format, post on the JIRA ticket asking for the missing
>>> files)
>>>
>>> 4.  Generate a .patch file
>>> 5.  Update the JIRA ticket with the patch file
>>> 6.  For good measure, post a note on this mailing list so that it gets
>>> attention
>>>
>>> At this point, an Apache Flex Committer will apply the patch, test it
>>> locally and push a build of the website.
>>>
>>> Hope that helps.  Please let me know if you need more details.
>>>
>>> Thanks again!
>>>
>>> Regards,
>>> Om
>>>
>>> On Thu, Oct 1, 2015 at 9:36 AM, okrue...@edscha.com 
>>> wrote:
>>>
>>>> Hi,
>>>> if this could be done by anybody and if you give me some instructions I'd
>>>> be
>>>> happy to help.
>>>>
>>>> Olaf
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://apache-flex-development.247.n4.nabble.com/Volunteers-needed-to-update-the-Flex-showcase-tp49403p49427.html
>>>> Sent from the Apache Flex Development mailing list archive at Nabble.com.
>>>>
>


Re: Volunteers needed to update the Flex showcase

2016-04-17 Thread Mihai Chira
I couldn't find such a guide on the wiki, so I just added it, under
Helping Out[1]. Let me know if you'd like me to change anything (or,
if you have the time, go right ahead and make the edits).

[1] https://cwiki.apache.org/confluence/display/FLEX/Helping+Out

On 1 October 2015 at 10:00, OmPrakash Muppirala  wrote:
> Great, thanks for volunteering.
>
> Only committers have access to the website SVN  repo, but anyone can check
> it out, make changes and submit patches.  If you can do that, it would be
> awesome.
>
> Steps:
> 1.  Get the SVN repo from: https://svn.apache.org/repos/asf/flex/site
> 2.  Open the /trunk/content/showcase/data/showcase.xml file, and add in the
> new website details.  This is the format:
>   author=""
>   website=""
>  dev=""
>  >
>   
>
>
>   
>
>
>
>   
>   
>
>
>
> 3.  Add the images to the /trunk/content/showcase/images/{app name}
> folder.  The preview thumbnails go in the
> /trunk/content/showcase/images/{app name}/prev folder (if the images are
> not in the required format, post on the JIRA ticket asking for the missing
> files)
>
> 4.  Generate a .patch file
> 5.  Update the JIRA ticket with the patch file
> 6.  For good measure, post a note on this mailing list so that it gets
> attention
>
> At this point, an Apache Flex Committer will apply the patch, test it
> locally and push a build of the website.
>
> Hope that helps.  Please let me know if you need more details.
>
> Thanks again!
>
> Regards,
> Om
>
> On Thu, Oct 1, 2015 at 9:36 AM, okrue...@edscha.com 
> wrote:
>
>> Hi,
>> if this could be done by anybody and if you give me some instructions I'd
>> be
>> happy to help.
>>
>> Olaf
>>
>>
>>
>> --
>> View this message in context:
>> http://apache-flex-development.247.n4.nabble.com/Volunteers-needed-to-update-the-Flex-showcase-tp49403p49427.html
>> Sent from the Apache Flex Development mailing list archive at Nabble.com.
>>


Fwd: Want to find more contributors for your Apache project?

2016-04-14 Thread Mihai Chira
Should I mail them (if so, should I just reply on
committ...@apache.org?) to ask for the inclusion of ActionScript in
the list of programming languages there?


-- Forwarded message --
From: Shane Curcuru 
Date: 11 April 2016 at 21:55
Subject: Want to find more contributors for your Apache project?
To: Apache Committers 


Apache has more online information than ever before to help our project
communities share information and improve your project's image.

Community Development (ComDev) has a vibrant cross-project mailing list
for sharing community and outreach ideas and event/GSoC information:

  http://community.apache.org/lists.html

ComDev has a new service for posting "help wanted" bugs for newcomers:

  https://helpwanted.apache.org/

Protect your project's brand: report trademark misuses by companies:

  http://www.apache.org/foundation/marks/reporting

Even better: ask your PMC to register their trademark, to ensure that
other companies won't abuse your good name:

  http://www.apache.org/foundation/marks/register

Find organizational information (who's a committer, past project board
reports, mailing list subscriptions) on the new Apache Whimsy tools:

  https://whimsy.apache.org/

Bring your feedback and community-building ideas over to dev@community!

- Shane Curcuru
  VP, Brand Management
  ComDev & Whimsy PMCs


Re: [jira] [Comment Edited] (FLEX-35078) Fatal when SelectionManager tries to reapply selection onto changed textFlow

2016-04-13 Thread Mihai Chira
Actually this bug seems to occur when the empty span is *not* removed.
Thanks for taking a look!

On 13 April 2016 at 12:53, Harbs  wrote:
> I think TLF is more aggressive than it used to be in removing empty spans.
>
> I’ll try to look into this when I find the time.
>
> On Apr 13, 2016, at 1:22 PM, Mihai Chira  wrote:
>
>> Hey guys, I feel I've done as much as I can on this ticket to pave the
>> way for someone with more TLF knowledge to hopefully have an easy time
>> understanding and fixing it. Do any of you have time to take a look?
>> Many thanks!
>>
>> On 13 April 2016 at 11:50, Mihai Chira (JIRA)  wrote:
>>>
>>>[ 
>>> https://issues.apache.org/jira/browse/FLEX-35078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15238824#comment-15238824
>>>  ]
>>>
>>> Mihai Chira edited comment on FLEX-35078 at 4/13/16 9:49 AM:
>>> -
>>>
>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>> {{textLine.rawTextLength == 37}}
>>> * after validation (see the *Workaround* in the ticket description) the 
>>> text flow
>>> {noformat}
>>> >> xmlns="http://ns.adobe.com/textLayout/2008";>>> fontSize="15">The bug is in the function 
>>> TextFlowLine.adjustEndElementForBidi
>>> {noformat} is converted into {noformat}
>>> >> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>> function 
>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>> (where the empty span is where the bullet text used to be) and the fatal 
>>> isn't thrown.
>>>
>>>
>>> was (Author: evolverine):
>>> * in {{TextFlowLine.makeSelectionBlocks()}} 
>>> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
>>> {{textLine.rawTextLength == 37}}
>>> * after validation (see the *Workaround* in the ticket description) the 
>>> text flow
>>> {noformat}
>>> >> xmlns="http://ns.adobe.com/textLayout/2008";>>> fontSize="15">The bug is in the function 
>>> TextFlowLine.adjustEndElementForBidi
>>> {noformat} is converted into {noformat}
>>> >> xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
>>> function 
>>> TextFlowLine.adjustEndElementForBidi{noformat}
>>> where the empty span is where the bullet text used to be.
>>>
>>>> Fatal when SelectionManager tries to reapply selection onto changed 
>>>> textFlow
>>>> 
>>>>
>>>>Key: FLEX-35078
>>>>URL: https://issues.apache.org/jira/browse/FLEX-35078
>>>>Project: Apache Flex
>>>> Issue Type: Bug
>>>> Components: Spark: RichEditableText, TLF
>>>>   Affects Versions: Apache Flex 4.15.0
>>>>   Reporter: Mihai Chira
>>>>   Assignee: Mihai Chira
>>>>Fix For: Apache Flex 4.16.0
>>>>
>>>>Attachments: Main.mxml
>>>>
>>>>
>>>> *Steps to reproduce*:
>>>> * run the attached mxml
>>>> * click on the "Bullets" button
>>>> *Expected results*: the bullet text is removed from the paragraph and the 
>>>> RichEditableText is focused.
>>>> *Actual results*: the bullet text is removed, but when the focus moves 
>>>> back to the RichEditableText component, the following fatal is thrown:
>>>> {noformat}
>>>> [Fault] exception, information=RangeError: Error #2006: The supplied index 
>>>> is out of bounds.
>>>> at flash.text.engine::TextLine/getAtomBidiLevel()
>>>> at 
>>>> flashx.textLayout.compose::TextFlowLine/adjustEndElementForBidi()[C:\Users\evolverine\Adobe
>>>>  Flash Builder 
>>>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:2499]
>>>> at 
>>>> flashx.textLayout.compose::TextFlowLine/makeSelectionBlocks()[C:\Users\evolverine\Adobe
>>>>  Flash Builder 
>>>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:1812]
>>>> at 
>>>> flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/textLayout/internal/2008::calculateSelectionBounds()[C:\Users\evolverine\Adobe
>>&

Re: [jira] [Comment Edited] (FLEX-35078) Fatal when SelectionManager tries to reapply selection onto changed textFlow

2016-04-13 Thread Mihai Chira
Hey guys, I feel I've done as much as I can on this ticket to pave the
way for someone with more TLF knowledge to hopefully have an easy time
understanding and fixing it. Do any of you have time to take a look?
Many thanks!

On 13 April 2016 at 11:50, Mihai Chira (JIRA)  wrote:
>
> [ 
> https://issues.apache.org/jira/browse/FLEX-35078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15238824#comment-15238824
>  ]
>
> Mihai Chira edited comment on FLEX-35078 at 4/13/16 9:49 AM:
> -
>
> * in {{TextFlowLine.makeSelectionBlocks()}} 
> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
> {{textLine.rawTextLength == 37}}
> * after validation (see the *Workaround* in the ticket description) the text 
> flow
> {noformat}
>  xmlns="http://ns.adobe.com/textLayout/2008";> fontSize="15">The bug is in the function 
> TextFlowLine.adjustEndElementForBidi
> {noformat} is converted into {noformat}
>  xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
> function TextFlowLine.adjustEndElementForBidi{noformat}
> (where the empty span is where the bullet text used to be) and the fatal 
> isn't thrown.
>
>
> was (Author: evolverine):
> * in {{TextFlowLine.makeSelectionBlocks()}} 
> {{textLine.getAtomIndexAtCharIndex(27) == -1}} although 
> {{textLine.rawTextLength == 37}}
> * after validation (see the *Workaround* in the ticket description) the text 
> flow
> {noformat}
>  xmlns="http://ns.adobe.com/textLayout/2008";> fontSize="15">The bug is in the function 
> TextFlowLine.adjustEndElementForBidi
> {noformat} is converted into {noformat}
>  xmlns="http://ns.adobe.com/textLayout/2008";>The bug is in the 
> function TextFlowLine.adjustEndElementForBidi{noformat}
> where the empty span is where the bullet text used to be.
>
>> Fatal when SelectionManager tries to reapply selection onto changed textFlow
>> 
>>
>> Key: FLEX-35078
>> URL: https://issues.apache.org/jira/browse/FLEX-35078
>> Project: Apache Flex
>>  Issue Type: Bug
>>  Components: Spark: RichEditableText, TLF
>>Affects Versions: Apache Flex 4.15.0
>>Reporter: Mihai Chira
>>Assignee: Mihai Chira
>> Fix For: Apache Flex 4.16.0
>>
>> Attachments: Main.mxml
>>
>>
>> *Steps to reproduce*:
>> * run the attached mxml
>> * click on the "Bullets" button
>> *Expected results*: the bullet text is removed from the paragraph and the 
>> RichEditableText is focused.
>> *Actual results*: the bullet text is removed, but when the focus moves back 
>> to the RichEditableText component, the following fatal is thrown:
>> {noformat}
>> [Fault] exception, information=RangeError: Error #2006: The supplied index 
>> is out of bounds.
>> at flash.text.engine::TextLine/getAtomBidiLevel()
>> at 
>> flashx.textLayout.compose::TextFlowLine/adjustEndElementForBidi()[C:\Users\evolverine\Adobe
>>  Flash Builder 
>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:2499]
>> at 
>> flashx.textLayout.compose::TextFlowLine/makeSelectionBlocks()[C:\Users\evolverine\Adobe
>>  Flash Builder 
>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:1812]
>> at 
>> flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/textLayout/internal/2008::calculateSelectionBounds()[C:\Users\evolverine\Adobe
>>  Flash Builder 
>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:1517]
>> at 
>> flashx.textLayout.compose::TextFlowLine/getSelectionShapesCacheEntry()[C:\Users\evolverine\Adobe
>>  Flash Builder 
>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:1428]
>> at 
>> flashx.textLayout.compose::TextFlowLine/createSelectionShapes()[C:\Users\evolverine\Adobe
>>  Flash Builder 
>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:1664]
>> at 
>> flashx.textLayout.compose::TextFlowLine/http://ns.adobe.com/textLayout/internal/2008::hiliteBlockSelection()[C:\Users\evolverine\Adobe
>>  Flash Builder 
>> 4.7\FLEX-33058\src\flashx\textLayout\compose\TextFlowLine.as:2196]
>> at 
>> flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::addSelectionShapes()[C:\Users\evolverine\workspace\tlf\textLayout\src\flashx\textLayout\container\ContainerController.as:2920]
>> at 
>> flashx.tex

Re: [jira] [Resolved] (FLEX-34883) Sort correctly by complex fields with all data types

2016-03-02 Thread Mihai Chira
Yep, agreed, and done.

On 2 March 2016 at 09:18, Justin Mclean  wrote:
> Hi,
>
>> Justin, maybe you noticed that I finally got round to integrating your
>> unit tests into the framework,
>
> Yep thanks for that.
>
>> and that they uncovered the bug with
>> setItemAt() in a filtered collection with duplicate items inside.
>> removeItemAt() has the same problem, of course.
>
> I did have a look at fixing them but it’s complex and would have performance 
> implications. IMO I’d just disable those tests, that way they are documented 
> if anyone looks. The old(er) Adobe Flex framework has the same bugs so it not 
> a regression.
>
> Thanks,
> Justin


Re: [jira] [Resolved] (FLEX-34883) Sort correctly by complex fields with all data types

2016-03-02 Thread Mihai Chira
Justin, maybe you noticed that I finally got round to integrating your
unit tests into the framework, and that they uncovered the bug with
setItemAt() in a filtered collection with duplicate items inside.
removeItemAt() has the same problem, of course. Namely, they're
FLEX-35039 and FLEX-17045.

Any ideas how to solve this issue?

On 8 June 2015 at 10:48, Mihai Chira  wrote:
> Thanks, I'll take a look in a while, when I work on this again.
>
> On 8 June 2015 at 00:43, Justin Mclean  wrote:
>> Hi,
>>
>> This may be of some help:
>> http://people.apache.org/~jmclean/ArrayCollectionTests.fxp
>>
>> Justin


Re: [2/7] git commit: [flex-sdk] [refs/heads/develop] - FLEX-35031 -Since I'm planning to use ObjectUtil.isDynamicObject() in the fix, I wanted to unit test it. -Also, I introduced a new function in O

2016-02-22 Thread Mihai Chira
> class and any subclass of it must be marked Dynamic so I think you are ok
> here.

Phew :)

Thanks,
Mihai


Re: [2/7] git commit: [flex-sdk] [refs/heads/develop] - FLEX-35031 -Since I'm planning to use ObjectUtil.isDynamicObject() in the fix, I wanted to unit test it. -Also, I introduced a new function in O

2016-02-22 Thread Mihai Chira
For XML and ObjectProxy - true, and for Proxy - false, according to
the new unit tests I just committed. Does that look all right? I've
never used the Proxy class, and although in the docs it looks like
it's not marked as dynamic (as opposed to ObjectProxy, which is), it
does provide some pretty dynamic functionality...
And yes, the current implementation of isDynamicObject, as donated by
Adobe, seems faster (though I haven't tested it) than describeType,
so, if it yields correct results, I'd be in favour of keeping it this
way.

On 18 February 2016 at 14:26, Mihai Chira  wrote:
> hey Alex, just letting you know I'll get back to you on Monday, when
> I'm working again.
>
> On 18 February 2016 at 07:32, Alex Harui  wrote:
>> Looks like some nice new capabilities for ArrayUtil and ObjectUtil.  Did
>> you rule out using describeType for isDynamicObject?  I know it is slow,
>> but it should always be right.  What should isDynamicObject return for
>> XML, Proxy and ObjectProxy?
>>
>> Thanks,
>> -Alex
>>
>> On 2/17/16, 8:00 AM, "mih...@apache.org"  wrote:
>>
>>>FLEX-35031
>>>-Since I'm planning to use ObjectUtil.isDynamicObject() in the fix, I
>>>wanted to unit test it.
>>>-Also, I introduced a new function in ObjectUtil to be used in the
>>>solution, getEnumerableProperties(), which returns all the dynamic
>>>properties of an object. In order to unit test this new method I needed a
>>>function with which to compare Arrays. So I added it to ArrayUtil,
>>>including the unit tests needed to validate it.
>>>-Also edited an asdoc entry and renamed a function parameter.
>>>
>>>
>>>Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
>>>Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/680b405d
>>>Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/680b405d
>>>Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/680b405d
>>>
>>>Branch: refs/heads/develop
>>>Commit: 680b405dfc4559ecf81239352b5bd9676d00adc8
>>>Parents: e68c148
>>>Author: Mihai Chira 
>>>Authored: Wed Feb 17 13:35:31 2016 +0100
>>>Committer: Mihai Chira 
>>>Committed: Wed Feb 17 13:35:31 2016 +0100
>>>
>>>--
>>> .../framework/src/mx/utils/ArrayUtil.as |  92 ++
>>> .../framework/src/mx/utils/ObjectUtil.as|  33 ++-
>>> .../framework/tests/mx/utils/ArrayUtil_Tests.as | 293 +++
>>> .../tests/mx/utils/ObjectUtil_Tests.as  | 167 +++
>>> 4 files changed, 581 insertions(+), 4 deletions(-)
>>>--
>>>
>>>
>>>http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/680b405d/frameworks/p
>>>rojects/framework/src/mx/utils/ArrayUtil.as
>>>--
>>>diff --git a/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>>b/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>>index c41cccf..85ec79c 100644
>>>--- a/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>>+++ b/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>>@@ -107,6 +107,98 @@ public class ArrayUtil
>>>
>>> return -1;
>>> }
>>>+
>>>+/**
>>>+ *  Checks if the Array instances contain the same values
>>>+ *  against the same indexes.
>>>+ *
>>>+ *  @param a The first Array instance.
>>>+ *  @param b The second Array instance.
>>>+ *  @return true if the two Arrays contain the same values
>>>+ *  (determined using the strict equality operator) associated
>>>+ *  with the same indexes.
>>>+ *
>>>+ *  @langversion 3.0
>>>+ *  @playerversion Flash 9
>>>+ *  @playerversion AIR 1.1
>>>+ *  @productversion Flex 3
>>>+ */
>>>+public static function arraysMatch(a:Array, b:Array):Boolean
>>>+{
>>>+if(!a || !b)
>>>+return false;
>>>+
>>>+if(a.length != b.length)
>>>+return false;
>>>+
>>>+var indexesA:Array = ObjectUtil.getEnumerableProperties(a);
>>>+
>>>+for (var i:int = 0; i < indexesA.length; i++)
>>>+{
>>>+var index:String = indexesA[i];
>>>+
>>>+if(!b.hasOwnPrope

Re: [7/7] git commit: [flex-sdk] [refs/heads/develop] - FLEX-35031 FLEX-33058 -Simplified algorithm in findAny() and findLast(). -Improved asdoc for these functions. Note that all tests still pass.

2016-02-22 Thread Mihai Chira
Great, thank you Josh! I just made the changes.

On 17 February 2016 at 20:05, Josh Tynjala  wrote:
> "You can add content to the comment before the @inheritDoc tag."
>
> Source:
> http://help.adobe.com/en_US/flex/using/WSd0ded3821e0d52fe1e63e3d11c2f44bc36-7ff6.html
>
> I previously ran into this issue when I was documenting Feathers. Extra
> text after @inheritDoc seems to be ignored. You need to put it before
> @inheritDoc.
>
> - Josh
>
>
> On Wed, Feb 17, 2016 at 9:11 AM, Mihai Chira  wrote:
>
>> asdocs question: does anyone know if it's possible what was attempted
>> in mx.collections.HierarchicalCollectionViewCursor.findAny() (and two
>> other functions), namely to add some extra information on top of the
>> @inheritDoc taken from the interface? Because when I look at our
>> asdocs [1], HierarchicalCollectionViewCursor.findAny() only has the
>> description defined in mx.collections.IViewCursor.findAny(), and none
>> of the extra info added in HierarchicalCollectionViewCursor.findAny().
>> Thanks.
>>
>> [1] http://flex.apache.org/asdoc/index.html
>>
>> On 17 February 2016 at 17:00,   wrote:
>> > FLEX-35031 FLEX-33058
>> > -Simplified algorithm in findAny() and findLast().
>> > -Improved asdoc for these functions.
>> > Note that all tests still pass.
>> >
>> >
>> > Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
>> > Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/22f81c47
>> > Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/22f81c47
>> > Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/22f81c47
>> >
>> > Branch: refs/heads/develop
>> > Commit: 22f81c478a097a019b2f714d1d85f3200ce69fb4
>> > Parents: 0f811ec
>> > Author: Mihai Chira 
>> > Authored: Wed Feb 17 16:38:46 2016 +0100
>> > Committer: Mihai Chira 
>> > Committed: Wed Feb 17 16:38:46 2016 +0100
>> >
>> > --
>> >  .../HierarchicalCollectionViewCursor.as | 21
>> ++--
>> >  .../framework/src/mx/collections/IViewCursor.as | 18 -
>> >  2 files changed, 19 insertions(+), 20 deletions(-)
>> > --
>> >
>> >
>> >
>> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/22f81c47/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
>> > --
>> > diff --git
>> a/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
>> b/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
>> > index 15584ff..8b85e58 100644
>> > ---
>> a/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
>> > +++
>> b/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
>> > @@ -310,7 +310,8 @@ public class HierarchicalCollectionViewCursor
>> extends EventDispatcher
>> >   *  @inheritDoc
>> >   *
>> >   *  Note that for this class, the view does not need to be
>> sorted in order to
>> > - *  call this method.
>> > + *  call this method. Also, if the item cannot be found, the cursor
>> location is
>> > + *  left on the last queried object.
>> >   *
>> >   *  @langversion 3.0
>> >   *  @playerversion Flash 9
>> > @@ -321,14 +322,12 @@ public class HierarchicalCollectionViewCursor
>> extends EventDispatcher
>> >  {
>> >  seek(CursorBookmark.FIRST);
>> >
>> > -var done:Boolean = false;
>> > -while (!done)
>> > +do
>> >  {
>> >  if (ObjectUtil.valuesAreSubsetOfObject(valuesToMatch,
>> hierarchicalData.getData(current)))
>> >  return true;
>> > -
>> > -done = !moveNext();
>> >  }
>> > +while(moveNext());
>> >
>> >  return false;
>> >  }
>> > @@ -337,7 +336,8 @@ public class HierarchicalCollectionViewCursor
>> extends EventDispatcher
>> >   *  @inheritDoc
>> >   *
>> >   *  Note that for this class, the view does not need to be
>> sorted in order to
>> > - *  call this method.
>> > +   

Re: [2/7] git commit: [flex-sdk] [refs/heads/develop] - FLEX-35031 -Since I'm planning to use ObjectUtil.isDynamicObject() in the fix, I wanted to unit test it. -Also, I introduced a new function in O

2016-02-18 Thread Mihai Chira
hey Alex, just letting you know I'll get back to you on Monday, when
I'm working again.

On 18 February 2016 at 07:32, Alex Harui  wrote:
> Looks like some nice new capabilities for ArrayUtil and ObjectUtil.  Did
> you rule out using describeType for isDynamicObject?  I know it is slow,
> but it should always be right.  What should isDynamicObject return for
> XML, Proxy and ObjectProxy?
>
> Thanks,
> -Alex
>
> On 2/17/16, 8:00 AM, "mih...@apache.org"  wrote:
>
>>FLEX-35031
>>-Since I'm planning to use ObjectUtil.isDynamicObject() in the fix, I
>>wanted to unit test it.
>>-Also, I introduced a new function in ObjectUtil to be used in the
>>solution, getEnumerableProperties(), which returns all the dynamic
>>properties of an object. In order to unit test this new method I needed a
>>function with which to compare Arrays. So I added it to ArrayUtil,
>>including the unit tests needed to validate it.
>>-Also edited an asdoc entry and renamed a function parameter.
>>
>>
>>Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
>>Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/680b405d
>>Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/680b405d
>>Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/680b405d
>>
>>Branch: refs/heads/develop
>>Commit: 680b405dfc4559ecf81239352b5bd9676d00adc8
>>Parents: e68c148
>>Author: Mihai Chira 
>>Authored: Wed Feb 17 13:35:31 2016 +0100
>>Committer: Mihai Chira 
>>Committed: Wed Feb 17 13:35:31 2016 +0100
>>
>>--
>> .../framework/src/mx/utils/ArrayUtil.as |  92 ++
>> .../framework/src/mx/utils/ObjectUtil.as|  33 ++-
>> .../framework/tests/mx/utils/ArrayUtil_Tests.as | 293 +++
>> .../tests/mx/utils/ObjectUtil_Tests.as  | 167 +++
>> 4 files changed, 581 insertions(+), 4 deletions(-)
>>--
>>
>>
>>http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/680b405d/frameworks/p
>>rojects/framework/src/mx/utils/ArrayUtil.as
>>--
>>diff --git a/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>b/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>index c41cccf..85ec79c 100644
>>--- a/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>+++ b/frameworks/projects/framework/src/mx/utils/ArrayUtil.as
>>@@ -107,6 +107,98 @@ public class ArrayUtil
>>
>> return -1;
>> }
>>+
>>+/**
>>+ *  Checks if the Array instances contain the same values
>>+ *  against the same indexes.
>>+ *
>>+ *  @param a The first Array instance.
>>+ *  @param b The second Array instance.
>>+ *  @return true if the two Arrays contain the same values
>>+ *  (determined using the strict equality operator) associated
>>+ *  with the same indexes.
>>+ *
>>+ *  @langversion 3.0
>>+ *  @playerversion Flash 9
>>+ *  @playerversion AIR 1.1
>>+ *  @productversion Flex 3
>>+ */
>>+public static function arraysMatch(a:Array, b:Array):Boolean
>>+{
>>+if(!a || !b)
>>+return false;
>>+
>>+if(a.length != b.length)
>>+return false;
>>+
>>+var indexesA:Array = ObjectUtil.getEnumerableProperties(a);
>>+
>>+for (var i:int = 0; i < indexesA.length; i++)
>>+{
>>+var index:String = indexesA[i];
>>+
>>+if(!b.hasOwnProperty(index) || a[index] !== b[index])
>>+return false;
>>+}
>>+
>>+return true;
>>+}
>>+
>>+/**
>>+ *  Checks if the Array instances contain the same values,
>>+ *  even if in different orders.
>>+ *
>>+ *  @param a The first Array instance.
>>+ *  @param b The second Array instance.
>>+ *  @return true if the two Arrays contain the same values.
>>+ *
>>+ *  @langversion 3.0
>>+ *  @playerversion Flash 9
>>+ *  @playerversion AIR 1.1
>>+ *  @productversion Flex 3
>>+ */
>>+public static function arrayValuesMatch(a:Array, b:Array):Boolean
>>+{
>>+if(!a || !b)
>>+return false;
>>+
>>+var valuesOfA:Array = getArrayValues(a);
>>+valuesOfA.sort();
>>+
>>+  

Re: [7/7] git commit: [flex-sdk] [refs/heads/develop] - FLEX-35031 FLEX-33058 -Simplified algorithm in findAny() and findLast(). -Improved asdoc for these functions. Note that all tests still pass.

2016-02-17 Thread Mihai Chira
asdocs question: does anyone know if it's possible what was attempted
in mx.collections.HierarchicalCollectionViewCursor.findAny() (and two
other functions), namely to add some extra information on top of the
@inheritDoc taken from the interface? Because when I look at our
asdocs [1], HierarchicalCollectionViewCursor.findAny() only has the
description defined in mx.collections.IViewCursor.findAny(), and none
of the extra info added in HierarchicalCollectionViewCursor.findAny().
Thanks.

[1] http://flex.apache.org/asdoc/index.html

On 17 February 2016 at 17:00,   wrote:
> FLEX-35031 FLEX-33058
> -Simplified algorithm in findAny() and findLast().
> -Improved asdoc for these functions.
> Note that all tests still pass.
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/22f81c47
> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/22f81c47
> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/22f81c47
>
> Branch: refs/heads/develop
> Commit: 22f81c478a097a019b2f714d1d85f3200ce69fb4
> Parents: 0f811ec
> Author: Mihai Chira 
> Authored: Wed Feb 17 16:38:46 2016 +0100
> Committer: Mihai Chira 
> Committed: Wed Feb 17 16:38:46 2016 +0100
>
> --
>  .../HierarchicalCollectionViewCursor.as | 21 ++--
>  .../framework/src/mx/collections/IViewCursor.as | 18 -
>  2 files changed, 19 insertions(+), 20 deletions(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/22f81c47/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
> --
> diff --git 
> a/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
>  
> b/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
> index 15584ff..8b85e58 100644
> --- 
> a/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
> +++ 
> b/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
> @@ -310,7 +310,8 @@ public class HierarchicalCollectionViewCursor extends 
> EventDispatcher
>   *  @inheritDoc
>   *
>   *  Note that for this class, the view does not need to be sorted in 
> order to
> - *  call this method.
> + *  call this method. Also, if the item cannot be found, the cursor 
> location is
> + *  left on the last queried object.
>   *
>   *  @langversion 3.0
>   *  @playerversion Flash 9
> @@ -321,14 +322,12 @@ public class HierarchicalCollectionViewCursor extends 
> EventDispatcher
>  {
>  seek(CursorBookmark.FIRST);
>
> -var done:Boolean = false;
> -while (!done)
> +do
>  {
>  if (ObjectUtil.valuesAreSubsetOfObject(valuesToMatch, 
> hierarchicalData.getData(current)))
>  return true;
> -
> -done = !moveNext();
>  }
> +while(moveNext());
>
>  return false;
>  }
> @@ -337,7 +336,8 @@ public class HierarchicalCollectionViewCursor extends 
> EventDispatcher
>   *  @inheritDoc
>   *
>   *  Note that for this class, the view does not need to be sorted in 
> order to
> - *  call this method.
> + *  call this method. Also, if the item cannot be found, the cursor 
> location is
> + *  left on the last queried object.
>   *
>   *  @langversion 3.0
>   *  @playerversion Flash 9
> @@ -353,7 +353,8 @@ public class HierarchicalCollectionViewCursor extends 
> EventDispatcher
>   *  @inheritDoc
>   *
>   *  Note that for this class, the view does not need to be sorted in 
> order to
> - *  call this method.
> + *  call this method. Also, if the item cannot be found, the cursor 
> location is
> + *  left on the last queried object.
>   *
>   *  @langversion 3.0
>   *  @playerversion Flash 9
> @@ -364,14 +365,12 @@ public class HierarchicalCollectionViewCursor extends 
> EventDispatcher
>  {
>  seek(CursorBookmark.LAST);
>
> -var done:Boolean = false;
> -while (!done)
> +do
>  {
>  if (ObjectUtil.valuesAreSubsetOfObject(valuesToMatch, 
> hierarchicalData.getData(current)))
>  return true;
> -
> -done = !movePrevious();
>  }
> +while(movePrevious());
>
>  return false;
>  }
>
> http://git-wip-us.apache.

Re: [jira] [Updated] (FLEX-35031) HierarchicalCollectionViewCursor cannot find sealed class instance

2016-02-16 Thread Mihai Chira
Note that some of the unit tests for this ticket and for FLEX-33058
are currently failing. That's known, and it's because the bugs haven't
yet been solved. I'm starting to do that tomorrow.

On 16 February 2016 at 13:35, Mihai Chira (JIRA)  wrote:
>
>  [ 
> https://issues.apache.org/jira/browse/FLEX-35031?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
>  ]
>
> Mihai Chira updated FLEX-35031:
> ---
> Description:
> {{HierarchicalCollectionViewCursor.findAny()}} and 
> {{HierarchicalCollectionViewCursor.findLast()}} return true for any 
> {{values}} parameter that's a sealed class instance or the value {{null}}, 
> even though they don't actually find that item, and end up setting the 
> cursor's {{current}} property on the wrong item in the collection view.
>
> I'm not sure if this causes bugs higher up the chain, but I imagine it does.
>
> This bug has the same cause as FLEX-33058.
>
>   was:
> {{HierarchicalCollectionViewCursor.findAny()}} and 
> {{HierarchicalCollectionViewCursor.findLast()}} return true for any value of 
> their {{values}} parameter that's a sealed class instance, even though they 
> don't actually find that item, and end up setting the cursor's {{current}} 
> property on the wrong item in the collection view.
>
> I'm not sure if this causes bugs higher up the chain, but I imagine it does.
>
> This bug has the same cause as FLEX-33058.
>
>
>> HierarchicalCollectionViewCursor cannot find sealed class instance
>> --
>>
>> Key: FLEX-35031
>> URL: https://issues.apache.org/jira/browse/FLEX-35031
>> Project: Apache Flex
>>  Issue Type: Bug
>>  Components: Collections
>>Affects Versions: Apache Flex 4.15.0
>>Reporter: Mihai Chira
>>Assignee: Mihai Chira
>> Fix For: Apache Flex 4.16.0
>>
>>
>> {{HierarchicalCollectionViewCursor.findAny()}} and 
>> {{HierarchicalCollectionViewCursor.findLast()}} return true for any 
>> {{values}} parameter that's a sealed class instance or the value {{null}}, 
>> even though they don't actually find that item, and end up setting the 
>> cursor's {{current}} property on the wrong item in the collection view.
>> I'm not sure if this causes bugs higher up the chain, but I imagine it does.
>> This bug has the same cause as FLEX-33058.
>
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.3.4#6332)


Re: AW: AW: Flex SDK Converter Maven Extension available

2016-02-03 Thread Mihai Chira
Thank you, Christofer! I will get back to you if we decide to make the
transition and have questions or issues.

On 29 January 2016 at 16:19, Christofer Dutz  wrote:
> Well they should be quite up to date ... I am also thinking about releasing 
> Flexmojos 7.1.0 this weekend (assuming that I will get some free time by my 
> girlfriend ;-) )
>
> If you need any help with the transition, please feel free to ask any 
> question. I'll do my best to assist you.
>
> Chris
>
> ____
> Von: Mihai Chira 
> Gesendet: Freitag, 29. Januar 2016 15:36
> An: dev@flex.apache.org
> Betreff: Re: AW: AW: Flex SDK Converter Maven Extension available
>
> Also just noticed [2], which seems to have been updated much more recently.
>
> [2] 
> https://cwiki.apache.org/confluence/display/FLEX/Quick+Start+Guide:+Building+Apache+Flex+applications+using+Maven
>
> On 29 January 2016 at 15:29, Mihai Chira  wrote:
>> In my team we are looking into - perhaps - moving our Flex app build
>> to Maven, from ant. Is the information at [1] up to date for how we
>> can achieve this? Thanks.
>>
>> [1] 
>> https://cwiki.apache.org/confluence/display/FLEX/Building+Flex+applications+with+Maven
>>
>> On 20 April 2015 at 21:24, Christofer Dutz  wrote:
>>> Ok I just fixed a little bug in the converter ...
>>>
>>> As I stripped the build number from the flex version, no rsl was copied to 
>>> the maven repo. I just fixed that problem, now the rsls are correctly 
>>> deployed to the output.
>>>
>>> Chris
>>>
>>> 
>>> Von: Christofer Dutz 
>>> Gesendet: Montag, 20. April 2015 09:17
>>> An: dev@flex.apache.org
>>> Betreff: AW: AW: AW: Flex SDK Converter Maven Extension available
>>>
>>> The reason why the conversion of a Flex SDK needs flash resources, is the 
>>> fact that in the Flex SDK we don't provide all themes as swcs. I made the 
>>> flex converter automatically compile any non swc themes to swc format in 
>>> order to be able to use all themes equally. In order to compile, you need a 
>>> playerglobal and that's not present in the binary distribution. Therefore 
>>> the flex converter downloads the minimum version for this task only.
>>>
>>> Regarding the FM error. Did you compile with "-X" option to show 
>>> stacktraces? Would be helpful as the log doesn't really show much usefull 
>>> information. One thing I could immagine: The failling project ... does this 
>>> use font encoding? This is no longer part of the "compiler" artifact. If 
>>> your module needs font encoding and font embeding, you need to add an 
>>> additional plugin dependency to com.adobe:fontkit:1.0:pom
>>>
>>> Chris
>>>
>>>
>>> 
>>> Von: Frédéric THOMAS 
>>> Gesendet: Sonntag, 19. April 2015 20:40
>>> An: dev@flex.apache.org
>>> Betreff: RE: AW: AW: Flex SDK Converter Maven Extension available
>>>
>>> Hey Chris,
>>>
>>> Yep, was that, thanks !
>>>
>>> The project was compiling nicely with FM 7.0.1, SDK 4.14, I changed it to 
>>> SDK 4.13.0 and FM 7.1.0-SNAPSHOT to verify.
>>>
>>> 1- I noticed you have a dependency to flash player 10.2, is this for the 
>>> minimum version in case it is not specify ?
>>> 2- I removed the FM dependency of flexmojos-threadlocaltoolkit-wrapper to 
>>> fonkit which is not in the compiler pom anymore and while it compiles some 
>>> projects it fails on others with something not really helpful 
>>> https://paste.apache.org/nIkS
>>>
>>> Does it mean something for you ?
>>>
>>> Frédéric THOMAS
>>>
>>>> From: christofer.d...@c-ware.de
>>>> To: dev@flex.apache.org
>>>> Subject: AW: AW: Flex SDK Converter Maven Extension available
>>>> Date: Sun, 19 Apr 2015 17:21:47 +
>>>>
>>>> Yup ... I know exactly why you are getting this cause I had to figgure 
>>>> that out too :-)
>>>> Maven 3.3 has higher requirements for the Java Version ... you need at 
>>>> least a Java 1.7 VM
>>>>
>>>> Chris
>>>>
>>>>
>>>>
>>>>
>>>> -Ursprüngliche Nachricht-
>>>> Von: Frédéric THOMAS [mailto:webdoubl...@hotmail.com]
>>>> Gesendet: Sonntag, 19. April 2015 18:46
>>>> An: dev@flex.apache.org

Re: AW: AW: Flex SDK Converter Maven Extension available

2016-01-29 Thread Mihai Chira
Also just noticed [2], which seems to have been updated much more recently.

[2] 
https://cwiki.apache.org/confluence/display/FLEX/Quick+Start+Guide:+Building+Apache+Flex+applications+using+Maven

On 29 January 2016 at 15:29, Mihai Chira  wrote:
> In my team we are looking into - perhaps - moving our Flex app build
> to Maven, from ant. Is the information at [1] up to date for how we
> can achieve this? Thanks.
>
> [1] 
> https://cwiki.apache.org/confluence/display/FLEX/Building+Flex+applications+with+Maven
>
> On 20 April 2015 at 21:24, Christofer Dutz  wrote:
>> Ok I just fixed a little bug in the converter ...
>>
>> As I stripped the build number from the flex version, no rsl was copied to 
>> the maven repo. I just fixed that problem, now the rsls are correctly 
>> deployed to the output.
>>
>> Chris
>>
>> 
>> Von: Christofer Dutz 
>> Gesendet: Montag, 20. April 2015 09:17
>> An: dev@flex.apache.org
>> Betreff: AW: AW: AW: Flex SDK Converter Maven Extension available
>>
>> The reason why the conversion of a Flex SDK needs flash resources, is the 
>> fact that in the Flex SDK we don't provide all themes as swcs. I made the 
>> flex converter automatically compile any non swc themes to swc format in 
>> order to be able to use all themes equally. In order to compile, you need a 
>> playerglobal and that's not present in the binary distribution. Therefore 
>> the flex converter downloads the minimum version for this task only.
>>
>> Regarding the FM error. Did you compile with "-X" option to show 
>> stacktraces? Would be helpful as the log doesn't really show much usefull 
>> information. One thing I could immagine: The failling project ... does this 
>> use font encoding? This is no longer part of the "compiler" artifact. If 
>> your module needs font encoding and font embeding, you need to add an 
>> additional plugin dependency to com.adobe:fontkit:1.0:pom
>>
>> Chris
>>
>>
>> 
>> Von: Frédéric THOMAS 
>> Gesendet: Sonntag, 19. April 2015 20:40
>> An: dev@flex.apache.org
>> Betreff: RE: AW: AW: Flex SDK Converter Maven Extension available
>>
>> Hey Chris,
>>
>> Yep, was that, thanks !
>>
>> The project was compiling nicely with FM 7.0.1, SDK 4.14, I changed it to 
>> SDK 4.13.0 and FM 7.1.0-SNAPSHOT to verify.
>>
>> 1- I noticed you have a dependency to flash player 10.2, is this for the 
>> minimum version in case it is not specify ?
>> 2- I removed the FM dependency of flexmojos-threadlocaltoolkit-wrapper to 
>> fonkit which is not in the compiler pom anymore and while it compiles some 
>> projects it fails on others with something not really helpful 
>> https://paste.apache.org/nIkS
>>
>> Does it mean something for you ?
>>
>> Frédéric THOMAS
>>
>>> From: christofer.d...@c-ware.de
>>> To: dev@flex.apache.org
>>> Subject: AW: AW: Flex SDK Converter Maven Extension available
>>> Date: Sun, 19 Apr 2015 17:21:47 +
>>>
>>> Yup ... I know exactly why you are getting this cause I had to figgure that 
>>> out too :-)
>>> Maven 3.3 has higher requirements for the Java Version ... you need at 
>>> least a Java 1.7 VM
>>>
>>> Chris
>>>
>>>
>>>
>>>
>>> -Ursprüngliche Nachricht-
>>> Von: Frédéric THOMAS [mailto:webdoubl...@hotmail.com]
>>> Gesendet: Sonntag, 19. April 2015 18:46
>>> An: dev@flex.apache.org
>>> Betreff: RE: AW: Flex SDK Converter Maven Extension available
>>>
>>> Hi Chris,
>>>
>>> Just came back home and was trying FM 7.1.0-SNAPSHOT, I droped 
>>> flex-maven-extension.jar into the lib/ext folder along with the 
>>> extensions.xml of my fresh maven 3.3.1 (I still was in 3.0.5) and got this 
>>> even though after I removed the extensions.xml:
>>>
>>> Exception in thread "main" java.lang.UnsupportedClassVersionError: 
>>> org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0
>>>
>>> Any clue ?
>>>
>>> Frédéric THOMAS
>>>
>>> > From: christofer.d...@c-ware.de
>>> > To: dev@flex.apache.org
>>> > Subject: AW: Flex SDK Converter Maven Extension available
>>> > Date: Sun, 19 Apr 2015 11:50:07 +
>>> >
>>> > Ok ... so maven and it's classloading can be a PITA ;-)
>>> >
>>> > But the latest vers

Re: AW: AW: Flex SDK Converter Maven Extension available

2016-01-29 Thread Mihai Chira
In my team we are looking into - perhaps - moving our Flex app build
to Maven, from ant. Is the information at [1] up to date for how we
can achieve this? Thanks.

[1] 
https://cwiki.apache.org/confluence/display/FLEX/Building+Flex+applications+with+Maven

On 20 April 2015 at 21:24, Christofer Dutz  wrote:
> Ok I just fixed a little bug in the converter ...
>
> As I stripped the build number from the flex version, no rsl was copied to 
> the maven repo. I just fixed that problem, now the rsls are correctly 
> deployed to the output.
>
> Chris
>
> 
> Von: Christofer Dutz 
> Gesendet: Montag, 20. April 2015 09:17
> An: dev@flex.apache.org
> Betreff: AW: AW: AW: Flex SDK Converter Maven Extension available
>
> The reason why the conversion of a Flex SDK needs flash resources, is the 
> fact that in the Flex SDK we don't provide all themes as swcs. I made the 
> flex converter automatically compile any non swc themes to swc format in 
> order to be able to use all themes equally. In order to compile, you need a 
> playerglobal and that's not present in the binary distribution. Therefore the 
> flex converter downloads the minimum version for this task only.
>
> Regarding the FM error. Did you compile with "-X" option to show stacktraces? 
> Would be helpful as the log doesn't really show much usefull information. One 
> thing I could immagine: The failling project ... does this use font encoding? 
> This is no longer part of the "compiler" artifact. If your module needs font 
> encoding and font embeding, you need to add an additional plugin dependency 
> to com.adobe:fontkit:1.0:pom
>
> Chris
>
>
> 
> Von: Frédéric THOMAS 
> Gesendet: Sonntag, 19. April 2015 20:40
> An: dev@flex.apache.org
> Betreff: RE: AW: AW: Flex SDK Converter Maven Extension available
>
> Hey Chris,
>
> Yep, was that, thanks !
>
> The project was compiling nicely with FM 7.0.1, SDK 4.14, I changed it to SDK 
> 4.13.0 and FM 7.1.0-SNAPSHOT to verify.
>
> 1- I noticed you have a dependency to flash player 10.2, is this for the 
> minimum version in case it is not specify ?
> 2- I removed the FM dependency of flexmojos-threadlocaltoolkit-wrapper to 
> fonkit which is not in the compiler pom anymore and while it compiles some 
> projects it fails on others with something not really helpful 
> https://paste.apache.org/nIkS
>
> Does it mean something for you ?
>
> Frédéric THOMAS
>
>> From: christofer.d...@c-ware.de
>> To: dev@flex.apache.org
>> Subject: AW: AW: Flex SDK Converter Maven Extension available
>> Date: Sun, 19 Apr 2015 17:21:47 +
>>
>> Yup ... I know exactly why you are getting this cause I had to figgure that 
>> out too :-)
>> Maven 3.3 has higher requirements for the Java Version ... you need at least 
>> a Java 1.7 VM
>>
>> Chris
>>
>>
>>
>>
>> -Ursprüngliche Nachricht-
>> Von: Frédéric THOMAS [mailto:webdoubl...@hotmail.com]
>> Gesendet: Sonntag, 19. April 2015 18:46
>> An: dev@flex.apache.org
>> Betreff: RE: AW: Flex SDK Converter Maven Extension available
>>
>> Hi Chris,
>>
>> Just came back home and was trying FM 7.1.0-SNAPSHOT, I droped 
>> flex-maven-extension.jar into the lib/ext folder along with the 
>> extensions.xml of my fresh maven 3.3.1 (I still was in 3.0.5) and got this 
>> even though after I removed the extensions.xml:
>>
>> Exception in thread "main" java.lang.UnsupportedClassVersionError: 
>> org/apache/maven/cli/MavenCli : Unsupported major.minor version 51.0
>>
>> Any clue ?
>>
>> Frédéric THOMAS
>>
>> > From: christofer.d...@c-ware.de
>> > To: dev@flex.apache.org
>> > Subject: AW: Flex SDK Converter Maven Extension available
>> > Date: Sun, 19 Apr 2015 11:50:07 +
>> >
>> > Ok ... so maven and it's classloading can be a PITA ;-)
>> >
>> > But the latest version now works with all Maven versions from 3.1.1 up to 
>> > 3.3.1.
>> > So if you copy the fat jar from
>> > flex-utils/mavenizer/maven-extension/target/flex-maven-extension-1.0.0.jar 
>> > to MAVEN_HOME/lib/ext and try to build a Flex project with Flexmojos, the 
>> > magic will kick in instantly.
>> >
>> > Unfortunately my last changes seem to have broken the ability to include 
>> > the extension using the ".mvn/extensions.xml" mechanism. I'll fix that as 
>> > soon as possible.
>> >
>> > Chris
>> >
>> >
>> > -Ursprüngliche Nachricht-
>> > Von: Christofer Dutz [mailto:christofer.d...@c-ware.de]
>> > Gesendet: Samstag, 18. April 2015 18:18
>> > An: dev@flex.apache.org
>> > Betreff: AW: Flex SDK Converter Maven Extension available
>> >
>> > Ok ... today I started testing the extension with older Maven versions
>> > and with the extension installed in MAVEN_HOME/lib/ext instead of
>> > having it referenced from ".mvn/extension.xml" and it seems I have to
>> > put a little more work into this option. But feel free to test it with
>> > 3.3.1 :-)
>> >
>> > Chris
>> >
>> > 
>> > Von: Christofer Dutz 
>> > Gesendet

Re: Jenkins build is back to stable : flex-sdk_test #459

2016-01-06 Thread Mihai Chira
hallelujah!

On 4 January 2016 at 21:30,   wrote:
> See 
>


Re: [2/3] git commit: [flex-sdk] [refs/heads/develop] - fix script

2016-01-06 Thread Mihai Chira
thanks for that, I hadn't noticed.

On 5 January 2016 at 00:39,   wrote:
> fix script
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/fb263b33
> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/fb263b33
> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/fb263b33
>
> Branch: refs/heads/develop
> Commit: fb263b338d501eafeca7a7ff4132a0328ddefcb3
> Parents: 947a832
> Author: Alex Harui 
> Authored: Mon Jan 4 15:37:58 2016 -0800
> Committer: Alex Harui 
> Committed: Mon Jan 4 15:37:58 2016 -0800
>
> --
>  flexunit-tests.xml | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/fb263b33/flexunit-tests.xml
> --
> diff --git a/flexunit-tests.xml b/flexunit-tests.xml
> index d49a550..b09b56c 100644
> --- a/flexunit-tests.xml
> +++ b/flexunit-tests.xml
> @@ -106,7 +106,7 @@
>  
>
>
> -   dir="${FLEXUNIT_HOME}/FlexUnit4/target/flexunit-4.3.0-20140410-flex_4.12.0.swc"/>
> +   file="${FLEXUNIT_HOME}/FlexUnit4/target/flexunit-4.3.0-20140410-flex_4.12.0.swc"/>
>
>
>  
>


Re: git commit: [flex-sdk] [refs/heads/develop] - this got these test to pass on my mac

2016-01-04 Thread Mihai Chira
This also means that we'll need to update this xml when we release a
new version of FlexUnit. Is there a way we could reference the
flexunit build.xml's
"${build.version}-${build.number}-flex_${build.sdk}" variables,
instead of having to maintain these manually?

On 4 January 2016 at 14:31, Mihai Chira  wrote:
> I was just about to make the same change in flexunit-tests.xml, nice!
> Were the changes in FLEX_34625_Tests also necessary? In other words,
> was UIImpersonator.testDisplay not an IFocusManagerContainer? That
> would be odd.
>
> On 4 January 2016 at 07:59,   wrote:
>> Repository: flex-sdk
>> Updated Branches:
>>   refs/heads/develop 5bd868ea7 -> db54a3f34
>>
>>
>> this got these test to pass on my mac
>>
>>
>> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
>> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/db54a3f3
>> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/db54a3f3
>> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/db54a3f3
>>
>> Branch: refs/heads/develop
>> Commit: db54a3f34fb570557a24847224f50eab4c77bd82
>> Parents: 5bd868e
>> Author: Alex Harui 
>> Authored: Sun Jan 3 22:58:15 2016 -0800
>> Committer: Alex Harui 
>> Committed: Sun Jan 3 22:58:15 2016 -0800
>>
>> --
>>  flexunit-tests.xml|  4 +++-
>>  .../spark/tests/spark/skins/spark/FLEX_34625_Tests.as | 10 +++---
>>  2 files changed, 10 insertions(+), 4 deletions(-)
>> --
>>
>>
>> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/db54a3f3/flexunit-tests.xml
>> --
>> diff --git a/flexunit-tests.xml b/flexunit-tests.xml
>> index 6475956..dce8cc7 100644
>> --- a/flexunit-tests.xml
>> +++ b/flexunit-tests.xml
>> @@ -77,6 +77,7 @@
>>  toDir="${tests.bin}/report"
>>  haltonfailure="false"
>>  verbose="true"
>> +debug="true"
>>  localTrusted="true">
>>
>>
>> @@ -85,7 +86,7 @@
>>  
>>
>>
>> -  
>> +  > file="${FLEXUNIT_HOME}/FlexUnit4/target/flexunit-4.3.0-20140410-flex_4.12.0.swc"/>
>>
>>  
>>
>> @@ -96,6 +97,7 @@
>>  toDir="${tests.bin}/report"
>>  haltonfailure="false"
>>  verbose="true"
>> +debug="true"
>>  localTrusted="true">
>>
>>
>>
>> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/db54a3f3/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
>> --
>> diff --git 
>> a/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as 
>> b/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
>> index c040b38..fb0cbac 100644
>> --- a/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
>> +++ b/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
>> @@ -40,7 +40,11 @@ package spark.skins.spark {
>>  [Before]
>>  public function setUp():void
>>  {
>> -var _focusManager:FocusManager = new 
>> FocusManager(UIImpersonator.testDisplay as IFocusManagerContainer);
>> +var _focusManager:FocusManager;
>> +if (UIImpersonator.testDisplay is IFocusManagerContainer)
>> +_focusManager = new FocusManager(UIImpersonator.testDisplay 
>> as IFocusManagerContainer);
>> +else
>> +_focusManager = 
>> UIImpersonator.testDisplay.parent["document"].focusManager;
>>  _focusManager.showFocusIndicator = true;
>>
>>  _textInput = new TextInput();
>> @@ -59,7 +63,7 @@ package spark.skins.spark {
>>  public function test_focus_skin_with_zero_focus_thickness():void
>>  {
>>  //given
>> -UIImpersonator.addChild(_textInput);
>> +UIImpersonator.addElement(_textInput);
>>
>>  //when
>>  _textInput.setStyle("focusThickness", 0);
>> @@ -75,7 +79,7 @@ package spark.skins.spark {
>>  public function test_focus_skin_with_NaN_focus_thickness():void
>>  {
>>  //given
>> -UIImpersonator.addChild(_textInput);
>> +UIImpersonator.addElement(_textInput);
>>
>>  //when
>>  _textInput.setStyle("focusThickness", NaN);
>>


Re: git commit: [flex-sdk] [refs/heads/develop] - this got these test to pass on my mac

2016-01-04 Thread Mihai Chira
I was just about to make the same change in flexunit-tests.xml, nice!
Were the changes in FLEX_34625_Tests also necessary? In other words,
was UIImpersonator.testDisplay not an IFocusManagerContainer? That
would be odd.

On 4 January 2016 at 07:59,   wrote:
> Repository: flex-sdk
> Updated Branches:
>   refs/heads/develop 5bd868ea7 -> db54a3f34
>
>
> this got these test to pass on my mac
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/db54a3f3
> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/db54a3f3
> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/db54a3f3
>
> Branch: refs/heads/develop
> Commit: db54a3f34fb570557a24847224f50eab4c77bd82
> Parents: 5bd868e
> Author: Alex Harui 
> Authored: Sun Jan 3 22:58:15 2016 -0800
> Committer: Alex Harui 
> Committed: Sun Jan 3 22:58:15 2016 -0800
>
> --
>  flexunit-tests.xml|  4 +++-
>  .../spark/tests/spark/skins/spark/FLEX_34625_Tests.as | 10 +++---
>  2 files changed, 10 insertions(+), 4 deletions(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/db54a3f3/flexunit-tests.xml
> --
> diff --git a/flexunit-tests.xml b/flexunit-tests.xml
> index 6475956..dce8cc7 100644
> --- a/flexunit-tests.xml
> +++ b/flexunit-tests.xml
> @@ -77,6 +77,7 @@
>  toDir="${tests.bin}/report"
>  haltonfailure="false"
>  verbose="true"
> +debug="true"
>  localTrusted="true">
>
>
> @@ -85,7 +86,7 @@
>  
>
>
> -  
> +   file="${FLEXUNIT_HOME}/FlexUnit4/target/flexunit-4.3.0-20140410-flex_4.12.0.swc"/>
>
>  
>
> @@ -96,6 +97,7 @@
>  toDir="${tests.bin}/report"
>  haltonfailure="false"
>  verbose="true"
> +debug="true"
>  localTrusted="true">
>
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/db54a3f3/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
> --
> diff --git 
> a/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as 
> b/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
> index c040b38..fb0cbac 100644
> --- a/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
> +++ b/frameworks/projects/spark/tests/spark/skins/spark/FLEX_34625_Tests.as
> @@ -40,7 +40,11 @@ package spark.skins.spark {
>  [Before]
>  public function setUp():void
>  {
> -var _focusManager:FocusManager = new 
> FocusManager(UIImpersonator.testDisplay as IFocusManagerContainer);
> +var _focusManager:FocusManager;
> +if (UIImpersonator.testDisplay is IFocusManagerContainer)
> +_focusManager = new FocusManager(UIImpersonator.testDisplay 
> as IFocusManagerContainer);
> +else
> +_focusManager = 
> UIImpersonator.testDisplay.parent["document"].focusManager;
>  _focusManager.showFocusIndicator = true;
>
>  _textInput = new TextInput();
> @@ -59,7 +63,7 @@ package spark.skins.spark {
>  public function test_focus_skin_with_zero_focus_thickness():void
>  {
>  //given
> -UIImpersonator.addChild(_textInput);
> +UIImpersonator.addElement(_textInput);
>
>  //when
>  _textInput.setStyle("focusThickness", 0);
> @@ -75,7 +79,7 @@ package spark.skins.spark {
>  public function test_focus_skin_with_NaN_focus_thickness():void
>  {
>  //given
> -UIImpersonator.addChild(_textInput);
> +UIImpersonator.addElement(_textInput);
>
>  //when
>  _textInput.setStyle("focusThickness", NaN);
>


Re: Jenkins build is still unstable: flex-sdk_test #432

2015-12-23 Thread Mihai Chira
Cool. Instead of specifying the swc, though, I got the flexunit
build.xml to (temporarily) stop compiling the as3 version. This should
achieve the same purpose. (I did this on the develop branch, I guess
that's the one we're using on CI?)

On 22 December 2015 at 17:06, Alex Harui  wrote:
>
>
> On 12/22/15, 2:59 AM, "Mihai Chira"  wrote:
>
>>>
>>> If the answer
>>> is to explicitly list the SWCs, that should be straightforward to do.
>>
>>I suggest that we try to see what happens if we just include the flex
>>version of the swc. My guess is that all the unit tests will pass,
>>suggesting that the right version of UIImpersonator is used, and that
>>no other unit tests were impacted by the change. We can revert at any
>>point if other tests fail, of course.
>>If you think it's a good idea, could you please make the change? That,
>>or let me know what I'd need to edit, because I don't know.
>
> I took a look at the build scripts.  In flexunit-tests.xml seems to be
> using a  Ant task with a  option.  I've never used that
> before, but I would suggest trying to specify the swc you want instead of
> just using the target folder which has both swcs.
>
> -Alex
>


Re: Jenkins build is still unstable: flex-sdk_test #432

2015-12-22 Thread Mihai Chira
> That thread seems to be about Flash Builder compatibility.  This is just
> Ant stuff, isn't it?

Yes, but it does detail some of the internal logic, logic which may
explain why we're seeing the as3 version of UIImpersonator, despite
the fact that we're also including the flex version of the swc.

> If the answer
> is to explicitly list the SWCs, that should be straightforward to do.

I suggest that we try to see what happens if we just include the flex
version of the swc. My guess is that all the unit tests will pass,
suggesting that the right version of UIImpersonator is used, and that
no other unit tests were impacted by the change. We can revert at any
point if other tests fail, of course.
If you think it's a good idea, could you please make the change? That,
or let me know what I'd need to edit, because I don't know.


Re: Jenkins build is still unstable: flex-sdk_test #432

2015-12-21 Thread Mihai Chira
> I don't know FlexUnit very well.  Is it normal to have both the as3 and
> flex version in the library-path so their definitions compete or is it
> normal to only have one or the other?  I'm trying to understand whether
> the current situation where both are in the library-path is the default
> and our tests have to compensate or whether the tests are misconfigured
> and only one or the other should be used.

I doubt it's normal; so far I've only used one of them in all the
projects I've ever worked on.

Michael Labriola says, in an older thread [1]: "The FlexUnit core
doesn't really care, it allows you to pass whatever you like, however,
since we can't pass config parameters to the core, FlexUnit tries to
'decide' what's going on, so if it doesn’t see any flex related
classes, it assumes its AS only and there are actually issues
trying to get to the stage. If it’s a Flex 3 application, it tries to
add an mx..Container. If it’s a mixed mx/spark app, it tries to add an
mx..Container. If it’s a Spark only app, it tries to add a Group."

I've CCd him to the thread, maybe he can help us elucidate this
question. Thanks in advance, Mike.

[1] 
http://apache-flex-development.247.n4.nabble.com/FlexUnit-Compatibility-was-FlexUnit-4-3-td46088.html


Re: Jenkins build is still unstable: flex-sdk_test #432

2015-12-18 Thread Mihai Chira
> Also note that the compiler shouldn't care as much about the order in the
> library path as the compile time for the definitions in the SWCs.  So if
> class Foo was compiled into the as3 SWC and then later into the flex SWC,
> the definition in the flex SWC should always win regardless of order.
> Maybe the SWCs were built in a different order on your computer.

I know that, BUT: I tried locally with
flexunit-4.3.0-20140410-as3_4.12.0.swc and it fails with exactly the
same errors as on the server. Then I tried with
flexunit-4.3.0-20140410-flex_4.12.0.swc and it passes (except for a
debug assert in
FLEX_34625_Tests.test_focus_skin_with_zero_focus_thickness() - but
different one, anyway, from the one currently failing on the server
[1].

So I don't know why, but it seems very likely that in the end our CI
server is using the as3 version of flexunit instead of the flex
version. I do see that they're included two times each (so 4 times in
total) on each run, so maybe the compiler might have a limit of how
many times it's overriding a class in a more recent swc over a
previous one? Don't know.

Regardless, how can we ensure that we use the flex version only? I
couldn't really tell where I need to tweak ant scripts or other code.

[1] 
http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_test/433/testReport/spark.skins/spark__FLEX_34625_Tests/test_focus_skin_with_zero_focus_thickness/


Re: a new spriteflexjs test

2015-12-17 Thread Mihai Chira
pretty cool, nice work!

2015-12-17 12:26 GMT+02:00 Carlos Rovira :
> Wow! :)
>
> 2015-12-17 9:19 GMT+01:00 Harbs :
>
>> Very cool!
>>
>> On Dec 17, 2015, at 7:42 AM, lizhi  wrote:
>>
>> >
>> http://matrix3d.github.io/assets/html5/flexjsstage3d/bin/js-release/#test_puyodot
>> >
>> >
>> >
>> > --
>> > View this message in context:
>> http://apache-flex-development.247.n4.nabble.com/a-new-spriteflexjs-test-tp50666.html
>> > Sent from the Apache Flex Development mailing list archive at Nabble.com.
>>
>>
>
>
> --
>
> Carlos Rovira
> Director General
> M: +34 607 22 60 05
> http://www.codeoscopic.com
> http://www.avant2.es
>
>
> Este mensaje se dirige exclusivamente a su destinatario y puede contener
> información privilegiada o confidencial. Si ha recibido este mensaje por
> error, le rogamos que nos lo comunique inmediatamente por esta misma vía y
> proceda a su destrucción.
>
> De la vigente Ley Orgánica de Protección de Datos (15/1999), le comunicamos
> que sus datos forman parte de un fichero cuyo responsable es CODEOSCOPIC
> S.A. La finalidad de dicho tratamiento es facilitar la prestación del
> servicio o información solicitados, teniendo usted derecho de acceso,
> rectificación, cancelación y oposición de sus datos dirigiéndose a nuestras
> oficinas c/ Paseo de la Habana 9-11, 28036, Madrid con la documentación
> necesaria.


Re: Jenkins build is still unstable: flex-sdk_test #432

2015-12-17 Thread Mihai Chira
> It appears that flex-sdk_test uses the flex-flexunit build on the CI
> server.  Does that mean the flex-flexunit build is not configured to
> produce the right artifacts for Flex customers.  If so, that should
> probably get fixed.

flex-flexunit does produce both
flexunit-4.3.0-20140410-flex_4.12.0.swc and
flexunit-4.3.0-20140410-as3_4.12.0.swc, and we need to use the first
one. I don't know where to check which one is used.

Isn't flex-sdk_test simply using the test target of build.xml? That
one ends up using flexunit-tests.xml, which uses the
flexUnitTasks.tasks ant task. So that's why I thought we need to
replace 
flex-flexunit\FlexUnit4AntTasks\test\sandbox\libs\flexunit-core-flex-4.1.0.x-sdky.y.y.y.swc
with one of the above. Or does it get replaced automatically as part
of some ant target of FlexUnit4AntTasks? I checked its build file and
I couldn't figure it out.


Re: Jenkins build is still unstable: flex-sdk_test #432

2015-12-16 Thread Mihai Chira
The two test classes still failing are ones I wrote. They're failing
because UIImpersonator doesn't work correctly, which is a big hint
that in Jenkins we're using a version of FlexUnit that was compiled
for pure AS development, instead of for Flex development. In March
Chris offered to release FlexUnit 4.3, and I thought it's best we do
that first and then swap the swc for the flex one (in my local
FlexUnit4\target folder it's called
flexunit-4.3.0-20140410-flex_4.12.0.swc) to be used in the unit
testing target in Jenkins.

But since now we want to release Flex 4.15, maybe we should just
replace the current version with someone's local build of the 4.2
flexunit version (the latest). Does someone know where the swap should
happen? Is it in
flex-flexunit\FlexUnit4AntTasks\test\sandbox\libs\flexunit-core-flex-4.1.0.x-sdky.y.y.y.swc?


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-12-16 Thread Mihai Chira
Yay! Thank you.

On 10 December 2015 at 17:52, Alex Harui  wrote:
>
>
> On 12/10/15, 1:00 AM, "Mihai Chira"  wrote:
>
>>Finding "FAIL: .*Sort" in the old reports highlights about 21 lines,
>>and in the new ones none. So I guess the sorting bugs have been fixed?
>>Or should we wait until we restart mustella for a confirmation?
>
> I think you have resolved all of the sorting problems.  Congratulations!
>
> -Alex
>


Re: [1/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple

2015-12-16 Thread Mihai Chira
I'd say FLEX-34879, FLEX-34927, FLEX-34941, FLEX-34945 and FLEX-34852
are features rather than bugs. I'm happy to move them up if it's
agreed. Also, FLEX-34883 and FLEX-34884 are sub-tasks of FLEX-34852 -
do we always include sub-tasks? If so, there are a couple more to add,
and if not, I can remove them.

On 15 December 2015 at 02:14,   wrote:
> Repository: flex-sdk
> Updated Branches:
>   refs/heads/develop 10a910ea2 -> 881ea2c36
>
>
> FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/65f93e5c
> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/65f93e5c
> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/65f93e5c
>
> Branch: refs/heads/develop
> Commit: 65f93e5cea8d2a9f73905d88f6bcbee3eeb8af0f
> Parents: 7445d3e
> Author: Justin Mclean 
> Authored: Wed Nov 18 17:18:48 2015 +1100
> Committer: Justin Mclean 
> Committed: Wed Nov 18 17:25:07 2015 +1100
>
> --
>  RELEASE_NOTES | 53 +++--
>  1 file changed, 51 insertions(+), 2 deletions(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/65f93e5c/RELEASE_NOTES
> --
> diff --git a/RELEASE_NOTES b/RELEASE_NOTES
> index e4002cd..8c898e0 100644
> --- a/RELEASE_NOTES
> +++ b/RELEASE_NOTES
> @@ -1,10 +1,59 @@
>  Apache Flex 4.15.0
>  ==
>
> +New Features
> +
> +- Sorting on complex DataGrid fields
> +
> +AIR and Flash Player Support
> +
> +- Support Flash Player 18.0, 19.0 and 20.0
> +- Support for AIR 18.0, 19.0 and 20.0
> +
>  Bug Fixes
>  -
> -FLEX-34753  Returning strongly typed object in Promise fails
> -
> +
> +FLEX-32249 AdvancedDataGrid.makeListData() incorrectly references
> +   HierarchicalCollectionViewCursor class instead of
> +   IHierarchicalCollectionViewCursor interface
> +FLEX-34028 Cannot Ctrl-Click A Datagrid Row to deselect it when 
> dragEnabled
> +   is set to true
> +FLEX-34741 Spark DataGrid Drag and Drop non functioning
> +FLEX-34744 TextFlowElement parent nulled when addChild method used via
> +   parent reference
> +FLEX-34751 Regression in fdb tool: VM is resumed if breakpoint can't be 
> set
> +FLEX-34753 Returning strongly typed object in Promise fails
> +FLEX-34775 Application hangs (in infinite loop) when opening a node 
> inside
> +   a HierarchicalCollectionView whose parent is closed 
> and then
> +   trying to navigate the collection
> +FLEX-34807 TLF - EditManager - TextFlowEdit -insertTextScrap
> +FLEX-34812 Error "Could not find or load main class Flash" when running
> +   `ant frameworks-rsls`
> +FLEX-34838 getItemIndex returns -1 for item whose property was edited 
> with
> +   GridItemEditor in a sorted DataGrid
> +FLEX-34850 Applying sort with complex dataField on DataGrid results in
> +   unintuitive item ordering
> +FLEX-34857 Adding an id to a fx:Vector when using -keep compiler argument
> +   results in a compiler error
> +FLEX-34858 Adding a subclass of a Vector's type to the Vector in MXML
> +   results in an internal build error
> +FLEX-34862 RTE on ListBase when dataProvider is changed
> +FLEX-34876 Paste Problem with multiple paragraphs
> +FLEX-34878 error property of NumberFormatter returns null and not it's
> +   default value
> +FLEX-34879 FLEX-34853 Deprecate state setters and reverse() for mx and
> +   spark SortField and Sort classes
> +FLEX-34883 FLEX-34852 Sort correctly by complex fields with all data 
> types
> +FLEX-34884 FLEX-34852 Make sure that finding objects works correctly
> +FLEX-34891 TLF: pasted text doesn't get the format of the original text
> +FLEX-34927 Allow the setting of an arbitrary property on an object via
> +   ObjectUtil
> +FLEX-34929 Error #1009 when copy/paste a text with style effect in a
> +   RichEditableText/RichTextEditor
> +FLEX-34941 Allow custom validators to use the triggerEvent
> +FLEX-34944 GridItemRenderer overrides error tooltip
> +FLEX-34945 Validator should be able to validate nested properties
> +
>  Known Issues
>  
>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-12-10 Thread Mihai Chira
Finding "FAIL: .*Sort" in the old reports highlights about 21 lines,
and in the new ones none. So I guess the sorting bugs have been fixed?
Or should we wait until we restart mustella for a confirmation?

On 8 December 2015 at 17:19, Alex Harui  wrote:
> Thanks for sticking with it.  I have my fingers crossed.
>
> -Alex
>
> On 12/8/15, 7:58 AM, "Mihai Chira"  wrote:
>
>>Just pushed another commit. Locally all the mustella tests in the
>>spark/Collections/Sort/Other are now passing, fingers crossed that all
>>the other sort-related ones will also pass.
>>The lesson: moving from inheritance to composition can be super
>>complicated! Events, the new class member using "this" instead of the
>>parent, framework classes calling functions via object["initialized"]
>>instead of an interface, etc. Still worth it, though, to remove code
>>duplication (in this case the mx versions of Sort and SortField were
>>mostly - and imperfectly - copy-pasted in their spark counterparts.
>>This meant that a change to one had to be reflected in the other,
>>which usually didn't happen. It also meant that tests would have
>>needed duplication as well, etc).
>>
>>On 3 December 2015 at 15:51, Mihai Chira  wrote:
>>> In the end it's an improvement, but in the end 5 test cases are still
>>> failing. Right now I'm travelling, and won't be able to take another
>>> look until Saturday. Does someone else want to help out?
>>>
>>> On 3 December 2015 at 15:18, Alex Harui  wrote:
>>>> Excellent!  Thanks, -Alex
>>>>
>>>> On 12/3/15, 6:01 AM, "Mihai Chira"  wrote:
>>>>
>>>>>About to commit and push a fix for this in the next hour. (It took me
>>>>>so long because my HDD had bad sectors which caused lots of pain in
>>>>>the last few days.)
>>>>>
>>>>>On 24 November 2015 at 18:03, Alex Harui  wrote:
>>>>>>
>>>>>>
>>>>>> On 11/24/15, 8:41 AM, "Mihai Chira"  wrote:
>>>>>>
>>>>>>>Yes, but the earliest I can do that is on Monday. I hope that still
>>>>>>>works
>>>>>>>regarding the release. (And I hope I'll manage to solve it, but we'll
>>>>>>>see.)
>>>>>>>On 24 Nov 2015 08:19, "Alex Harui"  wrote:
>>>>>>
>>>>>> I don't know of any plans to cut an RC this week, so I think Monday
>>>>>>should
>>>>>> be ok.
>>>>>>
>>>>>> Thanks,
>>>>>> Alex
>>>>>>
>>>>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-12-08 Thread Mihai Chira
Just pushed another commit. Locally all the mustella tests in the
spark/Collections/Sort/Other are now passing, fingers crossed that all
the other sort-related ones will also pass.
The lesson: moving from inheritance to composition can be super
complicated! Events, the new class member using "this" instead of the
parent, framework classes calling functions via object["initialized"]
instead of an interface, etc. Still worth it, though, to remove code
duplication (in this case the mx versions of Sort and SortField were
mostly - and imperfectly - copy-pasted in their spark counterparts.
This meant that a change to one had to be reflected in the other,
which usually didn't happen. It also meant that tests would have
needed duplication as well, etc).

On 3 December 2015 at 15:51, Mihai Chira  wrote:
> In the end it's an improvement, but in the end 5 test cases are still
> failing. Right now I'm travelling, and won't be able to take another
> look until Saturday. Does someone else want to help out?
>
> On 3 December 2015 at 15:18, Alex Harui  wrote:
>> Excellent!  Thanks, -Alex
>>
>> On 12/3/15, 6:01 AM, "Mihai Chira"  wrote:
>>
>>>About to commit and push a fix for this in the next hour. (It took me
>>>so long because my HDD had bad sectors which caused lots of pain in
>>>the last few days.)
>>>
>>>On 24 November 2015 at 18:03, Alex Harui  wrote:
>>>>
>>>>
>>>> On 11/24/15, 8:41 AM, "Mihai Chira"  wrote:
>>>>
>>>>>Yes, but the earliest I can do that is on Monday. I hope that still
>>>>>works
>>>>>regarding the release. (And I hope I'll manage to solve it, but we'll
>>>>>see.)
>>>>>On 24 Nov 2015 08:19, "Alex Harui"  wrote:
>>>>
>>>> I don't know of any plans to cut an RC this week, so I think Monday
>>>>should
>>>> be ok.
>>>>
>>>> Thanks,
>>>> Alex
>>>>
>>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-12-03 Thread Mihai Chira
In the end it's an improvement, but in the end 5 test cases are still
failing. Right now I'm travelling, and won't be able to take another
look until Saturday. Does someone else want to help out?

On 3 December 2015 at 15:18, Alex Harui  wrote:
> Excellent!  Thanks, -Alex
>
> On 12/3/15, 6:01 AM, "Mihai Chira"  wrote:
>
>>About to commit and push a fix for this in the next hour. (It took me
>>so long because my HDD had bad sectors which caused lots of pain in
>>the last few days.)
>>
>>On 24 November 2015 at 18:03, Alex Harui  wrote:
>>>
>>>
>>> On 11/24/15, 8:41 AM, "Mihai Chira"  wrote:
>>>
>>>>Yes, but the earliest I can do that is on Monday. I hope that still
>>>>works
>>>>regarding the release. (And I hope I'll manage to solve it, but we'll
>>>>see.)
>>>>On 24 Nov 2015 08:19, "Alex Harui"  wrote:
>>>
>>> I don't know of any plans to cut an RC this week, so I think Monday
>>>should
>>> be ok.
>>>
>>> Thanks,
>>> Alex
>>>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-12-03 Thread Mihai Chira
About to commit and push a fix for this in the next hour. (It took me
so long because my HDD had bad sectors which caused lots of pain in
the last few days.)

On 24 November 2015 at 18:03, Alex Harui  wrote:
>
>
> On 11/24/15, 8:41 AM, "Mihai Chira"  wrote:
>
>>Yes, but the earliest I can do that is on Monday. I hope that still works
>>regarding the release. (And I hope I'll manage to solve it, but we'll
>>see.)
>>On 24 Nov 2015 08:19, "Alex Harui"  wrote:
>
> I don't know of any plans to cut an RC this week, so I think Monday should
> be ok.
>
> Thanks,
> Alex
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-11-24 Thread Mihai Chira
Yes, but the earliest I can do that is on Monday. I hope that still works
regarding the release. (And I hope I'll manage to solve it, but we'll see.)
On 24 Nov 2015 08:19, "Alex Harui"  wrote:

> Hey Mihai,
>
> I think the Mustella runs are a bit more stable and we're trying to clean
> up failures and get a release out.  Can you find some time to look at the
> sort failures again?
>
> Thanks,
> -Alex
>
> On 7/18/15, 12:39 PM, "Mihai Chira"  wrote:
>
> >Yep, it's pretty clear which ones are still failing.
> >
> >I'm looking, for instance, at
> >SF_module_sparkButtonBar_global_tester.mxml, whose only test case
> >should run perfectly. I made a sample app which does (seemingly) the
> >same thing, and the Sort and SortField do return the correct locale
> >value ("ru-RU"). So in order to figure out why in mustella it's
> >failing I'd need to debug it. I'm following the instructions on the
> >wiki now.
> >
> >FYI while doing so I got an error about cygwinshell:
> >"java.io.IOException: Cannot run program "${cygwinshell}":
> >CreateProcess error=2, The system cannot find the file specified". And
> >when I trace it with  I get
> >
> >[echo] shell = ${cygwinshell}
> >[echo] cygwinshell = ${cygwinshell}
> >
> >It worked only when I changed [1] into [2] in mustella/build.xml
> >(basically to use the git shell).
> >
> >
> >[1]  >value="/cygwin/bin/sh.exe"/>
> > >value="/cygwin64/bin/sh.exe"/>
> >
> >[2] 
> >
> >
> >On 17 July 2015 at 15:09, Alex Harui  wrote:
> >> I wasn’t able to reset mustella until just now so it might be hard to
> >>find
> >> your results in the 100’s of errors in build # 1533.  Hopefully build #
> >> 1534 will be cleaner.
> >>
> >> FWIW, my magic incantation that resets mustella is to log into the
> >>server,
> >> open ApacheFlex/dependencies/FlashPlayer_Debug and click on and close
> >>each
> >> debug player.  No idea why it works.  Maybe Tom can try that some day to
> >> see if it works for him as well.
> >>
> >> -Alex
> >>
> >> On 7/17/15, 3:16 AM, "Mihai Chira"  wrote:
> >>
> >>>Cool, thanks for the link. I'll take a look tonight or tomorrow at the
> >>>results.
> >>>On 16 Jul 2015 22:53, "Alex Harui"  wrote:
> >>>
> >>>> The link at [1] is the build server that is currently down.  It
> >>>>doesn’t
> >>>> run mustella.
> >>>>
> >>>> Mustella tests are at http://flex-mustella.cloudapp.net and failures
> >>>>are
> >>>> sent to commits@
> >>>>
> >>>> Every couple of days, we start getting weird failures that requires
> >>>> fiddling with the mustella server.  It looks like we’re in that funky
> >>>> state right now so I will try to deal with that in about 3 hours so
> >>>>the
> >>>> next run after that should show the effects of your changes.
> >>>>
> >>>> -Alex
> >>>>
> >>>> On 7/16/15, 1:48 PM, "Mihai Chira"  wrote:
> >>>>
> >>>> >At least one of the failures should now be fixed. If others are left,
> >>>> >I'll tackle them in the next few days.
> >>>> >How can I monitor the test results? The bookmark I have for the build
> >>>> >server is this[1] and it doesn't seem to be working. Sorry if there
> >>>> >was a url change that I didn't catch.
> >>>> >
> >>>> >[1] http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_test/
> >>>> >
> >>>> >On 16 July 2015 at 21:52, Mihai Chira  wrote:
> >>>> >>> changes.  Can you take a look?
> >>>> >>
> >>>> >> on it
> >>>>
> >>>>
> >>
>
>


Re: do-while-false

2015-11-20 Thread Mihai Chira
+1, as a class getter, an internal function, or even a local variable
with a descriptive name.

On 19 November 2015 at 09:44, Justin Mclean  wrote:
> Hi,
>
> I prefer:
>
> if (giveItName()) {
> ….
> }
>
> giveItName() {
> return condition1 && condition2 && condition3;
> }
>
> Thanks,
> Justin


Re: Build failed in Jenkins: flex-sdk #884

2015-10-21 Thread Mihai Chira
Sorry about that, Alex. Thank you for the fix. I'll be more careful next
commits.
On 21 Oct 2015 23:16, "Alex Harui"  wrote:

> Nevermind, I pushed a fix.
>
> On 10/21/15, 11:35 AM, "Alex Harui"  wrote:
>
> >Mihai, can you fix the build?  It looks like an import statement got
> >deleted.
> >
> >-Alex
> >
> >On 10/21/15, 8:49 AM, "flex.ci.bui...@gmail.com"
> > wrote:
> >
> >>See <http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/884/changes>
> >>
> >>Changes:
> >>
> >>[Mihai Chira] FLEX-34945
> >>
> >>[Mihai Chira] FLEX-34944
> >>
> >>--
> >>[...truncated 1353 lines...]
> >>
> >>clean:
> >>
> >>clean:
> >>
> >>bundles-clean:
> >>
> >>clean:
> >>
> >>bundles-clean:
> >>
> >>clean:
> >>
> >>bundles-clean:
> >>
> >>clean:
> >>
> >>bundles-clean:
> >>
> >>clean:
> >>
> >>bundles-clean:
> >>
> >>clean:
> >>
> >>clean:
> >>
> >>clean:
> >>
> >>clean:
> >>   [delete] Deleting directory
> >><
> http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks/libs
> >>>
> >>
> >>local-fonts-snapshot:
> >>[touch] Creating
> >><
> http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks/loca
> >>l
> >>Fonts.ser>
> >>[touch] Creating
> >><
> http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks/macF
> >>o
> >>nts.ser>
> >>[touch] Creating
> >><
> http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks/winF
> >>o
> >>nts.ser>
> >>
> >>thirdparty-downloads:
> >>
> >>pixelbender-check:
> >>
> >>pixelbender-download:
> >>
> >>swfobject-check:
> >>
> >>swfobject-download:
> >>
> >>swfobject-fabridge-download:
> >>
> >>osmf-check:
> >>
> >>osmf-download:
> >>
> >>download-osmf-swc:
> >> [copy] Copying 1 file to
> >><
> http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks/libs
> >>>
> >>
> >>font-jars-check:
> >>
> >>ask-font:
> >>
> >>get-font-jars:
> >>
> >>font-jars:
> >>
> >>clean-adobe-flex-sdk:
> >>
> >>optional-downloads:
> >>
> >>main:
> >> [echo] Use thirdparty-clean or super-clean to remove these.
> >>
> >>prepare:
> >>
> >>playerglobal-setswfversion:
> >>
> >>flex-config:
> >> [copy] Copying 1 file to
> >><http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks>
> >> [copy] Copying 1 file to
> >><http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks>
> >> [copy] Copying 1 file to
> >><http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk/ws/frameworks>
> >>
> >>compile:
> >>
> >>framework:
> >>
> >>bundles-clean:
> >>
> >>assets-clean:
> >>
> >>clean:
> >>
> >>assets-compile:
> >>[mxmlc] Loading configuration file
> >>C:\Jenkins\workspace\flex-sdk\frameworks\flex-config.xml
> >>[mxmlc]
> >>C:\Jenkins\workspace\flex-sdk\frameworks\projects\framework\assets\Assets
> >>.
> >>swf (9037 bytes)
> >>[mxmlc] Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
> >>
> >>compile:
> >> [echo] Compiling frameworks/libs/framework.swc
> >>[compc] Loading configuration file
> >>C:\Jenkins\workspace\flex-sdk\frameworks\flex-config.xml
> >>[compc] Loading configuration file
> >>C:\Jenkins\workspace\flex-sdk\frameworks\projects\framework\framework-con
> >>f
> >>ig.xml
> >>[compc] Loading configuration file
> >>C:\Jenkins\workspace\flex-sdk\frameworks\projects\framework\compile-confi
> >>g
> >>.xml
> >>[compc]
> >>C:\Jenkins\workspace\flex-sdk\frameworks\projects\framework\src\mx\bindin
> >>g
> >>\Binding.as(429): col: 20 Warning: addResponder is not a recognized
> >>method of the dynamic class Error.
> >>[compc]
> >

Re: git commit: [flex-tlf] [refs/heads/develop] - FLEX-34876 Added/fixed tests

2015-10-21 Thread Mihai Chira
Harbs, in relation to FLEX-34807, I don't understand the change you
made to FLEX_34807_Test.as: why is it expected that a new line will be
added when pasting text? Or is it something to do with the exporting
to plain text that requires it? Otherwise I'd see it as a bug, not as
expected behaviour.

On 12 October 2015 at 22:40,   wrote:
> Repository: flex-tlf
> Updated Branches:
>   refs/heads/develop 4a01f5708 -> 5eff80ef7
>
>
> FLEX-34876
> Added/fixed tests
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-tlf/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-tlf/commit/5eff80ef
> Tree: http://git-wip-us.apache.org/repos/asf/flex-tlf/tree/5eff80ef
> Diff: http://git-wip-us.apache.org/repos/asf/flex-tlf/diff/5eff80ef
>
> Branch: refs/heads/develop
> Commit: 5eff80ef7cb67e8385cb3b2519070bad38e9d1f2
> Parents: 4a01f57
> Author: Harbs 
> Authored: Mon Oct 12 23:39:43 2015 +0300
> Committer: Harbs 
> Committed: Mon Oct 12 23:39:43 2015 +0300
>
> --
>  automation_tests/src/AllTestsSuite.as  | 4 +++-
>  automation_tests/src/UnitTest/Tests/FLEX_34807_Test.as | 2 +-
>  textLayout/src/flashx/textLayout/edit/TextFlowEdit.as  | 2 +-
>  3 files changed, 5 insertions(+), 3 deletions(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/5eff80ef/automation_tests/src/AllTestsSuite.as
> --
> diff --git a/automation_tests/src/AllTestsSuite.as 
> b/automation_tests/src/AllTestsSuite.as
> index 0cd93e9..62f2f45 100644
> --- a/automation_tests/src/AllTestsSuite.as
> +++ b/automation_tests/src/AllTestsSuite.as
> @@ -33,6 +33,7 @@ package
>  import UnitTest.Tests.CrossContainerTest;
>  import UnitTest.Tests.ElementOperationTest;
>  import UnitTest.Tests.EventOverrideTest;
> +import UnitTest.Tests.FLEX_34807_Test;
>  import UnitTest.Tests.FactoryImportTest;
>  import UnitTest.Tests.FloatTest;
>  import UnitTest.Tests.FlowModelTest;
> @@ -111,7 +112,8 @@ package
>  public var measurementTest:MeasurementTest;
>  public var leadingTest:LeadingTest;
>  public var scrollToRangeTest:ScrollToRangeTest;
> -//public var 
> pasteWithMultiParagraph:PasteWithMutliParagraph_FLEX_34876_Test;
> +public var 
> pasteWithMultiParagraph:PasteWithMutliParagraph_FLEX_34876_Test;
> +   public var flex_34807:FLEX_34807_Test;
>  }
>
>  }
>
> http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/5eff80ef/automation_tests/src/UnitTest/Tests/FLEX_34807_Test.as
> --
> diff --git a/automation_tests/src/UnitTest/Tests/FLEX_34807_Test.as 
> b/automation_tests/src/UnitTest/Tests/FLEX_34807_Test.as
> index 872250a..ff03a97 100644
> --- a/automation_tests/src/UnitTest/Tests/FLEX_34807_Test.as
> +++ b/automation_tests/src/UnitTest/Tests/FLEX_34807_Test.as
> @@ -243,7 +243,7 @@ package UnitTest.Tests
>  private function 
> assertTextPastedCorrectlyAndExistingTextNotChanged(pastePosition:int):void
>  {
>  const currentSourceAsPlainText:String = 
> TextConverter.export(testApp.getTextFlow(), TextConverter.PLAIN_TEXT_FORMAT, 
> ConversionType.STRING_TYPE) as String;
> -assertEquals("Not all the pasted content appears in the new 
> TextFlow!", sourceAsPlainText.substr(0, pastePosition) + PASTED_TEXT + 
> sourceAsPlainText.substr(pastePosition), currentSourceAsPlainText);
> +assertEquals("Not all the pasted content appears in the new 
> TextFlow!", sourceAsPlainText.substr(0, pastePosition) + PASTED_TEXT + "\n" + 
> sourceAsPlainText.substr(pastePosition), currentSourceAsPlainText);
>  }
>  }
>  }
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/5eff80ef/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> --
> diff --git a/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as 
> b/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> index 5908353..491994c 100644
> --- a/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> +++ b/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> @@ -251,7 +251,7 @@ package flashx.textLayout.edit
> }
> else
> {
> -   if (applyFormat && firstParagraph)
> +   if (applyFormat)
> {
> destinationElement = 
> destinationLeaf ? findLowestPossibleParent(destinationLeaf.parent, 
> scrapElement) : findLowestPossibleParent(destinationElement, scrapElement);
> var currentInde

Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-10-11 Thread Mihai Chira
bump.
I will be away next week, so I can check your code when I return, from
the 20th. If you could take a look at it until then it would be great.
Thank you!

On 2 October 2015 at 14:53, Harbs  wrote:
> I will take a look next week.
>
> On Oct 2, 2015, at 3:49 PM, Mihai Chira  wrote:
>
>>> still the problem that the pasted text adds a new line (or a new
>>> paragraph, resulting in a new line when exported to plain text).
>>
>> Harbs, the fatal error is gone, which is great. Would you have time
>> these days to take a look at this regression? (Or whether it is a
>> regression in the first place, i.e. the unit test is correct?)
>> Thanks.
>


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-10-04 Thread Mihai Chira
Nice, thank you.

On 2 October 2015 at 13:53, Harbs  wrote:
> I will take a look next week.
>
> On Oct 2, 2015, at 3:49 PM, Mihai Chira  wrote:
>
>>> still the problem that the pasted text adds a new line (or a new
>>> paragraph, resulting in a new line when exported to plain text).
>>
>> Harbs, the fatal error is gone, which is great. Would you have time
>> these days to take a look at this regression? (Or whether it is a
>> regression in the first place, i.e. the unit test is correct?)
>> Thanks.
>


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-10-02 Thread Mihai Chira
> still the problem that the pasted text adds a new line (or a new
> paragraph, resulting in a new line when exported to plain text).

Harbs, the fatal error is gone, which is great. Would you have time
these days to take a look at this regression? (Or whether it is a
regression in the first place, i.e. the unit test is correct?)
Thanks.


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-10-02 Thread Mihai Chira
Thanks for the detailed steps. If I ever need to debug tlf unit tests
again and the browser won't work it's great to have an alternative.

On 23 September 2015 at 06:42, piotrz  wrote:
> Mihai,
>
> This is the projects [1] which you have to import to intellij in order to
> have compilation through IDE.
>
> automation_apps general config [2]
> automation_apps dependencies [3]
> You will have to add also CONFIG::minimaltests property in Compiler options.
>
> automation_core general config [4]
> automation_core dependencies [5]
>
> automation_tests general config [6]
> automation_tests dependencies [7]
>
> testApps general config [8]
> testApps dependencies [9]
>
> textLayout_editBar general config [10]
> textLayout_editBar dependencies [11]
>
> textLayout_ui general config [12]
> textLayout_ui dependencies [13]
>
> Note one thing that you will be testing SDK which you have in the
> dependencies, so you have to make sure that you are using Nightly Build with
> your fixes.
>
> [1] http://images.devs-on.net/Image/WY8gRN0bnO0ssCfE-Obszar.png
> [2] http://images.devs-on.net/Image/EkrYrClZMgSrPO0b-Obszar.png
> [3] http://images.devs-on.net/Image/sPFlSZskhgOoqC08-Obszar.png
> [4] http://images.devs-on.net/Image/4PuPkwaKmREmwzVa-Obszar.png
> [5] http://images.devs-on.net/Image/FKT1s2Kw6c6qoJbw-Obszar.png
> [6] http://images.devs-on.net/Image/hC2dn0hzukV1Pdhf-Obszar.png
> [7] http://images.devs-on.net/Image/1huQkY4DRsbysgt2-Obszar.png
> [8] http://images.devs-on.net/Image/emzDxEeW2qIijLLm-Obszar.png
> [9] http://images.devs-on.net/Image/ji0zuoYJZsqnltFY-Obszar.png
> [10] http://postimg.org/image/b73v4dzhf/
> [11] http://postimg.org/image/ik91s05up/
> [12] http://postimg.org/image/itl057i21/
> [13] http://postimg.org/image/vdnn84kbd/
>
> Piotr
>
>
>
>
>
> -
> Apache Flex PMC
> piotrzarzyck...@gmail.com
> --
> View this message in context: 
> http://apache-flex-development.247.n4.nabble.com/Fwd-jira-Comment-Edited-FLEX-34807-TLF-EditManager-TextFlowEdit-insertTextScrap-tp49072p49313.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-22 Thread Mihai Chira
Hi Piotr,
no worries, I found the reason why Firefox was closing unexpectedly:
when ran from ant, the ant task tries to make sure the browser is
closed once it finishes analysing the results. So then I could just
refresh the VellumUnit page in Firefox (rather than run it from ant)
and debug without problems.

If both you and Harbs could take a look at the test, to see if you
would add or change anything, it would help a lot. To me it feels
relatively comprehensive.

Harbs, from what I can tell from the failing unit tests, there is
still the problem that the pasted text adds a new line (or a new
paragraph, resulting in a new line when exported to plain text). Do
you have time to check it out these days? Thanks!

On 22 September 2015 at 12:52, piotrz  wrote:
> Mihai,
>
> I will try to describe it for you later today. :) It's a matter of import
> some modules and dependencies, but it is a bit tricky.
> We had with Harbs one session on skype and he was able to do this in Flash
> Builder as I remember.
>
> Piotr
>
>
>
> -
> Apache Flex PMC
> piotrzarzyck...@gmail.com
> --
> View this message in context: 
> http://apache-flex-development.247.n4.nabble.com/Fwd-jira-Comment-Edited-FLEX-34807-TLF-EditManager-TextFlowEdit-insertTextScrap-tp49072p49294.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-22 Thread Mihai Chira
I realise that I'm making the assumption that my latest tlf sources
are used (which include your fix), although I'm not sure if that's
true. (I think it is, because the fatal in the bug itself seems to not
be thrown.)

On 22 September 2015 at 12:55, Mihai Chira  wrote:
> I somehow managed to get two test functions running correctly (for
> some reason, the third one fails with a fatal - see below [1]). It
> would really help if you took a look at the test (just committed) to
> see if I started in the right direction. For now I'm just checking the
> plain text result, not formatting (will follow).
>
> It seems that there is a regression even at this stage: if my test
> code is correct, then when pasting "...Hello world!...",
> a new line is inserted at the end of the pasted code, as such:
>
> EXPECTED: "There...Hello world!... are many such..."
> ACTUAL: "There...Hello world!...
>  are many such..."
>
> [1] at 
> UnitTest.ExtendedClasses::VellumTestCase/setUpFlowForTest()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:639]
> at 
> UnitTest.ExtendedClasses::VellumTestCase/importContent()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:634]
> at 
> UnitTest.ExtendedClasses::VellumTestCase/loadTestFile()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:700]
> at 
> UnitTest.ExtendedClasses::VellumTestCase/setUpTest()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:221]
> at 
> UnitTest.Tests::FLEX_34807_Test/setUpTest()[C:\Users\evolverine\workspace\tlf\automation_tests\src\UnitTest\Tests\FLEX_34807_Test.as:70]
> at Function/http://adobe.com/AS3/2006/builtin::apply()
> at 
> flex.lang.reflect::Method/apply()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/flex/lang/reflect/Method.as:233]
> at 
> org.flexunit.runners.model::FrameworkMethod/invokeExplosively()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/runners/model/FrameworkMethod.as:190]
> at 
> org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/InvokeMethod.as:61]
> at 
> org.flexunit.internals.runners.statements::SequencerWithDecoration/executeStep()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/SequencerWithDecoration.as:89]
> at 
> org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/StatementSequencer.as:130]
> at 
> org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/StatementSequencer.as:98]
> at 
> org.flexunit.internals.runners.statements::RunBeforesInline/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/RunBeforesInline.as:86]
> at 
> org.flexunit.internals.runners.statements::RunAftersInline/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/RunAftersInline.as:93]
> at 
> org.flexunit.internals.runners.statements::StackAndFrameManagement/handleTimerComplete()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/StackAndFrameManagement.as:127]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at flash.utils::Timer/tick()
>
> On 22 September 2015 at 12:31, Mihai Chira  wrote:
>> It's not that. The whole of Firefox shuts down (without warning, as if
>> I had closed it), not just the plugin. Same after changing the setting
>> you suggested. (I have the latest version of Firefox and of the Flash
>> content debugger.)
>> Do you know how I can use the projector debugger instead?
>>
>> On 22 September 2015 at 12:06, Harbs  wrote:
>>> You probably have the timeout set in Firefox and need to disable it. Check 
>>> this:
>>> https://support.mozilla.org/en-US/questions/705051
>>>
>>> On Sep 22, 2015, at 12:44 PM, Mihai Chira  wrote:
>>>
>>>> That's great to know, Piotr. Yes, I was debugging using ant, and with
>>>> Alex's suggestion (thanks!) I could get the test to run in Firefox, to
>>>> which I could connect with a remote debugging session. The problem is,
>>>> most times the browser simply shuts down in the middle of debugging,
&

Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-22 Thread Mihai Chira
I somehow managed to get two test functions running correctly (for
some reason, the third one fails with a fatal - see below [1]). It
would really help if you took a look at the test (just committed) to
see if I started in the right direction. For now I'm just checking the
plain text result, not formatting (will follow).

It seems that there is a regression even at this stage: if my test
code is correct, then when pasting "...Hello world!...",
a new line is inserted at the end of the pasted code, as such:

EXPECTED: "There...Hello world!... are many such..."
ACTUAL: "There...Hello world!...
 are many such..."

[1] at 
UnitTest.ExtendedClasses::VellumTestCase/setUpFlowForTest()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:639]
at 
UnitTest.ExtendedClasses::VellumTestCase/importContent()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:634]
at 
UnitTest.ExtendedClasses::VellumTestCase/loadTestFile()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:700]
at 
UnitTest.ExtendedClasses::VellumTestCase/setUpTest()[C:\Users\evolverine\workspace\tlf\automation_core\src\UnitTest\ExtendedClasses\VellumTestCase.as:221]
at 
UnitTest.Tests::FLEX_34807_Test/setUpTest()[C:\Users\evolverine\workspace\tlf\automation_tests\src\UnitTest\Tests\FLEX_34807_Test.as:70]
at Function/http://adobe.com/AS3/2006/builtin::apply()
at 
flex.lang.reflect::Method/apply()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/flex/lang/reflect/Method.as:233]
at 
org.flexunit.runners.model::FrameworkMethod/invokeExplosively()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/runners/model/FrameworkMethod.as:190]
at 
org.flexunit.internals.runners.statements::InvokeMethod/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/InvokeMethod.as:61]
at 
org.flexunit.internals.runners.statements::SequencerWithDecoration/executeStep()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/SequencerWithDecoration.as:89]
at 
org.flexunit.internals.runners.statements::StatementSequencer/handleChildExecuteComplete()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/StatementSequencer.as:130]
at 
org.flexunit.internals.runners.statements::StatementSequencer/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/StatementSequencer.as:98]
at 
org.flexunit.internals.runners.statements::RunBeforesInline/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/RunBeforesInline.as:86]
at 
org.flexunit.internals.runners.statements::RunAftersInline/evaluate()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/RunAftersInline.as:93]
at 
org.flexunit.internals.runners.statements::StackAndFrameManagement/handleTimerComplete()[/Users/justinmclean/Documents/flex-flexunit/FlexUnit4/src/org/flexunit/internals/runners/statements/StackAndFrameManagement.as:127]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.utils::Timer/tick()

On 22 September 2015 at 12:31, Mihai Chira  wrote:
> It's not that. The whole of Firefox shuts down (without warning, as if
> I had closed it), not just the plugin. Same after changing the setting
> you suggested. (I have the latest version of Firefox and of the Flash
> content debugger.)
> Do you know how I can use the projector debugger instead?
>
> On 22 September 2015 at 12:06, Harbs  wrote:
>> You probably have the timeout set in Firefox and need to disable it. Check 
>> this:
>> https://support.mozilla.org/en-US/questions/705051
>>
>> On Sep 22, 2015, at 12:44 PM, Mihai Chira  wrote:
>>
>>> That's great to know, Piotr. Yes, I was debugging using ant, and with
>>> Alex's suggestion (thanks!) I could get the test to run in Firefox, to
>>> which I could connect with a remote debugging session. The problem is,
>>> most times the browser simply shuts down in the middle of debugging,
>>> which isn't a way forward.
>>> Could you please tell me how to get the content debugger to run the test?
>>>
>>> On 21 September 2015 at 21:35, piotrz  wrote:
>>>> Mihai,
>>>>
>>>> As I understand you are running these test using ant ? Another option is
>>>> running tests in Flash content debugger in Intellij. The question is how 
>>>> did
>>>> you try run your tests ?
>>>>
>>>> Piotr
>>>>
>>>>
>>>>
>>>&g

Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-22 Thread Mihai Chira
It's not that. The whole of Firefox shuts down (without warning, as if
I had closed it), not just the plugin. Same after changing the setting
you suggested. (I have the latest version of Firefox and of the Flash
content debugger.)
Do you know how I can use the projector debugger instead?

On 22 September 2015 at 12:06, Harbs  wrote:
> You probably have the timeout set in Firefox and need to disable it. Check 
> this:
> https://support.mozilla.org/en-US/questions/705051
>
> On Sep 22, 2015, at 12:44 PM, Mihai Chira  wrote:
>
>> That's great to know, Piotr. Yes, I was debugging using ant, and with
>> Alex's suggestion (thanks!) I could get the test to run in Firefox, to
>> which I could connect with a remote debugging session. The problem is,
>> most times the browser simply shuts down in the middle of debugging,
>> which isn't a way forward.
>> Could you please tell me how to get the content debugger to run the test?
>>
>> On 21 September 2015 at 21:35, piotrz  wrote:
>>> Mihai,
>>>
>>> As I understand you are running these test using ant ? Another option is
>>> running tests in Flash content debugger in Intellij. The question is how did
>>> you try run your tests ?
>>>
>>> Piotr
>>>
>>>
>>>
>>> -
>>> Apache Flex PMC
>>> piotrzarzyck...@gmail.com
>>> --
>>> View this message in context: 
>>> http://apache-flex-development.247.n4.nabble.com/Fwd-jira-Comment-Edited-FLEX-34807-TLF-EditManager-TextFlowEdit-insertTextScrap-tp49072p49281.html
>>> Sent from the Apache Flex Development mailing list archive at Nabble.com.
>


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-22 Thread Mihai Chira
That's great to know, Piotr. Yes, I was debugging using ant, and with
Alex's suggestion (thanks!) I could get the test to run in Firefox, to
which I could connect with a remote debugging session. The problem is,
most times the browser simply shuts down in the middle of debugging,
which isn't a way forward.
Could you please tell me how to get the content debugger to run the test?

On 21 September 2015 at 21:35, piotrz  wrote:
> Mihai,
>
> As I understand you are running these test using ant ? Another option is
> running tests in Flash content debugger in Intellij. The question is how did
> you try run your tests ?
>
> Piotr
>
>
>
> -
> Apache Flex PMC
> piotrzarzyck...@gmail.com
> --
> View this message in context: 
> http://apache-flex-development.247.n4.nabble.com/Fwd-jira-Comment-Edited-FLEX-34807-TLF-EditManager-TextFlowEdit-insertTextScrap-tp49072p49281.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-21 Thread Mihai Chira
All right, I have a very simple test going, but when I run it I see it
fails with a fatal. Which wouldn't be a problem if I had the debugger
version of flash player, to see what the error is. But I cannot
install it [1]. Is there a way to get the unit tests to open with
firefox instead? (Note that IE is not my default browser, but the
tests still open in it.)

[1] https://forums.adobe.com/message/7922164#7922164

On 21 September 2015 at 11:43, Mihai Chira  wrote:
> Thanks Piotr. I was just looking at a few of the tests now, and the
> ones I can find with PasteOperation are
> UnitTest.Tests.OperationTest.limitPasteTest() and
> deleteNextCharExceptionTest(), but they are both a bit confusing: the
> functions are marked private, and the only other references to them
> are in the functions themselves. How are they ever run, then?
>
> I noticed from these functions that what I should be searching for is
> SelManager.pasteTextScrap(), which is present in many of the tests.
> I'll start by reading some of those.
>
> On 20 September 2015 at 21:26, piotrz  wrote:
>> Mihai,
>>
>> As for the unit tests ping me if you will have any problems with fire it up.
>> Take look ta the existing one.
>>
>> Alex,
>>
>> What's with the jenkins machine - is it still down ?
>>
>> Thanks,
>> Piotr
>>
>>
>>
>> -
>> Apache Flex PMC
>> piotrzarzyck...@gmail.com
>> --
>> View this message in context: 
>> http://apache-flex-development.247.n4.nabble.com/Fwd-jira-Comment-Edited-FLEX-34807-TLF-EditManager-TextFlowEdit-insertTextScrap-tp49072p49253.html
>> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: git commit: [flex-tlf] [refs/heads/develop] - FLEX-34807

2015-09-21 Thread Mihai Chira
Cool, thanks for the explanation.

On 21 September 2015 at 11:57, Harbs  wrote:
> Yes. It’s a coding style I picked up quite some time ago. It assigns the 
> value to itself if destinationLeaf is null.
>
> It avoids writing an extra “if” (and keeps everything in one line while 
> keeping the declaration at the beginning of the line).
>
> It might be a bit confusing the first time you see it, but I think it’s 
> pretty easy to read once you are familiar with the style.
>
> On Sep 21, 2015, at 12:46 PM, Mihai Chira  wrote:
>
>> Is this line only confusing for me? var
>> destinationParagraph:ParagraphElement = destinationLeaf ?
>> destinationLeaf.getParagraph() : destinationParagraph;
>>
>> Is this the intention? if (destinationLeaf) destinationParagraph =
>> destinationLeaf.getParagraph();
>


Re: git commit: [flex-tlf] [refs/heads/develop] - FLEX-34807

2015-09-21 Thread Mihai Chira
Is this line only confusing for me? var
destinationParagraph:ParagraphElement = destinationLeaf ?
destinationLeaf.getParagraph() : destinationParagraph;

Is this the intention? if (destinationLeaf) destinationParagraph =
destinationLeaf.getParagraph();

On 19 September 2015 at 21:52,   wrote:
> Repository: flex-tlf
> Updated Branches:
>   refs/heads/develop 2ae535510 -> 96a959d1b
>
>
> FLEX-34807
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-tlf/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-tlf/commit/96a959d1
> Tree: http://git-wip-us.apache.org/repos/asf/flex-tlf/tree/96a959d1
> Diff: http://git-wip-us.apache.org/repos/asf/flex-tlf/diff/96a959d1
>
> Branch: refs/heads/develop
> Commit: 96a959d1b943630e68a826a1cf1fc804c73e8b95
> Parents: 2ae5355
> Author: Harbs 
> Authored: Sat Sep 19 22:52:35 2015 +0300
> Committer: Harbs 
> Committed: Sat Sep 19 22:52:35 2015 +0300
>
> --
>  textLayout/src/flashx/textLayout/edit/TextFlowEdit.as | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-tlf/blob/96a959d1/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> --
> diff --git a/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as 
> b/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> index 235cd08..0fc41fb 100644
> --- a/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> +++ b/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as
> @@ -241,7 +241,7 @@ package flashx.textLayout.edit
> var scrapElement:FlowElement = scrapLeaf; 
>   // highest level complete element in the scrap
>
> // On the first paragraph, it always merges 
> in to the destination paragraph if the destination paragraph has content
> -   var destinationParagraph:ParagraphElement = 
> destinationLeaf.getParagraph();
> +   var destinationParagraph:ParagraphElement = 
> destinationLeaf ? destinationLeaf.getParagraph() : destinationParagraph;
> if (firstParagraph && 
> (destinationParagraph.textLength > 1 || applyFormat))
> {
> var scrapParagraph:ParagraphElement = 
> scrapLeaf.getParagraph();
> @@ -253,7 +253,7 @@ package flashx.textLayout.edit
> {
> if (applyFormat && firstParagraph)
> {
> -   destinationElement = 
> findLowestPossibleParent(destinationLeaf.parent, scrapElement);
> +   destinationElement = 
> destinationLeaf ? findLowestPossibleParent(destinationLeaf.parent, 
> scrapElement) : findLowestPossibleParent(destinationElement, scrapElement);
> var currentIndex:int = 
> destinationElement.findChildIndexAtPosition(insertPosition - 
> destinationElement.getAbsoluteStart());
> 
> applyFormatToElement(destinationElement, currentIndex, scrapElement);
> }
> @@ -265,7 +265,7 @@ package flashx.textLayout.edit
>
> // Find the lowest level parent in the 
> TextFlow that can accept the scrapElement as a child.
> // If necessary, copy higher up the 
> scrapElement hierarchy to find a match.
> -   var destinationElement:FlowGroupElement = 
> findLowestPossibleParent(destinationLeaf.parent, scrapElement);
> +   var destinationElement:FlowGroupElement = 
> destinationLeaf ? findLowestPossibleParent(destinationLeaf.parent, 
> scrapElement) : findLowestPossibleParent(destinationElement, scrapElement);
> while (!destinationElement)
> {
> // Nothing in the TextFlow element 
> hierarchy can accept the incoming scrap element.
>


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-21 Thread Mihai Chira
Thanks Piotr. I was just looking at a few of the tests now, and the
ones I can find with PasteOperation are
UnitTest.Tests.OperationTest.limitPasteTest() and
deleteNextCharExceptionTest(), but they are both a bit confusing: the
functions are marked private, and the only other references to them
are in the functions themselves. How are they ever run, then?

I noticed from these functions that what I should be searching for is
SelManager.pasteTextScrap(), which is present in many of the tests.
I'll start by reading some of those.

On 20 September 2015 at 21:26, piotrz  wrote:
> Mihai,
>
> As for the unit tests ping me if you will have any problems with fire it up.
> Take look ta the existing one.
>
> Alex,
>
> What's with the jenkins machine - is it still down ?
>
> Thanks,
> Piotr
>
>
>
> -
> Apache Flex PMC
> piotrzarzyck...@gmail.com
> --
> View this message in context: 
> http://apache-flex-development.247.n4.nabble.com/Fwd-jira-Comment-Edited-FLEX-34807-TLF-EditManager-TextFlowEdit-insertTextScrap-tp49072p49253.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-20 Thread Mihai Chira
Yes, I can work on it tomorrow or Tuesday. I'll let you know if I need
any help. Thank you for working on this!

On 20 September 2015 at 09:52, Harbs  wrote:
> Please check my latest commit [2192608]
>
> I think it’s being handled correctly.
> I’m nulling the span if it’s supposed to insert into the same paragraph and 
> it’s no longer assuming the span is not null.
>
> I needed to do some special handling to make sure the insertion point is 
> correct.
>
> We’re going to need unit tests for this bug. Can you handle that?
>
> On Sep 20, 2015, at 10:35 AM, Mihai Chira  wrote:
>
>> Thanks for checking this. Indeed, the pasting algorithm was assuming it
>> could always find the terminator and work with that.
>>
>> I'm afraid that I'm not familiar enough with tlf to implement an
>> alternative algorithm which works without the terminator. But it is causing
>> grief for a lot of our users. Do you think you'll have time to find another
>> way to implement the algorithm?
>>
>> Thanks.
>> On 20 Sep 2015 08:37, "Harbs"  wrote:
>>
>>> The issue here is as follows:
>>>
>>> The old code was not merging a the paragraph terminator when content was
>>> added. This left an extra terminator which caused all kinds of problems
>>> with the table code (I do not remember the details.) It’s also questionable
>>> whether it’s a good idea to preserve formatting in the terminator.
>>> mergeToPreviousIfPossible normally does not merge spans if there’s
>>> different formatting, but empty paragraph terminators are an exception and
>>> it always merges them even if the formatting is different.
>>>
>>> I think the new behavior is more correct, but we’re going to have to
>>> handle pasting text as a special case because the code is assuming the text
>>> is not normalized which it now (sort-of) is..
>>>
>>> On Sep 9, 2015, at 7:37 PM, Mihai Chira  wrote:
>>>
>>>> Hey guys (addressed to Piotr and Harbs),
>>>>
>>>> if you have time to take a look at this, it would really help. I have
>>>> a feeling you'd have much better ideas on how to go forward with the
>>>> fix.
>>>>
>>>> Many thanks!
>>>>
>>>>
>>>> -- Forwarded message --
>>>> From: Mihai Chira (JIRA) 
>>>> Date: 9 September 2015 at 18:35
>>>> Subject: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager -
>>>> TextFlowEdit -insertTextScrap
>>>> To: iss...@flex.apache.org
>>>>
>>>>
>>>>
>>>>   [
>>> https://issues.apache.org/jira/browse/FLEX-34807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14737128#comment-14737128
>>>> ]
>>>>
>>>> Mihai Chira edited comment on FLEX-34807 at 9/9/15 4:35 PM:
>>>> 
>>>>
>>>> *Investigation update*: this bug was (highly likely) introduced by
>>>> commit [33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|
>>> https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35
>>> ]
>>>> on the 5th Oct 2014. If I comment out the last if clause of
>>>> {{ParagraphElement.ensureTerminatorAfterReplace()}}, which was added
>>>> by that commit (and subsequently edited into its current form), the
>>>> bug disappears. That's because the algorithm in
>>>> {{TextFlowEdit.insertTextScrap()}} requires at least one
>>>> FlowLeafElement before which to add the pasted contents, and before
>>>> this bug was introduced, that used to be
>>>> {{ParagraphElement.terminatorSpan}}. But since the commit the
>>>> terminatorSpan has been merged into the previous span.
>>>> This seems to imply that there is an expectation in
>>>> {{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
>>>> never be null (despite the null check in the line {code}insertPosition
>>>> = destinationLeaf ? destinationLeaf.getAbsoluteStart() :
>>>> textFlow.textLength - 1;{code}.
>>>> I imagine that just commenting out the code is not a viable solution,
>>>> as it will break other functionality. So we'll need either [~harbs] or
>>>> [~pete21] to throw in some thoughts, if they have the time. Much
>>>> appreciated.
>>>>
>>>>
>>>> was (Author: evolverine):
>>>> *Investigat

Re: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-20 Thread Mihai Chira
Thanks for checking this. Indeed, the pasting algorithm was assuming it
could always find the terminator and work with that.

I'm afraid that I'm not familiar enough with tlf to implement an
alternative algorithm which works without the terminator. But it is causing
grief for a lot of our users. Do you think you'll have time to find another
way to implement the algorithm?

Thanks.
On 20 Sep 2015 08:37, "Harbs"  wrote:

> The issue here is as follows:
>
> The old code was not merging a the paragraph terminator when content was
> added. This left an extra terminator which caused all kinds of problems
> with the table code (I do not remember the details.) It’s also questionable
> whether it’s a good idea to preserve formatting in the terminator.
> mergeToPreviousIfPossible normally does not merge spans if there’s
> different formatting, but empty paragraph terminators are an exception and
> it always merges them even if the formatting is different.
>
> I think the new behavior is more correct, but we’re going to have to
> handle pasting text as a special case because the code is assuming the text
> is not normalized which it now (sort-of) is..
>
> On Sep 9, 2015, at 7:37 PM, Mihai Chira  wrote:
>
> > Hey guys (addressed to Piotr and Harbs),
> >
> > if you have time to take a look at this, it would really help. I have
> > a feeling you'd have much better ideas on how to go forward with the
> > fix.
> >
> > Many thanks!
> >
> >
> > -- Forwarded message --
> > From: Mihai Chira (JIRA) 
> > Date: 9 September 2015 at 18:35
> > Subject: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager -
> > TextFlowEdit -insertTextScrap
> > To: iss...@flex.apache.org
> >
> >
> >
> >    [
> https://issues.apache.org/jira/browse/FLEX-34807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14737128#comment-14737128
> > ]
> >
> > Mihai Chira edited comment on FLEX-34807 at 9/9/15 4:35 PM:
> > 
> >
> > *Investigation update*: this bug was (highly likely) introduced by
> > commit [33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|
> https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35
> ]
> > on the 5th Oct 2014. If I comment out the last if clause of
> > {{ParagraphElement.ensureTerminatorAfterReplace()}}, which was added
> > by that commit (and subsequently edited into its current form), the
> > bug disappears. That's because the algorithm in
> > {{TextFlowEdit.insertTextScrap()}} requires at least one
> > FlowLeafElement before which to add the pasted contents, and before
> > this bug was introduced, that used to be
> > {{ParagraphElement.terminatorSpan}}. But since the commit the
> > terminatorSpan has been merged into the previous span.
> > This seems to imply that there is an expectation in
> > {{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
> > never be null (despite the null check in the line {code}insertPosition
> > = destinationLeaf ? destinationLeaf.getAbsoluteStart() :
> > textFlow.textLength - 1;{code}.
> > I imagine that just commenting out the code is not a viable solution,
> > as it will break other functionality. So we'll need either [~harbs] or
> > [~pete21] to throw in some thoughts, if they have the time. Much
> > appreciated.
> >
> >
> > was (Author: evolverine):
> > *Investigation update*: this bug was (highly likely) introduced by
> > commit [33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|
> https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35
> ]
> > on the 5th Oct 2014 by [~harbs]. If I comment out the last if clause
> > of {{ParagraphElement.ensureTerminatorAfterReplace()}}, which was
> > added by that commit (and subsequently edited into its current form),
> > the bug disappears. That's because the algorithm in
> > {{TextFlowEdit.insertTextScrap()}} requires at least one
> > FlowLeafElement before which to add the pasted contents, and before
> > this bug was introduced, that used to be
> > {{ParagraphElement.terminatorSpan}}. But since the commit the
> > terminatorSpan has been merged into the previous span.
> > This seems to imply that there is an expectation in
> > {{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
> > never be null (despite the null check in the line {code}insertPosition
> > = destinationLeaf ? destinationLeaf.getAbsoluteStart() :
> > textFlow.textLength - 1;{code}.
> > 

Re: Fwd: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-19 Thread Mihai Chira
bump
On 9 Sep 2015 18:37, "Mihai Chira"  wrote:

> Hey guys (addressed to Piotr and Harbs),
>
> if you have time to take a look at this, it would really help. I have
> a feeling you'd have much better ideas on how to go forward with the
> fix.
>
> Many thanks!
>
>
> ------ Forwarded message --
> From: Mihai Chira (JIRA) 
> Date: 9 September 2015 at 18:35
> Subject: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager -
> TextFlowEdit -insertTextScrap
> To: iss...@flex.apache.org
>
>
>
> [
> https://issues.apache.org/jira/browse/FLEX-34807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14737128#comment-14737128
> ]
>
> Mihai Chira edited comment on FLEX-34807 at 9/9/15 4:35 PM:
> 
>
> *Investigation update*: this bug was (highly likely) introduced by
> commit [33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|
> https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35
> ]
> on the 5th Oct 2014. If I comment out the last if clause of
> {{ParagraphElement.ensureTerminatorAfterReplace()}}, which was added
> by that commit (and subsequently edited into its current form), the
> bug disappears. That's because the algorithm in
> {{TextFlowEdit.insertTextScrap()}} requires at least one
> FlowLeafElement before which to add the pasted contents, and before
> this bug was introduced, that used to be
> {{ParagraphElement.terminatorSpan}}. But since the commit the
> terminatorSpan has been merged into the previous span.
> This seems to imply that there is an expectation in
> {{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
> never be null (despite the null check in the line {code}insertPosition
> = destinationLeaf ? destinationLeaf.getAbsoluteStart() :
> textFlow.textLength - 1;{code}.
> I imagine that just commenting out the code is not a viable solution,
> as it will break other functionality. So we'll need either [~harbs] or
> [~pete21] to throw in some thoughts, if they have the time. Much
> appreciated.
>
>
> was (Author: evolverine):
> *Investigation update*: this bug was (highly likely) introduced by
> commit [33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|
> https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35
> ]
> on the 5th Oct 2014 by [~harbs]. If I comment out the last if clause
> of {{ParagraphElement.ensureTerminatorAfterReplace()}}, which was
> added by that commit (and subsequently edited into its current form),
> the bug disappears. That's because the algorithm in
> {{TextFlowEdit.insertTextScrap()}} requires at least one
> FlowLeafElement before which to add the pasted contents, and before
> this bug was introduced, that used to be
> {{ParagraphElement.terminatorSpan}}. But since the commit the
> terminatorSpan has been merged into the previous span.
> This seems to imply that there is an expectation in
> {{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
> never be null (despite the null check in the line {code}insertPosition
> = destinationLeaf ? destinationLeaf.getAbsoluteStart() :
> textFlow.textLength - 1;{code}.
> I imagine that just commenting out the code is not a viable solution,
> as it will break other functionality. So we'll need either [~harbs] or
> [~pete21] to throw in some thoughts, if they have the time. Much
> appreciated.
>
> > TLF - EditManager - TextFlowEdit -insertTextScrap
> > -
> >
> > Key: FLEX-34807
> > URL: https://issues.apache.org/jira/browse/FLEX-34807
> > Project: Apache Flex
> >  Issue Type: Bug
> >  Components: Spark: RichEditableText
> >Affects Versions: Apache Flex 4.12.0, Apache Flex 4.13.0, Apache Flex
> 4.14.0
> >Reporter: Robbyn Gerhardt
> >Assignee: Mihai Chira
> >  Labels: editmanager, richeditabletext, tlf
> > Attachments: Bildschirmfoto 2015-03-19 um 15.28.19.png,
> Bildschirmfoto 2015-03-20 um 09.06.47.png, TextEditorTest.air,
> TextEditorTest.fxp
> >
> >
> > 1. Copy Formatted text from RichEditableText Editor, see Image
> > 2. Insert Formatted text from the clipboard with Ctrl + V in the editor.
> Then comes the error.
> > TypeError: Error #1009: Cannot access a property or method of a null
> object reference.
> >   at
> flashx.textLayout.edit::TextFlowEdit$/insertTextScrap()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as:244]
> >   at
> fla

Fwd: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager - TextFlowEdit -insertTextScrap

2015-09-09 Thread Mihai Chira
Hey guys (addressed to Piotr and Harbs),

if you have time to take a look at this, it would really help. I have
a feeling you'd have much better ideas on how to go forward with the
fix.

Many thanks!


-- Forwarded message --
From: Mihai Chira (JIRA) 
Date: 9 September 2015 at 18:35
Subject: [jira] [Comment Edited] (FLEX-34807) TLF - EditManager -
TextFlowEdit -insertTextScrap
To: iss...@flex.apache.org



[ 
https://issues.apache.org/jira/browse/FLEX-34807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14737128#comment-14737128
]

Mihai Chira edited comment on FLEX-34807 at 9/9/15 4:35 PM:


*Investigation update*: this bug was (highly likely) introduced by
commit 
[33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35]
on the 5th Oct 2014. If I comment out the last if clause of
{{ParagraphElement.ensureTerminatorAfterReplace()}}, which was added
by that commit (and subsequently edited into its current form), the
bug disappears. That's because the algorithm in
{{TextFlowEdit.insertTextScrap()}} requires at least one
FlowLeafElement before which to add the pasted contents, and before
this bug was introduced, that used to be
{{ParagraphElement.terminatorSpan}}. But since the commit the
terminatorSpan has been merged into the previous span.
This seems to imply that there is an expectation in
{{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
never be null (despite the null check in the line {code}insertPosition
= destinationLeaf ? destinationLeaf.getAbsoluteStart() :
textFlow.textLength - 1;{code}.
I imagine that just commenting out the code is not a viable solution,
as it will break other functionality. So we'll need either [~harbs] or
[~pete21] to throw in some thoughts, if they have the time. Much
appreciated.


was (Author: evolverine):
*Investigation update*: this bug was (highly likely) introduced by
commit 
[33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35|https://fisheye6.atlassian.com/changelog/flex-tlf?cs=33df98ab9d2c69c84d4de6ab2ae969f9c5f93e35]
on the 5th Oct 2014 by [~harbs]. If I comment out the last if clause
of {{ParagraphElement.ensureTerminatorAfterReplace()}}, which was
added by that commit (and subsequently edited into its current form),
the bug disappears. That's because the algorithm in
{{TextFlowEdit.insertTextScrap()}} requires at least one
FlowLeafElement before which to add the pasted contents, and before
this bug was introduced, that used to be
{{ParagraphElement.terminatorSpan}}. But since the commit the
terminatorSpan has been merged into the previous span.
This seems to imply that there is an expectation in
{{TextFlowEdit.insertTextScrap()}} that {{destinationLeaf}} should
never be null (despite the null check in the line {code}insertPosition
= destinationLeaf ? destinationLeaf.getAbsoluteStart() :
textFlow.textLength - 1;{code}.
I imagine that just commenting out the code is not a viable solution,
as it will break other functionality. So we'll need either [~harbs] or
[~pete21] to throw in some thoughts, if they have the time. Much
appreciated.

> TLF - EditManager - TextFlowEdit -insertTextScrap
> -
>
> Key: FLEX-34807
> URL: https://issues.apache.org/jira/browse/FLEX-34807
> Project: Apache Flex
>  Issue Type: Bug
>  Components: Spark: RichEditableText
>Affects Versions: Apache Flex 4.12.0, Apache Flex 4.13.0, Apache Flex 
> 4.14.0
>    Reporter: Robbyn Gerhardt
>Assignee: Mihai Chira
>  Labels: editmanager, richeditabletext, tlf
> Attachments: Bildschirmfoto 2015-03-19 um 15.28.19.png, 
> Bildschirmfoto 2015-03-20 um 09.06.47.png, TextEditorTest.air, 
> TextEditorTest.fxp
>
>
> 1. Copy Formatted text from RichEditableText Editor, see Image
> 2. Insert Formatted text from the clipboard with Ctrl + V in the editor. Then 
> comes the error.
> TypeError: Error #1009: Cannot access a property or method of a null object 
> reference.
>   at 
> flashx.textLayout.edit::TextFlowEdit$/insertTextScrap()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src/flashx/textLayout/edit/TextFlowEdit.as:244]
>   at 
> flashx.textLayout.operations::PasteOperation/doOperation()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src/flashx/textLayout/operations/PasteOperation.as:102]
>   at 
> flashx.textLayout.edit::EditManager/doInternal()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src/flashx/textLayout/edit/EditManager.as:767]
>   at 
> flashx.textLayout.edit::EditManager/doOperation()[/Users/erik/Documents/ApacheFlex/git/flex-tlf/textLayout/src/flashx/textLayout/edit/EditManage

flex-tool-api.jar and optimizer.jar missing

2015-07-23 Thread Mihai Chira
For a while now, running `ant` in the flex sdk root fails with this
message: "modules\compiler\build.xml:171: Warning: Could not find file
C:\Users\user\workspace\flex-sdk\in\flex-tool-api.jar to copy."
I then tried running `ant frameworks-rsls`, which then gives me
"Error: Unable to access jarfile
C:\Users\user\workspace\flex-sdk\lib\optimizer.jar".
FYI `ant -f installer.xml` runs just fine.

This is probably a silly thing I'm (not) doing, but I couldn't figure
out what. Any ideas?


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-23 Thread Mihai Chira
1. Good to know about these tools. I now made sure that the IntelliJ
project is using the correct SDK (which I have rebuilt before also
rebuilding the mustella SWF), and I get the same problem: I only reach
the constructors of TestCase and mx.modules.ModuleLoader. I think it's
that no one calls UnitTester.runTests() to actually start the test.
So I added "UnitTester.init(o)" in the static init method. This worked.

2. The next problem was an error with the excludes:

TypeError: Error #1009: Cannot access a property or method of a null
object reference.
at 
ExcludeFileLocation$/postProcessData()[C:\Users\evolverine\workspace\flex-sdk\mustella\as3\src\mustella\ExcludeFileLocation.as:210]
at 
ExcludeFileLocation$/completeHandler2()[C:\Users\evolverine\workspace\flex-sdk\mustella\as3\src\mustella\ExcludeFileLocation.as:203]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

This happened because of the logic in
ExcludeFileLocation.loadExcludeFile, in which it assumes that url is a
fully qualified path - but when running it from IntelliJ it's actually
"app:/SF_module_sparkButtonBar.swf". So it can't load the excludes.
Solution: I added "UnitTester.waitForExcludes = false;" in the static
init() method, before the (above) call to UnitTester.init().

3. Next problem: the runTests() method is now executed, but the
UnitTester.includeList has wrong values (e.g.
"spark/collections/Sort/Other/null$SortField_module_sparkButtonBar_localeStyle_global_test1"
- notice the "null").
3.1. At this point I realise that "UnitTester.init(o)" is not needed
because it's called by ScriptRunner. So I remove it and it keeps
working as before.
3.2. I discover mustella/classes/CurrentIncludeList.as, which seems to
be generated by GetExcIncCase.java. Anyone know why the last part of
the includes lines is "null"? Maybe I'm running the mini_run script
with wrong parameters? (It's "$ mini_run.sh
-caseName=SortField_module_sparkButtonBar_localeStyle_global_test1
tests/spark/collections/Sort/Other/SF_module_sparkButtonBar_global_tester.mxml".)
Solution: I manually edit the CurrentIncludeList.as file to contain
correct includes.
Result: didn't work; the includeList still has values with "null" at the end.

Solution 2: hammer the correct test in by adding the line
"includeList["spark/collections/Sort/Other/SF_module_sparkButtonBar_global_tester$SortField_module_sparkButtonBar_localeStyle_global_test1"]
= 1;" in UnitTester.runTests.
Result: works.

4. The DispatchMouseClickEvent TestStep is run, but SetProperty isn't.
>From what I could tell from debugging, the
assets\CustomSparkButtonBarModule.swf module is correctly loaded, and
dispatches the "ready" event that DispatchMouseClickEvent is
instructed to wait for, but for some reason the test run fails before
it's received. At this point my knowledge of mustella as code is
limiting my ability to debug this further without spending hours on
it.

Ideas?

On 19 July 2015 at 07:15, Alex Harui  wrote:
>
>
> On 7/18/15, 3:05 PM, "Mihai Chira"  wrote:
>
>>> The swf should hit breakpoints in the sort code. Is it not doing that?
>>I could only break the app on the constructors of UnitTester and
>>TestCase. Nothing in SortField or Sort (I didn't test the
>>constructors, just other methods that should have been called - even
>>if the bug was still there, that is). But the clue is that I can't get
>>any breakpoint to stop in ResetComponent, DispatchMouseClickEvent or
>>SetProperty.
>
> Makes me think your line numbers aren’t matching up.  If the mustella.swc
> is old or the debugger is looking at sources in a different version of
> Flex SDK, then line numbers won’t match and you will miss hitting
> breakpoints.  Often, the constructors are still at the same line, but more
> important code has moved as lines get added.
>
> If you swfdump -abc  the SWF you can see more about what went into it and
> compare line numbers.
>
> -Alex
>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-18 Thread Mihai Chira
> The swf should hit breakpoints in the sort code. Is it not doing that?
I could only break the app on the constructors of UnitTester and
TestCase. Nothing in SortField or Sort (I didn't test the
constructors, just other methods that should have been called - even
if the bug was still there, that is). But the clue is that I can't get
any breakpoint to stop in ResetComponent, DispatchMouseClickEvent or
SetProperty.


Re: Can we unify spark and mx Sort and SortField?

2015-07-18 Thread Mihai Chira
> Thanks for working on it.  What is it using instead of sortOn?
Array.sort(compareFunction)

> BTW, the build failed some sort tests.  See a recent set of results.
thanks for the heads up. Some are fixed, and some I'm now struggling
to debug (more details in the thread called "git commit: [flex-sdk]
[refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make
sure that the changes in FLEX-34854 haven't changed anything about
findItem.").


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-18 Thread Mihai Chira
Now I'm stuck because although I can run the swf that was generated at
the previous step in debug mode in IntelliJ, the most further
breakpoint which I can catch is in the TestCase.as constructor. Which
implies, to me, that the test case in the mxml file is defined and
created, but not executed. Do I need to change the code to get it to
execute somehow (maybe using that static function init()?), and then
regenerate the SWF?

On 18 July 2015 at 21:39, Mihai Chira  wrote:
> Yep, it's pretty clear which ones are still failing.
>
> I'm looking, for instance, at
> SF_module_sparkButtonBar_global_tester.mxml, whose only test case
> should run perfectly. I made a sample app which does (seemingly) the
> same thing, and the Sort and SortField do return the correct locale
> value ("ru-RU"). So in order to figure out why in mustella it's
> failing I'd need to debug it. I'm following the instructions on the
> wiki now.
>
> FYI while doing so I got an error about cygwinshell:
> "java.io.IOException: Cannot run program "${cygwinshell}":
> CreateProcess error=2, The system cannot find the file specified". And
> when I trace it with  I get
>
> [echo] shell = ${cygwinshell}
> [echo] cygwinshell = ${cygwinshell}
>
> It worked only when I changed [1] into [2] in mustella/build.xml
> (basically to use the git shell).
>
>
> [1]  value="/cygwin/bin/sh.exe"/>
>  value="/cygwin64/bin/sh.exe"/>
>
> [2] 
>
>
> On 17 July 2015 at 15:09, Alex Harui  wrote:
>> I wasn’t able to reset mustella until just now so it might be hard to find
>> your results in the 100’s of errors in build # 1533.  Hopefully build #
>> 1534 will be cleaner.
>>
>> FWIW, my magic incantation that resets mustella is to log into the server,
>> open ApacheFlex/dependencies/FlashPlayer_Debug and click on and close each
>> debug player.  No idea why it works.  Maybe Tom can try that some day to
>> see if it works for him as well.
>>
>> -Alex
>>
>> On 7/17/15, 3:16 AM, "Mihai Chira"  wrote:
>>
>>>Cool, thanks for the link. I'll take a look tonight or tomorrow at the
>>>results.
>>>On 16 Jul 2015 22:53, "Alex Harui"  wrote:
>>>
>>>> The link at [1] is the build server that is currently down.  It doesn’t
>>>> run mustella.
>>>>
>>>> Mustella tests are at http://flex-mustella.cloudapp.net and failures are
>>>> sent to commits@
>>>>
>>>> Every couple of days, we start getting weird failures that requires
>>>> fiddling with the mustella server.  It looks like we’re in that funky
>>>> state right now so I will try to deal with that in about 3 hours so the
>>>> next run after that should show the effects of your changes.
>>>>
>>>> -Alex
>>>>
>>>> On 7/16/15, 1:48 PM, "Mihai Chira"  wrote:
>>>>
>>>> >At least one of the failures should now be fixed. If others are left,
>>>> >I'll tackle them in the next few days.
>>>> >How can I monitor the test results? The bookmark I have for the build
>>>> >server is this[1] and it doesn't seem to be working. Sorry if there
>>>> >was a url change that I didn't catch.
>>>> >
>>>> >[1] http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_test/
>>>> >
>>>> >On 16 July 2015 at 21:52, Mihai Chira  wrote:
>>>> >>> changes.  Can you take a look?
>>>> >>
>>>> >> on it
>>>>
>>>>
>>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-18 Thread Mihai Chira
Yep, it's pretty clear which ones are still failing.

I'm looking, for instance, at
SF_module_sparkButtonBar_global_tester.mxml, whose only test case
should run perfectly. I made a sample app which does (seemingly) the
same thing, and the Sort and SortField do return the correct locale
value ("ru-RU"). So in order to figure out why in mustella it's
failing I'd need to debug it. I'm following the instructions on the
wiki now.

FYI while doing so I got an error about cygwinshell:
"java.io.IOException: Cannot run program "${cygwinshell}":
CreateProcess error=2, The system cannot find the file specified". And
when I trace it with  I get

[echo] shell = ${cygwinshell}
[echo] cygwinshell = ${cygwinshell}

It worked only when I changed [1] into [2] in mustella/build.xml
(basically to use the git shell).


[1] 


[2] 


On 17 July 2015 at 15:09, Alex Harui  wrote:
> I wasn’t able to reset mustella until just now so it might be hard to find
> your results in the 100’s of errors in build # 1533.  Hopefully build #
> 1534 will be cleaner.
>
> FWIW, my magic incantation that resets mustella is to log into the server,
> open ApacheFlex/dependencies/FlashPlayer_Debug and click on and close each
> debug player.  No idea why it works.  Maybe Tom can try that some day to
> see if it works for him as well.
>
> -Alex
>
> On 7/17/15, 3:16 AM, "Mihai Chira"  wrote:
>
>>Cool, thanks for the link. I'll take a look tonight or tomorrow at the
>>results.
>>On 16 Jul 2015 22:53, "Alex Harui"  wrote:
>>
>>> The link at [1] is the build server that is currently down.  It doesn’t
>>> run mustella.
>>>
>>> Mustella tests are at http://flex-mustella.cloudapp.net and failures are
>>> sent to commits@
>>>
>>> Every couple of days, we start getting weird failures that requires
>>> fiddling with the mustella server.  It looks like we’re in that funky
>>> state right now so I will try to deal with that in about 3 hours so the
>>> next run after that should show the effects of your changes.
>>>
>>> -Alex
>>>
>>> On 7/16/15, 1:48 PM, "Mihai Chira"  wrote:
>>>
>>> >At least one of the failures should now be fixed. If others are left,
>>> >I'll tackle them in the next few days.
>>> >How can I monitor the test results? The bookmark I have for the build
>>> >server is this[1] and it doesn't seem to be working. Sorry if there
>>> >was a url change that I didn't catch.
>>> >
>>> >[1] http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_test/
>>> >
>>> >On 16 July 2015 at 21:52, Mihai Chira  wrote:
>>> >>> changes.  Can you take a look?
>>> >>
>>> >> on it
>>>
>>>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-17 Thread Mihai Chira
Cool, thanks for the link. I'll take a look tonight or tomorrow at the
results.
On 16 Jul 2015 22:53, "Alex Harui"  wrote:

> The link at [1] is the build server that is currently down.  It doesn’t
> run mustella.
>
> Mustella tests are at http://flex-mustella.cloudapp.net and failures are
> sent to commits@
>
> Every couple of days, we start getting weird failures that requires
> fiddling with the mustella server.  It looks like we’re in that funky
> state right now so I will try to deal with that in about 3 hours so the
> next run after that should show the effects of your changes.
>
> -Alex
>
> On 7/16/15, 1:48 PM, "Mihai Chira"  wrote:
>
> >At least one of the failures should now be fixed. If others are left,
> >I'll tackle them in the next few days.
> >How can I monitor the test results? The bookmark I have for the build
> >server is this[1] and it doesn't seem to be working. Sorry if there
> >was a url change that I didn't catch.
> >
> >[1] http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_test/
> >
> >On 16 July 2015 at 21:52, Mihai Chira  wrote:
> >>> changes.  Can you take a look?
> >>
> >> on it
>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-16 Thread Mihai Chira
At least one of the failures should now be fixed. If others are left,
I'll tackle them in the next few days.
How can I monitor the test results? The bookmark I have for the build
server is this[1] and it doesn't seem to be working. Sorry if there
was a url change that I didn't catch.

[1] http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_test/

On 16 July 2015 at 21:52, Mihai Chira  wrote:
>> changes.  Can you take a look?
>
> on it


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34884 Adding unit test to make sure that the changes in FLEX-34854 haven't changed anything about findItem.

2015-07-16 Thread Mihai Chira
> changes.  Can you take a look?

on it


Re: Can we unify spark and mx Sort and SortField?

2015-06-21 Thread Mihai Chira
This is now done (pending some unit tests) - see recent commits.

Could someone please test that they can correctly sort an mx DataGrid
by clicking on its columns in an MX-only project? For some reason when
I try in IntelliJ I get this error[1]. And if you could try the same
for a Spark-only project it would be ace.

Also, does anyone know why spark.collections.Sort didn't use
Array.sortOn in the sort() function? If not, does anyone see a problem
if I add it?

[1] http://imgur.com/yB6HEz5

On 10 June 2015 at 14:58, Mihai Chira  wrote:
> That's very useful Peter, many thanks!
> It looks like I can use the framework.swc for the common part of these
> classes. Will get round to it later this week, I hope.
>
> On 10 June 2015 at 14:26, Peter Ginneberge  wrote:
>>
>>
>> I had a quick look yesterday and when I toggled "mx only" vs "spark only"
>> I saw the mx.swc swapped for the spark.swc. A sparkskins.swc is added for
>> "spark only" while there is no equivalent for "mx only".
>>
>> For AIR projects a sparkair.swc is also added, there is again no mx
>> equivalent.
>>
>> Both component sets have a framework.swc, which I guess contains common
>> functionality used in both sets.
>>
>> regards,
>> Peter
>>
>>
>>
>> On 10/06/2015 12:59, Mihai Chira wrote:
>>>
>>> Great points, thanks all.
>>>
>>> Does anyone know how I can check which swcs are included in mx-only
>>> projects and which in spark-only projects, so I can see where I can put
>>> the
>>> common functionality if that's the route I / we'll choose? Thanks.
>>>
>>> On 10 June 2015 at 12:40, Kessler CTR Mark J 
>>> wrote:
>>>
>>>> Issues I see or agree with.
>>>>
>>>> -MX only or Spark only projects.
>>>> -Inheritance of these classes / child classes.
>>>> -Possible different behavior.
>>>>
>>>>
>>>>
>>>> -Mark
>>>>
>>>
>


Re: Can we unify spark and mx Sort and SortField?

2015-06-10 Thread Mihai Chira
That's very useful Peter, many thanks!
It looks like I can use the framework.swc for the common part of these
classes. Will get round to it later this week, I hope.

On 10 June 2015 at 14:26, Peter Ginneberge  wrote:

>
> I had a quick look yesterday and when I toggled "mx only" vs "spark only"
> I saw the mx.swc swapped for the spark.swc. A sparkskins.swc is added for
> "spark only" while there is no equivalent for "mx only".
>
> For AIR projects a sparkair.swc is also added, there is again no mx
> equivalent.
>
> Both component sets have a framework.swc, which I guess contains common
> functionality used in both sets.
>
> regards,
> Peter
>
>
>
> On 10/06/2015 12:59, Mihai Chira wrote:
>
>> Great points, thanks all.
>>
>> Does anyone know how I can check which swcs are included in mx-only
>> projects and which in spark-only projects, so I can see where I can put
>> the
>> common functionality if that's the route I / we'll choose? Thanks.
>>
>> On 10 June 2015 at 12:40, Kessler CTR Mark J 
>> wrote:
>>
>>  Issues I see or agree with.
>>>
>>> -MX only or Spark only projects.
>>> -Inheritance of these classes / child classes.
>>> -Possible different behavior.
>>>
>>>
>>>
>>> -Mark
>>>
>>>
>>


Re: Can we unify spark and mx Sort and SortField?

2015-06-10 Thread Mihai Chira
Great points, thanks all.

Does anyone know how I can check which swcs are included in mx-only
projects and which in spark-only projects, so I can see where I can put the
common functionality if that's the route I / we'll choose? Thanks.

On 10 June 2015 at 12:40, Kessler CTR Mark J 
wrote:

> Issues I see or agree with.
>
> -MX only or Spark only projects.
> -Inheritance of these classes / child classes.
> -Possible different behavior.
>
>
>
> -Mark
>


Re: Can we unify spark and mx Sort and SortField?

2015-06-09 Thread Mihai Chira
Yep, good point, Peter.

I'll try that, Alex (making spark extend mx), I'll see how it goes.

On 9 June 2015 at 15:35, Alex Harui  wrote:
> Peter is correct that you want to be careful about having mx-only classes
> depend on Spark classes.
>
> And in the strictest sense, I suppose there is a chance that someone’s app
> depends on a difference in behavior between ObjectUtil and
> String.localeCompare, although I personally don’t think there is much risk
> there.
>
> There was probably a restriction about mx classes working on very old
> player versions that didn’t support some behavior or API, but Apache Flex
> only goes back to 10.1 or so and I don’t think you’ll find too many
> important differences.
>
> You could try making mx classes the base class for the Spark classes, so
> the Spark subclasses would add in the AdvancedStyleClient, but the guts of
> the work is all done in the mx base classes.
>
> -Alex
>
> On 6/9/15, 5:48 AM, "Peter Ginneberge"  wrote:
>
>>
>>This may affect mx only projects (in FB at least) where spark related
>>swc's
>>are removed when selecting "mx only" as the project's component set.
>>
>>
>>On 9/06/2015 13:33, Mihai Chira wrote:
>>> I'm making lots of changes to SortField and Sort, and I'm realising
>>> that having two versions of these files is error prone and duplicates
>>> effort. From what I can see, the differences are:
>>>
>>> Between mx.collections.SortField and spark.collections.SortField:
>>> 1. lots of asdocs changes
>>> 2. spark version ignores the caseInsensitive option
>>> 3. spark version extends AdvancedStyleClient, and has some more
>>> functions for dealing with styles (like a "locale" style)
>>> 4. spark version uses a SortingCollator to compare strings, while mx
>>> version uses ObjectUtil.stringCompare(), which uses
>>> String.localeCompare(). Not sure how different these are.
>>> Apart from a couple of bug fixes applied to both (except the bugs I'm
>>> working on right now, which I currently only applied to the mx
>>> version), they both arrived from the Adobe donation with these
>>> differences.
>>>
>>> Between mx.collections.Sort and spark.collections.Sort:
>>> 1. again, lots of asdocs changes
>>> 2. again, spark version extends AdvancedStyleClient, and has some more
>>> functions for dealing with styles (like a "locale" style)
>>> 3. mx version uses Array.sortOn when it can, while spark version
>>> doesn't (in the sort() function)
>>> And the same as above, apart from a couple commits, they both came
>>> from the Adobe donation with these differences.
>>>
>>> Questions:
>>> 1. Can the spark versions be used with the mx components which
>>> currently use the mx versions of Sort and SortField? I.e.
>>> AdvancedDataGrid, DataGrid and DefaultCubeImpl. Or would there be
>>> problems about these new style functions, or other issues?
>>> 2. If we can get the above to work, can we get rid of the mx versions?
>>> I think it's really important to remove duplication, because all
>>> changes to one version (e.g. the ones that I'm now making to sorting)
>>> might have unintended consequences when ported to the other version
>>> (or, even worse, we'll simply forget to do it, and still keep the bug
>>> in the other version), and maintaining two almost identical sets of
>>> unit tests is just impractical - not only would we have to make
>>> changes and fixes in two places, but we'd also have to update two sets
>>> of unit tests each time.
>>>
>>> Thoughts?
>>>
>


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34885 While trying to figure out whether ComplexFieldChangeWatcher should handle CollectionEventKind.UPDATE events, I stumbled on this

2015-06-09 Thread Mihai Chira
Thanks, it's fixed (at least on the mx side).

On 9 June 2015 at 21:08, Alex Harui  wrote:
> Good luck.
> -Alex
>
> On 6/9/15, 1:25 AM, "Mihai Chira"  wrote:
>
>>Just want to make sure that everyone thinks this is a bug? I think it
>>is because in mx.collections.ListCollectionView.handlePropertyChangeEvents
>>it explicitly decides to call moveItemInView() if, among others,
>>updateInfo.property is null or empty. But then it fails to remove the
>>old item from the localIndex. If no one disagrees, I'll proceed to
>>solve it.
>>
>>On 9 June 2015 at 10:21,   wrote:
>>> Repository: flex-sdk
>>> Updated Branches:
>>>   refs/heads/develop 97e625a80 -> 2779ea9f3
>>>
>>>
>>> FLEX-34854 FLEX-34885
>>> While trying to figure out whether ComplexFieldChangeWatcher should
>>>handle CollectionEventKind.UPDATE events, I stumbled on this bug. This
>>>is the unit test which demonstrates it (currently fails, since the bug
>>>is still there).
>>>
>>>
>>> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
>>> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/2779ea9f
>>> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/2779ea9f
>>> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/2779ea9f
>>>
>>> Branch: refs/heads/develop
>>> Commit: 2779ea9f32e8053edd3bc2620ccfbc37f52c3eba
>>> Parents: 97e625a
>>> Author: Mihai Chira 
>>> Authored: Tue Jun 9 10:21:18 2015 +0200
>>> Committer: Mihai Chira 
>>> Committed: Tue Jun 9 10:21:18 2015 +0200
>>>
>>> --
>>>  .../tests/ListCollectionView_Sort_Tests.as  | 39
>>>+---
>>>  1 file changed, 33 insertions(+), 6 deletions(-)
>>> --
>>>
>>>
>>>
>>>http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/2779ea9f/frameworks/
>>>projects/framework/tests/ListCollectionView_Sort_Tests.as
>>> --
>>> diff --git
>>>a/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
>>>b/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
>>> index 7024626..f21310e 100644
>>> ---
>>>a/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
>>> +++
>>>b/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
>>> @@ -360,6 +360,37 @@ package {
>>>  assertRemoveAll();
>>>  }
>>>
>>> +[Test]
>>> +public function
>>>test_marking_entire_item_as_updated_gets_the_old_object_out_of_the_list()
>>>:void
>>> +{
>>> +//given
>>> +var from0To4:IList = generateVOs(5);
>>> +_sut.addAll(from0To4);
>>> +
>>> +const sortByNameAscending:Sort = new Sort();
>>> +sortByNameAscending.fields = [new SortField("name", false,
>>>false, false)];
>>> +_sut.sort = sortByNameAscending;
>>> +_sut.refresh(); //values["name"]: Object0, Object1,
>>>Object2, Object3, Object4
>>> +
>>> +//when
>>> +const removedItem:ListCollectionView_Sort_VO =
>>>_sut.getItemAt(0) as ListCollectionView_Sort_VO;
>>> +const newItem:ListCollectionView_Sort_VO =
>>>generateOneObject(0);
>>> +(_sut.list as ArrayList).source[0] = newItem;
>>> +_sut.itemUpdated(newItem, null, removedItem, newItem);
>>> +
>>> +removedItem.name = "Object7"; //should make no difference
>>> +newItem.name = "Object9"; //should place it at the end of
>>>the list
>>> +
>>> +//then
>>> +const indexOfRemovedItem:int =
>>>_sut.getItemIndex(removedItem);
>>> +assertEquals("the item should have been removed from the
>>>list", -1, indexOfRemovedItem);
>>> +for(var i:int = 0; i < _sut.length; i++)
>>> +{
>>> +assertThat(_sut.getItemAt(i) != removedItem);
>>> +}
>>> +assertEquals("the new item should have been moved to the
>>>end of the list", _sut.length - 1, _sut.getItemIndex(newItem));
>>> +}
>>> +
>>>  private function assertIndexesAre(indexes:Array):void
>>>  {
>>>  assertFieldValuesAre("index", indexes);
>>> @@ -442,15 +473,11 @@ package {
>>>  }
>>>  }
>>>
>>> +[Bindable]
>>>  dynamic class ListCollectionView_Sort_VO
>>>  {
>>> -[Bindable]
>>>  public var name:String;
>>> -
>>> -[Bindable]
>>>  public var address:ListCollectionView_Sort_AddressVO;
>>> -
>>> -[Bindable]
>>>  public var index:Number;
>>>
>>>  public function ListCollectionView_Sort_VO(index:Number,
>>>namePrefix:String, streetPrefix:String)
>>> @@ -461,9 +488,9 @@ dynamic class ListCollectionView_Sort_VO
>>>  }
>>>  }
>>>
>>> +[Bindable]
>>>  class ListCollectionView_Sort_AddressVO
>>>  {
>>> -[Bindable]
>>>  public var street:String;
>>>
>>>  public function ListCollectionView_Sort_AddressVO(street:String)
>>>
>


Can we unify spark and mx Sort and SortField?

2015-06-09 Thread Mihai Chira
I'm making lots of changes to SortField and Sort, and I'm realising
that having two versions of these files is error prone and duplicates
effort. From what I can see, the differences are:

Between mx.collections.SortField and spark.collections.SortField:
1. lots of asdocs changes
2. spark version ignores the caseInsensitive option
3. spark version extends AdvancedStyleClient, and has some more
functions for dealing with styles (like a "locale" style)
4. spark version uses a SortingCollator to compare strings, while mx
version uses ObjectUtil.stringCompare(), which uses
String.localeCompare(). Not sure how different these are.
Apart from a couple of bug fixes applied to both (except the bugs I'm
working on right now, which I currently only applied to the mx
version), they both arrived from the Adobe donation with these
differences.

Between mx.collections.Sort and spark.collections.Sort:
1. again, lots of asdocs changes
2. again, spark version extends AdvancedStyleClient, and has some more
functions for dealing with styles (like a "locale" style)
3. mx version uses Array.sortOn when it can, while spark version
doesn't (in the sort() function)
And the same as above, apart from a couple commits, they both came
from the Adobe donation with these differences.

Questions:
1. Can the spark versions be used with the mx components which
currently use the mx versions of Sort and SortField? I.e.
AdvancedDataGrid, DataGrid and DefaultCubeImpl. Or would there be
problems about these new style functions, or other issues?
2. If we can get the above to work, can we get rid of the mx versions?
I think it's really important to remove duplication, because all
changes to one version (e.g. the ones that I'm now making to sorting)
might have unintended consequences when ported to the other version
(or, even worse, we'll simply forget to do it, and still keep the bug
in the other version), and maintaining two almost identical sets of
unit tests is just impractical - not only would we have to make
changes and fixes in two places, but we'd also have to update two sets
of unit tests each time.

Thoughts?


Re: Why are there two ArrayList classes? [PING Justin Mclean)

2015-06-09 Thread Mihai Chira
> http://apache-flex-development.247.n4.nabble.com/ArrayList-itemUpdateHandler-Change-td7774.html
Mike, you mention here "If you look at the unit tests I wrote for
ArrayList" - do you mean the Mustella tests, or are there unit tests
too?


Re: Why are there two ArrayList classes? [PING Justin Mclean)

2015-06-09 Thread Mihai Chira
> (Carol Frampton committed it against an Adobe ticket SDK-30008)
this is in our FLEX-27127[1] ticket

[1] https://issues.apache.org/jira/browse/FLEX-27127


Re: Why are there two ArrayList classes? [PING Justin Mclean)

2015-06-09 Thread Mihai Chira
> I just looked quickly at the differences.  It appears that the second
> ArrayList has different update event logic so it may be that it was safer
> to create a different ArrayList so we wouldn’t have to worry about
> backward compatibility issues.
If we're talking about the same classes (mx/collections/ArrayList.as
and org/apache/flex/collections/ArrayList.as), there is no actual
difference in how UPDATE events are handled (only different function
calls, but they do exactly the same thing). The only differences seem
to be:

1) the mx version has a "toJSON()" function
2) addAllAt is quite different, with the mx version being more recent
(Carol Frampton committed it against an Adobe ticket SDK-30008)
3) my recent fix for FLEX-34885[1], which I only applied on the mx
side for now, till I get my head round this duplication.

So to reiterate Gareth's question: do we know why we have the
flex/collections version of the ArrayList class (given that Mike said
he doesn't know either, and pointed to a commit by Carol Frampton)? I
just did a search for "flex.collections.ArrayList" and there are no
results, implying that this version is never used. Can we delete it?
It looks like we wouldn't miss anything useful.

[1] https://issues.apache.org/jira/browse/FLEX-34885


Re: git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854 FLEX-34885 While trying to figure out whether ComplexFieldChangeWatcher should handle CollectionEventKind.UPDATE events, I stumbled on this

2015-06-09 Thread Mihai Chira
Just want to make sure that everyone thinks this is a bug? I think it
is because in mx.collections.ListCollectionView.handlePropertyChangeEvents
it explicitly decides to call moveItemInView() if, among others,
updateInfo.property is null or empty. But then it fails to remove the
old item from the localIndex. If no one disagrees, I'll proceed to
solve it.

On 9 June 2015 at 10:21,   wrote:
> Repository: flex-sdk
> Updated Branches:
>   refs/heads/develop 97e625a80 -> 2779ea9f3
>
>
> FLEX-34854 FLEX-34885
> While trying to figure out whether ComplexFieldChangeWatcher should handle 
> CollectionEventKind.UPDATE events, I stumbled on this bug. This is the unit 
> test which demonstrates it (currently fails, since the bug is still there).
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/2779ea9f
> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/2779ea9f
> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/2779ea9f
>
> Branch: refs/heads/develop
> Commit: 2779ea9f32e8053edd3bc2620ccfbc37f52c3eba
> Parents: 97e625a
> Author: Mihai Chira 
> Authored: Tue Jun 9 10:21:18 2015 +0200
> Committer: Mihai Chira 
> Committed: Tue Jun 9 10:21:18 2015 +0200
>
> --
>  .../tests/ListCollectionView_Sort_Tests.as  | 39 +---
>  1 file changed, 33 insertions(+), 6 deletions(-)
> --
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/2779ea9f/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
> --
> diff --git 
> a/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as 
> b/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
> index 7024626..f21310e 100644
> --- a/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
> +++ b/frameworks/projects/framework/tests/ListCollectionView_Sort_Tests.as
> @@ -360,6 +360,37 @@ package {
>  assertRemoveAll();
>  }
>
> +[Test]
> +public function 
> test_marking_entire_item_as_updated_gets_the_old_object_out_of_the_list():void
> +{
> +//given
> +var from0To4:IList = generateVOs(5);
> +_sut.addAll(from0To4);
> +
> +const sortByNameAscending:Sort = new Sort();
> +sortByNameAscending.fields = [new SortField("name", false, 
> false, false)];
> +_sut.sort = sortByNameAscending;
> +_sut.refresh(); //values["name"]: Object0, Object1, Object2, 
> Object3, Object4
> +
> +//when
> +const removedItem:ListCollectionView_Sort_VO = _sut.getItemAt(0) 
> as ListCollectionView_Sort_VO;
> +const newItem:ListCollectionView_Sort_VO = generateOneObject(0);
> +(_sut.list as ArrayList).source[0] = newItem;
> +_sut.itemUpdated(newItem, null, removedItem, newItem);
> +
> +removedItem.name = "Object7"; //should make no difference
> +newItem.name = "Object9"; //should place it at the end of the 
> list
> +
> +//then
> +const indexOfRemovedItem:int = _sut.getItemIndex(removedItem);
> +assertEquals("the item should have been removed from the list", 
> -1, indexOfRemovedItem);
> +for(var i:int = 0; i < _sut.length; i++)
> +{
> +assertThat(_sut.getItemAt(i) != removedItem);
> +}
> +assertEquals("the new item should have been moved to the end of 
> the list", _sut.length - 1, _sut.getItemIndex(newItem));
> +}
> +
>  private function assertIndexesAre(indexes:Array):void
>  {
>  assertFieldValuesAre("index", indexes);
> @@ -442,15 +473,11 @@ package {
>  }
>  }
>
> +[Bindable]
>  dynamic class ListCollectionView_Sort_VO
>  {
> -[Bindable]
>  public var name:String;
> -
> -[Bindable]
>  public var address:ListCollectionView_Sort_AddressVO;
> -
> -[Bindable]
>  public var index:Number;
>
>  public function ListCollectionView_Sort_VO(index:Number, 
> namePrefix:String, streetPrefix:String)
> @@ -461,9 +488,9 @@ dynamic class ListCollectionView_Sort_VO
>  }
>  }
>
> +[Bindable]
>  class ListCollectionView_Sort_AddressVO
>  {
> -[Bindable]
>  public var street:String;
>
>  public function ListCollectionView_Sort_AddressVO(street:String)
>


Re: [jira] [Updated] (FLEX-34852) Allow sorting by complex fields in ListCollectionView

2015-06-08 Thread Mihai Chira
Now there's a first version of ListCollectionView being able to
monitor changes to complex fields in order to resort its items (see my
recent commits). All suggestions / comments are welcome, especially
about ComplexFieldChangeWatcher.Closure - is there a better way to do
what this class is doing?


What's left to do:
0. Figure out and fix
TEST-ListCollectionView_Sort_Tests.test_sort_fields_on_complex_objects_dont_change_unless_sort_reapplied()
1. Deal (if needed) with CollectionEventKind.UPDATE events in
ComplexFieldChangeWatcher
2. Update asdocs for new classes / fields
3. Add more unit tests (e.g. wrapped collections, sorting + filtering,
different timings, etc.)
4. Once all that seems to be working well, move the logic onto the
spark SortField and Sort classes too
5. Get DataGrid to rely on this method for keeping track of changes to
complex fields than the buggy system it has now.

On 7 June 2015 at 18:26, Mihai Chira (JIRA)  wrote:
>
>  [ 
> https://issues.apache.org/jira/browse/FLEX-34852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
>  ]
>
> Mihai Chira updated FLEX-34852:
> ---
> Description:
> Currently the only way to sort by complex fields (e.g. "address.street") is 
> to not specify any sort fields and to use a custom compare function which 
> knows which fields to check.
>
> *Expected behaviour*: The code below sorts the items by the address.street 
> field:
>
> {code}
> const sortByNameAscending:Sort = new Sort();
> sortByNameAscending.fields = [new SortField("address.street", false, false)];
> _sut.sort = sortByNameAscending;
> {code}
>
> *Note* this will allow FLEX-34837 to be fixed.
> *Note* you can follow / join the discussion 
> [here|http://mail-archives.apache.org/mod_mbox/flex-dev/201505.mbox/%3CCAP1cEXENUHwhf82Ja_OLZ6dh%2BN4R1z2sXCTDvZ1c24GX-q5R7Q%40mail.gmail.com%3E].
>
>   was:
> Currently the only way to sort by complex fields (e.g. "address.street") is 
> to not specify any sort fields and to use a custom compare function which 
> knows which fields to check.
>
> *Expected behaviour*: The code below sorts the items by the address.street 
> field:
>
> {code}
> const sortByNameAscending:Sort = new Sort();
> sortByNameAscending.fields = [new SortField("address.street", false, false)];
> _sut.sort = sortByNameAscending;
> {code}
>
> *Note* this will allow FLEX-34837 to be fixed.
>
>
>> Allow sorting by complex fields in ListCollectionView
>> -
>>
>> Key: FLEX-34852
>> URL: https://issues.apache.org/jira/browse/FLEX-34852
>> Project: Apache Flex
>>  Issue Type: New Feature
>>  Components: Collections, Spark: Sort and SortField
>>Affects Versions: Apache Flex 4.14.1
>>Reporter: Mihai Chira
>>Assignee: Mihai Chira
>> Fix For: Apache Flex 4.15.0
>>
>>
>> Currently the only way to sort by complex fields (e.g. "address.street") is 
>> to not specify any sort fields and to use a custom compare function which 
>> knows which fields to check.
>> *Expected behaviour*: The code below sorts the items by the address.street 
>> field:
>> {code}
>> const sortByNameAscending:Sort = new Sort();
>> sortByNameAscending.fields = [new SortField("address.street", false, false)];
>> _sut.sort = sortByNameAscending;
>> {code}
>> *Note* this will allow FLEX-34837 to be fixed.
>> *Note* you can follow / join the discussion 
>> [here|http://mail-archives.apache.org/mod_mbox/flex-dev/201505.mbox/%3CCAP1cEXENUHwhf82Ja_OLZ6dh%2BN4R1z2sXCTDvZ1c24GX-q5R7Q%40mail.gmail.com%3E].
>
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.3.4#6332)


Re: [jira] [Resolved] (FLEX-34883) Sort correctly by complex fields with all data types

2015-06-08 Thread Mihai Chira
Thanks, I'll take a look in a while, when I work on this again.

On 8 June 2015 at 00:43, Justin Mclean  wrote:
> Hi,
>
> This may be of some help:
> http://people.apache.org/~jmclean/ArrayCollectionTests.fxp
>
> Justin


Re: [1/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34852 Added unit test (actually moved the first function from ListCollectionView_FLEX_34837_Tests, as it's better suited for this ticket).

2015-06-08 Thread Mihai Chira
Great, thank you.

On 8 June 2015 at 05:44, piotrz  wrote:
> Done. :)
> From my experience 90% of VO objects which I have created was Bindable in
> 100%. Although if for some reason some at least one property wasn't bindable
> I was going that grained path as you Mihai. :)
>
> Thanks,
> Piotr
>
>
>
> -
> Apache Flex PMC
> piotrzarzyck...@gmail.com
> --
> View this message in context: 
> http://apache-flex-development.247.n4.nabble.com/Re-1-8-git-commit-flex-sdk-refs-heads-develop-FLEX-34852-Added-unit-test-actually-moved-the-first-fus-tp47515p47520.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: [jira] [Resolved] (FLEX-34883) Sort correctly by complex fields with all data types

2015-06-07 Thread Mihai Chira
If anyone wants to help with a few lines of documentation (for
ComplexSortField), that would help a lot. Otherwise I'll get round to
it in a couple of weeks.
Same for more unit testing (see FLEX-34852[1], which has a unit test
called FLEX_34852_Tests). For instance, xml sorting is not currently
tested, nor is sorting alongside filtering.

[1] https://issues.apache.org/jira/browse/FLEX-34852

On 7 June 2015 at 18:27, Mihai Chira (JIRA)  wrote:
>
>  [ 
> https://issues.apache.org/jira/browse/FLEX-34883?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
>  ]
>
> Mihai Chira resolved FLEX-34883.
> 
> Resolution: Fixed
>
> This has been resolved as part of FLEX-34852.
>
>> Sort correctly by complex fields with all data types
>> 
>>
>> Key: FLEX-34883
>> URL: https://issues.apache.org/jira/browse/FLEX-34883
>> Project: Apache Flex
>>  Issue Type: Sub-task
>>  Components: Spark: Sort and SortField
>>Affects Versions: Apache Flex 4.14.1
>>Reporter: Mihai Chira
>>Assignee: Mihai Chira
>> Fix For: Apache Flex 4.15.0
>>
>>
>> The first step is to make sure that ListCollectionView can sort correctly by 
>> complex properties.
>
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.3.4#6332)


Re: [1/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34852 Added unit test (actually moved the first function from ListCollectionView_FLEX_34837_Tests, as it's better suited for this ticket).

2015-06-07 Thread Mihai Chira
Thanks for that, good idea. I think I usually like the fine-grained
choice of which property becomes bindable and which one doesn't, but
in this case, for a unit test, you might be right that it's more
expedient. Feel free to make the change if you wish. Cheers.

On 7 June 2015 at 18:33, Piotr Zarzycki  wrote:
> Hi Mihai,
>
> You could mark VO classes as Bindable and all properties will be
> automatically bindable.
>
> Piotr
>
> W dniu 2015-06-07 o 18:10, mih...@apache.org pisze:
>
>> Repository: flex-sdk
>> Updated Branches:
>>refs/heads/develop 11489c6e7 -> 94dd74615
>>
>>
>> FLEX-34852
>> Added unit test (actually moved the first function from
>> ListCollectionView_FLEX_34837_Tests, as it's better suited for this ticket).
>> Because the feature is not implemented, it currently fails.
>>
>>
>> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
>> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/7cd1b3bc
>> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/7cd1b3bc
>> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/7cd1b3bc
>>
>> Branch: refs/heads/develop
>> Commit: 7cd1b3bc69f11c6c9d88a65e0df9eae39a17afa3
>> Parents: 11489c6
>> Author: Mihai Chira 
>> Authored: Sun Jun 7 12:53:06 2015 +0200
>> Committer: Mihai Chira 
>> Committed: Sun Jun 7 12:53:06 2015 +0200
>>
>> --
>>   .../framework/tests/FLEX_34852_Tests.as | 129
>> +++
>>   .../ListCollectionView_FLEX_34837_Tests.as  |  18 ---
>>   2 files changed, 129 insertions(+), 18 deletions(-)
>> --
>>
>>
>>
>> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/7cd1b3bc/frameworks/projects/framework/tests/FLEX_34852_Tests.as
>> --
>> diff --git a/frameworks/projects/framework/tests/FLEX_34852_Tests.as
>> b/frameworks/projects/framework/tests/FLEX_34852_Tests.as
>> new file mode 100644
>> index 000..3a66221
>> --- /dev/null
>> +++ b/frameworks/projects/framework/tests/FLEX_34852_Tests.as
>> @@ -0,0 +1,129 @@
>>
>> +
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//  http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>>
>> +
>> +
>> +package {
>> +import mx.collections.ArrayList;
>> +import mx.collections.IList;
>> +import mx.collections.ListCollectionView;
>> +import mx.collections.Sort;
>> +import mx.collections.SortField;
>> +
>> +import org.flexunit.asserts.assertEquals;
>> +
>> +public class FLEX_34852_Tests {
>> +private var _sut:ListCollectionView;
>> +
>> +[Before]
>> +public function setUp():void
>> +{
>> +_sut = new ListCollectionView(new ArrayList());
>> +}
>> +
>> +[After]
>> +public function tearDown():void
>> +{
>> +_sut = null;
>> +}
>> +
>> +[Test]
>> +public function
>> test_simple_ascending_sort_by_complex_fields():void
>> +{
>> +//given
>> +var from4To0:IList = generateVOs(5, true);
>> +_sut.addAll(from4To0); //values["address.street"]: Street4,
>> Street3, Street2, Street1, Street0
>> +
>> +const sortByIndexAscending:Sort = new Sort();
>> +

Re: [GitHub] flex-sdk pull request: Fix FLEX-15159 by making ArrayList extend P...

2015-06-07 Thread Mihai Chira
Hi Fréd, thanks for your suggestion. (I responded inline.)

> I have to admit I'm not very keen to see an already overly complex class to 
> become even more complex adding complex field managment.
Me neither, I agree. I was thinking to add the field watcher as an
optional constructor parameter / setter, in-line with Alex's
philosophy of you get what you pay for. This way the class itself
won't become more complex, and also developers have a choice of
whether they want to ask the collection to fulfil this role or not.
How does that sound?

> I generally solve the problem at application level, using a decorator pattern 
> to my VO mixed with a dynamic class to, at sort events, dynamicaly add or 
> remove simple fields and forward their value to their complex counterpart, it
> works as well when you have hierarchical data and you want to display them in 
> a flat datagrid, if  those VO need to be sent on the server or the rest of 
> the application, I use the decoratee VO.
That's a solution too, but some developers might not know how to do it
(by using the decorator pattern or through bindings), might not have
time, and might make mistakes implementing it. Plus, in my mind this
is core framework functionality, and it's not there simply because (I
imagine) the Adobe developers never got round to it. It's no stretch
to me to think that if we monitor changes to objects and then resort
collections based on those changes, we can and should do the same for
nested chains of objects.


Re: [jira] [Updated] (FLEX-34852) Allow sorting by complex fields in ListCollectionView

2015-06-07 Thread Mihai Chira
> I would add a flag
> to get the new behavior or add a new set of Sort classes with the new
> behavior.

Now implemented, see ComplexSortField.as. This was the only class
necessary, at least on the mx side, plus a few changes to SortField
(no API changes). If things look all right, I'll apply the same onto
spark SortField.


Re: [jira] [Updated] (FLEX-34853) ListCollectionView.getItemIndex throws RTE when the Sort's sortFields change

2015-06-07 Thread Mihai Chira
> I’m a little concerned that someone somewhere is relying on sharing a
> mutable SortField, so I’d be careful about making a change like that. At
> least, add an mx_internal flag to get back old behavior so if someone does
> complain they have a way of recovering.

Great idea. In the end I decided to go for a three-step process:
1) marking the setters and reverse() functions as deprecated (in
v4.15) - complete
2) placing them behind mx_internal (which includes renaming them) and
making reverse() work with immutable Sort and SortField objects (in
v4.16 - could you please create this version tag in Jira?)
3) completely removing the state setters (in 4.17)

This way people can have more time to adapt to the changes.


  1   2   3   >