2.8.7.0
- Initial ground work for software drawn keyboard (_that)
- Fix handling of wiping internal storage on datamedia devices (xuefer)
- Allow DataManager to set and read values from the system properties (xuefer)
- Fix crash when taking screenshots on arm64 devices (xuefer)
- Fix error message after an ORS script completes (Dees_Troy)
- Fix crashes / error when creating encrypted backups (_that, Dees_Troy)
- Add system read only option - more details below (Dees_Troy)
- Add resize2fs and GUI option to run resize2fs (Dees_Troy)
- Fix crash loop caused by empty lines in AOSP recovery command file (_that)
- Prevent duplicate page overlays such as multiple lock screens (mdmower)
System read only option: Devices that ship with 5.0 and higher as their initial OS are using block level OTA updates. With this style of OTA update, the update script checks to see if the system partition has ever been mounted read/write. Further, the script also usually runs an SHA sum of the entire system partition to detect if any changes have been made. If any changes have been made, the OTA update will refuse to install. Since not all OEMs and devices have factory images available, we have created a new feature in TWRP that detects if the system partition has ever been mounted read/write. If not, you will be prompted asking if you want TWRP to mount system as read/write. If you choose not to allow TWRP to mount as read/write, TWRP won't prompt to install SuperSU and TWRP won't try to patch the stock ROM to prevent TWRP from being replaced by stock recovery. The goal of this option is to hopefully allow the user to make a raw system image backup that they can use to get back to a state where they can take OTA updates again.
resize2fs feature: On some devices like the Nexus 6, the factory images include a userdata image that is the proper size only for the 32GB units. If you flash the factory image to a 64GB Nexus 6, the data partition will appear as if it only has the free space of a 32GB device. Using the resize2fs option, TWRP can resize your data partition to take up the full space available. The resize2fs may also be useful to resize system partitions on devices where custom ROM system images don't take up the full partition space. Lastly, resize2fs may be useful in some cases to reserve the proper space at the end of a data partition for a full disk encryption key, should your partition be formatted incorrectly for some reason.
This new version also marks our first set of full builds using our new jenkins build server. You can track the progress of builds at
https://jenkins.twrp.me and we have taken additional steps to make it easier for device maintainers to step up and submit patches to our gerrit server at
https://gerrit.twrp.me to help us keep devices up to date and working.
2.8.6.0
- Allow mulitple overlays for popup boxes (Dees_Troy)
- Add pattern style password entry for decrypt (Tassadar)
- Keyboard improvements (_that)
- Update AOSP base to 5.1 (Dees_Troy)
- Reduce theme count to 5 and rely on scaling (Dees_Troy)
- Various scaling improvements (Dees_Troy)
- Improved handling of resources in the GUI (_that)
- Make scroll bar size proportional to list size (_that)
- Allow scoll lists to render without a header (_that)
- Make console scroll per pixel with kinetic scrolling (_that)
- Support styles in XML to reduce XML size and improve consistentcy (Dees_Troy)
- Various other fixes and improvements (mdmower, bigbiff, codelover, etc)
2.8.5.0
- Scale the GUI - TWRP can read the theme's resolution and scale it up or down to fit the theme to your screen's resolution
- Improve thread handling and move input handling into the main rendering thread to improve stability
- Make MTP work even if unplugged and plugged back in
- Unify scrollable list code and make kinetic scrolling feel more natural
- Fix handling of mapped zip files for OTA updates (CM12 updater)
- USB keyboards should now work on all devices that support USB host mode via a USB OTG cable
- Add Cancel Backup capability
- Other small fixes and improvements
2.8.4.0
- MTP fixes and improvements - you can now copy zips to the root of storage - thanks to _that
- Add flashing of boot and recovery images via the TWRP GUI (Find the Images button on the Install page)
- Fix some MTP related crashes and bugs
- Eliminate TWRP toggling USB IDs during boot if MTP is enabled
- Fix various adb sideload issues
- Improve threading of actions
- Eliminate separate thread for screen timeout
- Update libblkid to 2.25.0
- Use power button as back button on watch themes for easier navigation
- Add mutex locking to data manager
- Improve custom theme handling on encrypted devices
- Allow the stock theme to be offset by build flags so we can center a lower res theme on a higher res screen especially for watches with round screens
2.8.3.0
- MTP fixes and improvements - you can now copy zips to the root of storage - thanks to _that
- MTP will now tell the host PC that storage is removed instead of disabling MTP completely
- MTP will now report the correct max file size based on the file system in use to the host PC (may fix transfer of large files)
- Update and improve fix permissions and make fixing contexts optional
- Update SuperSU in TWRP to 2.40 and update install process
- Make TWRP work properly on AArch64 (Nexus 9 is now built in true 64-bit binaries and libraries)
- Attempt to set correct permissions and contexts on all files placed in storage so backups will show in Android
- Fix kernel panic during MTP start on some devices
- Support unicode fonts on devices with True Type Font support
- Fix slider value not showing sometimes (vibration settings page)
- Toggle MTP off during adb sideload to set correct USB IDs
- Reduce library requirements for 5.0 L decrypt
- Other minor fixes and improvements
2.8.1.0
- MTP fixes and improvements - you can now copy zips to the root of storage - thanks to _that
- TrueType Font support - optional as it takes up a decent amount of space so may not be available on all devices - thanks to Tassadar
- Temperature support - thanks to bigbiff
- Various other bugfixes and tweaks
2.8.0.1
Fix exfat external sdcard backup
2.8.0.0
- Add MTP support to recovery thanks mostly to bigbiff with a little help from Dees_Troy
- Add command line capabilities - you can now execute various TWRP features via adb instead of the touchscreen
- Add support for color in the console and give error, warning, and highlight lines different colors
- Track backup and restore progress based on file sizes to provide a much more accurate indication of progress
- Improve handling of /misc thanks to mdmower
- Improve setting of time on Qualcomm devices thanks to [NUT]
- Allow using images on slidervalue GUI objects thanks to Tassadar
- Allow using variables and addition and subtraction in variables for easier theming
- Add support for 1440x2560, 280x280, and 320x320 resolutions and update 240x240
- Allow ui.xml file to include additional xml files to help break up the theme and make TWRP easier to maintain
- Other minor fixes and improvements
2.7.2.2
- fix backup to exfat
2.7.2.1
- fix exfat
2.7.2.0
All thanks to
@Dees_Troy
- fix crash in setting contexts on datamedia
- fix restoring data partition as f2fs after formatting f2fs
- mount data after being formatted
2.7.1.0
- Add GUI option to change or repair file systems on individual partitions. The change is destructive so backup your data including internal sdcard first. This option should make it a little easier to migrate a device from ext4 -> f2fs, for instance. If a developer has added f2fs support for your device and we don't have it in TWRP, please contact me via PM to arrange for it to be added.
- Various bugfixes to backup and restore
- Improvements to USB storage handling
- Added a class to search for files to make finding the correct brightness file automatic in most cases
- Various other bugfixes and tweaks
2.7.0.1
-Add F2FS
-Fix splitting of /system during certain conditions
2.7.0.0
-Faster graphics rendering by disabling alpha blending on fully opaque objects thanks to Tassadar
-Allow sideloading from /tmp on encrypted devices
-Check for a crypto footer before asking for a password to prevent user confusion
-Additional checks for validity to auto generated backup names
-Text wrap in the console output
-Proper caps lock support in the keyboard
-Mouse support via USB OTG for devices with a broken digitizer
-Improve scanning of storage locations for OpenRecoveryScript
-Haptic feedback for buttons, keyboard, and vibration at the end of longer running actions thanks to Samer Diab
-Fixed ext4 wiping when no selinux contexts are defined for that partition (e.g. sd-ext)
-Update SuperSU to 1.93 and improve installation process
-Added selinux contexts restoration to fix permissions
-Load RTC offset on Qualcomm devices to fix the date/time in recovery
-USB Mass Storage fixes Add SELinux support checking
-Add Disk Usage class to better handle excluded folders (e.g. Google Music cache)
-Add 4.4 decrypt support
-Add some toolbox utilities to TWRP (namely to support SELinux functions not supported in busybox)
-Various SELinux fixes and bug fixes
Note: 2.7 marks the first time that we are dropping support for older devices. We are doing this because of the SELinux support needed to install 4.4 Kit Kat ROMs. The non-TWRP parts of the recovery image have to be built in at least a 4.1 tree and the kernel that is included in the recovery image has to support writing SELinux contexts. We don't own most of the devices that we support so we depend on outside testers and developers to help us update devices. In many cases we can't find someone readily. Come to #twrp on Freenode if you want to help bring your device up to date. You can tell right away if your device will support 4.4 ROMs in 2.7. Boot TWRP and press the console button (the square-ish button either in the bottom middle or upper right) to view the console output. If it doesn't say "Full SELinux support" in the console, then your device still needs some work. Help us help you.
2.6.3.1
Add SELINUX Kernel and SELINUX improvements for backing up and restoring
2.6.3.0
Proper backup and restore of SELinux contexts (thanks to Tassadar)
Pull in some ROM information for backup name generation
Merge all recent patches from AOSP bringing TWRP up to date with Android 4.3
Add 1200x1920 theme (thanks to Tassadar)
A few other fixes and tweaks
Change to GPL exfat kernel module to work around exfat-fuse bugs
2.6.1.0
Initial SELinux support (only a few devices, need testers so come by IRC if your device doesn't have it and needs it)
Initial support for f2fs file system formatting (Moto X)
Update SuperSU install for 4.3 ROMs
Fixed a permissions bug on files created during backup
Fixed a bug that caused TWRP to not wait for compressed backups to finish causing 0 byte files and md5sums to not match
Fixed decryption of encrypted data so that both TouchWiz and AOSP decryption are possible
Ignore lost+found folder during backup and size calculations
Various other minor bug fixes and tweaks
2.6.0.3
Reverted back to stock kernel with optimizations instead of CM kernel to fix boot times
2.6.0.1
Fix Data being listed twice in advanced wipe
2.6.0.0
Special Note: If you are running a custom theme, you will likely need to remove that theme before updating to 2.6.0.0 as your custom theme will likely not have some of the new changes visible (e.g. you won't be able to encrypt a backup)!
Can encrypt a backup to prevent theft of private data from your backup files
Updated graphics / icon courtesy of shift
Updated exFAT to latest commits
Fixed a problem with Samsung TouchWiz decryption
Update SuperSU binary
Fixed saving of backup partitions list
Fixed saving of last used zip install folder
Fixed backup of datadata on devices that use a separate partition for datadata
Fixed some issues with the advanced wipe list (android_secure, can now wipe internal storage on data/media deivces and wipe data on the advanced list no longer formats the entire data partition)
Fixed some problems with partitioning a SD card
Various other bug fixes and tweaks
Notes about encrypted backups:
Why encrypt your backups? -- Most people store their backups on the device. Any app that has permission to access storage could potentially read your backup files and try to harvest your data. Encrypted backups also provide an added layer of security if you move your backups to other storage devices or to the cloud. The encryption that we're using is probably not strong enough for enterprise level security, but should be strong enough to make it significantly difficult to get to your data.
Encryption is using OpenAES which uses AES 128-bit cbc encryption. If you happen to use a longer password (over 16 characters) then the encryption strength improves to 192 or 256 bits. Do not forget your password. If you forget your password you will be unable to restore your backup. We don't encrypt the entire backup. Encryption is very CPU intensive and can be fairly slow even when we spread the workload over multiple cores even on the latest high-end devices. To ensure that encrypted backups don't take forever, we don't encrypt any other partitions besides /data and in /data we don't encrypt /data/app (or other app related directories where apks are stored) and we don't encrypt dalvik cache.
2.5.0.1
Fix encryption
2.5.0.0
Added scrollable partition lists for mount, backup, restore, wipe, and storage selection
Add new SliderValue GUI element for selecting brightness and screen timeout (thanks to Tassadar)
Re-work AOSP and TWRP code to improve license compatibility between GPL and Apache
Fixed a problem with directory permissions on split archive backups
Fixed a problem with md5 verification of backups
Added a search function to libtar (thanks to kokotas)
Improve handling of XML errors (fix permissions)
Fixed handling of subpartitions
Improvements to recovery.fstab flags
Fixed a problem with decryption not being able to locate the decryption key in some situations
2.4.4.0
Added another libtar hardlink workaround to fix restore of some backups (usually related to Ubuntu Touch)
More fixes for the file selector
Switched from using busybox md5sum to a direct C function call
Fixed capturing the exit status of tar based backups/restore - TWRP will display that there was an error if there was one again
Update exFAT to latest commits
Added a build flag to disable using the ioctl for screen blanking
2.4.3.0
Fixed 2 bugs related to restore, one dealing with mknod failures (by bigbiff) and one dealing with restoring hardlinks (by Dees_Troy)
NOTE: If your backups weren't restoring correctly in earlier 2.4.x versions they should restore correctly now. Hopefully you didn't delete those backups. If you're still having problems, run the restore, go to advanced and copy log, then give us the log. Complaints without logs will be rightfully ignored.
Added a scroll bar to file selectors and listboxes courtesy of Tassadar
Added libblkid for more accurate detection of file systems and can now detect exFAT properly thanks to bigbiff
Added a screen dim effect 2 seconds before screen off on some devices
Finally fixed file selector crash (one of the joys of working with multi-threaded software)
Fixed loading of screen timeout setting during startup
Improvements and bugfixes to screen timeout code
Fix Military Time setting persisting
2.4.2.0
Add screen timeout - screen will turn off automatically after 60 seconds, saves battery and prevents screen burn-in especially on AMOLED devices
Add a brightness setting (requires device specific setup and only some devices have been added)
Add a root checker and offer to install SuperSU if the device isn't already rooted
Add a write buffer to libtar backups, significant improvements to speeds when backing up to exFAT target, minor improvements for other file systems
Check and offer to fix root permissions if broken
Add an option for a 24 hour clock display instead of AM/PM (aka military time)
Move stock recovery reflash check to occur during the reboot cycle
Add support for some MTK6xxx devices
Change libtar to vfork to help prevent memory problems
Add a "clicked" effect to most buttons, file selector, and listbox
Improve timezone listbox to be more like file selector (per pixel kinetic scrolling, etc)
Remove some no longer used settings (Forced MD5 sum on zips, size checking on image backups)
Other minor bugfixes and improvements
2.4.1.0
Fixed detection of exfat and vfat
Fixed vfat formatting past 2 GB
2.4.0.0
Reverted back to kernel drivers for performance on EXFAT.