-
-
Notifications
You must be signed in to change notification settings - Fork 102
feat: run on desktop #678
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
base: master
Are you sure you want to change the base?
feat: run on desktop #678
Conversation
|
Checked the failures:
|
faf7008 to
d5e03c9
Compare
|
Hi @mateusz-bak, could you please help reviewing this and couple more PRs? Or maybe there is someone else with write permissions who could help? |
a63eec2 to
6645da5
Compare
6645da5 to
c68f954
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change already made, please rebase
pubspec.yaml
Outdated
| file_picker: ^8.3.1 | ||
| smooth_page_indicator: ^1.1.0 | ||
| intl: ^0.19.0 | ||
| intl: ^0.20.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change already made, please rebase
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change already made, please rebase
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi! Thanks for the work, looks like a good improvement.
However I don't see linux or windows directories that I suppose were created after running below command:
flutter create --platforms=linux,windows .
Also please rebase to fix conflicts on already done changes.
c68f954 to
a233e5f
Compare
|
Hi! I would like give some help to merge this PR. Could you give me an update on the current status of the PR and any blockers you’re facing? Thanks in advance :) |
a233e5f to
006403c
Compare
|
Hi, I've rebased the changes on top of the current HEAD and added the linux platform directory. Regarding windows platform directory and build, I didn't add it because I haven't tested it there and won't be able to. One more thing that is missing yet is an automatic build configuration for linux. We won't be able to distribute the linux version without that. |
|
Hi! Has it evolved since last month?? (I can't wait to get OpenReads on my desktop bc i don't have a smartphone anymore) |
73e8188 to
a571bef
Compare
It includes sql configuration for windows, but it's testted only on Linux. Got an example from here: https://github.com/alextekartik/flutter_app_example/blob/96cba15d72e82ad739323f489b261014e3854484/demo_sqflite/lib/main.dart#L15-L21
def18f8 to
837978c
Compare
c8ee660 to
9acd81a
Compare
9acd81a to
8f86985
Compare
8f86985 to
5f40d63
Compare
|
Hi @mateusz-bak, could you please review? The linux build had been added to the test_build.yaml and the I've also made the github workflow store debug build artifacts to allow reviewers run a new version without having to build it locally. |
|
BTW folks. While we're waiting for review you can try it out using the build artifacts: https://github.com/mateusz-bak/openreads/actions/runs/19399497883 To use it:
I did fix everything platform-specific I could fine, but I might've missed something. So let me know if it's crashing or silently ignoring you. CC: @armand-leguillou, @amoinier, @ironhak, @GLLM |
|
Great work @RomanKovtyukh I'm starting the review, I'll try to finish it by tomorrow. |
| _startCreatingCloudBackup(context) async { | ||
| if (!(Platform.isAndroid || Platform.isIOS)) { | ||
| BackupGeneral.showInfoSnackbar( | ||
| 'Cloud backup is not implemented for ${Platform.operatingSystem} yet.', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This shows "Cloud backup is not implemented for linux yet."
I think it should be "Linux"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you mean "linux" not being with capital "L"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's coming from the Platform package, so we'd have to capitalize it ourselves as far as I understand or submit a patch to the Platform package. Don't know which is better TBH.
Hardcoding the whole string with "Linux" would mean that if we want to run it on Windows we'll have to add a separate if statement for that which I'd like to avoid.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I replied by mail, and my messages have been appended to the main thread instead of this one. I wasn't aware of that behaviour, sorry. I'm posting them here now, and removing from the main one.
Do you mean "linux" not being with capital "L"?
Yes, exactly. Sorry that I wasn't precise!
It's coming from the Platform package, so we'd have to capitalize it ourselves as far as I understand or submit a patch to the Platform package. Don't know which is better TBH.
Hardcoding the whole string with "Linux" would mean that if we want to run it on Windows we'll have to add a separate if statement for that which I'd like to avoid.
I imagine this pull request will take some days before it can be merged. So how about submitting a patch, and if it's not accepted by the time we're ready to merge, we'll capitalise ourselves? I'd definitely not hardcode it
Thanks a lot for your work! 👏 Here's some feedback from a short session of looking around. Although there are some issues, it's usable to a high degree, and I'm very happy to have this awesome app available on Linux 🤩 This is just great! Functional issuesThese are issues that I think would be good to fix before releasing. Note that I'm stuck with Android version 2.9.0 so I can't check exactly if they appear only on the desktop version.
Possible UI improvementsThese issues are related to migrating the UI of a mobile app to the desktop. In my opinion, they can wait until after the first release.
|
|
Thanks for the review, @mbeko. Really good findings you have there.
I'm kind of able to reproduce this or similar issue sometimes: openreads is saying "the file is not a valid opereads backup", but then it's working perfectly fine on subsequent runs. Debugging showed that the file is really the right backup, so we must've returned
Sure, need to fix it before releasing.
Yeah, need to fix this. I've seen it, but didn't pay attention since I didn't wait long enough to notice the CPU consumption.
Agree
Good point. I need to check since I've seen files in
Yeah, had the same trouble. On the release builds it's working well -- just no "Debug" indicator. Still need to check the rest of the issues you mentioned. Thanks again for the review. |
ok, this is definitely a race condition of _checkInfoFileVersion with Reproduced this way:
Added commit where I'm adding a concept of an "internal error" asking users to report what happened. It shouldn't be this rushed and shouldn't be part of this PR in my opinion, so I'd like to hear @mateusz-bak opinion on this. But anyway I'd keep the |
It includes sqlite configuration for windows, but only tested on Linux. Got an example from here so decided not to remove the
Platform.isWindowsfrom there.Before this change openreads was showing the following errors at the startup if you try running it on desktop:
#584