[NPMCLI-18] Component id with dash breaks add-availability command Created: 02/Jun/16  Updated: 22/Aug/16  Resolved: 02/Jun/16

Status: Closed
Project: Magnolia CLI
Component/s: None
Affects Version/s: None
Fix Version/s: 0.0.1

Type: Bug Priority: Critical
Reporter: Federico Grilli Assignee: Federico Grilli
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 0d
Time Spent: 3h
Original Estimate: Not Specified

Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Sprint: Basel 46
Story Points: 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.


Generated at Mon Feb 12 04:45:44 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.