File size support
When downloading the firmware, SamFetch now sends the max file size, so when downloading the firmware with download clients or with browser, it will now display a progress bar and a percent.
Old
New
Resuming download
Now pausing and resuming download won't re-download the same file again from zero.
Internal
The Keyholder class has replaced with new Session class along with read-only properties for values that should not be changed.
CSC list is now served in a Python file instead of a separate JSON file.
All endpoints are marked as asynchronous.
Reading the incoming data from Kies servers has moved into a KiesData class, now it is more easy to get a value from data.
Instead of writing like this: data["FUSMsg"]["FUSBody"]["Put"]["DEVICE_MODEL_DISPLAYNAME"]["Data"]
It can be typed as: KiesData.body["DEVICE_MODEL_DISPLAYNAME"]
/api/binary endpoint now handles Range headers (both start-end) and returns Content-Range header.
This PR adds some notable changes.
End-user
File size support When downloading the firmware, SamFetch now sends the max file size, so when downloading the firmware with download clients or with browser, it will now display a progress bar and a percent.
Resuming download Now pausing and resuming download won't re-download the same file again from zero.
Internal
The
Keyholder
class has replaced with newSession
class along with read-only properties for values that should not be changed.CSC list is now served in a Python file instead of a separate JSON file.
All endpoints are marked as
asynchronous
.Reading the incoming data from Kies servers has moved into a
KiesData
class, now it is more easy to get a value from data. Instead of writing like this:data["FUSMsg"]["FUSBody"]["Put"]["DEVICE_MODEL_DISPLAYNAME"]["Data"]
It can be typed as:KiesData.body["DEVICE_MODEL_DISPLAYNAME"]
/api/binary
endpoint now handlesRange
headers (both start-end) and returnsContent-Range
header.Closes #5 and #4