Releases: forkphorus/sb-downloader
4.0.1
4.0.0:
- For pre-compressed sb2 and sb3 projects, missing assets will be automatically downloaded (fixes 1032296687)
- For pre-compressed sb2 and sb3 projects, any directories in the zip will be flattened so project.json and any assets are always at the root
- In Node.js, SBDL will use the user-agent
SBDL/1.0 (+https://www.npmjs.com/package/@turbowarp/sbdl)
for all requests instead of the default node-fetch user-agent - We are considering this a semver-major change because downloadProjectFromBuffer with a pre-compressed project would previously never do any network requests but may now make requests
4.0.1:
- Fixed 4.0.0 regression where project.json was being re-stringified in pre-compressed projects even when processJSON made no changes to the JSON when the date option is used (or some other conditions). This could cause interesting things like JSON comments (which Scratch 2 supports) to be lost.
- Fixed 4.0.0 oversight where when loading a pre-compressed project with an empty subdirectory, the subdirectory would not be removed reliably
3.0.0
In August 2023, Scratch modified the project API so downloading the legacy version is now just the same as downloading the latest version. As such we have removed all the legacy project downloading code from sb-downloader. This is a semver-major breaking change, so we have increased the version number accordingly.
2.3.3
- 2.3.2: Modify project metadata downloading in browsers to possibly avoid some overzealous network filters (replaced /proxy with /api)
- 2.3.3: Error in publishing process resulted in the 2.3.2 release missing important files; it has now been corrected
2.3.1
Unshared projects are no longer visible due to Scratch API changes.
This update can't fix that, but it does implement some changes related to it:
- Fixed downloading legacy version of projects
- Removed or fixed broken tests
And one unrelated change:
- Slightly optimize JSON parsing for some projects
2.3.0
Upon testing overwriteJSON and processJSON in a real project, I decided to replace overwriteJSON with processJSON returning an object.
Technically this is a breaking change, but no one should be using that API yet anyways.
See 2.2.0 changelog for the interesting stuff: https://github.com/forkphorus/sb-downloader/releases/tag/v2.2.0
2.2.0
- Fixed handling non-standard JSON found in some Scratch 2 projects
- Fix gif images in Scratch 2 projects
- Fix date option not respected for pre-compressed projects (we will now re-compress the project if necessary)
- New options: processJSON,
overwriteJSON(overwriteJSON removed in 2.3.0) - Standalone version now re-exports JSZip and ExtendedJSON on SBDL
2.1.0
- Added simple CLI
- Add progress for metadata fetching
- Implemented granular progress for project data fetching
- Attempt to detect title for projects loaded from a URL
2.0.1
- Make the npm module actually work
2.0.0
After more than three years, we rewrote very large portions of .sb downloader and have a brand-new API that no longer causes physical pain to use.
Read the API docs: https://github.com/forkphorus/sb-downloader#api