If you’re only compiling for JS, using an “as” cast with ignoring coercions should work, although you’re actually lying about the type...
> On Oct 10, 2024, at 11:02 PM, Piotr Zarzycki <piotrzarzyck...@gmail.com> > wrote: > > Sounds like casting to that fail. After running application I'm getting: > > Uncaught TypeError: Error #1034: Type Coercion failed: cannot convert > view.support.NewTicket to interfaces.ticket.IEmergencySupport > as > https://localdev.prominic.net/prominic/bin/js-debug/org/apache/royale/utils/Language.js > :113 > MediatorNewTicket > https://localdev.prominic.net/prominic/bin/js-debug/mediator/MediatorNewTicket.js > :23 > > I will think how to manage that. > > czw., 10 paź 2024 o 21:54 Piotr Zarzycki <piotrzarzyck...@gmail.com> > napisał(a): > >> Yep! This is what I did :) Thank you. Let me test next apps in the next >> few days and I will get back to you. >> >> czw., 10 paź 2024 o 21:53 Josh Tynjala <joshtynj...@bowlerhat.dev> >> napisał(a): >> >>> Yes, that is most likely the result of my compiler fix. You should simply >>> need to add a cast, probably like this: >>> >>> super(IEmergencySupport(component)); >>> >>> -- >>> Josh Tynjala >>> Bowler Hat LLC <https://bowlerhat.dev> >>> >>> >>> On Thu, Oct 10, 2024 at 12:44 PM Piotr Zarzycki < >>> piotrzarzyck...@gmail.com> >>> wrote: >>> >>>> Got it! I just rebuild framework and build our app with your code. I'm >>>> having only one build error which wasn't present previously. I'm >>> wondering >>>> if this is because of your changes: >>>> >>>> MediatorNewTicket.as(14): col: 10 Error: Implicit coercion of a value >>> with >>>> static type interfaces.ticket.INormalSupport to a possibly unrelated >>> type >>>> interfaces.ticket.IEmergencySupport. >>>> : super(component); >>>> >>>> MediatorNewTicket extends MediatorEmergencySupport >>>> >>>> IEmergencySupport extends INormalSupport >>>> >>>> MediatorNewTicket(component:INormalSupport) - constructor >>>> MediatorEmergencySupport(component:IEmergencySupport) - constructor >>>> >>>> I think I know how to fix this. Is this results of your changes ? >>>> >>>> Thanks, >>>> Piotr >>>> >>>> >>>> czw., 10 paź 2024 o 17:29 Josh Tynjala <joshtynj...@bowlerhat.dev> >>>> napisał(a): >>>> >>>>> Oh, and make sure that the pom.xml files in your app projects are >>> using >>>>> version 0.9.12 for the compiler too. >>>>> >>>>> -- >>>>> Josh Tynjala >>>>> Bowler Hat LLC <https://bowlerhat.dev> >>>>> >>>>> >>>>> On Thu, Oct 10, 2024 at 8:15 AM Josh Tynjala < >>> joshtynj...@bowlerhat.dev> >>>>> wrote: >>>>> >>>>>> Hey Piotr, >>>>>> >>>>>> I just pushed one more commit to the fix/super-signature-checks >>> branch >>>> of >>>>>> royale-asjs. >>>>>> >>>>>> I noticed that the Maven build was not using my changes in >>>>> royale-compiler >>>>>> because we're midway through the process of updating the repos from >>>>> 0.9.11 >>>>>> to 0.9.12. So you might not have actually tested my changes if you >>> were >>>>>> building with Maven, unless you had manually made this tweak to >>> pom.xml >>>>> too. >>>>>> >>>>>> -- >>>>>> Josh Tynjala >>>>>> Bowler Hat LLC <https://bowlerhat.dev> >>>>>> >>>>>> >>>>>> On Thu, Oct 10, 2024 at 2:18 AM Piotr Zarzycki < >>>>> piotrzarzyck...@gmail.com> >>>>>> wrote: >>>>>> >>>>>>> Hi Josh, >>>>>>> >>>>>>> I have used your branches to build locally Royale. I have checked >>> our >>>>> main >>>>>>> application Jewel based with your changes and everything seems to >>> be >>>>> fine. >>>>>>> Application is working like a charm debug and release version. No >>>> errors >>>>>>> in >>>>>>> DOM elements on the console etc. >>>>>>> >>>>>>> I will check soon another app to confirm, but currently it looks >>>> really >>>>>>> good. >>>>>>> >>>>>>> Thanks, >>>>>>> Piotr >>>>>>> >>>>>>> śr., 9 paź 2024 o 22:54 Josh Tynjala <joshtynj...@bowlerhat.dev> >>>>>>> napisał(a): >>>>>>> >>>>>>>> I too tend to be extra wary to make changes close to a release. >>>>>>> Sometimes, >>>>>>>> even seemingly minor bug fixes can introduce unexpected side >>>> effects! >>>>>>>> >>>>>>>> I totally don't mind waiting to merge this stuff. >>>>>>>> >>>>>>>> -- >>>>>>>> Josh Tynjala >>>>>>>> Bowler Hat LLC <https://bowlerhat.dev> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Oct 9, 2024 at 11:20 AM Andrew Wetmore < >>> cottag...@gmail.com >>>>> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> I am always scared of putting a major, necessary fix that might >>>> have >>>>>>>>> downstream impact into a release that is about to go out the >>>> door. I >>>>>>>> would >>>>>>>>> vote for making this part, perhaps the major part, of the next >>>>>>> release, >>>>>>>> and >>>>>>>>> using the time between this one and that one to find and fix as >>>> much >>>>>>> as >>>>>>>> we >>>>>>>>> can in our own code...and maybe prepare some examples with >>> fixes >>>> to >>>>>>> help >>>>>>>>> Royale users. >>>>>>>>> >>>>>>>>> On Wed, Oct 9, 2024 at 2:11 PM Josh Tynjala < >>>>>>> joshtynj...@bowlerhat.dev> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Hey all, >>>>>>>>>> >>>>>>>>>> A user of vscode-as3mxml pointed out to me recently that the >>>>>>> arguments >>>>>>>>>> passed to super() and super.method() calls are not currently >>>>> checked >>>>>>>> for >>>>>>>>>> errors by our compiler. That includes checking the types of >>> the >>>>>>>>> arguments, >>>>>>>>>> and even whether the number of arguments is actually correct! >>>>>>> However, >>>>>>>>>> regular function calls without super are correctly type >>> checked, >>>>> so >>>>>>> it >>>>>>>> is >>>>>>>>>> only in cases of inheritance where super is used. >>>>>>>>>> >>>>>>>>>> I have royale-compiler fixes ready to go. >>>>>>>>>> >>>>>>>>>> This bug has been in the compiler since the code was donated >>> by >>>>>>> Adobe. >>>>>>>> So >>>>>>>>>> it's definitely not even remotely new, and it doesn't >>>> necessarily >>>>>>> need >>>>>>>> to >>>>>>>>>> delay the current release in progress. >>>>>>>>>> >>>>>>>>>> However, it may impact a lot of existing code once the >>> compiler >>>>> can >>>>>>>> start >>>>>>>>>> detecting the wrong types. Several of our framework >>> libraries in >>>>>>>>>> royale-asjs are affected. It's likely that user projects, >>>>> especially >>>>>>>> ones >>>>>>>>>> with a lot of inheritance, will be affected too. >>>>>>>>>> >>>>>>>>>> In some cases, it just requires an extra cast. However, in a >>> few >>>>>>> cases >>>>>>>>> that >>>>>>>>>> I've seen so far, it is actually showing that there are bugs >>> in >>>>> our >>>>>>>> code. >>>>>>>>>> I'm working through the necessary fixes in royale-asjs now. >>>>>>>>>> >>>>>>>>>> I just wanted to give a heads up about this, as it may have >>> some >>>>>>> impact >>>>>>>>> on >>>>>>>>>> everyone's projects. >>>>>>>>>> >>>>>>>>>> Any thoughts on pushing this into the 0.9.12? Or would you >>>> rather >>>>>>> wait >>>>>>>>> for >>>>>>>>>> the next one? >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Josh Tynjala >>>>>>>>>> Bowler Hat LLC <https://bowlerhat.dev> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Andrew Wetmore >>>>>>>>> >>>>>>>>> Editor, Moose House Publications <https://moosehousepress.com/ >>>> >>>>>>>>> Editor-Writer, The Apache Software Foundation < >>>> https://apache.org/> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> Piotr Zarzycki >>>>>>> >>>>>> >>>>> >>>> >>>> >>>> -- >>>> >>>> Piotr Zarzycki >>>> >>> >> >> >> -- >> >> Piotr Zarzycki >> > > > -- > > Piotr Zarzycki