r7073 | ptw | 2007-10-31 17:59:32 -0400 (Wed, 31 Oct 2007) | 7 lines
Changed paths:
M /openlaszlo/branches/wafflecone
Change 20071031-ptw-r by [EMAIL PROTECTED] on 2007-10-31
17:57:19 EDT
in /Users/ptw/OpenLaszlo/jujube
for http://svn.openlaszlo.org/openlaszlo/branches/wafflecone
Summary: svnmerge merge -r6484,6520 -M -S
http://svn.openlaszlo.org/openlaszlo/trunk
On 2007-10-31, at 15:41 EDT, Max Carlson wrote:
> Please remember to update the svnmerge state in wafflecone if you
> didn't use it to do the merge - so we don't get confused later and
> re-merge. Thanks!
>
> [EMAIL PROTECTED] wrote:
>> Author: ptw
>> Date: 2007-10-31 12:36:00 -0700 (Wed, 31 Oct 2007)
>> New Revision: 7065
>> Modified:
>> openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzBacktrace.lzs
>> openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/LzDebug.lzs
>> openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/platform/
>> dhtml/kernel.js
>> openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/
>> LaszloCanvas.lzs
>> Log:
>> Change 20071031-ptw-w by [EMAIL PROTECTED] on 2007-10-31
>> 15:21:33 EDT
>> in /Users/ptw/OpenLaszlo/jujube
>> for http://svn.openlaszlo.org/openlaszlo/branches/wafflecone
>> Summary: Merge Debug.bugReport to cranberry
>> New Features:
>> The `bugReport` method of the Debugger can be used to create a
>> report suitable for copy/pasting into a bug report.
>> Bugs Fixed:
>> LPP-4719 'Provide a way to output relevant debug info to copy/paste
>> into mail'
>> Technical Reviewer: ben (Message-Id: <[EMAIL PROTECTED]
>> >)
>> QA Reviewer: frisco (pending)
>> Doc Reviewer: jsundman (Message-Id: <[EMAIL PROTECTED]
>> >)
>> Documentation:
>> The `bugReport` method of the Debugger can be used to create a
>> report suitable for copy/pasting into a bug report. To use it,
>> enable backtraces and debugging, then inspect the error message
>> that you believe reveals a bug, then invoke `Debug.bugReport()` in
>> the debugger. Copy and paste the output of that call into your
>> bug report.
>> Details:
>> Merged r6484 and r6520 from trunk
>> Tests:
>> Inspection
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzBacktrace.lzs
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzBacktrace.lzs 2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzBacktrace.lzs 2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -149,6 +149,21 @@
>> }
>> /**
>> + * Map over a backtraces frames
>> + * @param fn:Function the function to call on each frame
>> + * @param limit:Maximum number of frames to map
>> + * + * @access private
>> + */
>> +LzBacktrace.prototype.map = function(fn, limit) {
>> + if (! (fn instanceof Function)) { return; }
>> + if (! limit) { limit = this.length; }
>> + for (var i = this.length - 1; (i >= 0) && (limit > 0); i--,
>> limit--) {
>> + fn(this[i]);
>> + }
>> +}
>> +
>> +/**
>> * Convert a backtrace to a string
>> * @param printer:Function the function to print the backtrace
>> * functions with. Defaults to Debug.__String
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzDebug.lzs
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzDebug.lzs 2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> LzDebug.lzs 2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -73,6 +73,12 @@
>> */
>> Debug.showInternalProperties = false;
>> +/** Any amendments to the environment for debug evaluator, initially
>> + * just _, __, and ___. Could put things like write, format,
>> inspect.
>> + * @access private
>> + */
>> +Debug.environment = {};
>> +
>> /**
>> * Display version info
>> */
>> @@ -366,7 +372,95 @@
>> */
>> Debug.ObjectForID = function (id) {
>> return this.id_to_object_table[id];
>> +};
>> +
>> +/**
>> + * Format information about an error suitably for reporting a bug
>> + *
>> + * This method can be used to create a report suitable for
>> + * copy/pasting into a bug report. To use it, enable backtraces and
>> + * debugging, inspect the error message that you believe reveals a
>> + * bug, then invoke `Debug.bugReport()` in the debugger. Copy and
>> + * paste the output of that call into your bug report.
>> + *
>> + * @param error: An error message or ID. Defaults to the last error
>> + * that was inspected.
>> + * @param Boolean verbose: If true, each frame
>> + * argument in the backtrace will be inspected. Defaults to the
>> value
>> + * of Debug.showInternalProperties.
>> + *
>> + * @note By inspecting an error message (by clicking on it), the
>> error
>> + * message will be assigned to the Debug environment variable `_`.
>> + * Thus to enable a verbose report (which will detail all
>> arguments of
>> + * each frame, as opposed to just the `this` argument), invoke as
>> + * `Debug.bugReport(_, true)`.
>> + */
>> +Debug.bugReport = function (error, verbose) {
>> + // Default values
>> + switch (arguments.length) {
>> + case 0:
>> + with (global) {
>> + with (this.environment) {
>> + error = _;
>> + }
>> + }
>> + case 1:
>> + verbose = this.showInternalProperties;
>> + }
>> + if (typeof(error) == 'number') {
>> + error = this.ObjectForID(error);
>> + }
>> + if (! (error instanceof LzSourceMessage)) {
>> + Debug.error("You must provide an error to report. Please
>> inspect an error message and try again.")
>> + return;
>> + }
>> + if (! (('backtrace' in error) && (error.backtrace instanceof
>> LzBacktrace))) {
>> + Debug.error("Backtraces must be on to report a bug. Please
>> enable backtracing and try again.");
>> + return;
>> + }
>> + var inspected = [];
>> + function inspect (obj, verbose) {
>> + var id = verbose && Debug.IDForObject(obj);
>> + if (id && (! (id in inspected))) {
>> + inspected[id] = obj;
>> + }
>> + return obj;
>> + }
>> +
>> + Debug.format("Please copy the following information into your
>> bug report:\n\n---START OF BUG REPORT---\n\nLPS VERSION INFORMATION:
>> \n");
>> + Debug.versionInfo();
>> + Debug.format("\nERROR MESSAGE: %s", error);
>> + Debug.format("\nERROR BACKTRACE:");
>> + error.backtrace.map(
>> + function (frame) {
>> + Debug.format("\n%w", frame);
>> + Debug.format("\n this: %#w", inspect(frame['this'], true));
>> + var args = frame.arguments;
>> + for (var i = 0; i < args.length; i++) {
>> + Debug.format("\n arg %2d: %#w", i, inspect(args[i],
>> verbose));
>> + }
>> + });
>> + if (inspected.length > 0) {
>> + Debug.format("\n\nOBJECT DETAILS:");
>> + var keys = [];
>> + // Present the object's in ID-order so they are easier to find.
>> + for (var id in inspected) {
>> + keys.push(id);
>> + }
>> + keys.sort(function (a, b) {
>> + var al = parseInt(a);
>> + var bl = parseInt(b);
>> + return (al > bl) - (al < bl);
>> + });
>> + for (var i = 0; i < keys.length; i++) {
>> + var obj = inspected[keys[i]];
>> + Debug.format("\n");
>> + // Thus copy/paste will not get the 'hotlink' markup
>> + Debug.inspect(obj);
>> + Debug.format("\n");
>> + }
>> + }
>> + Debug.format("\n---END OF BUG REPORT---\n");
>> }
>> -
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> platform/dhtml/kernel.js
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> platform/dhtml/kernel.js 2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/debugger/
>> platform/dhtml/kernel.js 2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -191,12 +191,6 @@
>> this.displayResult(this.inspect(obj));
>> }
>> -/** Any amendments to the environment for debug evaluator, initially
>> - * just _, __, and ___. Could put things like write, format,
>> inspect.
>> - * @access private
>> - */
>> -Debug.environment = {};
>> -
>> /**
>> * @access private
>> */
>> Modified: openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/
>> LaszloCanvas.lzs
>> ===================================================================
>> --- openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/
>> LaszloCanvas.lzs 2007-10-31 18:39:25 UTC (rev 7064)
>> +++ openlaszlo/branches/wafflecone/WEB-INF/lps/lfc/views/
>> LaszloCanvas.lzs 2007-10-31 19:36:00 UTC (rev 7065)
>> @@ -568,7 +568,7 @@
>> 'Build: ' + canvas.lpsbuild + '\n' +
>> 'Date: ' + canvas.lpsbuilddate + '\n' +
>> 'Target: ' + canvas.runtime + '\n' +
>> - 'Runtime:' + LzBrowser.getVersion() + '\n');
>> + 'Runtime: ' + LzBrowser.getVersion() + '\n');
>> }
>> /**
>> _______________________________________________
>> Laszlo-checkins mailing list
>> [email protected]
>> http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins
>
> --
> Regards,
> Max Carlson
> OpenLaszlo.org
_______________________________________________
Laszlo-checkins mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins