| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
- 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().
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
#437395
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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).
|
|
|
|
| |
is a 2.1.1 candidate, if it isn't too late for that.
|
|
|
|
| |
Based on the test for the HTMLParser module.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
entity references are not allowed in that mode.
Do a better job of scanning <!DOCTYPE ...> declarations; based on the
code in HTMLParser.py.
|
|
|
|
| |
compiling struct.
|
|
|
|
|
| |
PyParser_SimpleParseString(). Now calls
PyParser_SimpleParseStringFlags() with the correct flag.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Windows version of the function as well as the Unix flavor.
This fixes SF bug #441357.
|
| |
|
| |
|
|
|
|
| |
Weisner Burton
|
|
|
|
|
| |
are merged to a single hyphen.
Delete forgotten CVS conflict marker
|
|
|
|
|
| |
Write description of .encode()/.decode for the Unicode section
Bump version number
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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())
|
| |
|
|
|
|
|
|
|
|
|
| |
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".
|
|
|
|
|
| |
pythonrun.c, run_pyc_file(): repair semantic error wrt CO_GENERATOR vs
CO_GENERATOR_ALLOWED.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
* iterators
* generators
* copied the nested scopes section from the 2.1 article
* standard library changes
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
Others: Remove redundant includes of assert.h.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
newwin() wrapper to always return a window, and never a pad. This makes
the code match the documentation.
|
|
|
|
| |
by adding the contents of CCSHARED to the compiler specified by CC
|
|
|
|
| |
code only compiled in debug mode, and I dutifully comply.
|
| |
|
| |
|
|
|
|
|
| |
It's sort-of starting to work, but there's still problems with redraws and
with resizing the window.
|
| |
|
| |
|
|
|
|
|
| |
long_format can reuse a scratch area for its repeated divisions (instead
of malloc/free for every digit produced); speeds str(long)/repr(long).
|
| |
|
|
|
|
|
| |
this module slightly more resiliant in the face of XHTML input, or just
colons in attribute names.
|
|
|
|
|
|
| |
copy the Idle help.txt file.
Ref SF Python Patch 422471
|
|
|
|
|
| |
"Make copy, cut and paste events case insensitive. Reported by Patrick
K. O'Brien on idle-dev. (Should other bindings follow suit?)" --GvR
|
|
|
|
|
|
|
| |
"Move the action of loading the configuration to the IdleConf module
rather than the idle.py script. This has advantages and
disadvantages; the biggest advantage being that we can more easily
have an alternative main program." --GvR
|
|
|
|
|
| |
"Quick update to the extension mechanism (extend.py is gone, long live
config.txt)" --GvR
|
|
|
|
|
| |
"Refactored, with some future plans in mind. This now uses the new
gotofileline() method defined in FileList.py" --GvR
|