Array parameters wierdness

Aperta
#128 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
30/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python
Ambito
tooling

Direzione di ricerca

No source files or tests are named. Start by tracing how parameters.yaml types, defaults, and validation rules are parsed, then reproduce the three configurations in the issue. Done means array parameters remain arrays with bounds, with and without a default value, and the reported integer-versus-integer_array error is resolved.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug

There seem to be some issues with the handling of array parameters. I'm encountering problems with setting parameters and getting my application terminated, because of

Wrong parameter type, parameter {myParam} is of type {integer}, setting it to {integer_array} is not allowed.
Working configuration:

parameters.yaml

  myParam: {
    type: int_array_fixed_2,
    description: "myDescription",
    default_value: [ 0, 0],
    validation: {
      element_bounds<>: [ 0, 10000 ]
    }
  }

config.yaml

node:
  ros__parameters:
    myParam: [0, 1]
bounds demoting array to single integer

parameters.yaml

  myParam: {
    type: int_array_fixed_2,
    description: "myDescription",
    default_value: [ 0, 0],
    validation: {
      bounds<>: [ 0, 10000 ]
    }
  }

Changing out element_bounds to bounds will demote the parameter to a single integer and cause the error at the start. Removing the validation block will fix the problem.

No default_value demotes to single integer

parameters.yaml

  myParam: {
    type: int_array_fixed_2,
    description: "myDescription",
    validation: {
      element_bounds<>: [ 0, 10000 ]
    }
  }

Removing the default_value key will also demote the array. Removing the validation block will change nothing.

Something fishy is going on here, could you have a look? Thank you <3

Lingua principale
Python
Stelle
385
Fork
81
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di PickNikRobotics/generate_parameter_library

Tutte le issue di PickNikRobotics/generate_parameter_library

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.