--
Ticket URL: <https://code.djangoproject.com/ticket/18229>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* needs_docs: => 1
* needs_tests: => 0
* needs_better_patch: => 0
Comment:
Original ticket: #10841
Changeset: https://code.djangoproject.com/changeset/16921
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:1>
Comment (by adrian):
I agree we should allow this somehow for Chrome, but I'd prefer not to add
yet another setting. The barrier to entry for settings is higher. Can you
think of another way to solve it?
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:2>
Comment (by davehughes05@…):
I can't think of an alternative that allows both behaviors without
configuring which one is preferred, short of reading the developer's mind
:-)
Expanding the returned plaintext to include contextual code and serialized
variables (the way they appear in the HTML error result) would probably
solve the issue for me. This information could be presented toward the
bottom of the trace so the summarizing information is more prominent.
This would likely involve a more in-depth patch, but wouldn't require
adding yet another setting. Is this approach worth pursuing, in your
opinion?
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:3>
Comment (by adrian):
Dave -- Sure, improving the text version to include the contextual code
and variables sounds like the better plan. I agree that information should
appear at the bottom, to present the most important stuff first. Have a go
at implementing it!
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:4>
* stage: Unreviewed => Accepted
Comment:
Marking as accepted as there has apparently been an understanding about
the issue already.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:5>
* has_patch: 1 => 0
Comment:
Removing has patch because the pull request was closed in preference of
another implementation.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:6>
Comment (by FunkyBob):
Which other implementation was chosen?
Is there a separate ticket for it?
Should this be closed as a dupe or fixed?
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:7>
* needs_docs: 1 => 0
* easy: 1 => 0
Comment:
I think the implementation chosen was "improving the text version to
include the contextual code and variables sounds". I don't think it has
been implemented yet.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:8>
Comment (by anubhav9042):
I hope/intend to work on this in gsoc.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:9>
* status: new => assigned
* owner: nobody => anubhav9042
* version: 1.4 => master
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:10>
Comment (by timo):
As a possible starting point, I've used
[https://djangosnippets.org/snippets/650/ this middleware] before to make
it easier to read AJAX exceptions.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:11>
Comment (by anubhav9042):
I have compared the two Templates and have added a small diff based on
that.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:12>
* has_patch: 0 => 1
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:13>
Comment (by anubhav9042):
If the changes are good, then I'll open a PR. Also is there a need to
update tests here as the text response is not tested that extensively?
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:14>
* needs_better_patch: 0 => 1
Comment:
The output of the new version is much more cluttered and one of the new
lines exceeds 8600 characters in my test. Please post a sample diff of the
output between the old and new versions with your next revision, thanks.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:15>
Comment (by timo):
Maybe sniffing the user agent `HttpRequest.META['HTTP_USER_AGENT']` and
returning the HTML version for Chrome would be a better solution. Actually
Firefox inspector and Firebug can also preview HTML. I wonder if we should
consider dropping the plain text version for AJAX requests in light of
browser improvements? May need a django-developers thread.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:16>
Comment (by timo):
Actually I see the fact that some browsers can preview HTML from AJAX
requests was [https://code.djangoproject.com/ticket/10841#comment:21
already raised] in the original thread, so dropping plain text probably
isn't an option.
I'm having trouble coming up with a good way to present the context code
and variables that doesn't seem cluttered.
@davehughes05, if you still care about this issue do you have any
thoughts?
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:17>
* status: assigned => closed
* resolution: => wontfix
Comment:
Closing given lack of follow-up from reporter. If someone feels strongly
about this and wants to implement something that isn't too ugly, we'll
consider it.
--
Ticket URL: <https://code.djangoproject.com/ticket/18229#comment:18>