I'm not sure if this is a Bugzilla question or a XML-RPC question: when creating a bug in Bugzilla using the Bug.create method of the XML-RPC API, how can I enter a multi-line description?
The description parameter takes a string value, but whitespace (including newlines) seems to be stripped, and I end up with a one-line description, instead of multiple lines of text.
The following doesn't work:
<?xml version="1.0"?>
<methodCall>
<methodName>Bug.create</methodName>
<params>
<param>
<value>
<struct>
<member>
<name>product</name>
<value><string>Development</string></value>
</member>
<member>
<name>component</name>
<value><string>Component01</string></value>
</member>
<member>
<name>summary</name>
<value><string>Bug created via API</string></value>
</member>
<member>
<name>description</name>
<value>
<string>This bug was created through the Bugzilla XML/RPC interface
Here is the second line of the description
and the third line.</string>
</value>
</member>
<member>
<name>version</name>
<value><string>1</string></value>
</member>
<member>
<name>severity</name>
<value><string>enhancement</string></value>
</member>
<member>
<name>op_sys</name>
<value><string>All</string></value>
</member>
<member>
<name>platform</name>
<value><string>All</string></value>
</member>
<member>
<name>priority</name>
<value><string>P5</string></value>
</member>
<member>
<name>assigned_to</name>
<value><string>example@example.com</string></value>
</member>
</struct>
</value>
</param>
</params>
</methodCall>
I end up with the following description:
This bug was created through the Bugzilla XML/RPC interfaceHere is the second line of the descriptionand the third line.
I figured out one way: use a base64 value instead of a string value for the description.
If anyone knows a different way, please let me know.
This works:
<?xml version="1.0"?>
<methodCall>
<methodName>Bug.create</methodName>
<params>
<param>
<value>
<struct>
<member>
<name>product</name>
<value><string>Development</string></value>
</member>
<member>
<name>component</name>
<value><string>Component01</string></value>
</member>
<member>
<name>summary</name>
<value><string>Bug created via API</string></value>
</member>
<member>
<name>description</name>
<value>
<base64>VGhpcyBpcyBsaW5lIG9uZQ0KDQpibGFuayBsaW5lIGFib3ZlDQpUaGlzIGlzIHRoZSB0aGlyZCBsaW5lIG9mIHRleHQ=</base64>
</value>
</member>
<member>
<name>version</name>
<value><string>1</string></value>
</member>
<member>
<name>severity</name>
<value><string>enhancement</string></value>
</member>
<member>
<name>op_sys</name>
<value><string>All</string></value>
</member>
<member>
<name>platform</name>
<value><string>All</string></value>
</member>
<member>
<name>priority</name>
<value><string>P5</string></value>
</member>
<member>
<name>assigned_to</name>
<value><string>xxx@xxx.com</string></value>
</member>
</struct>
</value>
</param>
</params>
</methodCall>
Result:
This is line one
blank line above
This is the third line of text