00:23:19 | * | fredrik92 quit (Quit: Client disconnecting) |
00:27:29 | * | chemist69 quit (Ping timeout: 272 seconds) |
00:44:24 | * | brechtm quit (Remote host closed the connection) |
00:46:08 | * | ftsf joined #nim |
00:50:15 | * | libman quit (Read error: Connection reset by peer) |
00:53:49 | * | chemist69 joined #nim |
01:02:19 | * | gangstacat quit (Ping timeout: 272 seconds) |
01:08:57 | * | ARCADIVS joined #nim |
01:39:41 | * | chemist69 quit (Ping timeout: 272 seconds) |
01:42:49 | * | zielmicha[m] joined #nim |
01:48:26 | * | ehmry joined #nim |
01:52:00 | * | brson quit (Ping timeout: 276 seconds) |
01:52:29 | * | chemist69 joined #nim |
02:12:27 | * | hohlerde joined #nim |
02:15:51 | * | Snircle_ quit (Quit: Textual IRC Client: www.textualapp.com) |
02:54:15 | * | brson joined #nim |
02:58:41 | * | brson quit (Ping timeout: 240 seconds) |
03:03:23 | * | Jesin quit (Quit: Leaving) |
03:53:35 | * | NimBot joined #nim |
03:58:23 | * | chemist69 quit (Ping timeout: 272 seconds) |
04:00:09 | * | chemist69 joined #nim |
04:23:10 | * | yglukhov joined #nim |
04:29:21 | * | yglukhov quit (Ping timeout: 240 seconds) |
05:05:59 | * | jeffc quit (Ping timeout: 252 seconds) |
05:34:09 | FromGitter | <MiniDude22> how do you initialize an array that is the var result in a proc? |
05:37:08 | FromGitter | <MiniDude22> and is there a way to turn a sequence of a type into an array of a type? |
05:38:04 | ftsf | make an var array then copyMem from seq to array? |
05:38:16 | ftsf | or cast it as an array |
05:41:15 | * | wgf_ joined #nim |
05:50:45 | * | desophos quit (Read error: Connection reset by peer) |
05:54:32 | FromGitter | <Araq> you cast it to a ptr array, perhaps |
05:54:58 | FromGitter | <Araq> in general you don't do it, seqs have dynamic size, arrays don't so there is no way to convert it |
05:55:11 | FromGitter | <MiniDude22> Right. Makes sense. |
05:55:33 | FromGitter | <Araq> post a snippet here please. it smells like you have no idea what you're doing ;-) |
05:56:00 | FromGitter | <MiniDude22> This is how I ended up doing it. |
05:56:26 | FromGitter | <MiniDude22> ``` |
05:56:51 | FromGitter | <MiniDude22> ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=57eb5ba335e0f31c6c4b7600] |
05:57:17 | * | jeffc joined #nim |
05:57:21 | FromGitter | <MiniDude22> the toRunes returned a seq, I was trying to have it simpler, but this works fine |
05:58:56 | FromGitter | <Araq> ok, you can remove the s.runeLen call, but it looks good |
05:59:24 | FromGitter | <Araq> if index > 137: raise ... in the loop body is possible too |
05:59:48 | FromGitter | <MiniDude22> Ah okay that might work better |
06:00:45 | FromGitter | <MiniDude22> is it possible to return an array that's size is the strings length? this returns blanks after the characters |
06:01:11 | FromGitter | <MiniDude22> whose size is* |
06:14:39 | FromGitter | <Araq> you can return a tuple len, data or have a 'len: var int' parameter but I think your 'chatString' should return a seq |
06:22:24 | * | bjz joined #nim |
06:22:53 | * | bjz quit (Client Quit) |
06:40:01 | * | bjz joined #nim |
06:48:52 | * | gokr joined #nim |
06:50:27 | * | fredrik92 joined #nim |
06:52:59 | FromGitter | <MiniDude22> I'm passing it over a named pipe so I need it in binary form so that i can come out as a wchar_t on the other side |
06:53:10 | * | Arrrr joined #nim |
06:53:38 | FromGitter | <MiniDude22> and array of things passes and is read properly, but a sequence doesn't go through when i tried it. |
06:54:54 | FromGitter | <Araq> for the seq you need to do addr(s[0]) |
06:55:02 | FromGitter | <Araq> that's common knowledge :P |
06:55:20 | FromGitter | <Araq> or maybe even unsafeAddr(s[0]) |
06:55:25 | FromGitter | <MiniDude22> Maybe for pro's like you :P |
06:56:16 | * | yglukhov joined #nim |
06:57:08 | FromGitter | <MiniDude22> So I'm writing to the file like ⏎ ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=57eb69c454302caa6f262e3e] |
06:57:49 | FromGitter | <MiniDude22> I'll play with the sequences again in a bit xD thanks! |
06:59:21 | FromGitter | <Araq> and please tell me what you read: tutorial, manual, nim-in-action? |
06:59:49 | FromGitter | <Araq> what section needs to be expanded and explain about unsafeAddr/addr s[0] ? |
07:00:09 | ftsf | what's the difference between addr(myseq) and addr(myseq[0]) ? |
07:00:18 | FromGitter | <Araq> it surely is frustrating to always answer the same question |
07:01:02 | Araq_ | ftsf: addr(myseq) returns the address of the seq |
07:01:32 | Araq_ | a seq starts with a size, capacity header so this is where the resulting pointer points to |
07:01:37 | ftsf | ahh I see |
07:02:16 | ftsf | thanks |
07:04:39 | * | FromGitter * girvo waves |
07:04:41 | FromGitter | <MiniDude22> I've been through the tutorials, read a lot of the manual, though I guess I missed the part about seq's and their addr's |
07:05:18 | FromGitter | <girvo> Quick question: anyone implemented/used object pools or something similar in Nim? |
07:05:25 | Arrrr | It is irc-tier knowledge |
07:05:58 | Arrrr | I have done something like that, but not too complicated |
07:06:46 | FromGitter | <Araq> @girvo are you the guy who promised me an email about comp-sci papers years ago? |
07:07:06 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
07:07:10 | FromGitter | <girvo> @Araq I am indeed, which I don't think I ever sent through |
07:08:08 | FromGitter | <Araq> exactly. :P |
07:08:57 | FromGitter | <girvo> Type system discussion, yeah? Trying to see if I can remember hah |
07:10:18 | FromGitter | <MiniDude22> @Araq sorry for having you explain things so many times. xD We all appreciate the halp! |
07:15:01 | * | gokr quit (Ping timeout: 240 seconds) |
07:18:49 | * | gokr joined #nim |
07:23:30 | * | Andris_zbx joined #nim |
07:24:49 | * | Trustable joined #nim |
07:25:06 | FromGitter | <Araq> @MiniDude22 you're welcome |
07:25:23 | FromGitter | <MiniDude22> <3 |
07:41:21 | * | PMunch joined #nim |
08:05:48 | * | zielmicha[m] quit (Remote host closed the connection) |
08:05:49 | * | M-Quora quit (Remote host closed the connection) |
08:05:50 | * | TheManiac quit (Remote host closed the connection) |
08:05:50 | * | ehmry quit (Remote host closed the connection) |
08:05:51 | * | hohlerde quit (Write error: Connection reset by peer) |
08:12:02 | * | zielmicha[m] joined #nim |
08:13:17 | * | MyMind joined #nim |
08:20:10 | * | ftsf quit (Quit: :q!) |
08:31:15 | * | enthus1ast1 quit (Ping timeout: 265 seconds) |
08:39:22 | * | brechtm joined #nim |
08:46:21 | * | bjz joined #nim |
08:59:52 | * | zielmicha[m] quit (K-Lined) |
09:01:45 | * | chemist69 quit (Ping timeout: 272 seconds) |
09:07:27 | * | chemist69 joined #nim |
09:17:36 | * | Demon_Fox quit (Quit: Leaving) |
09:17:38 | * | aedigix joined #nim |
09:21:30 | * | zielmicha[m] joined #nim |
09:36:11 | * | Pisuke joined #nim |
09:37:59 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
09:39:21 | * | Sembei quit (Ping timeout: 276 seconds) |
09:39:31 | * | gangstacat joined #nim |
09:40:04 | * | Sembei_ joined #nim |
09:42:41 | * | Pisuke quit (Ping timeout: 240 seconds) |
09:46:27 | * | gangstacat quit (Quit: Leaving) |
09:47:11 | * | gangstacat joined #nim |
09:49:30 | * | Sembei joined #nim |
09:49:50 | * | bjz joined #nim |
09:53:00 | * | Sembei_ quit (Ping timeout: 276 seconds) |
10:29:35 | * | ftsf__ quit (Remote host closed the connection) |
10:35:31 | * | elrood joined #nim |
10:51:23 | * | Guest26614 joined #nim |
10:52:37 | * | enthus1ast joined #nim |
11:01:03 | * | arnetheduck joined #nim |
11:01:50 | * | Snircle joined #nim |
11:11:37 | * | brechtm_ joined #nim |
11:13:30 | * | brechtm_ quit (Remote host closed the connection) |
11:15:23 | * | brechtm quit (Ping timeout: 272 seconds) |
11:29:04 | * | brechtm joined #nim |
11:48:05 | * | filcuc joined #nim |
11:59:18 | * | brechtm quit (Remote host closed the connection) |
12:06:02 | * | brechtm joined #nim |
12:07:17 | * | corecode joined #nim |
12:07:19 | corecode | hi! |
12:08:43 | * | brechtm_ joined #nim |
12:10:15 | Araq_ | corecode: welcome |
12:11:07 | corecode | i just found out about nim, and i'm intrigued. mostly interested for systems (embedded) development |
12:11:07 | * | brechtm quit (Ping timeout: 272 seconds) |
12:13:06 | * | Arrrr quit (Quit: WeeChat 1.5) |
12:19:35 | * | fredrik92 quit (Read error: Connection reset by peer) |
12:19:36 | * | Guest26614 quit (Quit: Leaving) |
12:19:50 | * | PMunch quit (Quit: leaving) |
12:30:46 | federico3 | welcome corecode |
12:38:27 | * | cheatfate quit (Read error: Connection reset by peer) |
12:38:56 | * | cheatfate joined #nim |
12:51:02 | * | hohlerde joined #nim |
12:51:03 | hohlerde | corecode: welcome |
12:51:22 | hohlerde | araq: just found NimEdit. looks awesome, especially to use it in presentations |
13:03:27 | Araq_ | ah yeah I need to open source it and fix its remaining bugs |
13:03:46 | Araq_ | which admittedly make it hardly workable even for me :P |
13:04:15 | Araq_ | but hey, I use it all the time for Nim development so at least I'm eating my dogfood |
13:04:31 | * | bjz quit (Read error: Connection reset by peer) |
13:05:23 | * | bjz joined #nim |
13:06:44 | * | arnetheduck quit (Ping timeout: 244 seconds) |
13:07:22 | * | arnetheduck joined #nim |
13:13:23 | * | ARCADIVS quit (Quit: ARCADIVS) |
13:34:59 | * | M-Quora joined #nim |
13:35:07 | * | TheManiac joined #nim |
13:35:08 | * | ehmry joined #nim |
13:59:21 | * | MyMind quit (Ping timeout: 240 seconds) |
14:16:05 | hohlerde | araq: hehe, I realized that nimsuggest has some problems with NimEdit, but it may be a problem with my nim installation |
14:16:22 | * | pregressive joined #nim |
14:17:58 | * | MyMind joined #nim |
14:22:33 | * | krux02 joined #nim |
14:23:07 | krux02 | is there a dumpTree alternative that runs after template and macro expansions? |
14:23:48 | krux02 | I would like to see the generated code of my macros |
14:29:32 | * | alexvl_zbx joined #nim |
14:34:51 | * | alexvl_zbx quit (Quit: leaving) |
14:37:27 | FromGitter | <endragor> @krux02: put `echo treeRepr result` at the end of the macro |
14:38:37 | krux02 | endragor: dosn't work for two reasons, treeRepr result does not run macro expansion on the result, and in my case I have a template |
14:43:50 | krux02 | endragor: I now use this macro debugAst(ast: typed): untyped = echo ast.repr; ast |
14:44:47 | krux02 | the typed argument expands macros for me |
14:53:04 | hohlerde | are there any game vids showing games made in nim? so far I have found the urhonimo preview on youtube |
14:55:41 | * | arnetheduck quit (Ping timeout: 240 seconds) |
15:03:27 | * | mitai joined #nim |
15:08:51 | FromGitter | <coffeepots> krux02 thanks for that macro, that's pretty handy. Should that be in the stdlib? |
15:19:51 | * | chemist69 quit (Ping timeout: 272 seconds) |
15:24:37 | * | yglukhov_ joined #nim |
15:26:48 | * | yglukho__ joined #nim |
15:27:47 | * | yglukhov quit (Ping timeout: 244 seconds) |
15:28:41 | * | yglukhov_ quit (Ping timeout: 240 seconds) |
15:30:09 | * | FreezerburnV joined #nim |
15:30:09 | krux02 | I would appreciate it |
15:30:56 | krux02 | hohlerde: making a good game is really a lot of work |
15:31:24 | Araq_ | krux02: doesn't have to be good, only needs nice screenshots for our website :P |
15:31:25 | krux02 | so I am working on some graphcis library that should eventually be used to make games |
15:31:39 | * | yglukho__ quit (Ping timeout: 276 seconds) |
15:31:58 | * | kulelu88 joined #nim |
15:32:03 | krux02 | but a finished game like a new Diablo, does not only take a while to make, it also requires the people who really want to make such a game to believe in Nim |
15:33:04 | Araq_ | I know of 2 commercial game projects, one being released anytime soon |
15:35:30 | * | pregressive quit (Remote host closed the connection) |
15:37:08 | krux02 | I hate this magic pragma when browsing the standard library |
15:37:16 | FromGitter | <dom96> This game is now made in Nim: https://twitter.com/impbox/status/765102630280409088 |
15:37:35 | * | corecode is still working through the nim language spec |
15:37:58 | FromGitter | <coffeepots> i chose nim to make games. Game dev is certainly loads of work, but it's fun. Would love to see what others have done though. |
15:39:31 | FromGitter | <coffeepots> i can see why nim is (or seems to be) popular for gamedev |
15:40:52 | Araq_ | krux02: what's the alternative? |
15:41:21 | Araq_ | direct implementation with whens and .emits? :-) |
15:41:33 | Araq_ | hmmm could have worked for most magics |
15:41:37 | Araq_ | oh well |
15:41:38 | federico3 | nice came |
15:41:44 | federico3 | *game |
15:42:24 | Araq_ | Nim's way of doing .magic is something I'm proud of |
15:43:20 | krux02 | I don't think that emit should be in the standard library, but I think a lot of stuff might work without magic |
15:43:55 | Araq_ | I have heard this before. |
15:44:07 | Araq_ | it's correct for about 5 out of 100 magics. |
15:44:21 | krux02 | I feel that a lot that has been done in an early state of the language and now it can be done by using other features of the language |
15:44:58 | krux02 | the problem is just that it makes reading the code much harder, because it feels like a dead end, and I don't know where I should continue |
15:45:32 | Araq_ | how do you implement system.`+` for ints so that it produces decent code, acknowledges the --overflowChecks switch and works at compile time? |
15:45:57 | krux02 | I would not want to make any statements, because I really don't know the dependencies, but you have to admit, there are really a lot of magics |
15:46:14 | Araq_ | how would hiding the prototype of this `+` help readability? |
15:46:25 | * | chemist69 joined #nim |
15:46:27 | Araq_ | in C# it's simply not in a library at all, hurray. |
15:47:26 | krux02 | I don't have the problem with `+` or that there are some magics, some things just need to be done that way, but I have the feeling, that the barrier to do something as magic is quite low |
15:47:35 | Araq_ | I think this is actually a big problem of Nim. People look at system.nim and see a mess. |
15:48:30 | Araq_ | and they compare it to Go which doesn't have a system.nim. Not having system.nim is not a benefit, it's a design flaw. |
15:48:44 | Araq_ | because then it's even moreso built into the compiler |
15:48:52 | krux02 | it would be nice, if there would be some instructions that tell me where I would need to look for the implementation when in code it is implemented as magic |
15:48:59 | Araq_ | with even more possibilities to special case things |
15:49:34 | Araq_ | just think about it. Nim uses one set of overloading resolution rules for *everything*. |
15:49:59 | Araq_ | it's super honest and the rules scale down to its integer primitives. |
15:50:47 | Araq_ | krux02: just grep for mMagic in the compiler then and see its implementation |
15:50:56 | krux02 | languages like Go or C have harder distinction between language features and library features. In rust I thought I was using a library feature when I was calling it's version of printf, but when I looked up how it worked it ended up being a language feature |
15:53:53 | * | brson joined #nim |
15:55:02 | krux02 | Araq_: thanks for the hint. I think this comment should be somewhere in the documentation, because when reading the system.nim it is essential to know that |
15:55:38 | Araq_ | why? |
15:56:02 | Araq_ | do we want people to read the compiler implementation? |
15:56:28 | cheatfate | Araq_, is it possible to make text constant multiline? |
15:56:49 | cheatfate | i have very big text constant and i want to store it inside of 80 columns |
15:57:27 | cheatfate | ahh i forgot.`"""` |
15:58:29 | krux02 | yes we do |
15:58:35 | * | krux02 quit (Quit: Verlassend) |
16:04:58 | * | Ven_ joined #nim |
16:06:05 | * | gokr quit (Ping timeout: 272 seconds) |
16:06:17 | * | Andris_zbx quit (Remote host closed the connection) |
16:09:15 | * | brechtm_ quit (Remote host closed the connection) |
16:09:54 | * | pregressive joined #nim |
16:10:06 | * | Ven_ quit (Ping timeout: 264 seconds) |
16:10:59 | * | Ven_ joined #nim |
16:13:29 | dom96 | hello |
16:13:41 | * | filcuc quit (Ping timeout: 252 seconds) |
16:14:01 | Araq_ | hi |
16:16:40 | dom96 | Developers Developers Developers. Release Release Release. |
16:18:06 | flyx | thanks for reminding me of that video. |
16:18:56 | * | kulelu88 quit (Ping timeout: 244 seconds) |
16:27:49 | * | yglukhov joined #nim |
16:27:54 | * | FreezerburnV quit (Quit: Leaving) |
16:28:04 | * | aziz joined #nim |
16:32:17 | * | yglukhov quit (Ping timeout: 264 seconds) |
16:32:52 | * | xet7_ joined #nim |
16:33:21 | * | enthus1ast quit (Ping timeout: 240 seconds) |
16:47:44 | dom96 | I seriously need destructors |
16:47:55 | dom96 | My site is suffering from constant crashes because of fd leaks :/ |
16:48:17 | Araq_ | a destructor hardly does more than a withFile() template would give you |
16:48:29 | Araq_ | tried a withFile? |
16:48:43 | dom96 | Pretty sure this is to do with AsyncHttpClient |
16:49:14 | Araq_ | also you should attach a finalizer that does the close() for you |
16:49:16 | dom96 | I would hope a destructor would do what withFile does but implicitly |
16:49:31 | Araq_ | implicitly yes, but hardly with any more power |
16:50:10 | Araq_ | and krux02 is working on their design, so it's better you fix the problem now rather than wait for the perfect solution and be disappointed by it |
16:51:03 | * | xet7_ quit (Ping timeout: 272 seconds) |
16:52:41 | * | wgf_ quit (Quit: Leaving) |
16:53:32 | dom96 | Of course, I'm trying to fix it now |
16:55:13 | dom96 | Unfortunately finding the cause is tricky... |
16:59:14 | * | MyMind quit (Ping timeout: 244 seconds) |
17:03:51 | * | MyMind joined #nim |
17:06:07 | * | brechtm joined #nim |
17:07:24 | * | libman joined #nim |
17:09:18 | * | cheatfate quit (Read error: Connection reset by peer) |
17:09:25 | * | cheatfate_ joined #nim |
17:13:51 | * | MyMind quit (Ping timeout: 272 seconds) |
17:22:41 | * | nsf quit (Quit: WeeChat 1.5) |
17:25:23 | * | krux02 joined #nim |
17:26:54 | * | cheatfate_ is now known as cheatfate |
17:28:45 | krux02 | Araq_: I had to leave sorry for disappearing. We do not necessaryly want people to read the compiler implementation, but with the current documentation state for certain things the best documentation is the code. And for those people the code should be readable |
17:29:14 | Araq_ | we could also hide the .magic pragma :P |
17:29:26 | Araq_ | actually we already do in devel |
17:29:39 | Araq_ | pragmas have to expanded per mouse click |
17:29:53 | krux02 | are you joking? |
17:31:55 | Araq_ | no, that was a feature request |
17:32:24 | Araq_ | either way, add this remark to the docs, I will accept it |
17:32:41 | krux02 | ok I will do it |
17:33:46 | krux02 | I mean when someone want's to have pragmas to be folded in the editor and expand them per mousclick |
17:33:48 | krux02 | that's ok |
17:33:53 | krux02 | that's an editor config |
17:34:16 | krux02 | But generally I am against every feature that tries the hide how things work internally |
17:34:17 | * | libman quit (Read error: Connection reset by peer) |
17:34:19 | * | Trustable quit (Remote host closed the connection) |
17:34:42 | krux02 | things should be as transparent as possible so people can understand them as easy as possible |
17:34:46 | krux02 | no implementation hiding |
17:35:14 | Araq_ | yes and no. too much documentation can be overwhelming. |
17:35:30 | krux02 | yes documentation should simplify things a bit |
17:35:50 | Araq_ | 90% of all the questions that I answer here (number made up) can be read somewhere in Nim's docs |
17:36:12 | Araq_ | and I don't blame people for not reading things, nobody can read everything. |
17:37:08 | krux02 | ah you mean you hide the pragmas in the documentation generation? |
17:38:37 | Araq_ | in the generated docs, yes |
17:39:23 | krux02 | I mean some pragmas are really optional to see in the documentation, and for magics that is definitively the case, but other pragmas are really important to see, for example a union praga or something like that that really changes the behavior of the underlying structure |
17:40:11 | Araq_ | behaviour changing pragmas are really rare and should be spelt out explicitly in the text |
17:40:24 | Araq_ | and link to the manual section or something |
17:42:40 | krux02 | ok I start to relax now again |
17:42:55 | krux02 | was a bit afraid that in source pragmas would disappear |
17:45:02 | * | brechtm quit (Remote host closed the connection) |
17:45:39 | euantor | Part of the problem regarding the docs thing in the past has been that searching on Google turns up very little. Since the new docs have search built in, hopefully that will be improved a little :) |
17:46:05 | * | brechtm joined #nim |
17:47:29 | * | brechtm quit (Remote host closed the connection) |
17:52:57 | * | libman joined #nim |
17:54:44 | * | brechtm joined #nim |
17:54:54 | * | Demon_Fox joined #nim |
17:56:16 | * | Ven_ quit (Read error: Connection reset by peer) |
17:56:36 | baabelfish | Araq_: on the topic of pragmas, what is the status of func keyword? :P |
17:57:22 | * | aedigix quit (Remote host closed the connection) |
17:57:42 | * | aedigix joined #nim |
17:59:31 | Araq_ | as long as the exciting new effects 'writes' and 'escapes' are not finished but might end up to be the default for 'func', I don't want to rush what 'func' should mean |
17:59:54 | * | brechtm quit (Ping timeout: 264 seconds) |
18:00:48 | Araq_ | a shortcut for .noSideEffect is sexy but we have many more effects |
18:00:55 | Araq_ | and more interesting effects |
18:01:17 | Araq_ | so it's not obvious what 'func' should mean |
18:01:18 | * | Ven_ joined #nim |
18:05:30 | flyx | Araq_: can you give some feedback on https://github.com/nim-lang/Nim/issues/4832 ? whether it is actually a bug or I am just holding it wrong? |
18:07:09 | Araq_ | it's a bug |
18:08:37 | baabelfish | Araq_: is there a talk or a blog post somewhere around the internet what the effect system can/will/could do? |
18:08:59 | * | Ven_ quit (Ping timeout: 244 seconds) |
18:09:13 | Araq_ | hmm no, the manual mentions what's available |
18:09:38 | * | xet7_ joined #nim |
18:09:43 | baabelfish | Araq_: yeah I have read it but still my imagination is limited |
18:10:07 | baabelfish | I mean like "what can I use these for in real world applications" |
18:14:09 | Araq_ | proving at compile-time that code has no dependencies on a database surely would have been helpful for me in the real world |
18:21:13 | * | Ven_ joined #nim |
18:21:53 | * | Ven_ quit (Read error: Connection reset by peer) |
18:22:57 | * | kulelu88 joined #nim |
18:31:43 | * | LittleZeeZee joined #nim |
18:32:15 | * | LittleZeeZee quit (Client Quit) |
18:33:09 | * | libman quit (Read error: Connection reset by peer) |
18:37:40 | * | irrequietus joined #nim |
18:41:03 | * | Ven_ joined #nim |
18:45:01 | dom96 | Where do we stand with our release tarballs? |
18:45:08 | dom96 | Araq_: federico3? |
18:48:11 | dom96 | Anybody free (and on Windows) that could test our installers? |
18:48:18 | federico3 | dom96: apart from potentially removing the html files, the build of a binary pkg from the source tarballs fails when trying to build the doc page for "coro", but I can work around it. AFAIK there are no other blockers |
18:48:47 | Araq_ | dom96: will test them very soon |
18:48:56 | dom96 | Here is a link to the installers: https://gitlab.com/nim-lang/nim/builds/4497667/artifacts/browse/build/ |
18:49:07 | dom96 | federico3: what's the cause of the error? |
18:49:19 | dom96 | could we fix it instead of working around it? :) |
18:50:07 | federico3 | coro seems to import from lib/arch/arch.nim |
18:50:27 | * | enthus1ast joined #nim |
18:50:36 | federico3 | https://github.com/nim-lang/Nim/blob/devel/lib/arch/arch.nim#L44 and reaches this Unsupported architecture |
18:51:55 | * | libman joined #nim |
18:52:42 | federico3 | looks like the fix for https://github.com/nim-lang/Nim/issues/3245 disabled compiling coro but maybe the doc page should also implement the same check? |
18:53:28 | dom96 | sure |
18:53:40 | dom96 | just add when defined(nimdoc) or similar wherever required |
18:54:30 | * | Ven_ quit (Ping timeout: 264 seconds) |
18:54:33 | federico3 | besides, the naming is a bit misleading |
19:01:14 | * | Ven_ joined #nim |
19:07:57 | * | FreezerburnV joined #nim |
19:09:41 | * | Ven_ quit (Ping timeout: 240 seconds) |
19:10:48 | federico3 | dom96: ideally "nim doc2" should still run against https://github.com/nim-lang/Nim/blob/devel/lib/pure/coro.nim\#L10 and return a doc page that goes "sorry, Nim was build without coroutine support" |
19:11:17 | federico3 | I'm not sure if we can prevent nim doc2 from trying to import arch |
19:11:28 | * | Jesin joined #nim |
19:12:56 | dom96 | federico3: add a when defined(nimdoc) into arch.nim |
19:13:54 | federico3 | be aware that coro.nim is not displaying the error "Coroutines require -d:nimCoroutines". under nim doc2 |
19:14:39 | federico3 | I'm getting the error stright from arch |
19:15:04 | dom96 | I don't think I understand what the problem is |
19:16:58 | federico3 | http://pastebin.com/URJhJ9hc that's what I'm getting |
19:20:34 | federico3 | puzzling |
19:21:35 | federico3 | somehow nim doc2 is importing arch.nim before reading anything from coro.nim |
19:21:51 | * | Ven_ joined #nim |
19:22:35 | * | Ven_ quit (Read error: Connection reset by peer) |
19:22:38 | * | libman quit (Quit: Leaving.) |
19:22:52 | * | libman joined #nim |
19:23:00 | cheatfate | dom96, what test do you need? |
19:23:05 | cheatfate | exactly? |
19:23:09 | cheatfate | just install and run? |
19:23:12 | cheatfate | or run tests? |
19:23:44 | dom96 | install and make sure everything works |
19:23:47 | dom96 | Not necessarily tests |
19:23:52 | dom96 | just compile some things |
19:24:12 | * | brechtm joined #nim |
19:26:18 | * | enthus1ast quit (Ping timeout: 264 seconds) |
19:26:54 | dom96 | federico3: interesting |
19:27:01 | * | libman quit (Ping timeout: 240 seconds) |
19:27:27 | federico3 | dom96: looks like changes to arch.nim are not affecting nim doc2 at all - I guess I should rebuild nim, but why? |
19:28:03 | * | libman joined #nim |
19:28:05 | dom96 | that suggests that Nim is picking a different stdlib on your system |
19:28:45 | federico3 | could it be picking up an object file instead? |
19:29:51 | cheatfate | dom96, x32 is not proper name because there no such arch... x86 is a proper name |
19:30:27 | federico3 | aha, I got something |
19:30:42 | dom96 | cheatfate: too bad, we've been using that name for too long |
19:30:54 | dom96 | And... it's really a minor thing |
19:31:25 | cheatfate | dom96, windows 7 x86 |
19:32:02 | cheatfate | dom96, see this text in installer 'Current PATH length(0) too long to modify in NSIS; set manually if needed' |
19:32:25 | federico3 | found 2 minor regressions |
19:32:47 | dom96 | cheatfate: is your PATH super long? :) |
19:33:02 | cheatfate | and also dialog box "Error HTTP/1.1 404 Not Found" with buttons Retry, Abort, Ignore |
19:33:06 | cheatfate | what i must to do? |
19:33:52 | cheatfate | dom96, SYSTEM PATH = %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Git\cmd |
19:34:20 | cheatfate | dom96, USER PATH is not exist at all... this is my test machine no soft installed so there no PATH by default for User |
19:35:21 | dom96 | I guess it's completely broken huh? :( |
19:36:03 | cheatfate | i don't have vm for x64 |
19:36:59 | * | brechtm quit (Remote host closed the connection) |
19:41:16 | * | Ven_ joined #nim |
19:43:04 | Araq_ | dom96: is it too late to announce Aporia as "slim editor with compile support" instead of IDE on the website? |
19:43:36 | federico3 | dom96: aha! nimCoroutines is defined while going through arch.nim during "nim doc2" |
19:44:55 | Araq_ | the installer adds C:\Nim64test\\bin;C:\Nim64test\\dist\mingw\bin to the path |
19:44:59 | * | yglukhov joined #nim |
19:45:02 | Araq_ | note the double backslashes |
19:45:05 | Araq_ | that's a bug |
19:45:39 | dom96 | it's not finding docs.zip |
19:45:46 | dom96 | federico3: nice |
19:45:55 | dom96 | Araq_: yes |
19:47:13 | federico3 | lib/pure/coro.nimcfg actually contains -d:nimCoroutines and nim doc2 is reading it and setting it. |
19:47:47 | dom96 | Araq_: I installed it successfully, and it changed the path correctly for me too |
19:48:54 | Araq_ | maybe I had a trailing slash in my path description adn you didn't |
19:49:55 | dom96 | what I wonder is why it adds ...\dist\babel to the path |
19:51:26 | federico3 | dom96: anyhow, even if I can set an error in arch.nim that still breaks the build. I would need a "stop processing this file here" pragma |
19:52:44 | dom96 | wrap the file in a `when defined(nimdoc)`? |
19:54:43 | * | Ven_ quit (Ping timeout: 272 seconds) |
19:55:45 | federico3 | ...and I still don't know why nim doc2 is trying to import arch.nim |
19:56:26 | federico3 | even if I put the whole arch.nim under when not defined(nimdoc), nim doc2 fails later while parsing gc.nim and gc_common.nim ... |
19:56:54 | federico3 | apparently it's because of that "-d:nimCoroutines" inside lib/pure/coro.nimcfg |
19:57:20 | dom96 | Araq_: Just FYI I'm fixing the NSIS script |
19:57:38 | Araq_ | oh ok, then I will proceed with my other points |
19:59:24 | * | enthus1ast joined #nim |
20:00:59 | * | Ven_ joined #nim |
20:06:08 | * | desophos joined #nim |
20:06:34 | federico3 | and even if we remove it nim doc2 will fail in a different spot |
20:09:22 | * | Ven_ quit (Ping timeout: 244 seconds) |
20:18:19 | * | enthus1ast quit (Quit: Leaving.) |
20:20:47 | dom96 | Araq_: What should we do regarding coro doc gen failing? |
20:20:48 | Araq_ | federico3: fail with what error message? |
20:21:02 | * | Ven_ joined #nim |
20:22:36 | * | Ven_ quit (Read error: Connection reset by peer) |
20:23:16 | federico3 | Araq_: the original error was http://pastebin.com/URJhJ9hc |
20:24:33 | * | Trustable joined #nim |
20:24:43 | Araq_ | and now it is? |
20:24:48 | * | enthus1ast joined #nim |
20:25:23 | Araq_ | dom96: docs have no been uploaded so that's why their download fails, I hope you are aware |
20:26:00 | federico3 | so far the only way to avoid the failure is to remove -d:nimCoroutines from coro.nimcfg and put the whole coro.nim under when not defined(nimdoc): |
20:26:06 | federico3 | ...looks pretty invasive |
20:26:26 | dom96 | Araq_: yeah |
20:29:12 | dom96 | grrr, one of GitLab's shared runners is down causing the build to stall |
20:31:35 | * | nsf joined #nim |
20:35:18 | * | aziz quit (Quit: Ex-Chat) |
20:40:52 | * | Ven_ joined #nim |
20:43:29 | * | chemist69 quit (Ping timeout: 272 seconds) |
20:45:32 | * | Calinou quit (Ping timeout: 244 seconds) |
20:47:34 | * | pregressive quit (Read error: Connection reset by peer) |
20:50:24 | * | Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
20:56:18 | * | Ven_ joined #nim |
20:56:35 | * | pregressive joined #nim |
20:56:56 | cheatfate | dom96, why windows installer needs administrative rights? |
20:57:11 | cheatfate | its not a very good decision because installer don't have signature... |
20:57:34 | dom96 | because it changes the PATH? |
20:57:59 | dom96 | also, it silently fails without admin privs |
20:58:34 | cheatfate | dom96, UAC will prompt and this prompt will be bad looking because installer is not signed |
20:58:55 | cheatfate | also windows has user path variable which can be changed without administrative privileges |
20:59:25 | cheatfate | PATH=[SYSTEM PATH] + [USER PATH] |
20:59:32 | * | gokr joined #nim |
20:59:50 | cheatfate | system path can be modified only with administrative privileges, but user path can be modified freely |
20:59:55 | Araq_ | cheatfate: yes yes we know |
21:00:12 | Araq_ | the default installation dest is c:\ because mingw doesn't like spaces in the path |
21:00:25 | Araq_ | and every other default might have spaces on some version of windows |
21:00:38 | Araq_ | and that's why it requires admin rights iirc |
21:00:45 | cheatfate | Araq_, PROGRA~1? |
21:00:53 | Araq_ | yeah right |
21:00:53 | dom96 | oh, is that why the default installation is into C:\Nim? |
21:00:56 | dom96 | ugh |
21:01:07 | Araq_ | well mingw evolved |
21:01:14 | Araq_ | we can try again with spaces :-) |
21:01:43 | dom96 | UAC doesn't look "ugly" when there is no code signing |
21:01:52 | dom96 | I've installed plenty of things that weren't signed |
21:02:18 | * | mitai quit (Ping timeout: 264 seconds) |
21:02:19 | cheatfate | dom96, is it too hard to get certificate for person? |
21:02:51 | dom96 | I have no idea, but I bet it is |
21:03:20 | flyx | getting a cert for Windows installer sounds definitely lake wasting time that could be spent at better things. |
21:03:32 | flyx | *like |
21:04:16 | cheatfate | dom96, its same procedure like you want to get certificate for site, only difference - price is much higher |
21:05:11 | flyx | everyone just clicks „yes“ at UAC messages anyway. |
21:05:17 | dom96 | omg http://i.imgur.com/IrE4unQ.png |
21:06:06 | def- | dom96: well, escape the space? |
21:06:36 | cheatfate | flyx, not everyone... |
21:07:01 | dom96 | def-: I take full responsibility: https://github.com/nim-lang/nimble/blob/master/src/nimblepkg/tools.nim#L24 |
21:07:07 | * | dom96 facepalms |
21:07:32 | * | elrood quit (Quit: Leaving) |
21:08:26 | cheatfate | :) |
21:10:00 | * | chemist69 joined #nim |
21:11:11 | dom96 | Aporia is also buggy as hell |
21:13:26 | dom96 | oh right, the file just needs admin privs to be edited |
21:14:03 | * | Calinou joined #nim |
21:16:34 | dom96 | It seems that the x86 installer downloaded a 64bit mingw |
21:18:52 | * | Ven_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) |
21:27:20 | dom96 | Araq_: do you remember where ${mingw} gets expanded? |
21:27:42 | dom96 | also, do you specify the nimble version somewhere or does it use the latest tag automagically? |
21:28:24 | Araq_ | latest tag autom |
21:28:42 | Araq_ | it is passed via 'koch' |
21:29:42 | dom96 | okay, I'll tag a new version then |
21:30:56 | Araq_ | ah fuck |
21:30:59 | Araq_ | exec(("tools" / "niminst" / "niminst --var:version=$# --var:mingw=mingw$#" & |
21:31:00 | Araq_ | " nsis compiler/installer.ini") % [VersionAsString, $(sizeof(pointer)*8)]) |
21:31:17 | Araq_ | koch uses its own pointer size to guide the NSIS generation :P |
21:31:21 | Araq_ | how smart |
21:31:40 | Araq_ | on the other hand. ... our build environment does rebuild koch, rightß |
21:31:42 | Araq_ | ? |
21:31:51 | yglukhov | quick thought: instead of "import mylib.a, mylib.b, mylib.c" allow "import mylib.[a, b, c]" |
21:32:14 | Araq_ | yglukhov: planned once import foo.bar means what we want it to mean |
21:32:24 | yglukhov | ok |
21:33:15 | dom96 | That has been on my wishlist for a while, ever since I saw ooc doing it. |
21:34:02 | dom96 | Araq_: it doesn't rebuild koch |
21:34:06 | * | gokr quit (Ping timeout: 244 seconds) |
21:34:10 | dom96 | Easy fix then |
21:34:16 | Araq_ | yup |
21:34:56 | dom96 | Unless the nim built via c sources can't build koch... |
21:38:19 | Araq_ | well it can build a working compiler with can then build koch |
21:41:43 | Araq_ | not that koch uses anything fancy |
21:41:51 | Araq_ | it should always compile |
21:42:33 | dom96 | okay |
21:42:40 | dom96 | Everything is pushed |
21:42:43 | dom96 | CI is running |
21:44:05 | Araq_ | including my changes? |
21:46:06 | dom96 | no, but I just want to make sure the nsis installer works ok |
21:48:14 | Araq_ | I can already update the version and rebuild the docs and upload them, right? |
21:49:02 | dom96 | sure |
21:49:11 | dom96 | well |
21:49:17 | dom96 | I guess we need to fix coro? |
21:49:58 | federico3 | dom96: is there any starting point for "nim doc" to generate docs for a package? e.g. nim doc *.nim ? |
21:50:35 | dom96 | ehhh, not entirely sure what you mean |
21:50:50 | dom96 | By package do you mean a nimble package? |
21:50:54 | federico3 | yep |
21:51:01 | dom96 | no |
21:51:27 | Araq_ | there is a newish --project feature for nim doc2 |
21:51:37 | Araq_ | but I never used it |
21:51:48 | federico3 | yep, but there's a warning on it |
21:52:00 | Araq_ | should be easy enough to bring into shape though |
21:52:16 | federico3 | is nim doc ever following files/dirs by itself or can I just call it with find | xargs ? |
21:53:02 | Araq_ | as I said, --project or similar generates docs for every module belonging to the package |
21:53:16 | Araq_ | if you have a module that uses everything in that package |
21:53:33 | Araq_ | which you kind of should have for testing anyway |
21:54:10 | federico3 | aha https://github.com/nim-lang/Nim/issues/4027 |
21:54:52 | Araq_ | well I think I implemented that and didn't know about the issue |
21:56:55 | dom96 | sooo, where are we with tarballs? |
21:59:42 | * | brson quit (Ping timeout: 276 seconds) |
22:01:54 | * | Demon_Fox quit (Remote host closed the connection) |
22:04:52 | * | mitai joined #nim |
22:06:10 | * | brson joined #nim |
22:07:29 | dom96 | ugh, still installed mingw 64 bit |
22:08:25 | * | pregressive quit (Remote host closed the connection) |
22:09:23 | * | pie__ joined #nim |
22:12:20 | * | pie___ quit (Ping timeout: 244 seconds) |
22:12:24 | dom96 | ugh |
22:31:46 | * | xet7 quit (Quit: Leaving) |
22:34:45 | * | yglukhov quit (Remote host closed the connection) |
22:35:52 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
22:37:45 | * | yglukhov joined #nim |
22:46:01 | * | yglukhov quit (Ping timeout: 240 seconds) |
22:51:42 | * | yglukhov joined #nim |
22:56:15 | * | yglukhov quit (Ping timeout: 244 seconds) |
22:58:49 | * | Jesin quit (Quit: brb, rebooting) |
23:01:55 | * | yglukhov joined #nim |
23:02:08 | * | bjz joined #nim |
23:02:17 | * | Jesin joined #nim |
23:03:16 | * | irrequietus quit () |
23:06:39 | * | yglukhov quit (Ping timeout: 276 seconds) |
23:07:25 | * | dddddd joined #nim |
23:07:51 | dom96 | okay, so the installer works now |
23:08:15 | dom96 | https://gitlab.com/nim-lang/nim/builds/4545023/artifacts/browse/build/ |
23:09:54 | dom96 | Araq_: What else is needed? |
23:13:00 | * | yglukhov joined #nim |
23:17:01 | * | yglukhov quit (Ping timeout: 240 seconds) |
23:21:33 | * | bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
23:23:00 | * | yglukhov joined #nim |
23:25:07 | dom96 | Release delayed until tomorrow. |
23:25:09 | dom96 | Good night |
23:25:36 | Araq_ | yup |
23:25:38 | Araq_ | good night |
23:27:01 | * | yglukhov quit (Ping timeout: 240 seconds) |
23:29:06 | * | yglukhov joined #nim |
23:34:40 | * | LeNsTR is now known as lenstr |
23:36:25 | * | Trustable quit (Remote host closed the connection) |
23:43:03 | * | yglukhov quit (Ping timeout: 276 seconds) |
23:48:15 | * | yglukhov joined #nim |