You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by julio cesar sanchez <jc...@gmail.com> on 2020/07/14 12:09:04 UTC
plugin engines
Historically we have only used/updated plugin engines when a certain
cordova-cli/android/ios version was needed because of a new
feature required by the plugin.
Nowadays, most plugins still (technically) support
old cordova-cli/android/ios versions, but we don't really test on those
versions, so can't be sure. And a few recent PRs I've sent are technically
breaking because I removed old iOS code for iOS 6-8 support. Those versions
have not been supported in cordova-ios for a long time, but the plugins
still supported them as they didn't have engines or the cordova-ios version
used as min supported version still supported them.
So, what I'm proposing is to add engines to all the plugins to require at
least
cordova 9
cordova ios 5.1.0
cordova-android 8.0.0
We should do it before we do a major release of any plugin, but don't mean
we need to do a major release of all plugins right now, just have it in
mind before we do a major release of any plugin.
And I would also like to remove the "protective" engine all plugins have
that points the next major version to cordova >= 100
thoughts?
Network information plugin was updated to require cordova 9
https://github.com/apache/cordova-plugin-network-information/pull/118
camera plugin has a PR to require cordova 9 and cordova-android 9
https://github.com/apache/cordova-plugin-camera/pull/628
Re: plugin engines
Posted by julio cesar sanchez <jc...@gmail.com>.
> > And I would also like to remove the "protective" engine all plugins have
> that points the next major version to cordova >= 100
>
> +1. I never really understood the rationale behind this. I think it's
> safe to assume that a next plugin major will continue to support the
> cordova cli that it used to support. If it does not, then we can update
> the engines accordingly.
>
The idea was, if a breaking change was introduced that required updating
engines, but we forgot to update the engines, it would prevent the plugin
to install and break user's projects.
But in most cases it ended in cases where breaking changes were introduced,
but they didn't need updating engines and the "protective" entry ended
blocking the plugin install for no reason, so instead of saving us from
trouble, it caused trouble.
> > So, what I'm proposing is to add engines to all the plugins to require
> at
> least
> cordova 9
> cordova ios 5.1.0
> cordova-android 8.0.0
>
> I think an argument could be made that adding these could be breaking in
> itself and thus warrant a major release, but at the same time, in
> addition to what Julio said, anything pre cordova-android@8 will not be
> accepted by Google Play store due to target API requirements, and the
> same for pre cordova-ios@5.10 because of the wkwebview requirement. So I
> still give a +1 on this.
>
It's not really a breaking change if we replace the existing protective
entry with these new requirements, since the new requirements are only for
the next major release, and won't have any effect until we release a major
version.
Re: plugin engines
Posted by Norman Breau <no...@normanbreau.com>.
> And I would also like to remove the "protective" engine all plugins have
that points the next major version to cordova >= 100
+1. I never really understood the rationale behind this. I think it's
safe to assume that a next plugin major will continue to support the
cordova cli that it used to support. If it does not, then we can update
the engines accordingly.
> So, what I'm proposing is to add engines to all the plugins to require at
least
cordova 9
cordova ios 5.1.0
cordova-android 8.0.0
I think an argument could be made that adding these could be breaking in
itself and thus warrant a major release, but at the same time, in
addition to what Julio said, anything pre cordova-android@8 will not be
accepted by Google Play store due to target API requirements, and the
same for pre cordova-ios@5.10 because of the wkwebview requirement. So I
still give a +1 on this.
On 2020-07-14 9:09 a.m., julio cesar sanchez wrote:
> Historically we have only used/updated plugin engines when a certain
> cordova-cli/android/ios version was needed because of a new
> feature required by the plugin.
>
> Nowadays, most plugins still (technically) support
> old cordova-cli/android/ios versions, but we don't really test on those
> versions, so can't be sure. And a few recent PRs I've sent are technically
> breaking because I removed old iOS code for iOS 6-8 support. Those versions
> have not been supported in cordova-ios for a long time, but the plugins
> still supported them as they didn't have engines or the cordova-ios version
> used as min supported version still supported them.
>
> So, what I'm proposing is to add engines to all the plugins to require at
> least
> cordova 9
> cordova ios 5.1.0
> cordova-android 8.0.0
>
> We should do it before we do a major release of any plugin, but don't mean
> we need to do a major release of all plugins right now, just have it in
> mind before we do a major release of any plugin.
>
> And I would also like to remove the "protective" engine all plugins have
> that points the next major version to cordova >= 100
>
> thoughts?
>
> Network information plugin was updated to require cordova 9
> https://github.com/apache/cordova-plugin-network-information/pull/118
> camera plugin has a PR to require cordova 9 and cordova-android 9
> https://github.com/apache/cordova-plugin-camera/pull/628
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@cordova.apache.org
For additional commands, e-mail: dev-help@cordova.apache.org