arigato changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | mac OS and Fedora are not Windows
ambv has quit [Quit: Textual IRC Client: www.textualapp.com]
jcea has joined #pypy
alawrence has quit [Ping timeout: 256 seconds]
dansan has quit [Quit: The C preprocessor is a pathway to many abilities some consider to be unnatural.]
jcea has quit [Quit: jcea]
nedbat has quit [Ping timeout: 250 seconds]
nedbat has joined #pypy
speeder39_ has joined #pypy
[Arfrever] has quit [Ping timeout: 258 seconds]
[Arfrever] has joined #pypy
dddddd has quit [Remote host closed the connection]
tsaka__ has quit [Ping timeout: 248 seconds]
<kenaan> mattip py3.6 416b312eb49d /lib_pypy/: in python3 crypt -> _crypt and there is a lib-python/3/crypt.py
<kenaan> mattip py3.6 36dc395a0a4a /lib_pypy/_crypt/__init__.py: test for str
speeder39_ has quit [Quit: Connection closed for inactivity]
<cfbolz> mattip: there are no obvious new py3.6 failures tonight, or am I missing some?
Ai9zO5AP has joined #pypy
<mattip> cfbolz: looks good to me
<mattip> also it seems no new breakage due to optimizeopt-cleanup
tsaka__ has joined #pypy
<cfbolz> Nice
<kenaan> mattip py3.6 7c2732ad825a /pypy/module/_io/: merge fix-leak-of-file-descriptor-with-_iofile which fixes a resource leak
<kenaan> asottile Anthony-Sottile/fix-leak-of-file-descriptor-with-_iofile-1559687440863 bb17c9943258 /pypy/module/_io/interp_fileio.py: Fix leak of file descriptor with `_io.FileIO('dir...
<kenaan> asottile Anthony-Sottile/fix-leak-of-file-descriptor-with-_iofile-1559687440863 d8bc809612bd /pypy/module/_io/test/test_fileio.py: add regression test for `FileIO` directory fd leak
<mattip> yay. I saw those resource warnings a while ago and was wondering where they came from
<kenaan> mattip default 8ae131ad519d /pypy/doc/whatsnew-head.rst: document merged branch
lritter has joined #pypy
<cfbolz> mattip: cool
tsaka__ has quit [Ping timeout: 248 seconds]
oberstet has joined #pypy
<njs> cfbolz: early indications suggest the coverage stuff is looking better today, thanks!
ronan has quit [Ping timeout: 259 seconds]
<cfbolz> njs: nice!
<cfbolz> The new lnotab format makes it possible to jump backwards in the line numbers
<cfbolz> But seems CPython doesn't actually use negative jumps anywhere eg for stuff like this:
<cfbolz> [1] + [
<cfbolz> a]
<njs> yeah, I guess this got split off from some more intrusive optimizer changes that got bogged down?
<cfbolz> njs: possibly, but even in 3.7 it hasn't landed
<cfbolz> Anyway, the above doesn't even need special optimization
<njs> "bogged down" is forever
<cfbolz> Now I want to make the above generate better line events just because
ronan has joined #pypy
<njs> oh hmm, does 3.8 though? I feel like I remember this coming up when talking to nedbat about 3.8 coverage breakage
<cfbolz> njs: ah, cool
<cfbolz> Didn't try 3.8 yet
<njs> cfbolz: I kind of want to propagate exact line/col start/end through the compiler, so tracebacks can underline expressions
<cfbolz> njs: nice
<njs> probably won't make it to the top of my todo list any time soon though
<cfbolz> 'but but but memory!'
<njs> yeah yeah
<cfbolz> njs: probably would be easyish to experiment with in pypy
<cfbolz> And we would probably be tempted to just merge it
<njs> heh fair point
<njs> the ordered-dict path to merging things into cpython
<cfbolz> njs: yep, it's a tried model ;-)
<cfbolz> Two extra bytes per opcode doesn't sound too bad, honestly
<njs> yeah depending on how clever we are about compressing it it might not be much
<njs> maybe we should just run all the lnotab stuff through LZO or something :-)
<njs> does anyone really care about milliseconds of CPU time when doing lnotab lookups? well, maybe coverage.py does
<cfbolz> njs: I kind of doubt that it would be important to compress it, honestly
<cfbolz> No I am sort of tempted to just implement this
antocuni has joined #pypy
alawrence has joined #pypy
alawrence has quit [Ping timeout: 256 seconds]
<njs> cfbolz: dooo iiitt :-)
<njs> (as a bonus, use color in your tracebacks)
tsaka__ has joined #pypy
<cfbolz> njs: I'll send a mail to pypy-dev
<cfbolz> njs: do you remember where you saw something about more precise line numbers in 3.8?
antocuni has quit [Ping timeout: 252 seconds]
<cfbolz> njs: I started with a less controversial suggestion
<kenaan> cfbolz py3.6 0ffff10dd2bc /: merge default
Masklinn has joined #pypy
<kenaan> fijal copystrcontents-in-rewrite 6fe2a86cdc00 /rpython/jit/backend/x86/regalloc.py: kill hopefully dead code
<kenaan> fijal copystrcontents-in-rewrite 805a83055a7d /rpython/jit/backend/arm/: maybe fix ARM
<kenaan> fijal copystrcontents-in-rewrite 07999e1e391f /rpython/jit/backend/ppc/regalloc.py: start cargo culting PPC support
<kenaan> fijal arm64 44fd26cfc9c9 /: merge copystrcontents in rewrite branch
jcea has joined #pypy
<fijal> merged default now regalloc explodes
<fijal> it's *probably* my exposed problem, but I wonder what could have changed it
<fijal> cfbolz: did you change anything in the regalloc interface?
<cfbolz> fijal: not really, no
<cfbolz> what's the error?
<fijal> error makes no sense
<cfbolz> could still be a corner case in my code?
<fijal> how do we hit __getitem__ here?
<fijal> why is a part of traceback missing completely?
<cfbolz> fijal: argh, sorry
<fijal> cfbolz: does that make any sense to you?
<cfbolz> yes, it does
<cfbolz> the getitem comes from the tuple desctructuring
<fijal> pfff
<cfbolz> compute_vars_longevity only returns one thing now
<fijal> "ah"
<cfbolz> so sorry, it seems the interface is a bit different still
<fijal> no problem, I had a full day of incredible confusion yesterday
<fijal> so this just adds to the pile ;-0
<fijal> like, I can't put a debugger on new OS X for system binaries, so I used pypy instead of cpython
<cfbolz> it should just be longevity = compute_vars_longevity(inputargs, operations)
<fijal> but then pypy has some strange explosions in boehm in test_runner that I thought are my fault
<cfbolz> (the last_real_usage is now implicit)
<fijal> ok how is the line in spilling on label looking now?
* fijal cargo cults from arm
<cfbolz> fijal: look at x86 instead. it goes like this:
<cfbolz> if self.longevity[arg].is_last_real_use_before(position):
<fijal> yes, arm does the same
<cfbolz> ok
<cfbolz> fijal, ronan: I think the plan was to quite generally remove asmgcc from the repo
oberstet_ has joined #pypy
<arigato> cfbolz: yes, the just-released python 3.8b0 seems to use negative line deltas
<cfbolz> arigato: for the kind of code in my mail?
<cfbolz> nice!
<arigato> yes
<kenaan> fijal arm64 b5abcfa99f96 /rpython/jit/: fixes
<cfbolz> ok, so we should just wait till we implement 3.8 then
<cfbolz> right!
<cfbolz> excellent :-)
oberstet has quit [Ping timeout: 272 seconds]
<arigato> I'm not sure I would care if it was implemented in pypy3.6
<cfbolz> arigato: ok, I might do that then
<cfbolz> it's really easy
<arigato> I mean, I *would* care that implementing it makes better error messages, but not about the potential breakage given that in cpy 3.8 it would be broken too
<cfbolz> right
<cfbolz> arigato: any other situation with backward control flow you can think of?
<arigato> I'm sure there are some
<arigato> the point is more about removing special logic in the compiler that prevents these backward jumps
<fijal> arigato: do you feel like writing a PPC/s390x version of load_effective_address?
<arigato> yes
<arigato> ah, also load_effective_address should be all that we need to get rid of ZERO_ARRAY in the backends, right?
<fijal> is it?
<kenaan> fijal copystrcontents-in-rewrite 2fb764a56483 /rpython/jit/backend/arm/opassembler.py: fixes from Aarch64
<arigato> in theory, but it's more messy in rewrite.py
<fijal> one problem with rewrite.py is that it does not do any constant folding
<fijal> so in theory we could do better by doing some basic constant folding
<arigato> in what case?
antocuni has joined #pypy
<fijal> load_effective_address for example
<fijal> but there might be other where we emit some maths that might possibly be constant?
<fijal> maybe there aren't
<arigato> I think there might be some for the ppc, for example, because the ppc doesn't have the same addressing modes as x86
<arigato> so maybe we recompute several times a similar address
<arigato> which does not matter on x86
<arigato> btw it's also an argument for making load_effective_address optional: the backend could set a flag to say if it supports it, and if not, rewrite.py would emit just adds and shifts
<arigato> I think on ppc it's what you'd end up with anyway
dddddd has joined #pypy
<arigato> (yes, that's how it's implemented in backend/ppc/)
<fijal> right, yes
<fijal> that's much easier I think
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
jcea has quit [Remote host closed the connection]
inhahe has joined #pypy
<kenaan> cfbolz default cefcc54d57f7 /pypy/: various improvements to the json decoder, particularly for big JSON files: - use maps for those objects that are ...
jcea has joined #pypy
<cfbolz> ok, that was not the plan
<kenaan> cfbolz default f4e45930f401 /pypy/: Backed out changeset cefcc54d57f7
<kenaan> cfbolz json-decoder-maps eb54897d4861 /pypy/: various improvements to the json decoder, particularly for big JSON files: - use maps for those objects...
jcea has quit [Ping timeout: 252 seconds]
tsaka__ has quit [Ping timeout: 258 seconds]
<cfbolz> better
marky1991 has joined #pypy
tsaka__ has joined #pypy
Rhy0lite has joined #pypy
<kenaan> cfbolz json-decoder-maps 5b4720a4e5fc /pypy/module/_pypyjson/: remove get_terminator
<kenaan> cfbolz json-decoder-maps 5dc3d4fba79a /pypy/module/_pypyjson/: simplify fringe handling
<kenaan> cfbolz json-decoder-maps a809240c1f45 /pypy/module/_pypyjson/interp_decoder.py: add some comments, some cleanups
kajetanj has joined #pypy
kajetanj has left #pypy [#pypy]
kajetanj has joined #pypy
<kajetanj> Hi. Did anyone successfully installed numpy in pypy3.6 on Windows?
Masklinn has quit []
marky1991 has quit [Ping timeout: 268 seconds]
<kajetanj> this is what I get: https://pastebin.com/7GGcBHjc
i9zO5AP has joined #pypy
Ai9zO5AP has quit [Ping timeout: 252 seconds]
dante has quit [Ping timeout: 245 seconds]
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
mattip_ has joined #pypy
<mattip_> kajetanj: the error is “Microsoft Visual C++ 14.1 is required”
<mattip_> kajetanj: since we don’t have binary wheels you need to compile
mattip_ has quit [Remote host closed the connection]
marky1991 has quit [Ping timeout: 252 seconds]
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
marky1991 has quit [Read error: Connection reset by peer]
marky1991 has joined #pypy
themsay has quit [Ping timeout: 268 seconds]
kajetanj has quit [Quit: Page closed]
antocuni has quit [Ping timeout: 248 seconds]
moei has joined #pypy
Kipras_ has quit [Ping timeout: 252 seconds]
kipras has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
kajetanj has joined #pypy
kajetanj has left #pypy [#pypy]
kajetanj has joined #pypy
<kajetanj> I try to install numpy in pypy3.6 on Windows 10. On of the errors is “Microsoft Visual C++ 14.1 is required”, but I installed Visual Studio Build Tools 2015, 2017 and 2019. I also updated setuptools on pypy. Here is full log: https://pastebin.com/7GGcBHjc
Zaab1t has joined #pypy
adamholmberg has joined #pypy
Rhy0lite has quit [Quit: Leaving]
Zaab1t has quit [Client Quit]
themsay has joined #pypy
themsay has quit [Ping timeout: 272 seconds]
jcea has joined #pypy
jcea has quit [Ping timeout: 252 seconds]
marky1991 has quit [Ping timeout: 272 seconds]
themsay has joined #pypy
<mattip> what happens if you try something easier that still requires a compiler, like lxml
<mattip> kajetanj ^^^
<mattip> pip install cython lxml
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
<kajetanj> mattip: the same thing, here is the log (I had cython already installed): https://pastebin.com/f1feDf78
kajetanj has quit [Quit: Page closed]
<kenaan> cfbolz json-decoder-maps ec6df04c89ba /pypy/module/_pypyjson/: cleanup instantiation_count and number_of_leaves, some comments, some renaming
<kenaan> cfbolz json-decoder-maps 7876645a7f18 /pypy/module/_pypyjson/interp_decoder.py: more commonts, some simplifications
<kenaan> cfbolz json-decoder-maps cb74a7af3b1d /pypy/doc/whatsnew-head.rst: document branch
marky1991 has quit [Ping timeout: 248 seconds]
marky1991 has joined #pypy
i9zO5AP has quit [Quit: WeeChat 2.4]
<cfbolz> njs: yes, I kind of decided that I'll implement it when we catch up with 3.8
jcea has joined #pypy
<cfbolz> Since 3.8 requires generally some work in the parser and compiler
<cfbolz> I might still experiment with the column offsets, though
marky1991 has quit [Read error: Connection reset by peer]
marky1991 has joined #pypy
jacob22 has quit [Read error: Connection reset by peer]
jacob22 has joined #pypy
marky1991 has quit [Ping timeout: 272 seconds]
lritter has quit [Quit: Leaving]
marky1991 has joined #pypy
marky1991_2 has joined #pypy
marky1991 has quit [Ping timeout: 246 seconds]
themsay has quit [Read error: Connection reset by peer]
themsay has joined #pypy
marky1991_2 has quit [Remote host closed the connection]
marky1991_2 has joined #pypy
catern has quit [Excess Flood]
jcea has quit [Ping timeout: 248 seconds]
catern has joined #pypy
marky1991_2 has quit [Ping timeout: 248 seconds]
marky1991_2 has joined #pypy
moei has quit [Quit: Leaving...]
marky1991_2 has quit [Remote host closed the connection]
marky1991_2 has joined #pypy
jcea has joined #pypy
jacob22 has quit [Quit: Konversation terminated!]
jacob22 has joined #pypy
marky1991_2 has quit [Remote host closed the connection]
jcea has quit [Ping timeout: 248 seconds]