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

Migrate to Capacitor #1698

Closed
HarelM opened this issue Mar 12, 2022 · 4 comments · Fixed by #1743
Closed

Migrate to Capacitor #1698

HarelM opened this issue Mar 12, 2022 · 4 comments · Fixed by #1743
Assignees
Labels
App Native application related issues enhancement Medium Should be added/fixed in the future

Comments

@HarelM
Copy link
Member

HarelM commented Mar 12, 2022

Infra

Cordova maintenance (both plugins and core libraries) is far from ideal.
Issues there are open for a long time without reply, pull request are not picked up. It's a very bad sign and it seems like the community is migrating to Capacitor.

As a result, I believe now is the time to migrate too.
It will not be simple, it will cause a lot of noise but I hope that in the end, we will be in a far better place.
The main benefit, but also the drawback, is that you get to maintain the code that is specific to the platform and be able to change it without waiting for a PR to land or a version to be released.
I'll start this on a branch and see how it goes.
It's probably better to release a version before starting this just to be sure the latest code is not waiting to be released...

@HarelM HarelM added enhancement Medium Should be added/fixed in the future App Native application related issues labels Mar 21, 2022
@github-actions
Copy link

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 7 days

@HarelM
Copy link
Member Author

HarelM commented Jun 25, 2022

A possibility for an initial version in Capacitor might be by using Fiverr services.

@HarelM HarelM self-assigned this Jul 8, 2022
@HarelM HarelM added this to the Next Release milestone Jul 8, 2022
@HarelM
Copy link
Member Author

HarelM commented Jul 20, 2022

Fiverr leads died out unfortunately.
I've tried to migrate using all the plugins and it failed in iOS with compilation error I was unable to resolve (didn't try too much though).

So I've decided to go the other way around - i.e. remove all the plugins, set compilation flag to not cordova (i.e. same as website) and it worked, now there's a need to add back all the plugins.
I'll try to use the cordova plugins first. If this fails I'll see if I can replace some with capacitor plugins.

Tasks:

  • Fix icon stuff...
  • Update CI
  • cordova-plugin-purchase - offline subscription
  • cordova-sqlite-ext - offline maps (later on maybe: https://github.com/capacitor-community/sqlite)
  • cordova-plugin-file - https://capacitorjs.com/docs/apis/filesystem - also there's this issue with FileReader
  • cordova-plugin-file-transfer - download large files - no replacement?
  • cordova-plugin-zip - unzip in native - not in use
  • cordova-plugin-x-socialsharing - share files, e-mail, etc
  • cordova-background-geolocation-plugin
  • cordova-plugin-device - device info - @capacitor/device
  • cordova-plugin-camera - @capacitor/camera
  • cordova-plugin-deeplinks - @capacitor/app
  • cordova-plugin-brightness - brightness and keep screen on - @capacitor-community/keep-awake,
  • back button
  • deep links
  • cordova-plugin-device-orientation - orientation
  • cordova-plugin-media - playback - @capacitor-community/native-audio
  • cordova-plugin-network-information - ? not in use
  • cordova-plugin-oauth - login
  • cordova-plugin-screen-orientation - ? not in use
  • cordova-plugin-statusbar - a status bar bug fix in iOS - I decided to simply hide it, we'll need to see how this is accepted by the users...
  • cordova-plugin-vibration - needed for iOS as it doesn't support the browser native API
  • es6-promise-plugin - ? not needed I think
  • phonegap-plugin-mobile-accessibility - usePreferredTextZoom - keep font size untouched - replaced with @capacitor/text-zoom
  • replace all isCordova with isCapacitor
  • replace pause, resume, resign
  • Fix TODOs
  • Think about migrating old databases or at least clear the database update time when upgrading...
  • Change minor version? Major version?
  • Check to see that iOS data is stored on upgrade (not just offline database)
  • Replace UntypedFormControl

HarelM added a commit that referenced this issue Jul 28, 2022
HarelM added a commit that referenced this issue Jul 28, 2022
HarelM added a commit that referenced this issue Jul 28, 2022
HarelM added a commit that referenced this issue Aug 2, 2022
HarelM added a commit that referenced this issue Aug 3, 2022
HarelM added a commit that referenced this issue Aug 3, 2022
HarelM added a commit that referenced this issue Aug 3, 2022
HarelM added a commit that referenced this issue Aug 4, 2022
HarelM added a commit that referenced this issue Aug 4, 2022
HarelM added a commit that referenced this issue Aug 10, 2022
* iOS: modify route creates additional point #1726 - remove webview plugin

* #1726 - Fix iOs build (I hope), fix lottie poi animation

* #1726 - Fix iOS build plugin name problem, fix tests

* Use the plugin from the oroginal author and not from the fork

* #1762 - remove incorrect unused import

* Update to latest webview fix

* #1698 - Migrate to Capacitor - remove plugins and add capacitor

* #1698 - Migrate to Capacitor - Added purchase plugin

* #1698 - Migrate to Capacitor - Added sqlite-ext plugin

* #1698 - Migrate to Capacitor - add cordova-plugin-file

* #1698 - Migrate to Capacitor - Added cordova-plugin-filetransfer

* #1698 - Migrate to Capacitor - Fixed file plugin and added social sharing plugin

* #1698 - Migrate to Capacitor - Add background geolocation plugin

* #1698 - Migrate to Capacitor - update CI code

* #1698 - Migrate to Capacitor - Add app and device plugins, fix CI

* #1698 - Migrate to Capacitor - Add screen brightness and keep awake

* #1698 - Migrate to Capacitor - Added capacitor camera plugin

* #1698 - Migrate to Capacitor - Fix camera compilation error

* #1698 - Migrate to Capacitor - Reduce cordova name in app, fix camera plugin usage

* #1698 - Migrate to Capacitor - Fix export plist options to include provisioning profile

* #1698 - Migrate to Capacitor - Fix icons, remove cordova config

* #1698 - Migrate to Capacitor - Fix Add missing icons

* #1698 - Migrate to Capacitor - Fix icons

* #1698 - Migrate to Capacitor - improve url handling

* #1698 - Migrate to Capacitor - added ouath plugin

* #1698 - Migrate to Capacitor - added device orienation, remove is cordova, removed resume events

* #1698 - Migrate to Capacitor - fix ios crash due to missing preferences

* #1698 - Migrate to Capacitor - Fix iOS crash due to missing preference

* #1698 - Migrate to Capacitor - Added vibration, removed some TODOs

* #1698 - Migrate to Capacitor - replace capacitor file system with cordova due to large files, add in comment the migration to capasitor sqlite

* #1698 - Migrate to Capacitor - missing files in previous commit - remove capacitor filesystem

* #1698 - Migrate to Capacitor - Fix tests

* #1698 - Migrate to Capacitor - replace cordova sqlite with capacitor's

* #1698 - Migrate to Capacitor - Fix ios compilation, fix cache folder in android

* #1698 - Migrate to Capacitor - Fix sqlite-community with patch-package

* #1698 - Migrate to Capacitor - upgrade to angular 14

* #1698 - Migrate to Capacitor - Upgrade to material 13

* #1698 - Migrate to Capacitor - update flex layout

* #1698 - Migrate to Capacitor - fix lint, update material to 14

* #1698 - Migrate to Capacitor - update other dependencies

* #1698 - Migrate to Capacitor - remove more todos

* #1698 - Migrate to Capacitor - Hide statusbar instaed of using a plugin

* #1698 - Migrate to Capacitor - update ios version using patch package

* #1698 - Migrate to Capacitor - update geolocation plugin version to 2.0.5

* #1698 - Migrate to Capacitor - change ios default version

* #1698 - Migrate to Capacitor - Fix scss encoding and split it back

* #1698 - Migrate to Capacitor - Fix pois sidebar and turn them into buttons

* #1698 - Migrate to Capacitor - update eslint version

* #1698 - Migrate to Capacitor - update capacitor to version 4.0.1

* #1698 - Migrate to Capacitor - update jdk to 11

* #1698 - Migrate to Capacitor - fix android icon

* #1698 - Migrate to Capacitor - update more dependecies

* #1698 - Migrate to Capacitor - fix icon and upgrade geolocation plugin to version 2.0.6

* #1698 - Migrate to Capacitor - Fix reading a file issue due to a bug in the cordova plugin

* #1698 - Migrate to Capacitor - Fix zoom text size

* #1698 - Migrate to Capacitor - fix merge from main

* #1698 - Migrate to Capacitor - Move out of @ionic-native into @awesome-cordova-plugins

* #1698 - Migrate to Capacitor - Fix ios cache folder, small UI improvement in progess dialog

* #1698 - Migrate to Capacitor -  added --prod to sync

* #1698 - Migrate to Capacitor - Fix cap sync and remove the set-capacitor-version package

* #1698 - Migrate to Capacitor - remove set-capacitor-version

* #1698 - Migrate to Capacitor - Add CI print for the files that have changed

* #1698 - Migrate to Capacitor - Fix CI version issues

* #1698 - Migrate to Capacitor - Fix ios version change

* #1698 - Migrate to Capacitor - update d3 to latest version and remove angular wrapper

* #1698 - Migrate to Capacitor - See if android build tools are not needed?

* #1698 - Migrate to Capacitor - remove unneeded code from android ci script

* #1698 - Migrate to Capacitor - Added database migration code

* #1698 - Migrate to Capacitor - Fix database name issue

* #1698 - Migrate to Capacitor - Added native audio to support sound notifications

* #1698 - Migrate to Capacitor - Fix file not found exception

* #1698 - Migrate to Capacitor - Fix android database file location

* #1698 - Migrate to Capacitor - remove commonjs warnings

* #1698 - Migrate to Capacitor - add ios scheme to preserve local storage

* #1698 - Migrate to Capacitor - code review changes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
App Native application related issues enhancement Medium Should be added/fixed in the future
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant