00:00:12 | shashlick | nimble fails on travis osx with choosenim devel with openssl error but works fine with choosenim stable |
00:00:18 | shashlick | any ideas? |
00:06:01 | FromGitter | <timotheecour> r u getting smthg like this: ⏎ ⏎ ```code paste, see link``` ⏎ ⏎ ? [https://gitter.im/nim-lang/Nim?at=5c392f696a394e282193a950] |
00:09:25 | * | stefanos82 quit (Remote host closed the connection) |
00:13:15 | * | zyklon joined #nim |
00:20:05 | FromGitter | <kaushalmodi> shashlick: there was an openssl version related commit recently |
00:22:00 | FromGitter | <kaushalmodi> Ugh, I made this mistake mentioning this again. This probably something to do with nimble and osx |
00:34:16 | * | zyklon quit (Read error: Connection reset by peer) |
00:51:22 | * | zyklon joined #nim |
01:04:50 | * | zyklon quit (Read error: Connection reset by peer) |
01:07:33 | * | skellock quit (Ping timeout: 246 seconds) |
01:09:00 | * | ng0 quit (Remote host closed the connection) |
01:10:02 | * | ng0 joined #nim |
01:12:10 | shashlick | Yep @timotheecour |
01:12:41 | shashlick | https://travis-ci.org/genotrance/nimterop/jobs/478487797 |
01:14:16 | FromGitter | <timotheecour> ya it’s affecting me like crazy right now |
01:14:56 | FromGitter | <timotheecour> 1st serious breakage in months that i can’t figure my way out ; everything’s broken on my setup :) |
01:15:25 | FromGitter | <timotheecour> @dom96 did you see this? |
01:19:43 | FromGitter | <timotheecour> https://github.com/nim-lang/Nim/issues/10281 |
01:21:18 | * | zyklon joined #nim |
01:22:15 | * | Marumoto joined #nim |
01:22:19 | Marumoto | #join dlang |
01:22:34 | * | Marumoto left #nim (#nim) |
01:23:29 | FromGitter | <timotheecour> what’s going on in dlang lately |
01:24:15 | * | skellock joined #nim |
01:35:38 | shashlick | thanks @timotheecour |
01:39:19 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
01:41:57 | FromGitter | <timotheecour> hmm actually I’m seeing u have a recent commit which relates to ssl: ⏎ 2019-01-08 23:24 -0600 genotrance M─│─┐ Merge pull request #10236 from treeform/passSSLPath ⏎ ⏎ could that be related? [https://gitter.im/nim-lang/Nim?at=5c3945e532a8370605b94133] |
01:42:32 | shashlick | that was @treeform fixing the order of SSL version |
01:43:15 | shashlick | its been failing for me from the last 3 days |
01:43:38 | FromGitter | <timotheecour> u’re 1st noticing today though right? |
01:43:54 | shashlick | nope been failing last three days |
01:43:55 | shashlick | https://travis-ci.org/genotrance/nimterop/builds |
01:44:38 | FromGitter | <timotheecour> well nimble-wide CI would really help w finding these issues before they hit users |
01:45:00 | FromGitter | <timotheecour> unfortunately i’m blocked by that bug before i can update that nimble CI PR |
01:45:52 | FromGitter | <timotheecour> (help would be welcome to for adding new features after that PR gets merged ; there’s a number of features i’d like to add) |
01:48:17 | shashlick | awesome - i've been busy with nimterop, trying to get zestyr support for ImageMagick wrapping |
01:49:28 | FromGitter | <timotheecour> what’s zestyr |
01:49:45 | FromGitter | <timotheecour> https://github.com/mattrixman/zestyr ?? |
01:56:25 | zestyr | me :) |
01:56:43 | FromGitter | <timotheecour> lol |
01:57:53 | zestyr | trying to create a nice wrapper for ImageMagick, since Nim currently lacks a good library for image editing |
01:58:19 | FromGitter | <timotheecour> that’s great. |
01:59:58 | zestyr | and partly because wrappers exist for lots of other languages, including Go, Rust, Ruby, PHP, Python, Julia, you name it |
02:00:32 | FromGitter | <timotheecour> Yup; do u have a WIP repo ? |
02:01:58 | zestyr | https://github.com/zestyr/nimagemagick |
02:02:05 | zestyr | nothing there yet besides a failed nimgen config attempt |
02:02:51 | zestyr | need some more fixes in nimterop (and treesitter) before it'll work |
02:05:21 | FromGitter | <timotheecour> https://github.com/nim-lang/Nim/pull/10282 |
02:05:32 | FromGitter | <timotheecour> => seems to fix ssl breakage on OSX |
02:05:33 | shashlick | Getting closer |
02:05:44 | zestyr | nice |
02:05:46 | * | zyklon quit (Read error: Connection reset by peer) |
02:06:18 | FromGitter | <timotheecour> @shashlick any idea for a small test for that PR? |
02:13:07 | shashlick | not really - problem with travis is figuring out what libs are installed |
02:13:15 | shashlick | if it were a local machine - much easier to figure out |
02:14:02 | FromGitter | <timotheecour> actually it fails locally too (before PR) when running `nimble test` (inside nimble repo) |
02:14:23 | shashlick | on osx? |
02:14:25 | FromGitter | <timotheecour> btw do u know how to list what dynamic libs are actually used? |
02:14:28 | FromGitter | <timotheecour> ya on OSX |
02:14:50 | FromGitter | <timotheecour> (also r u affected by https://github.com/nim-lang/nimble/issues/603 ?) |
02:15:12 | zestyr | call ldd on the executable? |
02:15:14 | shashlick | ok that's good - what version of ssl do you have installed locally |
02:15:28 | shashlick | ya that nimble issue is also bothering me on devel |
02:15:42 | FromGitter | <timotheecour> brew info openssl ⏎ openssl: stable 1.0.2q [keg-only] |
02:16:30 | shashlick | ok that's pretty new, what does ldd tell you |
02:16:53 | FromGitter | <timotheecour> @zestyr not ldd (or osx otool -L) doesn’t work because nim doesn’t use standard dynamic library loading mechanism , so unfortunately all the tools for dealing w em r broken |
02:17:24 | zestyr | oh.. |
02:18:29 | FromGitter | <timotheecour> ```code paste, see link``` ⏎ ⏎ nothign interesting/relevant [https://gitter.im/nim-lang/Nim?at=5c394e751cb70a372ac4c7f1] |
02:19:04 | FromGitter | <timotheecour> maybe `nim c —dump foo.nim` shd tel u |
02:19:23 | FromGitter | <timotheecour> (requires to add `—dump` as a new flag) |
02:23:30 | * | zyklon joined #nim |
02:25:31 | * | ng0_ joined #nim |
02:27:39 | * | ng0 quit (Ping timeout: 256 seconds) |
02:28:35 | * | zachk quit (Quit: Leaving) |
02:31:20 | * | rockcavera quit (Remote host closed the connection) |
02:52:54 | * | shpx joined #nim |
03:00:35 | * | banc quit (Quit: Bye) |
03:16:11 | * | banc joined #nim |
03:16:11 | * | zyklon quit (Read error: Connection reset by peer) |
03:33:45 | * | zyklon joined #nim |
03:50:14 | * | dddddd quit (Remote host closed the connection) |
04:04:41 | * | theelous3 joined #nim |
04:17:34 | * | Tyresc quit (Quit: WeeChat 2.4-dev) |
04:33:39 | * | Jesin quit (Quit: Leaving) |
04:33:39 | * | zyklon quit (Read error: Connection reset by peer) |
04:50:50 | * | zyklon joined #nim |
04:52:01 | * | vlad1777d quit (Ping timeout: 246 seconds) |
04:54:02 | * | Jesin joined #nim |
05:17:33 | * | nif quit (Read error: Connection reset by peer) |
05:18:17 | * | nif joined #nim |
05:51:23 | * | darithorn quit (Quit: Leaving) |
05:55:19 | * | xet7 quit (Ping timeout: 250 seconds) |
06:07:46 | * | theelous3 quit (Ping timeout: 268 seconds) |
06:08:01 | * | xet7 joined #nim |
06:17:56 | * | narimiran joined #nim |
06:20:57 | * | itschin joined #nim |
06:22:22 | * | Marumoto joined #nim |
06:28:47 | * | nsf joined #nim |
07:05:58 | Araq | timotheecour: we need to cover bignum nimble packages |
07:20:03 | * | xet7 quit (Ping timeout: 252 seconds) |
07:24:40 | * | xet7 joined #nim |
07:25:11 | * | xet7 quit (Read error: Connection reset by peer) |
07:28:11 | * | xet7 joined #nim |
07:37:08 | * | skellock quit (Ping timeout: 245 seconds) |
07:38:40 | * | vlad1777d joined #nim |
07:42:47 | * | absolutejam_phon quit (Remote host closed the connection) |
08:06:54 | * | xet7 quit (Remote host closed the connection) |
08:10:30 | * | skellock joined #nim |
08:16:21 | * | Vladar joined #nim |
08:17:03 | * | skellock quit (Ping timeout: 258 seconds) |
08:45:31 | FromGitter | <timotheecour> will add ot PR |
08:45:34 | FromGitter | <timotheecour> *to PR |
08:46:24 | FromGitter | <timotheecour> btw can u please give me rights so i can add labels in https://github.com/nim-lang/RFCs ? (and maybe to whoever also has rights for adding labels in Nim repo; it just doesn’t make sense to have partial access) |
08:47:56 | * | shpx quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
08:52:30 | * | Trustable joined #nim |
08:52:38 | * | salewski joined #nim |
08:53:16 | salewski | miram, search entry is working again fine in https://nim-lang.org/docs/lib.html |
08:53:24 | salewski | great work, thanks! |
08:56:56 | FromGitter | <timotheecour> @araq are you here? quick question regarding your comment |
09:04:30 | * | salewski quit (Quit: WeeChat 2.3) |
09:07:52 | FromGitter | <alehander42> z |
09:38:40 | Araq | timotheecour: here now |
09:42:08 | * | aguspiza joined #nim |
09:43:00 | FromGitter | <timotheecour> ok just updated PR see https://github.com/nim-lang/Nim/pull/10274/files#r247305369 |
09:43:20 | * | baba3 joined #nim |
09:46:39 | FromGitter | <timotheecour> that solves the problem of allowing reusable helper modules in testament tests, while allowing for simple `import stdtest/myhelper`, without having to mess w relative paths, and without any possible confusion w stdlib or other modules not meant to be imported |
09:53:42 | Araq | ok |
10:10:42 | narimiran | salewski: yeah, there was one misplaced file on the server. it was solved day and a half ago. |
10:13:04 | narimiran | @timotheecour if you have the time (and you have proved to have a knowledge), it would be better if you could solve some issues in the main nim repo, not spending it on putting the labels on old RFC (with some/most of them should be either rewritten or closed) |
10:13:30 | narimiran | note: i said *closing* issues, not opening new ones :D :G |
10:13:31 | narimiran | :P |
10:13:35 | * | skellock joined #nim |
10:16:17 | * | baba3 quit (Ping timeout: 268 seconds) |
10:17:48 | * | skellock quit (Ping timeout: 244 seconds) |
10:19:40 | FromGitter | <GULPF> @narimiran here's an updated list of stdlib module usage: https://gist.github.com/GULPF/dc97e5e745842138556d882c17d97718 |
10:20:05 | narimiran | @GULPF great, thanks! |
10:21:35 | itschin | low -> high, what a forward thinking choice! |
10:22:07 | narimiran | this will be quite useful to me, and it is interesting to compare the numbers with that 9 month old list |
10:23:31 | FromGitter | <GULPF> I improved the code a bit, so the new list has a larger number for most modules (the old code missed the `from x import y` style of imports). But it should still be somewhat comparable with the old list |
10:25:50 | FromGitter | <GULPF> But some modules have changed a lot, e.g strformat is used in 133/1000 of nimble packages now instead of 26/1000 9 months ago |
10:26:21 | narimiran | that makes sense |
10:27:00 | narimiran | but, e.g. i'm surprised by lower number of strscans usages |
10:27:34 | narimiran | how did you scan/include the projects? does it have to have some minimal size or number of github stars? |
10:28:04 | narimiran | " top 1000 starred GitHub projects " as before? |
10:28:25 | FromGitter | <GULPF> yes, which is essentially all Nim projects on github |
10:28:51 | FromGitter | <GULPF> a lot of them can no longer be parsed though |
10:29:18 | * | baba3 joined #nim |
10:39:45 | aguspiza | nim playground is not responding :( |
10:40:44 | aguspiza | i just want to test if bindUnix exists in asyncnet, because i get: m4server.nim(6, 5) Error: attempting to call undeclared routine: 'bindunix' |
10:42:05 | aguspiza | of course i am running that in linux |
10:46:10 | * | stefanos82 joined #nim |
10:49:22 | * | natrys joined #nim |
10:52:30 | * | banc quit (Quit: Bye) |
10:52:56 | * | nsf quit (Quit: WeeChat 2.3) |
10:59:15 | * | banc joined #nim |
11:00:47 | * | shpx joined #nim |
11:08:44 | aguspiza | it seems is something related to nim docker images as using my nim compiler build from code works perfectly |
11:14:22 | narimiran | aguspiza: bindunix was added a month ago, and playground uses version 0.18 which is quite old |
11:15:16 | aguspiza | I have tested with 0.19.0 |
11:15:26 | aguspiza | which is the latest docker image |
11:16:16 | narimiran | 0.19.0 is 4 months old, or so |
11:16:26 | narimiran | you need nim devel (0.19.9) |
11:16:33 | aguspiza | oops |
11:17:01 | aguspiza | so that's why it works on my nim compiler built |
11:17:14 | aguspiza | thx |
11:17:17 | narimiran | np |
11:25:39 | * | banc quit (Quit: Bye) |
11:31:45 | * | rokups joined #nim |
11:38:14 | * | banc joined #nim |
11:39:44 | * | absolutejam_phon joined #nim |
11:54:25 | narimiran | why does this `add` exist and why would you want to use it? https://nim-lang.github.io/Nim/tables.html#add%2CTable[A%2CB]%2CA%2CB |
11:54:51 | narimiran | `var a = {'a': 5, 'b': 9}.toTable; a.add('a', 99)` |
11:55:00 | narimiran | and now you have `{'a': 5, 'b': 9, 'a': 99}` |
11:55:05 | narimiran | Araq: ^ |
12:02:41 | Araq | narimiran: because it's a "multitable" |
12:05:47 | * | nsf joined #nim |
12:17:23 | * | dddddd joined #nim |
12:19:18 | narimiran | ok, i can do `echo a['a']` and it will print 5. how do i reach the other `a` key? |
12:19:34 | narimiran | this screams "shooting oneself in foot" to me |
12:20:01 | Araq | well you iterate over the pairs() |
12:20:19 | Araq | to get all the values |
12:20:34 | Araq | maybe don't call 'add' when you don't know what it does |
12:20:36 | narimiran | for k in a.keys: echo a[k] |
12:20:41 | narimiran | prints: 5, 9, 5 |
12:20:49 | narimiran | (and not 5, 9, 99) |
12:21:22 | Araq | seems consistent to me |
12:21:35 | Araq | a.keys and a[k] are two separate operations |
12:24:00 | itschin | wheres the 5 coming from? |
12:24:19 | itschin | oh i see |
12:24:48 | narimiran | itschin: from that crazy and dangerous `add` :) |
12:25:10 | narimiran | well, second `a` key comes from it |
12:25:37 | narimiran | but you cannot reach it in an usual way, so it prints again the first `a` key |
12:27:01 | * | rect0x51 joined #nim |
12:27:29 | narimiran | my reaction seeing that `add` exists and you can have a table with two same keys: https://media.giphy.com/media/12XMGIWtrHBl5e/giphy.gif |
12:29:22 | * | baba2 joined #nim |
12:30:40 | * | baba3 quit (Ping timeout: 272 seconds) |
12:34:14 | Araq | *shrug* so deprecate it, I like it but I don't care enough |
12:35:45 | Araq | it's a smart idea because hash tables naturally give you multitables, not tables but as I said, I don't care enough. In the compiler I use my own hash tables for these reasons |
12:36:46 | narimiran | ok |
12:36:53 | baba2 | Is there a proc which returns all the values corresponding to key 'a'? |
12:38:05 | narimiran | baba2: it is, if there is only one key :P :D |
12:43:24 | rect0x51 | is there a (obj constructor) shorthand for myType(example: example)? |
12:43:39 | baba2 | Having multitables is good. But the name `add` for hashtables has different semantics in other programming languages, and it may confuse new people. |
12:46:03 | FromGitter | <alehander42> Araq: people expect a `Table` to be just a table, so they assume the invariant `there is just one value corresponding to key` |
12:46:19 | FromGitter | <alehander42> if there is `add`, it should be actually called MultiTable |
12:46:35 | FromGitter | <alehander42> just a dict/map-like thing* |
12:47:50 | FromGitter | <alehander42> we could have MultiTable which is equivalent to Table but has `add`, but probably too late for that |
13:02:05 | * | BigEpsilon joined #nim |
13:03:18 | * | banc quit (Quit: Bye) |
13:11:52 | * | banc joined #nim |
13:20:27 | * | Cthalupa quit (Ping timeout: 240 seconds) |
13:21:30 | * | Cthalupa joined #nim |
13:24:15 | Zevv | fwiw: I do like that these tables can also be used for things like http headers which might have duplcate keys. But finding out about this was kind of surprising, as I also was just expecting Table to be a common dictionary type. I guess if the docs are more clear it should not bite anyone to have this in the same type, right? |
13:25:20 | narimiran | Zevv: i'm currently working on better documentation for Tables module, and just got bitten by it |
13:25:35 | Zevv | I would *love* things like tables to be auto-initalizing, though. I've spent too many min |
13:26:01 | Zevv | utes wondering what the hell was wrong with my code, just because I forgot the initTable |
13:26:17 | narimiran | i think the correct way to go is to deprecate these `add` functions, so the whole module has the least surprising behaviour for most number of users |
13:26:20 | Zevv | which is also noisy, given that you have to repeat the whole type in its bracket |
13:26:57 | narimiran | Zevv: see this https://github.com/nim-lang/RFCs/issues/48 |
13:27:00 | Zevv | narimiran: some people will be mad for that I guess |
13:27:19 | narimiran | what is to be mad about? |
13:27:59 | Zevv | deprications in general |
13:28:10 | Zevv | always hits someone |
13:28:29 | Zevv | ~but better now then >.0 |
13:28:31 | Zevv | 1.0 |
13:28:50 | * | skellock joined #nim |
13:29:06 | narimiran | so it should stay for those 5% people, and confuse the hell out of 95% others who didn't expect that behaviour? |
13:30:50 | itschin | obviously not ;) |
13:32:01 | Zevv | naaah |
13:33:14 | Zevv | 48 looks great to me. Are there any obvious problems with implementing this? |
13:34:55 | narimiran | #48 looked great to many (it had many upvotes in original repo - github doesn't transfer reactions to the original post !?), i don't know where it got stuck, but i would very very much love to see that |
13:39:22 | rect0x51 | question, how comes when a proc return a tuple you have to write `(field1, ...)` instead of `tuple[field1, ...]`? |
13:39:54 | Zevv | tuple[] is the type, () is the constructor |
13:40:17 | rect0x51 | exactly, so in proc's signature... why we use ()? |
13:40:28 | * | Cthalupa quit (Ping timeout: 245 seconds) |
13:40:38 | Zevv | no, in the signature you use tuple[] |
13:40:44 | Zevv | proc divmod(a, b: int): tuple[res, remainder: int] |
13:40:54 | narimiran | rect0x51: you can do it both ways |
13:40:55 | rect0x51 | just tried it... |
13:41:42 | Zevv | The () is a kind if 'anynmous' tuple, but in procs I always use [] to explicitly name the fields - clarity, imho |
13:42:10 | narimiran | so both `proc a(x: int): (int, int)`, and `proc a(x: int): tuple[a, b: int]` work, but are slightly different |
13:42:19 | narimiran | what Zevv just said ^ |
13:42:30 | Zevv | the first one gets implicit field names Field0, Field1, ... |
13:42:34 | * | Snircle joined #nim |
13:42:37 | Zevv | iirc |
13:42:55 | rect0x51 | ohh, with tuple notation you have to name the fields? |
13:43:00 | * | Cthalupa joined #nim |
13:43:13 | Zevv | it is like a ad-hoc C struct |
13:43:37 | rect0x51 | I see now, thanks. |
13:44:04 | Zevv | It seems the () as return value is not even in the manual, only in one example |
13:46:04 | rect0x51 | just to add my opinion regarding `add` on tables, personally (and I am a beginner) the documentation seemed clear about it |
13:46:21 | rect0x51 | when I first encountered it months ago |
13:46:43 | Zevv | Yeah, but it's only on the add(). The general description of Tables never mention that keys are not unique |
13:47:09 | Zevv | IMHO that's no problem - as long as you don't hit add(), you will never notice. But it might come unexpectedly to some. |
13:47:22 | narimiran | rect0x51: and what do you do with the key that you added like that (instead of using `table[key] = value`), if it is a duplicate? |
13:47:30 | Zevv | I don't mind having one data structure doing a lot of things. I lived with Lua for years, which has only one :) |
13:47:40 | Zevv | "Tables should be enough for everything" |
13:47:56 | narimiran | you (general you) might have bugs you don't even know are there |
13:49:05 | rect0x51 | not arguing against, just mentioned my experience, but maybe I was just lucky and ctrl-f'ed `add` |
13:49:30 | * | Cthalupa quit (Ping timeout: 246 seconds) |
13:49:57 | narimiran | and that's exactly the problem, if you ctrl-f'ed `add` and used it, instead of `[]=` |
13:51:07 | rect0x51 | One thing though... add seems like the correct word, `include` or something is more suitable if you don't want duplicates. Nim should be slave of legacy naming conventions. Of course warnings in documentation are good, as you mentioned. |
13:51:57 | rect0x51 | narimiran: what do you mean? |
13:52:00 | * | Cthalupa joined #nim |
13:52:18 | rect0x51 | shouldn't* |
13:52:36 | narimiran | you are beginner in nim and want to use tables. now you want to see how to populate it, and you stumble upon `add` |
13:53:06 | narimiran | so you use that, and you `add` key-value pairs to your table |
13:53:45 | rect0x51 | the explanation of duplicates is documented under `add`, not under `[]=` |
13:53:46 | narimiran | and if you're lucky, you might realized you've just added ('a', 99) pair, but stupid buggy nim when you do `echo myTable['a']` prints `5` |
13:54:03 | narimiran | and you wonder who's crazy |
13:54:08 | rect0x51 | haha |
13:56:43 | rect0x51 | anyway, my opinion is that a couple more warnings in docs are enough.. |
13:58:54 | itschin | nah best not to be eccentric |
14:10:57 | * | miran joined #nim |
14:12:56 | * | narimiran quit (Ping timeout: 246 seconds) |
14:14:46 | * | miran is now known as narimiran |
14:34:28 | * | nsf quit (Quit: WeeChat 2.3) |
14:34:54 | skellock | good morning nim! |
14:40:17 | FromGitter | <zacharycarter> morning! this is off-topic, and if anyone has any feedback for me, if you could PM me on gitter or post feedback in the nim-offtopic / twitch channel, I'd be grateful - looking for feedback on my WIP webste: https://zacattack.io/ |
14:41:50 | skellock | zacharycarter: do you really want to tell people you know Oracle? ;P |
14:42:01 | FromGitter | <zacharycarter> heh |
14:42:28 | FromGitter | <zacharycarter> well - I certainly wouldn't people to translate that to a desire to become a database administrator ;P |
14:48:28 | narimiran | @zacharycarter: in your CV, the most recent experience should come first, not last (you should reverse the order) |
14:48:56 | narimiran | i know you want feedback about the site, but i couldn't help myself to peek in your CV :) |
14:50:00 | FromGitter | <skellock> i went straight to the CV too =) |
14:50:01 | FromGitter | <zacharycarter> ah okay - thank you I will fix that |
14:50:11 | FromGitter | <zacharycarter> I appreciate any and all feedback :) CV included |
14:50:16 | FromGitter | <zacharycarter> I'm trying to get a new job after all |
14:50:23 | rect0x51 | :@ I can't resolve the "Error: complex statement requires indentation" error |
14:51:54 | narimiran | rect0x51: don't put everything on one line ;) |
14:52:12 | rect0x51 | I didn't... |
14:52:44 | narimiran | show us the code |
14:53:30 | * | BigEpsilon quit (Ping timeout: 252 seconds) |
14:53:34 | rect0x51 | ok one sec |
14:54:07 | rect0x51 | actually.. what's the best way to post code here? |
14:54:41 | narimiran | i use ix.io, but any kind of paste-bin clone is fine |
14:55:25 | rect0x51 | https://pastebin.com/E0DS6Kuq |
14:58:07 | rect0x51 | zacharycarter: there is small typo, "workng" instead of "working". |
14:58:34 | FromGitter | <zacharycarter> thank you! |
15:00:33 | * | Ven`` joined #nim |
15:02:46 | narimiran | rect0x51: it works fine, both on 0.19.2 and devel |
15:06:45 | FromGitter | <bluenote10> Hello everyone! Any ideas where fsmonitor lives now? It has been removed from Nim, but according to the discussion the idea was to move it into a Nimble package. I cannot find anything and I'm trying to run old code depending on it. |
15:07:33 | rect0x51 | narimiran: sorry, I am stupid |
15:08:35 | * | Ven`` quit (Ping timeout: 268 seconds) |
15:16:42 | narimiran | rect0x51: it's ok :) |
15:32:52 | * | nsf joined #nim |
15:47:19 | * | darithorn joined #nim |
15:58:54 | * | itschin quit (Ping timeout: 250 seconds) |
16:11:29 | * | rokups quit (Quit: Connection closed for inactivity) |
16:15:11 | * | natrys quit (Ping timeout: 268 seconds) |
16:20:08 | FromGitter | <Vindaar> @bluenote10 It's in the new graveyard: https://github.com/nim-lang/graveyard/tree/master/fsmonitor |
16:21:01 | * | ng0_ quit (Remote host closed the connection) |
16:21:50 | FromGitter | <kaushalmodi> @timotheecour I believe you were talking something about bignum recently here |
16:22:25 | FromGitter | <kaushalmodi> I am by no means a bignum expert but I am patching it just enough so that one toy program in my notes compiles |
16:22:32 | FromGitter | <kaushalmodi> I am patching it in my fork here: https://github.com/kaushalmodi/bignum |
16:22:43 | FromGitter | <kaushalmodi> *compiles on Nim devel |
16:23:38 | narimiran | @Vindaar @bluenote10 if it is in graveyard, it should be available via nimble |
16:23:52 | narimiran | but now i see nimble doesn't seem to find it, hmm |
16:25:41 | narimiran | and now i see that several other packages from graveyard are not available via nimble |
16:26:02 | narimiran | i'll fix it |
16:52:02 | * | Marumto_ joined #nim |
16:54:12 | narimiran | @bluenote10 fixed! `nimble update`, then `nimble search fsmonitor` |
16:54:33 | * | Marumoto quit (Ping timeout: 258 seconds) |
16:55:12 | aguspiza | bluenote10: search for nimwatch |
16:55:25 | aguspiza | but there is no nimble package yet |
16:56:34 | aguspiza | nimwatch seems simpler to use |
17:01:58 | sendell[m] | does choosenim now choose between 32 and 64 bits toolchains on windows? |
17:03:11 | shashlick | No if you already have gcc, it will pick the right one |
17:03:22 | shashlick | Right version of Nim to build |
17:03:36 | * | ng0 joined #nim |
17:03:52 | shashlick | If you install gcc thru choosenim, it will still pick 32 bit |
17:05:30 | sendell[m] | " if you already have gcc, it will pick the right one " : that's my issue then, could not find how to get the same version on two computers |
17:05:30 | * | ng0 quit (Client Quit) |
17:05:57 | sendell[m] | I probably have GCC installed on one of them |
17:05:58 | sendell[m] | thx :) |
17:09:00 | * | BigEpsilon joined #nim |
17:13:27 | shashlick | Cool |
17:22:56 | * | BigEpsilon quit (Ping timeout: 268 seconds) |
17:31:24 | * | skellock quit (Quit: WeeChat 2.3) |
17:31:44 | sendell[m] | what is the GCC detection based on ? I thought that removing it from my path would be enough but then I get |
17:31:59 | sendell[m] | https://pastebin.com/ZN92Hi4P |
17:32:27 | sendell[m] | "gcc" not recognized as an external command |
17:32:39 | sendell[m] | (logically since it's not in my path anymore) |
17:36:14 | * | narimiran quit (Remote host closed the connection) |
17:36:25 | * | aguspiza quit (Ping timeout: 246 seconds) |
17:36:34 | * | narimiran joined #nim |
17:36:58 | * | narimiran quit (Remote host closed the connection) |
17:37:29 | * | narimiran joined #nim |
17:41:12 | Zevv | With a custom annotation with more then one field, how can I get other fields then the first with getCustomPragmaVal()? |
17:41:28 | FromGitter | <bluenote10> @narimiran Thanks for fixing the fsmonitor issue! |
17:42:12 | Zevv | If I have `template msgInfo(id: int, service: string)`, I only get the `id` field, I see no way to specify how to get to the `service` field. |
17:52:19 | FromDiscord_ | <Generic> afaik this is currently a limitation of getCustomPragmaVal |
17:52:58 | Zevv | Just filling in a PR |
17:53:15 | FromDiscord_ | <Generic> you can retrieve all parameters by inspecting the type ast in macro yourself |
17:53:28 | Zevv | bah :) |
17:53:56 | Zevv | https://github.com/nim-lang/Nim/pull/10289 |
17:54:17 | Zevv | Does that make sense? Or should I return an array or seq instead of a tuple? |
17:54:42 | Zevv | No, of course not, stupid question |
17:54:49 | Zevv | heterogenous fields |
17:55:13 | FromDiscord_ | <Generic> maybe add the parameters names aswell |
17:55:36 | FromDiscord_ | <Generic> or is it already included |
17:55:50 | Zevv | hm no, true, it now returns Field0 Field1 |
17:55:54 | Zevv | good point |
17:57:04 | Zevv | Hm, I might need someone to hold my hand with this; the names do not seem to be available in pragmaNode |
17:57:26 | FromDiscord_ | <Generic> I think you need to resolve the definition of the pragma |
17:58:21 | FromDiscord_ | <Generic> if the first element of the pragma node is a sym, you could just use getImpl on that one |
17:58:28 | Zevv | That sounds easier then it is, probably. I'll see if I can understand what is going on in customPragmaNode() |
17:58:57 | Zevv | yes, thats it. Thanks |
18:04:59 | Zevv | Hm now I feel stupid. `repr result` is now (id: 1, name: "Alpha", service: "GLES2") |
18:05:18 | Zevv | but dumping the returned table at runtime still gives me Field0/1/2 |
18:05:42 | Zevv | updated the PR |
18:07:36 | Zevv | seems to work just fine, I can now access the fields by name |
18:13:13 | Zevv | Thanks Generic! |
18:18:30 | * | zyklon quit (Read error: Connection reset by peer) |
18:23:17 | * | Bob joined #nim |
18:36:53 | * | zyklon joined #nim |
18:44:02 | Zevv | Yay, happy as a toddler: 60 lines of nim replacing a complicated custom IDL parser and C++ code generator, and a 8 line proc using msgpack4nim replaces a huge amount of C++ serialization code. |
18:44:14 | Zevv | The learning curve was steap, but totally worth it |
18:44:49 | Zevv | /steep/ |
18:54:16 | * | Ven`` joined #nim |
19:08:41 | * | Snircle quit (Read error: Connection reset by peer) |
19:09:34 | * | Snircle joined #nim |
19:15:09 | shashlick | sendell[m] sorry am out and about - are you using the latest choosenim release or did you build your own |
19:15:17 | shashlick | Version info will help |
19:17:32 | shashlick | Also what choosenim command did you run |
19:23:57 | sendell[m] | shashlick: np, thx for help mate :) I'm using the latest release choosenim v0.3.2 (2018-02-27 20:19:49) [windows/i386] |
19:24:40 | sendell[m] | and i'm running "choosenim update stable" |
19:30:29 | * | lritter joined #nim |
19:35:05 | * | zachk joined #nim |
19:35:50 | * | zachk quit (Changing host) |
19:35:50 | * | zachk joined #nim |
19:52:42 | shashlick | ya looks like update doesn't check gcc again |
19:52:55 | shashlick | if you try choosenim 0.19.2 instead, it should install gcc for you |
20:13:59 | * | Tyresc joined #nim |
20:20:46 | shashlick | is it possible to detect cpu arch at runtime? |
20:20:46 | * | zyklon quit (Read error: Connection reset by peer) |
20:21:36 | sendell[m] | choosenim 0.19.2? Isn't that a nim version? |
20:22:50 | shashlick | ya that's the latest stable |
20:25:22 | sendell[m] | I think latest choosenim is 0.3.2 |
20:25:24 | sendell[m] | https://github.com/dom96/choosenim/releases |
20:27:38 | shashlick | I mean run the `choosenim 0.19.2` command |
20:28:31 | sendell[m] | Ohhh right, I'll give it a try :) |
20:29:36 | shashlick | i think it is worth creating an issue that running an update doesn't do CC detection anymore |
20:35:53 | dom96 | Bah, we have OSX and URGENT labels now? |
20:36:21 | dom96 | Do we seriously need to create a set of good labels and stick to them because people are just willy nilly creating their own? |
20:36:27 | shashlick | what's the meaning of this - https://github.com/ImageMagick/ImageMagick/blob/master/MagickCore/opencl.h#L42 |
20:36:37 | sendell[m] | same issue with "choosenim 0.19.2" :( |
20:36:57 | shashlick | there's a * in the typedef before the name |
20:37:02 | shashlick | what kind of definition is that |
20:37:38 | shashlick | sendell[m]: what's the stack trace |
20:37:49 | sendell[m] | https://pastebin.com/ZN92Hi4P |
20:38:07 | FromGitter | <timotheecour> dom96, i created osx and urgent; maybe urgent could be removed, but not osx |
20:38:12 | * | zyklon joined #nim |
20:38:18 | sendell[m] | oh no wait it's different (that was the stacktrace for update) |
20:38:19 | dom96 | timotheecour: we have OS/Arch specific for that... |
20:38:42 | FromGitter | <timotheecour> things like `stdlib` is too broad, and doesn’t really help much when u have 174 issues w that label |
20:38:53 | dom96 | https://github.com/nim-lang/Nim/labels/OS%2FArch%20specific |
20:38:57 | dom96 | We don't need a label for each OS |
20:39:27 | FromGitter | <timotheecour> i know we do, but if someone is an OSX expert, he’ll be more likely to help if he sees an OSX tag rather than os/arch specific |
20:39:32 | shashlick | sendell[m]: are you still specifying update in the command line? |
20:40:20 | sendell[m] | ²https://pastebin.com/5uk0Qv1M |
20:40:28 | FromGitter | <timotheecour> stackoverflow is a good example; they have a richer label set and it helps more than it hurts |
20:40:34 | sendell[m] | that's the stack when i'm doing "choosenim 0.19.2" |
20:41:24 | shashlick | not sure why it isn't checking for gcc now |
20:41:30 | dom96 | Fine, keep the OSX, but "URGENT" is really not necessary |
20:41:37 | dom96 | We have "Showstopper" for basically that |
20:41:43 | FromGitter | <timotheecour> stuff like `osproc` as a label is much more useful (in terms of heading towards eventual resolution) than a single broad `stdlib` |
20:41:53 | FromGitter | <timotheecour> ok i am removing URGENT now |
20:42:38 | shashlick | sendell[m] - do you have clang installed? |
20:42:54 | FromGitter | <timotheecour> note: i created it as it had a different meaning than high priority (which is not urgent, for proof, we have old open bugs like it) ; likewise showstopper; urgent means basically: someone broke something that affects a lot of ppl |
20:42:59 | FromGitter | <timotheecour> and needs immediate fixing |
20:43:51 | FromGitter | <timotheecour> (as i wrote it in label description: `a regression that breaks everything and needs immediate attention`) |
20:43:56 | dom96 | The labels we have are becoming messy |
20:44:00 | dom96 | I really dislike that. |
20:44:39 | FromGitter | <timotheecour> as good gesture i’ve removed URGENT label; although it had its use IMO. |
20:46:56 | * | absolutejam joined #nim |
20:47:09 | shashlick | dom96 is it worth checking for clang in choosenim on windows? |
20:47:19 | shashlick | Build.bat simply looks for gcc |
20:47:40 | absolutejam | my charger is damaged but works if i hold a certain part in a certain way |
20:47:40 | dom96 | shashlick: It's not, that would require changing the Nim config |
20:47:49 | sendell[m] | shashlick: yup I have clang installed |
20:48:07 | absolutejam | so im sat trying to code 1 handed while my other hand goes numb/. |
20:48:50 | shashlick | dom96 check is being done in needsCCInstall |
20:48:53 | FromGitter | <kayabaNerve> This is starting to piss me off. |
20:49:19 | FromGitter | <kayabaNerve> https://pastebin.com/my0PpNh5 |
20:49:38 | FromGitter | <kayabaNerve> I have that code. The top and bottom function are practically identical. At some point, the bottom one refused to compile. |
20:50:05 | FromGitter | <kayabaNerve> ```code paste, see link``` ⏎ ⏎ I have a single lock in my code. Removing it did not help. [https://gitter.im/nim-lang/Nim?at=5c3a52fd28513d605a174aff] |
20:50:12 | shashlick | dom96: https://github.com/dom96/choosenim/blob/master/src/choosenim/switcher.nim#L45 |
20:50:23 | FromGitter | <kayabaNerve> I tried removing the raises pragma. That didn't work. |
20:50:28 | shashlick | sendell[m]: remove clang from your path for a bit and run choosenim - it should install gcc for you |
20:50:33 | FromGitter | <kayabaNerve> Does anyone know more about this error and have a few? |
20:50:37 | shashlick | then you can add clang back |
20:50:41 | FromGitter | <kayabaNerve> I've tried 0.19, 0.19.2, and devel |
20:50:50 | sendell[m] | I'll try |
20:50:56 | * | zyklon quit (Read error: Connection reset by peer) |
20:50:56 | dom96 | shashlick: hrm, yeah, might be good to disable that for Windows |
20:50:57 | shashlick | sendell[m]: also please open a defect stating that clang on windows throws off choosenim for gcc install |
20:50:59 | FromGitter | <kayabaNerve> But all talk about locks unknown and raise effects differing |
20:53:01 | FromGitter | <kayabaNerve> Also, this code did use to work. I redid a lot of my codebase but this was left untouched. I don't know why it's acting up and I can't easily revert changes until it works again. |
20:55:21 | * | rect0x51 quit (Quit: WeeChat 2.3) |
21:03:46 | sendell[m] | shashlick: it worked. thank you for help, I'll submit an issue :) |
21:05:06 | FromGitter | <kayabaNerve> So. Turns out that having `Data` as an arg type was the issue, despite having another event with a `Data` arg type. If I changed the arg list to `uint, Data`, it compiles. |
21:05:36 | FromGitter | <kayabaNerve> I'm pretty sure whether or not a uint was in the arg list shouldn't affect whether or not this compiles, right? |
21:05:53 | FromGitter | <kayabaNerve> *except I think this is too nested to create a clean GHI :(* |
21:08:35 | FromGitter | <timotheecour> @kayabaNerve the err msg says: `raise effects differ` ; wasn’t that the issue? |
21:08:50 | * | zyklon joined #nim |
21:09:28 | FromGitter | <timotheecour> maybe post more context (eg proc signature of arg and function u were calling) |
21:10:06 | FromGitter | <kayabaNerve> So |
21:10:18 | FromGitter | <kayabaNerve> I created an EventEmitter lib, akin to JS |
21:10:31 | FromGitter | <kayabaNerve> Takes in T, stores it in a table, returns it when asked |
21:11:03 | FromGitter | <kayabaNerve> That error arose when the signature was `proc (data: Data): bool {.raises: Error, Error, Error.}` |
21:11:08 | FromGitter | <kayabaNerve> Removing the raises did nothing |
21:11:30 | FromGitter | <kayabaNerve> The only way I got it to compile was by changing it to `proc (data: Data, junk: uint): bool` |
21:11:36 | FromGitter | <kayabaNerve> And I did get to keep the raises. |
21:12:03 | FromGitter | <kayabaNerve> I have another proc which takes in just Data. The Data object is basically a Send, and that data type works fine. |
21:12:23 | FromGitter | <kayabaNerve> This is a bug I have no explanation for with a weird message and a fix that makes it evident it's a compiler bug. |
21:12:31 | FromGitter | <kayabaNerve> I'll work on creating a MWE when I have some free time. |
21:13:04 | * | baba2 quit (Ping timeout: 250 seconds) |
21:15:19 | FromGitter | <timotheecour> Ya, we’d need a MWE. |
21:17:17 | FromGitter | <timotheecour> do u have 2 different types called `Data` |
21:17:44 | FromGitter | <timotheecour> (eg another one maybe from an imported module) |
21:19:29 | absolutejam | my proc is complaining that I'm giving it int literal(14) instead of int |
21:19:56 | absolutejam | what am I doing wrong? |
21:20:03 | FromGitter | <kayabaNerve> Nope |
21:22:14 | absolutejam | do I have to specify a specific type of int? |
21:23:07 | FromGitter | <timotheecour> @absolutejam same answer as @kayabaNerve we need a minimal working example. Either That, or implment https://github.com/nim-lang/Nim/issues/8276 |
21:23:35 | FromGitter | <timotheecour> *, or we should implement |
21:24:24 | absolutejam | sorry, just looking tosanitise it quickly |
21:24:37 | absolutejam | doesnt make much sense if i just paste atm |
21:25:01 | FromGitter | <timotheecour> (i’ve reduced a ton of code when filing bugs and ya it takes time, but it’s necessary for filing; and the right approach is to implement smthg like dustime, but that’ll take a bit of time) |
21:30:28 | * | Cthalupa quit (Ping timeout: 245 seconds) |
21:33:21 | * | Cthalupa joined #nim |
21:40:29 | * | onionhammer quit (Quit: WeeChat 1.9.1) |
21:42:55 | * | onionhammer joined #nim |
21:43:41 | absolutejam | turns out it was a bad error because I missed a proc param |
21:43:43 | absolutejam | ugh |
21:44:29 | FromGitter | <timotheecour> i think signature match errors still have room for improvement though |
21:49:01 | FromDiscord_ | <exelotl> what's the recommended naming convention for binding C libraries ? |
21:52:45 | FromDiscord_ | <exelotl> I wrote bindings for a library called tonclib (that goes with a book called tonc) |
21:53:04 | FromDiscord_ | <exelotl> so should I call the bindings 'nim-tonc' |
21:54:20 | FromDiscord_ | <exelotl> or is that convention frowned upon? |
21:55:59 | * | nsf quit (Quit: WeeChat 2.3) |
21:56:18 | rayman22201 | seems fine to me. congrats on the lib. Nim on GBA is very cool. |
21:57:42 | FromDiscord_ | <exelotl> thanks! :D |
22:05:22 | FromGitter | <zetashift> wait we can use Nim on GBA? |
22:05:36 | FromGitter | <zetashift> like what devkitpro bindings? |
22:06:23 | FromDiscord_ | <exelotl> yeah! though I personally don't like libgba so I wrapped tonclib instead, it's very full-featured and well documented |
22:07:00 | * | absolutejam quit (Ping timeout: 272 seconds) |
22:07:41 | FromGitter | <kaushalmodi> federico3: thanks for updating the Nim planet! |
22:08:22 | FromGitter | <kaushalmodi> Though, I see my Nim notes in that feed as a problem, I believe. It inundates the beginning of the feed as that page is huge. |
22:09:03 | FromGitter | <kaushalmodi> If I remove that page from my feed, will the planet auto update? |
22:24:14 | * | NimBot joined #nim |
22:27:45 | federico3 | uh? |
22:27:59 | federico3 | kaushalmodi try reloading the page |
22:36:12 | FromGitter | <kaushalmodi> federico3: I mean that the planet updates fine. Just that the first post from my feed might be too long for the planet feed. |
22:46:51 | shashlick | @exelotl skip the - in the name |
22:47:03 | shashlick | I don't think nimble or Nim likes that |
22:53:09 | * | zyklon quit (Read error: Connection reset by peer) |
23:08:06 | FromDiscord_ | <exelotl> yeah the package itself will just be tonc but the repo will be nim-tonc |
23:08:12 | FromDiscord_ | <exelotl> does that sound good? |
23:11:22 | * | aguspiza joined #nim |
23:11:27 | * | zyklon joined #nim |
23:17:13 | * | zahary quit (Quit: Connection closed for inactivity) |
23:33:54 | * | aguspiza quit (Ping timeout: 250 seconds) |
23:41:03 | shashlick | Ya that's fine |
23:47:53 | * | Vladar quit (Remote host closed the connection) |
23:52:15 | * | ng0 joined #nim |
23:53:18 | sendell[m] | what is the recommended way to get nimpretty up and running, WRT choosenim? |
23:56:06 | * | stefanos82 quit (Remote host closed the connection) |
23:56:35 | FromDiscord_ | <exelotl> wtf when I use 'import' in panicoverride.nim it breaks compound operators (and probably other standard library features) |
23:58:24 | * | itschin joined #nim |
23:58:40 | * | Trustable quit (Remote host closed the connection) |