Skip to content

Latest commit

 

History

History
317 lines (242 loc) · 14.5 KB

CHANGELOG.md

File metadata and controls

317 lines (242 loc) · 14.5 KB

Version 3.0

  • Add support for resuming background uploads if RSAF crashes or is killed by Android (PR #114)
    • This process is automatically triggered after the device boots or when RSAF is opened.
    • This also fixes an issue where after a crash, the first file operation on a remote will hang until all leftover pending uploads for that remote have completed.
    • NOTE: Due to limitations with how rclone reports errors for asynchronous uploads, RSAF is no longer able to show a notification if a file upload fails. rclone automatically retries failed uploads and the files remain in the VFS cache until the upload succeeds.
  • Remove support for POSIX-like file operation semantics (PR #115)
    • Android is generally not designed to behave this way and applications expect document providers, like RSAF, to behave like Android's builtin document provider for local files. There are no known client applications that explicitly made use of this feature.
  • Fix caching of golang dependencies in Github Actions CI builds (PR #116)
  • Update rclone to 1.69.0 (PR #117)
  • Update dependencies (PR #118)

Version 2.5

  • Add support for generating thumbnails for audio, image, and video files (PR #113)

Version 2.4

  • Make inactivity timeout duration for the app lock configurable and add a button for locking immediately (PR #109)
  • Add support for hiding files on a remote while the app is locked (Issue #106, PR #110)
  • Update dependencies (PR #111)

Version 2.3

  • Fix icon scale and rebase off latest material smb share icon (PR #105)
  • Suppress errors when closing read-only files (PR #107)
  • Show notification when files are open to keep the process alive (PR #108)
    • This reduces the chance of RSAF being suspended or killed, for example, when watching videos
    • Android's restrictions require RSAF to attempt to show the notification, but the notification channel can be disabled from Android's settings with no negative side effects

Version 2.2

  • Update rclone to 1.68.2 (PR #103)
  • Update gradle dependencies (PR #104)

Version 2.1

  • Allow retries when biometric auth fails the first time, instead of just failing and exiting (PR #98)
  • Add support for reporting filesystem usage (total and available space) to client apps (PR #99)
    • This is configured per-remote and is disabled by default because some remote types (eg. Google Drive) are extremely slow at computing the numbers

Version 2.0

  • Organize source code files into packages (PR #78)
  • Make a proper settings screen for editing remotes instead of just using a dialog box (PR #80)
  • Enable predictive back gestures (PR #82)
  • Make biometric authentication option more robust (PR #83, PR #92)
  • Fix UI jank when rotating the device caused by hiding already-granted permission requests too late (PR #84)
  • Sort remote types by description when adding a new remote to match the rclone CLI (PR #85)
  • Add support for disabling VFS caching per-remote (Issue #79, PR #86)
  • Add progress details to background upload notification (Issue #79, PR #87)
  • Increase chance of the post-upload VFS cache directory cleanup finishing before Android stops RSAF (PR #88)
  • Avoid spawning the background upload monitor service for a split second when closing a read-only file (PR #89)
  • Work around Android limitations to make client apps that rename, copy, or move a newly written file work more reliably (Issue #81, PR #90)
  • Prevent background upload notifications from rapidly appearing and disappearing when writing many small files (PR #91)
  • Fix biometric and device credential authentication on Android <11 (Issue #93, PR #94)
  • Work around an Android bug in Android <11 that causes the edge-to-edge layout to not account for the navigation bar (Issue #93, PR #95)
  • Fix potential issue with crash handler itself crashing when attempting to write a log file (PR #96)
  • Allow importing any file to work around issues where Android reports an unexpected MIME type (Issue #93, PR #97)

Version 1.29

  • Avoid appending .bin file extension for the application/octet-stream MIME type (Issue #73, PR #74)
  • Show notification when files are being uploaded in the background and try to keep process alive (PR #75)
  • Update dependencies (PR #76)
  • Minor code improvements in tests (PR #77)

Version 1.28

  • Update rclone to 1.68.1 (PR #71)

Version 1.27

Version 1.26

  • Update checksum for tensorflow-lite-metadata-0.1.0-rc2.pom dependency (PR #60)
  • Avoid calling Java functions from Go to prevent a panic when built with go 1.22.5 (PR #62)
  • Update all dependencies (PR #63)
  • Use Material 3 switches for switch preferences (PR #64)
  • Make dynamic shortcuts configurable and fix crash when there are too many shortcuts (Issue #65, PR #66)

Version 1.25

  • Update rclone to 1.67.0 (PR #58)

Version 1.24

  • Fix race condition that sometimes causes the OAuth2 authorization dialog to not autofill the token after a successful login (Issue #55, PR #56)

Version 1.23

  • Fix tests after last rclone update (PR #52)
  • Update all dependencies (PR #53)
  • Add support for app shortcuts (PR #54)
    • Long press RSAF's launcher icon to quickly open remotes in DocumentsUI

Version 1.22

  • Update rclone to 1.66.0 (PR #51)

Version 1.21

  • Update rclone to 1.65.2 (PR #48)
  • Update Android gradle plugin to 8.2.2 (PR #49)

Version 1.20

  • Update rclone to 1.65.1 (PR #47)
  • Normalize paths before comparison in isChildDocument() (Issue #44, PR #45)
    • Fixes compatibility with apps that directly manipulate SAF URIs
  • Fix debug logging of projection parameter value (PR #46)

Version 1.18

  • Update rclone to 1.65.0 (PR #41)
  • Update dependencies (PR #42)

Version 1.17

  • Update dependencies (PR #38)
  • Disable arm64 memory tagging extensions support (PR #39)
    • Golang's cgo runtime currently does not support MTE and would cause rclone/RSAF to crash.
    • This workaround only affects people who explicitly enable MTE for user apps on the Pixel 8 series or future ARMv9 devices.

Version 1.16

  • Update rclone to 1.64.2 (PR #37)

Version 1.15

  • Update rclone to 1.64.1 (PR #36)

Version 1.14

  • Update dependencies and target API 34 (PR #34)

Version 1.13

  • Update rclone to 1.64.0 (PR #33)

Version 1.12

  • All external app access to files on hidden remotes is now blocked (Issue #27, PR #31)
  • Add option to lock app settings behind biometric/PIN/password unlock (Issue #27, PR #32)

Version 1.11

  • Add option to request "all files" permission on Android 11+ to allow wrapper remotes, like crypt, to access /sdcard (Issue #28, PR #29)
  • Update all dependencies (PR #30)

Version 1.10

  • Update rclone to 1.63.1 (PR #26)
  • Enable checksum validation for all gradle dependencies (PR #25)

Version 1.9

  • Fix crash when cancelling the Edit Remote dialog on Android <=12 (Issue #16, PR #24)

Version 1.8

  • Fix race condition in rclone initialization that could lead to crashes when accessing files while RSAF's user interface is closed (Issue #22, PR #23)

Version 1.7

  • Update rclone to 1.63.0 (PR #20)
  • Reduce directory cache time from 5 minutes to 5 seconds (PR #21)
    • After a file copy or move, the files in the target directory will no longer appear as missing for 5 minutes. Due to API limitations, there's no way to manually invalidate the cache after a copy/move operation, so a short timeout is used instead.

Version 1.6

  • Fix hang when hiding remotes that use OAuth2 authentication (Issue #16, PR #19)

Version 1.5

Version 1.4

  • Improve UX for resetting to current/default values and add support for revealing passwords in the interactive configuration dialog (Issue #8, PR #14)
  • Add option to show all dialogs at the bottom of the screen (Issue #9, PR #15)

Version 1.3

  • Fix cache directory being set to non-writable /data/local/tmp/ in certain contexts (Issue #11, PR #12)
  • Work around upstream bug where passwords are not obscured in the config file, breaking password-based authentication (eg. smb, sftp) (Issue #7, PR #13)

Version 1.2

  • Update all dependencies (PR #2, PR #5)
  • Fix isChildDocument returning false for nested children, which caused some apps to crash (PR #3)

Version 1.1

  • Add option to open remotes in DocumentsUI (PR #1)

Version 1.0

  • Initial release