Commit Graph

9294 Commits

Author SHA1 Message Date
Jack Jansen 4827aeb99b Don't remember... 1998-09-13 15:03:55 +00:00
Guido van Rossum f0a275d4db Richard Wolff's changes:
pdb.doc		Updated to reflect better the various changes.
1998-09-12 14:42:23 +00:00
Guido van Rossum 2424f855f3 Richard Wolff's changes:
pdb.py  Uses the Breakpoint class so one can enable/disable breakpoints,
	set temporary ones, set ignore counts, and conditions.  The last
	can be set using the 'b' command
		b 243 , i>4		( b 243,i>4 if you are space adverse)
	or with the condition command so conditions can be changed
	for a particular breakpoint.

	Breakpoints are numbered from 1 on, and if a breakpoint is deleted,
	the number is not reused.  All the breakpoint handling commands
	refer to breakpoints by number.  To be consistent, the clear command
	does so as well, which is the one change from the original pdb that
	is not transparent.  Thus only the breakpoint command 'b' uses a
	line number or file:line or method.  You can also give
		b whrandom.random    and the method will be searched for along
	sys.path.  This is implemented with an 'egrep' command and so
	is not as portable as it might be.  [ see  lineinfo() and
	lineinfoCmd ]

	Breakpoints cannot be set at a line that is blank or a '#' comment
	or starts a triply quoted comment.  This is because I would like
	this behavior in my DDD interface and think it reasonable for
	pdb as well.  It can be removed readily, however as it is all
	incorporated in the routine checkline().  If one attempts to
	set a breakpoint at a 'def' line, the breakpoint is automatically
	moved to the first executable line after the 'def'.  This too is
	in checkline().

	do_EOF() returns zero so typing an end-of-file character as a command
	does nothing.  'quit' does the quitting.

	The routine defaultFile() is present so as to preserve the current
	pdb behavior and yet allow me to override it in pydb.

	There's some code in lineinfo() that is probably mainly useful only
	for pydb and if you prefer, much up to the comment "Best first guess"
	could be removed.

	Keith Davidson provided the code for handling $HOME/.pdbrc and
	./.pdbrc, and it has been incorporated.  He also provided the
	alias handling routine.  I modified it a bit so it could live
	nicely in precmd().  He and I have been in contact; he has the
	new pdb (and pydb) with his code incorporated.  He also asked
	about the possibility of allowing multiple commands on one
	line, such as step;step  or s;s  or with an alias such as
		alias ct tbreak %1 ; continue
	and since it was so easy, that's in place as well.  It's a simple
	'split the line at the first ";"' operation and puts the second
	half in the command queue (self.cmdqueue).  This has the unfortunate
	effect of destroying a line like   print "i: "+i+"; j: "+j
	but either there's a simple way to deal with this, or my attitude
	will remain that pdb is a debugger, not a compiler/parser/etc.
	An alias like   alias 4s  s;;s;
	will work because the adjacent and trailing ";" act like a <cr> which
	repeats the last command.  Of course, either s;s;s;s or s;;;  would be
	a bit more sensible.

	The help commands have been updated.
1998-09-11 22:50:09 +00:00
Guido van Rossum d93643fe4a Richard Wolff's changes:
bdb.py  now has a class definition called Breakpoint along with
	associated methods.  There's no reason why this class has to
	be there; if you prefer it elsewhere, 'tis easily done.

(Minor reformatting by GvR; e.g. moved Breakpoint's doc string to
proper point.)
1998-09-11 22:38:35 +00:00
Guido van Rossum 5fca6fd2d9 Richard Wolff's changes:
cmd.py  has incorporated the changes we discussed a couple of weeks ago
	(a command queue, returning line from precmd, and stop from postcmd)
	and some changes to help that were occasioned because I wanted to
	inherit from pdb which inherits from cmd.py and the help routine
	didn't look for commands or the associated help deeply enough.
1998-09-11 22:33:08 +00:00
Fred Drake b7833d3c0c Add a \label to the section "Fancier Output Formatting" (it's referenced from
the KOE docs).

Some markup nits.
1998-09-11 16:21:55 +00:00
Fred Drake d16d4981d1 Markup nits. 1998-09-10 20:21:00 +00:00
Jeremy Hylton faff0bdcba correct bogus instructions 'ccoment out' -> 'uncomment' 1998-09-10 20:18:09 +00:00
Fred Drake d64a40dbc0 do_cmd_methodlineni(): New function, needed because the ref. manual now
actually uses this markup.
1998-09-10 18:59:13 +00:00
Fred Drake 9b134bf716 Added comment about support for rational numbers, and pointer to
Demos/classes/Rat.py.
1998-09-10 18:42:55 +00:00
Fred Drake 7a2f0668e4 Markup nits.
Fixes/index improvements from Michael Ernst <mernst@cs.washington.edu>.
1998-09-10 18:25:58 +00:00
Guido van Rossum 106a470da2 Fixed the words in the comment and error message about defining FULL_PATH.
(It's not SCRIPTPATH!)
1998-09-10 18:22:18 +00:00
Jeremy Hylton 1deebabc77 include <string.h> to get prototype for strcmp
change error messages to be a little more straightforward

change definition of FULL_PATH so that an error is raised if the
setuid wrapper is used un-edited
1998-09-10 18:10:59 +00:00
Fred Drake 3494e4a31f Fix typo in URL; reported by Michael Ernst <mernst@cs.washington.edu>. 1998-09-10 17:55:32 +00:00
Guido van Rossum d21744a1dd Apparently on AIX when using gcc you need to call pthread_init()
(which is not a POSIX threads call!).  Reported and confirmed by Brad
Howes.
1998-09-10 03:04:40 +00:00
Fred Drake f9acc59c55 \itembreak,
\itemjoin:  Remove obsolete macros.

\itemnewline:  Rename to \py@itemnewline, since it's only used internally.
1998-09-09 15:27:43 +00:00
Guido van Rossum 7ca9a1a466 Fix a bug where comparison of a rational with a float failed because
the difference got converted to float.
Put brackets around the string representation of (non-integer)
rationals.
(Sjoerd Mullender.)
1998-09-09 14:07:06 +00:00
Guido van Rossum 76d1f96fe2 Michael P. Reilly suggested this fix: makesetup wants to prepend
"$(srcdir)/" before all source files even when is starts with "/".
1998-09-09 14:04:51 +00:00
Guido van Rossum a063303693 Patch suggested by Perry Stoll -- os.path.normpath(".//x") returned
"/x", should return "x".
1998-09-08 22:28:06 +00:00
Jack Jansen 86ad567c2e Split tcl/tk libs out of other libraries (don't want to build these always) 1998-09-08 19:43:32 +00:00
Jack Jansen 48a9c3634b Mods by Just to allow aliases in sys.path entries 1998-09-07 11:36:17 +00:00
Guido van Rossum 9819983994 Beh, new version must be edited in a separate file. 1998-09-04 21:20:29 +00:00
Guido van Rossum 2053aa6cc0 Use SCRIPT_NAME (if defined) instead of hardcoding /cgi-bin/ when
sending the cookie.  (Suggestion by AMK.)
1998-09-04 21:19:55 +00:00
Guido van Rossum a74d0e4c55 Correct typo in #ifdef: PY_THREAD_D4, should be PY_PTHREAD_D4.
Reported by Jonathan Giddy.
1998-09-04 13:38:32 +00:00
Guido van Rossum 746340d989 Should no longer surround PyOS_Readline() call with
Py_{BEGIN,END}_ALLOW_THREADS macros.  Also get rid of the declaration
for it (it's now in pythonrun.h).
1998-09-03 22:25:05 +00:00
Jeremy Hylton b85c8479eb Easy optimizations of urlparse for the common case of parsing an http URL.
1. use dict.get instead of try/except KeyError
2. if the url scheme is 'http' then avoid the series of
   'if var in [someseq]:'.  instead, inline all of the code.
3. find = string.find
1998-09-02 21:53:16 +00:00
Guido van Rossum f6ae743cb5 Fix suggested by movits@lockstar.com (plus doc string by myself)
for LIST command with msg argument.
1998-09-02 14:42:02 +00:00
Guido van Rossum c86b7c63e0 Make bind variants without a sequence return a tuple of sequences
(formerly it returned a string, which wasn't very convenient).

Add image commands to the Text widget (these are new in Tk 8.0).
1998-08-31 16:54:33 +00:00
Guido van Rossum 164543607c Now that we have standard (optional) long long support, the long long
support in this module can go.  The patch only deletes code
(PyLong_FromLongLong() and PyLong_AsLongLong()).  By Sjoerd Mullender.
1998-08-31 14:14:09 +00:00
Guido van Rossum 80c7bcf667 The previous fix was still broken; the Py_END_ALLOW_THREADS macro was
never executed because of a return statement.  Sigh.
1998-08-29 16:03:27 +00:00
Barry Warsaw 4d1874093f (py-in-literal): How'd this get through? c-point => py-point 1998-08-29 06:32:31 +00:00
Fred Drake 525d7024ab Ignore the generated README file. 1998-08-28 21:34:50 +00:00
Fred Drake 2335a305e5 When building the tarball of the PostScript files, also generate & include a
little README giving the page count of each file when printed.
1998-08-28 21:17:58 +00:00
Fred Drake 7c86c594ea Target to generate a little README file with the page counts of the PostScript
files.
1998-08-28 21:17:07 +00:00
Fred Drake 47f69067d5 Script to generate page counts of the PostScript files. 1998-08-28 21:16:28 +00:00
Fred Drake e1feb8f2dc Support long options that take arguments of the form --option=value as well
as --option value.

Minor nits cleaned up.
1998-08-28 20:21:04 +00:00
Fred Drake d82575d5bf Markup changes in the section on disciplines to match method descriptions
a little better, and produce better HTML.

Add some index entries.
1998-08-28 20:03:12 +00:00
Guido van Rossum 8efa47b63e We now assume that PyOS_Readline() is called with the interpreter lock
held.  It releases the lock around the call to the function pointed to by
PyOS_ReadlineFunctionPointer (default PyOS_StdioReadline()).
1998-08-27 19:43:43 +00:00
Guido van Rossum 44ee479427 Add a 'volatile' to the declaration of threadid in get_thread_ident().
According to Vladimir Marangozov, this is necessary for AIX, where
high optimization levels inline this function and then get it wrong :-(
1998-08-27 19:21:53 +00:00
Guido van Rossum 53195c1a83 Don't release the interpreter lock around PyParser_ParseFile().
It is needed so that tokenizer.c can use PySys_WriteStderr().
1998-08-27 19:14:49 +00:00
Guido van Rossum b9f48608f6 Changes by Richard Wolff:
1) I added a command queue which is helpful to me (at least so far) and
   would also allow syntax like 's;s' (step; step) in conjunction with precmd
2) doc_leader allows the derived class to print a message before the help
   output.  Defaults to current practise of a blank line
3) nohelp allows one to override the 'No help on' message.  I need
    'Undefined command: "%s".  Try "help".'
4) Pass line to self.precmd to allow one to do some parsing: change first
   word to lower case, strip out a leading number, whatever.
5) Pass the result of onecmd and the input line to postcmd.  This allows
   one to ponder the stop result before it is effective.
6) emptyline() requires a   if self.lastcmd:  conditional because if the
   first command is null (<cr>), you get an infinite recursion with the
   code as it stands.
1998-08-27 19:02:51 +00:00
Jack Jansen de57030a1c Added a note about the buildlibs script. 1998-08-27 13:39:01 +00:00
Jeremy Hylton 4722da6ebf fix typo in keyword argument 'allow_frament' should be 'allow_fragment' 1998-08-25 19:45:24 +00:00
Guido van Rossum afd3daedde __file__ used to be always set to the .pyc (or .pyo) file, even if
that file in fact did not exist or at least was not used.  Change this
so that __file__ is *only* set to the .pyc/.pyo file when it actually
read the code object from it; otherwise __file__ is set to the .py
file.
1998-08-25 18:44:34 +00:00
Guido van Rossum 90f827c67e Comment out the print statement about underflow. (This only seems to
happen when you use a non-keyword argument after a keyword argument,
and in this case you also get a syntax error.  I fully suspect that
the underflow is caused by the code that stops generating code when it
detects the syntax error, but I can't find the culprit right now.  I
know, I know.)
1998-08-25 18:22:17 +00:00
Guido van Rossum 2d1ad39b81 Add the type of the object to the error message about calling a non-function. 1998-08-25 18:16:54 +00:00
Guido van Rossum 6e73bf4032 Replace all calls to fprintf(stderr, ...) with PySys_WriteStderr(...). 1998-08-25 18:13:04 +00:00
Guido van Rossum 47fbc4049e Add a version of PySys_WriteStderr() that writes to stderr, so we can
use it in tokenizer.c.
1998-08-25 18:12:36 +00:00
Guido van Rossum d0dc5b06a2 Restructure the file so that it is never empty. No longer needs
Metrowerks specific #ifdef.
1998-08-25 17:48:25 +00:00
Guido van Rossum 3293b07df5 Patch by Mark Hammond to support 64-bit ints on MS platforms.
The MS compiler doesn't call it 'long long', it uses __int64,
so a new #define, LONG_LONG, has been added and all occurrences
of 'long long' are replaced with it.
1998-08-25 16:07:15 +00:00