18396 Commits

Author SHA1 Message Date
Kurt B. Kaiser
96d8842237 Implement idle command interface as suggested by GvR [idle-dev] 16 July
****************
PyShell: Added functionality:

usage: idle.py [-c command] [-d] [-i] [-r script] [-s] [-t title] [arg] ...

idle file(s)    (without options) edit the file(s)

-c cmd     run the command in a shell
-d         enable the debugger
-i         open an interactive shell
-i file(s) open a shell and also an editor window for each file
-r script  run a file as a script in a shell
-s         run $IDLESTARTUP or $PYTHONSTARTUP before anything else
-t title   set title of shell window

Remaining arguments are applied to the command (-c) or script (-r).

******************
idles: Removed the idles script, not needed

******************
idle:  Removed the IdleConf references, not required anymore
2001-07-17 04:59:01 +00:00
Tim Peters
0eb4f3e994 Prepare Windows installer for 2.2a1. 2001-07-17 04:05:43 +00:00
Fred Drake
cf580c7ea1 Added tests for the new yield support in the parser module.
(Should be merged with descr branch.)
2001-07-17 03:01:29 +00:00
Fred Drake
02126f20b6 Add support for yield statements.
(Should be merged with descr branch.)
2001-07-17 02:59:15 +00:00
Jack Jansen
654c8db9a0 Typo in the classic mlte build line. 2001-07-16 22:04:08 +00:00
Jack Jansen
e85e4e43bd The TNXDraw gworld argument is optional. 2001-07-16 21:58:44 +00:00
Jack Jansen
e160fe13da It now works under Carbon. Under Classic the scrollbars don't show
up, for reasons unknown.
2001-07-16 21:57:50 +00:00
Tim Peters
861adac23e This has never worked on Windows. Now it does. If it breaks on Unix now,
great, it's your turn to watch it fail for months <0.9 wink>.
2001-07-16 20:49:49 +00:00
Barry Warsaw
95400a28e4 Updated the documentation in several respects:
- This module, despite its name, now should conform to RFC 2822, the
  update to RFC 822.

- This module doesn't just represent "email headers", but entire email
  messages.

- Added documentation for other useful public functions such as
  quote(), unquote(), praseaddr(), and dump_address_pair().
2001-07-16 20:47:58 +00:00
Barry Warsaw
06069330e3 test_basic(): Add a test for "person@dom.ain (User J. Person)" which
was already correctly parsed (contrary to a comment in Mailman).

test_rfc2822_phrases(): RFC 2822 now requires that we allow `.' in
phrases, which means we must accept dots in unquoted realname parts.
Add a test to check the change in rfc822.py 1.58.
2001-07-16 20:44:16 +00:00
Barry Warsaw
b8a55c00d5 Stoopid change, just to mention that the last checkin resolves SF bug
#437395
2001-07-16 20:41:40 +00:00
Barry Warsaw
9ec58aaef2 Fix address parsing to be RFC 2822 conformant. Specifically, dots are
now allowed in unquoted RealName areas (technically, they are defined
as "obsolete syntax" we MUST accept in phrases, as part of the
obs-phrase production).  Thus, parsing

    To: User J. Person <person@dom.ain>

correctly returns "User J. Person" as the RealName.

AddrlistClass.__init__(): Add definition of self.phraseends which is
just self.atomends with `.' removed.

getatom(): Add an optional argument `atomends' which, if None (the
default) means use self.atomends.

getphraselist(): Pass self.phraseends to getatom() and break out of
the loop only when the current character is in phraseends instead of
atomends.  This allows dots to continue to serve as atom delimiters in
all contexts except phrases.

Also, loads of docstring updates to document RFC 2822 conformance
(sorry, this should have been two separate patches).
2001-07-16 20:40:35 +00:00
Jack Jansen
84c10b13bb File handlers don't work on the mac, so don't pretend they do. I guess this is a 2.1.1 candidate, if it isn't too late for that. 2001-07-16 19:32:52 +00:00
Fred Drake
19ff4ac7e9 Add a unit test for sgmllib (needs work, but has already caught problems).
Based on the test for the HTMLParser module.
2001-07-16 18:52:40 +00:00
Fred Drake
14f6c18b62 Give more useful information about a failing PyUnit-style test. 2001-07-16 18:51:32 +00:00
Fred Drake
50bc19fce5 Remove a duplicate test. 2001-07-16 18:50:29 +00:00
Tim Peters
03813399cc Document doctest's generator-future hack. 2001-07-16 18:39:58 +00:00
Fred Drake
fb38c76e0f In CDATA mode, make sure entity-reference syntax is not interpreted;
entity references are not allowed in that mode.

Do a better job of scanning <!DOCTYPE ...> declarations; based on the
code in HTMLParser.py.
2001-07-16 18:30:35 +00:00
Guido van Rossum
e16c7aee4b jcompile(): inherit the CO_GENERATOR_ALLOWED flag from the 'base'
compiling struct.
2001-07-16 16:53:08 +00:00
Guido van Rossum
a1b3a47406 PyRun_StringFlags(): forgot to pass the flags on to
PyParser_SimpleParseString().  Now calls
PyParser_SimpleParseStringFlags() with the correct flag.
2001-07-16 16:51:33 +00:00
Thomas Wouters
1baac7201e Fix SF #441664: Python crash on del of a slice of a mmap
Check for slice/item deletion, which calls slice/item assignment with a NULL
value, and raise a TypeError instead of coredumping. Bugreport and suggested
fix by Alex Martelli.
2001-07-16 15:47:36 +00:00
Fred Drake
687a17deaa Revise the description of time.clock() so that it correctly describes the
Windows version of the function as well as the Unix flavor.

This fixes SF bug #441357.
2001-07-16 15:40:57 +00:00
Guido van Rossum
63a47402b3 Fix a mismatched parenthesis in the last patch. 2001-07-16 14:46:13 +00:00
Andrew M. Kuchling
ddeb1358a4 Use \longprogramopt, as suggested by FLD 2001-07-16 14:35:52 +00:00
Andrew M. Kuchling
286b107bea [Bug #441527] Fixes for preprocessor support, contributed by Tarn
Weisner Burton
2001-07-16 14:19:20 +00:00
Andrew M. Kuchling
ced2366a05 Use \verb for configure switches, because inside \code multiple dashes
are merged to a single hyphen.
Delete forgotten CVS conflict marker
2001-07-16 13:45:31 +00:00
Andrew M. Kuchling
2cd712b812 Write some entries in the "Other changes" section
Write description of .encode()/.decode for the Unicode section
Bump version number
2001-07-16 13:39:08 +00:00
Kurt B. Kaiser
d65ca7231a Added installation instructions.
Added a patch which modifies idlefork so that it can co-exist with
"official" IDLE in the site-packages directory. This patch is not
necessary if only idlefork IDLE is installed. See INSTALLATION for further
details.
2001-07-16 07:08:20 +00:00
Kurt B. Kaiser
91e476f297 Add a script "idles" which opens a Python Shell window.
The default behaviour of idlefork idle is to open an editor window instead
of a shell. Complex expressions may be run in a fresh environment by
selecting "run".  There are times, however, when a shell is desired.
Though one can be started by "idle -t 'foo'", this script is more
convenient.  In addition, a shell and an editor window can be started
in parallel by "idles -e foo.py".
2001-07-16 05:50:45 +00:00
Tim Peters
fe2127d3cb Ugly. A pile of new xxxFlags() functions, to communicate to the parser
that 'yield' is a keyword.  This doesn't help test_generators at all!  I
don't know why not.  These things do work now (and didn't before this
patch):

1. "from __future__ import generators" now works in a native shell.

2. Similarly "python -i xxx.py" now has generators enabled in the
   shell if xxx.py had them enabled.

3. This program (which was my doctest proxy) works fine:

from __future__ import generators

source = """\
def f():
    yield 1
"""

exec compile(source, "", "single") in globals()
print type(f())
2001-07-16 05:37:24 +00:00
Kurt B. Kaiser
e75785a646 Call out IDLE Fork in startup message. 2001-07-16 05:25:12 +00:00
Kurt B. Kaiser
21ebb211df Add a script "idles" which opens a Python Shell window.
The default behaviour of idlefork idle is to open an editor window instead
of a shell. Complex expressions may be run in a fresh environment by
selecting "run".  There are times, however, when a shell is desired.
Though one can be started by "idle -t 'foo'", this script is more
convenient.  In addition, a shell and an editor window can be started
in parallel by "idles -e foo.py".
2001-07-16 04:00:10 +00:00
Tim Peters
51d76f1f75 future.c: insert a cosmetic space.
pythonrun.c, run_pyc_file():  repair semantic error wrt CO_GENERATOR vs
CO_GENERATOR_ALLOWED.
2001-07-16 03:11:48 +00:00
Tim Peters
5ba5866281 Part way to allowing "from __future__ import generators" to communicate
that info to code dynamically compiled *by* code compiled with generators
enabled.  Doesn't yet work because there's still no way to tell the parser
that "yield" is OK (unlike nested_scopes, the parser has its fingers in
this too).
Replaced PyEval_GetNestedScopes by a more-general
PyEval_MergeCompilerFlags.  Perhaps I should not have?  I doubted it was
*intended* to be part of the public API, so just did.
2001-07-16 02:29:45 +00:00
Andrew M. Kuchling
4dbf87152e Began actually writing:
* iterators
* generators
* copied the nested scopes section from the 2.1 article
* standard library changes
2001-07-16 02:17:14 +00:00
Guido van Rossum
b09f7ed623 Preliminary support for "from __future__ import generators" to enable
the yield statement.  I figure we have to have this in before I can
release 2.2a1 on Wednesday.

Note: test_generators is currently broken, I'm counting on Tim to fix
this.
2001-07-15 21:08:29 +00:00
Tim Peters
045ca7ae72 Remove redundant include of assert.h. 2001-07-15 19:42:03 +00:00
Tim Peters
0d5dd68692 Python.h: Don't attempt to redefine NDEBUG if it's already defined.
Others:  Remove redundant includes of assert.h.
2001-07-15 18:38:47 +00:00
Guido van Rossum
b2c075bec4 Define NDEBUG when Py_DEBUG undefined, to disable the assert macro. 2001-07-15 16:58:05 +00:00
Tim Peters
586b2e3f3d long_format: Simplify the overly elaborate base-is-a-power-of-2 code. 2001-07-15 09:11:14 +00:00
Andrew M. Kuchling
881fd90fd6 [Bug #438050] Check for sys/poll.h in configure script 2001-07-14 20:55:52 +00:00
Andrew M. Kuchling
737fbb340e [Bug #438050]
Include sys/poll.h if it was found by the configure script.  The OpenGroup
   spec says poll.h is the correct header file to use, so that file is
   preferred.
2001-07-14 20:54:37 +00:00
Andrew M. Kuchling
5a76c44181 Fix bug #417212: "curses.newwin can return pads" by changing the Python
newwin() wrapper to always return a window, and never a pad.  This makes
   the code match the documentation.
2001-07-14 20:38:30 +00:00
Andrew M. Kuchling
9eb27a89d8 Fix bug #437487: "2.1 build on Solaris fails if CC is set"
by adding the contents of CCSHARED to the compiler specified by CC
2001-07-14 20:28:10 +00:00
Guido van Rossum
3c29602d74 _Py_GetObjects(): GCC suggests to add () around && within || for some
code only compiled in debug mode, and I dutifully comply.
2001-07-14 17:58:00 +00:00
Kurt B. Kaiser
0765976cc4 tabnanny and pyclbr are now found in /Lib 2001-07-14 17:06:13 +00:00
Kurt B. Kaiser
03b75dc007 Remove, was retained for 1.5.2 support 2001-07-14 16:29:46 +00:00
Jack Jansen
177200959b Minimal text editor using MLTE (code based on wed.py, the waste demo).
It's sort-of starting to work, but there's still problems with redraws and
with resizing the window.
2001-07-14 14:02:21 +00:00
Jack Jansen
f0ded2f0bc Various small fixes. The demo now starts to limp along. 2001-07-14 14:00:50 +00:00
Jack Jansen
e1608529d1 The constants for MLTE. 2001-07-14 13:59:47 +00:00