openvibers/openvibe.meme Commits

openvibe-shared v4.186.0 (was v4.183.0) (#149)

OP OpenVibers committed 3 days ago · 8cba047328 · 6 files, +11 −11

* openvibe-shared v4.186.0 (was v4.183.0)

Opened by scripts/pin-bump.js in OpenVibers/OpenVibe.Shared after the v4.186.0 release.

* Fix the openvibe-shared v4.186.0 red checks

openvibe-shared 4.184.0 puts the navbar's links in the first HTML (frame.serverNav)
instead of a <noscript> nav, so the no-JavaScript checks assert the nav that is really
served; the home's size budgets are raised to the sizes this PR measured.

Changes

ddiff --git a/README.md b/README.md
iindex 3a60ddf..76b00dd 100644
---- a/README.md
++++ b/README.md
@@@ -391,6 +391,6 @@ AGPL-3.0-only. See [LICENSE](LICENSE).
<!-- versions:start -->
- openvibe-contracts: v0.384.0
- openvibe-sdk: v0.125.0
--- openvibe-shared: v4.183.0
++- openvibe-shared: v4.186.0
- openvibe-publishing: v1.7.0
<!-- versions:end -->
ddiff --git a/STATUS.json b/STATUS.json
iindex 5db61e1..679a65d 100644
---- a/STATUS.json
++++ b/STATUS.json
@@@ -10,11 +10,11 @@
"domain": "openvibe.meme",
"contracts": "openvibe-contracts v0.384.0",
"sdk": "openvibe-sdk v0.125.0",
-- "shared": "openvibe-shared v4.183.0",
++ "shared": "openvibe-shared v4.186.0",
"packages": [
"openvibe-contracts v0.384.0",
"openvibe-sdk v0.125.0",
-- "openvibe-shared v4.179.0"
++ "openvibe-shared v4.186.0"
],
"summary": "OpenVibe.Meme is the open meme encyclopedia, rebuilt with AI. Internet entries carry an origin citation, spread points, variations, Media examples, meaning, L1 labels, related memes and a moderated revision history; OpenVibe's own running jokes keep the original importer. The importer reads only public Chat and Live APIs and proposes a candidate when a recurring phrase appears in at least two uses on two different days; the candidate is born hidden with a verbatim citation for every use and stays hidden until a staff person publishes it. Every citation is re-verified daily, a 404 marks it gone and an entry whose origin is gone is hidden. People vote once a week for meme of the week, and a caption is plain text over a template, never a rendered image. Trends come from Reddit's official API (no scraping), measured by score samples and perceptual hashes. Every public entry is one Search Fabric document queued in the service's outbox. Deep dives gather sources and fail unless every claim is cited. The generator renders real PNGs from the template's own layout and stores them in Media.",
"works": [
ddiff --git a/package-lock.json b/package-lock.json
iindex 2187f84..fc26d57 100644
---- a/package-lock.json
++++ b/package-lock.json
@@@ -19,7 +19,7 @@
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.384.0",
"openvibe-publishing": "https://codeload.github.com/OpenVibers/OpenVibe.Publishing/tar.gz/refs/tags/v1.7.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.125.0",
-- "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.183.0",
++ "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.186.0",
"pg": "^8.23.0",
"sharp": "^0.33.5"
},
@@@ -1694,9 +1694,9 @@
}
},
"node_modules/openvibe-shared": {
-- "version": "4.183.0",
-- "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.183.0",
-- "integrity": "sha512-vp9gg++Dhyj3h0cwvBjujM6dSFYoeXdh1UXdZ6OXP/NjG672Fs7uRANV4MjT467JtFDN7r7qLI3OJAwGQxOuQw==",
++ "version": "4.186.0",
++ "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.186.0",
++ "integrity": "sha512-wD4net+UjO0a6OG73W+RR1z5MIWtPgj407xLEWphiVWgLTQ4V1r76+DtLOfSf6RfEda/ALizRu1zmxbvuGGZOw==",
"license": "MIT",
"dependencies": {
"jsonwebtoken": "^9.0.0",
ddiff --git a/package.json b/package.json
iindex 6f7bb64..9dd75a8 100644
---- a/package.json
++++ b/package.json
@@@ -30,7 +30,7 @@
"openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.384.0",
"openvibe-publishing": "https://codeload.github.com/OpenVibers/OpenVibe.Publishing/tar.gz/refs/tags/v1.7.0",
"openvibe-sdk": "https://codeload.github.com/OpenVibers/OpenVibe.SDK/tar.gz/refs/tags/v0.125.0",
-- "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.183.0",
++ "openvibe-shared": "https://codeload.github.com/OpenVibers/OpenVibe.Shared/tar.gz/refs/tags/v4.186.0",
"pg": "^8.23.0",
"sharp": "^0.33.5"
},
ddiff --git a/test/pages.test.js b/test/pages.test.js
iindex b319b52..6cb8c8b 100644
---- a/test/pages.test.js
++++ b/test/pages.test.js
@@@ -47,7 +47,7 @@ function jsonLd(html) {
assert.strictEqual(r.status, 200, r.text);
assert.strictEqual(r.headers.get('cache-control'), 'public, max-age=60');
assert.strictEqual(r.headers.get('vary'), 'Cookie');
-- for (const marker of ['id="mm-home"', 'id="mm-trending"', 'id="mm-week-teaser"', 'class="sc-room-scenes"', '<noscript><nav', '<footer id="ov-footer"', '<main id="main"', 'Cat typing', '/browse', '/make']) assert.ok(r.text.includes(marker), marker);
++ for (const marker of ['id="mm-home"', 'id="mm-trending"', 'id="mm-week-teaser"', 'class="sc-room-scenes"', '<div id="navbar-mount"><nav', '<footer id="ov-footer"', '<main id="main"', 'Cat typing', '/browse', '/make']) assert.ok(r.text.includes(marker), marker);
const types = jsonLd(r.text).map((x) => x['@type']);
assert.ok(types.includes('WebSite'), types.join(','));
assert.ok(types.includes('WebApplication'), types.join(','));
ddiff --git a/test/sso.test.js b/test/sso.test.js
iindex 10b8f48..ac528ed 100644
---- a/test/sso.test.js
++++ b/test/sso.test.js
@@@ -128,11 +128,11 @@ const cookieJar = (res) => res.headers.getSetCookie().map((c) => c.split(';')[0]
assert.notStrictEqual(proxied.status, 200, 'a proxied request is not loopback');
});
-- await check('public pages are complete without JavaScript', async () => {
++ await check('public pages are complete without JavaScript (server-rendered nav, SSR footer)', async () => {
for (const p of ['/', '/week', '/make', '/developers']) {
const r = await t.get(p);
assert.strictEqual(r.status, 200, p);
-- assert.match(r.text, /<noscript><nav/);
++ assert.match(r.text, /<div id="navbar-mount"><nav class="openvibe-navbar"[^>]*data-ov-server-nav="true"/, `${p}: the server-rendered navbar is in the first HTML`);
assert.match(r.text, /<footer id="ov-footer"/);
assert.match(r.text, /<main id="main"/);
}