[CLOSED] 4.8.2 (another critical bug)

  1. #1

    [CLOSED] 4.8.2 (another critical bug)

    Support,

    This is another super critical bug. Prior to 4.8.2, setValue on a DateField NEVER fired the select handler. in 4.8.2, the select handler is firing when setValue is executed.

    Can we fix this ASAP. This is causing a huge problem for us.
    thanks
    /Z

    <%@ Page Language="C#" %>
    
    
    <!DOCTYPE html>
    
    
    <html>
    <head runat="server">
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" Theme="Triton">
            </ext:ResourceManager>
    
    
    
    
    
    
            <ext:Window
                ID="Window1"
                runat="server"
                Title="SetValue bug"
                IconCls="x-fa fa-gears"
                Width="200"
                Height="350">
                <Items>   
                    <ext:Button runat="server" Text="test">
                        <Listeners>
                            <Click Handler="App.DateFieldTest.setValue('08/01/2019');" />
                        </Listeners>
                    </ext:Button>
                    <ext:DateField ID="DateFieldTest" runat="server">
                        <Listeners>
                            <Select Handler="alert ('select');" />
                        </Listeners>
                    </ext:DateField>            
                </Items>
            </ext:Window>
        </form>
    </body>
    </html>
  2. #2
    We are investigating this issue and trying to determine when this change in functionality was introduced. A fix or work-around should be available soon. Any revisions will be including the 4.8.3 patch release which will be available right away.
    Geoffrey McGill
    Founder
  3. #3
    Appreciate it
    I plan to deploy it asap (hopefully tonight)
    /z
  4. #4
    Hello Zev!

    Unfortunately this has not been included in Sencha's release notes -- at least not in a clear/intuitive way -- but this behavior has been changed -- contract and all between Ext JS 6.6.0 and 6.7.0 (thus Ext.NET 4.7.1 and 4.8.0).

    - Ext.form.field.Date.select event in 6.6.0: "Fires when a value is selected via the picker."
    - Ext.form.field.Date.select event in 6.7.0: "Fires when a value is selected via the picker or when value is getting set explicitly by setter."

    While I agree this is a breaking change, and we always try to "undo" breaking changes when they show up (and believe, this happens almost all releases), this one was not so obvious to us and "slipped" in the new release, as it didn't break anything "on load" nor was included in their changelogs.

    The problem is that Ext JS "contract" (their documentation) claims the event should be triggered now, and any user picking up from the latest documentation (and Ext.NET 5 for what it is worth) would claim (with reason) it as a bug if we revert the behavior now.

    Given the rather controversial condition, would it be acceptable for you to just disable events processing during the setValue() call? We are really sorry for the inconvenience, and we are "in a pinch" with this particular change.

    Besides, it can't be helped, Ext.NET 5 will need to introduce this breaking change (as the correct time to introduce such changes are between major versions).

    If you're considering to cope with the unfortunate breaking change, one option is just suspend/resume events right before/after the setValue() call, taking your test case as sample:

    <Click Handler="App.DateFieldTest.setValue('08/01/2019');" />
    Prepend and append the commands, like this:

    <Click Handler="App.DateFieldTest.suspendEvents(); App.DateFieldTest.setValue('08/01/2019'); App.DateFieldTest.resumeEvents();" />
    Thanks, by the way, for providing the test case. It helps a lot to understand what exactly are you reporting, and ensures we're talking (and thinking) about the same thing.

    Another problem about assuming this is a breaking change is that one could say: "the previous version didn't explicitly say setValue wouldn't trigger the 'select' event, so that's a feature instead"

    Hope you understand and the suggestion for workaround is acceptable.
    Fabrício Murta
    Developer & Support Expert
  5. #5
    Interesting....

    Let me review on our side.

    What about a release to fix the IE11 bug.

    thanks
    /Z
  6. #6
    i will live with this one (and handle it on our side) if we can get the IE11 fixed and released asap as 4.8.3.
    thanks
    /Z
  7. #7
    Hello @Z, and thanks for your support!

    We have logged this breaking change and assigned it to the change log in Ext.NET 4.8.0, where it was introduced.

    The breaking change report is logged in github under issue #1651.

    Although we can't have it included in old Ext.NET versions' changelog files (the NuGet packages for instance), we have updated the changelog sections in the v4 Examples Explorers (WebForms, MVC).

    Notice the change won't figure in Ext.NET 4.8.3 changelog either. As the release was yesterday and this change only happened now, the entry didn't make it to the changelog. If a 4.9 or 4.8.4 version gets released, then the updated changelog will be included also.
    Fabrício Murta
    Developer & Support Expert

Similar Threads

  1. Critical bug
    By ADV in forum 4.x Help
    Replies: 1
    Last Post: May 08, 2018, 5:10 PM
  2. [CLOSED] Bug bug on demo page
    By Akpenob in forum 2.x Legacy Premium Help
    Replies: 2
    Last Post: Feb 27, 2014, 3:42 PM
  3. Replies: 2
    Last Post: Oct 03, 2013, 6:14 AM
  4. Replies: 2
    Last Post: Nov 23, 2011, 1:02 AM
  5. BUG - Edit GridPanel UpdateCell Method bug
    By garag in forum 1.x Help
    Replies: 2
    Last Post: Sep 20, 2011, 9:32 AM

Posting Permissions