com.robotsquid.squidhub 0.5.10 → 0.5.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/Editor/SquidHubUploader.cs +19 -2
- package/README.md +8 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,50 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.12
|
|
4
|
+
|
|
5
|
+
**A manifest change is a new version now — the platform changed underneath this.**
|
|
6
|
+
|
|
7
|
+
Editing `manifest.json` and re-uploading used to report "these exact bytes are
|
|
8
|
+
already published, nothing to upload" and discard the edit. Server migration
|
|
9
|
+
0029 makes version identity `(build_hash, manifest_sha256)`, so a changed
|
|
10
|
+
declaration registers a new version and takes effect.
|
|
11
|
+
|
|
12
|
+
⚠️ **`manifest.json` is still excluded from the build hash and must be** — it
|
|
13
|
+
CONTAINS that hash, so folding it in has no fixed point. A separate digest of
|
|
14
|
+
the manifest file has no such circularity, because a manifest never contains its
|
|
15
|
+
own digest. The bytes are still deduped: two versions differing only in
|
|
16
|
+
declaration share one copy in R2.
|
|
17
|
+
|
|
18
|
+
⚠️ **The 0.5.11 "your manifest was ignored" explanation is GONE**, because it is
|
|
19
|
+
now false. That message fired when the bytes matched; the bytes matching now
|
|
20
|
+
also means the manifest matched. Telling a publisher their edit was discarded at
|
|
21
|
+
the one moment we know it was not is worse than saying nothing.
|
|
22
|
+
|
|
23
|
+
**Requires the api deployed with migration 0029.** Against an older server this
|
|
24
|
+
package still works and a manifest-only change still silently does nothing.
|
|
25
|
+
|
|
26
|
+
## 0.5.11
|
|
27
|
+
|
|
28
|
+
**"Nothing to upload" now says what it did to your manifest.**
|
|
29
|
+
|
|
30
|
+
Editing `manifest.json` and pressing Build and Upload reported *"These exact
|
|
31
|
+
bytes are already published. Nothing to upload."* and stopped — never mentioning
|
|
32
|
+
that the declaration had not been applied. With a manifest editor in the package
|
|
33
|
+
that is a normal thing to do, and the result was unreadable.
|
|
34
|
+
|
|
35
|
+
`manifest.json` is excluded from the build hash — it CONTAINS that hash, so
|
|
36
|
+
including it would have no fixed point — so a build whose only difference is its
|
|
37
|
+
declaration hashes identically and matches a version already registered.
|
|
38
|
+
|
|
39
|
+
⚠️ **It stops at `start`, before a byte moves, which is EARLIER than the
|
|
40
|
+
server's own `manifest-ignored` warning.** That one is raised at `complete`, and
|
|
41
|
+
such a build never gets there, so this message is the only thing that will ever
|
|
42
|
+
say it.
|
|
43
|
+
|
|
44
|
+
The dialog now names the manifest and both ways forward: change a real file and
|
|
45
|
+
rebuild, or set the override in the publisher console — display settings are
|
|
46
|
+
live-tunable there and need no new build at all.
|
|
47
|
+
|
|
3
48
|
## 0.5.10
|
|
4
49
|
|
|
5
50
|
**Fullscreen: the check that makes it actually work.**
|
|
@@ -186,9 +186,26 @@ namespace SquidHub.Editor
|
|
|
186
186
|
if (SquidHubBuildScan.JsonField(startResponse, "alreadyPublished") == "true")
|
|
187
187
|
{
|
|
188
188
|
EditorUtility.ClearProgressBar();
|
|
189
|
+
|
|
190
|
+
// ⚠️ A no-op now means the BYTES AND THE DECLARATION both match.
|
|
191
|
+
// It used to mean only the bytes did, so a changed manifest.json
|
|
192
|
+
// landed here and was discarded — this dialog carried a long
|
|
193
|
+
// explanation of that trap. Migration 0029 made version identity
|
|
194
|
+
// (build_hash, manifest_sha256), so a declaration change
|
|
195
|
+
// registers a new version and never reaches this branch.
|
|
196
|
+
//
|
|
197
|
+
// ⚠️ Do NOT reinstate the old wording. Telling a publisher their
|
|
198
|
+
// manifest was ignored, at the one moment we know it was not, is
|
|
199
|
+
// worse than saying nothing.
|
|
200
|
+
var hash = SquidHubBuildScan.JsonField(startResponse, "buildHash");
|
|
201
|
+
Debug.Log("[SquidHub] " + hash + " is already published — same bytes, same " +
|
|
202
|
+
"manifest. Nothing to upload.");
|
|
203
|
+
|
|
189
204
|
EditorUtility.DisplayDialog("SquidHub",
|
|
190
|
-
"
|
|
191
|
-
"
|
|
205
|
+
"Already published as " + hash + ".\n\n" +
|
|
206
|
+
"Nothing to upload: both the build and its manifest.json match what is " +
|
|
207
|
+
"already registered.",
|
|
208
|
+
"OK");
|
|
192
209
|
yield break;
|
|
193
210
|
}
|
|
194
211
|
|
package/README.md
CHANGED
|
@@ -209,10 +209,14 @@ on your `AudioContext`. It works without you doing anything — but only because
|
|
|
209
209
|
the bridge is injected ahead of the loader, which is why step 2 above is not
|
|
210
210
|
merely tidy. Tick **Sound** in `SquidHub → Game Manifest…` or no button appears.
|
|
211
211
|
|
|
212
|
-
⚠️ **Editing `manifest.json` alone
|
|
213
|
-
build hash, so
|
|
214
|
-
|
|
215
|
-
|
|
212
|
+
⚠️ **Editing `manifest.json` alone registers a new version.** It used not to —
|
|
213
|
+
the manifest is excluded from the build hash, so the build looked identical and
|
|
214
|
+
the edit was discarded. A version is now identified by its bytes *and* its
|
|
215
|
+
declaration, so a manifest-only change ships. The bytes are still deduped: the
|
|
216
|
+
two versions share one copy in R2.
|
|
217
|
+
|
|
218
|
+
To change display on a build that is already live, the publisher console's
|
|
219
|
+
override is still the faster path — it needs no upload at all.
|
|
216
220
|
|
|
217
221
|
## ⚠️ Status
|
|
218
222
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "com.robotsquid.squidhub",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.12",
|
|
4
4
|
"displayName": "SquidHub",
|
|
5
5
|
"description": "Cloud saves, analytics and the coin economy for Unity WebGL games published on SquidHub. Installs the C# wrapper, the .jslib half and the page bridge, and rewrites the exported index.html so it survives the platform's CSP.",
|
|
6
6
|
"unity": "2021.3",
|