00:07:53 | * | rnrwashere joined #nim |
00:09:49 | I_Right_I | Any updates on the new runtime? |
00:13:36 | rayman22201 | Araq is still working on it. The team released a new video blog today, and Araq talks a bit about the new runtime at the end |
00:14:10 | rayman22201 | https://www.youtube.com/watch?v=Ni9ywA0KvrE |
00:14:50 | I_Right_I | oh, cool thanks |
00:15:18 | rayman22201 | np. we need to market the videos better lol |
00:21:09 | shashlick | why is travis failing here? https://travis-ci.org/genotrance/nimble/jobs/521028632 |
00:21:22 | shashlick | the linux job proceeds fine, whats wrong |
00:28:01 | * | rnrwashere quit (Remote host closed the connection) |
00:29:47 | * | rnrwashere joined #nim |
00:32:01 | rayman22201 | nimble -v failed "git hash: couldn't determine git hash" |
00:32:02 | rayman22201 | that's weird |
00:32:59 | * | dddddd quit (Remote host closed the connection) |
00:39:48 | shashlick | that's not the failure though |
00:41:12 | rayman22201 | There seems to be no log output from the test itself, so it's hard to say |
00:41:37 | shashlick | travis sucks |
00:41:49 | rayman22201 | agreed |
00:42:01 | rayman22201 | even the raw log shows nothing |
00:42:33 | shashlick | waste of time |
00:44:22 | * | rnrwashere quit (Remote host closed the connection) |
00:45:47 | rayman22201 | maybe it was a fluke? can you re-run manually? |
00:46:12 | shashlick | ya tests pass lcally |
00:47:35 | rayman22201 | that's good, but I meant can you force travis to do another CI run without pushing a commit? |
00:48:32 | * | rnrwashere joined #nim |
00:48:48 | * | rnrwashere quit (Remote host closed the connection) |
00:49:03 | * | rnrwashere joined #nim |
00:49:10 | * | rnrwashere quit (Remote host closed the connection) |
00:49:50 | * | rnrwashere joined #nim |
00:54:06 | * | rnrwashere quit (Ping timeout: 258 seconds) |
00:55:00 | shashlick | ive tried all sorts of commits |
00:55:02 | shashlick | https://travis-ci.org/genotrance/nimble/jobs/521037449 |
00:55:17 | shashlick | nothing runs all the way |
00:56:54 | rayman22201 | weird |
01:06:14 | rayman22201 | (╯°□°)╯︵ ┻━┻ Travis |
01:20:28 | * | I_Right_I quit (Remote host closed the connection) |
01:35:13 | * | rnrwashere joined #nim |
02:05:17 | * | abm quit (Quit: Leaving) |
02:07:07 | * | banc quit (Quit: Bye) |
02:08:20 | * | rnrwashere quit (Remote host closed the connection) |
02:08:42 | * | rnrwashere joined #nim |
02:19:04 | * | rnrwashere quit (Remote host closed the connection) |
02:29:57 | * | banc joined #nim |
02:33:13 | * | I_Right_I joined #nim |
02:47:23 | FromDiscord | <j$> can someone point me in the right direction for embedding a terminal in an application |
02:47:56 | * | i7sDream joined #nim |
03:25:58 | I_Right_I | I have a question as far as weather to use nim stable vs nim devel. Is there a pro's con's blog about it somewhere? I am guessing if I would like to stay current with the stdlib I would use the development version. |
03:27:38 | * | d10n-work quit (Quit: Connection closed for inactivity) |
03:32:41 | FromDiscord | <j$> also compiling for release |
03:32:52 | FromDiscord | <j$> it seems to be missing pcre64.dll |
03:33:21 | FromDiscord | <j$> is this intended and am I supposed to include the dll in the folder bc that fixes the problem |
03:34:53 | I_Right_I | j$ didyu just install ni |
03:35:08 | I_Right_I | sorry did you just install nim |
03:35:25 | FromDiscord | <j$> no? |
03:36:33 | I_Right_I | i was just wondering because nim requires pcre |
03:36:50 | FromDiscord | <j$> the dll exists in the nim path, but for ppl without nim I have to inculde the dll with the application |
03:37:04 | FromDiscord | <j$> which is undesirable |
03:37:14 | FromDiscord | <j$> is there no way around this? |
03:38:34 | rayman22201 | @j$ that is just how Windows works lol. You could static link pcre. There is a forum post about it somewhere. |
03:38:45 | I_Right_I | I am new to nim, I use it on linux. I haven't ran into an issue with running an app on another machine. |
03:39:33 | I_Right_I | rayman22201: is there a complier option for that |
03:39:38 | rayman22201 | Pcre is usually installed by default on linux |
03:39:46 | rayman22201 | Not so on wondows |
03:40:14 | I_Right_I | thats because windows is eveil |
03:41:27 | rayman22201 | It's a set of compiler flags... Trying to find the forum post with the details... |
03:41:28 | shashlick | Use nimpcre |
03:41:59 | * | cgfuh quit (Quit: WeeChat 2.3) |
03:43:43 | rayman22201 | Yup. shashlick you are awesome |
03:48:51 | FromDiscord | <j$> okay so nimpcre failed to install |
03:48:55 | rayman22201 | I_Right_I: regarding stable vs develop. It's like any other project. It depends on your requirements. The current stable has had a lot of work into making sure that it is in fact "stable" and well supported. Moreso than earlier releases. Develop has all the cool bells and whistles but might randomly break your code. |
03:50:09 | I_Right_I | but the development version is the future of the stdlib? |
03:50:28 | rayman22201 | Develop is the future, yes. |
03:50:59 | I_Right_I | I didn't know how in flux the stdlib is in the devel |
03:52:16 | rayman22201 | Newruntime has caused some big changes internally, but I don't think the APIs have changed too dramatically. |
03:52:54 | rayman22201 | @j$ what was the failure? |
03:54:19 | I_Right_I | well I was using the random module and the example for 0.19.9 didnt compile for stable |
03:58:59 | I_Right_I | rayman22201: anyways thanks! p.s. I'll take all the bells and the whistles. |
03:59:52 | FromDiscord | <j$> I just had to update nim |
03:59:57 | FromDiscord | <j$> seems to have fixed it |
04:00:01 | rayman22201 | 👍 |
04:01:34 | I_Right_I | j$: that will help me out too something to be mindful of if I ever code for windows |
04:04:58 | rayman22201 | I do find it curious that stable failed to compile the random example. The docs haven't changed. What was the error? I guess it doesn't matter too much. |
04:05:53 | FromDiscord | <j$> I had nim 0.19.0, I just moved to stable 0.19.4 |
04:06:00 | FromDiscord | <j$> but I used choosenim |
04:06:08 | FromDiscord | <j$> I seem to have lost where it installs |
04:08:17 | FromDiscord | <j$> nvm |
04:08:20 | FromDiscord | <j$> I understand now |
04:08:28 | I_Right_I | rayman22201: rnd.nim(18, 12) Error: undeclared identifier: 'sample' |
04:08:50 | I_Right_I | let pick = sample(marbles) |
04:11:04 | rayman22201 | that should work.... I think something may be screwed up with your nim stable |
04:14:05 | I_Right_I | that would be odd I haven't do anything abnormal.....nvm I live abnormal. |
04:14:19 | I_Right_I | I'll reinstall and try again |
04:14:44 | rayman22201 | lol. crossing the streams. how are you installing? |
04:17:06 | I_Right_I | I installed with choosenim |
04:17:16 | FromDiscord | <j$> I cant seem to get nimpcre to work |
04:17:29 | FromDiscord | <j$> Error: cannot open file: nimpcre/pcre |
04:19:54 | * | rnrwashere joined #nim |
04:24:00 | * | sealmove joined #nim |
04:24:03 | rayman22201 | I think choosenim has screwed you both up lol.... I'm not a fan... |
04:26:30 | rayman22201 | J$ can you import other things or is it just pcre? |
04:26:41 | * | rnrwashere quit (Remote host closed the connection) |
04:28:15 | sealmove | what do you suggest for GUI dev in Nim? |
04:30:01 | rayman22201 | https://github.com/yglukhov/nimx |
04:30:38 | sealmove | thanks |
04:31:52 | FromDiscord | <j$> yes I can import and build everything else but pcre |
04:32:14 | rayman22201 | Other nimble libraries? |
04:32:32 | FromDiscord | <j$> I think I'll just attempt static linking instead cause I want to do it anyway |
04:34:33 | * | nsf joined #nim |
04:36:20 | disruptek | couldn't make choosenim work for me, either. |
04:36:23 | * | disruptek shrugs. |
04:36:36 | rayman22201 | I'm wondering if nimble is putting the library in the wrong directory because of choose nim |
04:37:53 | FromDiscord | <j$> so I think that might be it |
04:38:10 | FromDiscord | <j$> but I dont know what the content of nimprce package should be |
04:38:19 | rayman22201 | https://forum.nim-lang.org/t/4149#25832 |
04:38:58 | rayman22201 | That's the old fashioned way of static linking |
04:39:40 | rayman22201 | Nimpcre is better though |
04:39:48 | FromDiscord | <j$> why? |
04:41:52 | rayman22201 | It uses the latest pcre and automates the flags and such that you need |
04:44:28 | rayman22201 | And you don't have to mess with the annoying C details |
04:46:19 | * | rnrwashere joined #nim |
04:49:59 | FromDiscord | <j$> does static linking dlls work in nim |
04:50:06 | FromDiscord | <j$> bc I can't get it too |
04:50:15 | FromDiscord | <j$> I dont think I understand passL |
04:50:37 | * | rnrwashere quit (Ping timeout: 250 seconds) |
04:50:46 | FromDiscord | <j$> that seems to be source files only? |
04:51:18 | * | i7sDream quit (Ping timeout: 245 seconds) |
04:54:42 | rayman22201 | Dlls are "dynamic linked libraries". You can't static link them. You the static version, which is a .lib file on Windows |
04:55:16 | rayman22201 | Annoying C details |
04:58:24 | rayman22201 | You could try installing Nim from GitHub instead of choose nim and see if that fixes nimble for you? |
05:01:11 | * | narimiran joined #nim |
05:06:22 | * | arecacea1 quit (Remote host closed the connection) |
05:06:41 | * | arecacea1 joined #nim |
05:12:22 | * | i7sDream joined #nim |
05:16:49 | * | i7sDream quit (Ping timeout: 246 seconds) |
05:18:14 | FromDiscord | <j$> I dont think nimble is broken bc everything installs correctly other than nimpcre |
05:18:35 | FromDiscord | <j$> but I try it anyway |
05:31:10 | rayman22201 | If that's not it, you may need @shashlick himself to help. |
05:31:47 | rayman22201 | Shashlick = genotrance on GitHub because he likes to confuse people lol |
05:39:34 | * | i7sDream joined #nim |
05:40:51 | FromDiscord | <j$> I cannot install c2nim via nimble |
05:42:25 | FromDiscord | <j$> Im going to sleep, am trigger |
05:42:26 | FromDiscord | <j$> ed |
05:42:47 | FromDiscord | <j$> Ill be back 2morrow after work #feelsbad |
05:44:18 | * | i7sDream quit (Ping timeout: 250 seconds) |
05:44:38 | * | GaveUp quit (Ping timeout: 245 seconds) |
05:44:50 | * | GaveUp joined #nim |
05:52:59 | * | I_Right_I quit (Remote host closed the connection) |
05:55:17 | * | kapil____ joined #nim |
06:06:45 | * | i7sDream joined #nim |
06:07:11 | * | krux02 joined #nim |
06:10:08 | sealmove | nimx is completely undocumented @_@ don't even know what procs are available |
06:16:12 | * | i7sDream quit (Ping timeout: 255 seconds) |
06:16:49 | rayman22201 | https://github.com/yglukhov/nimx/tree/master/doc |
06:16:55 | rayman22201 | ??? |
06:20:14 | sealmove | mmm, didn't realize TOC page lists the keywords to use in code, it looks like a regular/plaintext list :P |
06:20:32 | sealmove | btw NimGL looks awesome! |
06:26:07 | sealmove | and this is real documentation :P https://nimgl.org/docs/nimgl.html#nim-game-library |
06:26:43 | leorize | anyone tried to write native-looking Android apps using Nim? The only way I could think of right now to use the react bindings and write a React-native app :/ |
06:29:10 | * | [rg] joined #nim |
06:29:30 | * | i7sDream joined #nim |
06:32:31 | * | Minimisthupper joined #nim |
06:32:39 | * | i7sDream quit (Client Quit) |
06:33:10 | * | i7sDream joined #nim |
06:37:14 | * | solitudesf joined #nim |
06:48:10 | * | i7sDream quit (Quit: WeeChat 2.4) |
06:50:47 | * | salewski joined #nim |
06:52:27 | salewski | https://irclogs.nim-lang.org/16-04-2019.html#19:33:49 |
06:52:38 | salewski | ><exelotl> salewski: zevv was working on `with` macro but it's somewhat limited https://github.com/zevv/with |
06:52:43 | * | i7sDream joined #nim |
06:52:57 | salewski | Ah yes, that was the with I was looking for, thanks. |
06:53:28 | salewski | It can be hard to find such pieces as that sometimes... |
06:55:06 | salewski | Bye. |
06:55:11 | * | salewski quit (Client Quit) |
07:00:00 | * | gmpreussner quit (Quit: kthxbye) |
07:04:39 | * | gmpreussner joined #nim |
07:10:21 | * | Minimisthupper quit (Remote host closed the connection) |
07:11:52 | * | jjido joined #nim |
07:22:43 | * | NimBot joined #nim |
07:35:35 | * | Vladar joined #nim |
07:57:10 | * | chickendan joined #nim |
08:01:35 | sealmove | nimgl fails to install with nimble |
08:04:39 | * | zielmicha__ quit (Ping timeout: 252 seconds) |
08:04:58 | * | zielmicha__ joined #nim |
08:05:28 | Araq | sealmove, what's the error message? |
08:07:19 | sealmove | https://termbin.com/frbk4 |
08:08:08 | * | floppydh joined #nim |
08:22:22 | sealmove | some kind of authentication issue? |
08:23:36 | Araq | doesn't seem Nimble related indeed |
08:37:52 | * | [rg] left #nim (#nim) |
08:47:04 | sealmove | did {.unchecked.} change or something? |
08:47:17 | Araq | instead use system.UncheckedArray |
09:03:07 | * | Senketsu quit (Quit: WeeChat 2.4) |
09:04:38 | * | Senketsu joined #nim |
09:07:21 | * | ua joined #nim |
09:11:52 | * | neceve joined #nim |
09:23:58 | * | vlad1777d quit (Ping timeout: 244 seconds) |
09:25:25 | * | sealmove quit (Quit: WeeChat 2.4) |
09:40:24 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
09:40:50 | * | couven92 joined #nim |
09:43:43 | * | stefanos82 joined #nim |
09:56:32 | * | jjido joined #nim |
10:00:27 | * | neceve quit (Remote host closed the connection) |
10:01:44 | * | neceve joined #nim |
10:47:05 | Zevv | what's at this time the best place to look for good examples of the newruntime new/owned/ref semantics? |
10:49:27 | * | xet7 joined #nim |
10:51:08 | Araq | https://gist.github.com/Araq/3dce9fca3837fd2cd6760a52ac020c04 ? |
10:51:35 | Araq | this doesn't compile with devel but it shows how the stuff works, I hope |
10:54:22 | Zevv | thanks |
10:57:00 | * | stefantalpalaru joined #nim |
10:57:10 | shashlick | Araq, I'm in the last lap for nocompiler but have a random issue that's blocking me, some package installs break for no good reason |
10:57:10 | * | xet7 quit (Quit: Leaving) |
10:57:28 | shashlick | Also tried adding osx to CI but Travis is breaking for no reason - no logs generated to debug, but osx works in local machine |
10:57:32 | stefantalpalaru | What module should I import to get posix or winlean, depending on the platform? |
10:57:43 | shashlick | Also windows CI passes |
10:57:57 | shashlick | On local machine, not on Travis |
10:58:01 | Araq | strange, dom develops on OSX |
10:58:07 | Araq | stefantalpalaru, os.nim ? |
10:58:17 | Araq | so I would assume the tests work on OSX |
10:58:55 | shashlick | Yes they do but Travis just stops after a cd command |
10:59:08 | Araq | travis on OSX is weird |
10:59:24 | Araq | I think that some packages fail is more important to look into |
10:59:35 | shashlick | Anyway, bigger headache has been this issue I ran into last night with important packages testing |
10:59:40 | shashlick | Ya agreed |
10:59:59 | shashlick | I need a way to test Nim CI with this new nimble |
11:00:30 | stefantalpalaru | I'm not getting InAddr with the "os" module. |
11:01:10 | Araq | net.nim ? I dunno |
11:02:15 | shashlick | Weird thing is that running the nim e command directly works fine, but running nimble which calls nim e behind the scenes causes the nim e to exit with error 1 and spit out an error to stderr |
11:02:17 | Araq | shashlick, so which package fails? |
11:02:40 | shashlick | Several do on Linux, osx most passed |
11:02:47 | shashlick | Very confusing |
11:02:56 | Araq | can you give me an example .nimble file ß |
11:02:57 | Araq | ? |
11:03:25 | shashlick | The glob package for example |
11:03:48 | shashlick | nimble test calls nimble c |
11:04:19 | shashlick | https://github.com/citycide/glob/blob/master/glob.nimble |
11:04:43 | Araq | and 'nimble c' calls back into 'nim e' ? |
11:04:49 | * | stefantalpalaru quit (Quit: stefantalpalaru) |
11:04:59 | Araq | nah, it invokes the compiler like before, right? |
11:05:53 | shashlick | Yes correct |
11:06:28 | Araq | but how does it know how to "build"? |
11:06:31 | shashlick | Nimble - Nim e - nimble - Nim c |
11:06:45 | shashlick | That code is in nimble proper |
11:07:12 | Araq | but it can't, if Nimble doesn't use the compiler API, it cannot process the .nimble file |
11:08:30 | shashlick | that's what i've implemented in nocompiler |
11:08:52 | shashlick | i convert the nimble file into a legacy ini file + a nims file |
11:09:36 | Araq | bah |
11:09:56 | shashlick | this is the error i get - (1, 22) Error: undeclared identifier: 'home' |
11:10:20 | Araq | 'nimble dump' should have been moved to the compiler |
11:10:38 | Araq | and then Nimble can call 'nim dump foo.nimble' to get the information, no need for an .ini file |
11:11:11 | Araq | 'home' ? where is that coming from? |
11:11:46 | shashlick | it is part of the path being sent for the glob package nimble file |
11:11:57 | shashlick | i need to debug this further, don't mean to waste your time |
11:12:01 | * | xet7 joined #nim |
11:12:23 | leorize | I'd be glad if `nim dump` can give me the project file name |
11:12:51 | leorize | would be useful for implementing nimsuggest integration |
11:14:42 | shashlick | also, nimble dump still uses the same method to get package info from the nimble file |
11:15:56 | shashlick | it calls readPackageInfoFromNimble() which calls the compiler to parse the nimble file |
11:16:09 | shashlick | so had to replace that with a nim e version |
11:16:29 | Araq | you lost me |
11:16:40 | Araq | how does that work? |
11:17:23 | shashlick | so most of my code is in this new file - https://github.com/genotrance/nimble/blob/nocompiler/src/nimblepkg/nimscriptwrapper.nim |
11:17:51 | shashlick | that runs nim e instead of embedding the compiler |
11:18:38 | shashlick | here's the part that reads the package info - https://github.com/genotrance/nimble/blob/nocompiler/src/nimblepkg/packageparser.nim#L286 |
11:25:58 | Araq | what does nonExit() do? |
11:26:54 | shashlick | Where is that? I didn't add it |
11:27:51 | shashlick | Github is a pain on the phone |
11:29:02 | Araq | https://github.com/genotrance/nimble/blob/nocompiler/src/nimblepkg/nimscriptwrapper.nim#L69 |
11:29:31 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
11:30:12 | shashlick | You mean onExit, ya need to call that to communicate between nimble and nim e |
11:30:29 | shashlick | Had to add some stuff to nimscriptapi |
11:31:16 | shashlick | https://github.com/genotrance/nimble/blob/nocompiler/src/nimblepkg/nimscriptapi.nim#L110 |
11:31:16 | Araq | ah, cool |
11:31:25 | Araq | seems to be the right way |
11:32:12 | shashlick | Right now I'm printing the json to stdout but will have to use a file since the live output of the child process loses all colors |
11:32:43 | shashlick | If I use parent streams, can't capture the output |
11:32:55 | shashlick | So will have to use a file |
11:36:36 | shashlick | Any other feedback please let me know |
11:40:20 | FromGitter | <SirHaswell> hi |
11:40:34 | FromGitter | <SirHaswell> people ? |
11:42:12 | shashlick | Sup |
11:42:40 | FromGitter | <SirHaswell> Nim seems like a crazy language! Why doesn't anyone use it? |
11:43:17 | shashlick | Lots of people do |
11:43:46 | FromGitter | <SirHaswell> In relation to Rust, no one hears about Nim:;( |
11:43:53 | FromGitter | <mratsim> Currently you mostly have to search for it to find it |
11:44:26 | shashlick | Well advertising works that way - the more $ the more awareness |
11:44:38 | FromGitter | <mratsim> you need a critical mass to get natural exposure in bookshops, tutorial, "learn programming" threads |
11:45:00 | FromGitter | <mratsim> or you need a big backer |
11:57:13 | * | nc-x joined #nim |
11:57:32 | nc-x | `C:\Nim\lib\system\iterators.nim(154, 20) Error: internal error: '=destroy' operator not found for type seq[Obj]` |
11:57:50 | nc-x | How and where do I define `=destroy` for a seq[Obj]? |
11:58:04 | nc-x | I am getting errors with whatever I try. |
11:59:18 | FromGitter | <mratsim> are you using the --newruntime or --gc:destructors flag? |
12:00:00 | FromGitter | <mratsim> there might be a regression where iterators rely on destructors even when one of thos eflags is not set |
12:00:46 | nc-x | --newruntime |
12:01:15 | nc-x | and I see `proc `=destroy`[T](s: var seq[T])` in seqs.nim behind `when not defined(nimV2):` |
12:02:17 | livcd | mozilla is a 1bn corporation anyway |
12:03:18 | FromGitter | <mratsim> maybe iterators.nim doesn't import seqs.nim |
12:03:32 | FromGitter | <mratsim> or include, not sure how it's set up |
12:06:21 | livcd | What is the largest Nim codebase out there ? (besides Nim itself) |
12:08:04 | leorize | nc-x: that's a bug that Araq is working on |
12:08:46 | leorize | an internal error is definitely a compiler bug |
12:09:11 | nc-x | mratsim: system.nim has `include "core/seqs"` |
12:09:17 | nc-x | leorize: Ah, okay! |
12:10:03 | FromGitter | <mratsim> @livcd, opensource it's probably ReelValley, closed source not sure, I think cooldome has a big Nim codebase at his work. |
12:10:08 | Zevv | livcd: there was this game that was open sourced a few moths ago. Noone got it to compile afaik, though |
12:10:15 | * | nc-x quit (Quit: Page closed) |
12:10:22 | Zevv | > |
12:10:24 | Zevv | ^ |
12:10:28 | FromGitter | <mratsim> cc @yglukhov :p |
12:10:54 | livcd | yeah i know |
12:10:55 | livcd | i tried |
12:10:55 | livcd | :D |
12:11:15 | * | beatmox quit (Remote host closed the connection) |
12:11:39 | * | i7sDream quit (Remote host closed the connection) |
12:17:07 | FromGitter | <jrfondren> is there a complete language changelog somewhere? Nim in Action uses "for i in 0 .. <10:", and nim has a deprecation warning, but I don't know where you'd see to use ..< except by looking for looping examples in more recent tutorial documents. |
12:18:59 | narimiran | jrfondren https://nim-lang.org/blog/2018/03/01/version-0180-released.html |
12:19:11 | narimiran | ctrl+F .. < |
12:20:04 | FromGitter | <jrfondren> even if I knew that the blog would probably mention it, < is pretty hard to search for. Maybe other deprecations are more searchable. |
12:21:14 | narimiran | you can search the announcements for 'deprecated' ;) |
12:26:14 | * | dddddd joined #nim |
12:29:16 | Araq | bah nc-x is gone |
12:29:31 | Araq | now I don't know how to reproduce and will work on a different bug :P |
12:30:44 | FromGitter | <kaushalmodi> looks like I logged in at the right time :) |
12:30:53 | FromGitter | <kaushalmodi> Araq: may be this issue? https://github.com/nim-lang/Nim/issues/11046 |
12:31:06 | * | kapil____ quit (Quit: Connection closed for inactivity) |
12:31:48 | Araq | didn't look deeply into it but it seems to me hard to fix, easy to workaround |
12:32:07 | Araq | let k = key, v = val |
12:32:20 | Araq | echo &"{k} {v}" |
12:32:48 | Araq | and btw I think we should deprecate 'fmt' and embrace '&' |
12:33:06 | Araq | it's silly we went with both syntaxes |
12:33:12 | FromGitter | <kaushalmodi> yeah |
12:33:26 | shashlick | I agree, never use fmt |
12:33:27 | FromGitter | <kaushalmodi> can you "alias" "fmt" to "&"? |
12:33:48 | shashlick | Also would be nice if it were part of strutils |
12:33:55 | shashlick | But oh well |
12:33:57 | Araq | that's how it's done but it doesn't change the fact that lexing rules differ |
12:34:39 | FromGitter | <kaushalmodi> hmm |
12:34:50 | FromGitter | <kaushalmodi> btw just replace fmt to & did not make any difference, still fails |
12:34:58 | FromGitter | <kaushalmodi> next, will use the `let` trick you suggested |
12:36:06 | FromGitter | <mratsim> @jrfondren there was too many unintentional errors with unary <10 |
12:36:21 | * | nc-x joined #nim |
12:36:30 | FromGitter | <mratsim> now you should use ..< without space and unary < (previous) will be removed |
12:36:46 | nc-x | Araq: I will open an issue in a few minutes once I get a minimize the code |
12:36:56 | FromGitter | <kaushalmodi> Araq: OK, that `let` trick worked: http://ix.io/1GrY |
12:36:59 | FromGitter | <jrfondren> I remembered that. I just wondered how I'm expected to learn that. |
12:37:05 | FromGitter | <mratsim> so `0 ..< 10` remains but `0 .. <10` is warned about |
12:37:23 | FromGitter | <kaushalmodi> Araq: what's a simple explanation for that behavior? (so that I can put in my notes) |
12:37:31 | FromGitter | <kaushalmodi> also, do you think that will be fixed? |
12:37:34 | FromGitter | <mratsim> the new deprecation indicates what is the replacement |
12:37:40 | FromGitter | <mratsim> deprecations* |
12:38:07 | FromGitter | <mratsim> you can do a PR to add that to < |
12:38:14 | Araq | kaushalmodi: fields/fieldPairs is very special in the compiler, we have to unroll the loop in the frontend and we likely got it wrong :P |
12:39:16 | FromGitter | <kaushalmodi> looks like I hit the nail on the head with that issue title |
12:39:39 | FromGitter | <kaushalmodi> I played with numerous `fmt`s in for loops and got confused what was special about looping through objects :P |
12:39:58 | FromGitter | <mratsim> it's not a loop |
12:40:14 | * | Minimisthupper joined #nim |
12:40:20 | FromGitter | <kaushalmodi> i mean iterating through values yielded by fields/fieldPairs |
12:40:36 | FromGitter | <mratsim> yeah, I mean what's special is that it's not a loop :p |
12:41:01 | FromGitter | <kaushalmodi> sorry, I am confused |
12:41:13 | FromGitter | <kaushalmodi> you mean that the `for` behaves differently for fields/fieldPairs? |
12:41:16 | FromGitter | <jrfondren> the fields are statically known so the loop is fully unrolled, yeah? |
12:42:52 | FromGitter | <kaushalmodi> so what is different that fields/fieldPairs doesn't work, while this works?: ⏎ ⏎ ```import strformat ⏎ for i in @[1, 2, 3]: ⏎ echo fmt"{i}"``` [https://gitter.im/nim-lang/Nim?at=5cb71f4ca4ef097471b2ea30] |
12:43:27 | FromGitter | <mratsim> in that case it's a real loop in the generated code |
12:43:50 | * | Minimisthupper quit (Client Quit) |
12:43:51 | FromGitter | <mratsim> in the other case, Nim inserts as many "echo" as the number of fields in your objects |
12:44:13 | FromGitter | <kaushalmodi> huh, really? TIL |
12:44:45 | FromGitter | <mratsim> And I'm pretty sure that the compiler then chokes on semantic type checking the formats |
12:44:45 | FromGitter | <kaushalmodi> so that whole `for key,val in foo.fieldPairs` is a special construct? |
12:44:57 | FromGitter | <mratsim> yes |
12:45:35 | FromGitter | <mratsim> key/val only exists at compile time and the types is a weird compile-time polymorphic stuff |
12:45:40 | FromGitter | <kaushalmodi> ok .. not sure how to note that down :P But for now I'll use fields/fieldPairs with caution |
12:46:12 | FromGitter | <mratsim> well it doesn't really cause problems in my experience, just hard to decipher error messages |
12:47:11 | FromGitter | <mratsim> also that means that if you want to test a condition on the keys, you need to use when to avoid type errors |
12:47:31 | FromGitter | <mratsim> like "when key is string:" |
12:48:33 | FromGitter | <kaushalmodi> Thanks for all that info |
12:49:46 | narimiran | kaushalmodi: see this also https://github.com/nim-lang/Nim/issues/7533 |
12:50:06 | narimiran | "Warning: This really transforms the 'for' and unrolls the loop. The current implementation also has a bug that affects symbol binding in the loop body." |
12:51:01 | FromGitter | <mratsim> wow the error message is even worse that what I met so far |
12:51:32 | FromGitter | <kaushalmodi> man, timotheecour is really missed here |
12:51:53 | FromGitter | <kaushalmodi> narimiran, Araq: you guys should finally strike up some truce with him |
12:52:24 | livcd | oh noes fmt goes away? |
12:52:55 | FromGitter | <kaushalmodi> narimiran: probably related to that system sub-module separation? cannot find `fieldPairs` in https://nim-lang.github.io/Nim/theindex.html |
12:53:32 | FromGitter | <kaushalmodi> looks that most of what I am looking for in system is missing from the devel docs |
12:53:34 | FromGitter | <kaushalmodi> :( |
12:54:03 | narimiran | yes, probably. look at iterators.nim:205 (and you'll see it is just a magic :)) |
12:54:36 | FromGitter | <kaushalmodi> yes, I see that in stable docs: https://nim-lang.org/docs/system.html#fieldPairs.i%2CS%2CT |
12:55:16 | nc-x | Araq: https://github.com/nim-lang/Nim/issues/11050 |
12:55:20 | FromGitter | <kaushalmodi> I had stopped using the stable docs for a while now .. can fixing the devel docs be bumped up in priority? |
12:56:26 | Araq | nc-x, 'method'? |
12:56:35 | Araq | but ok |
12:57:16 | nc-x | Araq: it is part of some bigger code where method was required. |
12:57:36 | nc-x | (for dynamic dispatch) |
12:57:45 | nc-x | Here i just reduced the code to the minimum I could |
12:59:47 | * | nc-x quit (Quit: Page closed) |
13:00:19 | FromGitter | <mratsim> seems similar to the error message with methods and generic variant objects I get |
13:00:39 | FromGitter | <mratsim> in certain condition, the compiler tells me that a field deos not exist |
13:05:24 | Araq | narimiran, yeah we need to fix the docs asap |
13:06:17 | narimiran | we already tried to fix those system/xxx stuff and we failed. but i agree, we need to figure out something |
13:19:34 | FromGitter | <palash25> Hi there, I am looking for an http client library for nim and also the link to standard library docs |
13:20:17 | narimiran | palash25 the docs are here: https://nim-lang.github.io/Nim/lib.html |
13:21:31 | FromGitter | <palash25> ah thanks 👍 |
13:27:05 | * | i7sDream joined #nim |
13:30:20 | FromGitter | <liquid600pgm> do you think 64-bit instructions for register-based VMs are overkill? |
13:31:11 | FromGitter | <liquid600pgm> I'm not sure how to deal with the limit of only 256 registers being available because of bytecode limitations |
13:31:45 | FromGitter | <liquid600pgm> right now I'm considering byte-aligned arrangements, but I'm not quite sure if this is the perfect solution |
13:32:20 | FromGitter | <K155K155BAN6BAN6> hello, I noticed that nim participated in google summer of code a few years ago ⏎ will nim lang be participating in https://developers.google.com/season-of-docs/ as a mentoring organization this year? |
13:34:21 | Araq | not sure, it always takes time to prepare it and in the end we're rejected anyway |
13:34:43 | FromGitter | <K155K155BAN6BAN6> was nim not selected for gsoc? |
13:35:22 | FromGitter | <liquid600pgm> I want to store locals in registers for the sake of efficiency in operations, but 256, including any required operands (which narrows down the number to about 200) feels like a pretty small value, especially with complex scripts |
13:36:25 | FromGitter | <liquid600pgm> 65536 feels way too overkill, though |
13:36:25 | Araq | liquid600pgm: we probably should use spilling in the VM but 200 locals is a pretty big number |
13:37:26 | FromGitter | <liquid600pgm> I'd never reach that many locals anyways, so I agree. what's spilling? |
13:38:35 | Araq | K155K155BAN6BAN6: in the past it wasn't. |
13:38:39 | * | i7sDream_ joined #nim |
13:40:27 | FromGitter | <liquid600pgm> nvm, looked it up, it's synonymous with register allocation |
13:41:10 | FromGitter | <liquid600pgm> for my VM, I'll be using a linear register allocator, for simplicity's sake |
13:41:18 | * | i7sDream quit (Ping timeout: 245 seconds) |
13:42:53 | Araq | no, "spilling" is what you do when you run out of registers |
13:43:00 | FromGitter | <mratsim> @K155K155BAN6BAN6 we didn't apply this year, there was a thread but not participation |
13:44:35 | FromGitter | <mratsim> @liquid600pgm original x86 only has 8 registers |
13:44:42 | FromGitter | <mratsim> and x86_64 16. |
13:45:25 | FromGitter | <jrfondren> those both have stacks though. Presumably a register VM is avoiding that |
13:45:50 | FromGitter | <mratsim> I nerver saw a register VM without a stack |
13:46:40 | FromGitter | <mratsim> I would suggest you to checkout RiscV5 for inspiration, it's RISC unlike x86 with its awful addressing modes. |
13:47:01 | Araq | Nim's VM comes close to not offering a stack :P |
13:47:24 | Araq | well you can only access 255 stack slots |
13:47:33 | Araq | and these are also called 'registers' |
13:49:19 | FromGitter | <mratsim> @liquid600pgm It doesn't make sense to try to store locals in "Nim registers" what you should aim for is to keep locals in the L1 cache of the actual CPU. |
13:49:44 | Araq | mratsim, no. |
13:49:49 | Araq | totally different topics. |
13:50:16 | FromGitter | <mratsim> how so? |
13:50:39 | FromGitter | <mratsim> ah, he is talking at compile-time |
14:07:33 | dom96 | K155K155BAN6BAN6: Nope, I tried to encourage someone to help us prepare for GSoC but it seems nobody stepped up https://forum.nim-lang.org/t/4529#28307 |
14:11:32 | * | kapil____ joined #nim |
14:13:01 | xace | dom96: i wish i saw that post, i'm 1000% super interested |
14:13:31 | dom96 | :/ |
14:14:06 | * | floppydh quit (Quit: WeeChat 2.4) |
14:15:17 | FromGitter | <mratsim> Probably there should be something started during Hacktoberfest about projects to submit for GSoC |
14:32:11 | * | abm joined #nim |
14:32:55 | xace | well ultimately i'd get involved in the nim compiler, but i haven't dipped my foot into it yet. but anything nim related would be intersting to me... I'd like to use nim in production too, but atm I'm a bit worried about that the code I write today does not work tomorrow... |
14:34:12 | * | i7sDream_ quit (Quit: WeeChat 2.4) |
14:37:47 | * | i7sDream joined #nim |
14:39:25 | Zevv | Things are in flux, but IMHO its no worse than any language these days. My 2.7 python code needs some love to get working in 3.5, and I don't even *dare* to touch C++ code from 10 years ago |
14:40:02 | Zevv | My Nim code from more then a year ago still runs with some minor changes - I wouldn't be too worried about this |
14:40:36 | xace | Zevv: yeah, im considering c#... but i know its nim I want... |
14:41:21 | Zevv | That's a choice only you can make - you pick whatever is right for you |
14:41:29 | xace | Zevv: yeah, but breakage in production is a no-no |
14:41:52 | xace | yeah. im sticking to nim |
14:41:53 | Zevv | You could try COBOL or ANSI C |
14:42:00 | Zevv | these are pretty mature |
14:42:41 | Zevv | There's no need to break stuff in production. You can just pick a Nim version and keep to that |
14:42:46 | xace | nah. ive grown keen to friction less programming |
14:42:56 | Zevv | There is no runtime you can upgrade that breaks your code. Once you compiled your binary, it is compiled |
14:46:16 | * | nsf quit (Quit: WeeChat 2.4) |
14:55:42 | xace | i am aware of it. i was just voicing my concerns. that being said: ill continue using nim because i like the liberty it gives me to express myself ;-) |
14:57:32 | Zevv | same here :) |
14:58:50 | * | bin_y joined #nim |
15:01:09 | FromGitter | <mratsim> Staying on a 0.19.X seems to work fine without breakage |
15:01:19 | FromGitter | <mratsim> with the backports |
15:02:04 | FromGitter | <mratsim> changing stable release might break stuff which should be fixable with the changelog. (stuff like not nil) |
15:03:39 | Zevv | not nil has been my only breakage over a year and a half |
15:07:03 | xace | mratsim, yeah im a bit concerned about the new owned/disarm. i'd like to write my code to be future proof for owned/disarmed, but ill wait until nim stable adds it. I'm not 100% sure on how to use it either but I guess more info comes soon... |
15:09:11 | FromGitter | <mratsim> if you don't use pointers I wouldn't be worried, especially now that popular libraries are part of the anti regression test suite |
15:11:09 | * | fanta1 joined #nim |
15:11:24 | * | ryukoposting joined #nim |
15:11:48 | ryukoposting | any final decisions on this? https://github.com/nim-lang/packages/issues/1051 |
15:11:49 | xace | mratsim, but doesn't it affect places where I use `var`? |
15:12:06 | Zevv | xace: no |
15:12:34 | xace | i need to re-read that RFC again :( |
15:13:40 | FromGitter | <mratsim> it only concerns ref objects for starters |
15:13:51 | Araq | ryukoposting, good question |
15:14:23 | ryukoposting | it's not necessarily something that requires a PR, not sure exactly how nimbe's automated tests work |
15:14:38 | Araq | xace, it's way too early to worry about 'owned ref', we strive to make --newruntime the much better --gc:none option |
15:17:11 | * | lritter joined #nim |
15:17:43 | xace | Araq, yes you are right. I have a personal library that runs on one of my servers, and I know that sometime in the future it's going to be affected. I'm not too stressed about it yet. But when it becomes a problem I will know better than I do today :) |
15:20:00 | Araq | having said that, --newruntime is amazing and the best thing since sliced bread and more Nim'ish than the old Nim. |
15:21:49 | Araq | dom96, can we enforce what ryukoposting suggests? |
15:22:08 | xace | Haha, I sincererly hope so |
15:23:11 | dom96 | Mostly happy with this, but let's not be too harsh on packages that don't have a tagged version at first |
15:23:49 | Araq | I'll add a 'koch tag' command :P |
15:23:54 | FromGitter | <mratsim> I think a 6 months deprecation period is fair |
15:24:04 | Araq | so that all my projects have consistent git tags |
15:24:31 | xace | mratsim: for which problem? |
15:24:32 | ryukoposting | I agree, no need to be draconian about it, but make sure something is there before it gets added to the package list |
15:24:49 | FromGitter | <mratsim> @xace for https://github.com/nim-lang/packages/issues/1051 |
15:26:24 | FromGitter | <mratsim> Note that one reason we don't add tags in Status project if there is a single tag, there is no way to ask nimble to always use the latest commit |
15:26:46 | ryukoposting | #head? |
15:26:47 | FromGitter | <mratsim> well in the end we are currently using make + git submodules |
15:27:07 | FromGitter | <mratsim> #head conflicts with nimble develop iirc |
15:27:20 | FromGitter | <mratsim> ugh, gitter formatting :/ |
15:27:45 | ryukoposting | idk what formatting you're seeing but irssi definitely isn't showing it lol |
15:28:07 | FromGitter | <mratsim> I see it has "header"/bold |
15:28:13 | ryukoposting | lmao |
15:28:25 | FromGitter | <mratsim> "#head conflicts with nimble develop iirc" |
15:28:35 | Araq | mratsim: Any idea if/how the owned refs would work with the Nimbus graph? (Is it a Merkle tree?) |
15:30:33 | FromGitter | <mratsim> If you can implement a tree/trie merkle trees won't have an issue: https://github.com/status-im/nim-eth/blob/master/eth/trie/binary.nim |
15:30:37 | xace | Regarding community nimble packages, how would you feel about a "verified", "reviewed" or "votes" flag to indicate a quality standard over a package? I've run into packages who advertise certain functionality, but in reality turns out to be hacks that do not support full functionality... Or is it too much? |
15:30:41 | FromGitter | <mratsim> I'm more worried about the async/closures |
15:31:54 | Araq | well we're about to test async/closures in the upcoming weeks |
15:32:06 | Araq | I also consider this the most problematic use case |
15:32:13 | ryukoposting | I'd rather avoid a voting system for most things but for a package repo site like nimble.directory, I think it'd be great |
15:32:27 | Araq | as far as I've been able to analyse it, it would work though |
15:32:31 | * | chickendan quit (Quit: Quit) |
15:32:49 | Araq | of course I also have a plan B for it ;-) |
15:34:04 | xace | Oh thats true, nimble.directory could be a seperate entity for such things |
15:34:32 | Araq | see you later |
15:36:04 | ryukoposting | an easy stop-gap for now would be just looking at repos submitted to nimble, since the PRs it uses to add stuff to the package list have to get accepted manually |
15:41:49 | FromGitter | <K155K155BAN6BAN6> > *<dom96>* @K155K155BAN6BAN6: Nope, I tried to encourage someone to help us prepare for GSoC but it seems nobody stepped up https://forum.nim-lang.org/t/4529#28307 ⏎ ⏎ ah thats too bad. |
15:43:48 | dom96 | mratsim: Why wouldn't it conflict? `develop` means "let me use my latest version locally" which is always #head |
15:44:10 | dom96 | okay, perhaps not always, but most of the time :P |
15:44:51 | dom96 | Yeah, you're right, I can see that being a problem lol |
15:45:14 | * | rnrwashere joined #nim |
15:45:21 | dom96 | Technically not hard to resolve though, just needs a good design |
15:45:33 | dom96 | I used #head because it seemed like the simplest choice at the time |
15:45:58 | shashlick | @dom96 - i make a PR against a nimble-test package |
15:46:09 | shashlick | will help nimble to test against devel |
15:47:16 | shashlick | anyone else have any clue why travis doesn't show any logs and randomly fails on osx - https://travis-ci.org/genotrance/nimble/jobs/521014520 |
15:47:34 | shashlick | all tests pass on my local machine but travis is being a jerk |
15:47:54 | * | rnrwashere quit (Remote host closed the connection) |
15:48:34 | shashlick | tried all sorts of variations, here's another one - https://travis-ci.org/genotrance/nimble/jobs/521037449 |
15:48:46 | * | rnrwashere joined #nim |
15:50:02 | FromGitter | <mratsim> @dom96, when you do nimble install, you might get in your nimble packages foo@#master foo@#head foo@#0.1.0 and you don't know which version is loaded |
15:51:51 | * | fanta1 quit (Quit: fanta1) |
15:54:04 | * | rnrwashere quit (Remote host closed the connection) |
15:54:27 | shashlick | can someone on OSX run a quick test for me please? |
15:54:52 | ryukoposting | mratsim that's a good point, imo it should default to latest stable release, then go to head if tehre's no tag |
15:54:54 | * | rnrwashere joined #nim |
15:55:10 | ryukoposting | shashlick I don't have a machine running OSX, sorry man |
15:55:14 | shashlick | ``` |
15:55:15 | shashlick | git clone --single-branch --branch nocompiler https://github.com/genotrance/nimble nimble-nocompiler |
15:55:16 | shashlick | cd nimble-nocompiler && nimble test && cd .. |
15:55:17 | shashlick | ``` |
15:55:32 | shashlick | thanks in advancce |
15:57:13 | FromGitter | <mratsim> @ryukoposting, nimble install works like that, latest tag by default and master otherwise |
15:57:20 | FromGitter | <mratsim> head is the override for nimble develop AFAIK |
15:57:52 | FromGitter | <mratsim> the issu e is that when you do nimble test, you don't know |
15:58:44 | ryukoposting | ooooh shoot yeah |
15:59:19 | * | bin_y quit (Ping timeout: 256 seconds) |
15:59:42 | * | rnrwashere quit (Remote host closed the connection) |
15:59:53 | ryukoposting | could probably just make it behave like install, but idk |
16:00:29 | * | ryukoposting quit (Quit: Lost terminal) |
16:01:50 | * | al_ joined #nim |
16:02:42 | shashlick | will be great if that nocompiler test can be run on linux/windows as well |
16:03:16 | * | rnrwashere joined #nim |
16:03:39 | * | rnrwashere quit (Remote host closed the connection) |
16:03:47 | WilhelmVonWeiner | so I was looking at the `parsecsv` module and wanted to use it to parse tsv |
16:04:08 | WilhelmVonWeiner | https://github.com/nim-lang/Nim/blob/master/lib/pure/parsecsv.nim#L55 |
16:06:01 | * | anxion joined #nim |
16:06:01 | WilhelmVonWeiner | but if you change the seperator in `open` there's an error about conflicting types? https://hastebin.com/deragexoga.bash |
16:06:09 | * | rnrwashere joined #nim |
16:07:54 | * | jasper joined #nim |
16:09:06 | * | xet7 quit (Quit: Leaving) |
16:09:37 | jasper | WilhelmVonWeiner: It expects a char not a string, "x" is different from 'x' unlike python/js/etc. |
16:10:28 | * | xet7 joined #nim |
16:10:55 | WilhelmVonWeiner | Thanks a ton. I was letting the similarities with python override r-ing tfm I suppose |
16:13:51 | * | xet7 quit (Client Quit) |
16:15:46 | * | xet7 joined #nim |
16:18:52 | * | xet7 quit (Client Quit) |
16:21:57 | * | rnrwashere quit (Remote host closed the connection) |
16:27:18 | * | oculuxe quit (Ping timeout: 255 seconds) |
16:27:30 | * | xet7 joined #nim |
16:28:19 | * | oculux joined #nim |
16:31:59 | * | rnrwashere joined #nim |
16:43:34 | * | xet7 quit (Quit: Leaving) |
16:44:50 | * | xet7 joined #nim |
16:46:14 | * | rnrwashere quit (Remote host closed the connection) |
16:46:58 | * | rnrwashere joined #nim |
16:47:56 | * | xet7 quit (Client Quit) |
16:49:07 | * | xet7 joined #nim |
16:52:49 | * | Trustable joined #nim |
16:59:31 | * | rnrwashere quit (Remote host closed the connection) |
17:00:04 | * | rnrwashere joined #nim |
17:01:00 | * | rnrwashere quit (Read error: Connection reset by peer) |
17:01:15 | * | rnrwashere joined #nim |
17:10:22 | * | nsf joined #nim |
17:11:49 | * | Trustable quit (Remote host closed the connection) |
17:15:33 | * | jasper quit (Quit: Page closed) |
17:19:15 | * | neceve quit (Read error: Connection reset by peer) |
17:23:18 | * | xet7 quit (Quit: Leaving) |
17:24:54 | * | xet7 joined #nim |
17:25:24 | * | rnrwashere quit (Remote host closed the connection) |
17:34:34 | * | enthus1ast joined #nim |
17:34:49 | enthus1ast | hi |
17:35:12 | enthus1ast | do you have used nim to authenticate against an ldap (ads) server? |
17:37:07 | * | xet7 quit (Quit: Leaving) |
17:40:00 | * | xet7 joined #nim |
17:46:30 | * | jjido joined #nim |
17:55:08 | * | iLiquid joined #nim |
17:57:11 | * | iLiquid quit (Client Quit) |
18:04:47 | * | Jesin quit (Quit: Leaving) |
18:04:55 | * | anxion left #nim (#nim) |
18:08:25 | * | Jesin joined #nim |
18:16:09 | * | iLiquid joined #nim |
18:17:50 | * | iLiquid quit (Client Quit) |
18:18:43 | * | i7sDream quit (Quit: WeeChat 2.4) |
18:19:09 | * | i7sDream joined #nim |
18:20:25 | * | enthus1ast quit (Ping timeout: 256 seconds) |
18:21:07 | * | kapil____ quit (Quit: Connection closed for inactivity) |
18:24:17 | * | nsf quit (Quit: WeeChat 2.4) |
18:36:35 | * | clyybber joined #nim |
18:38:48 | * | i7sDream quit (Ping timeout: 245 seconds) |
18:43:02 | * | zyklon joined #nim |
18:44:39 | * | uvegbot quit (Ping timeout: 252 seconds) |
18:45:41 | * | rnrwashere joined #nim |
19:21:54 | shashlick | are important packages being tested in CI? i don't see anything in the logs |
19:23:06 | Araq | https://ci.appveyor.com/project/dom96/nim/builds/23919068/job/b5yko048mjtkvb9l/tests |
19:23:38 | * | gangstacat quit (Quit: Ĝis!) |
19:24:34 | narimiran | the fuck? i broke my own package with something i don't even use there? |
19:24:51 | * | Vladar quit (Remote host closed the connection) |
19:25:00 | shashlick | i'm getting mixed results testing nimble nocompiler with devel, so not sure if i've broken something or they don't run in genereal |
19:25:20 | narimiran | nope, it isn't me - it is broken in devel too |
19:25:34 | Araq | my commit? |
19:25:54 | narimiran | yes, one from 4 hours ago |
19:26:20 | shashlick | so packages are only being tested on Windows? |
19:26:26 | narimiran | shashlick: yep |
19:26:59 | shashlick | okay then i'll test there, instead of linux and osx where i'm seeing random failures |
19:27:34 | narimiran | it is strange to see (only) my package broken, since it is quite simple - i would expect if it breaks there should be at least several others too |
19:28:23 | Araq | travis is red too |
19:29:08 | Araq | bin/nim doc --hint[Conf]:off --hint[Path]:off --hint[Processing]:off -d:boot --putenv:nimversion=0.19.9 --git.commit:devel -o:web/upload/0.19.9/docgen_sample.html doc/docgen_sample.nim |
19:29:08 | Araq | SIGSEGV: Illegal storage access. |
19:29:12 | Araq | ouch |
19:30:15 | narimiran | just tested it locally. compiling my package still works, but making documentation (and that is what is tested) fails with sigsegv |
19:32:12 | Araq | ok, other docs are also affected |
19:33:48 | * | I_Right_I joined #nim |
19:38:54 | Araq | fixed |
19:43:39 | narimiran | great! i think i don't have to restart the tests for my PR then? (only that one was failing) |
19:46:59 | shashlick | Araq: I fixed the issue from the morning |
19:48:06 | shashlick | now some tests fail since child processes just sit around - not sure if issue is in this code (https://github.com/genotrance/nimble/blob/nocompiler/src/nimblepkg/nimscriptwrapper.nim#L28) or nimscript exec |
19:54:00 | * | gangstacat joined #nim |
19:56:28 | Araq | ah the joys of interprocess communication |
19:56:37 | Araq | narimiran, you need to rebase your PR |
19:57:22 | Araq | shashlick, better use one of the higher level procs in osproc |
19:57:52 | Araq | if you wait for the exit anyway use execProcess |
19:59:00 | shashlick | But I need the output real time |
19:59:03 | * | narimiran quit (Ping timeout: 246 seconds) |
19:59:51 | Araq | ah too bad |
20:00:07 | Araq | use poInteractive for the options |
20:00:36 | * | narimiran joined #nim |
20:02:44 | * | zyklon quit (Ping timeout: 250 seconds) |
20:02:50 | I_Right_I | shashlick: I reinstalled nim 0.19.4 and this example still doesn't compile --> https://nim-lang.github.io/Nim/random.html#basic-usage |
20:03:17 | Araq | github.io is for Nim devel, not 0.19.4 |
20:03:59 | I_Right_I | shashlick told me it should work |
20:04:29 | Araq | ok, well what doesn't work? |
20:04:34 | Araq | the "Basic usage" seems fine |
20:04:53 | I_Right_I | one sec |
20:05:05 | I_Right_I | rnd.nim(18, 12) Error: undeclared identifier: 'sample' |
20:05:19 | I_Right_I | but it works for devel |
20:05:22 | Araq | sample is new in devel |
20:05:34 | I_Right_I | Thats what I thought |
20:05:50 | * | dandevelo joined #nim |
20:06:38 | narimiran | Araq: no need for rebasing - we didn't touch the same stuff. i'll restart the tests, it should pick up the latest devel changes |
20:07:24 | I_Right_I | --- my trust in shashlick has gone down 18% |
20:08:32 | narimiran | I_Right_I: don't touch shashlick! restore back that trust immediately! |
20:09:01 | * | lritter quit (Remote host closed the connection) |
20:10:15 | * | zyklon joined #nim |
20:10:18 | I_Right_I | lol....okay I guess I have to let it slide |
20:10:32 | I_Right_I | --- trust restored! |
20:14:17 | shashlick | okay not sure what's going on here 🙂 |
20:15:51 | I_Right_I | oops, it was rayman22201 that told me that |
20:16:04 | I_Right_I | not shashlick |
20:16:30 | narimiran | still the same warning - keep the trust leve! |
20:16:33 | I_Right_I | --- trust in I_Right_I down 50% |
20:16:48 | * | narimiran will accept that |
20:18:32 | shashlick | whew |
20:20:11 | * | dandevelo quit (Quit: Textual IRC Client: www.textualapp.com) |
20:21:07 | rayman22201 | So the docs are wrong for stable random then |
20:21:42 | rayman22201 | Because I checked both and sample is in the stable docs as well |
20:23:27 | narimiran | I_Right_I: the basic usage example works for me for nim devel, 0.19.4, and 0.19.0 |
20:23:45 | narimiran | --- trust in I_Right_I down 37% more |
20:25:00 | rayman22201 | Lol |
20:25:36 | I_Right_I | Am I the only one with this problem? |
20:26:08 | I_Right_I | narimran do you use choosenim |
20:26:32 | narimiran | I_Right_I: what is the output of `nim -v`? i.e. are you sure you are on 0.*19*.4? |
20:27:12 | rayman22201 | Shashlick do you not need a Mac anymore? I can borrow my wife's MacBook for a bit if needed. |
20:27:42 | shashlick | that will be great if you could |
20:28:06 | shashlick | win/lin/osx - any test will be good to know |
20:28:09 | I_Right_I | https://pastebin.com/rrqPsGPD |
20:29:58 | narimiran | I_Right_I: ok, same here. and i just copy-pasted the example and it works. maybe you changed something? |
20:30:11 | * | hoijui joined #nim |
20:30:25 | rayman22201 | @shashlick Ok. Sure. I'll give it a shot then. |
20:31:30 | I_Right_I | narimiran: I'll look into it and get back with you. |
20:33:42 | xace | I_Right_I: what is it that isn't working? |
20:35:12 | * | jasper joined #nim |
20:35:16 | * | i7sDream joined #nim |
20:36:36 | I_Right_I | xace: nim stable doesn't compile the basic usage example in random module. |
20:36:59 | I_Right_I | But apparently its does for everyone else |
20:38:16 | * | iLiquid joined #nim |
20:39:06 | I_Right_I | I installed with choosenim and use choosenim to switch back and forth. |
20:39:25 | * | i7sDream quit (Ping timeout: 246 seconds) |
20:39:50 | narimiran | I_Right_I: when you switch to other versions, e.g. devel, does it work then? |
20:40:36 | I_Right_I | yeah 'choosenim devel' compiles it fine. |
20:40:43 | xace | I_Right_I: well on v 0.19.4 sample() doens't exist so that is a problem... |
20:41:25 | * | iLiquid quit (Client Quit) |
20:41:27 | I_Right_I | well narimiran said he tried it and it worked |
20:42:28 | narimiran | I_Right_I: well, maybe you should lower your trust levels in me ;) because i half-assed it |
20:42:44 | xace | well I am explicitly telling you: v0.19.4 doesn't have `random.sample()` # you have likely misunderstood the instructions |
20:43:05 | xace | or some miscommunications has happened |
20:43:20 | narimiran | when i not just use nim-0194, but also switch to 0.19 branch of stdlib (which i didn't do the first time), i get: "Error: undeclared identifier: 'sample'" |
20:43:32 | narimiran | and that is what xace is talking about |
20:44:36 | * | krux02 quit (Remote host closed the connection) |
20:44:52 | narimiran | and, btw, stable docs (https://nim-lang.org/docs/random.html) don't contain that example at all |
20:45:17 | narimiran | and, as already mentioned, there is no 'sample' |
20:46:33 | I_Right_I | we are good. |
20:46:35 | FromGitter | <jrfondren> https://nim-lang.github.io/Nim/random.html has this example ⏎ ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5cb790abb489bb6ed77e7324] |
20:46:47 | FromGitter | <jrfondren> which fails for me, for above reasons |
20:46:58 | narimiran | jrfondren that link is for devel docs |
20:47:15 | FromGitter | <jrfondren> how can you even tell? |
20:47:31 | narimiran | i can tell it by the url ;) |
20:47:49 | FromGitter | <jrfondren> go nim-lang.org, click documentation at the top, then standard library, ctrl-F random, and you're at docs that disagree with the release version |
20:48:16 | narimiran | devel docs are preferred to use, because the docs are greatly improved (see https://github.com/nim-lang/Nim/issues/10330), but sometimes it will lead to this kind of discrepancy between stable and devel |
20:48:20 | FromGitter | <jrfondren> with no devel banners that I see |
20:48:54 | narimiran | jrfondren this will change once 0.20 is out (and that should be soon), for now we redirect to devel docs because of the above reasons |
20:49:11 | FromGitter | <jrfondren> ah, I guess someone said they were good enough and replaced the normal links. On the documentation.html page there's a "bleeding edge docs" link at the bottom, that's now not so different. |
20:50:08 | narimiran | it is better to have nicer more informative docs (devel) which will be ok 95% of time for users on 0.19.4, then to have 100% correct docs that are poorly written |
20:51:34 | FromGitter | <jrfondren> it's still better to be clear about this so that people can say "huh this doesn't work, oh it says devel up there and links to older docs. oh yeah that works". or have a version toggle that defaults to devel but can be set back in time. |
20:52:31 | narimiran | https://nim-lang.org/documentation.html click on 'Standard Library' |
20:52:39 | narimiran | Author: Andreas Rumpf; Version: 0.19.9 |
20:53:13 | FromGitter | <jrfondren> that's subtle. and how would I find stable documentation from there? |
20:53:21 | narimiran | you ask on irc |
20:53:32 | FromGitter | <jrfondren> like the < deprecation warnings (which aren't so bad because the code still works), this the kind of problem that's not a problem at all if you're engaged in the community. |
20:53:34 | Araq | yeah... :-/ |
20:53:35 | FromGitter | <jrfondren> as you just suggested. |
20:53:59 | Araq | 0.20 is overdue |
20:54:06 | FromGitter | <jrfondren> but new people are just going to conclude, eh this broken, I guess it's not ready yet. Anyway I won't harp on about it. |
20:54:36 | FromGitter | <kayabaNerve> I need features in 0.19 devel, but like keeping my project on stable. Can't wait for 0.20 :d |
20:54:42 | narimiran | the "correct" documentation is even more "broken" (aka less useful), trust me |
20:57:22 | I_Right_I | I like the changes made with the 0.19.9 docs |
20:57:40 | narimiran | really a lot of work has been done in https://github.com/nim-lang/Nim/issues/10330 (and a bit more is needed - any help is welcome) |
20:58:41 | * | mosORadi joined #nim |
21:03:56 | * | [rg] joined #nim |
21:04:16 | * | narimiran quit (Ping timeout: 250 seconds) |
21:05:35 | * | rnrwashere quit (Remote host closed the connection) |
21:06:43 | * | al_ quit (Quit: al_) |
21:09:25 | * | rnrwashere joined #nim |
21:09:39 | * | rnrwashere quit (Remote host closed the connection) |
21:09:52 | Zevv | I had such good plans for helping out with the docs. I started a few times, but never managed to finish anything :( |
21:10:17 | * | rnrwashere joined #nim |
21:10:40 | Zevv | To quote PMunch from the other day: "and then life happened" |
21:10:42 | dom96 | we should definitely get a banner that states the version of the docs that people are seeing |
21:10:57 | dom96 | it would even be pretty easy to implement... |
21:11:18 | dom96 | jrfondren: please consider contributing this :) |
21:11:32 | FromGitter | <jrfondren> I see what you mean about the docs though. it really helps wot have stuff like the enum links in https://i.imgur.com/dRNO9Gj.png |
21:12:01 | FromGitter | <jrfondren> sure, I'll look into it |
21:12:46 | dom96 | If you need ideas of how to do it I'm happy to give suggestions |
21:13:43 | * | solitudesf quit (Ping timeout: 246 seconds) |
21:14:54 | * | rnrwashere quit (Ping timeout: 268 seconds) |
21:27:03 | * | hoijui quit (Ping timeout: 264 seconds) |
21:28:26 | * | rnrwashere joined #nim |
21:29:41 | * | jasper quit (Ping timeout: 256 seconds) |
21:31:35 | I_Right_I | narimiran: right now my big project is learning nim, and like alot of people when I have the time to do so. |
21:31:41 | FromGitter | <jrfondren> rather than a banner, if it was known when features were added (by a note in the inline documentation, or by reference to a big release changelog), then when docs are built a little warning could be added to pre-release features. I feel like frozen in time versioned docs are the more professional option, but that's also less useful, especially with the updates coming in. |
21:33:29 | * | rnrwashere quit (Ping timeout: 268 seconds) |
21:34:35 | * | rnrwashere joined #nim |
21:42:24 | shashlick | import ospaths no longer works |
21:43:57 | shashlick | \nimdevel\lib\pure\includes\oserr.nim(4, 10) Error: This is an include file for os.nim! |
21:48:09 | shashlick | i believe this is on windows, works on linux |
21:55:30 | * | rnrwashere quit (Remote host closed the connection) |
22:05:09 | dom96 | jrfondren: that's sounds like a lot of work |
22:05:21 | clyybber | What is the *right* way to update a nimble #head pkg? |
22:05:38 | clyybber | Till now i just uninstalled and reinstalled it. |
22:05:45 | dom96 | clyybber, nimble install pkg@#head |
22:05:58 | clyybber | dom96: Thanks :) |
22:06:08 | shashlick | i think i'm done! https://travis-ci.org/genotrance/nimble/builds/521460937 |
22:07:00 | clyybber | shashlick: Nice \o/ |
22:10:28 | * | rockcavera quit (Ping timeout: 245 seconds) |
22:12:27 | shashlick | nimble CI now tests across stable and devel, lin and osx |
22:12:58 | clyybber | Araq: Is RTTI already removed when using --newruntime? |
22:14:10 | rayman22201 | shashlick how did you get mac on Travis working? |
22:14:32 | * | rnrwashere joined #nim |
22:14:39 | shashlick | No idea 😄 |
22:14:57 | rayman22201 | lol |
22:15:36 | shashlick | Nothing worth mention at least |
22:15:43 | shashlick | But hey it works |
22:16:08 | shashlick | Used the nimterop yml as a base while adding devel |
22:16:23 | FromGitter | <deech> Dumb question but what is the essential difference between `const foo = ...` and `let foo {.compileTIme.} = ...`? Is it that `const` is available at runtime and `let ... {.compileTime.} is not? |
22:18:41 | * | rnrwashere quit (Ping timeout: 246 seconds) |
22:19:35 | rayman22201 | are you planning to add windows next shashlick? |
22:21:07 | * | deech joined #nim |
22:21:57 | * | deech quit (Remote host closed the connection) |
22:22:27 | FromGitter | <timotheecour> i found a zero-day vulnerability in jester (and have a PR ready to fix it), are there any services using jester that are sensitive? |
22:22:32 | FromGitter | <timotheecour> /cc @dom96 |
22:23:17 | rayman22201 | @deech I think you could do `const foo {.compileTime.} = ...` it's the `{.compileTime.}` pragma that makes a thing compile time only |
22:24:40 | * | deech joined #nim |
22:25:00 | deech | rayman22201: I didn't know you could do that. That's pretty confusing. |
22:25:04 | FromGitter | <dom96> @timotheecour yes, pm me |
22:28:32 | clyybber | Hi timothee |
22:28:45 | deech | Understanding the interaction of `const` and compile time calculations is really throwing me for a loop. Once the bugs are between the two are ironed out a full write in the manual is probably a good idea. I'll even volunteer to do it. |
22:29:28 | FromGitter | <timotheecour> hi @clybber :) |
22:34:36 | * | jjido quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
22:40:02 | * | deech quit (Ping timeout: 250 seconds) |
22:49:40 | rayman22201 | @deech. Are there bugs? `const` is about symbol binding, and compile time is about when code runs. They are orthogonal concepts. |
22:51:12 | rayman22201 | The devel docs fibonnacci example explains it well I think: https://nim-lang.github.io/Nim/manual.html#constants-and-constant-expressions |
22:52:16 | FromDiscord | <j$> okay, so is anyone having issues with nimpcre installing?? |
22:53:54 | FromDiscord | <j$> when using nimble build it creates a nimpcre folder in my user folder, instead of .nimble |
22:57:11 | rayman22201 | @shashlick ping. Can you help j$? |
22:58:05 | FromDiscord | <j$> I switched from choosenim back to regular install and it does the same thing |
22:58:07 | FromDiscord | <j$> so |
22:58:11 | FromDiscord | <j$> Im going back |
22:59:39 | xace | j$ linux or windows? How did you install nim? |
23:00:02 | FromDiscord | <j$> windows, |
23:00:20 | FromDiscord | <j$> I have done both choose nim a the other instructions on the site |
23:00:26 | FromDiscord | <j$> same thing happens |
23:00:39 | FromDiscord | <j$> I just changed back to choosenim |
23:04:57 | * | stefanos82 quit (Remote host closed the connection) |
23:08:25 | * | mosORadi quit (Quit: Connection closed for inactivity) |
23:08:31 | * | clyybber quit (Quit: WeeChat 2.4) |
23:12:46 | * | [rg] left #nim (#nim) |
23:12:50 | * | a_b_m joined #nim |
23:16:21 | * | abm quit (Ping timeout: 255 seconds) |
23:18:46 | xace | j$: haven't used windows for 12 years. but i read through nimble src quickly. by default it seems to be set as "getHomeDIr()/.nimble" unless you are using --nimbledir or a environment variable NIMBLE_DIR or the config "getConfigDir()/nimble/nimble.ini" |
23:22:00 | shashlick | Hey j$ I'm on the move now |
23:22:06 | shashlick | I'll take a look in a bit |
23:22:28 | shashlick | I need to port nimpcre to nimterop if possible |
23:25:09 | FromDiscord | <j$> so I don't know enough to contribute really, but every time I try to install nimpcre, it creates an empty folder nimpcre in my user dir |
23:25:50 | FromDiscord | <j$> this time the install says successful, but theres an empty nimpcre folder in the nimpcre package |
23:26:41 | FromDiscord | <j$> Error: cannot open file: nimpcre/pcre |
23:26:47 | FromDiscord | <j$> that's all I got |
23:26:54 | FromDiscord | <j$> info wise |
23:28:50 | * | rnrwashere joined #nim |
23:32:24 | rayman22201 | @j$ I just setup a fresh nim with choosenim and tried installing nimpcre with nimble. devel fails on c2nim because the nil-string breaking change. |
23:32:43 | rayman22201 | C:\Users\ray\.nimble\pkgs\compiler-#head\compiler\ropes.nim(78, 29) Error: type mismatch: got <nil> but expected 'string' |
23:32:53 | * | rnrwashere quit (Ping timeout: 246 seconds) |
23:33:24 | rayman22201 | I'm switching to 0.19.4 (stable) and trying again. |
23:34:42 | rayman22201 | It's funny. I have a windows machine, but I spend all my time on linux virtual machines or sshed into linux machines, so I don't actually use it very often. |
23:34:53 | rayman22201 | every once and a while it comes in handy |
23:36:01 | rayman22201 | same error on 0.19.4 |
23:36:27 | FromDiscord | <j$> ok so I should just add the dll for now? |
23:39:39 | rayman22201 | question for you j$, do you have a `.nimble\pkgs\compiler-#head` directory in your `.nimble` directory? |
23:40:24 | FromDiscord | <j$> no atm |
23:40:28 | FromDiscord | <j$> just re installed nim |
23:40:46 | rayman22201 | what packages do you have in in your .nimble directory? |
23:41:21 | FromDiscord | <j$> docopt, regex, sdl2_nim, unicodedb, unicodeplus |
23:41:27 | rayman22201 | I removed `compiler-#head` and everything installed perfectly for me using 0.19.4 |
23:41:35 | FromDiscord | <j$> ill go agaion |
23:42:26 | FromDiscord | <j$> failed to install |
23:43:02 | FromDiscord | <j$> build failed for [email protected] |
23:43:16 | rayman22201 | what is the error? |
23:43:23 | FromDiscord | <j$> well actually |
23:43:28 | rayman22201 | and what version of nim? |
23:43:37 | FromDiscord | <j$> Build failed for package: c2nim |
23:44:19 | FromDiscord | <j$> I think my nim install is broken |
23:44:23 | FromDiscord | <j$> gimme a sec |
23:44:36 | rayman22201 | there should be a bunch of output with `Hint:...` and then an actual error at the bottom |
23:44:39 | rayman22201 | ok, np |
23:46:18 | FromDiscord | <j$> so is choosenim bad? |
23:46:59 | FromDiscord | <j$> also |
23:47:00 | FromDiscord | <j$> Error: invocation of external compiler program failed. The system cannot find the file specified. |
23:47:00 | FromDiscord | <j$> ... ; Additional info: "Requested command not found: \'gcc.exe -c -w -mno-ms-bitfields -DWIN32_LEAN_AND_MEAN -O3 -fno-strict-aliasing -ID:\\dev\\library\\nim-0.19.4\\lib -o C:\\Users\\jds\\nimcache\\c2nim_r\\c2nim_c2nim.c.o C:\\Users\\jds\\nimcache\\c2nim_r\\c2nim_c2nim.c\'. OS error:" 2 |
23:47:00 | FromDiscord | <j$> stack trace: (most recent call last) |
23:47:03 | FromDiscord | <j$> C:\Users\jds\AppData\Local\Temp\nimble_8696\githubcom_genotrancenimpcre\nimpcre.nimble(27) installBefore |
23:47:04 | FromDiscord | <j$> D:\dev\library\nim-0.19.4\lib\system\nimscript.nim(237) setupTask |
23:47:07 | FromDiscord | <j$> D:\dev\library\nim-0.19.4\lib\system\nimscript.nim(237, 7) Error: unhandled exception: FAILED: nimble install nimgen -y |
23:48:06 | FromDiscord | <j$> this is the same error when trying to compile a program of mine so I think my install in broken |
23:50:24 | rayman22201 | wow. that is super broken |
23:50:37 | rayman22201 | #leasthelpfulresponse |
23:50:43 | FromDiscord | <j$> yeah im reinstalling now |
23:51:27 | rayman22201 | does mingw work for you? can you run "gcc.exe -v" ? |
23:52:13 | * | a__b__m joined #nim |
23:52:57 | rayman22201 | This is tangential to your problem, but I am pretty sure there is a bug with choosenim and nimble. I think choosenim does not handle changing the nimble version correctly. |
23:54:31 | xace | rayman22201: from the windows machines i have installed nim on using choosenim, they all had issues. usually regarding not setting the PATH variable correctly and sometimes managing to forget where it is stored... unfortunately i rarely have access to windows machines |
23:55:43 | FromDiscord | <j$> okay install nimpcre rn |
23:55:44 | * | a__b__m quit (Client Quit) |
23:55:46 | * | a_b_m quit (Ping timeout: 246 seconds) |
23:56:02 | FromDiscord | <j$> so it says success |
23:56:05 | FromDiscord | <j$> but |
23:56:13 | FromDiscord | <j$> the application wont compile |
23:56:29 | xace | any error? |
23:56:56 | xace | nimpcre wants -d:usePcreHeader iirc, and that you import nimpcre before re I guess |
23:57:11 | FromDiscord | <j$> Error: cannot open file: nimpcre/pcre |
23:57:54 | rayman22201 | does `.nimble/pkgs/nimpcre/pcre` exist? |
23:58:44 | FromDiscord | <j$> no but `.nimble/pkgs/nimpcre/nimpcre` does |
23:58:46 | FromDiscord | <j$> but |
23:58:50 | FromDiscord | <j$> there's nothing in it |
23:59:09 | FromDiscord | <j$> and a nimpcre folder in my user dir |
23:59:15 | shashlick | Usual nimble challenges with before install |
23:59:18 | FromDiscord | <j$> also nothing in it |
23:59:29 | shashlick | Can you git clone |
23:59:35 | rayman22201 | ah. yup. I get the same problem |
23:59:36 | shashlick | Then nimble setup |
23:59:43 | shashlick | Then nimble install |