You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by "Vladimir Kotikov (Akvelon)" <v-...@microsoft.com> on 2016/01/22 15:58:36 UTC

[DISCUSS] Old platforms support deprecation

Hi guys.

Starting from upcoming cordova release (6.0.0) we have PlatformApi implemented and used by three major platforms (Android, iOS and Windows). This means that we now have a lot of code in cordova-lib which exists there only for maintaining compatibility with previous platforms versions.  I'd love to remove this duplicates from lib, but this means that we'll lose the support for previous platforms in newer cli, and hence we'd need to deprecate this support first.

So I propose to add a deprecation message about removing support for old platforms into upcoming cordova@6.0.0 and remove this support totally in next major cordova version (7.0.0). The message will be emitted each time when polyfill is instantiated for these platforms instead of platform's Api class and might look like this:

"The support for old platforms via PlatformApi polyfill is deprecated and will be removed in next versions of cordova.
Consider upgrading your platform to cordova-android@5.0.0 or newer."

-
Best regards, Vladimir.



RE: [DISCUSS] Old platforms support deprecation

Posted by "Vladimir Kotikov (Akvelon)" <v-...@microsoft.com>.
Hey, guys.

I've opened a PR that adds a message about deprecation. Could anybody please review that? 

The only question I wanted to know your opinion on is where we should print this message. In the PR above cordova-lib will show it each time when polyfill is instantiated and this might be annoying a bit.
Another approach could be similar to deprecation messages for "wp8" and "amazon-fireos" - show message only when platform is added to project.

Thoughts?

-
Best regards, Vladimir


-----Original Message-----
From: David Barth [mailto:david.barth@canonical.com] 
Sent: Wednesday, January 27, 2016 5:39 PM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Old platforms support deprecation

On Mon, Jan 25, 2016 at 8:16 PM, Steven Gill <st...@gmail.com> wrote:

> Nikhil, sounds reasonable.
>
> I originally misunderstood Vlads message. He isn't proposing the 
> PlatformAPI Polyfill for deprecation. This is the code which is used 
> by platforms that haven't released a platform API implementation.
>
> He is suggesting removing code from cordova-lib that supports
> * cordova-android < 5
> * cordova-ios < 4
> * cordova-windows < 4.3.0
> * cordova-osx < 4
>
> Platforms that haven't implemented PlatformAPI Pollyfill
> * Browser
> * BlackBerry
> * WP8 (In deprecation mode)
> * WebOS
> * Ubuntu
>

Just to chime in for Ubuntu to say that we're moving to the new PlatformAPI, but not ready just yet.

David

Re: [DISCUSS] Old platforms support deprecation

Posted by David Barth <da...@canonical.com>.
On Mon, Jan 25, 2016 at 8:16 PM, Steven Gill <st...@gmail.com> wrote:

> Nikhil, sounds reasonable.
>
> I originally misunderstood Vlads message. He isn't proposing the
> PlatformAPI Polyfill for deprecation. This is the code which is used by
> platforms that haven't released a platform API implementation.
>
> He is suggesting removing code from cordova-lib that supports
> * cordova-android < 5
> * cordova-ios < 4
> * cordova-windows < 4.3.0
> * cordova-osx < 4
>
> Platforms that haven't implemented PlatformAPI Pollyfill
> * Browser
> * BlackBerry
> * WP8 (In deprecation mode)
> * WebOS
> * Ubuntu
>

Just to chime in for Ubuntu to say that we're moving to the new
PlatformAPI, but not ready just yet.

David

RE: [DISCUSS] Old platforms support deprecation

Posted by "Vladimir Kotikov (Akvelon)" <v-...@microsoft.com>.
Thanks, Steve, for clarification. And sorry for being unclear.

-
Best regards, Vladimir 

-----Original Message-----
From: Steven Gill [mailto:stevengill97@gmail.com] 
Sent: Monday, January 25, 2016 10:17 PM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Old platforms support deprecation

Nikhil, sounds reasonable.

I originally misunderstood Vlads message. He isn't proposing the PlatformAPI Polyfill for deprecation. This is the code which is used by platforms that haven't released a platform API implementation.

He is suggesting removing code from cordova-lib that supports
* cordova-android < 5
* cordova-ios < 4
* cordova-windows < 4.3.0
* cordova-osx < 4

Platforms that haven't implemented PlatformAPI Pollyfill
* Browser
* BlackBerry
* WP8 (In deprecation mode)
* WebOS
* Ubuntu
* Amazon FireOS (In deprecation mode)
* OSX (PR PENDING)

On Mon, Jan 25, 2016 at 7:01 PM, Nikhil Khandelwal <ni...@microsoft.com>
wrote:

> +1 for 6-month deprecation (or even earlier) for platforms where we 
> +have
> already released a platform with Platform API. Duplicated code can be 
> a real maintenance problem here.
>
> For other platforms that we have not released a platform API 
> implementation and do not plan to e.g. WP8, WebOS, Ubuntu - we should 
> support them for longer unless the cost is significant.
>
> -Nikhil
>
> -----Original Message-----
> From: Vladimir Kotikov (Akvelon) [mailto:v-vlkoti@microsoft.com]
> Sent: Friday, January 22, 2016 11:36 AM
> To: dev@cordova.apache.org
> Subject: RE: [DISCUSS] Old platforms support deprecation
>
> Agree about 6 months. I suggested next Cordova major version as a 
> deadline due to two reasons: this definitely will be a breaking 
> change, so we'll need for major bump anyway; also the Cordova 5.0 
> lives for about 8 months (since Apr 2015), so I think Cordova 6 will 
> live for approximately the same time.
>
> Regarding the other platforms (WebOS, Ubuntu) - I was thinking about 
> "soft" deprecation - i.e. drop support only for that platforms where 
> we have an implementation for PlatformApi (Android, iOS, Windows, 
> probably OSX), and leave other platforms as-is. But if everybody is ok 
> about total platform-specific code removal, this might be even better, 
> because then we'll be able to cut out a great chunk of legacy code 
> and, probably, get rid of a number of dependencies.
>
> ---------------
> Best regards, Vladimir
>
> -----Original Message-----
> From: Steven Gill [mailto:stevengill97@gmail.com]
> Sent: Friday, January 22, 2016 8:39 PM
> To: dev@cordova.apache.org
> Subject: Re: [DISCUSS] Old platforms support deprecation
>
> I think depreciation should be our usual 6 months instead of cordova 7.
> Who knows how fast or slow cordova 7 will come out.
>
> Doing this, it would mean we would drop support for the platforms that 
> don't update to PlatformAPI.
>
> We have already started the process for deprecating amazon-fireos and wp8.
> We would need to include FFOS since I don't see anyone working on it 
> at all. We can contact LG about webos and see if they will update. 
> Ubuntu might get the update by then. OSX already has a PR for PlatformAPI changes.
>
> I think this sounds fine. Deprecated platforms would still work with 
> old versions of cordova.
> On Jan 22, 2016 6:58 AM, "Vladimir Kotikov (Akvelon)" < 
> v-vlkoti@microsoft.com> wrote:
>
> > Hi guys.
> >
> > Starting from upcoming cordova release (6.0.0) we have PlatformApi 
> > implemented and used by three major platforms (Android, iOS and Windows).
> > This means that we now have a lot of code in cordova-lib which 
> > exists there only for maintaining compatibility with previous 
> > platforms versions.  I'd love to remove this duplicates from lib, 
> > but this means that we'll lose the support for previous platforms in 
> > newer cli, and hence we'd need to deprecate this support first.
> >
> > So I propose to add a deprecation message about removing support for 
> > old platforms into upcoming cordova@6.0.0 and remove this support 
> > totally in next major cordova version (7.0.0). The message will be 
> > emitted each time when polyfill is instantiated for these platforms 
> > instead of platform's Api class and might look like this:
> >
> > "The support for old platforms via PlatformApi polyfill is 
> > deprecated and will be removed in next versions of cordova.
> > Consider upgrading your platform to cordova-android@5.0.0 or newer."
> >
> > -
> > Best regards, Vladimir.
> >
> >
> >
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org

Re: [DISCUSS] Old platforms support deprecation

Posted by Steven Gill <st...@gmail.com>.
Nikhil, sounds reasonable.

I originally misunderstood Vlads message. He isn't proposing the
PlatformAPI Polyfill for deprecation. This is the code which is used by
platforms that haven't released a platform API implementation.

He is suggesting removing code from cordova-lib that supports
* cordova-android < 5
* cordova-ios < 4
* cordova-windows < 4.3.0
* cordova-osx < 4

Platforms that haven't implemented PlatformAPI Pollyfill
* Browser
* BlackBerry
* WP8 (In deprecation mode)
* WebOS
* Ubuntu
* Amazon FireOS (In deprecation mode)
* OSX (PR PENDING)

On Mon, Jan 25, 2016 at 7:01 PM, Nikhil Khandelwal <ni...@microsoft.com>
wrote:

> +1 for 6-month deprecation (or even earlier) for platforms where we have
> already released a platform with Platform API. Duplicated code can be a
> real maintenance problem here.
>
> For other platforms that we have not released a platform API
> implementation and do not plan to e.g. WP8, WebOS, Ubuntu - we should
> support them for longer unless the cost is significant.
>
> -Nikhil
>
> -----Original Message-----
> From: Vladimir Kotikov (Akvelon) [mailto:v-vlkoti@microsoft.com]
> Sent: Friday, January 22, 2016 11:36 AM
> To: dev@cordova.apache.org
> Subject: RE: [DISCUSS] Old platforms support deprecation
>
> Agree about 6 months. I suggested next Cordova major version as a deadline
> due to two reasons: this definitely will be a breaking change, so we'll
> need for major bump anyway; also the Cordova 5.0 lives for about 8 months
> (since Apr 2015), so I think Cordova 6 will live for approximately the same
> time.
>
> Regarding the other platforms (WebOS, Ubuntu) - I was thinking about
> "soft" deprecation - i.e. drop support only for that platforms where we
> have an implementation for PlatformApi (Android, iOS, Windows, probably
> OSX), and leave other platforms as-is. But if everybody is ok about total
> platform-specific code removal, this might be even better, because then
> we'll be able to cut out a great chunk of legacy code and, probably, get
> rid of a number of dependencies.
>
> ---------------
> Best regards, Vladimir
>
> -----Original Message-----
> From: Steven Gill [mailto:stevengill97@gmail.com]
> Sent: Friday, January 22, 2016 8:39 PM
> To: dev@cordova.apache.org
> Subject: Re: [DISCUSS] Old platforms support deprecation
>
> I think depreciation should be our usual 6 months instead of cordova 7.
> Who knows how fast or slow cordova 7 will come out.
>
> Doing this, it would mean we would drop support for the platforms that
> don't update to PlatformAPI.
>
> We have already started the process for deprecating amazon-fireos and wp8.
> We would need to include FFOS since I don't see anyone working on it at
> all. We can contact LG about webos and see if they will update. Ubuntu
> might get the update by then. OSX already has a PR for PlatformAPI changes.
>
> I think this sounds fine. Deprecated platforms would still work with old
> versions of cordova.
> On Jan 22, 2016 6:58 AM, "Vladimir Kotikov (Akvelon)" <
> v-vlkoti@microsoft.com> wrote:
>
> > Hi guys.
> >
> > Starting from upcoming cordova release (6.0.0) we have PlatformApi
> > implemented and used by three major platforms (Android, iOS and Windows).
> > This means that we now have a lot of code in cordova-lib which exists
> > there only for maintaining compatibility with previous platforms
> > versions.  I'd love to remove this duplicates from lib, but this means
> > that we'll lose the support for previous platforms in newer cli, and
> > hence we'd need to deprecate this support first.
> >
> > So I propose to add a deprecation message about removing support for
> > old platforms into upcoming cordova@6.0.0 and remove this support
> > totally in next major cordova version (7.0.0). The message will be
> > emitted each time when polyfill is instantiated for these platforms
> > instead of platform's Api class and might look like this:
> >
> > "The support for old platforms via PlatformApi polyfill is deprecated
> > and will be removed in next versions of cordova.
> > Consider upgrading your platform to cordova-android@5.0.0 or newer."
> >
> > -
> > Best regards, Vladimir.
> >
> >
> >
>

RE: [DISCUSS] Old platforms support deprecation

Posted by Nikhil Khandelwal <ni...@microsoft.com>.
+1 for 6-month deprecation (or even earlier) for platforms where we have already released a platform with Platform API. Duplicated code can be a real maintenance problem here.

For other platforms that we have not released a platform API implementation and do not plan to e.g. WP8, WebOS, Ubuntu - we should support them for longer unless the cost is significant.

-Nikhil

-----Original Message-----
From: Vladimir Kotikov (Akvelon) [mailto:v-vlkoti@microsoft.com] 
Sent: Friday, January 22, 2016 11:36 AM
To: dev@cordova.apache.org
Subject: RE: [DISCUSS] Old platforms support deprecation

Agree about 6 months. I suggested next Cordova major version as a deadline due to two reasons: this definitely will be a breaking change, so we'll need for major bump anyway; also the Cordova 5.0 lives for about 8 months (since Apr 2015), so I think Cordova 6 will live for approximately the same time.

Regarding the other platforms (WebOS, Ubuntu) - I was thinking about "soft" deprecation - i.e. drop support only for that platforms where we have an implementation for PlatformApi (Android, iOS, Windows, probably OSX), and leave other platforms as-is. But if everybody is ok about total platform-specific code removal, this might be even better, because then we'll be able to cut out a great chunk of legacy code and, probably, get rid of a number of dependencies.

---------------
Best regards, Vladimir

-----Original Message-----
From: Steven Gill [mailto:stevengill97@gmail.com]
Sent: Friday, January 22, 2016 8:39 PM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Old platforms support deprecation

I think depreciation should be our usual 6 months instead of cordova 7. Who knows how fast or slow cordova 7 will come out.

Doing this, it would mean we would drop support for the platforms that don't update to PlatformAPI.

We have already started the process for deprecating amazon-fireos and wp8.
We would need to include FFOS since I don't see anyone working on it at all. We can contact LG about webos and see if they will update. Ubuntu might get the update by then. OSX already has a PR for PlatformAPI changes.

I think this sounds fine. Deprecated platforms would still work with old versions of cordova.
On Jan 22, 2016 6:58 AM, "Vladimir Kotikov (Akvelon)" < v-vlkoti@microsoft.com> wrote:

> Hi guys.
>
> Starting from upcoming cordova release (6.0.0) we have PlatformApi 
> implemented and used by three major platforms (Android, iOS and Windows).
> This means that we now have a lot of code in cordova-lib which exists 
> there only for maintaining compatibility with previous platforms 
> versions.  I'd love to remove this duplicates from lib, but this means 
> that we'll lose the support for previous platforms in newer cli, and 
> hence we'd need to deprecate this support first.
>
> So I propose to add a deprecation message about removing support for 
> old platforms into upcoming cordova@6.0.0 and remove this support 
> totally in next major cordova version (7.0.0). The message will be 
> emitted each time when polyfill is instantiated for these platforms 
> instead of platform's Api class and might look like this:
>
> "The support for old platforms via PlatformApi polyfill is deprecated 
> and will be removed in next versions of cordova.
> Consider upgrading your platform to cordova-android@5.0.0 or newer."
>
> -
> Best regards, Vladimir.
>
>
>

RE: [DISCUSS] Old platforms support deprecation

Posted by "Vladimir Kotikov (Akvelon)" <v-...@microsoft.com>.
Agree about 6 months. I suggested next Cordova major version as a deadline due to two reasons: this definitely will be a breaking change, so we'll need for major bump anyway; also the Cordova 5.0 lives for about 8 months (since Apr 2015), so I think Cordova 6 will live for approximately the same time.

Regarding the other platforms (WebOS, Ubuntu) - I was thinking about "soft" deprecation - i.e. drop support only for that platforms where we have an implementation for PlatformApi (Android, iOS, Windows, probably OSX), and leave other platforms as-is. But if everybody is ok about total platform-specific code removal, this might be even better, because then we'll be able to cut out a great chunk of legacy code and, probably, get rid of a number of dependencies.

---------------
Best regards, Vladimir

-----Original Message-----
From: Steven Gill [mailto:stevengill97@gmail.com] 
Sent: Friday, January 22, 2016 8:39 PM
To: dev@cordova.apache.org
Subject: Re: [DISCUSS] Old platforms support deprecation

I think depreciation should be our usual 6 months instead of cordova 7. Who knows how fast or slow cordova 7 will come out.

Doing this, it would mean we would drop support for the platforms that don't update to PlatformAPI.

We have already started the process for deprecating amazon-fireos and wp8.
We would need to include FFOS since I don't see anyone working on it at all. We can contact LG about webos and see if they will update. Ubuntu might get the update by then. OSX already has a PR for PlatformAPI changes.

I think this sounds fine. Deprecated platforms would still work with old versions of cordova.
On Jan 22, 2016 6:58 AM, "Vladimir Kotikov (Akvelon)" < v-vlkoti@microsoft.com> wrote:

> Hi guys.
>
> Starting from upcoming cordova release (6.0.0) we have PlatformApi 
> implemented and used by three major platforms (Android, iOS and Windows).
> This means that we now have a lot of code in cordova-lib which exists 
> there only for maintaining compatibility with previous platforms 
> versions.  I'd love to remove this duplicates from lib, but this means 
> that we'll lose the support for previous platforms in newer cli, and 
> hence we'd need to deprecate this support first.
>
> So I propose to add a deprecation message about removing support for 
> old platforms into upcoming cordova@6.0.0 and remove this support 
> totally in next major cordova version (7.0.0). The message will be 
> emitted each time when polyfill is instantiated for these platforms 
> instead of platform's Api class and might look like this:
>
> "The support for old platforms via PlatformApi polyfill is deprecated 
> and will be removed in next versions of cordova.
> Consider upgrading your platform to cordova-android@5.0.0 or newer."
>
> -
> Best regards, Vladimir.
>
>
>

Re: [DISCUSS] Old platforms support deprecation

Posted by Steven Gill <st...@gmail.com>.
I think depreciation should be our usual 6 months instead of cordova 7. Who
knows how fast or slow cordova 7 will come out.

Doing this, it would mean we would drop support for the platforms that
don't update to PlatformAPI.

We have already started the process for deprecating amazon-fireos and wp8.
We would need to include FFOS since I don't see anyone working on it at
all. We can contact LG about webos and see if they will update. Ubuntu
might get the update by then. OSX already has a PR for PlatformAPI changes.

I think this sounds fine. Deprecated platforms would still work with old
versions of cordova.
On Jan 22, 2016 6:58 AM, "Vladimir Kotikov (Akvelon)" <
v-vlkoti@microsoft.com> wrote:

> Hi guys.
>
> Starting from upcoming cordova release (6.0.0) we have PlatformApi
> implemented and used by three major platforms (Android, iOS and Windows).
> This means that we now have a lot of code in cordova-lib which exists there
> only for maintaining compatibility with previous platforms versions.  I'd
> love to remove this duplicates from lib, but this means that we'll lose the
> support for previous platforms in newer cli, and hence we'd need to
> deprecate this support first.
>
> So I propose to add a deprecation message about removing support for old
> platforms into upcoming cordova@6.0.0 and remove this support totally in
> next major cordova version (7.0.0). The message will be emitted each time
> when polyfill is instantiated for these platforms instead of platform's Api
> class and might look like this:
>
> "The support for old platforms via PlatformApi polyfill is deprecated and
> will be removed in next versions of cordova.
> Consider upgrading your platform to cordova-android@5.0.0 or newer."
>
> -
> Best regards, Vladimir.
>
>
>