Upcoming breaking change: stop using InterfacingObject

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Upcoming breaking change: stop using InterfacingObject

Herby Vojčík
Hi all!

I will remove InterfacingObject from 0.17.0, without previous
deprecation. Removing it clears dependencies. All in all, it wasn't good
idea to include it in the first place, it was piece of overly smart code
that abuses inheritance.

For those of you who inherited from InterfacingObject in you hierarchy
to inherit ability to `self (alert:|confirm:|prompt:|prompt:default:)`,
upgrade your code so it does not use it:

1. Be at least at 0.14.14, where `Terminal` was introduced.
2. Change all uses of `self (alert:|confirm:|prompt:|prompt:default:)`
to `Terminal (alert:|confirm:|prompt:|prompt:default:`.
3. Change `InterfacingObject subclass:` to `Object subclass:`.
3b. If you inherited InterfacingObject via library classes (eg. Widget,
HLModel, ...), upgrade the libraries - all of the base Amber libraries
are released with changes that stop using InterfacingObject.
4. You now do not use InterfacingObject and can safely upgrade to 0.17.0
once it's out.


You received this message because you are subscribed to the Google Groups "amber-lang" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.