opral / inlang-paraglide-js

Tree-shakable i18n library build on the inlang ecosystem.
https://inlang.com/m/gerre34r/library-inlang-paraglideJs
23 stars 0 forks source link

jsdelivr down - remove point of failure in settings.json #103

Closed actraiser closed 2 months ago

actraiser commented 2 months ago

jsdelivr.net has gone down because of a TLS/SSL-Certificate error making it hard to deploy projects using paraglide-js. I tried manually installing the modules referenced in settings.json but it failed on a postinstall scripts related to those packages.

Please make it easier to replace the cdn-URLs in the settings with locally installed modules.

{
  "$schema": "https://inlang.com/schema/project-settings",
  "sourceLanguageTag": "en",
  "languageTags": ["en", "de"],
  "modules": [
    "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-empty-pattern@latest/dist/index.js",
    "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-missing-translation@latest/dist/index.js",
    "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-without-source@latest/dist/index.js",
    "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-valid-js-identifier@latest/dist/index.js",
    "https://cdn.jsdelivr.net/npm/@inlang/plugin-message-format@latest/dist/index.js",
    "https://cdn.jsdelivr.net/npm/@inlang/plugin-m-function-matcher@latest/dist/index.js"
  ],
  "plugin.inlang.messageFormat": {
    "pathPattern": "./messages/{languageTag}.json"
  }
}

Greets -act

PS: temporary workaround is to use a mirror, e.g https://fastly.jsdelivr.net

LorisSigrist commented 2 months ago

This is something we want to address with local module caching.

See: https://github.com/opral/inlang-message-sdk/issues/43

We can't use a regular package manager like NPM because it needs to be possible to load the modules in the browser for Apps like Fink to work.

I'll mark this as a duplicate since the linked issue should cover your need.

samuelstroschein commented 2 months ago

@jldec this confirms our discussions yesterday. if one (or all) modules fail to load, the project should still work. Requires message persistency first to make this work to get rid of plugin dependencies