dev-stub: zet geen @downloadURL en @updateURL meer in de stub, want @updateURL none geeft een eslint-waarschuwing in Tampermonkey en een lokale stub heeft niets te downloaden
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5.5
parent
6bb6f7d9cb
commit
8125d53ea5
@@ -32,18 +32,13 @@ Drie dingen die aan die stub vasthangen:
|
||||
- **De metadata komt uit de stub, niet uit de required file.** `@match`, `@grant` en `@run-at`
|
||||
moeten er dus in staan; het `==UserScript==`-blok van de file zelf wordt genegeerd. `dev-stub`
|
||||
neemt die velden over uit het echte script, zodat de twee niet uit elkaar lopen.
|
||||
- **`@updateURL` staat op `none`.** Die velden weglaten volstaat niet: Tampermonkey onthoudt de
|
||||
download-URL van de oorspronkelijke installatie apart van het meta-blok, dus een rij die ooit
|
||||
van de raw-URL kwam biedt daarna alsnog een update aan die je stub overschrijft. In
|
||||
`determineMetaURL` gaat `@updateURL` vóór die onthouden URL, en `none` breekt de check af.
|
||||
`@downloadURL` mag daardoor gewoon blijven staan: die wordt nooit meer bereikt, en levert wel
|
||||
het GitHub-icoon op in de overzichtslijst, want de herkomst wordt uit die URL afgeleid.
|
||||
`dev-stub` zet allebei zelf in de stub. Controleren doe je niet in Settings: het veld
|
||||
**Update URL** daar is `downloadURL` onder een misleidend label (`file_url = downloadURL ||
|
||||
fileURL`), en `@updateURL` heeft in dat scherm geen veld. Het toont dus de raw-URL, ook als
|
||||
`none` netjes is overgenomen. Controleer in plaats daarvan het gedrag: klik in de
|
||||
werkbalk-popup op **Check for userscript updates** en er hoort geen enkel dialoogvenster te
|
||||
komen.
|
||||
- **`@downloadURL` en `@updateURL` staan er allebei niet in.** De code komt uit een lokaal
|
||||
bestand, dus er is niets te downloaden of bij te werken. `@updateURL none` is geen
|
||||
oplossing: de editor van Tampermonkey toont dan een eslint-waarschuwing
|
||||
(`use-download-and-update-url`), en zonder `@downloadURL` heeft `@updateURL` ook geen
|
||||
functie. Een rij die ooit van de raw-URL kwam, onthoudt die URL apart van het meta-blok en
|
||||
biedt dan alsnog een update aan die de stub overschrijft: verwijder zo'n rij en maak de stub
|
||||
opnieuw aan via **Create a new script**.
|
||||
- **De stub hoeft niet mee met een `@version`-bump.** Ze staat op een vaste `0.0.0-dev`. Een
|
||||
echt nummer zou daar toch niets zeggen: de code komt bij elke pagina-load van schijf, dus wat
|
||||
er draait is wat er nú in de repo staat. De kolom hoeft enkel `-dev` te tonen. Opnieuw
|
||||
|
||||
+3
-9
@@ -88,19 +88,15 @@ meta() {
|
||||
name="$(meta name | head -1)"
|
||||
namespace="$(meta namespace | head -1)"
|
||||
author="$(meta author | head -1)"
|
||||
downloadurl="$(meta downloadURL | head -1)"
|
||||
|
||||
if [ -z "$name" ]; then
|
||||
echo "dev-stub: @name ontbreekt in $src" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# @updateURL staat op none, want weglaten volstaat niet: Tampermonkey onthoudt de
|
||||
# download-URL van de oorspronkelijke installatie los van het meta-blok, en zou de
|
||||
# stub daarmee bij de eerste update-check overschrijven met de volledige raw-versie.
|
||||
# In determineMetaURL gaat updateURL vóór die onthouden downloadURL en breekt de
|
||||
# waarde none de check af. @downloadURL mag daardoor blijven staan: die wordt nooit
|
||||
# meer bereikt en levert wel de GitHub-herkomst op in de overzichtslijst.
|
||||
# @downloadURL en @updateURL staan er allebei bewust NIET in. @updateURL none is geen
|
||||
# oplossing: Tampermonkey markeert het ontbrekende @downloadURL dan in de editor, en de
|
||||
# stub is lokaal, dus er is niets te downloaden of bij te werken.
|
||||
{
|
||||
echo "// ==UserScript=="
|
||||
printf '// @name %s\n' "$name"
|
||||
@@ -111,8 +107,6 @@ fi
|
||||
printf '// @version 0.0.0-dev\n'
|
||||
printf '// @description Dev-loader. De code staat in de repo, dit bestand wijst er alleen naar.\n'
|
||||
[ -n "$author" ] && printf '// @author %s\n' "$author"
|
||||
[ -n "$downloadurl" ] && printf '// @%-12s %s\n' downloadURL "$downloadurl"
|
||||
printf '// @%-12s %s\n' updateURL none
|
||||
for key in match include exclude; do
|
||||
meta "$key" | while IFS= read -r value; do
|
||||
[ -n "$value" ] && printf '// @%-12s %s\n' "$key" "$value"
|
||||
|
||||
Reference in New Issue
Block a user