Ember Veraltungswarnung für Translator-Plugin

Ich sehe eine Ember-Deprecation-Warnung für dieses Plugin…

`
DEPRECATION: [PLUGIN discourse-translator-085393fc180a351d3e74518ec7971e580d749bf93686b725cf4995ffeeb614ba] Die Verwendung des Ember Global ist veraltet. Sie sollten das Ember-Modul oder die spezifische API stattdessen importieren. [deprecation id: ember-global] Weitere Details finden Sie unter Ember.js - Deprecations.
(anonymous) @ deprecate-shim.js:33

Ich scheine die neueste Version (1.0.0) des Plugins zu haben, daher gehe ich davon aus, dass vor dem Ember5 Day ein Update verfügbar sein wird.

4 „Gefällt mir“

Danke für den Bericht @packman. Die neueste Version dieses Plugins sollte diese Warnung nicht auslösen. Außerdem würde ich normalerweise nicht erwarten, dass der Name des Plugins diese Zeichenkette mit zufälligen Zeichen am Ende enthält:

Ich würde nur [PLUGIN discourse-translator] erwarten :thinking:

Besteht die Möglichkeit, dass Sie eine gegabelte Version des Plugins verwenden? Könnten Sie das Forum verlinken, damit wir es uns ansehen können?

1 „Gefällt mir“

Entschuldigen Sie… Ich verwende eine geforkte Version. Es ist die von https://github.com/LibreTranslate/discourse-translator

Ich muss versuchen, mich daran zu erinnern, warum ich diese Version verwendet habe.

2 „Gefällt mir“

Ich erinnere mich, warum. Das offizielle Übersetzer-Plugin unterstützt LibreTranslate nicht :frowning:

2 „Gefällt mir“

Wenn jemand Mitglied des Support-Forums für das LibreTranslate-Fork-Plugin ist, könnte er bitte einen Beitrag zu dieser Deprecation-Warnung hinzufügen. Das Fork-Github scheint keine Probleme zuzulassen, die dagegen gemeldet werden können, und ich habe versucht, mich im Forum zu registrieren, um dies selbst zu melden, aber die Bestätigungs-E-Mail zur Kontoerstellung kommt nicht an.

2 „Gefällt mir“

Es sieht so aus, als hätten wir einen (sehr alten, sorry! :sweat:) PR im offiziellen Repository, um LibreTranslate-Unterstützung hinzuzufügen. Wir werden versuchen, diesen so schnell wie möglich zu mergen, und dann können die Leute auf die offizielle Kopie des Plugins mit Ember 5-Unterstützung umsteigen

5 „Gefällt mir“

Dies ist jetzt zusammengeführt, entschuldigen Sie nochmals für die sehr lange Verzögerung. Nach einem kurzen Test scheint LibreTranslate eine großartige Open-Source-Alternative zu kostenpflichtigen Diensten zu sein.

(Ich werde auch die OP-Anweisungen aktualisieren.)

7 „Gefällt mir“

Das ist es :grinning: Es ist nur eine weitere Docker-App, obwohl sie nicht sehr leichtgewichtig ist.

2 „Gefällt mir“

Ich habe das neue offizielle Plugin anstelle der geforkten Version installiert, aber ich erhalte keine Übersetzungen. Ich habe ältere Beiträge überprüft, von denen ich ziemlich sicher bin, dass sie zuvor übersetzt wurden, und auch neue Themen mit französischem Text eingegeben (Standard sprache ist Englisch), aber die alten Übersetzungen existieren nicht mehr und die neuen Beiträge werden nicht übersetzt.

Ich habe LibreTranslate als Übersetzer eingestellt, den Pfad zu meiner internen Instanz angegeben, keinen API-Schlüssel (interne Instanz), die maximale Anzahl von Übersetzungen pro Minute ist der Standardwert (3). Ich habe die beiden “restrict”-Einstellungen auf “everyone” gesetzt, um jedem die Übersetzung zu ermöglichen und die Beiträge aller übersetzen zu lassen. Die Formulierung dieser Einstellungen ist etwas verwirrend (restrict vs. allowlists), daher bin ich mir nicht sicher, ob das definitiv richtig ist, aber ich habe es auch mit beiden Feldern leer versucht und sehe immer noch keine Übersetzungen. Das Plugin ist für die Inline-Übersetzung aktiviert.

Ich habe meine LibreTranslate-Instanz über ihre eigene Weboberfläche getestet und sie übersetzt problemlos nicht-englischen Text, den ich eingegeben habe.

Ich kann keine Fehler im Protokoll finden, die sich auf den Übersetzer beziehen, seit ich das offizielle Plugin installiert habe, und die Javascript-Konsole zeigt ebenfalls keine Fehler an.

Ich bin mir nicht sicher, was ich als Nächstes tun soll, um dies zu debuggen.

1 „Gefällt mir“

Gibt es relevante Fehler in /logs?

2 „Gefällt mir“

Nein. Das einzige Element von discourse-translator ist eine Deprecation-Warnung:

Deprecation notice: SiteSetting.min_trust_to_flag_posts wurde als veraltet markiert. Bitte verwenden Sie stattdessen SiteSetting.flag_post_allowed_groups. (Entfernung in Discourse 3.3)
Auf /var/www/discourse/lib/site_setting_extension.rb:202:in public_send

Das ist für einen HTTP-Referrer von

https://discourse.weather-watch.com/admin/site_settings/category/all_results?filter=plugin%3Adiscourse-translator

daher bin ich mir nicht 100% sicher, ob das tatsächlich das Plugin oder die System-Plugin-Schnittstelle ist.

1 „Gefällt mir“

Ich habe gerade eine weitere Nachricht mit den Standardeinstellungen ‘restrict’ ausprobiert und Folgendes erhalten:

### Nachricht (2 Kopien gemeldet)

Job-Ausnahme: nicht initialisierter konstante DiscourseTranslator::LibreTranslate

### Rückverfolgung

activesupport-7.0.7/lib/active_support/inflector/methods.rb:278:in `const_get'

activesupport-7.0.7/lib/active_support/inflector/methods.rb:278:in `constantize'

activesupport-7.0.7/lib/active_support/core_ext/string/inflections.rb:74:in `constantize'

/var/www/discourse/plugins/discourse-translator/plugin.rb:125:in `block in execute'

/var/www/discourse/lib/distributed_mutex.rb:53:in `block in synchronize'

/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'

/var/www/discourse/lib/distributed_mutex.rb:49:in `synchronize'

/var/www/discourse/lib/distributed_mutex.rb:34:in `synchronize'

/var/www/discourse/plugins/discourse-translator/plugin.rb:124:in `execute'

/var/www/discourse/app/jobs/base.rb:292:in `block (2 levels) in perform'

rails_multisite-5.0.0/lib/rails_multisite/connection_management.rb:82:in `with_connection'

/var/www/discourse/app/jobs/base.rb:279:in `block in perform'

/var/www/discourse/app/jobs/base.rb:275:in `each'

/var/www/discourse/app/jobs/base.rb:275:in `perform'

sidekiq-6.5.12/lib/sidekiq/processor.rb:202:in `execute_job'

sidekiq-6.5.12/lib/sidekiq/processor.rb:170:in `block (2 levels) in process'

sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:177:in `block in invoke'

/var/www/discourse/lib/sidekiq/pausable.rb:132:in `call'

sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:179:in `block in invoke'

sidekiq-6.5.12/lib/sidekiq/middleware/chain.rb:182:in `invoke'

sidekiq-6.5.12/lib/sidekiq/processor.rb:169:in `block in process'

sidekiq-6.5.12/lib/sidekiq/processor.rb:136:in `block (6 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_retry.rb:113:in `local'

sidekiq-6.5.12/lib/sidekiq/processor.rb:135:in `block (5 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq.rb:44:in `block in <module:Sidekiq>'

sidekiq-6.5.12/lib/sidekiq/processor.rb:131:in `block (4 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/processor.rb:263:in `stats'

sidekiq-6.5.12/lib/sidekiq/processor.rb:126:in `block (3 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_logger.rb:13:in `call'

sidekiq-6.5.12/lib/sidekiq/processor.rb:125:in `block (2 levels) in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_retry.rb:80:in `global'

sidekiq-6.5.12/lib/sidekiq/processor.rb:124:in `block in dispatch'

sidekiq-6.5.12/lib/sidekiq/job_logger.rb:39:in `prepare'

sidekiq-6.5.12/lib/sidekiq/processor.rb:123:in `dispatch'

sidekiq-6.5.12/lib/sidekiq/processor.rb:168:in `process'

sidekiq-6.5.12/lib/sidekiq/processor.rb:78:in `process_one'

sidekiq-6.5.12/lib/sidekiq/processor.rb:68:in `run'

sidekiq-6.5.12/lib/sidekiq/component.rb:8:in `watchdog'

sidekiq-6.5.12/lib/sidekiq/component.rb:17:in `block in safe_thread'

### Umgebung

1/2

hostname hv1-app
process_id 11330
application_version 0513865c3cbbf8449bcfdc0dff3d9c382d2c4207
current_db default
current_hostname discourse.weather-watch.com
job Jobs::DetectTranslation
problem_db default
time 22:03 Uhr
opts post_id 574164
--- --- --- ---
--- ---
current_site_id default
2 „Gefällt mir“

Ja, ich weiß, was das ist, ich arbeite an einer Lösung.

3 „Gefällt mir“

Die Protokolle kommen jetzt schlag auf Schlag… ich weiß nicht, warum sie jetzt auftauchen, wenn sie es früher nicht getan haben. Es wird hier (UK) spät, also wird dies wahrscheinlich mein letzter Beitrag für heute Abend sein. Ich bin morgen wieder da, wenn Sie weitere Informationen benötigen.

Message (3 copies reported)
NameError (uninitialized constant DiscourseTranslator::LibreTranslate)
(eval):111:in `_fast_attributes'
app/serializers/post_stream_serializer_mixin.rb:54:in `block in posts'
app/serializers/post_stream_serializer_mixin.rb:47:in `map'
app/serializers/post_stream_serializer_mixin.rb:47:in `posts'
app/serializers/post_stream_serializer_mixin.rb:18:in `post_stream'
(eval):3:in `_fast_attributes'
app/controllers/topics_controller.rb:1335:in `block (2 levels) in perform_show_response'
app/controllers/topics_controller.rb:1329:in `perform_show_response'
app/controllers/topics_controller.rb:187:in `show'
app/controllers/application_controller.rb:422:in `block in with_resolved_locale'
app/controllers/application_controller.rb:422:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/gtm_script_nonce_injector.rb:10:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/request_tracker.rb:233:in `call'
Backtrace
activesupport (7.0.7) lib/active_support/inflector/methods.rb:278:in `const_get'
activesupport (7.0.7) lib/active_support/inflector/methods.rb:278:in `constantize'
activesupport (7.0.7) lib/active_support/core_ext/string/inflections.rb:74:in `constantize'
plugins/discourse-translator/plugin.rb:167:in `can_translate'
(eval):111:in `_fast_attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:468:in `rescue in attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:455:in `attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:480:in `_serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:359:in `serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:347:in `as_json'
app/serializers/post_stream_serializer_mixin.rb:54:in `block in posts'
activerecord (7.0.7) lib/active_record/relation/delegation.rb:88:in `each'
activerecord (7.0.7) lib/active_record/relation/delegation.rb:88:in `each'
app/serializers/post_stream_serializer_mixin.rb:47:in `map'
app/serializers/post_stream_serializer_mixin.rb:47:in `posts'
plugins/discourse-reactions/lib/discourse_reactions/topic_view_serializer_extension.rb:15:in `posts'
app/serializers/post_stream_serializer_mixin.rb:18:in `post_stream'
(eval):3:in `_fast_attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:468:in `rescue in attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:455:in `attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:480:in `_serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:359:in `serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:347:in `as_json'
activesupport (7.0.7) lib/active_support/json/encoding.rb:22:in `encode'
activesupport (7.0.7) lib/active_support/json/encoding.rb:22:in `encode'
activesupport (7.0.7) lib/active_support/core_ext/object/json.rb:42:in `to_json'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:331:in `to_json'
multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'
multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'
multi_json (1.15.0) lib/multi_json/adapter.rb:25:in `dump'
multi_json (1.15.0) lib/multi_json.rb:139:in `dump'
app/controllers/topics_controller.rb:1335:in `block (2 levels) in perform_show_response'
actionpack (7.0.7) lib/action_controller/metal/mime_responds.rb:214:in `respond_to'
app/controllers/topics_controller.rb:1329:in `perform_show_response'
app/controllers/topics_controller.rb:187:in `show'
actionpack (7.0.7) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (7.0.7) lib/abstract_controller/base.rb:215:in `process_action'
actionpack (7.0.7) lib/action_controller/metal/rendering.rb:165:in `process_action'
actionpack (7.0.7) lib/abstract_controller/callbacks.rb:234:in `block in process_action'
activesupport (7.0.7) lib/active_support/callbacks.rb:118:in `block in run_callbacks'
app/controllers/application_controller.rb:422:in `block in with_resolved_locale'
app/controllers/application_controller.rb:422:in `with_resolved_locale'
activesupport (7.0.7) lib/active_support/callbacks.rb:127:in `block in run_callbacks'
activesupport (7.0.7) lib/active_support/callbacks.rb:138:in `run_callbacks'
actionpack (7.0.7) lib/abstract_controller/callbacks.rb:233:in `process_action'
actionpack (7.0.7) lib/action_controller/metal/rescue.rb:23:in `process_action'
actionpack (7.0.7) lib/action_controller/metal/instrumentation.rb:67:in `block in process_action'
activesupport (7.0.7) lib/active_support/notifications.rb:206:in `block in instrument'
activesupport (7.0.7) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (7.0.7) lib/active_support/notifications.rb:206:in `instrument'
actionpack (7.0.7) lib/action_controller/metal/instrumentation.rb:66:in `process_action'
actionpack (7.0.7) lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord (7.0.7) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (7.0.7) lib/abstract_controller/base.rb:151:in `process'
actionview (7.0.7) lib/action_view/rendering.rb:39:in `process'
rack-mini-profiler (3.3.0) lib/mini_profiler/profiling_methods.rb:89:in `block in profile_method'
actionpack (7.0.7) lib/action_controller/metal.rb:188:in `dispatch'
actionpack (7.0.7) lib/action_controller/metal.rb:251:in `dispatch'
actionpack (7.0.7) lib/action_dispatch/routing/route_set.rb:49:in `dispatch'
actionpack (7.0.7) lib/action_dispatch/routing/route_set.rb:32:in `serve'
actionpack (7.0.7) lib/action_dispatch/journey/router.rb:50:in `block in serve'
actionpack (7.0.7) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (7.0.7) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (7.0.7) lib/action_dispatch/routing/route_set.rb:852:in `call'
lib/middleware/omniauth_bypass_middleware.rb:64:in `call'
rack (2.2.8) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.8) lib/rack/conditional_get.rb:27:in `call'
rack (2.2.8) lib/rack/head.rb:12:in `call'
actionpack (7.0.7) lib/action_dispatch/http/permissions_policy.rb:38:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:393:in `call'
lib/middleware/gtm_script_nonce_injector.rb:10:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
rack (2.2.8) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.8) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/cookies.rb:704:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (7.0.7) lib/active_support/callbacks.rb:99:in `run_callbacks'
actionpack (7.0.7) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/debug_exceptions.rb:28:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/show_exceptions.rb:29:in `call'
logster (2.13.1) lib/logster/middleware/reporter.rb:40:in `call'
railties (7.0.7) lib/rails/rack/logger.rb:40:in `call_app'
railties (7.0.7) lib/rails/rack/logger.rb:27:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/remote_ip.rb:93:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/request_id.rb:26:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
rack (2.2.8) lib/rack/method_override.rb:24:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.8) lib/rack/sendfile.rb:110:in `call'
actionpack (7.0.7) lib/action_dispatch/middleware/host_authorization.rb:131:in `call'
rack-mini-profiler (3.3.0) lib/mini_profiler.rb:191:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:233:in `call'
railties (7.0.7) lib/rails/engine.rb:530:in `call'
railties (7.0.7) lib/rails/railtie.rb:226:in `public_send'
railties (7.0.7) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.8) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.8) lib/rack/urlmap.rb:58:in `each'
rack (2.2.8) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.2.0/bin/unicorn:25:in `<main>'
Env
  1/3
hostname	hv1-app
process_id	11359
application_version	0513865c3cbbf8449bcfdc0dff3d9c382d2c4207
HTTP_HOST	discourse.weather-watch.com
REQUEST_URI	/t/vp2-low-battery-warning/41154
REQUEST_METHOD	GET
HTTP_USER_AGENT	Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
HTTP_ACCEPT	text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
HTTP_REFERER	https://discourse.weather-watch.com/search?q=low%20batt
HTTP_X_FORWARDED_FOR	255.36.47.44, 10.20.0.1
HTTP_X_REAL_IP	10.20.0.1
username	luciano_giannobile
time	10:08 pm
2 „Gefällt mir“

FIX: Broken LibreTranslate support by pmusaraj · Pull Request #128 · discourse/discourse-translator · GitHub sollte das Problem beheben @packman, Entschuldigung dafür, ich habe beim Versuch, Linting für den PR zu beheben, einen schrecklichen Copy/Paste-Fehler gemacht :man_facepalming:. Dieser Commit wurde nun zusammengeführt, also wenn Sie neu erstellen, wird es hoffentlich einfach funktionieren.

6 „Gefällt mir“