parse-community / Parse-SDK-Flutter

The Dart/Flutter SDK for Parse Platform
https://parseplatform.org
Apache License 2.0
573 stars 188 forks source link

update parse_server_sdk dependency (fix dependency issue with http) #1000

Open 2shrestha22 opened 2 months ago

2shrestha22 commented 2 months ago

Pull Request

Issue

Closes: n/a

Approach

Tasks

parse-github-assistant[bot] commented 2 months ago

Thanks for opening this pull request!

mtrezza commented 2 months ago

@mbfakourii I believe you mentioned somewhere that we cannot make this upgrade yet, right? Could you please explain...

mbfakourii commented 2 months ago

Yes, due to the conflict that exists, this possibility is not available until we support Flutter 3.10. We have to wait until July 2024 for this upgrade ! [Reference]

mbfakourii commented 2 months ago

@mbfakourii I believe you mentioned somewhere that we cannot make this upgrade yet, right? Could you please explain...

Yes, due to the conflict that exists, this possibility is not available until we support Flutter 3.10. We have to wait until July 2024 for this upgrade ! [Reference]

I think it is better to close PR.

mtrezza commented 2 months ago

@2shrestha22 What is the issue that this PR is supposed to fix? Could you help us understand the urgency of this?

2shrestha22 commented 2 months ago

@2shrestha22 What is the issue that this PR is supposed to fix? Could you help us understand the urgency of this?

Many packages have already migrated to use http 1.0.0 but parse sdk still depends on old http package and it makes it impossible to add package dependency.

I didn't understand the conflict. How there can be a conflict with flutter framework?

mbfakourii commented 2 months ago

@2shrestha22 What is the issue that this PR is supposed to fix? Could you help us understand the urgency of this?

Many packages have already migrated to use http 1.0.0 but parse sdk still depends on old http package and it makes it impossible to add package dependency.

I didn't understand the conflict. How there can be a conflict with flutter framework?

In Flutter version 3.10, when we go to Parse version 7, we encounter conflicts in some packages.

Check this PR and check this fail ci.

ebsangam commented 2 months ago

@2shrestha22 What is the issue that this PR is supposed to fix? Could you help us understand the urgency of this?

Many packages have already migrated to use http 1.0.0 but parse sdk still depends on old http package and it makes it impossible to add package dependency. I didn't understand the conflict. How there can be a conflict with flutter framework?

In Flutter version 3.10, when we go to Parse version 7, we encounter conflicts in some packages.

Check this PR and check this fail ci.

We can fix it by updating the Dart SDK constraint in parse_server_sdk_flutter. Why waiting? image

ebsangam commented 2 months ago

Is there any reason we are not updating the Dart SDK constraint to sdk: ">=3.0.7 <4.0.0"?

mbfakourii commented 2 months ago

Is there any reason we are not updating the Dart SDK constraint to sdk: ">=3.0.7 <4.0.0"?

Please check our Flutter support policy and Dart support policy .

ebsangam commented 2 months ago

That means we are always stuck with old package version? What if developers gets in situation like me and can't use a package due to no support for latest versions? It has been a year since http v1.0.0 got released and if there is any package that depends on http v1.0.0 which almost all package will since it has been a year long then we can't use the package. This may not be a good way of handling backward compatibility as Flutter is evolving and in a year there can be lots of changes which will be very difficult to migrate upon if not done gradually.

mbfakourii commented 2 months ago

That means we are always stuck with old package version? What if developers gets in situation like me and can't use a package due to no support for latest versions? It has been a year since http v1.0.0 got released and if there is any package that depends on http v1.0.0 which almost all package will since it has been a year long then we can't use the package. This may not be a good way of handling backward compatibility as Flutter is evolving and in a year there can be lots of changes which will be very difficult to migrate upon if not done gradually.

We discussed this a lot before (you can search about it in the repository) and our support policy is currently in this form. You can use dependency_overrides temporarily.

ebsangam commented 2 months ago

I don't think dependency override is good thing to do when there are breaking changes.

pastordee commented 2 months ago

Since flutter is still evolving, is it possible to change our policy to say every four months for now?

Because I think a year is just too long for us to update the package.

mbfakourii commented 2 months ago

Please check this issues.

mtrezza commented 2 months ago

Please everyone feel free to revive the discussion in https://github.com/parse-community/Parse-SDK-Flutter/issues/968 about our support policy and we'll reopen the issue. See the arguments there that have been made to reach the current support policy.

2shrestha22 commented 2 months ago

The support policy is not helping developers. Avoiding latest update for old flutter support does look like a good idea. I never seen any packages doing this. May be we need different policy of flutter package.

2shrestha22 commented 2 months ago

If you still want to have those policy just remember node and flutter aren't same. Node have lts support but flutter doesn't. Flutter is cutting edge tool. We shouldn't fight with framework.

mtrezza commented 2 months ago

We can reopen the discussion in https://github.com/parse-community/Parse-SDK-Flutter/issues/968 if someone wants to respond on the tread there. Please consider the arguments already made there. We will certainly consider any counter arguments that justify a policy change.