Commit Graph

5042 Commits

Author SHA1 Message Date
Guido van Rossum f7e6b4b388 Pretty much rewritten to fulfull several long-standing wishes:
-- The whole implementation is now more table-driven.

-- Unsigned integers.  Format characters 'B', 'H', 'I' and 'L'
mean unsigned byte, short, int and long.  For 'I' and 'L', the return
value is a Python long integer if a Python plain integer can't
represent the required range (note: this is dependent on the size of
the relevant C types only, not of the sign of the actual value).

-- A new format character 's' packs/unpacks a string.  When given a
count prefix, this is the size of the string, not a repeat count like
for the other format characters; e.g. '10s' means a single 10-byte
string, while '10c' means 10 characters.  For packing, the string is
truncated or padded with null bytes as appropriate to make it fit.
For unpacking, the resulting string always has exactly the specified
number of bytes.  As a special case, '0s' means a single, empty
string (while '0c' means 0 characters).

-- Various byte order options.  The first character of the format
string determines the byte order, size and alignment, as follows:

First character		Byte order		size and alignment

	'@'		native			native
	'='		native			standard
	'<'		little-endian		standard
	'>'		big-endian		standard
	'!'		network (= big-endian)	standard

If the first character is not one of these, '@' is assumed.

Native byte order is big-endian or little-endian, depending on the
host system (e.g. Motorola and Sun are big-endian; Intel and DEC are
little-endian).

Native size and alignment are determined using the C compiler's sizeof
expression.  This is always combined with native byte order.

Standard size and alignment are as follows: no alignment is required
for any type (so you have to use pad bytes); short is 2 bytes; int and
long are 4 bytes.  In this mode, there is no support for float and
double.

Note the difference between '@' and '=': both use native byte order,
but the size and alignment of the latter is standardized.

The form '!' is available for those poor souls who can't remember
whether network byte order is big-endian or little-endian.

There is no way to indicate non-native byte order (i.e. force
byte-swapping); use the appropriate choice of '<' or '>'.
1996-12-31 01:41:25 +00:00
Guido van Rossum b5846d7600 A different winning animation. 1996-12-30 16:45:14 +00:00
Guido van Rossum 408027ea46 Rename DEBUG macro to Py_DEBUG 1996-12-30 16:17:54 +00:00
Guido van Rossum a0dc1c4a61 Actually, *this* fixes the last bug. 1996-12-30 02:37:07 +00:00
Guido van Rossum 1b2b53a25d Considerably restructured. This fixes the one remaining bug. 1996-12-30 02:20:29 +00:00
Guido van Rossum 8de9f894e1 Solitaire game, like the one that comes with Windows. 1996-12-29 20:15:32 +00:00
Guido van Rossum c17a268398 Added support for RFC 850 style dates, as used by some HTTP servers
(such as Netscape-Commerce and CERN).

An example of a RFC 850 date: 'Wednesday, 18-Dec-96 21:00:00 GMT'

From: Chris Lawrence <quango@themall.net>
1996-12-27 15:42:35 +00:00
Guido van Rossum 178ff353e8 Fix bogus implementation of Group.bind().
Added unbind() to CanvasItem and Group classes.
1996-12-27 15:40:31 +00:00
Guido van Rossum 8371013f9a Added config(ure) method to Image class.
(Fred Drake)
1996-12-27 15:33:17 +00:00
Guido van Rossum 0b96b945b8 Change the default values for IntVar and DoubleVar to numbers (they
were strings, accidentally).
1996-12-27 15:30:20 +00:00
Guido van Rossum 671dc20efc Crude but effective hack to clear the parser cache every so often.
(Fred Drake.)
1996-12-27 15:26:15 +00:00
Guido van Rossum babab6869f Removed all traces of accessobject.c. 1996-12-25 19:22:49 +00:00
Roger E. Masse fbd1d74286 Renamed.
However: "cgensupport.h" is still present... otherwise I get
	maaaany type errors... not sure if this needs more attention.
1996-12-24 19:39:23 +00:00
Roger E. Masse cf284cc5db Test output for the gl C extension module. 1996-12-24 19:36:33 +00:00
Roger E. Masse 6da2953f1e gl is a *huge* module. This is a very simple test that insures that
all the modules attributes are present and creates a small criss-cross
window for 5 seconds (example from the documentation :-)  A more
comprehensive test would probably be useful... but maybe overkill.
1996-12-24 19:36:07 +00:00
Barry Warsaw fb817cd4a2 Output files
test_rotor.py: New test of the rotor module.

test_*: converted to the new test harness.  GvR note!  test_signal.py
works interatively (i.e. when verbose=1) but does not work inside the
test harness.  It must be a timing issue, but I haven't figured it out
yet.
1996-12-23 23:40:11 +00:00
Barry Warsaw 5e056bbb76 test_rotor.py: New test of the rotor module.
test_*: converted to the new test harness.  GvR note!  test_signal.py
works interatively (i.e. when verbose=1) but does not work inside the
test harness.  It must be a timing issue, but I haven't figured it out
yet.
1996-12-23 23:39:42 +00:00
Barry Warsaw aeb207c6b6 Reworked to check for memory problems (one potential found),
non-checked error return values, and where appropriate,
PyArg_ParseTuple() style argument parsing.

I also changed some function names and converted all malloc/free calls
to PyMem_NEW/PyMem_DEL.

Some stylistic changes and formatting standardization.
1996-12-23 23:36:24 +00:00
Barry Warsaw f308c0f1fc From reading the source, it turns out that the setkey() method can
take an optional string key, but if key is not given, the method does
nothing!  In the rewrite (see upcoming check-in), I left things this
way, but here I document that this is the case.
1996-12-23 23:34:17 +00:00
Jack Jansen f3dd5aab2f - CWGUSI has moved
- Changed instructions for Tcl 7.6/Tk 4.2
1996-12-23 17:29:51 +00:00
Jack Jansen a742d117db Added a chapter on using OSAXen 1996-12-23 17:28:53 +00:00
Jack Jansen a83caa0331 Added range of resource-ids for twit. 1996-12-23 17:23:23 +00:00
Jack Jansen c75e1d052b Added Application.cleanup method which asks all windows to close
themselves and returns true if they did.
1996-12-23 17:22:40 +00:00
Jack Jansen 81aa0e2888 Added gdbm (if USE_GDBM defined) 1996-12-23 17:21:20 +00:00
Jack Jansen b280e2bac2 Moved resources around to forestall conflicts with debuggee 1996-12-23 17:11:00 +00:00
Jack Jansen 3097463ef9 Added gdbm 1996-12-23 17:09:51 +00:00
Jack Jansen 83b17e8045 Added gdbm plugins, changed jpeg library to v6, various minor changes 1996-12-23 17:00:31 +00:00
Jack Jansen e1d325fb40 Added gdbm plugins 1996-12-23 16:56:19 +00:00
Jack Jansen 8bd7c56459 If sys.argv is empty ask for input file and output folder 1996-12-23 16:54:51 +00:00
Roger E. Masse f85f052035 Very very small comment change. 1996-12-20 22:39:24 +00:00
Roger E. Masse fab8ab8067 Many scripts, but small changes. Update the way the scripts obtain the
'verbose' flag ala GvR updated test harness architecture.

Old way:

	verbose = 0
	if __name__ == '__main__':
		verbose = 1

New way:

	from test_support import verbose

Some other small readablility and functionality updates.
1996-12-20 22:36:52 +00:00
Barry Warsaw 4b722788ae added test of the regex module
[NOTE: testall.py and autotest.py might could go away soon, I've
 played with Guido's new regrtest.py script and it seems to work well.
 I'll wait until Guido gives the word to completely switch over -- and
 change the Makefile too!]
1996-12-20 22:00:21 +00:00
Roger E. Masse 7f33e403a4 Renamed. 1996-12-20 21:56:08 +00:00
Barry Warsaw c357325663 Several changes. Test program to follow.
- Where optional arguments were being used, converted to
  PyArg_ParseTuple() style instead of nested PyArg_Parse() style.

- Check for and handle many potential error conditions that were never
  being tested.

- internal reg_* functions renamed to regobj_* (makes it easier to
  figure out which are global regex functions and which are for regex
  objects).

- reg_group (now regobj_group) was quite extensively reworked.  it no
  longer recurses to do its job (by factoring core functionality into
  a separate function that knows about string and integer indexes).

- some minor formatting fixes.

- regex_set_syntax() now invalidates the cache.  Without this change
  (in the example below), the second search would produce different
  output depending on whether the first search were performed or not
  (since performing the first search would cache the compiled object
  with RE_SYNTAX_EMACS, causing the second test to unexpectedly fail).

  regex.search('(a+)|(b+)', 'cdb')
  prev = regex.set_syntax(RE_SYNTAX_AWK)
  regex.search('(a+)|(b+)', 'cdb')
1996-12-20 21:56:07 +00:00
Roger E. Masse 4455cd8e19 More and better comments. 1996-12-20 21:52:29 +00:00
Roger E. Masse 3507f502c9 Minor semantic cleanup. 1996-12-20 21:47:58 +00:00
Roger E. Masse e9e0bd90ae Output for test script for the SGI imgfile module. 1996-12-20 21:42:09 +00:00
Roger E. Masse 033d91b784 Test script for the SGI imgfile module. 1996-12-20 21:41:50 +00:00
Roger E. Masse a141f8a31a Renamed. 1996-12-20 20:50:39 +00:00
Roger E. Masse 470dcbf8e3 8 bit greyscale test file needed for testing imageop and imgfile. 1996-12-20 20:50:10 +00:00
Roger E. Masse 47e98307e0 Test program for the SGI imageop module. 1996-12-20 20:49:06 +00:00
Roger E. Masse cfaac40e31 test output for SGI imageop C module. 1996-12-20 20:47:17 +00:00
Barry Warsaw fca8371e1f (python-cc-style): Added definitions for c-hanging-braces-alist which
make the most sense for PyMethodDef structures.  [one small fix]
1996-12-20 16:43:32 +00:00
Barry Warsaw 7607e8f4fb (python-cc-style): Added definitions for c-hanging-braces-alist which
make the most sense for PyMethodDef structures.
1996-12-20 16:42:04 +00:00
Guido van Rossum 0b25a662e0 Two new files (to shut up regrtest). 1996-12-20 03:14:42 +00:00
Guido van Rossum 4f30aff585 Added example DL for SGI IRIX. 1996-12-20 03:13:36 +00:00
Guido van Rossum 4fdb744f53 Added test for minmax. 1996-12-20 03:13:06 +00:00
Guido van Rossum 152494aea2 New regression test harness. See usage message / doc string. 1996-12-20 03:12:20 +00:00
Guido van Rossum 2bde783a97 Import verbose flag from test_support instead of testing __name__. 1996-12-20 03:03:39 +00:00
Guido van Rossum 0a94cc788e Set test_support.verbose to 0, to signal tests only to generate
portable output.
1996-12-20 03:03:01 +00:00