SourceForge logo
SourceForge logo
Menu

matplotlib-devel — matplotlib developers

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
(1)
Nov
(33)
Dec
(20)
2004 Jan
(7)
Feb
(44)
Mar
(51)
Apr
(43)
May
(43)
Jun
(36)
Jul
(61)
Aug
(44)
Sep
(25)
Oct
(82)
Nov
(97)
Dec
(47)
2005 Jan
(77)
Feb
(143)
Mar
(42)
Apr
(31)
May
(93)
Jun
(93)
Jul
(35)
Aug
(78)
Sep
(56)
Oct
(44)
Nov
(72)
Dec
(75)
2006 Jan
(116)
Feb
(99)
Mar
(181)
Apr
(171)
May
(112)
Jun
(86)
Jul
(91)
Aug
(111)
Sep
(77)
Oct
(72)
Nov
(57)
Dec
(51)
2007 Jan
(64)
Feb
(116)
Mar
(70)
Apr
(74)
May
(53)
Jun
(40)
Jul
(519)
Aug
(151)
Sep
(132)
Oct
(74)
Nov
(282)
Dec
(190)
2008 Jan
(141)
Feb
(67)
Mar
(69)
Apr
(96)
May
(227)
Jun
(404)
Jul
(399)
Aug
(96)
Sep
(120)
Oct
(205)
Nov
(126)
Dec
(261)
2009 Jan
(136)
Feb
(136)
Mar
(119)
Apr
(124)
May
(155)
Jun
(98)
Jul
(136)
Aug
(292)
Sep
(174)
Oct
(126)
Nov
(126)
Dec
(79)
2010 Jan
(109)
Feb
(83)
Mar
(139)
Apr
(91)
May
(79)
Jun
(164)
Jul
(184)
Aug
(146)
Sep
(163)
Oct
(128)
Nov
(70)
Dec
(73)
2011 Jan
(235)
Feb
(165)
Mar
(147)
Apr
(86)
May
(74)
Jun
(118)
Jul
(65)
Aug
(75)
Sep
(162)
Oct
(94)
Nov
(48)
Dec
(44)
2012 Jan
(49)
Feb
(40)
Mar
(88)
Apr
(35)
May
(52)
Jun
(69)
Jul
(90)
Aug
(123)
Sep
(112)
Oct
(120)
Nov
(105)
Dec
(116)
2013 Jan
(76)
Feb
(26)
Mar
(78)
Apr
(43)
May
(61)
Jun
(53)
Jul
(147)
Aug
(85)
Sep
(83)
Oct
(122)
Nov
(18)
Dec
(27)
2014 Jan
(58)
Feb
(25)
Mar
(49)
Apr
(17)
May
(29)
Jun
(39)
Jul
(53)
Aug
(52)
Sep
(35)
Oct
(47)
Nov
(110)
Dec
(27)
2015 Jan
(50)
Feb
(93)
Mar
(96)
Apr
(30)
May
(55)
Jun
(83)
Jul
(44)
Aug
(8)
Sep
(5)
Oct
Nov
(1)
Dec
(1)
2016 Jan
Feb
Mar
(1)
Apr
May
Jun
(2)
Jul
Aug
(3)
Sep
(1)
Oct
(3)
Nov
Dec
2017 Jan
Feb
(5)
Mar
Apr
May
Jun
Jul
(3)
Aug
Sep
(7)
Oct
Nov
Dec
2018 Jan
Feb
Mar
Apr
May
Jun
Jul
(2)
Aug
Sep
Oct
Nov
Dec
S M T W T F S

1
(4)
2
(7)
3
(2)
4
(9)
5
(8)
6
7
8
(6)
9
10
(2)
11
(8)
12
(1)
13
(2)
14
15
16
17
(4)
18
(8)
19
(4)
20
(3)
21
22
(9)
23
(9)
24
(8)
25
(2)
26
(1)
27
28
29
30




Showing 4 results of 4

From: John H. <jdh...@ac...> - 2004年11月19日 16:34:07
>>>>> "Jochen" == Jochen Voss <vo...@se...> writes:
 Jochen> Slight problem: it might now be a little bit more
 Jochen> difficult to include the name of the file which could not
 Jochen> be opened in the error message. The IOError exception
 Jochen> will probably only have "permission denied" associated
 Jochen> with it.
Looks OK, at least on linux
>>> file('/sbin/ldconfig', 'w')
Traceback (most recent call last):
 File "<stdin>", line 1, in ?
IOError: [Errno 13] Permission denied: '/sbin/ldconfig'
From: Jochen V. <vo...@se...> - 2004年11月19日 16:30:40
Hello,
On Fri, Nov 19, 2004 at 09:23:36AM -0600, John Hunter wrote:
> In summary, the thought is
>=20
> * use verbose only for non-error reporting
>=20
> * use exceptions for all error reporting
I agree with this.
> * work some GUI magic to transparently get the errors forwarded to a
> dialog box w/o using special functions
Here I have no opinion until I understand the special kind
of magic which is going to be used here.
> For another, it would also require some
> caching of messages because if 30 messages generate 30 popups it will
> get annoying quick.
Yes, we have to be careful here.
As nobody objected to this part of the plan, I changed the PostScript
backend in CVS as follows:
 diff -u -r1.13 backend_ps.py
 --- backend_ps.py 13 Nov 2004 11:41:54 -0000 1.13
 +++ backend_ps.py 19 Nov 2004 16:23:13 -0000
 @@ -529,10 +529,7 @@
		 basename, ext =3D os.path.splitext(outfile)
		 if not ext: outfile +=3D '.ps'
		 isEPSF =3D ext.lower().startswith('.ep')
 - try:
 - fh =3D file(outfile, 'w')
 - except IOError:
 - error_msg_ps('Could not open %s for writing' % outfile)
 + fh =3D file(outfile, 'w')
		 needsClose =3D True
		 title =3D outfile
Slight problem: it might now be a little bit more difficult to include
the name of the file which could not be opened in the error message.
The IOError exception will probably only have "permission denied" associated
with it.
All the best,
Jochen
--=20
http://seehuhn.de/
From: John H. <jdh...@ac...> - 2004年11月19日 15:23:57
>>>>> "Steve" == Steve Chaplin <ste...@ya...> writes:
 Steve> At the moment we have error_msg(), the Verbose class and
 Steve> exceptions all working in the same area and a bit of
 Steve> confusion as to which one does what. I don't think we need
 Steve> all three.
 Steve> I suggest - using exceptions to handle errors that may
 Steve> terminate the program, and allowing the matlab interface,
 Steve> GUI backends and user scripts to catch these exceptions. -
 Steve> using verbose for all reporting - merging error_msg() into
 Steve> the Verbose class (with the GUI backends possibly
 Steve> subclassing Verbose to provide a popup error dialog)
I think you are right that the plethora of error reporting strategies
is causing confusion, especially for me! I like the idea of the GUI
backends overriding placing a hook into the python exception handling
process. One possibility would be to do away with
verbose.report_error and error_msg. The GUIs hook into the exception
message, and anywhere we want to report an error we raise a python
exception. And we continue to use verbose.report as before.
I just checked backend_ps and the only place is uses error_msg is
 error_msg_ps('Could not open %s for writing' % outfile)
which would be more naturally handled as an exception anyway.
Steve, could you look into hooking a GTK dialog into the python
exception reporting mechanism to see if this is viable? In summary,
the thought is
 * use verbose only for non-error reporting
 * use exceptions for all error reporting
 * work some GUI magic to transparently get the errors forwarded to a
 dialog box w/o using special functions
As for verbose.report, I'm not convinced it is a good idea to hook
this into the GUI. For one thing, some reporting occurs before the
backend is determined. For another, it would also require some
caching of messages because if 30 messages generate 30 popups it will
get annoying quick. These things are manageable, but I think the main
use for verbose.report is debugging a problem, in which case simply
having the messages go to a stdout or a file may be the best place for
them.
JDH
From: Steve C. <ste...@ya...> - 2004年11月19日 09:24:08
On Thu, 2004年11月18日 at 18:05 +0000, Jochen Voss wrote: 
> 4) some ideas:
> 
> - The backends could return errors via python standard exceptions
> without printing messages and such. This leads to simple code,
> feels quite Pythonic, makes the backends more independent of the
> error reporting policy and at the moment seems to be the only sane
> solution to me.
> 
> - The backends should have a function which the matlab interface can
> call to report errors to the user. This should pop up a dialog
> etc. on GUI backends and just print the message to stderr for
> non-GUI backends. It should not terminate the program.
I agree with these ideas.
> 7) Conclusions:
> 
> I suggest the following.
> 
> - Change backend_template.py and all the other non-GUI backends to
> 
> 	def error_msg_ps(msg, *args):
> 	 """
> 	 Signal an error condition.
> 	 """
> 	 sys.stderr.write('Error: %s' % msg)
I'd prefer to merge error_msg into the Verbose class, or just delete it.
> - Change all callers of error_msg to terminate the program after the
> call when appropriate
Agree
> - Remove the verbose.report_error function and replace it with Python
> exceptions etc.
Agree
> What do you think?
At the moment we have error_msg(), the Verbose class and exceptions all
working in the same area and a bit of confusion as to which one does
what. I don't think we need all three. 
I suggest
- using exceptions to handle errors that may terminate the program, and
allowing the matlab interface, GUI backends and user scripts to catch
these exceptions.
- using verbose for all reporting
- merging error_msg() into the Verbose class (with the GUI backends
possibly subclassing Verbose to provide a popup error dialog)
Steve

Showing 4 results of 4

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /