Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
cpython
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Batuhan Osman TASKAYA
cpython
Commits
172bb394
Unverified
Kaydet (Commit)
172bb394
authored
Mar 30, 2019
tarafından
Serhiy Storchaka
Kaydeden (comit)
GitHub
Mar 30, 2019
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
bpo-22831: Use "with" to avoid possible fd leaks in tools (part 2). (GH-10927)
üst
afbb7a37
Hide whitespace changes
Inline
Side-by-side
Showing
27 changed files
with
248 additions
and
258 deletions
+248
-258
markov.py
Tools/demo/markov.py
+3
-3
rpython.py
Tools/demo/rpython.py
+11
-12
rpythond.py
Tools/demo/rpythond.py
+10
-10
checkextensions_win32.py
Tools/freeze/checkextensions_win32.py
+2
-1
freeze.py
Tools/freeze/freeze.py
+2
-1
pygettext.py
Tools/i18n/pygettext.py
+2
-3
cleanfuture.py
Tools/scripts/cleanfuture.py
+7
-8
combinerefs.py
Tools/scripts/combinerefs.py
+5
-4
dutree.py
Tools/scripts/dutree.py
+11
-11
eptags.py
Tools/scripts/eptags.py
+19
-18
finddiv.py
Tools/scripts/finddiv.py
+11
-11
fixnotice.py
Tools/scripts/fixnotice.py
+8
-12
fixps.py
Tools/scripts/fixps.py
+9
-11
get-remote-certificate.py
Tools/scripts/get-remote-certificate.py
+6
-9
h2py.py
Tools/scripts/h2py.py
+19
-20
ifdef.py
Tools/scripts/ifdef.py
+2
-3
md5sum.py
Tools/scripts/md5sum.py
+4
-4
mkreal.py
Tools/scripts/mkreal.py
+7
-8
nm2def.py
Tools/scripts/nm2def.py
+3
-2
objgraph.py
Tools/scripts/objgraph.py
+2
-1
parseentities.py
Tools/scripts/parseentities.py
+9
-7
pathfix.py
Tools/scripts/pathfix.py
+21
-23
pdeps.py
Tools/scripts/pdeps.py
+22
-23
ptags.py
Tools/scripts/ptags.py
+19
-18
rgrep.py
Tools/scripts/rgrep.py
+24
-23
gencjkcodecs.py
Tools/unicode/gencjkcodecs.py
+2
-1
gencodec.py
Tools/unicode/gencodec.py
+8
-11
No files found.
Tools/demo/markov.py
Dosyayı görüntüle @
172bb394
...
...
@@ -78,9 +78,9 @@ def test():
continue
else
:
f
=
open
(
filename
,
'r'
)
if
debug
:
print
(
'processing'
,
filename
,
'...'
)
text
=
f
.
read
(
)
f
.
close
()
with
f
:
if
debug
:
print
(
'processing'
,
filename
,
'...'
)
text
=
f
.
read
()
paralist
=
text
.
split
(
'
\n\n
'
)
for
para
in
paralist
:
if
debug
>
1
:
print
(
'feeding ...'
)
...
...
Tools/demo/rpython.py
Dosyayı görüntüle @
172bb394
...
...
@@ -22,17 +22,16 @@ def main():
port
=
int
(
port
[
i
+
1
:])
host
=
host
[:
i
]
command
=
' '
.
join
(
sys
.
argv
[
2
:])
s
=
socket
(
AF_INET
,
SOCK_STREAM
)
s
.
connect
((
host
,
port
))
s
.
send
(
command
.
encode
())
s
.
shutdown
(
SHUT_WR
)
reply
=
b
''
while
True
:
data
=
s
.
recv
(
BUFSIZE
)
if
not
data
:
break
reply
+=
data
print
(
reply
.
decode
(),
end
=
' '
)
s
.
close
()
with
socket
(
AF_INET
,
SOCK_STREAM
)
as
s
:
s
.
connect
((
host
,
port
))
s
.
send
(
command
.
encode
())
s
.
shutdown
(
SHUT_WR
)
reply
=
b
''
while
True
:
data
=
s
.
recv
(
BUFSIZE
)
if
not
data
:
break
reply
+=
data
print
(
reply
.
decode
(),
end
=
' '
)
main
()
Tools/demo/rpythond.py
Dosyayı görüntüle @
172bb394
...
...
@@ -26,16 +26,16 @@ def main():
s
.
listen
(
1
)
while
True
:
conn
,
(
remotehost
,
remoteport
)
=
s
.
accept
()
print
(
'connection from'
,
remotehost
,
remoteport
)
request
=
b
''
while
1
:
data
=
conn
.
recv
(
BUFSIZE
)
if
not
data
:
break
request
+=
data
reply
=
execute
(
request
.
decode
())
conn
.
send
(
reply
.
en
code
())
conn
.
close
(
)
with
conn
:
print
(
'connection from'
,
remotehost
,
remoteport
)
request
=
b
''
while
1
:
data
=
conn
.
recv
(
BUFSIZE
)
if
not
data
:
break
request
+=
data
reply
=
execute
(
request
.
de
code
())
conn
.
send
(
reply
.
encode
()
)
def
execute
(
request
):
stdout
=
sys
.
stdout
...
...
Tools/freeze/checkextensions_win32.py
Dosyayı görüntüle @
172bb394
...
...
@@ -130,7 +130,8 @@ def parse_dsp(dsp):
ret
=
[]
dsp_path
,
dsp_name
=
os
.
path
.
split
(
dsp
)
try
:
lines
=
open
(
dsp
,
"r"
)
.
readlines
()
with
open
(
dsp
,
"r"
)
as
fp
:
lines
=
fp
.
readlines
()
except
IOError
as
msg
:
sys
.
stderr
.
write
(
"
%
s:
%
s
\n
"
%
(
dsp
,
msg
))
return
None
...
...
Tools/freeze/freeze.py
Dosyayı görüntüle @
172bb394
...
...
@@ -142,7 +142,8 @@ def main():
# last option can not be "-i", so this ensures "pos+1" is in range!
if
sys
.
argv
[
pos
]
==
'-i'
:
try
:
options
=
open
(
sys
.
argv
[
pos
+
1
])
.
read
()
.
split
()
with
open
(
sys
.
argv
[
pos
+
1
])
as
infp
:
options
=
infp
.
read
()
.
split
()
except
IOError
as
why
:
usage
(
"File name '
%
s' specified with the -i option "
"can not be read -
%
s"
%
(
sys
.
argv
[
pos
+
1
],
why
)
)
...
...
Tools/i18n/pygettext.py
Dosyayı görüntüle @
172bb394
...
...
@@ -561,9 +561,8 @@ def main():
# initialize list of strings to exclude
if
options
.
excludefilename
:
try
:
fp
=
open
(
options
.
excludefilename
)
options
.
toexclude
=
fp
.
readlines
()
fp
.
close
()
with
open
(
options
.
excludefilename
)
as
fp
:
options
.
toexclude
=
fp
.
readlines
()
except
IOError
:
print
(
_
(
"Can't read --exclude-file:
%
s"
)
%
options
.
excludefilename
,
file
=
sys
.
stderr
)
...
...
Tools/scripts/cleanfuture.py
Dosyayı görüntüle @
172bb394
...
...
@@ -96,11 +96,11 @@ def check(file):
errprint
(
"
%
r: I/O Error:
%
s"
%
(
file
,
str
(
msg
)))
return
ff
=
FutureFinder
(
f
,
file
)
changed
=
ff
.
run
(
)
if
changed
:
ff
.
gettherest
()
f
.
close
()
with
f
:
ff
=
FutureFinder
(
f
,
file
)
changed
=
ff
.
run
()
if
changed
:
ff
.
gettherest
()
if
changed
:
if
verbose
:
print
(
"changed."
)
...
...
@@ -122,9 +122,8 @@ def check(file):
os
.
rename
(
file
,
bak
)
if
verbose
:
print
(
"renamed"
,
file
,
"to"
,
bak
)
g
=
open
(
file
,
"w"
)
ff
.
write
(
g
)
g
.
close
()
with
open
(
file
,
"w"
)
as
g
:
ff
.
write
(
g
)
if
verbose
:
print
(
"wrote new"
,
file
)
else
:
...
...
Tools/scripts/combinerefs.py
Dosyayı görüntüle @
172bb394
...
...
@@ -85,9 +85,7 @@ def read(fileiter, pat, whilematch):
else
:
break
def
combine
(
fname
):
f
=
open
(
fname
)
def
combinefile
(
f
):
fi
=
iter
(
f
)
for
line
in
read
(
fi
,
re
.
compile
(
r'^Remaining objects:$'
),
False
):
...
...
@@ -121,8 +119,11 @@ def combine(fname):
print
(
'[
%
s->
%
s]'
%
(
addr2rc
[
addr
],
rc
),
end
=
' '
)
print
(
guts
,
addr2guts
[
addr
])
f
.
close
()
print
(
"
%
d objects before,
%
d after"
%
(
before
,
after
))
def
combine
(
fname
):
with
open
(
fname
)
as
f
:
combinefile
(
f
)
if
__name__
==
'__main__'
:
combine
(
sys
.
argv
[
1
])
Tools/scripts/dutree.py
Dosyayı görüntüle @
172bb394
...
...
@@ -4,18 +4,18 @@
import
os
,
sys
,
errno
def
main
():
p
=
os
.
popen
(
'du '
+
' '
.
join
(
sys
.
argv
[
1
:]),
'r'
)
total
,
d
=
None
,
{}
for
line
in
p
.
readlines
():
i
=
0
while
line
[
i
]
in
'0123456789'
:
i
=
i
+
1
size
=
eval
(
line
[:
i
])
while
line
[
i
]
in
'
\t
'
:
i
=
i
+
1
filename
=
line
[
i
:
-
1
]
comps
=
filename
.
split
(
'/'
)
if
comps
[
0
]
==
''
:
comps
[
0
]
=
'/'
if
comps
[
len
(
comps
)
-
1
]
==
''
:
del
comps
[
len
(
comps
)
-
1
]
total
,
d
=
store
(
size
,
comps
,
total
,
d
)
with
os
.
popen
(
'du '
+
' '
.
join
(
sys
.
argv
[
1
:]))
as
p
:
for
line
in
p
:
i
=
0
while
line
[
i
]
in
'0123456789'
:
i
=
i
+
1
size
=
eval
(
line
[:
i
])
while
line
[
i
]
in
'
\t
'
:
i
=
i
+
1
filename
=
line
[
i
:
-
1
]
comps
=
filename
.
split
(
'/'
)
if
comps
[
0
]
==
''
:
comps
[
0
]
=
'/'
if
comps
[
len
(
comps
)
-
1
]
==
''
:
del
comps
[
len
(
comps
)
-
1
]
total
,
d
=
store
(
size
,
comps
,
total
,
d
)
try
:
display
(
total
,
d
)
except
IOError
as
e
:
...
...
Tools/scripts/eptags.py
Dosyayı görüntüle @
172bb394
...
...
@@ -28,29 +28,30 @@ def treat_file(filename, outfp):
except
OSError
:
sys
.
stderr
.
write
(
'Cannot open
%
s
\n
'
%
filename
)
return
charno
=
0
lineno
=
0
tags
=
[]
size
=
0
while
1
:
line
=
fp
.
readline
()
if
not
line
:
break
lineno
=
lineno
+
1
m
=
matcher
.
search
(
line
)
if
m
:
tag
=
m
.
group
(
0
)
+
'
\177
%
d,
%
d
\n
'
%
(
lineno
,
charno
)
tags
.
append
(
tag
)
size
=
size
+
len
(
tag
)
charno
=
charno
+
len
(
line
)
with
fp
:
charno
=
0
lineno
=
0
tags
=
[]
size
=
0
while
1
:
line
=
fp
.
readline
()
if
not
line
:
break
lineno
=
lineno
+
1
m
=
matcher
.
search
(
line
)
if
m
:
tag
=
m
.
group
(
0
)
+
'
\177
%
d,
%
d
\n
'
%
(
lineno
,
charno
)
tags
.
append
(
tag
)
size
=
size
+
len
(
tag
)
charno
=
charno
+
len
(
line
)
outfp
.
write
(
'
\f\n
%
s,
%
d
\n
'
%
(
filename
,
size
))
for
tag
in
tags
:
outfp
.
write
(
tag
)
def
main
():
outfp
=
open
(
'TAGS'
,
'w'
)
for
filename
in
sys
.
argv
[
1
:]:
treat_file
(
filename
,
outfp
)
with
open
(
'TAGS'
,
'w'
)
as
outfp
:
for
filename
in
sys
.
argv
[
1
:]:
treat_file
(
filename
,
outfp
)
if
__name__
==
"__main__"
:
main
()
Tools/scripts/finddiv.py
Dosyayı görüntüle @
172bb394
...
...
@@ -55,17 +55,17 @@ def process(filename, listnames):
except
IOError
as
msg
:
sys
.
stderr
.
write
(
"Can't open:
%
s
\n
"
%
msg
)
return
1
g
=
tokenize
.
generate_tokens
(
fp
.
readline
)
lastrow
=
None
for
type
,
token
,
(
row
,
col
),
end
,
line
in
g
:
if
token
in
(
"/"
,
"/="
)
:
if
listnames
:
print
(
filename
)
break
if
row
!=
lastrow
:
lastrow
=
row
print
(
"
%
s:
%
d:
%
s"
%
(
filename
,
row
,
line
),
end
=
' '
)
fp
.
close
(
)
with
fp
:
g
=
tokenize
.
generate_tokens
(
fp
.
readline
)
lastrow
=
None
for
type
,
token
,
(
row
,
col
),
end
,
line
in
g
:
if
token
in
(
"/"
,
"/="
)
:
if
listnames
:
print
(
filename
)
break
if
row
!=
lastrow
:
lastrow
=
row
print
(
"
%
s:
%
d:
%
s"
%
(
filename
,
row
,
line
),
end
=
' '
)
def
processdir
(
dir
,
listnames
):
try
:
...
...
Tools/scripts/fixnotice.py
Dosyayı görüntüle @
172bb394
...
...
@@ -73,22 +73,19 @@ def main():
elif
opt
==
'--dry-run'
:
DRYRUN
=
1
elif
opt
==
'--oldnotice'
:
fp
=
open
(
arg
)
OLD_NOTICE
=
fp
.
read
()
fp
.
close
()
with
open
(
arg
)
as
fp
:
OLD_NOTICE
=
fp
.
read
()
elif
opt
==
'--newnotice'
:
fp
=
open
(
arg
)
NEW_NOTICE
=
fp
.
read
()
fp
.
close
()
with
open
(
arg
)
as
fp
:
NEW_NOTICE
=
fp
.
read
()
for
arg
in
args
:
process
(
arg
)
def
process
(
file
):
f
=
open
(
file
)
data
=
f
.
read
()
f
.
close
()
with
open
(
file
)
as
f
:
data
=
f
.
read
()
i
=
data
.
find
(
OLD_NOTICE
)
if
i
<
0
:
if
VERBOSE
:
...
...
@@ -102,9 +99,8 @@ def process(file):
data
=
data
[:
i
]
+
NEW_NOTICE
+
data
[
i
+
len
(
OLD_NOTICE
):]
new
=
file
+
".new"
backup
=
file
+
".bak"
f
=
open
(
new
,
"w"
)
f
.
write
(
data
)
f
.
close
()
with
open
(
new
,
"w"
)
as
f
:
f
.
write
(
data
)
os
.
rename
(
file
,
backup
)
os
.
rename
(
new
,
file
)
...
...
Tools/scripts/fixps.py
Dosyayı görüntüle @
172bb394
...
...
@@ -14,20 +14,18 @@ def main():
except
IOError
as
msg
:
print
(
filename
,
': can
\'
t open :'
,
msg
)
continue
line
=
f
.
readline
()
if
not
re
.
match
(
'^#! */usr/local/bin/python'
,
line
):
print
(
filename
,
': not a /usr/local/bin/python script'
)
f
.
close
()
continue
rest
=
f
.
read
()
f
.
close
()
with
f
:
line
=
f
.
readline
()
if
not
re
.
match
(
'^#! */usr/local/bin/python'
,
line
):
print
(
filename
,
': not a /usr/local/bin/python script'
)
continue
rest
=
f
.
read
()
line
=
re
.
sub
(
'/usr/local/bin/python'
,
'/usr/bin/env python'
,
line
)
print
(
filename
,
':'
,
repr
(
line
))
f
=
open
(
filename
,
"w"
)
f
.
write
(
line
)
f
.
write
(
rest
)
f
.
close
()
with
open
(
filename
,
"w"
)
as
f
:
f
.
write
(
line
)
f
.
write
(
rest
)
if
__name__
==
'__main__'
:
main
()
Tools/scripts/get-remote-certificate.py
Dosyayı görüntüle @
172bb394
...
...
@@ -29,9 +29,8 @@ def fetch_server_certificate (host, port):
return
None
else
:
tn
=
tempfile
.
mktemp
()
fp
=
open
(
tn
,
"wb"
)
fp
.
write
(
m
.
group
(
1
)
+
b
"
\n
"
)
fp
.
close
()
with
open
(
tn
,
"wb"
)
as
fp
:
fp
.
write
(
m
.
group
(
1
)
+
b
"
\n
"
)
try
:
tn2
=
(
outfile
or
tempfile
.
mktemp
())
status
,
output
=
subproc
(
r'openssl x509 -in "
%
s" -out "
%
s"'
%
...
...
@@ -39,9 +38,8 @@ def fetch_server_certificate (host, port):
if
status
!=
0
:
raise
RuntimeError
(
'OpenSSL x509 failed with status
%
s and '
'output:
%
r'
%
(
status
,
output
))
fp
=
open
(
tn2
,
'rb'
)
data
=
fp
.
read
()
fp
.
close
()
with
open
(
tn2
,
'rb'
)
as
fp
:
data
=
fp
.
read
()
os
.
unlink
(
tn2
)
return
data
finally
:
...
...
@@ -49,9 +47,8 @@ def fetch_server_certificate (host, port):
if
sys
.
platform
.
startswith
(
"win"
):
tfile
=
tempfile
.
mktemp
()
fp
=
open
(
tfile
,
"w"
)
fp
.
write
(
"quit
\n
"
)
fp
.
close
()
with
open
(
tfile
,
"w"
)
as
fp
:
fp
.
write
(
"quit
\n
"
)
try
:
status
,
output
=
subproc
(
'openssl s_client -connect "
%
s:
%
s" -showcerts < "
%
s"'
%
...
...
Tools/scripts/h2py.py
Dosyayı görüntüle @
172bb394
...
...
@@ -69,23 +69,21 @@ def main():
sys
.
stdout
.
write
(
'# Generated by h2py from stdin
\n
'
)
process
(
sys
.
stdin
,
sys
.
stdout
)
else
:
fp
=
open
(
filename
,
'r'
)
outfile
=
os
.
path
.
basename
(
filename
)
i
=
outfile
.
rfind
(
'.'
)
if
i
>
0
:
outfile
=
outfile
[:
i
]
modname
=
outfile
.
upper
()
outfile
=
modname
+
'.py'
outfp
=
open
(
outfile
,
'w'
)
outfp
.
write
(
'# Generated by h2py from
%
s
\n
'
%
filename
)
filedict
=
{}
for
dir
in
searchdirs
:
if
filename
[:
len
(
dir
)]
==
dir
:
filedict
[
filename
[
len
(
dir
)
+
1
:]]
=
None
# no '/' trailing
importable
[
filename
[
len
(
dir
)
+
1
:]]
=
modname
break
process
(
fp
,
outfp
)
outfp
.
close
()
fp
.
close
()
with
open
(
filename
)
as
fp
:
outfile
=
os
.
path
.
basename
(
filename
)
i
=
outfile
.
rfind
(
'.'
)
if
i
>
0
:
outfile
=
outfile
[:
i
]
modname
=
outfile
.
upper
()
outfile
=
modname
+
'.py'
with
open
(
outfile
,
'w'
)
as
outfp
:
outfp
.
write
(
'# Generated by h2py from
%
s
\n
'
%
filename
)
filedict
=
{}
for
dir
in
searchdirs
:
if
filename
[:
len
(
dir
)]
==
dir
:
filedict
[
filename
[
len
(
dir
)
+
1
:]]
=
None
# no '/' trailing
importable
[
filename
[
len
(
dir
)
+
1
:]]
=
modname
break
process
(
fp
,
outfp
)
def
pytify
(
body
):
# replace ignored patterns by spaces
...
...
@@ -161,9 +159,10 @@ def process(fp, outfp, env = {}):
except
IOError
:
pass
if
inclfp
:
outfp
.
write
(
'
\n
# Included from
%
s
\n
'
%
filename
)
process
(
inclfp
,
outfp
,
env
)
with
inclfp
:
outfp
.
write
(
'
\n
# Included from
%
s
\n
'
%
filename
)
process
(
inclfp
,
outfp
,
env
)
else
:
sys
.
stderr
.
write
(
'Warning - could not find file
%
s
\n
'
%
filename
)
...
...
Tools/scripts/ifdef.py
Dosyayı görüntüle @
172bb394
...
...
@@ -45,9 +45,8 @@ def main():
if
filename
==
'-'
:
process
(
sys
.
stdin
,
sys
.
stdout
)
else
:
f
=
open
(
filename
,
'r'
)
process
(
f
,
sys
.
stdout
)
f
.
close
()
with
open
(
filename
)
as
f
:
process
(
f
,
sys
.
stdout
)
def
process
(
fpi
,
fpo
):
keywords
=
(
'if'
,
'ifdef'
,
'ifndef'
,
'else'
,
'endif'
)
...
...
Tools/scripts/md5sum.py
Dosyayı görüntüle @
172bb394
...
...
@@ -47,10 +47,10 @@ def printsum(filename, out=sys.stdout):
except
IOError
as
msg
:
sys
.
stderr
.
write
(
'
%
s: Can
\'
t open:
%
s
\n
'
%
(
filename
,
msg
))
return
1
if
fnfilter
:
filename
=
fnfilter
(
filename
)
sts
=
printsumfp
(
fp
,
filename
,
out
)
fp
.
close
(
)
with
fp
:
if
fnfilter
:
filename
=
fnfilter
(
filename
)
sts
=
printsumfp
(
fp
,
filename
,
out
)
return
sts
def
printsumfp
(
fp
,
filename
,
out
=
sys
.
stdout
):
...
...
Tools/scripts/mkreal.py
Dosyayı görüntüle @
172bb394
...
...
@@ -18,14 +18,13 @@ def mkrealfile(name):
st
=
os
.
stat
(
name
)
# Get the mode
mode
=
S_IMODE
(
st
[
ST_MODE
])
linkto
=
os
.
readlink
(
name
)
# Make sure again it's a symlink
f_in
=
open
(
name
,
'r'
)
# This ensures it's a file
os
.
unlink
(
name
)
f_out
=
open
(
name
,
'w'
)
while
1
:
buf
=
f_in
.
read
(
BUFSIZE
)
if
not
buf
:
break
f_out
.
write
(
buf
)
del
f_out
# Flush data to disk before changing mode
with
open
(
name
,
'rb'
)
as
f_in
:
# This ensures it's a file
os
.
unlink
(
name
)
with
open
(
name
,
'wb'
)
as
f_out
:
while
1
:
buf
=
f_in
.
read
(
BUFSIZE
)
if
not
buf
:
break
f_out
.
write
(
buf
)
os
.
chmod
(
name
,
mode
)
def
mkrealdir
(
name
):
...
...
Tools/scripts/nm2def.py
Dosyayı görüntüle @
172bb394
...
...
@@ -42,7 +42,8 @@ NM = 'nm -p -g %s' # For Linux, use "nm -g %s"
def
symbols
(
lib
=
PYTHONLIB
,
types
=
(
'T'
,
'C'
,
'D'
)):
lines
=
os
.
popen
(
NM
%
lib
)
.
readlines
()
with
os
.
popen
(
NM
%
lib
)
as
pipe
:
lines
=
pipe
.
readlines
()
lines
=
[
s
.
strip
()
for
s
in
lines
]
symbols
=
{}
for
line
in
lines
:
...
...
@@ -97,7 +98,7 @@ def main():
exports
=
export_list
(
s
)
f
=
sys
.
stdout
# open('PC/python_nt.def','w')
f
.
write
(
DEF_TEMPLATE
%
(
exports
))
f
.
close
()
#
f.close()
if
__name__
==
'__main__'
:
main
()
Tools/scripts/objgraph.py
Dosyayı görüntüle @
172bb394
...
...
@@ -180,7 +180,8 @@ def main():
if
filename
==
'-'
:
readinput
(
sys
.
stdin
)
else
:
readinput
(
open
(
filename
,
'r'
))
with
open
(
filename
)
as
f
:
readinput
(
f
)
#
warndups
()
#
...
...
Tools/scripts/parseentities.py
Dosyayı görüntüle @
172bb394
...
...
@@ -50,13 +50,15 @@ def writefile(f,defs):
if
__name__
==
'__main__'
:
if
len
(
sys
.
argv
)
>
1
:
infile
=
open
(
sys
.
argv
[
1
])
with
open
(
sys
.
argv
[
1
])
as
infile
:
text
=
infile
.
read
()
else
:
infile
=
sys
.
stdin
text
=
sys
.
stdin
.
read
()
defs
=
parse
(
text
)
if
len
(
sys
.
argv
)
>
2
:
outfile
=
open
(
sys
.
argv
[
2
],
'w'
)
with
open
(
sys
.
argv
[
2
],
'w'
)
as
outfile
:
writefile
(
outfile
,
defs
)
else
:
outfile
=
sys
.
stdout
text
=
infile
.
read
()
defs
=
parse
(
text
)
writefile
(
outfile
,
defs
)
writefile
(
sys
.
stdout
,
defs
)
Tools/scripts/pathfix.py
Dosyayı görüntüle @
172bb394
...
...
@@ -103,29 +103,27 @@ def fix(filename):
except
IOError
as
msg
:
err
(
'
%
s: cannot open:
%
r
\n
'
%
(
filename
,
msg
))
return
1
line
=
f
.
readline
()
fixed
=
fixline
(
line
)
if
line
==
fixed
:
rep
(
filename
+
': no change
\n
'
)
f
.
close
()
return
head
,
tail
=
os
.
path
.
split
(
filename
)
tempname
=
os
.
path
.
join
(
head
,
'@'
+
tail
)
try
:
g
=
open
(
tempname
,
'wb'
)
except
IOError
as
msg
:
f
.
close
()
err
(
'
%
s: cannot create:
%
r
\n
'
%
(
tempname
,
msg
))
return
1
rep
(
filename
+
': updating
\n
'
)
g
.
write
(
fixed
)
BUFSIZE
=
8
*
1024
while
1
:
buf
=
f
.
read
(
BUFSIZE
)
if
not
buf
:
break
g
.
write
(
buf
)
g
.
close
()
f
.
close
()
with
f
:
line
=
f
.
readline
()
fixed
=
fixline
(
line
)
if
line
==
fixed
:
rep
(
filename
+
': no change
\n
'
)
return
head
,
tail
=
os
.
path
.
split
(
filename
)
tempname
=
os
.
path
.
join
(
head
,
'@'
+
tail
)
try
:
g
=
open
(
tempname
,
'wb'
)
except
IOError
as
msg
:
err
(
'
%
s: cannot create:
%
r
\n
'
%
(
tempname
,
msg
))
return
1
with
g
:
rep
(
filename
+
': updating
\n
'
)
g
.
write
(
fixed
)
BUFSIZE
=
8
*
1024
while
1
:
buf
=
f
.
read
(
BUFSIZE
)
if
not
buf
:
break
g
.
write
(
buf
)
# Finishing touch -- move files
...
...
Tools/scripts/pdeps.py
Dosyayı görüntüle @
172bb394
...
...
@@ -64,29 +64,28 @@ m_from = re.compile('^[ \t]*import[ \t]+([^#]+)')
# Collect data from one file
#
def
process
(
filename
,
table
):
fp
=
open
(
filename
,
'r'
)
mod
=
os
.
path
.
basename
(
filename
)
if
mod
[
-
3
:]
==
'.py'
:
mod
=
mod
[:
-
3
]
table
[
mod
]
=
list
=
[]
while
1
:
line
=
fp
.
readline
()
if
not
line
:
break
while
line
[
-
1
:]
==
'
\\
'
:
nextline
=
fp
.
readline
()
if
not
nextline
:
break
line
=
line
[:
-
1
]
+
nextline
m_found
=
m_import
.
match
(
line
)
or
m_from
.
match
(
line
)
if
m_found
:
(
a
,
b
),
(
a1
,
b1
)
=
m_found
.
regs
[:
2
]
else
:
continue
words
=
line
[
a1
:
b1
]
.
split
(
','
)
# print '#', line, words
for
word
in
words
:
word
=
word
.
strip
()
if
word
not
in
list
:
list
.
append
(
word
)
fp
.
close
()
with
open
(
filename
)
as
fp
:
mod
=
os
.
path
.
basename
(
filename
)
if
mod
[
-
3
:]
==
'.py'
:
mod
=
mod
[:
-
3
]
table
[
mod
]
=
list
=
[]
while
1
:
line
=
fp
.
readline
()
if
not
line
:
break
while
line
[
-
1
:]
==
'
\\
'
:
nextline
=
fp
.
readline
()
if
not
nextline
:
break
line
=
line
[:
-
1
]
+
nextline
m_found
=
m_import
.
match
(
line
)
or
m_from
.
match
(
line
)
if
m_found
:
(
a
,
b
),
(
a1
,
b1
)
=
m_found
.
regs
[:
2
]
else
:
continue
words
=
line
[
a1
:
b1
]
.
split
(
','
)
# print '#', line, words
for
word
in
words
:
word
=
word
.
strip
()
if
word
not
in
list
:
list
.
append
(
word
)
# Compute closure (this is in fact totally general)
...
...
Tools/scripts/ptags.py
Dosyayı görüntüle @
172bb394
...
...
@@ -19,9 +19,9 @@ def main():
for
filename
in
args
:
treat_file
(
filename
)
if
tags
:
fp
=
open
(
'tags'
,
'w'
)
tags
.
sort
()
for
s
in
tags
:
fp
.
write
(
s
)
with
open
(
'tags'
,
'w'
)
as
fp
:
tags
.
sort
()
for
s
in
tags
:
fp
.
write
(
s
)
expr
=
r'^[ \t]*(def|class)[ \t]+([a-zA-Z0-9_]+)[ \t]*[:\(]'
...
...
@@ -33,21 +33,22 @@ def treat_file(filename):
except
:
sys
.
stderr
.
write
(
'Cannot open
%
s
\n
'
%
filename
)
return
base
=
os
.
path
.
basename
(
filename
)
if
base
[
-
3
:]
==
'.py'
:
base
=
base
[:
-
3
]
s
=
base
+
'
\t
'
+
filename
+
'
\t
'
+
'1
\n
'
tags
.
append
(
s
)
while
1
:
line
=
fp
.
readline
()
if
not
line
:
break
m
=
matcher
.
match
(
line
)
if
m
:
content
=
m
.
group
(
0
)
name
=
m
.
group
(
2
)
s
=
name
+
'
\t
'
+
filename
+
'
\t
/^'
+
content
+
'/
\n
'
tags
.
append
(
s
)
with
fp
:
base
=
os
.
path
.
basename
(
filename
)
if
base
[
-
3
:]
==
'.py'
:
base
=
base
[:
-
3
]
s
=
base
+
'
\t
'
+
filename
+
'
\t
'
+
'1
\n
'
tags
.
append
(
s
)
while
1
:
line
=
fp
.
readline
()
if
not
line
:
break
m
=
matcher
.
match
(
line
)
if
m
:
content
=
m
.
group
(
0
)
name
=
m
.
group
(
2
)
s
=
name
+
'
\t
'
+
filename
+
'
\t
/^'
+
content
+
'/
\n
'
tags
.
append
(
s
)
if
__name__
==
'__main__'
:
main
()
Tools/scripts/rgrep.py
Dosyayı görüntüle @
172bb394
...
...
@@ -30,29 +30,30 @@ def main():
f
=
open
(
filename
)
except
IOError
as
msg
:
usage
(
"can't open
%
r:
%
s"
%
(
filename
,
msg
),
1
)
f
.
seek
(
0
,
2
)
pos
=
f
.
tell
()
leftover
=
None
while
pos
>
0
:
size
=
min
(
pos
,
bufsize
)
pos
=
pos
-
size
f
.
seek
(
pos
)
buffer
=
f
.
read
(
size
)
lines
=
buffer
.
split
(
"
\n
"
)
del
buffer
if
leftover
is
None
:
if
not
lines
[
-
1
]:
del
lines
[
-
1
]
else
:
lines
[
-
1
]
=
lines
[
-
1
]
+
leftover
if
pos
>
0
:
leftover
=
lines
[
0
]
del
lines
[
0
]
else
:
leftover
=
None
for
line
in
reversed
(
lines
):
if
prog
.
search
(
line
):
print
(
line
)
with
f
:
f
.
seek
(
0
,
2
)
pos
=
f
.
tell
()
leftover
=
None
while
pos
>
0
:
size
=
min
(
pos
,
bufsize
)
pos
=
pos
-
size
f
.
seek
(
pos
)
buffer
=
f
.
read
(
size
)
lines
=
buffer
.
split
(
"
\n
"
)
del
buffer
if
leftover
is
None
:
if
not
lines
[
-
1
]:
del
lines
[
-
1
]
else
:
lines
[
-
1
]
=
lines
[
-
1
]
+
leftover
if
pos
>
0
:
leftover
=
lines
[
0
]
del
lines
[
0
]
else
:
leftover
=
None
for
line
in
reversed
(
lines
):
if
prog
.
search
(
line
):
print
(
line
)
def
usage
(
msg
,
code
=
2
):
...
...
Tools/unicode/gencjkcodecs.py
Dosyayı görüntüle @
172bb394
...
...
@@ -61,7 +61,8 @@ def gencodecs(prefix):
encoding
=
enc
.
lower
(),
owner
=
loc
)
codecpath
=
os
.
path
.
join
(
prefix
,
enc
+
'.py'
)
open
(
codecpath
,
'w'
)
.
write
(
code
)
with
open
(
codecpath
,
'w'
)
as
f
:
f
.
write
(
code
)
if
__name__
==
'__main__'
:
import
sys
...
...
Tools/unicode/gencodec.py
Dosyayı görüntüle @
172bb394
...
...
@@ -72,9 +72,8 @@ def parsecodes(codes, len=len, range=range):
def
readmap
(
filename
):
f
=
open
(
filename
,
'r'
)
lines
=
f
.
readlines
()
f
.
close
()
with
open
(
filename
)
as
f
:
lines
=
f
.
readlines
()
enc2uni
=
{}
identity
=
[]
unmapped
=
list
(
range
(
256
))
...
...
@@ -359,18 +358,16 @@ encoding_table = codecs.charmap_build(decoding_table)
def
pymap
(
name
,
map
,
pyfile
,
encodingname
,
comments
=
1
):
code
=
codegen
(
name
,
map
,
encodingname
,
comments
)
f
=
open
(
pyfile
,
'w'
)
f
.
write
(
code
)
f
.
close
()
with
open
(
pyfile
,
'w'
)
as
f
:
f
.
write
(
code
)
def
marshalmap
(
name
,
map
,
marshalfile
):
d
=
{}
for
e
,(
u
,
c
)
in
map
.
items
():
d
[
e
]
=
(
u
,
c
)
f
=
open
(
marshalfile
,
'wb'
)
marshal
.
dump
(
d
,
f
)
f
.
close
()
with
open
(
marshalfile
,
'wb'
)
as
f
:
marshal
.
dump
(
d
,
f
)
def
convertdir
(
dir
,
dirprefix
=
''
,
nameprefix
=
''
,
comments
=
1
):
...
...
@@ -411,8 +408,8 @@ def rewritepythondir(dir, dirprefix='', comments=1):
print
(
'converting
%
s to
%
s'
%
(
mapname
,
dirprefix
+
codefile
))
try
:
map
=
marshal
.
load
(
open
(
os
.
path
.
join
(
dir
,
mapname
),
'rb'
)
)
with
open
(
os
.
path
.
join
(
dir
,
mapname
),
'rb'
)
as
f
:
map
=
marshal
.
load
(
f
)
if
not
map
:
print
(
'* map is empty; skipping'
)
else
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment