Plugin Lieux 🌍

  • CORRECTION : l’ouverture directe de la carte globale des sujets ne devrait plus poser de problĂšme
  • CORRECTION : la transition entre une carte de catĂ©gorie et la carte globale devrait maintenant fonctionner correctement
  • Tests de carte WIP non fonctionnels

@vincefrommtl, @Stephane_Roy @packman pourriez-vous s’il vous plaĂźt essayer cette mise Ă  jour ? Notez la portĂ©e des corrections. Une autre correction arrive bientĂŽt.

(Note technique : en raison de la bibliothĂšque Leaflet Ă©tant un objet global, apparemment QUnit ne peut pas la voir, donc je n’ai pas Ă©tĂ© en mesure de fournir des tests FE entiĂšrement intĂ©grĂ©s pour ces corrections - si quelqu’un sait comment faire fonctionner Leaflet et QUnit ensemble, merci de me le faire savoir)

3 « J'aime »

Mes commentaires :

  • La transition entre la carte globale et une carte de catĂ©gorie fonctionne. Mais l’inverse est cassĂ© (carte de catĂ©gorie vers carte globale), tout comme de catĂ©gorie Ă  catĂ©gorie.
  • Je n’ai pas vu cette erreur dans mon journal depuis ma mise Ă  niveau : ActionView::Template::Error (No route matches {:action=>"map_feed", :controller=>"list"}). :slight_smile:
  • Nouveau bug : Parfois, les liens groupĂ©s sur la carte n’affichent le marqueur de position sur la carte que lorsqu’on zoome, pas le libellĂ©.
  • Nouveau bug : Parfois, les libellĂ©s des marqueurs sur la carte ne mĂšnent pas au sujet correspondant.
  • Nouveau bug : la carte globale est maintenant affectĂ©e par le mĂȘme bug que les cartes de catĂ©gorie : n’affiche que quelques marqueurs (voir ci-dessous).

Concernant les cartes qui ont moins de marqueurs que prĂ©vu : j’ai examinĂ© attentivement, et elles n’affichent que les marqueurs des sujets actifs dans les 20 derniers jours (ou quelque chose comme ça), et un maximum de 30 d’entre eux. Est-il possible que ce soit un problĂšme de configuration sur notre forum ? Cela semble trĂšs spĂ©cifique ! Mais nous n’avons rien changĂ© dans ces paramĂštres. J’ai un maximum de 1700 sujets maximum de carte de localisation et je ne pense pas qu’il y ait de paramĂštre liĂ© au temps qui conduirait Ă  n’afficher que les marqueurs des sujets actifs dans les 20 derniers jours ?

1 « J'aime »

AprĂšs la mise Ă  niveau, j’ai ouvert la carte globale et aucun marqueur (sujet) ne s’affichait. Si j’édite l’emplacement d’un sujet avec un marqueur et que je sauvegarde sans aucune modification, le marqueur apparaĂźt. Tous mes marqueurs ont plus de 20 jours, donc c’est peut-ĂȘtre le mĂȘme problĂšme que celui que @vincefrommtl rencontre ?

Modification : Le bouton Afficher la carte pour chaque sujet affiche toujours l’emplacement correct du marqueur lorsque ce marqueur ne s’affiche pas sur la carte globale.

1 « J'aime »

Merci à tous, je vais jeter un autre coup d’Ɠil.

2 « J'aime »

Ce n’est pas une solution complĂšte, mais cela devrait, je crois, restaurer les anciens emplacements de sujets tout en Ă©vitant l’erreur de carte lors du chargement directement Ă  partir d’un lien externe ou d’un actualisation du navigateur :

ProblĂšme connu : Je n’ai pas rĂ©solu la transition directe Carte => Carte de catĂ©gorie (mais cela devrait ĂȘtre un cas extrĂȘme), mais tout le reste devrait ĂȘtre mieux.

1 « J'aime »

Je testerai demain, mais un utilisateur vient de signaler que les localisations amĂ©ricaines sont maintenant nommĂ©es Ville, Pays, État, par exemple Atlanta, États-Unis, GĂ©orgie.

Test rapide : Je peux confirmer que je vois tous les marqueurs sur la carte avec cette nouvelle mise Ă  jour. Merci beaucoup. :slight_smile:

Pour le moment, je vais conseiller Ă  mes utilisateurs de ne pas passer d’une carte de catĂ©gorie Ă  une autre, afin de contourner la transition dĂ©fectueuse.

1 « J'aime »

Les seuls changements récents concernent la population de la carte.

La commande pays/Ă©tat n’est pas la toute derniĂšre version. Je l’ai mentionnĂ©e car je ne me souviens pas l’avoir vue avant les versions de ces derniers jours.

1 « J'aime »

@packman pour l’instant, j’ai rĂ©solu votre problĂšme prĂ©cĂ©dent :

et cela est maintenant couvert par des tests.

merci encore à @david de m’avoir sorti du bunker sur celui-ci.

3 « J'aime »

@merefield Salut, juste pour te prévenir, la méthode modify_user_params est obsolÚte depuis un certain temps et sera bientÎt supprimée maintenant que Discourse est en version 3.2.0.beta1-dev

discourse-locations/lib/users_map.rb
35:  def modify_user_params(attrs)

Pourrais-tu travailler Ă  la mettre Ă  jour pour utiliser le modificateur users_controller_update_user_params quand tu auras un moment ? Merci !

1 « J'aime »

Bien sĂ»r, merci pour l’information supplĂ©mentaire, je vais y jeter un Ɠil cette semaine.

1 « J'aime »

Blake, c’est fait, ça te dĂ©range si je t’ajoute comme relecteur ?

3 « J'aime »

Génial, merci !

2 « J'aime »

Merci, fusionné !

1 « J'aime »

DĂ©solĂ© d’apporter de mauvaises nouvelles, mais j’ai un rapport de bug.

Nous utilisons la derniĂšre version, mise Ă  jour ce matin : 3.2.0.beta1-dev (7ca5ee6cd2)

Nous rencontrons un problĂšme Ă©trange, qui n’était pas prĂ©sent il y a deux semaines lors de notre derniĂšre mise Ă  jour, Ă  savoir que nous ne pouvons plus modifier le profil d’un utilisateur s’il a des champs personnalisĂ©s.

Je souhaite modifier cet utilisateur : https://example.com/u/username/preferences/profile

La page se charge correctement :

Dùs que je clique sur Enregistrer, j’obtiens une erreur :

Cela est apparu car un de nos autres sites web met Ă  jour le champ personnalisĂ© “membership” lorsque les membres de notre club effectuent une mise Ă  niveau, et le point de terminaison de l’API Discourse renvoyait une erreur 500.

Ceci est Ă©vident lorsque j’essaie de reproduire le problĂšme avec Postman :

Les journaux de Discourse indiquent :

et :

plugins/discourse-locations/plugin.rb:188:in `block (2 levels) in activate!'

lib/discourse_plugin_registry.rb:293:in `apply_modifier'

app/controllers/users_controller.rb:2036:in `user_params'

app/controllers/users_controller.rb:198:in `update'

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:420:in `block in with_resolved_locale'

i18n (1.14.1) lib/i18n.rb:322:in `with_locale'

app/controllers/application_controller.rb:420: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'

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:74:in `call'

rack (2.2.8) lib/rack/tempfile_reaper.rb:15:in `call'

rack (2.2.8) lib/rack/conditional_get.rb:40: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:389:in `call'

lib/middleware/gtm_script_nonce_injector.rb:10: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.12.2) lib/logster/middleware/reporter.rb:43: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'

message_bus (4.3.7) 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>'

Étrangement, je peux modifier mon PROPRE profil et mettre Ă  jour les champs personnalisĂ©s de l’utilisateur sans problĂšme.

Mais je ne peux plus modifier aucun autre utilisateur, et system ne peut pas non plus effectuer les mises Ă  jour via notre API.

Si je désactive le plugin Locations, tout fonctionne à nouveau correctement :

3 « J'aime »

@Richie merci pour votre rapport.

Je peux reproduire cela.

Cela ne semble se produire que lorsqu’une personne n’a pas d’emplacement.

Ce code a Ă©tĂ© rĂ©cemment refactorisĂ© en raison d’une dĂ©prĂ©ciation dans le cƓur et j’ai manquĂ© un cas (assez important). Je vais le corriger bientĂŽt.

5 « J'aime »

Ah, donc peut-ĂȘtre que le fait que j’aie modifiĂ© mon propre profil avec succĂšs Ă©tait un leurre, car j’ai une localisation sur le mien :slight_smile:

Pas de soucis, merci pour votre soutien continu :slight_smile:

Je pense que cela devrait ĂȘtre corrigĂ© maintenant :

8 « J'aime »

Mise à jour ce matin, plus d’erreurs HTTP/500.

Merci pour la correction rapide Robert :smiley: :clap:

3 « J'aime »