reimplement android mkbootfs with pure java, features include:
unpack:
- using commons.compress
- save cpio entry info on unpacking, and reload it on packing, this is
called 'exact-matching'
pack: using new code with the help of commons.compress
- for newly added ramdisk file, its file mode falls back to
'pattern-matching'
- for newly added ramdisk file that doesn't match any pattern, it will
use default file mode, 'default'
integration test:
- enable strict cpio checking
update gradle to 5.6
dtbo parser: force use of python 2.7
add android libsparse utils
add sparse image parser: {system|vendor|product}.img
travis: upgrade to bionic(18.04 LTS)
details
- code refine
"In Kotlin 1.3, it is now possible to capture the when subject into variable"
- fix gradle version checking bug: now we can handle versions like "5.4-rc-1" and "5.4"
- removed unwanted import of "UnImplNode"
- add Struct3 doc