<srenatus>
vaninwagen: nice! looks like kcov would give you instant support for coveralls and codecov
SenasOzys has quit [Ping timeout: 248 seconds]
user10032 has joined #ponylang
SenasOzys has joined #ponylang
<SeanTAllen>
Vaninwagen: you should rework that so it works on the website along side the lldb cheatsheet and performance cheatsheet.
SenasOzys has quit [Remote host closed the connection]
SenasOzys has joined #ponylang
acarrico has quit [Ping timeout: 240 seconds]
jemc has joined #ponylang
<jemc>
SeanTAllen: sorry I missed your "howdy" - it's been a crazy week of travel
<jemc>
but now am safely back home
<SeanTAllen>
nice
<SeanTAllen>
welcome back jemc.
<jemc>
thanks
<SeanTAllen>
where were you traveling? are you normally up this early over there in greenspace?
<SeanTAllen>
unrelated to all that, are you attending OSCON this year?
<jemc>
it was a set of client visits
<jemc>
yeah, I commonly wake up early here in greenspace, as I'm used to working on EST hours
<SeanTAllen>
i did not know that
<SeanTAllen>
interesting
<SeanTAllen>
One pony related thing: if you have time to check out this PR... its my first real "compiler PR", i'd appreciate it: https://github.com/ponylang/ponyc/pull/2763
<jemc>
regarding OSCON, no I had not been planning to as of yet
<jemc>
okay, will check out the PR now
<jemc>
another pony related thing: I seem to be hitting a bug with `File` while stress-testing my application
<jemc>
2b. `len` is some other number there less than what we wanted, which means we need to try again to write the rest of the bytes
khan has joined #ponylang
<jemc>
(but not write bytes that have already been written)
acarrico has joined #ponylang
<SeanTAllen>
I wonder if memory is getting freed prematurely
<jemc>
just ran in a debugger after some modifications to allow me to breakpoint in the right places, and I'm finding that I'm hitting the out-of-bounds array access case
<SeanTAllen>
If we give up a reference to the memory early in pony code, that would free the memory
<jemc>
you're talking about the point where we convert the `cpointer` to a `USize` to go in `_pending_writev`? yeah, I was meaning to ask about the memory safety of that...
<SeanTAllen>
As long as you don't let go of the reference in pending early, it would be good
<SeanTAllen>
It's possible there is a bug there
<jemc>
when you say "the reference in pending", you mean the `USize` instances in `_pending_writev`?
<jemc>
(by the way, there's definitely a bug in that loop for the case where `_pending_writev.size() / 2 > IOV_MAX` - I'm working on the fix now
user10032 has quit [Quit: Leaving]
acarrico has quit [Ping timeout: 240 seconds]
acarrico has joined #ponylang
denus has joined #ponylang
<SeanTAllen>
Not at home
<SeanTAllen>
Will be soon
<SeanTAllen>
And will look at it
<SeanTAllen>
ok
<SeanTAllen>
jemc
<SeanTAllen>
yeah it will free memory early
<SeanTAllen>
this is the bug that used to be in TCPConnection
<SeanTAllen>
there might be an open issue for this
<SeanTAllen>
today is stephanie's birthday so i cant work on it today but if you dont assign yourself this weekend, ill tackle it tomorrow.
<SeanTAllen>
and do a release sunday night
<SeanTAllen>
jemc, the solution in TCPConnection is pretty hacky.
<SeanTAllen>
for a longer term solution what about... and this could be a really bad idea.
<SeanTAllen>
exposing acquire and release object via a primitive that you need a capability for that says "hey, i want to add an extra reference to this thing" (probably because you are giving it to ffi) and then can later say "ok all done with that".
<SeanTAllen>
actually... i guess that wouldnt matter as you'd still have to track it
<SeanTAllen>
that said, this seems like a pattern that we could move into a class somehow
<SeanTAllen>
"writev buffer" or something like htat
<jemc>
possible clean solution: does an Array[(USize, USize)] in pony have the same memory layout as an `Array[USize]` of twice the length?
<jemc>
if so, then we could use `Array[(Pointer[U8], USize)]`
<SeanTAllen>
not sure
acarrico has quit [Ping timeout: 264 seconds]
acarrico has joined #ponylang
<SeanTAllen>
i have an itch to create a new file library outside of the stdlib where it can be worked on outside of the RFC process and modeling after what we need. Would you be interested in collaborating on something like that with the idea of eventually trying to get it into the stdlib?
<jemc>
yes
<jemc>
although I think this particular issue can be solved without breaking changes - just a bugfix
acarrico has quit [Ping timeout: 248 seconds]
<SeanTAllen>
ya
dipin has joined #ponylang
<dipin>
jemc: iirc, I had initially tried something along the lines of `Array[(Pointer[U8], USize)]` without much success but it's been a while and I could be remembering wrong...
<SeanTAllen>
i seem to remember that as well dipin
SenasOzys has quit [Ping timeout: 245 seconds]
SenasOzys has joined #ponylang
denus has joined #ponylang
denus has quit [Client Quit]
khan has quit [Quit: khan]
khan has joined #ponylang
khan has quit [Client Quit]
khan has joined #ponylang
infinitary has joined #ponylang
dipin has quit [Quit: dipin]
khan has quit [Quit: khan]
khan has joined #ponylang
infinitary has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]