<< 23-09-2019 >>

00:00:37*Hideki_ joined #nim
00:01:53*ofelas quit (Ping timeout: 268 seconds)
00:03:02*Hideki_ quit (Remote host closed the connection)
00:03:17*Hideki_ joined #nim
00:09:27*laaron quit (Quit: ZNC 1.7.4 - https://znc.in)
00:10:07FromGitter<kdheepak> I accidentally typed the following: ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5d880d5f56677e767a3fd61f]
00:10:17FromGitter<kdheepak> This could probably use a better error message?
00:10:37*laaron joined #nim
00:13:42leorize[m]certainly
00:15:19leorize[m]Zevv: looks like vim has some interesting development lately
00:15:51leorize[m]textprop might be what makes me reconsider adding vim8 support :)
00:40:26*ofelas joined #nim
00:42:39owl_000does `proc (text: string`) make a new copy of given text? or i should use `proc (text: var string)`
00:51:07*Jjp137 joined #nim
00:55:28*endragor joined #nim
01:18:50FromGitter<kayabaNerve> Can I generate a range based off a backwards index?
01:19:01FromGitter<kayabaNerve> I've never considered it and don't believe so, yet I wanted to check.
01:19:40FromGitter<kayabaNerve> Also, any predictions on the next minor version?
01:19:53FromGitter<kayabaNerve> Eh. ETAs/thoughts, not predictions.
01:25:04shashlick1.0 is coming
01:44:50*Cthalupa quit (Quit: ZNC 1.6.6+deb1ubuntu0.2 - http://znc.in)
02:04:15*Cthalupa joined #nim
02:05:34*Cthalupa quit (Client Quit)
02:14:18*Cthalupa joined #nim
02:32:55*laaron quit (Remote host closed the connection)
02:34:48*laaron joined #nim
02:45:12*laaron quit (Quit: ZNC 1.7.4 - https://znc.in)
02:45:29*laaron joined #nim
02:50:27*lritter quit (Ping timeout: 245 seconds)
02:59:58*laaron quit (Remote host closed the connection)
03:22:25*laaron joined #nim
03:32:10*theelous3 quit (Ping timeout: 268 seconds)
03:39:43*dddddd quit (Remote host closed the connection)
03:46:50*Hideki_ quit (Remote host closed the connection)
03:47:50*Hideki_ joined #nim
03:51:43*Hideki_ quit (Remote host closed the connection)
03:52:01*Hideki_ joined #nim
03:54:30*Hideki_ quit (Remote host closed the connection)
04:00:54*chemist69 quit (Ping timeout: 246 seconds)
04:03:08*chemist69 joined #nim
04:15:42*rockcavera quit (Remote host closed the connection)
04:17:44leorizeowl_000: it shouldn't
04:32:35*Hideki_ joined #nim
04:47:18*Hideki_ quit (Ping timeout: 265 seconds)
04:48:25*nsf joined #nim
05:16:34*narimiran joined #nim
05:36:06lqdev[m]afaik passing let variables and regular proc params does not copy
05:39:24lqdev[m]yeah, correct https://play.nim-lang.org/#ix=1Wvx
05:40:04*laaron quit (Remote host closed the connection)
05:43:18*navin joined #nim
05:45:54*laaron joined #nim
05:47:29owl_000https://www.reddit.com/r/nim/comments/d819i4/my_first_awesome_nimble_package/ take a look at it. :)
05:53:39*solitudesf joined #nim
06:26:10*ng0 joined #nim
06:35:09*gangstacat joined #nim
06:48:11*PMunch joined #nim
06:50:37PMunchowl_000, congrats on your first package :)
06:50:49PMunchIs it by any chance inspired by Logo?
06:54:52FromGitter<arnetheduck> shashlick, I just tried the latest nimterop on sqlite and it looks like there are some changes, but a few of the `TODO`'s I needed to make sqlite fly are still there (except codereordering) - conveniently, they're spelled out in the update.sh script: https://github.com/arnetheduck/nim-sqlite3-abi/blob/master/update.sh - paths, standalone option and using a fixed version of nimterop itself (this is more nimble, might
06:54:52FromGitter... possible to fix using a particular git hash of nimterop or install a temporary somewhere unique to avoid the global repo, but that still doesn't help for nailing down nimterops dependencies)
07:00:00*gmpreussner quit (Quit: kthxbye)
07:04:45*gmpreussner joined #nim
07:05:10*krux02 joined #nim
07:06:54*sz0 joined #nim
07:10:29*solitudesf quit (Ping timeout: 276 seconds)
07:20:41livcdso today is the day?
07:21:38PMunchIt's been eerily quiet in here so far
07:22:35PMunchI'm still trying to get my protobuf package to compile on the current devel..
07:29:31*Vladar joined #nim
07:30:44AraqPMunch, what's hard about it?
07:32:18PMunchWell the first issue I faced was the same as I had with jsonschema. That now the forward declaration and body of my procedure get their arguments gensym'ed to different identifiers
07:32:23PMunchSo I get ambiguous calls
07:33:54PMunchBut escaping them in the quote do logic and adding new symbols with newIdentNode kinda fixes that
07:35:36PMunchEyy
07:35:49PMunchSomething has changed between todays devel and yesterdays :)
07:36:08Zevvhttp://zevv.nl/div/today.png
07:36:14PMunchThat was the only thing I needed to do to fix it today, wheras yesterday I was fighting this for hours..
07:36:30Araqwe didn't change anything really
07:36:42PMunchHmm, that's strange..
07:37:05PMunchI'll have to test what I did on my home computer when I get back, and diff it with what I did now to make it work
07:42:00PMunchIs it an intentional change by the way that nimble now puts the compiled tests in the root directory of the package?
07:43:02Araqdunno :-)
07:44:37PMunchJust noticed that the protobuf tests failed because it was trying to read a file that's next to the test
07:44:52PMunchWhich it can't find now since it doesn't run from the tests directory
07:45:03*floppydh joined #nim
07:52:06PMunchHow is it that I can mark things as used again?
07:52:28Araq{.used.}
07:53:25PMunchThat's what I though, but applying it to the declaration and not the forward declaration apparently doesn't work
07:53:29*hoijui joined #nim
07:53:29PMunchMy bad
07:54:56PMunchHmm, but marking them as used means that they are actually compiled into code right?
07:55:04PMunchSo deadCodeElim won't take them?
07:57:18dom96PMunch, that shouldn't have changed, is this on 0.11.0?
07:57:52PMunchAh, I'm on 0.10.2 apparently
07:58:06Yardanicowat
07:58:37livcdYardanico: you are back! :O
07:58:39PMunchdom96, how do I change to 0.11.0
07:58:45Yardanicolivcd: I didn't go anywhere :D
07:58:48PMunchYardanico, Nimble version, not Nim version :P
07:58:52Yardanicoohh
07:58:58livcdYardanico: I have not seen you for half a year at least
07:59:06dom96PMunch, nimble install nimble
07:59:14Yardanicolivcd: well yeah I wasn't very active
07:59:15PMunchHaha, yeah I was confused about that as well when they talked about it earlier :P
07:59:20nc-x[m]PMunch: koch --latest nimble
07:59:31nc-x[m]would give the latest commit
07:59:36PMunchI thought it was tied in with choosenim?
08:00:29nc-x[m]never used choosenim, so no idea regarding that
08:00:35PMunchOh, maybe something in how Nim read files on compile-time changed?
08:00:58PMunchBecause I guess nimble runs the compiled tests files from the root directory?
08:03:35*solitudesf joined #nim
08:07:48*alexander92 joined #nim
08:09:00alexander92hello Yardanico !
08:09:16Yardanicohi :)
08:09:31alexander92is nim 1 ready
08:11:34narimiranalexander92: it was ready 2 years ago! :P
08:14:07alexander92this is a ref right
08:18:39*navin quit (Remote host closed the connection)
08:20:08*thomasross quit (Remote host closed the connection)
08:20:33*thomasross joined #nim
08:29:26PMunchYay, protobuf is now working on devel :)
08:32:40FromGitter<wsdjeg> hello, any one use spacevim here? we need a nim language language layer maintainer.
08:33:14FromGitter<wsdjeg> you can join #spacevim in irc.
08:34:18Zevvleorize to the rescue! :)
08:35:06PMunchHmm, I use `echo recv myChannels.message` where myChannels is a tuple and the message member is a ptr Channel[string]
08:35:16PMunchBut no matter what I send I just get the output ()
08:36:45*navin joined #nim
08:37:30PMunchAh, never mind..
08:38:27FromGitter<danielecook> anyone got a quick minute for a compiler problem?
08:39:23FromGitter<danielecook> I wrote a utility that uses bitvector (https://github.com/MarcAzar/BitVector), however, there appears to be issues incorporating C code used in that package (murmer3.c)
08:40:06FromGitter<danielecook> I include the c code in my own package and add the include path but still am seeing a message like this: ⏎ ⏎ ```clang: error: no such file or directory: 'murmer3.c'``` [https://gitter.im/nim-lang/Nim?at=5d8884e6e45b6d47324034df]
08:40:17*navin quit (Remote host closed the connection)
08:40:27*navin joined #nim
08:40:41*Hideki_ joined #nim
08:44:17PMunchHmm, it has something to do with how wxWidgets handles its wxString type
08:45:47FromGitter<arnetheduck> `murmer3` looks wrong given that the algorithm generally is called `murmur3`
08:49:59Araqhttps://github.com/MarcAzar/BitVector/blob/master/src/bloom.nim#L13 well but the file is in private/murmur3.c
08:54:18FromGitter<danielecook> FFS my spelling
08:54:24FromGitter<danielecook> yeah - the original doesn't build though so not sure
08:56:37FromGitter<danielecook> where would `.c` files normally be stored in nim packages?
08:58:10lqdev[m]the author seems to have made a mistake here
08:58:50lqdev[m]the .compile pragma is set to compile murmur3.c which doesn't exist in the same directory as bloom.nim
08:59:13lqdev[m]it should be .compile: "private/murmur3.c"
08:59:29FromGitter<danielecook> ok that is what I figured
08:59:48FromGitter<danielecook> The proj. structure is also a little off - I'll try to correct and open a PR
09:00:12FromGitter<danielecook> It seems to build fine now though - wondering if there is a way to force it to recompile? Or is it doing that anytime I do `nimble install`?
09:01:20Araquse -f to force a rebuild
09:02:28*hoijui quit (Ping timeout: 264 seconds)
09:03:57PMunchOkay, all my packages and projects should build and run now with the current devel :)
09:05:26*navin_ joined #nim
09:05:36Araqyay
09:08:47*navin quit (Ping timeout: 265 seconds)
09:17:10FromGitter<mratsim> btw @dom96, regarding nimble, an `update` to update a single package to the latest (without creating the mess of -#master -#head -v0.1.0 unless some packages have pinned dependency) and an `upgrade` (to update all) would be very useful
09:17:28FromGitter<mratsim> Most of the reasons I have to nuke my nimble folder are due to missing those
09:28:11dom96That requires lock files which are in development
09:30:11FromGitter<mratsim> can't we have something even without lock files? ⏎ ⏎ there is no way to update a single package right now
09:30:38FromGitter<mratsim> or all
09:31:58*hoijui joined #nim
09:36:14dom96there is, you just `nimble install` it
09:36:42dom96or change the version/commit hash requirement in your nimble file
09:43:50*Hideki_ quit (Remote host closed the connection)
09:45:48*Hideki_ joined #nim
09:48:37*endragor quit (Remote host closed the connection)
09:49:44leorizeso... when is nim v1?
09:51:02*Hideki_ quit (Ping timeout: 276 seconds)
09:51:09FromGitter<mratsim> it was created at mignight, published for 10 minutes then removed. (V-lang TM)
09:52:55leorizelol
09:52:57FromGitter<danielecook> Anyone seen this error: ` Error: 'hg' not in PATH.`
09:53:00FromGitter<danielecook> with nimble install?
09:54:24FromGitter<mratsim> you are trying to clone a repo that is using mercurial (on bitbucket?)
09:55:54FromGitter<danielecook> no
09:55:56FromGitter<danielecook> it's from github
09:56:14FromGitter<danielecook> ```code paste, see link```
09:59:13FromGitter<danielecook> I'm trying to specify a specific commit
09:59:19FromGitter<danielecook> but can't seem to do so
09:59:25FromGitter<danielecook> without it thinking it's mercurial
10:00:23FromGitter<danielecook> nvm got it
10:00:34FromGitter<danielecook> you can't specify a version dependency when referencing a single commit with git...
10:00:36narimiran@danielecook maybe some dependency of that package uses hg?
10:00:40FromGitter<danielecook> might be a bug
10:00:46FromGitter<danielecook> ```code paste, see link``` ⏎ ⏎ This works [https://gitter.im/nim-lang/Nim?at=5d8897cdbe709e39d17a5904]
10:01:03FromGitter<danielecook> It might be better to raise an error in that scenerio @dom96?
10:01:20*navin_ quit (Remote host closed the connection)
10:02:46*hoijui quit (Quit: Leaving)
10:03:37Araqleorize, I said *today* not "in the morning"
10:05:51narimiran...and it is only 2am in alaska, 22 more hours to go :)
10:07:35*j8kE37cs2CBg joined #nim
10:07:38dom96danielecook: the commit hash is a version specification
10:08:06dom96you're telling it "I want this specific commit hash"
10:08:36FromGitter<danielecook> I agree fully
10:09:51FromGitter<danielecook> Why does it look for `hg` though? Maybe theres a better way to catch the user error.
10:12:17*navin joined #nim
10:15:59*sz0 quit (Quit: Connection closed for inactivity)
10:17:48*Hideki_ joined #nim
10:18:06*Vladar quit (Remote host closed the connection)
10:19:33owl_000pmunch, thanks, yes, inspired by logo>python turtle
10:22:30*ofelas quit (Quit: shutdown -h now)
10:27:18*Hideki_ quit (Ping timeout: 246 seconds)
10:28:35*navin quit (Remote host closed the connection)
10:29:11*navin joined #nim
10:29:23dom96danielecook: it's probably assuming the git URL + hash are the URL
10:29:31dom96there is some code that attempts to infer whether the URL is a git or a hg
10:29:41dom96and with that hash it must be identifying it incorrectly
10:30:07dom96submit a bug report for this
10:33:13*navin quit (Ping timeout: 245 seconds)
10:35:11PMunchowl_000, first thing I thought when I saw the code naming the drawer thing for "turtle" :P
10:36:20*Vladar joined #nim
10:37:13FromGitter<danielecook> @dom96 will do thank
10:41:51*navin joined #nim
10:45:21alexander92wow leorize
10:45:23alexander92are you in alaska
10:45:54*navin quit (Remote host closed the connection)
10:46:09*navin joined #nim
10:46:25Zevvoh leorize did you see the msg with the spacevim request? Here's your chance to broaden your audience!
11:12:03*navin_ joined #nim
11:16:11*navin quit (Ping timeout: 276 seconds)
11:17:41leorizealexander92: no :P
11:18:11leorizeZevv: the last time narimiran tried nim.nvim with spacevim nothing worked :P
11:18:34Zevvhaha
11:18:49narimiranleorize: ignore Zevv, he is just trying (too hard) to make your plugin to work on his monochrome vim :P :D
11:20:12leorizeZevv: also, I am working on vim8 support if you want to test that :p
11:20:34leorizeI'm doing it blind, just reading vim docs, no testing
11:21:16leorizenarimiran: he got lucky that I wanted to see if the refactoring do any good
11:22:03leorizeI'll just dump the code there and will remove it if too many people complain ;)
11:22:43Zevvleorize: sure, why not
11:23:02*abm joined #nim
11:28:18leorize[m]can you clone the current nim.nvim, then disable the highlighter (remove the second autocmd in ftdetect) and see if things work in vim 8?
11:29:18*navin_ quit (Remote host closed the connection)
11:30:17leorize[m]just test the indent plugin and '*'
11:36:37Zevvsooo many errors.
11:37:00Zevvthe problem is: I did some vimscript once, and hated it *so* much I can't get myself to ever do that again
11:37:22Zevvnot really fair of my to ask someone else to do it, but hey, one can always try
11:40:39*solitudesf quit (Read error: Connection reset by peer)
11:41:53*solitudesf joined #nim
11:56:45alexander92we just need a vimscript backend
11:56:47alexander92for nim
12:00:16*navin joined #nim
12:04:43*navin quit (Ping timeout: 250 seconds)
12:06:05*rockcavera joined #nim
12:09:38livcdfuriously refreshing my rss
12:09:57*navin joined #nim
12:12:39*clyybber joined #nim
12:14:35*Hideki_ joined #nim
12:18:10shashlick@arnetheduck thanks for checking nimterop, I've spent most of the recent time on getHeader on the v020 branch
12:18:51shashlickBeen trying to get nimarchive working so that choosenim can get 7z and xz support
12:19:21shashlick@dom96 did you see the winci PR for nimble
12:23:36dom96I'll have to take a look tonight
12:24:07*dddddd joined #nim
12:24:29leorizeZevv: if you're bombarded with errors and probably it's not as easy as I thought :P
12:26:35leorizethen*
12:32:38*Kaivo joined #nim
12:32:51*navin_ joined #nim
12:35:27*navin quit (Ping timeout: 268 seconds)
12:40:01*clyybber quit (Quit: WeeChat 2.6)
12:44:19*navin_ quit (Remote host closed the connection)
12:50:30*lritter joined #nim
12:51:04*navin joined #nim
12:51:23disruptekhappy birthday to you, happy birthday to you
12:54:49Araqhttp://blog.llvm.org/2016/12/llvms-new-versioning-scheme.html clang changed its versioning
12:54:59Araqwasn't aware, interesting
12:58:48narimiran$ nim -v
12:58:48narimiranNim Compiler Version 1.0.0 [Linux: amd64]
12:58:56federico3oO
12:59:51*theelous3 joined #nim
13:00:45federico3my wishlist for Nim 2.0 would be to have async i/o by default
13:01:08*navin quit (Ping timeout: 245 seconds)
13:01:10disruptekman, that didn't take long.
13:01:13FromGitter<mratsim> by default meaning?
13:01:26FromGitter<mratsim> when you read a file it's automatically async?
13:01:43disruptekless than 20mins and already talking about 2.0 changes.
13:02:01FromGitter<mratsim> look forward to the future, don't dwell on the past ;)
13:02:02owl_000lol, disruptek
13:02:10federico3yes, unless explicitely disabled, and also that you don't have to place "await" all over teh code
13:02:34FromGitter<mratsim> mmmh, I prefer explicit over implicit.
13:02:52federico3not when it's redundant
13:02:58FromGitter<mratsim> you can has a push pragma for that
13:03:02FromGitter<mratsim> have*
13:03:05*navin joined #nim
13:03:20FromGitter<mratsim> or use io library that hides that from you.
13:04:00FromGitter<mratsim> but I don't like at all when I have to workaround features that are supposed to ease my devel life (*cough* genericReset / GC)
13:04:13federico3you can't hide most of the await , Future[<type>] and {.async.}
13:05:07alexander92i think you can
13:05:10leorizeworking with async adds a lot of complexity to the code
13:05:15FromGitter<mratsim> also that would probably mean that all nim programs would come with an event loop
13:05:27federico3mratsim: an optional one
13:05:31FromGitter<mratsim> that causes embeddability issues
13:05:35alexander92e.g. https://github.com/status-im/nim-chronos/issues/2 (safeasync )
13:05:48alexander92but it is very implicit indeed
13:07:20alexander92overally, i wonder if we can keep the current semantics with no gc
13:11:27federico3alexander92: yes, pretty much that
13:11:49*lqdev[m] sent a long message: < https://matrix.org/_matrix/media/v1/download/matrix.org/WHldsjmxtpLoKzhhMEDUlBUU >
13:12:03lqdev[m]so that's a thing
13:12:40narimiranlqdev[m]: you can either wait for an official announcement, or you need to build it from github repo
13:12:53lqdev[m]dang it
13:13:11lqdev[m]I'll wait since I don't want to clutter my choosenim installs
13:14:07FromGitter<mratsim> You shall not speak about v1.0.0
13:15:05Zevvhttp://zevv.nl/div/today.png!
13:18:48leorizeare we using that? :P
13:18:54FromGitter<mratsim> The exclamation mark broke the link
13:19:12dom96narimiran: beautiful :D
13:19:44FromGitter<gogolxdong> It's another special day today. ⏎ On the Chinese lunar calendar, “Autumn Equinox” is the beginning of autumn and this day is just at the middle point between “Autumn Begins” to “Hoar-Frost Falls”.It arrives on September 22 to September 23 each year when the sun reaches the celestial longitude of 180 degrees.
13:20:07Zevvmratsim: then your terminal or irc client has a wrong URL matcher, because the ! is not an allowed character in an URL
13:20:23leorizenarimiran: so I guess you are waiting for that notoriously long release CI pipeline to finish? :P
13:20:25dom96Can't wait for our post to not make it to the HN front page
13:20:28dom96:P
13:21:00Zevv"Duh, another update of that FunnyCaseInsensitive_language"
13:21:14narimirandom96: lol
13:21:36dom96Zevv: oh no, that will be the first message
13:21:41leorizethere's also the infamous 'polluted namespace' issue :P
13:21:55narimiranoh, HN-bingo, bring it on
13:21:57ZevvI stopped caring
13:21:58leorizeand not everyone seem to be convinced by narimiran's blog post
13:22:05dom96"So you guys kept the style insensitivity huh?"
13:22:19FromGitter<gogolxdong> Thanks for everyone's hardwork.
13:22:29federico3wait what?
13:22:34PMunchHmm, I wonder if the style-insensitivity critics would be happy if it only applied cross-module
13:22:50*navin quit (Remote host closed the connection)
13:22:52leorizepeople will never be happy
13:22:53dom96I doubt it
13:22:54leorizedon't try :p
13:22:58*navin joined #nim
13:23:03owl_000or sell icecream
13:23:04*navin quit (Remote host closed the connection)
13:23:06narimiran"why another new language? Rust is the best"
13:23:24dom96people would be happy if we switched to case sensitivity, they would say "yay", then leave after a day and never be heard from again
13:23:25dom96That
13:23:34PMunchAnyone want to set up a list and a generator that creates random HN-bingo boards?
13:23:36dom96That's very much what happened when we switched from GPL->MIT
13:24:04ZevvPMunch: I can make a permutation of my bug-a-day generator: http://zevv.nl/play/misc/bug-a-day/
13:24:06federico3yep, you just please a crowd that does not really car9e
13:24:19PMunchHaha, well I personally like style-insensitivity. But it is a bit silly to do var my_variable = 10; echo myVariable
13:24:37federico3PMunch: we are working on that
13:25:04PMunchZevv, haha that's great
13:25:37PMunchBut yeah, pretty much that but instead of choosing 3 words and an image it would need to pick n elements and put them in a table :)
13:25:48PMunchfederico3, wait really?
13:26:35alexander92wow nim was gpl ?
13:26:41federico3yep
13:26:59dom96federico3 what are you working on?
13:27:12alexander92interesting, i wonder if it's feasible for more languages to be gpl
13:27:15alexander92language impl-s
13:27:30federico3dom96: updating my little code formatter to use nimpretty
13:27:38leorizewell for Nim it would need to be 'GPLv2 with linking exception'
13:27:38alexander92if the gcc can do it,probably its fine
13:27:52leorizeor else it won't make it to corporate users
13:28:06dom96IIRC the compiler was only GPL
13:28:22alexander92yeah, so the stdlib?
13:28:33federico3alexander92: GCC is widely used and it's not a problem as long as the code in the sdlib has a different license
13:28:47leorizelibgcc is a problem
13:28:53leorizebut they have a linking exception for thta
13:28:55leorizethat*
13:28:56Zevv * [new tag] v1.0.0 -> v1.0.0
13:30:23FromGitter<mratsim> I bet on import
13:30:31owl_000a qustion, https://play.nim-lang.org/#ix=1WyO
13:30:48FromGitter<mratsim> but I have my bingo board ready: https://forum.nim-lang.org/t/4758#31313
13:31:31alexander92federico3 right
13:33:09*navin joined #nim
13:33:32dom96I love how the travis CI failed on v1.0
13:33:39PMunchowl_000, because it is not a reference to an object, but an object
13:33:50PMunchSo the object is copied into the other object
13:34:06dom96oh, it was cancelled, of course, damn it github
13:34:19narimirandom96: i cancelled everything, so nightlies can build ASAP
13:34:46dom96Are you going to generate the bug fix list?
13:35:10owl_000so how to prevent it from copying.
13:38:22PMunchowl_000, by making profile a ref object: https://play.nim-lang.org/#ix=1WyT
13:39:17PMunchmratsim, yeah new things to complain about :)
13:39:24*j8kE37cs2CBg quit (Quit: Leaving)
13:39:44FromGitter<mratsim> I missed some stuff, but I don't remember which :P
13:39:51shashlick@dom96 - has the new nimble been tested with Nim, important packages?
13:40:13FromGitter<mratsim> maybe we should write a wiki page "easy bikeshedding with Nim" :D
13:40:14dom96shashlick yes, Araq ran it
13:40:38shashlickokay cool
13:41:04shashlickany other high priority items?
13:41:16federico3dom96: any tar.gz that I can try packaging?
13:42:06dom96No idea. narimiran and/or Araq will know
13:42:07dom96but yes, give federico3 a tar.gz before formally releasing it
13:43:37owl_000thanks pmunch
13:45:15narimiranfederico3, dom96: this will be populated as nightlies finish: https://github.com/nim-lang/nightlies/releases/tag/2019-09-23-version-1-0-5b43c98
13:45:23PMunchowl_000, no problem. What actually happens there is that the object gets passed by a pointer, and stored in the object as a pointer, so when you change it you actually change the data pointed to
13:46:00federico3narimiran: I'm already seeing some tarballs
13:46:02shashlicki guess i'll use the time to test all my projects with 1.0
13:46:10shashlickif any help needed, please ping
13:51:03narimiranfederico3: yeah, nightlies have just finished the first batch. ready for testing
13:54:20*navin quit (Remote host closed the connection)
13:54:41*Kaivo quit (Quit: WeeChat 2.6)
13:58:30*floppydh quit (Quit: WeeChat 2.6)
13:59:21*navin joined #nim
14:02:29*navin_ joined #nim
14:03:05*PMunch quit (Remote host closed the connection)
14:03:40*navin quit (Ping timeout: 264 seconds)
14:04:23ZevvHm I have a regression causing only the js backend to fail with "request to generate code for .compileTime proc" on my code, seems to be caused by a5e2db2a
14:08:43livcdoh my god it's happening
14:09:33alexander92?
14:13:38livcd1.0 ?
14:13:50alexander92ah i wait still for
14:13:53alexander92hm, it's on github
14:15:51FromGitter<zetashift> https://github.com/nim-lang/Nim/commit/5b43c98897ee7eb9f8ded8ceb7623f6caa23bace \o/
14:16:21narimiranbetter link: https://github.com/nim-lang/Nim/commit/5b43c98897ee7eb9f8ded8ceb7623f6caa23bace#diff-5cfdfeab79c2d2b7bbc78af7060c38c3R3566 :)
14:18:05disruptekhmm, the httpcore changes i instigated broke all my code. 😁
14:19:31dom96btw Manning is doing a deal today for printed books: $25 each. So a great chance to get Nim in Action :) https://www.manning.com/books/nim-in-action?a_aid=niminaction&a_bid=78a27e81
14:19:57narimirandom96: make a tweet about it
14:20:23dom96will do
14:22:56dom96tweeted
14:30:25FromGitter<qqtop> ```code paste, see link``` ⏎ ⏎ linux latest devel . [https://gitter.im/nim-lang/Nim?at=5d88d701c7ec2e2208da55d7]
14:30:39federico3narimiran: the source tar.gz is empty!
14:31:27FromGitter<ShieldHero> happy 1.0!
14:31:56FromGitter<ShieldHero> now people will stop using version numbers as an argument
14:34:51narimiranfederico3: wait, what?
14:35:32federico3narimiran: https://github.com/nim-lang/nightlies/releases/tag/2019-09-23-version-1-0-5b43c98 the 2 last assets
14:36:42leorizehttps://github.com/nim-lang/website/pull/167
14:37:03leorizein case you can't wait to see the release announcement :P
14:38:10narimiranfederico3: ouch, you're right, and it seems that even the older nightlies have also the same problem. cc shashlick
14:38:37narimiranwait, that source code is for nightlies, not for nim
14:38:56narimiranit is the source code for https://github.com/nim-lang/nightlies
14:40:06narimiranif you want nim source, it is in *.tar.xz files
14:41:08federico3narimiran: which ones? the Source code .tar.gz it's the nightlies source and the other tarballs are binary releases
14:41:11livcdmanning is always doing deals
14:41:21livcdI never bought a book from manning for a full price
14:43:10narimiranfederico3: try to download e.g. `nim-1.0.0-linux_x64.tar.xz`, it contains binaries and nim source
14:43:20*huaxk joined #nim
14:44:48narimiran(it is soooo strange to see that 1 as a first number, i got so used to seeing 0.xx.xx)
14:45:18dom96narimiran check out the comments on the website PR
14:45:20federico3narimiran: trying... in previous releases the layout and contents was very different than final source tarball
14:46:02FromGitter<gogolxdong> When will we officially release nim-v1.0 blog post, our QQ group member cannot wait releasing synchronously, there is a race between them and OSChina official team.
14:46:06dom96livcd: definitely not always
14:52:06dom96we don't even know :)
14:52:24FromGitter<gogolxdong> :) fair enough.
14:53:12*navin_ quit (Remote host closed the connection)
14:53:42narimiran@gogolxdong they can freely go to grab a dinner or so, it won't be for at least 2 hours, IMO
14:54:11alexander92time diff
14:54:52narimiranalexander92: you don't have a dinner at 11pm?? :D
14:56:03*owl_000 quit (Ping timeout: 268 seconds)
14:57:57*huaxk quit (Remote host closed the connection)
14:59:27alexander92yeah, i thought it wrong: that china time is ~12 am now, but that's the usa
15:01:32FromGitter<gogolxdong> 23:01 actually
15:01:56FromGitter<gogolxdong> Time to go to bed, :)
15:04:17disruptekbetter to wait for fall out, if any, on the tag. then if it's good, boom.
15:14:26*navin joined #nim
15:16:29*Hideki_ quit (Remote host closed the connection)
15:17:32*Hideki_ joined #nim
15:18:06*laaron quit (Remote host closed the connection)
15:18:51*navin quit (Ping timeout: 250 seconds)
15:22:34*Hideki_ quit (Ping timeout: 268 seconds)
15:23:54nc-x[m]IMO the release post should contain Future goals/directions
15:24:51*NimBot joined #nim
15:29:59*navin joined #nim
15:32:22disrupteki still cannot easily iterate over http headers or find unique keys, but now i get deprecation warnings, too.
15:33:02alexander92well, 1.1
15:33:04alexander92todo :)
15:34:53*navin quit (Ping timeout: 276 seconds)
15:35:10*navin joined #nim
15:37:47federico3narimiran: so far so good...
15:38:24Araqdisruptek, I looked at your PR and figured all it requires is more procs added to httpcore
15:39:00Araqso I figured the API is good enough for 1.0, additions are always easier
15:39:21disruptekfair enough; i took from you comment about the stable api that this was all we'd get. 😉
15:39:50disruptekbut, i think you didn't fix the host: in client, right?
15:39:51AraqI would have done the additions too but I'm too incompetent with HTTP's spec
15:40:20Araqwell yes, but your changes also broke the tests, so I was catious
15:40:28Araq*cautious
15:41:11Araqnc-x[m], that's covered in my blog
15:41:12disruptekyes, i chose the breaky route because i rarely worry about supporting broken behavior in my own code.
15:41:29leorizeZevv: apparantly vim8 support is much more complicated than I expected
15:41:37leorizeso probably won't make it for the nim 1.0 launch
15:41:42leorizerelease*
15:44:33FromGitter<andreaferretti> Sorry, maybe everyone already knows but... ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5d88e861b9f8210ed5d96063]
15:44:41FromGitter<andreaferretti> Is 1.0.0 out there?
15:44:54FromGitter<andreaferretti> I just realized
15:45:52leorizescheduled for release today
15:46:02FromGitter<andreaferretti> Wow, great! :-)
15:46:04leorizewell might be tomorrow depending on your timezone
15:47:14FromGitter<andreaferretti> @disruptek Well, it broke mine as well :-D
15:49:43narimiranfederico3: good to know, thanks for testing!
15:50:15federico3narimiran: still running build tests here...
15:50:53CadeyNim 1.0 hype
15:51:07Cadeyso excited to see it finally happen
15:51:18*Hideki_ joined #nim
15:51:46*PMunch joined #nim
15:52:08CadeyI'm gonna work more on that Jester post
15:52:32livcdThe Cult of Nim 1.0
15:53:00CadeyI'd at least use a biblical figure in the title
15:53:02Cadey:P
15:54:20FromGitter<andreaferretti> Does anyone know what are the latest changes in httpclient? It seems all my rosencrantz tests are now failing due to these
15:54:46*nc-x joined #nim
15:55:22nc-xAraq: which blog? I am looking at the release article https://github.com/nim-lang/website/pull/167/files and it does not contain anything like that?
15:55:38shashlick@narimiran @federico3 - what's the concern with nightlies?
15:55:46disruptekyeah, i haven't been able to get a http request to work in 1.0.
15:56:09alexander92hm, isn't it in important packages
15:56:31disruptekit happens to be what i'm breaking at the moment, so i thought it was just me.
15:56:38Cadeycan you link to the test run?
15:56:56FromGitter<andreaferretti> Not that this is a problem for me, but maybe it is not a great moment to release if httpclient is not working
15:57:22FromGitter<andreaferretti> For the tests, just clone https://github.com/andreaferretti/rosencrantz and run `nimble test`
15:57:27alexander92yep, thanks
15:58:04FromGitter<andreaferretti> Or if you want to do it manually, `nimble server`, then start `tests/rosencrantz` - then in another shell run `nimble client`
15:58:07federico3[we should really do pre-releases]
15:58:26FromGitter<andreaferretti> What happens is that the server seems to run fine (at least, testing from a browser)
15:58:27disruptekit was the 11th hour fix that didn't fix anything.
15:58:32FromGitter<andreaferretti> But the client hangs
15:58:42zedeusdisruptek: http requests don't work for me tierh
15:58:46zedeuseither*
15:59:51FromGitter<andreaferretti> (rosencrantz is in important packages, but for some reason that only tests that the server compiles. My actual tests start a server and a client that checks the server correct functioning)
16:00:55*nc-x quit (Ping timeout: 260 seconds)
16:02:15zedeushttpclient requests stall on read() from libc
16:02:28alexander92yep, for me hanging as well
16:02:30dom96lol
16:02:35FromGitter<mratsim> I probably need to change the Arraymancer tests in testament
16:02:43FromGitter<mratsim> as well*
16:02:53dom96the grief I got for releasing Nimble 0.11.0 and the screw up is the httpcore changes
16:03:12disruptekwell, it's a good time to catch it.
16:03:18FromGitter<mratsim> right now they only check that the module compiles but since it's all generic, it's probably just a parser test since nothing is instantiated
16:03:26dom96although it sounds like something completely different
16:03:27disruptekwoulda been better time yesterday, but...
16:03:27dom96not sure how httpcore changes could have caused this
16:03:40disruptekactually feels more like an async issue. anyone tried sync code?
16:03:47dom96yeah, try sync code
16:03:51zedeusnot related to async
16:04:02dom96can you try before the httpcore patch?
16:04:05dom96to see if that is the cause?
16:04:07alexander92it's sync code
16:05:12disruptekmore likely ray's patch, i guess.
16:06:45disruptekworks at pmunch's commit.
16:07:07alexander92hm, but wasnt ray's patch about async
16:07:08zedeusreverting the httpcore commit fixes it, investigating..
16:07:36disruptekworks at ray's commit.
16:08:04disrupteki guess that's pretty incriminating.
16:09:27*dom96 calls 911
16:10:28disrupteki feel like it's reasonable to expect `if myHttpHeaders == nil:` to keep working 0.20->1.0 but maybe that's just me.
16:11:16FromGitter<andreaferretti> rosencrantz tests use a *sync* client, because why not?, and they fail
16:11:42*Hideki_ quit (Ping timeout: 245 seconds)
16:11:59alexander92yes
16:12:52dom96narimiran: Araq: in case you're missing this, httpcore patch broke httpclient
16:13:23narimirani've already pinged Araq about it.
16:14:23disruptekdon't be grumpy, Araq 😉
16:14:31alexander92ix.io/1WAd this is some of the traceback
16:14:36alexander92i get for rosencrantz
16:15:02alexander92(it hangs in recv iirc)
16:15:28dom96I'm guessing the headers which get sent are wrong and the http server doesn't respond
16:15:29dom96can you check the network traffic?
16:16:40alexander92it seems it responds at least from strace
16:16:45alexander92sendto(5, "HTTP/1.1 200 OK\r\nContent-Length:"..., 52, MSG_NOSIGNAL, NULL, 0) = 52
16:16:47alexander92epoll_ctl(4, EPOLL_CTL_DEL, 5, 0x7ffe361e1910) = 0
16:17:26dom96huh, you're stracing the client?
16:17:42alexander92not sure what is the best cli tool to see the traffic
16:17:46alexander92stracing both
16:17:52dom96just add some echo's into httpclient
16:17:56alexander92i found strace and now i use it everywhere
16:18:05alexander92yeah, i did this as well
16:18:13disruptekfirst header should be Host: anyway, for 1.1. so it's not sending that, maybe.
16:18:31alexander92i also recorded a trace of it and they all seem to hang in the same way, with a traceback in parseBody => recv
16:18:59alexander92but i am not an expert in http servers as well, not sure what does this mean
16:19:06alexander92i guess people just need to git bisect it
16:19:16disruptekit's just that one commit.
16:19:27dom96can you just try the httpclient on google.com?
16:19:27*sacredfrog quit (Quit: ZNC 1.7.4 - https://znc.in)
16:19:28dom96to work out whether this is a client or a server issue?
16:19:32*navin quit (Remote host closed the connection)
16:19:55zedeusstalls
16:19:57alexander92yes
16:20:02disrupteki'm pretty sure it's not sending headers that are supplied, and i'm not sure why it won't send Host. i haven't looked at code; just looking at my broken clients.
16:20:14*a_b_m joined #nim
16:20:14disruptekit stalls on body read but i do get a status line back from the server.
16:22:42disrupteki guess Araq was cautious but perhaps not cautious enough. 😁
16:23:18*abm quit (Ping timeout: 265 seconds)
16:23:20*a_b_m quit (Client Quit)
16:23:29*PMunch quit (Remote host closed the connection)
16:23:58*PMunch joined #nim
16:24:23disruptekhmm, it is sending host and other stuff. or, at least, it's generating it.
16:24:35disruptekprobably we are having problems parsing the incoming response header.
16:24:42lqdev[m]so I'm debugging this soundio compilation issue again, can anyone running windows check if `nim c -r --passL:-lole32 tests/taudio` works? taudio can be found here: https://github.com/liquid600pgm/rapid/
16:25:18shashlickgreat to have working CI, stuff just works
16:25:44disruptekright?
16:26:08*navin joined #nim
16:27:14Araqok, well?
16:27:20Araqping disruptek ping narimiran
16:27:51shashlicklqdev - i'm trying
16:28:03lqdev[m]right, thank you
16:28:04narimiranwe revert https://github.com/nim-lang/Nim/commit/b865c2a54b7d706b31b5eba29dfdbb16809aa400 , re-tag v1.0, and re-run nightlies?
16:28:12narimiranAraq: ^
16:28:17Araqgo for it
16:28:35zedeusyeah the header string sent is the same before and after the commit
16:28:49Araqnarimiran, but wait a little longer
16:28:52dom96wait a minute
16:28:58narimiranok, waiting
16:29:28dom96Diagnose the problem, it might just be a simple fix is needed
16:30:04shashlicklqdev - cmd /c cd c:\Users\Test\Desktop\DL\programming\rapid\src\rapid\lib\glfw_src && git checkout #latest => `error: pathspec '#latest' did not match any file(s) known to git`
16:30:26lqdev[m]try running it again
16:30:41lqdev[m]it's a known bug, though I don't know how to fix it
16:31:00Araq \#latest ?
16:31:07lqdev[m]the first time you try compiling something it fails with this error
16:31:23Cadeyby the way
16:31:25narimiranif somebody is willing to also test nimble with various commands, there were also some last-minute changes :)
16:31:28Cadeythe discord bridge is apparently down
16:32:00lqdev[m]Araq: that's a branch in the GLFW repo which contains the latest release
16:32:12*abm joined #nim
16:34:12zedeusso it receives the request from the server, headers look fine, but it gets stuck at recvFull inside parseBody
16:34:13Araqso ... what's the problem with the new httpcore?
16:34:18shashlicklqdev - it is not linking
16:34:25alexander92i just dont understand how httpclient works
16:34:32lqdev[m]just as expected
16:34:38alexander92why does it let recvLen = await client.recvFull(4000, client.timeout, true)
16:34:49lqdev[m]that means this issue isn't specific just to my machines
16:35:04PMunchHmm, is chronicles broken?
16:35:15alexander92what does this do if the response is 520 bytes
16:35:25alexander92hmm, it seems it only does it if no content length header
16:35:30shashlickyou need to link with c++ if you are using C++ files
16:35:35alexander92but indeed it's strange i dont receive it, sorry
16:35:37lqdev[m]I don't
16:35:41lqdev[m]that's the issue
16:35:43alexander92so proobably a header thing
16:35:54disrupteki was thinking maybe it wasn't parsing content-length right and so it was only reading 0 on the stream.
16:35:54FromGitter<mratsim> @PMunch, why is it broken?
16:36:02disruptekbut, it passes the parsing tests.
16:36:24lqdev[m]you already suggested that a while ago, but that didn't change anything, since I don't use any C++ libs
16:36:31disruptekstill, that may be the problem depending on how httpclient reads the header values.
16:36:53zedeusfound the first clue, recvFull always gets 4000 as the size after the commit, but the correct one before
16:37:11alexander92yes, that's true
16:37:18alexander92but i think it shouldn't even get to that branch
16:37:18PMunchmratsim, I get this error whenever I try to use it: /home/peter/.nimble/pkgs/chronicles-0.6.0/chronicles/log_output.nim(79, 18) Error: undeclared identifier: 'OutputStreamVar'
16:37:21disruptekwell, that's no beuno.
16:37:29PMunchAnd the GitHub page says that builds are failing..
16:37:31alexander92because it's only if no content-length is received
16:37:31shashlicklqdev - okay let me take a look
16:37:46disruptekso we'll just default it to 0.
16:37:59FromGitter<mratsim> does it work in older nim?
16:38:24PMunchTried with 0.20.0 and that didn't work
16:38:29zedeushowever "content-length" is correct the returned headers before and after
16:38:42*Trustable joined #nim
16:38:50PMunchSame with 0.19.2
16:38:59zedeusoh I see now, it's a case sensitivity issue
16:39:03*sealmove joined #nim
16:39:14disruptekbingo.
16:39:19disruptekbecause they are stored in lower-case?
16:39:22zedeusyep
16:39:27zedeusand it tries to get Content-Length
16:39:35disrupteknice job.
16:39:40disruptekthat fixes it.
16:39:46FromGitter<mratsim> Then I guess there is an export missing, you are victim of the generic sandwich
16:39:51disruptekline 673
16:40:09FromGitter<mratsim> see: https://github.com/nim-lang/Nim/issues/11225
16:40:19zedeusindeed changing that to "content-length" fixes it, but this isn't a proper fix
16:40:21alexander92yes, zedeus is right
16:40:30FromGitter<andreaferretti> weren't the latest httpcore changes exactly about casing issues?
16:40:37alexander92116
16:40:39disruptekno, but it gets us moving.
16:40:41alexander92in httpcore
16:40:43alexander92should fix it
16:41:06disruptekno, we don't want to change it there.
16:41:07FromGitter<andreaferretti> Headers were once stored into a non case sensitive strtab
16:41:12alexander92hmm, actually if you use []
16:41:15alexander92it should work
16:41:26disruptekit's the getOrDefault call.
16:41:27alexander92yes, we have to fix
16:41:30alexander92getOrDefault
16:41:31alexander92yes
16:41:32zedeusyes
16:41:37disruptek187
16:41:48dom96lookup of headers should be case insensitive
16:42:02dom96we should also have tests for this inside httpcore :)
16:42:08FromGitter<andreaferretti> eaxctly
16:42:09disruptekjust patch it on the web unless you want a pr.
16:42:13Cadeysounds like a great opportunity to do that :)
16:42:21FromGitter<mratsim> don't patch in production ...
16:42:28FromGitter<andreaferretti> it once was by default because it used a case insensitive strtab
16:42:57alexander92ah, the only one where toLowerAscii
16:43:01alexander92was missing
16:43:02disruptekeh this isn't something i'd worry about patching in production.
16:43:13rayman22201Hey guys. How is 1.0 coming? Did one of my prs break something? I'm nervous.
16:43:14FromGitter<andreaferretti> I guess now they are a table, to accomodate multiple values
16:43:19alexander92maybe we need a distinct "lowerAsciiString" type
16:43:25disruptekafter all, araq committed it with less testing and investigation than we have given it.
16:43:25Cadeyi'd like to volunteer to host the discord <-> IRC relay bridge
16:43:27Cadeywho should I talk to?
16:43:31alexander92it would've catched that
16:43:32FromGitter<mratsim> TaintedString is not even used ....
16:44:03dom96Cadey: the problem wasn't hosting but moderation AFAIK
16:44:04alexander92with a single converter
16:44:12dom96Cadey: pretty sure the bridge was banned by someone
16:44:17FromGitter<andreaferretti> levaing, good luck with the release
16:44:19FromGitter<andreaferretti> bye!
16:44:28disruptekthanks andrea
16:44:36disruptekis someone patching this?
16:44:51FromGitter<mratsim> the bridge was banned? On the Gitter side?
16:44:57Cadeydom96: i'm not seeing it banned on the IRC side
16:45:27dom96then I guess it died
16:45:28dom96I'll have a look when I get home
16:45:34alexander92rayman22201, nope
16:46:21alexander92mratsim well my point was it would work for that data structure only
16:46:37alexander92but i admit i used similar distinct int types in my codebase, and stopped using them in one refactoring
16:46:41alexander92so it's subjective
16:46:44Cadeydom96: thanks, worst comes to worst i'm glad to pitch in to help make it a thing
16:46:52zedeuscreated pr
16:46:55disruptekpr submitted.
16:46:58rayman22201Oh good 😊
16:47:02alexander92wow the battle of the pr-s
16:47:06disrupteklol
16:47:11rayman22201Anything else I can do to help?
16:47:44dom96if only we got so many willing volunteers when we're not releasing 1.0 :P
16:47:46Cadeyzedeus and disruptek submitted basically the same PR
16:47:59Cadeyso it's got peer consensus </s>
16:48:00disruptekit woulda been nice to test this yesterday.
16:48:04narimirandom96: will release a new 1.0 every week!
16:48:07zedeusI kept it under 80 characters :P
16:48:09rayman22201Lol
16:48:13dom96where are the tests?
16:48:38dom96this also goes to show that we need to test more, so please test everything
16:48:47dom96(or at least your projects :P)
16:48:53alexander92where we're going
16:48:55alexander92we don't need tests
16:48:59federico3narimiran: query
16:49:11disruptekhttp needs way more tests. especially those that demonstrate current behavior that's broken. 😉
16:49:22Araqyup
16:49:26dom96nimble in particular too since I've changed quite a bit
16:50:06alexander92we should thank andrea/disruptek for testing this one at least
16:50:50disruptekugh, i spent an hour patching only to find out it wasn't me. 😝
16:51:22Cadeydisruptek: you spent an hour understanding complexity
16:51:27Cadeyit's not a wasted hour :)
16:51:42alexander92now you can write your own tcp stack
16:52:36disruptekbtw, Araq, i really think we should be have an `== nil` for HttpHeaders. it stuff i'd written months and months ago, and stuff i wrote last week.
16:52:42disruptek^broke stuff, i should say.
16:53:38Araqdisruptek, I still intend to change the implementation to be a single string
16:53:45Araqso it's isEmpty
16:54:09disrupteki understand, but this is breaking for many people. if you're okay with that, i'm okay. i already made my changes.
16:54:25disruptekisEmpty doesn't exist in 0.20.
16:54:30Araqthen people need to submit more packages to important_packages
16:54:42dom96you want to make what a single string?
16:54:46AraqI created the PR to see what breaks, nothing broke
16:54:50Cadeywhat is important_packages?
16:55:08Cadeyah i found it never mind
16:55:13Araqhowever, maybe it's better to revert my changes altogether then
16:55:17dom96why doesn't == nil work? It's a TableRef no?
16:55:20disruptekAraq: i don't disagree, but my packages aren't important. i'm just telling you about a part of the interface that i use. if no one else uses it, that's cool.
16:55:35Araqdom96, it's a distinct type now, cannot compare it to 'nil'
16:55:49dom96{.borrow.} the `==`? ;P
16:56:01dom96I don't see how you can implement this as a string
16:56:05dom96or why you'd want to
16:56:39Araqdom96, because laziness and memory efficiency
16:56:40disruptekit's still broken.
16:56:44disruptekgrrr.
16:56:46disrupteklet's revert
16:56:51Araqok.
16:56:58Araqnarimiran, please revert and rebuild
16:57:08disruptekhold on, maybe it's me.
16:57:19dom96I really don't wish httpcore to be considered "unstable"
16:57:25disrupteksorry, my client isn't working, but maybe i'm doing header-fu wrong now.
16:57:48Araqdom96, then maybe the next time don't hack something together and call it a "stdlib"
16:57:51disruptekall i know is this worked fine last night.
16:57:53narimirancan somebody else test it too? :)
16:58:02Araqand yes, I know I did the very same :P
16:59:26disrupteksetting headers `=` magically fails. :-D
17:00:49dom96right, well, I'm heading home
17:00:56dom96will be around in around 45 minutes
17:02:00rayman22201sorry. I'm not fully up on the context. what needs testing? httpcore?
17:02:59narimirandisruptek: zedeus says that the fix works fine :/
17:03:20rayman22201My locks module PR is still failing, and I don't understand the failures, but that is a much lower priority
17:03:38disruptekyou're able to make headers and send them?
17:04:35zedeusyes
17:06:26disruptekah, okay. it looks like i have more to do to make yesterday's 0.20 code run on today's 1.0.
17:08:07alexander92we really need a
17:08:14alexander92test-effects aware CI
17:08:22alexander92it would be a game changer
17:08:58alexander92imagine proving the effects of a small diff to only apply to 4/1000 tests and run only them
17:09:25disruptekokay, i'm fixed. yeesh.
17:09:27alexander92and then run the full suite only periodically
17:11:36*navin quit (Remote host closed the connection)
17:12:14narimiransorry guys, i need to cancel travis CI for your PRs so nightlies can run
17:12:21rayman22201`/home/travis/.cache/nim/manual_d/manual/manual_snippet_101.nim(10, 5) Error: type mismatch: got <proc (x: string){.noSideEffect, gcsafe, locks: 0.}> but expected 'Callback = proc (s: string){.closure.}'` ????
17:12:42alexander92this happens often to me
17:13:13narimiranshashlick: you here?
17:13:45rayman22201seems like a random failure that has nothing to do with my PR... this failure happens while building the docs of all things. Not even the test suite.
17:14:05*navin joined #nim
17:14:52rayman22201@alexander92 that error happens often to you?
17:15:34*navin_ joined #nim
17:15:45alexander92well similar errors
17:16:00alexander92e.g. passing {.closure.} to stuff that dont expect it
17:16:02alexander92and the opposite
17:16:15alexander92i think (proc(x: string) {.closure.}) or something like that
17:16:19alexander92maybe fixed it
17:16:22alexander92not really sure
17:18:36rayman22201how about: `/home/travis/.cache/nim/manual_d/manual/manual_snippet_101.nim(3, 34) Error: can have an unlisted effect: IO`
17:18:53*navin quit (Ping timeout: 265 seconds)
17:18:54rayman22201or `/home/travis/.cache/nim/manual_d/manual/manual_snippet_101.nim(5, 12) Error: undeclared identifier: 'x'`
17:19:08rayman22201I should look at manual_snippet_101.nim
17:19:19rayman22201something about that file is really borked somehow
17:20:02alexander92hmm
17:20:47rayman22201I just don't understand how this: https://github.com/nim-lang/Nim/pull/12231/files#diff-14091ef14765ad12c3c44cf21b6c256eR13
17:20:53rayman22201would cause that to break of all things?
17:21:15Araqrayman22201, it's pretty simple if you pick the right UI
17:21:54rayman22201lol. the UI was using is Travis
17:22:01Araqoh you made appveyor works
17:22:09Araqtoo bad, no nice UI left then :-)
17:23:01rayman22201:-P
17:23:56Araqanyway, the manual failures are misleading, they are supposed to fail
17:25:20rayman22201ahhhh. red herring. thank you. That helps
17:27:23rayman22201the when needs to be `when compileOption(threads) or when not defined(docs):`
17:28:11rayman22201that's interesting though. Why does threadpool not require this? threadpool also has docs built
17:30:30shashlick@narimiran - what's up
17:31:37narimiranshashlick: double check: we pushed another commit to v1 branch, and now i just restarted nightlies here: https://travis-ci.org/nim-lang/nightlies/builds/588440415 - should this be enough to pick-up the latest commit?
17:33:57shashlickyes nightlies just pulls the latest nim commit
17:34:01shashlickchecking regardless
17:34:41shashlickthat link is for 5b43c98897ee7eb9f8ded8ceb7623f6caa23bace
17:34:45shashlickso it is the wrong one
17:35:31shashlickif you open one of the jobs, it prints the nim directory path which contains the hash being pulled
17:36:50narimiranso i need to trigger a separate build?
17:37:10shashlickdid you restart that after the new commit?
17:37:11PMunchsorry, mratsim, I got busy. Did you reply to me about chronicles?
17:37:43shashlickoh do you mean the version-1-0 branch?
17:37:50narimiranshashlick: i think it is correct git hash. i'm talking about v1. i did not restart devel, it is not important
17:38:14narimiranHint: /home/travis/build/nim-lang/nightlies/nim/f7a8fc46c0012033917582eb740dc0343c093e35/tools/niminst/niminst ......
17:38:18shashlickokay makes sense, those jobs started 23 minutes ago
17:38:30narimiran`f7a8fc461` is the latest commit
17:38:53shashlickNIMDIR = /home/travis/build/nim-lang/nightlies/nim/f7a8fc46c0012033917582eb740dc0343c093e35
17:40:35disruptekwell, that was exciting.
17:44:23alexander92PMunch, can you give an example of how you call chronicles
17:50:41PMunchI just imported it and tried to log a notice
17:51:19PMunchHmm, a bug in nimble? http://ix.io/1WAZ
17:52:04nc-x[m]PMunch: update nim
17:52:19nc-x[m]i think that issue is the one being discussed above
17:52:39nc-x[m]bcos of which the http changes were reverted on devel
17:52:59nc-x[m]so should work fine on latest commit
17:56:46*tribly quit (Remote host closed the connection)
17:57:12*tribly joined #nim
17:59:37*Vladar quit (Ping timeout: 245 seconds)
18:02:51PMunchLike a couple minutes ago?
18:03:11alexander92https://devblogs.microsoft.com/dotnet/announcing-net-core-3-0/?WT.mc_id=social-twitter-marouill also released today
18:03:34narimiranouch, battle for spotlight
18:04:38disrupteknow i don't know what to do with packages i updated to the httpcore 1.0 interface but which won't run with devel since it was reverted.
18:05:44dom96how are things going?
18:05:53narimirandisruptek: revert the changes in the packages?
18:06:11dom96did we revert httpcore?
18:06:14narimirandom96: nightlies are about to finish building a new v1.0
18:06:17narimirandom96: yep
18:06:34dom96is that with the reverted httpcore?
18:06:43Araqyes
18:06:44narimiranyep, what else
18:07:02dom96dunno, i'm surprised it's so fast
18:07:09disrupteki guess i can compile-time test for the interface.
18:07:16dom96I'm going to eat, will be around in 30 or so minutes
18:07:32narimirandom96: well, i cancelled all the other jobs, so it just takes ~50 minutes to build
18:08:50*Hideki_ joined #nim
18:11:59PMunchnc-x[m], same issue with nimble on latest devel
18:12:34alexander92how do you build nimble
18:13:30*Hideki_ quit (Ping timeout: 265 seconds)
18:14:20alexander92it seems to work for me
18:14:24alexander92after ./koch nimble
18:26:40PMunchI did "choosenim update devel"
18:26:53PMunchWhich builds Nimble however that does it
18:29:05*gangstacat quit (Ping timeout: 276 seconds)
18:29:54PMunchIt's able to install properly as long as I manually update the packages_official.json file
18:29:56*exelotl joined #nim
18:30:14*Vladar joined #nim
18:33:53Zevvbwah, nim 1.0 breaks npeg on the js backend. Alas, noone uses that anyway; so be it
18:34:33*Ven`` joined #nim
18:34:50rayman22201need to add the js backend to the CI (and so the combinatorial matrix of test coverage continues to explode :-P)
18:35:18ZevvI have 'nimble testall' which tests a normal build, a danger build, a 32 bit build, a windows build and a js build.
18:35:20disrupteki was hoping it use it, but one cannot do json at compile-time with a js backend, ironically, which means my use is denied.
18:36:01ZevvNot sure if node is available on the important-packages test, if so I can enable the js test by default. Makes sense, since with all the macro stuff I've met some issues over the last months
18:36:02alexander92btw
18:36:05alexander92narimiran i also agree
18:36:21alexander92that we should have at least a very short "future" roadmap paragraph
18:36:25alexander92in the blog article
18:36:31alexander92i dont remember who said that
18:36:52alexander92at least something like what are the biggest next steps
18:37:03alexander92always good to have some perspective
18:37:34lqdev[m]shashlick: have you figured something out in regards to that link error?
18:37:48shashlickno buddy, not yet
18:37:57shashlicki was thinking it was because of the order of .o files in the link command
18:38:21lqdev[m]I was thinking the same, but I don't know if it's possible to change it
18:38:53narimiranalexander92: there will be an another v1.0 article where there will be a short passage about nim future
18:39:16lqdev[m]also, it would seem strange considering that Nim orders them in the same order as compiling files
18:39:19disruptekshashlick: isn't that the very problem you had with libarchive which you fixed and said, "i'm gonna forget this in 3 months"
18:39:36lqdev[m]and soundio.c is one of the first ones that's compiled
18:40:33shashlicklqdev - i tried command manually but it makes no difference
18:40:41shashlick@disruptek - it's not been 3 months yet 😄
18:41:03disruptekah, i'll remind you next month. 😉
18:41:03shashlick@lqdev - nim will order that way, it has no idea on dependencies
18:41:22lqdev[m]well I meant in the order of compilation
18:41:37lqdev[m]afaict it compiles all .c files first, then all .nim files
18:41:51alexander92narimiran, sounds good: two articles
18:41:57lqdev[m]s/.nim/.nim.c/
18:42:22shashlicklqdev - you might be better off looking at my getHeader work in nimterop
18:42:30shashlickinstead of manually compiling stuff
18:42:39shashlickmeanwhile, you are calling cCompile before creating your config file
18:42:45lqdev[m]right, I'll check it out
18:42:52lqdev[m]oh crap
18:42:56lqdev[m]whoops
18:43:03shashlickwell, maybe it makes no diff
18:43:24*gangstacat joined #nim
18:44:09alexander92https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-core-3-0/
18:44:31alexander92that's a ok way to list perf improvements/measurements
18:44:47rayman22201I love doing a stupid git command while not paying attention and loosing a bunch of work :/
18:44:48shashlick@lqdev - see these examples - https://github.com/genotrance/nimarchive/tree/nimterop/nimarchive
18:48:23*gangstacat quit (Ping timeout: 252 seconds)
18:48:49lqdev[m]shashlick: where can I find documentation for getHeader?
18:48:53Zevvshashlick: what is your link problem?
18:49:30lqdev[m]rather my link problem
18:49:59lqdev[m]there are a ton of weird _imp_soundio* function references which can't be found when compiling on windows
18:52:56Zevvoh, can't really help you with that I'm afraid
18:54:31lqdev[m]this seems to be a weird bug with MinGW since it works fine on gcc
18:54:33Zevvoh it's a mingw poblem right
18:54:38ZevvI can try to reproduce then
18:54:50ZevvI can cross mingw on linux
18:54:52Zevvlemme see
18:55:15Zevvwhat is a minimal main program to test with?
18:55:27Zevvthe audio playback example from the readme
18:55:27Zevv?
18:56:03lqdev[m]try tests/taudio
18:56:30lqdev[m]`nim c --passL:-lole32 -r tests/taudio`
18:56:40lqdev[m]I still have to add that passL to the source code
18:57:24dom96PMunch, what's the issue with Nimble?
18:57:51Zevvlqdev[m]: hm mingw crosscompile borks because of ccmd: cmd /c mkdir \tmp\rapid\src\rapid\lib\ogg_src
18:58:06lqdev[m]ah really?
18:58:10lqdev[m]what's the error?
18:58:12shashlick@lqdev - see the examples and also the source - there's documentation for the proc
18:58:14shashlickbuild.nim
18:58:26lqdev[m]oh and don't try to cross-compile from linux, nimterop doesn't support that
18:58:39shashlickhttps://github.com/nimterop/nimterop/blob/v020/nimterop/build.nim#L617
18:58:46dom96"our newly-created [Patreon account](https://www.patreon.com/araq)." shouldn't think be a nim-lang patreon?
18:58:52lqdev[m]you need to be on windows which is already an annoyance. kind of sad it can't be fixed easily
18:59:27dom96narimiran: please link to our donate page instead https://nim-lang.org/donate.html
19:00:07Araqdom96, patreon seemed to prefer single persons, not sure
19:00:39Zevvlqdev[m]: the tooling is not really ment for crosscompiling; nimterop, ogg sources etc
19:01:07dom96Araq, https://www.patreon.com/godotengine
19:01:50lqdev[m]Zevv: it doesn't matter whether it's ogg or not, any nimterop wrapper can't be cross-compiled
19:01:56rayman22201@araq and @narimiran Going to be confusing for existing donors. Do we switch platforms or stay on the existing thing?
19:02:01Zevvaah any nimterop, that's different
19:02:19dom96also, until you set up patreon properly I wouldn't advertise it
19:02:20PMunchdom96, it isn't able to download the official packages list: http://ix.io/1WAZ
19:02:38dom96PMunch, that's because of the httpcore changes though, right?
19:02:46shashlick@Zevv - it is a nim limitation since once you set --os:windows, every when defined() is windows
19:02:59disruptekmight be a new header corner case.
19:03:06shashlickso there's no way to run os specific code
19:03:07Araqdom96, define "properly"
19:03:18shashlickat compile time
19:03:36Zevvshashlick: I only set -d:mingw, but that probably results in the same. It is good enough for regular nim crosscompiling on linux, but something also is issuing windows shell commands
19:03:46Zevvso yes, indeed
19:03:57shashlickya -d:mingw sets os = windows
19:04:03disruptekPMunch: what time is it where you are? 😉
19:04:33dom96Araq, the main text is markdown and isn't rendered properly. Also, some tiers would be good
19:06:41disrupteklatest nimble is working for me.
19:06:44dom96I would say a Nim-general patreon would be good as well though
19:07:23Araqdisruptek, what's the problem ?
19:07:43disruptekPMunch is getting an error re: `location` header absence.
19:07:51Araqthat's the httpcore regression
19:07:53Araqfixed
19:08:01disruptekworking for me on head w/o httpcore commit.
19:08:08Araqso ...
19:08:20disruptekwell, it's not necessarily guaranteed to be the source of the problem.
19:08:52disruptek(that's why i asked what time it is where he is)
19:09:42*treeform joined #nim
19:10:22*navin_ quit (Remote host closed the connection)
19:11:51lqdev[m]shashlick: I don't really want to use getHeader, it's annoying that it creates a shared library. I want a dependency-free executable because .dll/.so files are messy
19:11:59*exelotl quit (Ping timeout: 250 seconds)
19:12:01treeform1.0 blog post when? I am waring out this page: https://nim-lang.org/blog.html
19:12:24disruptekso you're the one.
19:12:44PMunchdom96, I don't think so, they were rolled back before I updated nim
19:13:07PMunchdisruptek, it's 9:12PM, how?
19:13:07lqdev[m]and it's also annoying that it has all of its settings changed through --define, since you can't specify a nim.cfg for a library
19:13:12shashlick@lqdev - getHeader supports shared and static
19:13:22shashlickit can also find system libs if applicable
19:13:39shashlickhttps://github.com/nimterop/nimterop/blob/v020/nimterop/build.nim#L645
19:13:41disruptekso you updated 3.5hrs ago.
19:14:14disruptek(ie. update to head and build all)
19:14:36disruptekbut, that's another good test case. one of the only ones we have, sadly.
19:14:46dom96PMunch, are you sure?
19:15:07treeformWill there be a 1.0 party?
19:15:09PMunchYes, I asked and people said it has been reverted so I updated Nim and I got the same error..
19:15:10disrupteki'm sure his version predates the rollback.
19:15:26disruptekthis is from his capture: `nimble v0.11.0 compiled at 2019-09-23 17:50:23`
19:17:08PMunchOkay, updating again now
19:20:20AraqPMunch, waiting for your ok
19:21:37dom96treeform: probably at FOSDEM, yes :)
19:21:42PMunchBuilding C sources now
19:21:44Zevvtreeform: yes, keep your champagne ready please
19:22:09PMunchOooh, I have been waiting for a good reason to open one of my champagne bottles
19:22:27Araqbuilding C sources?
19:22:33Araqoh well
19:22:52dom96Araq, you should give us the tar.gz to test
19:23:02disrupteki dunno how you guys tolerate these machines.
19:23:30PMunchdisruptek, my laptop?
19:23:51Araqhttp://nim-lang.org/download/nim-1.0.0.tar.xz here
19:24:02*Cadey runs choosenim update devel
19:24:02*FromGitter quit (Remote host closed the connection)
19:24:27*FromGitter joined #nim
19:24:30disruptekwhatever it is you develop on. i couldn't stand slow builds.
19:24:43Cadeywhat does "slow" mean?
19:24:46disruptekfull from-scratch nim build is 21s for me.
19:24:58PMunchIt's normally pretty fast..
19:25:53PMunchOh the nimble build time is wrong..
19:25:59disruptekmaybe your network cable is disconnected. are you talking to us on a walkie-talkie?
19:26:06dom96These filenames are interesting: c_code/1_2/@m..@slib@spackages@[email protected]
19:26:08PMunchThe one I just compiled says: nimble v0.11.0 compiled at 2019-09-23 19:25:30
19:26:18PMunchBut the time here is 9:25PM
19:26:22alexander92it probably uses GMT
19:26:26dom96PMunch, it's GMT
19:26:26disruptekwow, two bugs in one.
19:26:29*navin joined #nim
19:26:32alexander92it's dom96 time
19:26:36alexander92the official time of nim
19:26:37disrupteklol
19:26:42PMunchAh
19:26:45dom96lol, actually it's not
19:26:51Araqdisruptek, don't say "bug", it's freaking me out
19:26:58dom96Since we're in British Summer Time :/
19:27:01disruptekso anyway, you still have the problem, huh?
19:27:02PMunchBut now it worked for some reason, so bug fixed I guess
19:27:28PMunchdom96, when do you switch back?
19:27:37dom96no idea :)
19:27:46alexander92i think summer time is scrapped
19:27:50disruptekAraq: sorry, do you have a notifier on the b-word?
19:28:15alexander92araq, nim can't compile my pizza
19:28:22PMunchalexander92, the EU has said that countries should consider stopping with summer time
19:28:25disrupteklol
19:28:44disrupteki feel like i'm responsible to today's release snafu and i'm sorry about that.
19:29:00disruptekit's exactly what i didn't want to happen.
19:29:14dom96tut tut https://gist.github.com/dom96/578f1119224144046c8c331df25f036e
19:29:32dom96(Don't worry Araq that's not a serious issue)
19:29:57*Araq sighs
19:30:04livcdis it out yet ?
19:30:09Araqdisruptek, the b-word is fine on non-release-days
19:30:10livcdare we there yet?
19:30:50*navin quit (Ping timeout: 246 seconds)
19:30:59disrupteki guess, since PMunch's, uh, thingy, was transient and unrelated.
19:31:03dom96okay, so I'm out of ideas of what else to test with this tar.xz
19:31:07dom96it seems to be working fine
19:31:20alexander92great
19:31:24alexander92thank you gus
19:31:26alexander92guys
19:31:34dom96I compiled Nim + nimble. Ran `nimble refresh`, installed a package, did a package search
19:31:48Araqtest 'nimble run'
19:32:41disruptekactually, `nimble doc` doesn't work as expected.
19:33:00disruptekto put that differently, i couldn't figure out where i had to be and what arguments to give it.
19:33:16disruptekeverything seems to yield Error: Specified file, . or ..nim, does not exist.
19:33:19Araqthat's not a new problem
19:33:22AraqI think
19:33:28disruptekno, i'm pretty sure it's old.
19:33:38dom96yeah, that's not a popular feature I don't think
19:33:48disruptekextremely unpopular on my machine.
19:34:00livcdthe worst that can possibly happen is that Nim gets compared to V-lang in the comments
19:34:20treeformV-lang did get soo much hype though
19:34:37livcdrewrite istrolid in nim :)
19:34:37treeformthe worse thing that can happen is that no cares
19:34:40dom96we just need to generate some hype
19:34:45disrupteki dunno, i thought those threads were pretty entertaining.
19:35:17livcdtoday was .NET conference so I hope you can answer all those questions about nullable reference types
19:35:48dom96anyway, I think I'm happy with that tarball
19:36:20Zevvdom96: how will you time the HN post?
19:36:33dom96I probably won't
19:36:39Zevvhow so?
19:36:43dom96someone will likely submit it for us ;)
19:36:49disruptekit won't matter.
19:36:51livcdIt's already too late
19:36:52dom96I'm thinking about what to tweet
19:36:57alexander92we planned on checking nullable references
19:37:09livcdamericans are already awake and checked their RSS feeds
19:37:12alexander92but still not well tested, there is a PR WIP
19:37:16Cadeyeh
19:37:19ZevvTrue. Best HN time is morning coffee IMHO
19:37:22Cadeylet people compare it to V
19:37:24*gangstacat joined #nim
19:37:27Cadeylet people be wrong
19:37:55disruptekyou may as well compare cave painting.
19:37:56livcdYou should have asked Cadey when does she check her RSS feed
19:38:11Cadeyi don't actually have an RSS feed reader :D
19:38:29livcd"social media"
19:38:33Cadeywell technically there's that one slack channel we dump RSS feeds into at work
19:38:36Cadey:P
19:39:02ZevvPut
19:39:11Zevv👑 in the subject when you post :)
19:39:21Cadeysure
19:39:24treeformJust say
19:39:24Cadeymy blog can handle emoji
19:39:28treeform👑 1.0
19:39:35Araqnice
19:40:28dom96narimiran: just as a reminder, I'll be tweeting, got an image idea :)
19:40:40narimirangreat!
19:42:53ZevvDo we advertise 1.0 on the nim-lang.org front page as well?
19:43:07narimiranit's coming Zevv
19:43:09Zevvsweet
19:43:36livcddid you post somewhere already ?! :O
19:43:51narimiranpatience, people
19:43:51ZevvDidn't hit enter yet
19:44:07dom96Just a few dozen more minutes ;)
19:44:17livcda few dozen minutes can be an hour
19:44:18livcdor two
19:44:22rayman22201It's almost 1pm my time. Tsk tsk 😝
19:45:09treeformin my mind its already released
19:45:10*FromGitter quit (Remote host closed the connection)
19:45:17treeformsource is the onlything that matters
19:45:29*FromGitter joined #nim
19:45:30disruptekno mention of nim here: https://news.ycombinator.com/item?id=21036037
19:45:32treeformAnd I already have Nim 1.0
19:45:32livcd:D istrolid when ?
19:45:44treeformlivcd, no comment
19:46:13livcddisruptek: i keep checking here : https://hn.algolia.com/?dateRange=last24h&page=0&prefix=true&query=nim&sort=byPopularity&type=story
19:46:16alexander92 rayman, wow, you're in .. india?
19:46:43rayman22201Lol. No. PST. West coast of the US
19:46:53treeformalexander92, you are off by 12 hours :)
19:46:54alexander92come on, hacker news is mainstream, let's post on some french forum
19:46:56disruptekjust kinda remarkable given that article. the guy is a perfect candidate and yet...
19:46:58alexander92oh .. pm
19:47:00alexander92not am
19:47:17Cadeywith devel i'm able to do http fetches
19:47:19rayman22201Timezones are hard lol
19:48:00alexander92we live in the future
19:48:05rayman22201@disruptek: you could be the one to enlighten the guy
19:48:07treeformI always hard hard time with timezones, they were always buggy and confusing, until I wrote my own timezone library. Then then my eyes opened up and I now understand timezones. I have slaying one of my dragons.
19:48:22alexander92yes, that's why i plan to write my os
19:48:42alexander92(not ironically)
19:48:56alexander92(but also, obviously probably wouldn't)
19:49:12Cadeyanyone who claims to understand time zones is either crazy or deluded enough to believe they understand them
19:50:00disruptektimezones are easy, it's nimble's timestamp that only crazy people understand.
19:50:05*gangstacat quit (Ping timeout: 246 seconds)
19:50:17livcdtreeform: are you still actually working on that game ?
19:50:39alexander92timezone libs are hard indeed
19:50:43alexander92respect
19:50:48*navin joined #nim
19:50:51treeformI also thinking about writing my own OS. My requirements is that it should be statically compiled into vm file and would run on a cloud provider. I guess I want an "library OS" or a Unikernel.
19:51:25Cadeyi've been considering making an OS where all the programs are written in webassembly and compiled to machine code with a "trusted compiler" a-la IBM i
19:51:25treeform@livcd I am still working the current Istorlid it takes time to make sure everything runs.
19:52:02*gangstacat joined #nim
19:52:05livcdtreeform: nice! is that your main source of income atm ?
19:52:21treeform@Cadey @alexander92 I don't think timezones are that hard. Font rendering or Orbital Mechanics are harder.
19:52:50treeform@livcd no way Istorlid does not make money.
19:52:59Araqtreeform: nice, I am also looking at unikernels
19:53:26livcdtreeform: sad panda face
19:53:44treeformAraq, nice, closest I got so far is Alpinelinux with only my own nim programs installed.
19:53:57treeformBut I actually don't like the linux parts...
19:54:06shashlick@lqdev - any luck with getHeader?
19:54:39Cadeytreeform: you played with seL4 much?
19:54:42lqdev[m]it's not quite what I'm looking for
19:54:49Cadeyi've been wanting to build stuff on top of that
19:55:18*navin quit (Ping timeout: 245 seconds)
19:55:19treeformCadey, I have not heard of seL4 before.
19:55:28Cadeyhttps://sel4.systems/
19:55:39Cadeyit's quite a thing
19:55:40shashlick@lqdev - what's not meeting your needs?
19:55:49Cadeyits build system leaves a lot to be desired though :(
19:56:00Cadeyit needs haskell, python 2, python 3, cmake, gcc and clang
19:56:09treeformwow, its a zoo
19:56:20disruptekthat's a neat piece of work, though.
19:56:23*gangstacat quit (Ping timeout: 246 seconds)
19:56:56Cadeyi highly suggest checking out sel4 though
19:57:02Cadeyit's a very interesting thing
19:57:05disruptekare there performance guarantees? i don't see anything.
19:57:17Cadeyyou have to read the whitepaper/manual for them
19:57:22lqdev[m]shashlick: I don't quite like how it manages configuration through defines because I can't easily embed my wrapper in a library. I want something that just works for the end user, a thing that can compile to a single independent executable on all platforms.
19:57:24disruptekokay, that's fine.
19:58:15lqdev[m]defines make it harder since you can't enforce a particular config for your library, since only specific nim.cfg files are loaded.
20:02:04*gangstacat joined #nim
20:02:11lqdev[m]more generally: I much prefer to have full control over what's done.
20:02:12*FromGitter quit (Remote host closed the connection)
20:02:30*FromGitter joined #nim
20:02:56shashlicki don't get it - that's exactly what i'm doing with nimarchive
20:02:57*navin joined #nim
20:03:03disruptekseL4 is fascinating, thanks for the mention.
20:03:04shashlicki'm setting the defines with the config.nims
20:03:32Cadeyno problem disruptek
20:03:35disrupteki mean, the paper is wild.
20:05:38lqdev[m]shashlick: wait a sec, you can have per-package config.nims?
20:05:39*FromGitter quit (Remote host closed the connection)
20:05:40Cadeyit's really out there
20:05:50Cadeylqdev[m]: from what i understand you can have _per-folder_ config.nims
20:05:57*FromGitter joined #nim
20:05:59Cadeyas well as per-file filename.nims
20:06:49lqdev[m]Cadey: but that only works when you're compiling a file in the same folder as the config.nims, or the filename.nims's corresponding .nim file right?
20:07:40Araqright
20:07:40*FromGitter quit (Remote host closed the connection)
20:07:51*navin quit (Ping timeout: 264 seconds)
20:07:54shashlickyou are right lqdev - config.nims, nim.cfg or filename.nims does not work if it is in a package's folder and you import that package
20:07:58*FromGitter joined #nim
20:08:20disruptekokay, everyone act natural. gitter is back.
20:08:33shashlickalso nim doesn't allow you to create defines in the nim file, so it is a nuisance
20:08:51shashlickbut this method allows nimterop to give the user control on how the library should be found, built and linked
20:09:11*gangstacat quit (Ping timeout: 276 seconds)
20:09:14shashlickideally it allowed a library writer to provide a built-in nims file but doesn't look like it works
20:09:26lqdev[m]hmm, you're probably right
20:09:29shashlickits weird cause you'd want to do --threads:on and stuff
20:09:40shashlickin your library and not require your consumer to do it also
20:09:51shashlick@Araq ^^ any suggestions?
20:09:52lqdev[m]I don't think pulling a header from /usr/include or somewhere is that bad
20:09:53*FromGitter quit (Remote host closed the connection)
20:10:10Cadeywhat about flags in the .nimble file?
20:10:11*FromGitter joined #nim
20:10:13shashlickyou can use -d:lzmaStd and it will find the header and lib
20:10:13Cadeydo those carry over?
20:10:37lqdev[m]ah yeah I know that, I just produce an error when --threads is not on
20:10:57Araqshashlick: I conderider it a feature
20:11:11Araqfirstly, figuring out the configuration is already hard enough.
20:11:21Araqsecondly, you're supposed to use pragmas
20:11:52shashlickwhy wouldn't i use -d:xyz and when defined(xyz)?
20:11:56shashlickas a library writer
20:12:05shashlickand how would i use pragmas to replace that workflow
20:12:08dom96https://nim-lang.org/blog/2019/09/23/version-100-released.html
20:12:11*Vladar quit (Remote host closed the connection)
20:13:29Araqshashlick: you decide for your users what should be done, don't give your users different build settings
20:13:35acidxcongrats on 1.0!
20:13:57Araqjust look at wxWidgets, you could build it with unicode, without, etc as a static lib as a dynamic lib
20:14:03Araqthe result: building it is a mess
20:14:49lqdev[m]but what if my library requires threading? when using CMake/Meson it's as simple as specifying a threads dependency
20:15:09shashlickin my case, nimterop gives wrapper writers the ability to pick what they want for their wrapper, but if they make that wrapper into a library for someone else, that downstream consumer also has to pick
20:15:10*FromGitter quit (Remote host closed the connection)
20:15:20dom96👑 So in case my link wasn't loud enough: Nim v1.0.0 is officially here! 👑
20:15:22shashlicki'm not arguing config.nims is the right way, just wondering what other options are available
20:15:23Araqthen you do when not compileOption("threads"): {.error: "compile with --threads:on".}
20:15:28*FromGitter joined #nim
20:15:45Araqand --threads:on is a bad example as that should have been the default anyway
20:15:52dom96Nice of the Gitter bridge to die right when I posted that message... :)
20:15:59AraqI tried to do that but got confusing appveyor results and a day only has 24 hours
20:16:14lqdev[m]Araq: that's what I do
20:16:47shashlickif there was a {.define.} pragma, would be cool
20:16:55lqdev[m]dom96: \o/
20:17:00treeformThank you everyone for Nim 1.0
20:17:49shashlickcongratulations for 1.0! brilliant commitment
20:19:03Araqthanks!
20:19:44disruptekcongrats dudes.
20:19:45Araqhttps://forum.nim-lang.org/t/5213
20:22:14shashlicknice blog Araq
20:22:15*FromGitter quit (Remote host closed the connection)
20:22:16ZevvCongrats to all! \o/
20:22:33*FromGitter joined #nim
20:24:39treeform@Araq will you make youtube vids too?
20:24:53Araqyeah, tomorrow I'll release the first video
20:24:57dom96treeform, you've submitted the url with a double slash *gasp*
20:25:01dom96(to HN)
20:25:59treeformSorry!
20:26:12dom96meh, it's fine
20:26:37dom96Araq, so to be honest I feel like we should at least add a link to the Nim changelog for this release to that announcement post
20:26:46dom96Happy with that?
20:26:46*andrewrk joined #nim
20:27:05andrewrkI'm here for the 1.0.0 release party
20:27:56dom96welcome andrewrk :)
20:28:13disruptekwhat did you bring for us to drink?
20:28:35alexander92oh awesome
20:28:38alexander92praise God
20:28:40alexander92it's finally 1
20:29:17disrupteki need something stiff; haven't seen a rocky roll-out like that in about 15 years.
20:29:54Araqdisruptek: and it's all your fault :P
20:29:55andrewrkI brought emojis: 🍶 🍾 🍷 🍸 🍹 🍺 🍻 🥂 🥃
20:29:55alexander92pure water
20:30:06andrewrkand pancakes 🥞🥞🥞
20:30:10alexander92did you guys hit /r/programming as well
20:30:11disrupteki know, i take full responsibility. 😭
20:30:19alexander92he disrupts
20:30:23alexander92he attack
20:30:23FromGitter<cabhishek> Nim 1.0, congrats everyone! This is fantastic.
20:30:25andrewrkit's inevitable, you can just sit back and let the internet do its thing
20:30:31alexander92but most importantly he nim callback
20:30:33alexander92<3
20:31:33andrewrkI'm living vicariously right now
20:31:47disrupteknom 🥞🥞🍺🍺
20:32:03disrupteknim 1.0 release party... FLAPJACKS AND FORTIES
20:32:26narimiranposted on r/programming and lobste.rs
20:32:34alexander92🥞🥞🥞 SIGSEGV
20:34:13Araqalexander92: don't say this word
20:34:22lqdev[m]11 pancakes too many lol
20:35:03shashlick@lqdev - any suggestions for our problem? what's another way to tell getHeader what the caller wants without hardcoding it in the proc call
20:35:23FromGitter<deech> @Araq Congrats on the release! I wish you'd told me it was scheduled since I have been working pretty hard on https://github.com/nim-lang/Nim/pull/11341. You had said it was considered for 1.0.
20:35:37disruptekshashlick: if you have the sort of problem i think you have, env variable.
20:36:07lqdev[m]shashlick: that's a good question
20:36:56shashlickso considering @disruptek's suggestion - your soundio.nim will contain a static: setEnv("lzmaStatic") or whatever and i can check it in nimterop
20:37:04shashlickhopefully the env persists at compile time
20:37:23lqdev[m]that's a pretty good idea
20:37:51*dom96 adds links to changelogs to the article
20:38:05dom96let's hope Jekyll doesn't suddenly freak out :)
20:38:14narimirannow, i don't want to hear words "bug", "regression", "sigsegv", "doesn't work" for at least 3 days. thank you in advance
20:38:42disruptek3 days!
20:39:09*nsf quit (Quit: WeeChat 2.5)
20:39:16rayman22201Lol. The teams deserves a small vacation. Congratulations 🎉
20:39:18Araqdeech: many things were considered for 1.0
20:39:52shashlick@Araq - what do you think of @disruptek's suggestion to use env vars? so that i can pass state info into a package i'm importing
20:40:04shashlickany better nim way to do it?
20:40:08disruptekhey i don't want credit for that hack.
20:40:08Araqenv vars are from hell
20:40:17disrupteklol
20:40:25disrupteknow i really don't want credit. 😁
20:40:47andrewrkshashlick, "soundio.nim" is this nim bindings to libsoundio?
20:41:13Araqhi andrewrk, welcome
20:41:20FromGitter<deech> @Araq I just had no idea a release was planned. Was there a blog post or forum announcement I missed?
20:41:32shashlicki thought using -d: is safe since it propagates into imports but you cannot set it in code
20:41:33*FromGitter quit (Remote host closed the connection)
20:41:38shashlick@andrewrk - yep
20:41:51*FromGitter joined #nim
20:41:56treeform@deech I just saw it pop on the discord server on github so I came here.
20:42:00andrewrknice, ha funny coincidence, I'm the author of libsoundio :)
20:42:07dom96shashlick, Nimble now passes -d:NimblePkgVersion=<ver> to Nim when compiling. Kind of an env var :P
20:42:20*rayman22201 is honored that the great andrewrk stopped by
20:42:23treeform@andrewrk really? thats cool
20:42:25shashlicknoice! maybe you can help @lqdev with his link error
20:42:32lqdev[m]andrewrk: oh I just realized that! thank you for making such an awesome library, it's great :)
20:42:36andrewrklol nice try I'm here for the 1.0.0 release party
20:42:43andrewrkj/k I'll help. what's the linker error?
20:42:54disruptekhe wants free booze. only brought one of everything.
20:43:14shashlickor maybe i'll just continue to push @lqdev to use getHeader 😄
20:43:15disruptekactually, that's not fair. he brought plenty of pancakes...
20:43:16alexander92is it a tradition to call liblib
20:43:18disruptekfor three of us.
20:43:18alexander92the c libs
20:43:40alexander92yeah, PMunch, you gotta get some pancakes back to andrewk on fosdem
20:43:48lqdev[m]andrewrk: it's a weird error specific to MinGW. when I compile under Windows, I get a bunch of undefined references to `__imp_soundio_*` functions
20:44:17treeform@shashlick why doesn't @lqdev want to use getHeader? Doesn't it solve all his problems?
20:44:30lqdev[m]it kind of does
20:44:50andrewrklqdev[m], -lsoundio is supposed to solve those. unless this is one of those weird things where the DLL name mangling got messed up by mingw or something like that
20:45:08PMunchHuh, pancakes?
20:45:18disruptekflapjacks
20:45:23lqdev[m]I don't link soundio dynamically, I pull its source code and compile it alongside my executable
20:45:42PMunchWoo, Nim 1.0 is out?!
20:45:43*FromGitter quit (Remote host closed the connection)
20:45:44alexander92i've heard great stuff about flapjacks .. but they look as small waffles in my country
20:45:49lqdev[m]treeform, shashlick: let me be honest here: I don't want to switch because my current wrapper works fine (most of the time haha)
20:46:01*FromGitter joined #nim
20:46:26Araqok, since you all ask, "does v1 come with hidden features?", yes, it does
20:46:49rayman22201Lol. Birthday surprise 🎂
20:47:00alexander92oh no, there is a secret rust interpreter
20:47:02alexander92inside
20:47:16andrewrklqdev[m], oh in this case you should try -DSOUNDIO_STATIC_LIBRARY
20:47:28andrewrklqdev[m], because: https://github.com/andrewrk/libsoundio/blob/dc4f84339039ac518b6cd1c0e7683e88e25be470/soundio/soundio.h#L21-L33
20:47:39andrewrkotherwise it's doing the dll name mangling
20:47:42livcdmaybe there is a secret Zig interpreter
20:47:45Araqwe got a pluggable GC that "Araq's GC" is using, it applies the lessons learned from the "New runtime" to Nim v1, gives us a shared memory GC, control over the pauses yadda yadda
20:47:46*FromGitter quit (Remote host closed the connection)
20:47:47disruptekthere is a secret rust replacement inside.
20:47:52PMunchA rust back-end?
20:47:58*gangstacat joined #nim
20:48:04disruptekwe call it, `nim`.
20:48:04*FromGitter joined #nim
20:48:26andrewrkif there's a secret zig interpreter in nim 1.0, I'll switch to nim for the zig compiler immediately, i'm tired of fixing all these bugs
20:48:39disruptekhehe
20:48:48lqdev[m]andrewrk: I'll try that
20:48:50treeformAraq, tell me more about the AraqGC?
20:48:52dom96I'm sure Araq can sympathise :)
20:48:55Araqsorry, but Zig sucks.
20:48:58rayman22201Lol. Then you have to fix all the Nim bugs
20:49:32andrewrkAraq, I'll let you have that today since it's Nim's 1.0 birthday
20:49:55Araqdon't take it personal, everything sucks
20:50:15shashlick@treeform - getHeader uses -d:xxx to control how it works but it's not possible for a package to specify defines such that consumers can inherit it
20:50:17disruptekit'd be hard not to take it personal.
20:50:37alexander92but is newruntime
20:50:37shashlick@lqdev - i'm moving to the getHeader method since the more complex libraries are not trivial to build by hand
20:50:42alexander92being phased off?
20:50:59disruptekwhy would it?
20:51:15treeformbc "AraqGC"
20:51:21alexander92well from the blog stuff about maybe not adding `owned` and the araqs' gc explanation
20:51:25disruptekit's a separate animal.
20:51:28andrewrkAraq, I'll take the bait, what's your biggest gripe? (besides not being at 1.0.0 yet obviously)
20:51:31alexander92it sounds a bit like newruntime being an experiment
20:51:49rayman22201Wow Araq, you really know how to be the life of the party. What subtle social skills you have Lol
20:52:48livcdalexander92: sounds like Araq could not finish reading all of Gordon's ramblings
20:52:48*treeform quit (Remote host closed the connection)
20:52:56alexander92HAHAHAHAHAHHA
20:53:17alexander92he's just a proglang tolstoy
20:53:35alexander92but honestly, i like his posts, long posts are underrate
20:53:36*treeform joined #nim
20:53:36dom96Araq: nice welcome you've given andrewrk
20:53:51*pbb quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
20:54:09*pbb joined #nim
20:54:36andrewrkI'm honestly just here to say sincere congrats and then peace off in like 1 hour
20:55:31def-Congrats on v1
20:56:11livcdandrewrk: that sounds like industrial espionage
20:56:28rayman22201@andrewk most of us really appreciate it. Thank you.
20:57:28Araqandrewrk: exceptions can be nice ;-)
20:57:47alexander92we all know nim and zig will merge in 2021 and then trump will split nimzig for monopoly in ~2023
20:57:48*FromGitter quit (Remote host closed the connection)
20:58:06*FromGitter joined #nim
20:59:07*ee7[m] joined #nim
21:00:30rayman22201I still see newruntime as a viable replacement for Rust. I still have the zig debug sage allocator thing on my reading list though.
21:00:56rayman22201I donate to both Lang's, diversification is important lol. 😛
21:01:06Araqrayman22201: the benchmarks didn't work out
21:01:37rayman22201For newruntime?
21:01:51Araqyeah
21:01:54andrewrkAraq, that's neat that you're looking into incremental recompilation. I'm interested in that as well. any plans to try to do incremental linking?
21:02:16andrewrkI guess on windows you ship with link.exe so you already have it, is that right?
21:02:59Yardanicotime to celebrate v1.0 all night xD
21:03:00*FromGitter quit (Remote host closed the connection)
21:03:17rayman22201:( when did that happen! @araq
21:03:25*FromGitter joined #nim
21:03:36disrupteksink sunk it
21:04:20Araqandrewrk: we ship mingw and linking is not our business
21:05:07rayman22201That should have been a blog post or a forum post. Wth... Where is the communication? That was an important experiment with a lot of people waiting for answers...
21:05:18*Ven`` quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:05:31AraqI'm working on it but consider this
21:05:45disruptekit doesn't have to be the last result, just the first.
21:05:50*Ven`` joined #nim
21:06:06*Ven`` quit (Client Quit)
21:06:13*theelous3 quit (Read error: Connection reset by peer)
21:06:36*theelous3 joined #nim
21:08:11rayman22201Working on it is one thing, but you obviously got a major result, that was not well communicated...
21:12:13*FromGitter quit (Remote host closed the connection)
21:12:32*FromGitter joined #nim
21:12:44federico3Finally some positive feedback on HN
21:12:44shashlick@lqdev - looks like env vars it is, no other ideas floating around here
21:12:59disruptekshashlick: does it even work?
21:13:12Araqrayman22201: look, it's not cancelled
21:13:23Araqbut it also wasn't ready for v1
21:13:27disruptekray had $50 riding on newruntime.
21:13:51Araqand "omg, it detects dangling refs at runtime only" make people nervous
21:13:56dom96I for one am happy that newruntime is losing Araq's focus
21:14:12federico3why?
21:14:20dom96Because I like having a GC
21:14:40ee7[m]Congrats on 1.0!
21:14:45livcdnarimiran: i gave you silver
21:14:47Araqthanks!
21:14:57livcdnarimiran: no coins for gold :D
21:16:55FromGitter<Kiloneie> Congratz Araq and everyone else on 1.0 !
21:17:36*andrewrk left #nim ("Leaving")
21:17:59setenforceYes, congratulations on 1.0 :D
21:18:06setenforceIt's a big achievement
21:18:48alexander92Araq, do you think nim today would be different if you 1.0 in e.g. 2015
21:18:58FromGitter<Kiloneie> I joined Nim just before 1.0 lol
21:19:40Araqalexander92: I would be different and that matters to me too
21:19:50FromGitter<ShieldHero> where's my non gc string and seq
21:21:11AraqShieldHero: it's here, use --newruntime
21:21:58Araqalexander92: anyway, time to be happy. My nemesis of never shipping v1 is over
21:22:00Araq:D
21:22:15alexander92yes
21:22:27rayman22201dom96: wants a GC, but some of us do not 😝
21:22:28alexander92now you can start shipping new major versions every 2 weeks
21:22:36alexander92browser style :P
21:23:53FromGitter<ShieldHero> i still don't fully grasp how to use the newruntime, more docs please
21:24:27FromGitter<ShieldHero> what does Nimsuggest do btw?
21:25:55Yardanicoit's a tool for code completion and error checking for editors
21:26:15Yardanicomost commonly used with VSCode + Nim extension
21:26:55FromGitter<ShieldHero> i'm using sublime text and the only completion i get is the one that the editor does by default....
21:27:08*abm quit (Quit: Leaving)
21:27:50dom96230 people on nim-lang.org right now :O
21:28:20Yardanicoinb4 site goes down :D
21:28:38Yardanicojk, nim website is powered by nim so it's fast!1
21:28:42narimiranlivcd: thanks for the silver!
21:31:52dom96hah, it'll never go down
21:31:53*FromGitter quit (Remote host closed the connection)
21:32:11*FromGitter joined #nim
21:32:40FromGitter<kdheepak> Congrats on v1.0!
21:32:53FromGitter<kdheepak> Exciting times!
21:33:19narimiranshit, i forgot to put "it is transpiled" on my HN-bingo! (cc PMunch, dom96)
21:33:32dom96narimiran: :D
21:33:34Zevv1.0 -> sentimental versioning
21:33:45disruptekhehe
21:34:30FromGitter<mratsim> Aaah right I forgot transpiled on mine too
21:34:32PMunchnarimiran, haha yeah that usually comes up
21:34:43FromGitter<mratsim> Congrats on v1 :).
21:34:48PMunchMost of the discussion seems pretty on-topic so far though :)
21:35:04*FromDiscord joined #nim
21:35:07PMunchZevv, yeah I saw that, took me a second to understand what he meant :P
21:35:10dom96Hope that works ^
21:35:25PMunchHi discord, long time no see!
21:35:28ZevvNot sure if it was a typo, but it does suit the occasion :)
21:35:37FromDiscord<Kiloneie> lol
21:35:49FromDiscord<Kiloneie> hei guys 1.0 here, also discord bridge xD
21:35:50federico3narimiran: and the automated "rewrite it in rust!"
21:35:59FromDiscord<treeform> we did it guys
21:36:07FromDiscord<Kiloneie> who fixed it ?
21:36:18FromDiscord<treeform> a very beautiful person
21:36:20narimiranv1.0 fixed it :P
21:36:25narimiranit is magical
21:37:59PMunchZevv, yeah I was thinking he meant semantic versioning :P
21:38:04FromDiscord<Shield> yay
21:38:35FromGitter<oprypin> great, so Gitter actually delivers the message but still reports error 504
21:39:34YardanicoI guess since it's v1.0 I should really write a discord-irc bridge in Nim in 2-3 weeks :P I once started that project, but abandoned it
21:39:58Yardanico(2-3 meaning I'll just randomly write for an hour on some days, and on some days don't write any code at all)
21:42:33dom96Kiloneie: it was I :)
21:42:51dom96Yardanico, yep
21:43:02FromDiscord<Kiloneie> Good boy :P, have a treat.
21:43:09*stefantalpalaru joined #nim
21:43:15FromDiscord<Kiloneie> Anyone got 2-3 minutes for my hopefully last synopsis version of my intro video that must happen tomorrow(i really hoped to make it before 1.0, QQ...)
21:43:47AraqKiloneie: I can help but I'm drunk
21:44:03FromGitter<danielecook> hahaha
21:44:04FromDiscord<Kiloneie> As you should be xD
21:44:04FromGitter<danielecook> congrats!
21:44:28*doesntgolf joined #nim
21:45:22FromDiscord<Kiloneie> Okay here is the link: https://justpaste.it/2tmzw
21:45:22FromDiscord<Kiloneie> Nothing fancy, i just didn't have the time or motivation past few weeks.
21:45:50FromDiscord<Kiloneie> I do hope that's dumbed down enough for normies(xD)
21:45:58Yardanico@Kiloneie oh, so it's aimed at the most beginner programmers?
21:46:00Yardaniconice
21:46:43FromDiscord<Kiloneie> Yeh, because there is literally nothing on youtube on anything but hei guys im making a game lets jump right into the middle of it
21:46:49FromDiscord<Kiloneie> that doesn't help anyone
21:47:01Yardanicowell some videos aren't meant to help :P
21:47:03FromDiscord<Kiloneie> gotta start at the very beginning and go from there
21:47:16YardanicoI guess I should also recreate https://www.youtube.com/watch?v=rUJ7Bzgv3n0 now that it's 1.0
21:47:46*go|dfish quit (Ping timeout: 244 seconds)
21:47:49*oprypin_ is now known as oprypin
21:47:59*Trustable quit (Remote host closed the connection)
21:48:04FromDiscord<Kiloneie> What the hell is that, it's like a universe or something
21:48:22YardanicoGource is a visualizator for Git/HG/other source control programs
21:48:46FromDiscord<Kiloneie> Did you write it ? or just some random cool tool ?
21:49:05YardanicoNo, it's not mine :) https://gource.io/
21:49:38*narimiran quit (Ping timeout: 240 seconds)
21:50:26*solitudesf quit (Ping timeout: 240 seconds)
21:50:32PMunchOh well, I'm off to bed! Again, congratulations to everyone on v1.0!
21:50:32*PMunch quit (Remote host closed the connection)
21:50:52FromDiscord<Kiloneie> gnight
21:50:55Zevvsweet dreams!
21:50:59FromDiscord<Kiloneie> that thing is sweet, imma watch it
21:51:11Zevvturn up the music while you're at it
21:51:51FromDiscord<Kiloneie> reminds me of how i witnesses Game Maker go from obscurity to being the top dog of 2D, changing drastically, from snail performance to legit big game one.
21:51:58*ng0 quit (Quit: Alexa, when is the end of world?)
21:52:05FromDiscord<Kiloneie> starting 12-13 years ago
21:52:57FromDiscord<Kiloneie> we wished for more speed back then, now it's over ten fold of what it used to be(it used to be slow, pop a few particle effects and it died)
21:53:28FromDiscord<DeltaPHC> Oh, yeah. Back when Game Maker was first conceived, it was basically a one-person project designed for teaching game making
21:54:33stefantalpalaruI'm seeing 2 segfaults with "--verbosity:2". One with "./koch boot -d:release --verbosity:2" and the other with "PATH="./bin:${PATH}" nim c -d:release --verbosity:2 -o:bin/nimpretty nimpretty/nimpretty.nim".
21:55:18Araqstefantalpalaru: yay..
21:55:39AraqKiloneie: looks fine, much text, just produce the video already
21:56:37*treeform quit (Remote host closed the connection)
21:58:24FromDiscord<Kiloneie> @Araq Thanks, i will, i got all the time in the world now(till my savings run out), since i quit my job xD. Some jobs are just hell.
21:59:15FromDiscord<Kiloneie> Has to happen tomorrow, i do not want to see video date being 2 days after 1.0, 1 days max xD...
21:59:48FromDiscord<Skaruts> oh wow
21:59:58FromDiscord<Skaruts> congratulations guys
22:00:07FromDiscord<Skaruts> 🎆
22:00:44FromGitter<ShieldHero> does the code written for newruntime work normally with gc or not?
22:01:33*go|dfish joined #nim
22:10:33*Hideki_ joined #nim
22:15:02*Hideki_ quit (Ping timeout: 245 seconds)
22:19:51sealmoveShieldHero: it works, compiler just ignores "owned" keyword
22:20:23*whaletechno joined #nim
22:23:46FromGitter<mratsim> @PMunch yes I replied to your chronicles issue
22:23:55FromGitter<mratsim> You are probably victim of the generic sandwich
22:26:13Yardanicoguys what do you think about the colours? I just randomly chose green for nicknames + yellow for caption + dirs http://snappyimages.nextwavesrl.netdna-cdn.com/img/598ba6cebb6be007ce3d2e7e776b5ed6.png
22:26:25Yardanico(that's in 720p, I'll be shooting in fullhd for a video)
22:27:27Yardanicoand yeah it'll be fast since there would be around 0.25secs per day
22:27:50Yardanicomaybe I should make it a bit slower though, so the video is ~15-16min
22:27:52FromDiscord<Kiloneie> should be a color easily distinguishable from the others
22:28:21FromDiscord<Kiloneie> green might work idk
22:28:49sealmovewhat is this? fireworks? :D
22:29:18Yardanicokinda :D
22:33:37FromDiscord<Kiloneie> it's Nim's evolution over time
22:33:41FromGitter<mratsim> btw now that Nim is v1, all companies will jump on it and we will have plenty of jobs, so quitting was perfect timing @Kiloneie
22:34:03FromDiscord<Kiloneie> Well that was the plan
22:34:14FromDiscord<Kiloneie> i found out Nim a week before 3 week long company holidays
22:34:24Yardanicook, good night everyone :)
22:34:47FromDiscord<Kiloneie> i planned everything out then, sadly i didn't make the video 2-3 weeks ago
22:35:27FromDiscord<Kiloneie> was running late, too many friend visits, and then back to job... hard to think coming home exhausted from physical labor
22:35:43FromDiscord<Kiloneie> i don't think there will be a Nim job where i live though
22:36:00Yardanicomake a startup! :P
22:36:18FromDiscord<Kiloneie> What do you mean ?
22:36:35FromDiscord<Kiloneie> like, kickstarter for making my videos ?
22:38:48FromDiscord<Kiloneie> I am hoping that making my videos from day 1 after Nim 1.0(was planning to before it releases) that since i will be the first to do videos on Nim, i might just get a lot of people to watch my videos, and make a living off of it. That's the hope anyways
22:40:28FromGitter<bevo009> Woohoo congrats on 1.0! Awesome news
22:43:52sealmoveohhhhh
22:43:59sealmoveversion 1.0???? congrats!!
22:44:00sealmove:)))
22:44:37*snooptek quit (Remote host closed the connection)
22:54:04FromDiscord<Generic> it's a bit of a bitter feeling, with nim 1.0 being released just at while I was isolating and reporting a compiler bug 🙂
22:54:24FromDiscord<Generic> it's a bit of a bitter feeling, with nim 1.0 being released just at while isolating and reporting a compiler bug 🙂
22:54:58FromDiscord<Generic> still glad nonetheless
22:55:10FromGitter<ShieldHero> gotta love those day 0 patches
22:55:46*ephja joined #nim
23:00:38AraqGeneric: it's banana software. matures at home
23:04:19FromDiscord<Generic> Nim insider builds coming soon
23:10:36FromGitter<mratsim> I think I have a hundred of compiler bugs open
23:11:03FromDiscord<treeform> Yardanico, in the very beginning of the original video there are three people working on everything Araq, Andreas Rumpf and @Rumpf ... Is there a feature to merge peoples alt commit accounts?
23:12:23Araqit's only fair that I count as 3 persons
23:12:28AraqI earned it.
23:12:39FromGitter<mratsim> there are 4 letters in Araq, who is the ghost?
23:14:05sealmovecan you link "the video"?
23:14:28FromDiscord<treeform> It also paints of story of how 1 founder of the language destroyed the other 2 founders and forced them to leave.
23:15:23FromDiscord<treeform> sealmove, here is the old video: https://www.youtube.com/watch?v=rUJ7Bzgv3n0
23:16:21sealmovenice music
23:16:34FromGitter<mratsim> I saw something.java at the beginning
23:17:13FromGitter<mratsim> (https://files.gitter.im/nim-lang/Nim/wgvF/DeepinScreenshot_select-area_20190924011702.png)
23:19:09FromGitter<mratsim> The audio sounds like something from Plague Inc composer
23:19:40*Hideki_ joined #nim
23:20:22sealmoveAraq looks like Road Runner
23:23:33*doesntgolf quit (Read error: Connection reset by peer)
23:24:46*lritter quit (Ping timeout: 265 seconds)
23:24:48FromGitter<mratsim> Someone named Vincent created vincent.c and vincent.h files in the codebase
23:24:57FromGitter<mratsim> (https://files.gitter.im/nim-lang/Nim/Dfxj/DeepinScreenshot_select-area_20190924012417.png)
23:25:22*krux02_ joined #nim
23:28:05*krux02 quit (Ping timeout: 250 seconds)
23:28:19FromGitter<ShieldHero> i'd like more clarification about newruntime, it's not obvious when do things get destroyed, I assume that if the compiler isn't sure it leaves destruction to the end of the scoop?
23:29:23*lritter joined #nim
23:30:28FromDiscord<treeform> ShieldHero, I started writing newruntime for beginners but got confused myself. I am waiting for more docs to appear before I can understand it. GC is good enough for me right now.
23:30:52FromGitter<mratsim> always at scope end
23:31:18FromGitter<mratsim> unless a variable is sinked
23:33:10Araqno, always at the *proc* end
23:33:36FromGitter<ShieldHero> is there a way to explicitly destroy a variable early? like manually calling lastReadOf? or a way to extend a variable's life?
23:34:00*Hideki_ quit (Remote host closed the connection)
23:34:16leorize[m]if you want to extend the life of a variable, move it elsewhere
23:34:36leorize[m]use reset() for manual destroy
23:36:18*stefantalpalaru quit (Quit: stefantalpalaru)
23:36:18*Hideki_ joined #nim
23:37:31Araqso ... yeah. I have to sleep. There will be a 1.0.2, relax :-)
23:37:31FromGitter<ShieldHero> does the compiler catch an early reset() and avoid calling destroy later?
23:37:48Araqresets() disarms the destructor
23:37:58Araqit does nothing then.
23:38:32leorize[m]@ShieldHero: you're supposed to know when to not destroy in your destructor :p
23:39:11FromGitter<ShieldHero> nice, what can be 'owned' other than a ref? i assume ptr also benefits from it?
23:39:37leorize[m]no, ref only
23:40:14leorize[m]objects can be used to bring similar semantics to ptr if desired
23:40:26*Hideki_ quit (Ping timeout: 240 seconds)
23:40:36sealmoveptr is an unmanagable reference by definition
23:40:53sealmoveunmanaged*
23:41:36Araqactually 'owned' does work with 'ptr' and has no attached runtime behaviour
23:42:29FromGitter<ShieldHero> yeah i think it would be good to know that it works on ptr, then you don't have to handle moving manually
23:42:45Araqand 'owned ptr' cannot be copied and has no destructor attached, could be useful but I never used it :-)
23:42:55FromGitter<ShieldHero> i assume unowned refs is the default behavior for refs?
23:43:27Araqyeah
23:43:39sealmovethe opposite of rust in this respect
23:43:58FromGitter<awr1> congrats on 1.0!
23:44:07Araqthanks
23:47:11rayman22201Araq has 1.0 + Oktoberfest, so he has a lot of celebrating to do :-P
23:47:19FromGitter<ShieldHero> i think it's not that complicated, you either explicitly help the compiler to optimize some copy/movements or let it do the work a bit inefficiently
23:48:37FromGitter<ShieldHero> does newruntime still require nimRtl for dlls?
23:49:35leorize[m]no, there aren't any gc to be bothered with
23:50:14leorize[m]although nimrtl is still useful in moving stdlib code to a dll for sharing b/w your dlls
23:50:28FromGitter<ShieldHero> it's time to ditch the gc then :D
23:54:51AraqOktoberfest is far away and so expensive that you can't enjoy it :P
23:56:11*Hideki_ joined #nim
23:56:42*PrimHelios joined #nim
23:56:57PrimHeliosgrats to everyone for the 1.0 release!
23:57:17FromGitter<ShieldHero> i think a tutorial about variable lifetime will be very helpful
23:57:29*Hideki_ quit (Remote host closed the connection)
23:59:11AraqShieldHero: we only got a spec so far
23:59:18sealmoveI think newruntime API is very simple