-
-
Notifications
You must be signed in to change notification settings - Fork 91
Comparing changes
Open a pull request
base repository: kdrag0n/fastboot.js
base: master
head repository: GrapheneOS/fastboot.js
compare: master
- 14 commits
- 20 files changed
- 5 contributors
Commits on Nov 1, 2022
-
safely flash bootloader firmware to both slots
Information from Daniel Micay <danielmicay@gmail.com>: SoC firmware anti-rollback protection is being actively used for 6th and 7th generation Pixels. The code implementing this was deployed as part of Android 13 resulting in an initial rollback version increase. Consider the situation where a device shipped with v5 firmware and was upgraded to v7 by the user. It has v7 on the current slot and v5 on the alternate slot. It has been successfully booted with v7 firmware so the OS has incremented the rollback version to v7. If the user unlocks and unsuccessfully flashes new firmware or a new OS, the device rolls back to the other slot, bricking itself. The safest solution to this problem is flashing the unused slot with the new firmware, making it active, booting it and then repeating it. This makes sure that the new firmware is flashed to both slots and verifies that it boots up successfully before proceeding with flashing the OS. It makes sense to do this for ALL devices because all devices can deploy similar anti-rollback protection and this also improves overall safety of installation. Anti-rollback protection isn't the only reason that the inactive slot could have non-booting firmware. Something could have gone wrong previously so the user only has 1 booting firmware slot remaining. This new approach makes fastboot.js much safer than Google's approach to flashing. GrapheneOS has adopted this for both fastboot.js and also the CLI flashing script in the factory images zip since shortly after the release of Android 13. It's very well tested now and we've avoided the issues with bricked devices people are experiencing with flashing the stock OS.
Configuration menu - View commit details
-
Copy full SHA for f270be4 - Browse repository at this point
Copy the full SHA f270be4View commit details
Commits on Dec 15, 2022
-
use Blob instead of ArrayBuffer for raw to sparse conversion
Raw images can be quite large, and it might not be possible to convert the images in RAM, on low memory devices, as raw to sparse conversion can consume memory more than twice the size of the image being converted. This commit also reduces fastboot.js peak memory usage during flashing.
Configuration menu - View commit details
-
Copy full SHA for e7a9403 - Browse repository at this point
Copy the full SHA e7a9403View commit details
Commits on Apr 22, 2023
-
Remove better-docs and jsdoc dependencies, which are used for building documentation. The documentation hasn't been updated by upstream and script to build it is broken anyway. I think it is better to just drop support for building documentation than maintain it downstream. This commit also fixes warnings shown by package manager when installing dependencies. Explicitly add dependencies required by @rollup/plugin-typescript, which were previously installed implicitly: - tslib 2.5.0 - typescript 5.0.4 update rollup to 3.20.5 and its plugins: - update @rollup/plugin-node-resolve to 15.0.2 - update @rollup/plugin-typescript to 11.1.0 - replace deprecated rollup-plugin-terser with @rollup/plugin-terser 0.4.1 update other dependencies: - @types/w3c-web-usb to 1.0.6 - eslint to 8.38.0 - eslint-config-prettier to 8.8.0 - prettier to 2.8.7 Also, run 'yarn upgrade` to upgrade dependencies in yarn.lock to their latest versions, as per ranges specified in package.json.
Configuration menu - View commit details
-
Copy full SHA for b21126d - Browse repository at this point
Copy the full SHA b21126dView commit details -
Also add support for updating files in dist/vendor during build step.
Configuration menu - View commit details
-
Copy full SHA for 2ca0b56 - Browse repository at this point
Copy the full SHA 2ca0b56View commit details -
Also add support for updating Pako files in dist/vendor during build step.
Configuration menu - View commit details
-
Copy full SHA for 5a4e929 - Browse repository at this point
Copy the full SHA 5a4e929View commit details -
fix: change error type thrown by waitForConnect to unknown
This fixes "Argument of type 'unknown' is not assignable to parameter of type 'Error'" warning shown during compilation. The error type may not necessarily be of type Error, the caller should narrow the error down to specific types.
Configuration menu - View commit details
-
Copy full SHA for 1991358 - Browse repository at this point
Copy the full SHA 1991358View commit details -
factory: directly extract images from nested images zip
The nested images zip is uncompressed and can be read from directly. This results in reduced storage usage (as the nested images zip doesn't need to extracted into a blob first) and slightly faster flashing times on low end and mobile devices (as there is no "unpack images" step).
Configuration menu - View commit details
-
Copy full SHA for 7665dd0 - Browse repository at this point
Copy the full SHA 7665dd0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 066d736 - Browse repository at this point
Copy the full SHA 066d736View commit details
Commits on Jul 29, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 7de86ba - Browse repository at this point
Copy the full SHA 7de86baView commit details -
Configuration menu - View commit details
-
Copy full SHA for e2dd436 - Browse repository at this point
Copy the full SHA e2dd436View commit details -
Configuration menu - View commit details
-
Copy full SHA for cf95cc0 - Browse repository at this point
Copy the full SHA cf95cc0View commit details -
support flashing optimized factory images
See the corresponding fastboot commit for more info.
Configuration menu - View commit details
-
Copy full SHA for a9ca7a3 - Browse repository at this point
Copy the full SHA a9ca7a3View commit details -
Configuration menu - View commit details
-
Copy full SHA for f7069c8 - Browse repository at this point
Copy the full SHA f7069c8View commit details
Commits on Aug 6, 2024
-
factory-optimized: adjust FlashScript parser to changed entry paths
Zip entries are now contained in an outer directory.
Configuration menu - View commit details
-
Copy full SHA for ffe7e27 - Browse repository at this point
Copy the full SHA ffe7e27View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...master