For the benefit of SunOS 4.1.4, define MS_SYNC as 0 when it's
undefined. ccording to MvL, this is safe: the MS_SYNC flag means that
msync() returns when all I/O operations are scheduled; without it, it
waits until they are complete, which is acceptable behavior.
Fredrik Lundh [Mon, 25 Sep 2000 08:07:06 +0000 (08:07 +0000)]
unicode database compression, step 2:
- fixed attributions
- moved decomposition data to a separate table, in preparation
for step 3 (which won't happen before 2.0 final, promise!)
- use relative paths in the generator script
I have a lot more stuff in the works for 2.1, but let's leave
that for another day...
Tim Peters [Mon, 25 Sep 2000 07:13:41 +0000 (07:13 +0000)]
Fiddled w/ /F's cool new splitbins function: documented it, generalized it
a bit, sped it a lot primarily by removing the unused assumption that None was
a legit bin entry (the function doesn't really need to assume that there's
anything special about 0), added an optional "trace" argument, and in __debug__
mode added exhaustive verification that the decomposition is both correct and
doesn't overstep any array bounds (which wasn't obvious to me from staring at the
generated C code -- now I feel safe!). Did not commit a new unicodedata_db.h, as
the one produced by this version is identical to the one already checked in.
Added a bunch of missing "=" signs in the option table.
Removed script options -- don't think they ever worked, weren't
very well thought through, etc.
Fixed some bugs and mis-features in handling config files:
* options can now be spelled "foo-bar" or "foo_bar" (handled in
'parse_config_files()', just after we parse a file)
* added a "[global]" section so there's a place to set global
options like verbose/quiet and dry-run
* respect the "negative alias" dictionary so (eg.) "quiet=1" is
the same as "verbose=0" (this had to be done twice: once in
'parse_config_file()' for global options, and once in
'_set_command_options()' for per-command options)
* the other half of handling boolean options correctly: allow
commands to list their boolean options in a 'boolean_options'
class attribute, and use it to translate strings (like "yes", "1",
"no", "0", etc) to true or false
Jack Jansen [Sun, 24 Sep 2000 22:00:11 +0000 (22:00 +0000)]
Handle the ****/**** appleevent wildcard when called as a main program, so that it becomes a handy debugging tool (BuildApplet, copy aete resource, apply applescript to it).
Jack Jansen [Sun, 24 Sep 2000 21:56:43 +0000 (21:56 +0000)]
Added a workaround for shortcomings in the OSA support: there can be class/property conflicts and passing classes as arguments doesn't work. The package now seems to work.
Martin v. Löwis [Sun, 24 Sep 2000 21:31:06 +0000 (21:31 +0000)]
[Patch 101634]
xml.sax: Fix parse and parseString not to rely on ExpatParser
Greatly simplify import logic by using __import__
saxutils: Support Unicode strings and files as parameters to
prepare_input_source
Martin v. Löwis [Sun, 24 Sep 2000 19:40:25 +0000 (19:40 +0000)]
If dbopen is not in libc, checking whether it is in libdb will fail if
db_185.h has renamed that function to __db185_open, which it does in DB 3.1.
So don't check whether the function is in -ldb.
Fredrik Lundh [Sun, 24 Sep 2000 18:51:25 +0000 (18:51 +0000)]
- Improved handling of win32 proxy settings (addresses bug #114256).
The earlier code assumed "protocol=host;protocol=host;..." or "host",
but Windows may also use "protocol=host" (just one entry), as well as
"protocol://host". This code needs some more work, so I'll leave the
bug open for now.
Lars Gustäbel [Sun, 24 Sep 2000 10:53:31 +0000 (10:53 +0000)]
Bug fix to namespace handling in XMLGenerator (now adds declarations).
Bug fixes to XMLFilterBase (wrong ignorableWhitespace signature and
did not inherit set*Handler methods from XMLReader.)
Fred Drake [Sat, 23 Sep 2000 04:55:48 +0000 (04:55 +0000)]
Change the name of the exception from "pyexpat.error" to
"xml.parsers.expat.error", so it will reflect the public name of the
exception rather than the internal name.
Also change some of the initialization to use the new PyModule_Add*()
convenience functions.
Tim Peters [Sat, 23 Sep 2000 03:39:17 +0000 (03:39 +0000)]
Fix for SF bug 110624: float literals behave inconsistently.
I fixed the specific complaint but left the (many) large issues untouched.
See the (very long) bug report discussion for why:
http://sourceforge.net/bugs/?func=detailbug&group_id=5470&bug_id=110624
Note that while I left the interface to the undocumented public API function
PyFloat_FromString alone, its 2nd argument is useless. From a comment block
in the code:
RED_FLAG 22-Sep-2000 tim
PyFloat_FromString's pend argument is braindead. Prior to this RED_FLAG,
1. If v was a regular string, *pend was set to point to its terminating
null byte. That's useless (the caller can find that without any
help from this function!).
2. If v was a Unicode string, or an object convertible to a character
buffer, *pend was set to point into stack trash (the auto temp
vector holding the character buffer). That was downright dangerous.
Since we can't change the interface of a public API function, pend is
still supported but now *officially* useless: if pend is not NULL,
*pend is set to NULL.
Fred Drake [Sat, 23 Sep 2000 03:24:27 +0000 (03:24 +0000)]
Andrew Kuchling <akuchlin@mems-exchange.org>:
Add three new convenience functions to the PyModule_*() family:
PyModule_AddObject(), PyModule_AddIntConstant(), PyModule_AddStringConstant().
Fred Drake [Fri, 22 Sep 2000 17:05:04 +0000 (17:05 +0000)]
use_sans_serif(),
use_italics(): Remove both functions, inlining use_italics() at its
only call site.
init_myformat(): Uncomment line so that some internal markup does not
get generated, since it is not properly removed later.
(Fix on aspect of SourceForge bug #114749.)
Modified call to process_commands_wrap_deferred(), removing \code from
the list since it had a bad interaction with other changes in some contexts.
Address Bug #115057: add a --with-suffix option to set the EXE
variable in the Makefiles from the configure script. Usefil for
Cygwin and Mac OS X builds.
Neil Schemenauer [Fri, 22 Sep 2000 15:26:20 +0000 (15:26 +0000)]
- Add test for new SAVEALL debugging flag
- Use exceptions rather than asserts for failing tests.
- Reorganize tests and produce some output if verbose option is set.
Neil Schemenauer [Fri, 22 Sep 2000 15:22:38 +0000 (15:22 +0000)]
- Add DEBUG_SAVEALL option. When enabled all garbage objects found by the
collector will be saved in gc.garbage. This is useful for debugging a
program that creates reference cycles.
- Fix else statements in gcmodule.c to conform to Python coding standards.
Tim Peters [Fri, 22 Sep 2000 10:05:54 +0000 (10:05 +0000)]
Implemented new os.startfile function, unique to Windows, exposing a
subset of Win32 ShellExecute's functionality. Guido wants this because
IDLE's Help -> Docs function currently crashes his machine because of a
conflict between his version of Norton AntiVirus (6.10.20) and MS's
_popen. Docs for startfile are being mailed to Fred (or just read the
docstring -- it tells the whole story).
Changed webbrowser.py to use os.startfile instead of os.popen on Windows.
Changed IDLE's EditorWindow.py to pass an absolute path for the docs
(hardcoding ShellExecute's "directory" arg to "." as used to be done let
IDLE work, but made the startfile command exceedingly obscure for other
uses -- the MS docs are terrible, of course, & still not sure I
understand it).
Note that Windows Python must link with shell32.lib now! That's where
ShellExecute lives.
Tweak what happens when run on non-Windows platforms: set install prefix
as well as scheme, and don't convert all installation paths (that's now
done by the "install" command for us).
Changed all paths in the INSTALL_SCHEMES dict to Unix syntax, and added
'convert_paths()' method to convert them all to the local syntax (backslash
or colon or whatever) at the appropriate time.
Added SCHEME_KEYS to get rid of one hard-coded list of attributes (in
'select_scheme()').
Default 'install_path_file' to true, and never set it false (it's just
there in case some outsider somewhere wants to disable installation of the
.pth file for whatever reason).
Toned down the warning emitted when 'install_path_file' is false, since we
no longer know why it might be false.
Added 'warn_dir' flag to suppress warning when installing to a directory
not in sys.path (again, we never set this false -- it's there for outsiders
to use, specifically the "bdist_*" commands).
Pulled the loop of 'change_root()' calls out to new method 'change_roots()'.
Fix 'convert_path()' so it returns immediately under Unix -- prevents blowing
up when the pathname starts with '/', which is needed when converting
installation directories in the "install" command.
Fred Drake [Thu, 21 Sep 2000 22:27:16 +0000 (22:27 +0000)]
Denis S. Otkidach <ods@users.sourceforge.net>:
Show how code can be written to handle __getslice__ & friends in a way that
is compatible with pre-2.0 versions of Python while still working with the
"new" way of handling slicing.
Untested patch by Ty Sarna to make TELL64 work on older NetBSD systems.
According to Justin Pettit, this also works on OpenBSD, so I've added
that symbol as well.