[Site Docusaurus Gladys] Build fehlt seit den letzten Airtable-Änderungen

Hallo @cicoub13!

Ich habe ein kleines Problem. Erinnerst du dich, du hattest das Airtable-Import-Skript auf Englisch entwickelt (das übrigens super funktioniert!), aber das Problem ist, dass ich seitdem, wenn ich versuche, die neuen Geräte, die auf Airtable hinzugefügt wurden, lokal zu importieren, Docusaurus nicht mehr starten kann ^^

Ich mache:

node scripts/load_integrations.js

Es werden 56 neue Dateien (Bilder, JSON, usw.) hinzugefügt, und alles scheint zu funktionieren:

Das Problem ist, dass, wenn ich die Seite neu starte, die Seite „Integrationen“ nicht mehr funktioniert (sie braucht stundenlang zum Laden – ohne Erfolg), und ein Build funktioniert nicht.

Ich bin mir nicht sicher, ob das unser Fehler ist, ich habe das Gefühl, dass es von Docusaurus kommen könnte, das Probleme hat, wenn man ihm zu viele Bilder zum Verarbeiten gibt, und dass wir eine „Grenze“ überschritten haben.

Oder aber, es ist unser Fehler und es gibt ein einfaches Problem (wie ein fehlendes Bild, so etwas in der Art…), aber ich würde mich wundern, das würde einen klaren Fehler verursachen.

Hey @cicoub13, ich habe das Problem alleine gelöst :smiley:

Edit: Nein, das Problem ist nicht gelöst. Endloser Build auf Github Actions.

Es gab zwei Probleme:

Durch die Behebung beider Probleme scheine ich die Website anzeigen zu können und die Builds funktionieren!

Ich habe zu früh gesprochen!

Offensichtlich ist es immer noch kaputt, der Build läuft endlos auf Github Actions…

siehe

https://github.com/GladysAssistant/v4-website/runs/2054279591?check_suite_focus=true

Der Fehler bei Github Actions:

2021-03-08T06:58:45.3525026Z ##[group]Run ./build.sh
2021-03-08T06:58:45.3525558Z [36;1m./build.sh[0m
2021-03-08T06:58:45.3571277Z shell: /bin/bash -e {0}
2021-03-08T06:58:45.3571855Z ##[endgroup]
2021-03-08T06:58:46.6430726Z 
2021-03-08T06:58:46.6433031Z > gladys-4-docusaurus@1.0.0 postinstall /home/runner/work/v4-website/v4-website
2021-03-08T06:58:46.6434443Z > cd en && npm install && cd ../fr && npm install
2021-03-08T06:58:46.6435062Z 
2021-03-08T06:58:56.4145957Z npm WARN @docusaurus/plugin-content-blog@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4235669Z npm WARN @docusaurus/plugin-content-docs@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4313076Z npm WARN @docusaurus/plugin-content-pages@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4391487Z npm WARN @docusaurus/plugin-debug@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4478723Z npm WARN @docusaurus/plugin-google-analytics@2.0.0-alpha.37 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4572167Z npm WARN @docusaurus/plugin-google-gtag@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4658446Z npm WARN @docusaurus/plugin-ideal-image@2.0.0-alpha.39 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4747398Z npm WARN @docusaurus/plugin-sitemap@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4829614Z npm WARN @docusaurus/preset-classic@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4909901Z npm WARN @docusaurus/plugin-google-analytics@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.4991920Z npm WARN @docusaurus/plugin-sitemap@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.5076229Z npm WARN @docusaurus/theme-classic@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.5151365Z npm WARN @docusaurus/theme-search-algolia@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.5249191Z npm WARN @endiliey/lqip-loader@3.0.2 requires a peer of file-loader@* but none is installed. You must install peer dependencies yourself.
2021-03-08T06:58:56.5371780Z npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.3 (node_modules/fsevents):
2021-03-08T06:58:56.5376096Z npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
2021-03-08T06:58:56.5470535Z npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules/watchpack-chokidar2/node_modules/fsevents):
2021-03-08T06:58:56.5474196Z npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
2021-03-08T06:58:56.5610043Z npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.13 (node_modules/webpack-dev-server/node_modules/fsevents):
2021-03-08T06:58:56.5612373Z npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.13: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
2021-03-08T06:58:56.5613788Z 
2021-03-08T06:58:56.5639583Z audited 1716 packages in 9.485s
2021-03-08T06:58:57.5825084Z 
2021-03-08T06:58:57.5826242Z 124 packages are looking for funding
2021-03-08T06:58:57.5826956Z   run `npm fund` for details
2021-03-08T06:58:57.5827422Z 
2021-03-08T06:58:57.5838635Z found 933 vulnerabilities (927 low, 1 moderate, 5 high)
2021-03-08T06:58:57.5839828Z   run `npm audit fix` to fix them, or `npm audit` for details
2021-03-08T06:59:07.9415998Z npm WARN @docusaurus/plugin-content-blog@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:07.9500549Z npm WARN @docusaurus/plugin-content-docs@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:07.9581055Z npm WARN @docusaurus/plugin-content-pages@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:07.9656513Z npm WARN @docusaurus/plugin-debug@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:07.9729041Z npm WARN @docusaurus/plugin-google-analytics@2.0.0-alpha.37 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59.07.9812613Z npm WARN @docusaurus/plugin-google-gtag@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:07.9891795Z npm WARN @docusaurus/plugin-ideal-image@2.0.0-alpha.39 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:07.9969374Z npm WARN @docusaurus/plugin-sitemap@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:08.0048846Z npm WARN @docusaurus/preset-classic@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:08.0158446Z npm WARN @docusaurus/plugin-google-analytics@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:08.0253014Z npm WARN @docusaurus/plugin-sitemap@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:08.0331413Z npm WARN @docusaurus/theme-classic@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:08.0408575Z npm WARN @docusaurus/theme-search-algolia@2.0.0-alpha.58 requires a peer of @docusaurus/core@^2.0.0 but none is installed. You must install peer dependencies yourself.
2021-03-08T06:59:08.0484329Z npm WARN @endiliey/lqip-loader@3.0.2 requires a peer of file-loader@* but none is installed. You must install peer dependencies yourself..
2021-03-08T06:59:08.0617168Z npm WARN optional ÜBERSPRINGEN VON OPTIONALER ABHÄNGIGKEIT: fsevents@2.1.3 (node_modules/fsevents):
2021-03-08T06:59:08.0618792Z npm WARN notsup ÜBERSPRINGEN VON OPTIONALER ABHÄNGIGKEIT: Nicht unterstützte Plattform für fsevents@2.1.3: gewünscht {"os":"darwin","arch":"any"} (aktuell: {"os":"linux","arch":"x64"})
2021-03-08T06:59:08.0708620Z npm WARN optional ÜBERSPRINGEN VON OPTIONALER ABHÄNGIGKEIT: fsevents@1.2.13 (node_modules/watchpack-chokidar2/node_modules/fsevents):
2021-03-08T06:59:08.0710347Z npm WARN notsup ÜBERSPRINGEN VON OPTIONALER ABHÄNGIGKEIT: Nicht unterstützte Plattform für fsevents@1.2.13: gewünscht {"os":"darwin","arch":"any"} (aktuell: {"os":"linux","arch":"x64"})
2021-03-08T06:59:08.0796188Z npm WARN optional ÜBERSPRINGEN VON OPTIONALER ABHÄNGIGKEIT: fsevents@1.2.13 (node_modules/webpack-dev-server/node_modules/fsevents):
2021-03-08T06:59:08.0798586Z npm WARN notsup ÜBERSPRINGEN VON OPTIONALER ABHÄNGIGKEIT: Nicht unterstützte Plattform für fsevents@1.2.13: gewünscht {"os":"darwin","arch":"any"} (aktuell: {"os":"linux","arch":"x64"})
2021-03-08T06:59:08.0799947Z 
2021-03-08T06:59:08.0832702Z 1716 Pakete in 9,472s geprüft
2021-03-08T06:59:09.1281464Z 
2021-03-08T06:59:09.1282943Z 124 Pakete suchen nach Finanzierung
2021-03-08T06:59:09.1284002Z   Führe `npm fund` für Details aus
2021-03-08T06:59:09.1284496Z 
2021-03-08T06:59:09.1289505Z 933 Schwachstellen gefunden (927 geringfügig, 1 moderat, 5 schwerwiegend)
2021-03-08T06:59:09.1290616Z   Führe `npm audit fix` aus, um sie zu beheben, oder `npm audit` für Details
2021-03-08T06:59:09.3685909Z 152 Pakete in 23,574s geprüft
2021-03-08T06:59:09.4326662Z 
2021-03-08T06:59:09.4327502Z 4 Pakete suchen nach Finanzierung
2021-03-08T06:59:09.4328030Z   Führe `npm fund` für Details aus
2021-03-08T06:59:09.4328327Z 
2021-03-08T06:59:09.4337051Z 1 schwerwiegende Schwachstelle gefunden
2021-03-08T06:59:09.4337897Z   Führe `npm audit fix` aus, um sie zu beheben, oder `npm audit` für Details
2021-03-08T06:59:09.9692267Z 
2021-03-08T06:59:09.9694460Z > my-website@0.0.0 build /home/runner/work/v4-website/v4-website/en
2021-03-08T06:59:09.9695570Z > docusaurus build
2021-03-08T06:59:09.9696141Z 
2021-03-08T06:59:11.3906591Z Erstellen eines optimierten Produktionsbuilds...
2021-03-08T06:59:11.8991700Z [info] [webpackbar] Client kompilieren
2021-03-08T06:59:11.9217023Z [info] [webpackbar] Server kompilieren
2021-03-08T07:13:44.4220901Z 
2021-03-08T07:13:44.4222642Z <--- Letzte paar GCs --->
2021-03-08T07:13:44.4223196Z 
2021-03-08T07:13:44.4224703Z [3229:0x4ce0f70]   872349 ms: Mark-sweep 1990,9 (2067,7) -> 1973,9 (2067,0) MB, 2169,4 / 0,2 ms  (durchschnittlicher mu = 0,244, aktueller mu = 0,256) Speicherbereinigung könnte fehlschlagen
2021-03-08T07:13:44.4227033Z [3229:0x4ce0f70]   872444 ms: Scavenge 1989,0 (2067,0) -> 1976,3 (2067,0) MB, 12,7 / 0,0 ms  (durchschnittlicher mu = 0,244, aktueller mu = 0,256) Speicherbereinigung könnte fehlschlagen 
2021-03-08T07:13:44.4229622Z [3229:0x4ce0f70]   872547 ms: Scavenge 1990,1 (2067,0) -> 1978,9 (2067,0) MB, 22,7 / 0,0 ms  (durchschnittlicher mu = 0,244, aktueller mu = 0,256) Speicherbereinigung könnte fehlschlagen 
2021-03-08T07:13:44.4230693Z 
2021-03-08T07:13:44.4232342Z 
2021-03-08T07:13:44.4233332Z <--- JS Stacktrace --->
2021-03-08T07:13:44.4233856Z 
2021-03-08T07:13:44.4234496Z ==== JS Stacktrace =========================================
2021-03-08T07:13:44.4234969Z 
2021-03-08T07:13:44.4235555Z     0: ExitFrame [pc: 0x140a7f9]
2021-03-08T07:13:44.4236321Z Sicherheitskontext: 0x32e4e90008d1 <JSObject>
2021-03-08T07:13:44.4238348Z     1: /* anonym */ [0x26edba36dd71] [/home/runner/work/v4-website/v4-website/en/node_modules/acorn/dist/acorn.js:~808] [pc=0x12746eec88ce](this=0x22c8d4304271 <Parser map = 0x1a1ae9a7ec39>,0x0a9642f8b859 <String[#3]: for>,0x2ee3d23404b1 <undefined>,0x2ee3d23404b1 <undefined>)
2021-03-08T07:13:44.4240491Z     2: /* anonym */ [0x26edba36e1f1] [/home/runner/work/v4-website/v4-website/en/...
2021-03-08T07:13:44.4241521Z 
2021-03-08T07:13:44.4244430Z FATALER FEHLER: Ineffektive Mark-Compacts in der Nähe der Heap-Grenze Speicherzuweisung fehlgeschlagen - JavaScript-Heap aus Speicher
2021-03-08T07:13:44.4931042Z  1: 0xa18150 node::Abort() [node]
2021-03-08T07:13:44.4931907Z  2: 0xa1855c node::OnFatalError(char const*, char const*) [node]
2021-03-08T07:13:44.4932979Z  3: 0xb9705e v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]
2021-03-08T07:13:44.4934117Z  4: 0xb973d9 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]
2021-03-08T07:13:44.4935284Z  5: 0xd54655  [node]
2021-03-08T07:13:44.4936094Z  6: 0xd54ce6 v8::internal::Heap::RecomputeLimits(v8::internal::GarbageCollector) [node]
2021-03-08T07:13:44.4937444Z  7: 0xd615a5 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [node]
2021-03-08T07:13:44.4939291Z  8: 0xd62455 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]
2021-03-08T07:13:44.4941620Z  9: 0xd64f0c v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node]
2021-03-08T07:13:44.4944822Z 10: 0xd2b92b v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationType, v8::internal::AllocationOrigin) [node]
2021-03-08T07:13:44.4948355Z 11: 0x106defe v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [node]
2021-03-08T07:13:44.4958799Z 12: 0x140a7f9  [node]
2021-03-08T07:15:45.0450697Z ##[error]Der Vorgang wurde abgebrochen.

Ok JavaScript heap out of memory

Okay, offensichtlich ist der Speicherfehler eher eine Folge als ein Symptom des Problems…

Das Problem scheint mit sharp zusammenzuhängen, das Schwierigkeiten hat, wenn es zu viele Bilder gibt:

11:12:13 PM: (sharp:1883): GLib-GObject-WARNING **: 15:12:13.499: gtype.c:4265: type id '0' is invalid
11:12:13 PM: (sharp:1883): GLib-GObject-WARNING **: 15:12:13.499: can't peek value table for type '<invalid>' which is not currently referenced
11:12:13 PM: (sharp:1883): GLib-GObject-WARNING **: 15:12:13.499: gvalue.c:188: cannot initialize GValue with type '(null)', this type has no GTypeValueTable implementation

Was zu einer Endlosschleife, dann Speicherlecks und schließlich zu einem OOM-JS führt.

Falls jemand eine Idee hat, @VonOx oder @cicoub13, ich bin dankbar :slight_smile:

Ich untersuche weiter, aber das ist wirklich mysteriös…

Edit: Wir sind nicht die Einzigen, das Problem existiert auch bei Gastby:

Ok, ich habe eine Spur.

Offensichtlich gibt es ein Problem mit den Versionen von sharp unter 0.27.1.

Aktuell verwenden wir mit der Version von Docusaurus, die wir nutzen, 0.22.1, daher das Problem.

Ah, schau mal! Scharf!

Vor einigen Wochen haben @Terdious und @damalgos es auf den Netatmo-Dienst hinzugefügt, aber es ist unmöglich, die ARM-Images mit diesem Paket zu erstellen.

Also, ich bin dabei, Docusaurus auf die neueste Version zu aktualisieren, das ist nicht einfach, es gibt viele Breaking Changes ^^

Ich bin gerade darüber gestolpert, und da die Aktion auf Ubuntu ausgeführt wird, könnte man es versuchen

Ich glaube nicht, dass wir etwas auf Systemebene tun müssen :slight_smile:

Es gibt eindeutig einen Bug in der Version von sharp, die wir verwenden, und das echte Heilmittel ist, sharp zu aktualisieren!

Ich bin einverstanden, ich versuche nur, die Sache zu entblocken :slight_smile:

Übrigens habe ich gerade die Funktion yarn (kein äquivalentes npm soweit ich weiß) entdeckt, um eine Version für eine Abhängigkeit zu verwalten

"resolutions": {
    "sharp": "^0.27.1"
  }

Also, ich versuche schon seit mehreren Stunden, Docusaurus zu aktualisieren, und bin auf einige richtig tiefgehende Docusaurus-Bugs gestoßen :stuck_out_tongue:

Sie haben ein Problem mit ihrer Joi-Validierung, die erwartet, dass « prependBaseUrlToHref » ein String ist, während in ihrer Dokumentation steht, dass es ein Boolean ist (was Sinn ergeben würde)…

Das riecht nach einem PR für Docusaurus…

Issue bei Docusaurus erstellt: "prependBaseUrlToHref" is defined as a string in Joi validation, and it's supposed to be a boolean in the doc · Issue #4363 · facebook/docusaurus · GitHub

Ich werde heute keine Pull Request für sie machen, erstmal habe ich ihnen ein Issue erstellt und wir werden sehen, was sie sagen..

In der Zwischenzeit denke ich, dass wir blockiert sind. Wir können nicht auf die neueste Version wechseln ^^

Für Info, die neueste Version von Docusaurus (alpha-72) unterstützt Internationalisierung!

Heute versuche ich also, auf diese Version umzusteigen, das sieht wirklich stylisch aus :slight_smile:

Übrigens habe ich festgestellt, dass der Hauptentwickler dieses Projekts Franzose ist und ich bin in einer Gruppe mit ihm ^^

Für alle, die mitverfolgen wollen, hier ist der Pull Request:

Die Arbeit ist riesig, ich glaube, das wird mich eine Weile beschäftigen.

Super Initiative. Könntest du das nicht in zwei Schritten machen? Zuerst die Versionen auf Englisch und Französisch aktualisieren und dann die Internationalisierung aktivieren?

Nicht viel Zeit, um dir zu helfen, aber zum Testen ja :computer:

Es gibt trotzdem noch einige Unterschiede, da die API noch in der Alpha-Phase ist, hat sie sich zwischen der Version, die wir verwendet haben, und der aktuellen Version 72 stark verändert.

Auf jeden Fall habe ich angefangen :stuck_out_tongue: Ich habe ein leeres Docusaurus-Projekt erstellt und habe alles schrittweise hineinkopiert. Ich habe fast die englische Version des Sites funktioniert.

Als nächstes muss ich die FR-Übersetzungsdateien generieren und die Übersetzungen von der aktuellen Website kopieren. Es ist etwas Kleinarbeit, aber es muss gemacht werden ^^

Boah, ich habe den ganzen Morgen daran gearbeitet, die Website läuft endlich!!

Ich musste alle Teile der Dokumentation übersetzen, die auf Französisch, aber nicht auf Englisch vorhanden waren.

Ehrlich gesagt, diese neue Version von Docusaurus ist wirklich stylisch, sie erkennt tote Links, Bilder, die ins Leere verweisen, es ist wirklich gut gemacht. Dank dessen habe ich viele Probleme auf der Website gefunden :slight_smile:

Hop, eine Vorschau der Website für alle, die testen möchten:

[EDIT: Die Website ist live! => https://gladysassistant.com/ zum Testen!]

Also:

  1. Die Wurzel der Website ist nun die englische Version der Website
  2. Unter « /fr » gibt es die französische Version der Website
  3. Ich musste alle FR-Artikel, die nicht auf der englischen Website waren, übertragen. Einige habe ich übersetzt, aber nicht alle, weil das wirklich lange dauert… ^^

Normalerweise gibt es bei der Dokumentation vollständige Parität zwischen der FR- und der EN-Version der Website (alles übersetzt :p)

Lasst mich wissen, was ihr davon haltet!

Okay, ich habe die Website online gestellt, für mich ist das schon viel besser als vorher :slight_smile:

Meldet euch, wenn ihr etwas seht, ich schaue auf meiner Seite weiter!