Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create CapacitorJS v6 package compatibility #541

Closed
bluepuma77 opened this issue Apr 16, 2024 · 56 comments
Closed

Create CapacitorJS v6 package compatibility #541

bluepuma77 opened this issue Apr 16, 2024 · 56 comments

Comments

@bluepuma77
Copy link

Describe the bug
CapacitorJS v6.0 was just released (Github, Blog). Now npm is throwing error on update, need to use --force or --legacy-peer-deps to make it work.

To Reproduce
Update all npm libraries to latest with ncu -u, then run npm i.

Expected behavior
Should work without "force".

Additional context
Big question for me is how to make CapacitorJS v5 continue smoothly, so those users don't get an update error.

@bluepuma77
Copy link
Author

According to ChatGPT multiple major versions can be enabled:

  "peerDependencies": {
    "@capacitor/core": "^5.0.0 || ^6.0.0"
  },

@jepiqueau
Copy link
Collaborator

@bluepuma77 capacitor 6 is not supported yet

@rosostolato
Copy link

rosostolato commented Apr 18, 2024

@jepiqueau, any chance we can expect support for capacitor 6 in the next few days?

-- edit --

I just tried to force install the plugin on capacitor v6 and it didn't break my app. Can you please push a minor version adding support to version 6 like @bluepuma77 suggested? It will stop breaking the npm install at least.

@jepiqueau
Copy link
Collaborator

@rosostolato not really Capacitor 6 requires for iOS Xcode 15 which runs only on Sonatra which is not supported on my MacBook Pro. So i cannot build the ios part otherwise it would have been released already.

@rosostolato
Copy link

rosostolato commented Apr 19, 2024

@jepiqueau got it, I had just tested on Android.

But actually, xcode 15 requires Ventura 13.5 to run: https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes

Doesn't your Mac support it? And if not, can't you run it on a vm? Or if you tell me what I need to do, I can build it for you.

@jepiqueau
Copy link
Collaborator

@rosostolato thanks for your proposalbut my Mac is from 2016so it does not even support Ventura. I will what solutions i have but it will take a bit of time free which is not the case those week as i got some personal issues. I will keep you aware of the progress

@bluepuma77
Copy link
Author

@jepiqueau Did you contact Ionic developer relations, if they could sponsor you a new MacBook, as you are an important community maintainer? Their "Director of Developer Relations" is on LinkedIn 😄

@jepiqueau
Copy link
Collaborator

@bluepuma77 can give me his références name and email please

@Meerkap
Copy link

Meerkap commented Apr 28, 2024

Same here, waiting for support v6

@jepiqueau
Copy link
Collaborator

@bluepuma77 i sent an email to Mike, we will see. May be some of you can also sponsor me for part of it

@rosostolato
Copy link

rosostolato commented Apr 29, 2024

Dude, you should try a VM. If you have Linux or even windows, you can try docker-osx. It's not illegal, you can see more info on their faq section.

@jepiqueau
Copy link
Collaborator

@rosostolato i tried a VM with Windows but it is far to slow and the mouse motion is also slow making it really not useful.

@rosostolato
Copy link

@jepiqueau have you tried docker-osx running on wsl? I know it's not that fast like an actual Mac but not too slow that you can't use to compile stuff.

@RubioN
Copy link

RubioN commented May 2, 2024

Waiting for support v6 too here 🙏

@rosostolato
Copy link

@jepiqueau if you tell me the steps I can compile it for you. We can't just let this package get stale because of that.

@jepiqueau
Copy link
Collaborator

@rosostolato i have publish an alpha version for Capacitor6 that you can install with `npm i --save @capacitor-community/sqlite@capv6 in your app, i will check it to day for Android, Electron and Web by migrating my testing apps to Capacitor6. If you can do it for one of your app (migrating to Capacitor6) and build it and report to me the result it would be great

@lajith111
Copy link

lajith111 commented May 6, 2024

@jepiqueau I have checked my app in browser as well as android emulator(14) its working fine..Thanks

@jepiqueau
Copy link
Collaborator

@bluepuma77 @rosostolato @lajith111 @RubioN @Meerkap I tested the @capacitor-community/sqlite@capv6 on Android, Electron, Web it works fine.

@jepiqueau
Copy link
Collaborator

@lajith111 thanks for the feedback on Android and Web

@RubioN
Copy link

RubioN commented May 6, 2024

Thank you very much @jepiqueau !
I'll keep an eye on developments for iOS

@eideard-hm
Copy link

Same here, waiting for support v6
image

@rosostolato
Copy link

@eideard-hm you can try out the new version by installing @capacitor-community/sqlite@capv6

@jepiqueau
Copy link
Collaborator

@rosostolato did you try building the ios plugin in an app ? What was the result?

@rosostolato
Copy link

@jepiqueau not yet, I will try tonight or tomorrow, I will let you know.

@rosostolato
Copy link

@jepiqueau I just tested it on my capacitor v6 app and everything looks good. Both iOS and Android are just working. Thank you for that!

@jepiqueau
Copy link
Collaborator

@rosostolato thanks for your feedback. Happy of this

@xsorifc28
Copy link

When V6?

@RubioN
Copy link

RubioN commented May 21, 2024

@jepiqueau do you have some news please ? 🙏

@jepiqueau
Copy link
Collaborator

@RubioN as mentioned above you can use @capacitor-community/sqlite@capv6 it has been tested by myself for Web, Electron and Android and by @rosostolato for iOS and it works fine.

@Sampath-Lokuge
Copy link

@jepiqueau I think you can use the macincloud service until you have a new Mac: https://checkout.macincloud.com/
I have used it and very fast service too.

@Sampath-Lokuge
Copy link

@jepiqueau when will you release the production-ready version of this?

@Sampath-Lokuge
Copy link

I hope it'll not happen again here. What are your thoughts guys?

I have been dedicated to developing and maintaining this plugin for many years since the inception of Ionic Capacitor. Now, at 73+ years old, and with my MacBook Pro becoming obsolete for running Capacitor 6 for iOS, I have made the decision to cease maintenance of the plugin. If anyone wishes to take ownership of this plugin, they are welcome to do so.

It has been a great honor to be part of this development journey alongside the developer community. I am grateful to see many of you following me on this path and incorporating the plugin into your applications. Your comments and suggestions have motivated me to continuously improve it.

I have made this decision due to several family-related troubles that require my full attention and time. Therefore, I will not be stepping back. Thank you to all of you for your support.

@jepiqueau
Copy link
Collaborator

@Sampath-Lokuge i will issue a full Capacitor V6 version of this plugin and it will be the last one.

@rosostolato
Copy link

Thank you all the effort you put on this amazing plug-in. I hope this project never dies 🙏

@Sampath-Lokuge
Copy link

Thanks, @jepiqueau That will give us at least a small joy hence we cannot update our apps to Cap 6 until we have official support from this plugin. i.e. we cannot use the alpha version with production-ready apps. Good luck!

@robingenz
Copy link
Member

@jepiqueau Let me know if you need any support with the release.

@jormaj
Copy link

jormaj commented Jun 11, 2024

@jepiqueau Thank you for all your work!
Is there anything we can do to help you in your situation?
If money is an issue I would be happy to contribute something through a crowdfunding or Github sponsoring f.ex.

@jepiqueau
Copy link
Collaborator

@robingenz @rosostolato thanks, i will need someone to validate the iOS part when issues like @rosostolato did for the alpha release.
@jormaj it is not a question of money, No one can get me back to my sixties... More seriously, several members of my family are impacted by serious healthy problems which requires my full attention and time.
I will try to issue the v6 in the course of the week and after your validation it will be the last release from me.
Hope some of you will take the challenge to keep the plugin alive. Talk to Mike Hartington in chargé from Ionic of the capacitor-community.

Thanks to all of you for your understanding and support

@jormaj
Copy link

jormaj commented Jun 11, 2024

@jepiqueau I understand.
I think it's amazing that you're still developing, I hope I will be the same when I reach your age!
Even though money is not the issue, I saw that you had Github sponsor setup so I've sponsored you as a token of appreciation.
All the best!

@sertal70
Copy link

@jepiqueau I have a MacBook M3 Pro looking forward to be stressed 😃 so I can validate the iOS part of the plugin, I have some experience in Capacitor Plugins development because I 've written a couple of them for company internal purposes. I just need instructions on what to do, hope this can help.

@jepiqueau
Copy link
Collaborator

@bluepuma77 @rosostolato @lajith111 @RubioN @Meerkap Can some of you test the beta release tag --capv6. Waiting for your feedback before releasing 6.0.0

@sertal70
Copy link

@jepiqueau I'll check the iOS part this evening (CEST) and put my feedback here. Is there any test suite I can use for that?

@CarlosPoventud
Copy link

I downloaded the cap6 version and am not seeing any issues so far on web, iOS or Android! Thanks for all the hard work @jepiqueau !

@jepiqueau
Copy link
Collaborator

@sertal70 you can clone ionic-react-test-issues, the main branch is for version 6 in the Home page select the menu and you will find a list of tests. They must all run to completion

@jepiqueau
Copy link
Collaborator

@CarlosPoventud thanks for the feedback, can you also clone ionic-react-test-issues and test it on iOS. i run the tests on Web, Android and Electron, they all complete successfully

@CarlosPoventud
Copy link

@jepiqueau Running from the emulator it all seems to work! Attaching several pictures from an iPhone 15 simulator:

image
image
image
image

@jepiqueau
Copy link
Collaborator

@CarlosPoventud thanks for the feedback waiting more feedbacks from others and i will then publish the release 6.0.0

@sertal70
Copy link

@jepiqueau I've tested the plugin on a physical iPhone XR v17.3.1, a physical iPhone 7 Plus v15.8.2 and a simulator iPhone 15 v.17.5 All the tests completed without any visible errors, except the "MultipleRows test" which does not complete with the following log:

To Native ->  CapacitorSQLite executeSet 40086323
ERROR MESSAGE:  {"message":"ExecuteSet: Failed in execSet :  Error: prepareSQL finalize failed rc: 19 message: UNIQUE constraint failed: contacts.email","errorMessage":"ExecuteSet: Failed in execSet :  Error: prepareSQL finalize failed rc: 19 message: UNIQUE constraint failed: contacts.email"}
⚡️  [error] - {"message":"ExecuteSet: Failed in execSet :  Error: prepareSQL finalize failed rc: 19 message: UNIQUE constraint failed: contacts.email","errorMessage":"ExecuteSet: Failed in execSet :  Error: prepareSQL finalize failed rc: 19 message: UNIQUE constraint failed: contacts.email"}

It is weird because this test starts to fail only after I run "Get from HTTP test". If I do a clean install and avoid to run that test, it completes ok.

@jepiqueau
Copy link
Collaborator

@sertal70 thanks for the feedback. That strange behaviour as the two tests are completely separate i will have a look

@jepiqueau
Copy link
Collaborator

@sertal70 have you clean all databases on the device before starting the tests?

@jepiqueau
Copy link
Collaborator

@sertal70 i had a look for this test i forgot to clean an vacuum the database after open so by runniing it a second time you will get the UNIQUE constraint failed. If you add the clean and vacuum like in some others tests it must not failed

@jepiqueau
Copy link
Collaborator

Release 6.0.0 has been published. Thanks all for your contribution

@sertal70
Copy link

@jepiqueau sorry I saw your comments right now because yesterday I had to leave... Glad to see you published release 6! Thank you so much for you effort!

@jepiqueau
Copy link
Collaborator

@sertal70 you are welcome

@lajith111
Copy link

lajith111 commented Jun 13, 2024

@bluepuma77 @rosostolato @lajith111 @RubioN @Meerkap Can some of you test the beta release tag --capv6. Waiting for your feedback before releasing 6.0.0

@jepiqueau Checked in web and real android device working perfectly fine. Thanks a lot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests