- Notifications
You must be signed in to change notification settings - Fork 660
Fix bugs, add transfer rate monitor, add graceful stop, support single-use URLs in rippers #2142
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
Open
iqqu wants to merge 78 commits into RipMeApp:main Choose a base branch from iqqu:patch-1
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline, and old review comments may become outdated.
+1,843 −1,400
Open
Changes from all commits
Commits
Show all changes
78 commits Select commit Hold shift + click to select a range
d770b93 Upgrade gradle
iqqu ff6297c Upgrade vulnerable json lib
iqqu 85c0f51 Upgrade vulnerable commons-io lib
iqqu 0be9a97 Fix log4j2 "Unrecognized format specifier"
iqqu 168c499 Limit log pane lines
iqqu d3af179 Add graceful stop
iqqu 7436b3d Fix method name
iqqu 078b042 Add transfer rate monitor
iqqu 98c15f4 Throttle progress update
iqqu 8f99769 Handle no space left on device
iqqu 306a4a0 Fix sorter usage warning
iqqu 6305b5e Set spammy log message to trace
iqqu 732632e Clarify download try # log message
iqqu aeabca2 Simplify expression
iqqu 25e715a Fix download error handling
iqqu e0af7e6 Retry with continue
iqqu d1f67e6 Support fetching media from single-use token URLs
iqqu c9edecd Use more specific method name
iqqu a1d0634 Remove dead code
iqqu 95bd2cd Extract duplicate code
iqqu 860ff7a Replace DownloadVideoThread with DownloadFileThread
iqqu ee37c74 Extract duplicate code
iqqu 19c0061 Unify thread pools
iqqu ba88600 Fix race condition, handle dupes in albums
iqqu 174a70c Reconfigure logger from new Configuration
iqqu 17a98f9 Set antialiasing hint
iqqu 23c1778 Reduce duplicate code
iqqu b3de651 Log error with logger
iqqu d2ae329 Reduce extra borders
iqqu e5c12b4 Avoid layout shifting
iqqu 3d76fd3 Extract duplicate code
iqqu 67780b8 Prettier status
iqqu ec46ca4 Add ripper support for estimated total item count
iqqu 0d21ee9 Enable changing thread count live
iqqu c54a3bb Enable reordering queue
iqqu 4d618df Target current Java LTS version
iqqu b021834 Use virtual threads
iqqu b188cf7 Prevent data loss: save queue on change
iqqu 9249470 Add rip number column to History table
iqqu d96a193 Update localization key
iqqu 67c039a Add confirmation for single selection queue remove
iqqu 3713427 Enable moving queue selection to top or bottom
iqqu db4cf24 Simplify queue initialization
iqqu 648d191 Do not clobber rip text field on auto rip
iqqu 8152b51 Fix open button
iqqu 98a7eca FlickrRipper: set total items
iqqu faad8f4 Flatten nesting
iqqu 856569e Add simple addUrlToDownload TokenedUrlGetter helper
iqqu c2ac3eb Fix log message
iqqu 8ba7729 Add comment
iqqu 861275a Fix opening folders and links on Linux
iqqu 8f589e2 Improve logging
iqqu 91c2d0c Fix initial pack
iqqu 59f86d6 Reduce button padding
iqqu 71b7c32 No HTML buttons
iqqu 05e19da Prevent status collapse; no empty string
iqqu 6ebaf45 Set date column preferred width
iqqu da5c8cb Extract Pattern field
iqqu a1408e9 Reduce clipboard rip interval
iqqu 235ae48 Add padding to queue button for queue size
iqqu 29f6172 Add log message
iqqu 590ad10 Silence unimportant warning
iqqu ad4ac80 Set transfer rate value width hint
iqqu 5a762a1 Fix label alignment when setting preferred size
iqqu 5948fda Set preferred size of other values
iqqu eeb91dd Preserve status when gracefully stopping
iqqu 60d8e78 Add Mockito
iqqu ae5d694 Minimize transfer rate width
iqqu 778f1b9 Stop retry when not ripping (ugly)
iqqu 5696177 Only open log if no panel is already open
iqqu 63be4ea Check if rip is possible
iqqu 9420258 Check ENOSPC locale independently
iqqu 1a208fd Localize some strings
iqqu c268010 Localize status labels
iqqu fc87938 Update tab button preferred size on locale change
iqqu 42afdcc Open https URL
iqqu f566bb6 Fix minimum label width
iqqu 852027e Work around approximate active status
iqqu File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
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.
See #2057 for why we have the minimum version set to Java 17. Is there a good reason (necessary language feature) to force the minimum version higher?
We've definitely had people complain when the minimum version is too high per default Java version on various systems.
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.
Java Virtual threads require Java 21. I switch DownloadThreadPool to use Thread.ofVirtual().factory() in the following commit to improve performance of churning through many small files. In the commit after that, I use a virtual thread to debounce rapid calls to Utils.saveConfig, which happens when reordering the queue by dragging a queue list item with the mouse.
These could be native threads, and maybe I'm wrong, but I assume virtual threads are more lightweight to start and stop.
Debian is famous for packaging ancient versions of software. Debian 13 was released last month as "stable", and it includes OpenJDK 21. Debian 12 "oldstable" still only has OpenJDK 17.
I would accept removing virtual threads and downgrading to Java 17 again, but it's trivial for a Debian user to just download and extract any JRE version they want from https://adoptium.net and run the jar with that.
Uh oh!
There was an error while loading. Please reload this page.
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.
contrary to the time of #2057, debian has now openjdk-21 in stable, so i not see any hinderance to upgrade to 21 now, what you think @metaprime ?
https://tracker.debian.org/pkg/openjdk-21
but, @iqqu , the continuous build and release is not successful, as it uses ubuntu with java-17. you mind updating the github build file as well to java-21?
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 am busy most of this weekend but early next week I will push an update for this
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 will have the update ready later today.