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

Multiselect to run multiple tasks #80

Open
FoxP opened this issue Feb 21, 2020 · 68 comments
Open

Multiselect to run multiple tasks #80

FoxP opened this issue Feb 21, 2020 · 68 comments
Labels
enhancement New feature or request will be fixed in the next relase fix is already done and will be included in the next release
Milestone

Comments

@FoxP
Copy link

FoxP commented Feb 21, 2020

Hello, thank you very much for RcloneBrowser! 👍

It is possible to add a way to multi-select jobs from "Task" tab then click to the "Run" button to run them one by one, from top to bottom ?

A "for each" in selected tasks. 😃

Thanks in advance!
Best regards

@kapitainsky
Copy link
Owner

kapitainsky commented Feb 21, 2020 via email

@FoxP
Copy link
Author

FoxP commented Feb 21, 2020

No problem, it was an enhancement request. :)
I also did a C# GUI for rclone some months ago, but yours is far better.

image

@kapitainsky
Copy link
Owner

Maybe you would like to look at Rclone Browser code and improve it? Pretty much all is missing there... it would be great if tasks can be sorted, rearranged by drug and drop (this is actually one line of code - but I failed to make changes persistent). Multi run etc..

@kapitainsky
Copy link
Owner

I am at the moment working on better look and feel + better handling remotes when somebody has many...

Here are my test branch screenshots what is coming:
Screenshot 2020-02-21 at 20 16 41

Screenshot 2020-02-21 at 20 17 04

@kapitainsky kapitainsky added enhancement New feature or request help wanted Extra attention is needed labels Feb 21, 2020
@kapitainsky
Copy link
Owner

Also it would be nice to add some sort of scheduler to tasks. You are more than welcome to help with Rclone Browser. More people get involved than better it will become

@FoxP
Copy link
Author

FoxP commented Feb 22, 2020

I'm not very good at C++, my main languages are C# / Python.
Nice look and feel, the testing branch looks interesting!

@kapitainsky kapitainsky added will be fixed in the next relase fix is already done and will be included in the next release and removed help wanted Extra attention is needed labels Feb 28, 2020
@kapitainsky
Copy link
Owner

I have implemented multiple tasks selection.. Would you be interested to try beta version?

If yes let me know what is your operating system and I will release one.

@FoxP
Copy link
Author

FoxP commented Mar 1, 2020

Oh, cool! Yes, for Windows please. 👍
Do you run selected tasks in selected order ? Or from top to bottom ?
If from top to bottom, is there a way to edit tasks order ?
Do you run all selected tasks one by one ? Or all at once ?

I mainly use rclone for online backups so in my opinion :

  • running selected tasks from top to bottom is better, if you can edit tasks order
  • running tasks one by one is better as you may want to copy some data at a specific location, then upload it somewhere else. Plus, running all tasks at once may DDOS the storage system because i guess you start them in separate threads

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 1, 2020 via email

@kapitainsky
Copy link
Owner

Oh, cool! Yes, for Windows please. 👍
Do you run selected tasks in selected order ? Or from top to bottom ?
If from top to bottom, is there a way to edit tasks order ?
Do you run all selected tasks one by one ? Or all at once ?

I mainly use rclone for online backups so in my opinion :

* running selected tasks from top to bottom is better, if you can edit tasks order

tasks are now sorted alphabetically - A->Z or Z->Z, so you can control order in some way

* running tasks one by one is better as you may want to copy some data at a specific location, then upload it somewhere else. Plus, running all tasks at once may DDOS the storage system because i guess you start them in separate threads

I am thinking about "Queue" mechanism - you add tasks to the queue. newly added task are at the bottom. Queue is processed from the top.

But it is future project.

In the meantime I will release beta Windows version so you can have a look and test.

@kapitainsky
Copy link
Owner

Here you are:
https://1drv.ms/u/s!Aq335pidOrBV3-hAchh_Oxz1IJGsLw
Please let me know if you have any comments what can be improved.

@FoxP
Copy link
Author

FoxP commented Mar 1, 2020

Oops. If i press Edit on a task, the app crashes. Same with File -> Preferences.

Enregist._2020_03_01_21_14_28_823.zip

@kapitainsky
Copy link
Owner

weird... but definitely has to be fixed

@FoxP
Copy link
Author

FoxP commented Mar 1, 2020

Is there a way to generate logs to help you?

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 1, 2020 via email

@kapitainsky
Copy link
Owner

Working one

https://1drv.ms/u/s!Aq335pidOrBV3-hBew4Haw4QybPetQ

There is bug in Qt (I've got ticket open with Qt authors) - so I use different versions in every environment. Easy to mess things up. But this time I tested:) this is working one

@FoxP
Copy link
Author

FoxP commented Mar 1, 2020

Its works very well. 👍

Some comments :

  • Msgbox for "run" button shows the "dry-run" message :

image

  • CTRL+A and Shift + selection are nice additions, thanks.

  • The "Sort" button does the job, i renamed all my jobs accordingly.

  • Selection is not sorted from top to bottom, that's nice if you add a "queue" feature in the future :

image

  • Font size is not consistent between "Tasks" and "Jobs" tabs :

image

image

  • Is it possible to edit following fields?

image

  • Some ideas :

image

image

image

image

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 1, 2020 via email

@kapitainsky
Copy link
Owner

Also good that you test it on windows. I do all dev on Mac so windows testing is always behind. It is real PITA trying to keep all three platforms working consistently.

@kapitainsky
Copy link
Owner

Also note that things like rclone check, get tree etc are no longer blocking main window. They all run modeless windows.

@FoxP
Copy link
Author

FoxP commented Mar 1, 2020

I edited my previous comment.
Don't hesitate to ask for tests, will be happy to help.

@FoxP
Copy link
Author

FoxP commented Mar 1, 2020

That's nice!
Maybe one issue : Modeless windows, but they are still set as "topmost".

@kapitainsky
Copy link
Owner

Maybe one issue : Modeless windows, but they are still set as "topmost".

It is not the same on macOS and Linux where it works as intended. Another example of cross platform app dev fun:) It is simple time wise impossible to test all aspects of all environments for me so your help is really appreciated.

@FoxP
Copy link
Author

FoxP commented Mar 2, 2020

Oh, shame on Qt.

@kapitainsky
Copy link
Owner

another beta ready - with added tasks queue processing.

https://1drv.ms/u/s!Aq335pidOrBV3-hEcyYkwUGHh1ua8Q

Let me know what you think.

@FoxP
Copy link
Author

FoxP commented Mar 8, 2020

Works perfectly! Very (very) good job. Everything is so polished for a "beta".
Some comments :

  • Rclone Browser should not blink in taskbar for each ending task from a queue (?)
  • Queue is still running even when finished :
    Enregist _2020_03_08_18_48_02_490
  • It is possible to add same task twice to queue, not sure if wanted
  • After a click on the "Add" button from "Tasks" tab, task selection should (?) be cleared
  • CTRL+A and SHIFT+selection shortcuts not possible ATM
  • No multiselection for up, down and remove buttons in Queue tab
  • Maybe you should also add the up and down buttons in "Tasks" tab as selection order in this tab is not kept when sent to queue
  • Difficult to distinguish "upload" and "download" tasks since icons are very similar :
    image
  • It would be great to be able to shutdown, hibernate computer, or run a user-defined command line at the end of the queue. Killer feature for me!
  • On a 1080p screen :
    image
  • "Purge" button was enabled with only one (running) task from queue. After a click on it, it is now disabled :
    Enregist _2020_03_08_18_40_21_736

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 10, 2020

Your ps file. I relyon QT backend to decide if file is executable or not. You can always type it’s path/name by hand I think. Then nothing is checked

@thanamaha2002
Copy link

I want to ask something from @FoxP, it's nothing to do with the issue but what software you use to record screen and turn to GIF?

@FoxP
Copy link
Author

FoxP commented Mar 12, 2020

Bat files work. But output is not sent to console. Try to redirect output to file in your bat file and you will see that file is created.

You are right! Works perfectly.

Another two weeks and I will release it. Would be great you use the latest “beta”. And if any issues let me know.

No problem, I always use your testing versions instead of latest stable release.

Your ps file. I relyon QT backend to decide if file is executable or not. You can always type it’s path/name by hand I think. Then nothing is checked

Good approach. Thanks for this.

@FoxP
Copy link
Author

FoxP commented Mar 12, 2020

@thanamaha2002 : i use oCam, but ScreenToGif may be better.

@FoxP
Copy link
Author

FoxP commented Mar 14, 2020

Did some additional testing : works perfectly. 👍

@kapitainsky
Copy link
Owner

By any chance do you have maybe simple bat script putting Windows computer to sleep? I could include it in the next release as sample script to use

@FoxP
Copy link
Author

FoxP commented Mar 14, 2020

By any chance do you have maybe simple bat script putting Windows computer to sleep? I could include it in the next release as sample script to use

You can use this .bat script to hibernate (not sleep) :

cd c:\
shutdown /h

...or use this, i had some free time : https://github.com/FoxP/RcloneBrowserLauncher

@kapitainsky
Copy link
Owner

Your Launcher is nice thing! I like it

@kapitainsky
Copy link
Owner

I keep working on new version so will share next beta soon. I am re writing completely mount feature. Now you will be able to mount to letter or folder, save mount as a task, run it every time RB starts and also run custom script so you can add things like cache warming etc.

Screenshot 2020-03-13 at 20 38 42

@FoxP
Copy link
Author

FoxP commented Mar 15, 2020

Your Launcher is nice thing! I like it

Thanks!

A "Close Rclone Browser when finished" for tasks queue could be a good addition for Rclone Browser, in my opinion. I can implement it in my launcher, but it can be done easier on your side.

Also, one question : What is Rclone Browser default install path on Windows? I can't find it as the setup.exe keep my custom install path for each update.

@FoxP
Copy link
Author

FoxP commented Mar 15, 2020

I keep working on new version so will share next beta soon. I am re writing completely mount feature. Now you will be able to mount to letter or folder, save mount as a task, run it every time RB starts and also run custom script so you can add things like cache warming etc.

Wow, nice addition!
The "Run saved task every time Rclone Browser starts" is an EXCELLENT idea! 👍 👍 👍

@kapitainsky
Copy link
Owner

The "Run saved task every time Rclone Browser starts" is an EXCELLENT idea! 👍 👍 👍

I only intend it add this to mount tasks.

Normal tasks will have scheduler one day:)

@kapitainsky
Copy link
Owner

Also, one question : What is Rclone Browser default install path on Windows? I can't find it as the setup.exe keep my custom install path for each update.

if you install for "All users" - C:\Program Files\Rclone Browser
if you install only for yourself - C:\Users\dariusz\AppData\Local\Programs\Rclone Browser

@kapitainsky
Copy link
Owner

Also with next beta I will move this chat to new "issue" - this one is already too long:)

@kapitainsky
Copy link
Owner

A "Close Rclone Browser when finished" for tasks queue could be a good addition for Rclone Browser, in my opinion. I can implement it in my launcher, but it can be done easier on your side.

I see sense in hibernation when job done but closing app itself only? Why somebody would do it? Especially there is no history or log at the moment - only way to check if all went ok is to look at jobs.

@FoxP
Copy link
Author

FoxP commented Mar 15, 2020

Normal tasks will have scheduler one day:)

Like FreeFileSync, but rclone-based. Perfection. :)

if you install for "All users" - C:\Program Files\Rclone Browser
if you install only for yourself - C:\Users\dariusz\AppData\Local\Programs\Rclone Browser

Thanks, added to the README.md file of my launcher.

Also with next beta I will move this chat to new "issue" - this one is already too long:)

No problem!

I see sense in hibernation when job done but closing app itself only? Why somebody would do it? Especially there is no history or log at the moment - only way to check if all went ok is to look at jobs.

It was just an idea, it could auto-close itself at the end of the queue (if checked somewhere) if no error. This way, no need to have a look at jobs list.

@kapitainsky
Copy link
Owner

next beta here:

#93 (comment)

with vastly improved mounting

@FoxP
Copy link
Author

FoxP commented Mar 19, 2020

Something weird, having my script at this location works :
C:\Users\Blabla\Downloads\test\RcloneBrowserLauncher.exe
...but not at this location :
D:\Documents\Code source\RcloneBrowserLauncher\RcloneBrowserLauncher\bin\Release\RcloneBrowserLauncher.exe

Because of space in path? (between "Code" and "source")

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 19, 2020 via email

@FoxP
Copy link
Author

FoxP commented Mar 19, 2020

After queue is finished. I'll try new mount feature tomorrow. :)

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 19, 2020 via email

@FoxP
Copy link
Author

FoxP commented Mar 20, 2020

OK, fixed in v1.9.7.6. Thanks!

@kapitainsky kapitainsky added this to the 2.0.0 milestone Mar 21, 2020
@FoxP
Copy link
Author

FoxP commented Mar 25, 2020

I managed to crash Rclone Browser trying to edit a "Task" while the "Queue" was running (with some tasks inside). Hard to reproduce, but maybe there is a multithreading concurrent access somewhere.

@kapitainsky
Copy link
Owner

Thank you. I hope this one is already fixed as I identified some race condition recently and it fits into it - don't have beta release though as many other things are work in progress. In the next few days.

@kapitainsky
Copy link
Owner

Just in case I will add extra semaphore to lock task data when queue starts task - as maybe when in by pure luck in the same moment user tries to save the same task data it can clash.

@kapitainsky
Copy link
Owner

What is the way in Windows to tell OS don't go sleep? I think I solved this for macOS and would like to add option to RB - "prevent sleep when active transfers". Qt does not have any mechanism to do it so I have to fall back to native code.

@FoxP
Copy link
Author

FoxP commented Mar 26, 2020

@kapitainsky
Copy link
Owner

kapitainsky commented Mar 26, 2020

cool. thx. This looks like an answer - I want Rclone Browser to prevent sleep as long as rclone transfer it running. And I even think I wont make it optional - too many configurable options is mess - I don't see any logical reason why somebody would start transfer and then expect computer to go sleep half way. What you think?

@FoxP
Copy link
Author

FoxP commented Mar 29, 2020

Same, that's why i disable all my computers to go to sleep when "idle".
If i want them to go into sleep mode, i do it manually for each software :

  • Rclone Browser can do this with my launcher
  • qBittorent has an option to activate
    image
  • etc...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request will be fixed in the next relase fix is already done and will be included in the next release
Projects
None yet
Development

No branches or pull requests

3 participants