summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Removed fatal errors from Py_Initmodule4() (and thus fromGuido van Rossum1997-08-021-12/+12
| | | | | | | | | | | | Py_Initmodule(), which is a macro wrapper around it). The return value is now a NULL pointer if the initialization failed. This may make old modules fail with a SEGFAULT, since they don't expect this kind of failure. That's OK, since (a) it "never" happens, and (b) they would fail with a fatal error otherwise, anyway. Tons of extension modules should now check the return value of Py_Initmodule*() -- that's on my TODO list.
* Added finalization routines.Guido van Rossum1997-08-022-1/+44
|
* Add finialization routines; fixed some memory leaks related to this.Guido van Rossum1997-08-021-4/+35
| | | | Reset the SIGINT handler when the finalization is invoked.
* Free the malloc'ed buffer that holds the command once we're done with it.Guido van Rossum1997-08-021-2/+3
| | | | Instead of calling Py_Exit(sts), call Py_Cleanup() and return sts.
* Avoid function calls to access the current thread state and builtinsGuido van Rossum1997-08-021-4/+2
| | | | | -- the thread state is passed in as an argument and the builtins are a member thereof.
* Added internal routine PyString_Fini() which deletes all internedGuido van Rossum1997-08-021-0/+18
| | | | strings. For use in Py_Finalize() only.
* Mass checkin (more to follow for other directories).Guido van Rossum1997-08-027-98/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce truly separate (sub)interpreter objects. For now, these must be used by separate threads, created from C. See Demo/pysvr for an example of how to use this. This also rationalizes Python's initialization and finalization behavior: Py_Initialize() -- initialize the whole interpreter Py_Finalize() -- finalize the whole interpreter tstate = Py_NewInterpreter() -- create a new (sub)interpreter Py_EndInterpreter(tstate) -- delete a new (sub)interpreter There are also new interfaces relating to threads and the interpreter lock, which can be used to create new threads, and sometimes have to be used to manipulate the interpreter lock when creating or deleting sub-interpreters. These are only defined when WITH_THREAD is defined: PyEval_AcquireLock() -- acquire the interpreter lock PyEval_ReleaseLock() -- release the interpreter lock PyEval_AcquireThread(tstate) -- acquire the lock and make the thread current PyEval_ReleaseThread(tstate) -- release the lock and make NULL current Other administrative changes: - The header file bltinmodule.h is deleted. - The init functions for Import, Sys and Builtin are now internal and declared in pythonrun.h. - Py_Setup() and Py_Cleanup() are no longer declared. - The interpreter state and thread state structures are now linked together in a chain (the chain of interpreters is a static variable in pythonrun.c). - Some members of the interpreter and thread structures have new, shorter, more consistent, names. - Added declarations for _PyImport_{Find,Fixup}Extension() to import.h.
* Add cast to PyInt_AS_LONG macro, as suggested by Marc Lemburg.Guido van Rossum1997-08-021-1/+1
|
* Add cast to PyFloat_AS_DOUBLE macro, as suggested by Marc Lemburg.Guido van Rossum1997-08-021-1/+1
|
* Add a simple way to enable purify; now you can set the Make variableGuido van Rossum1997-08-021-1/+1
| | | | | PURIFY (e.g. in the Setup file or on the make command line) to point to the purify command, to run purify.
* Print ps (process status) for us when starting a new thread.Guido van Rossum1997-08-021-9/+40
| | | | | | | | | | Even less shuffling of stdout (only at start of new interpreter). Interact properly with new interpreter initialization conventions (must use Py_Initialize/Py_Finalize *and* Py_NewInterpreter/Py_EndInterpreter). Probably more minor changes.
* Functionality enhancement: allow other threads to use Tk commandsGuido van Rossum1997-08-021-243/+211
| | | | | | | | | | | | | | | | | | while one thread is blocked in mainloop(). Also, handle signals (not just interrupts) as soon as they happen. Cleanup: remove support for Tcl/Tk versions 7.4/4.0. (I've confirmed that it works for 7.5/4.1 and 7.6/4.2, as well as 8.0b2.) Coding style change: instead of ``func (args)'', write ``func(args)'' everywhere. Minor functionality change: use PyArg_ParseTuple everywhere. This should only affect the errors reported for bad argument lists; in particular, deletefilehandler() is much clearer about what's going on. (XXX Still to do: Mac and Win ports to 8.0b2.)
* Compatibility with Tcl/Tk 8.0b*.Guido van Rossum1997-08-011-14/+28
|
* Add definitions for symbolic constants LOCK_{EX,NB,SH,UN}.Guido van Rossum1997-07-311-0/+25
|
* Extend the "Don Beaudry hack" with "Guido's corollary" -- if the baseGuido van Rossum1997-07-311-10/+27
| | | | | class has a __class__ attribute, call that to create the new class. This allows us to write metaclasses purely in C!
* Added mimify docs (Sjoerd).Guido van Rossum1997-07-307-1/+159
|
* Mention decode_base64 in example.Guido van Rossum1997-07-301-1/+1
|
* l2h target: l2htut was listed twice and l2hapi was skipped. Fixed.Fred Drake1997-07-301-1/+1
|
* Final set of CW11 projects, before switch to CW Pro 1.Jack Jansen1997-07-2835-9518/+9931
|
* Finally plug the memory leak caused by syntax error (includingGuido van Rossum1997-07-271-1/+4
| | | | interactive EOF, which leaked *one* byte).
* Plugged a leak. (The same as the one plugged in compile.c -- forgotGuido van Rossum1997-07-261-0/+1
| | | | to free lnotab).
* Moved the special compile of getbuildno.o to ../Makefile.in.Guido van Rossum1997-07-251-8/+1
| | | | | A dummy getbuildno.o (with a number of 0) still gets built here, to make the library complete.
* Build getbuildno.o here, to adequately update it every time a newGuido van Rossum1997-07-251-1/+15
| | | | | | python executable is built. (It still won't reflect builds of the library only, but since the default make target builds the python executable, that's alright.)
* Use Py_NewInterpreter() and friends. Remove saving/restoring of std files.Guido van Rossum1997-07-251-22/+16
|
* Plug a leak in code_dealloc() (and reordered the deallocs to match theGuido van Rossum1997-07-251-3/+2
| | | | | | order of the variables in the declarations). Also removed an entry in the TODO list that's done.
* Tweaks by Lars Wirzenius to parse some more forms of illegal dates:Guido van Rossum1997-07-251-2/+5
| | | | | | | | the comma after the day name is optional if it is a recognized day name; and the date and month may be swapped. Thus, the following two test dates will now be parsed correctly: Thu, Feb 13 12:16:57 1992 Thu Feb 13 12:16:57 1992
* Added createmessage() -- Lars Wirzenius.Guido van Rossum1997-07-251-0/+26
|
* Patch by Lars Wirzenius to allow f.readline(length).Guido van Rossum1997-07-251-1/+4
|
* Bump up the version number. The date still needs to be set (Guido willFred Drake1997-07-252-2/+2
| | | | | have to do that one!), but at least the version will match the release version. (1.5a2 got skipped for this.)
* A couple of grammatical nits.Fred Drake1997-07-242-130/+164
| | | | | | | | | Re-sequenced the function descriptions so that the formatting is described before the assumption is made that the reader has a clue about the formatting. Moved examples to be closer to the functions being demonstrated. Added example of saferepr() result.
* Regenerated; __assert__ becomes assert.Guido van Rossum1997-07-231-1/+1
|
* Removed some variables that are used to exchange data between import.c andGuido van Rossum1997-07-213-14/+6
| | | | | | | | importdl.c: the MAXSUFFIXSIZE macro is now defined in importdl.h, and the modules dictionary is now passed using PyImport_GetModuleDict(). Also undefine USE_SHLIB for AIX -- in AIX 4.2 and up, dlfcn.h exists but we don't want to use it.
* Changed the patch level to 1.5a3, to avoid confusion with a2 (I'm notGuido van Rossum1997-07-191-1/+1
| | | | ready for a release yet).
* New test for generic Makefile.pre.inGuido van Rossum1997-07-194-0/+52
|
* Added description of the extend subdirectory.Guido van Rossum1997-07-191-0/+4
|
* For use with Misc/Makefile.pre.in, the libainstall target must installGuido van Rossum1997-07-191-0/+1
| | | | Modules/python.o.
* Adapted to the new build system.Guido van Rossum1997-07-191-23/+10
|
* Change libainstall again: need to install fewer files for "freeze";Guido van Rossum1997-07-191-4/+1
| | | | add Setup.local to list of installed files.
* frozenmain.c is now also in the library,Guido van Rossum1997-07-192-6/+2
| | | | with entry point Py_FrozenMain().
* Updated for new style build/install; much simpler!Guido van Rossum1997-07-192-11/+14
|
* Oops -- this contains frozen bytecode, but it was Python 1.4 bytecode!Guido van Rossum1997-07-191-7/+7
|
* Some improvements, e.g. -L/depot/... is not needed.Guido van Rossum1997-07-191-8/+5
|
* Added leading comment and security check.Guido van Rossum1997-07-191-5/+28
|
* Reformulate security check using getsockname().Guido van Rossum1997-07-191-3/+4
|
* Change security policy -- only accept requests from current host.Guido van Rossum1997-07-191-21/+9
|
* Removed old signature.Guido van Rossum1997-07-191-4/+0
|
* Updated description for embed; added pysvr.Guido van Rossum1997-07-191-1/+5
|
* New example of threaded embeddingGuido van Rossum1997-07-194-0/+505
|
* Updated the Makefile to work with the new build strategy.Guido van Rossum1997-07-191-19/+18
|
* Remove -s option and $PYTHONSUPPRESS environment variable.Guido van Rossum1997-07-191-11/+0
|