Uploaded image for project: 'Magnolia CLI'
  1. Magnolia CLI
  2. NPMCLI-18

Component id with dash breaks add-availability command

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • 0.0.1
    • None
    • None
    • Basel 46
    • 1

    Description

      To reproduce try to run mgnl add-availability commenting-service:lm:components/comments pages/home@main
      This throws the following cryptic exception

      /usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:1298
            throw new exports.EmitterError("" + message + (context ? " " + context : ''));
            ^
      tag is not specified
          at EmitterError.YAMLError [as constructor] (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/errors.js:70:46)
          at new EmitterError (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:17:49)
          at Resolver.__dirname.Emitter.Emitter.error (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:1298:13)
          at Resolver.__dirname.Emitter.Emitter.process_tag (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:619:14)
          at Resolver.__dirname.Emitter.Emitter.expect_node (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:282:14)
          at Resolver.__dirname.Emitter.Emitter.expect_block_mapping_simple_value (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:528:19)
          at Resolver.__dirname.Emitter.Emitter.emit (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/emitter.js:116:14)
          at Resolver.__dirname.Serializer.Serializer.serialize_node (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/serializer.js:134:16)
          at Resolver.__dirname.Serializer.Serializer.serialize_node (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/serializer.js:132:18)
          at Resolver.__dirname.Serializer.Serializer.serialize_node (/usr/local/lib/node_modules/@magnolia/cli/node_modules/yaml-js/lib/serializer.js:132:18)
      

      After some debugging it turned out that it was the - (dash) in the module id causing everything to blow up. Problem was the regex used at helper.parseDefinitionReference which in the above case matched nothing thus returning an undefined result.

      Checklists

        Acceptance criteria

        Attachments

          Activity

            People

              fgrilli Federico Grilli
              fgrilli Federico Grilli
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Checklists

                  Bug DoR
                  Task DoD

                  Time Tracking

                    Estimated:
                    Original Estimate - Not Specified
                    Not Specified
                    Remaining:
                    Remaining Estimate - 0d
                    0d
                    Logged:
                    Time Spent - 3h
                    3h