00:12:44 | * | rect0x51 quit (Quit: WeeChat 2.3) |
00:17:18 | * | Notkea quit (Read error: Connection reset by peer) |
00:18:26 | * | Notkea joined #nim |
00:34:26 | * | xace quit (Remote host closed the connection) |
00:34:49 | * | rockcavera joined #nim |
00:36:37 | * | xace joined #nim |
00:39:49 | FromGitter | <gogolxdong> How to get the value of HTML element with contenteditable attribution, checked some articles says innerText work which isn't included in Karax. |
00:42:54 | * | Ven`` joined #nim |
00:44:28 | FromGitter | <gogolxdong> tried to update the value of a table cell onblur, and got 'expected 1 real 2 TD nesting 4' |
00:47:13 | * | thomasross quit (Remote host closed the connection) |
00:47:34 | * | thomasross joined #nim |
01:05:07 | FromGitter | <zetashift> How do I match on a Nim variant object? |
01:05:19 | * | stefantalpalaru quit (Quit: stefantalpalaru) |
01:36:29 | * | d10n-work quit (Quit: Connection closed for inactivity) |
01:46:22 | FromGitter | <gogolxdong> ok, it has innerHTML |
01:47:20 | * | zachk quit (Quit: Leaving) |
02:01:02 | FromDiscord_ | <ksen136> Sex Dating > http://discord.amazingsexdating.com |
02:18:23 | * | kungtotte quit (Ping timeout: 245 seconds) |
02:30:32 | * | Tyresc quit (Quit: WeeChat 2.4-dev) |
02:34:32 | * | Ven`` quit (Ping timeout: 250 seconds) |
03:00:35 | * | banc quit (Quit: Bye) |
03:01:28 | * | kapil____ joined #nim |
03:16:13 | * | banc joined #nim |
03:30:05 | * | dddddd quit (Remote host closed the connection) |
04:04:55 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
04:05:50 | * | nsf joined #nim |
04:54:32 | * | Ven`` joined #nim |
05:06:36 | * | Ven`` quit (Ping timeout: 272 seconds) |
05:15:08 | FromDiscord_ | <AregevDev> Ban |
05:15:10 | FromDiscord_ | <AregevDev> Reeee |
05:24:52 | * | xet7 joined #nim |
06:06:33 | * | narimiran joined #nim |
06:12:28 | FromGitter | <gogolxdong> I have a table whose td value varies with different options, how to refresh the values onchange the option of select? |
06:40:05 | * | kapil____ quit (Quit: Connection closed for inactivity) |
07:02:23 | FromGitter | <gogolxdong> http://ix.io/1xjl |
07:03:30 | FromGitter | <gogolxdong> the value of kpi varies with selecting, but the table value doesn't change. |
07:06:05 | Araq | that's not how 'sync' works |
07:06:41 | * | krux02 joined #nim |
07:09:21 | Araq | don't use innerHtml |
07:09:34 | Araq | to attach data to a closure follow Karax's documentation |
07:10:05 | Araq | https://github.com/pragmagic/karax#attaching-data-to-an-event-handler |
07:15:54 | shashlick | Araq: good morning - i'm about to sign off, but windows builds should be working now - both 32-bit and 64-bit |
07:16:06 | shashlick | https://travis-ci.org/nim-lang/nightlies/builds/474294418 |
07:16:11 | Araq | :O |
07:16:29 | shashlick | i'll deliver this PR and delete the releases posted so far through testing - https://github.com/nim-lang/nightlies/releases |
07:16:42 | shashlick | after an hour or so, new binaries should get posted |
07:16:54 | Araq | ok, great. Do I have to do anything? |
07:17:08 | FromGitter | <gogolxdong> without innerHTML , cannot get element value with contenteditable attribution |
07:17:29 | shashlick | well, i'll just recommend checking all the posted artifacts to verify that they look okay - not sure how they should be tested |
07:18:15 | Araq | via 'koch testinstall |
07:18:25 | FromGitter | <gogolxdong> like a cell of an editable table |
07:18:25 | Araq | but that only works on Unix |
07:18:57 | shashlick | let me ask something - is it sensible to generate osx and linux xz files when they all do the same thing? |
07:20:07 | * | ChristianWitts joined #nim |
07:20:26 | shashlick | also, can you please disable appveyor on this repo so that successful PRs look green |
07:24:24 | shashlick | okay - i've merged my last PR and have cleaned up the releases |
07:25:07 | shashlick | once this build is done, we should get everything posted neatly - https://travis-ci.org/nim-lang/nightlies/builds/474302732 |
07:26:31 | Araq | well osx could contain binaries too |
07:26:51 | Araq | and maybe also Linux can contain nim binaries |
07:27:07 | shashlick | i would like to see that eventually |
07:27:23 | shashlick | then choosenim can install binaries like is possible on windows |
07:28:11 | shashlick | with build stages, we can test the built packages in a separate job - https://docs.travis-ci.com/user/build-stages/ |
07:30:41 | shashlick | do you want nightlies to build automatically every night |
07:30:47 | shashlick | or do you want to trigger it |
07:44:00 | * | ripspin joined #nim |
07:45:13 | ripspin | Where should the nim std libs be installed on linux? |
07:48:03 | shashlick | How are you installing? |
07:49:05 | FromGitter | <gogolxdong> you can use innerHTML to get value of any editable element which supported in Html5, and attach data using closure. |
07:50:32 | * | ChristianWitts quit (Ping timeout: 244 seconds) |
07:50:34 | ripspin | I ran choosenim and it did it great, only thing is I think I should have been told to be in a particular dir before I ran it |
07:52:28 | ripspin | its now in my home dir ~/.nimble |
07:52:41 | shashlick | Choosenim installs in ~/.choosenim |
07:52:52 | shashlick | Binaries and the standard lib |
07:53:29 | shashlick | Additional packages are installed using nimble to ~/.nimble |
07:54:02 | ripspin | I ran it in my home dir and it installed it in: ~/.nimble |
07:54:24 | * | kapil____ joined #nim |
07:55:58 | ripspin | Its not compiling something it should compile so I want to install it again so that it works . where should it be installed |
07:57:42 | ripspin | I also have ~/.choosenim |
07:57:58 | shashlick | You need to add ~/.nimble/bin to your path |
07:58:20 | shashlick | Everything will start working then |
08:00:51 | shashlick | Araq: builds have started posting to the nightlies releases page |
08:01:10 | shashlick | For whatever reason, they aren't being grouped into one release |
08:01:30 | ripspin | I have linked all of the binaries in ~/.nimble/bin into /usr/local/bin (PATH) |
08:01:46 | shashlick | Guess it depends on timing of 0.19.2 vs 0.19.9 builds completing |
08:02:41 | ripspin | It runs file on other code it fails on a standard lib right at the start |
08:07:15 | FromGitter | <gogolxdong> made a workaround as follows :http://ix.io/1xjr |
08:07:37 | FromGitter | <gogolxdong> any better solution? |
08:10:26 | * | ChristianWitts joined #nim |
08:10:28 | ripspin | It runs fine on other code it fails on a standard lib right at the start |
08:15:28 | ripspin | https://pastebin.com/n8jNjH3D |
08:46:29 | * | ripspin quit (Remote host closed the connection) |
08:59:56 | * | Vladar joined #nim |
09:01:42 | avsej | looks like new release tarball is really different: 0.19.0 was just 3MB size, but 0.19.2 is 21MB! |
09:02:08 | avsej | also it is not possible to run ./koch test with 0.19.2 |
09:02:33 | avsej | install_nimble.nims and install_tools.nims missing |
09:04:38 | avsej | dom96, I remember size issue in the past, maybe some local scripts are outdated again? or dirty tree when doing release |
09:06:50 | avsej | dom96, Araq, 'proc tests' in koch.nim expects to compile 'testament/tester.nim' but it looks like it has been moved into 'tests/tester.nim' without updating koch |
09:07:27 | * | floppydh joined #nim |
09:08:22 | avsej | or even just the fact 'tests/testament' is missing in distribution tarball for some reason |
09:12:34 | Araq | avsej: we know |
09:13:47 | Araq | shashlick: building every night is nice |
09:13:55 | Araq | it's called 'nightlies'. |
09:15:04 | FromGitter | <gogolxdong> contentEditable of kdom.nim only works when its type is cstring instead of string, dir might also be related. |
09:15:14 | Araq | gogolxdong: innerHtml is always a big hack |
09:20:38 | FromGitter | <gogolxdong> yeah, I am aware of that, but have no better idea, I need to operate on a table cell which has no value attribution to set and get. |
09:26:28 | * | rect0x51 joined #nim |
09:31:09 | FromGitter | <gogolxdong> attribute |
09:36:05 | * | PMunch joined #nim |
09:39:18 | * | nc-x joined #nim |
09:40:31 | nc-x | Araq, @alehander42 I was wondering if something like https://github.com/nim-lang/Nim/pull/10127 would be possible for case objects so that the field not available error is given at compile time? |
09:41:21 | rect0x51 | PMunch: Hi! I want to ask about nimlsp |
09:42:04 | PMunch | Sure, ask away :) |
09:42:20 | * | FromGitter quit (Remote host closed the connection) |
09:42:39 | * | FromGitter joined #nim |
09:42:49 | avsej | Araq, thanks. But 0.19.2 was announced as release. Will there be 0.19.3 with the fix soon? |
09:43:31 | Araq | the timing was excellent, just after 0.19.2 the automated builds started to work... |
09:43:36 | rect0x51 | First of all... I failed to install it. It's probably some configuration since I got message of stuff being undefined. What is the state of the project? LSP is very important so I'd like to help. |
09:44:09 | PMunch | How did you try to install it? |
09:44:21 | PMunch | And which editor do you intend to use it with? |
09:45:44 | * | theelous3 joined #nim |
09:46:11 | rect0x51 | Ok first I tried "nimble install nimlsp" -> package not found, then I did "nimble install <link to github>" and it installed dependancies but not nimlsp. Then I clones the repo and used "nimble build" with various options to get it installed, like -d:nimcore and --threads:on, but I kept getting more errors of stuff being undefined... |
09:46:18 | * | nc-x quit (Quit: Page closed) |
09:46:24 | Araq | avsej: so yeah, we'll do something, stay tuned |
09:46:42 | avsej | thanks |
09:46:51 | rect0x51 | (I intend to use vim) |
09:46:59 | rect0x51 | (neovim in particular) |
09:47:03 | * | ChristianWitts quit (Ping timeout: 250 seconds) |
09:47:32 | PMunch | Oh yeah, I forgot about that |
09:47:43 | * | vlad1777d joined #nim |
09:48:18 | PMunch | So what you need to to us pull the repo and run "nimble debug" in the folder. That should create a debug build of the project which could then be placed in your path. |
09:49:26 | synthmeat | (lsp is a really helpful thing for language adoption. i usually end up turning it off later on, when i'm familiar with api surface/stdlib) |
09:50:11 | PMunch | It's also really great for navigating a new project (with go to definition and such) |
09:51:15 | synthmeat | and refactoring, especially when you have ignored casing :) |
09:52:25 | rect0x51 | Just to clarify... nimlsp is not ready for use yet, right? |
09:52:26 | PMunch | Oh yeah, that's true as well |
09:52:37 | PMunch | rect0x51, well I use it |
09:52:42 | PMunch | Works great |
09:52:49 | rect0x51 | I mean... a casual user can't just do "nimble install" and use it yet |
09:53:06 | * | rockcavera quit (Remote host closed the connection) |
09:53:10 | PMunch | Oh yeah, that's mostly because I still haven't gotten around to fixing the .nimble file |
09:53:11 | Araq | shashlick: I removed nightlies from appveyor |
09:53:20 | rect0x51 | if it's already good, then should we supply it in a convinient way? |
09:53:35 | PMunch | Definitely! |
09:53:52 | PMunch | I actually have the file needed to do it at home |
09:54:04 | PMunch | Just keep forgetting to add it to the repo.. |
09:54:37 | PMunch | It's essentially just the configs that are now passed over command line options in the .nimble file |
10:00:35 | rect0x51 | Nice, "nimble debug" just works |
10:01:02 | PMunch | Yeah, that's what numble build is supposed to do as well :P |
10:02:06 | rect0x51 | So what is it supposted to do in vim? I added the viml lines but when I open a .nim file nothing happens |
10:02:59 | PMunch | If you start typing something and hit <tab> it should give you a list of options |
10:03:17 | PMunch | Or you can use the commands that vim-lsp define like :LspDefinition |
10:03:40 | PMunch | github.com/prabirshrestha/vim-lsp#supported-commands |
10:04:42 | rect0x51 | "Retrieving definition not supported for nim" |
10:05:32 | PMunch | That means it is not set up correctly |
10:05:41 | rect0x51 | yeah obviously |
10:05:44 | PMunch | Do you have nimlsp in your path? |
10:05:58 | rect0x51 | I put it where nim binary is |
10:07:24 | PMunch | Hmm, that should work. But you could try with a direct path like I do in my config: http://ix.io/1xjI/ |
10:08:25 | FromGitter | <SolitudeSF> PMunch, `nimble debug` gives `nimlsppkg/suggestlib.nim(5, 8) Error: cannot export: Suggest` for me |
10:08:42 | PMunch | Which Nim version? |
10:09:09 | PMunch | Oh and you need to init the git submodule for it to work |
10:09:24 | rect0x51 | SolitudeSF: make a folder in src/nimlsppkg called Nim, then copy nimsuggest folder from Nim/ in src/nimlsppkg/Nim |
10:09:54 | FromGitter | <SolitudeSF> i have submodule fetched |
10:09:57 | PMunch | Or do that, if you don't want a complete copy of Nim :P |
10:10:05 | * | kapil____ quit (Quit: Connection closed for inactivity) |
10:10:17 | PMunch | SolitudeSF, hmm that's strange |
10:11:59 | FromGitter | <SolitudeSF> i symlinked nimsuggest folder from my local nim install and it worked |
10:12:27 | PMunch | Hmm, weird that the submodule didn't work |
10:12:36 | PMunch | Maybe it had pulled the wrong version? |
10:14:06 | rect0x51 | Sadly it doesn't work even when I put the explicit path like you showed :( |
10:14:10 | * | lritter joined #nim |
10:15:07 | PMunch | Hmm, strange |
10:15:26 | PMunch | Is there anything in the nimlsp log? |
10:15:31 | PMunch | Or the vim-lsp log? |
10:15:59 | PMunch | Log should be in /tmp/nimlsp by the way |
10:16:29 | rect0x51 | it's empty |
10:16:41 | rect0x51 | oh wait sorry |
10:16:54 | rect0x51 | vim-lsp is not empty |
10:17:22 | PMunch | If /tmp/nimlsp is empty it means that vim never actually started it |
10:17:44 | rect0x51 | vim-lsp has logged the calls I made |
10:18:10 | rect0x51 | give me a sec |
10:18:49 | PMunch | Do you have something like this in the vim-lsp file: Wed 02 Jan 2019 10:52:16 CET:["lsp#register_server","server registered","nimlsp"] |
10:19:38 | rect0x51 | yes |
10:19:57 | * | ripspin joined #nim |
10:20:26 | rect0x51 | "Unable to find \"config/nim.cfg\" in \"/home/stef/Desktop/nimlsp/src/nimlsppkg/Nim\". Supply the Nim project folder by adding it as an argument.", ""]]" |
10:21:34 | rect0x51 | /home/stef/Desktop/nimlsp/src/nimlsppkg/Nim only has nimsuggest in it |
10:21:41 | PMunch | Ah yes |
10:22:01 | PMunch | That's because you only copied the nimsuggest folder instead of using the git module |
10:22:16 | rect0x51 | ok, i'll do it properly, w8 |
10:22:53 | PMunch | Basically nimsuggest needs to find a Nim project so that it knows about the stdlib and such |
10:23:45 | PMunch | But if you have nim cloned somewhere you can add the argument for vim to launch it |
10:23:59 | rect0x51 | I have it, how to do that? |
10:23:59 | ripspin | It runs fine on other code it fails on a standard lib right at the start, https://pastebin.com/n8jNjH3D How do I start a project? |
10:25:18 | PMunch | rect0x51, you should be able to just add the path to the server_info array in your vim config |
10:27:17 | * | nc-x joined #nim |
10:27:24 | nc-x | ripspin: Which nim version are you on? |
10:27:52 | ripspin | 0.19.2 |
10:28:11 | nc-x | IIRC this aporia issue is fixed on devel but the fix was not backported to 0.19.2 |
10:28:46 | nc-x | https://github.com/nim-lang/Nim/issues/9889 |
10:30:06 | ripspin | So it was fixed in nim but not in aporia? |
10:31:27 | nc-x | No. It should work fine if you compile latest nim from devel branch on github. |
10:31:41 | nc-x | But the fix is not available on the newly released v0.19.2 |
10:31:43 | rect0x51 | PMunch: Thanks so much for the help, I got it running. |
10:32:06 | PMunch | Great! |
10:32:25 | PMunch | Should make some kind of FAQ I think.. |
10:32:41 | PMunch | But first get it to work with just "nimble install nimlsp" :) |
10:32:45 | rect0x51 | Yeah, was just thinking about that, I can write it for you |
10:32:50 | ripspin | OK, can I have the devel ver also ? |
10:33:04 | rect0x51 | PMunch: Exactly |
10:33:26 | nc-x | ripspin: if you use choosenim, you can install devel easily |
10:33:44 | nc-x | else follow these steps https://github.com/nim-lang/Nim#compiling |
10:33:49 | PMunch | rect0x51, great :) PR it to the readme! |
10:33:56 | ripspin | Will it install over the stable ver? |
10:34:11 | nc-x | choosenim allows you to switch between versions |
10:34:17 | PMunch | ripspin, it installs side by side, but only one will be in your path |
10:34:28 | rect0x51 | PMunch: Ok! |
10:34:30 | nc-x | installing manually, you can install it to any folder, just make sure the version you want is in the path |
10:34:31 | PMunch | So you can quickly change between versions while having multiple ones installed :) |
10:34:40 | ripspin | OK i will give it a go |
10:34:54 | * | seni joined #nim |
10:36:29 | ripspin | "the latest current commit of Nim" would that do it? |
10:36:49 | * | seni left #nim (#nim) |
10:37:43 | nc-x | `choosenim devel` is the command I think (I don't use choosenim so not sure) |
10:37:47 | krux02 | Happy new Year |
10:38:22 | PMunch | Happy new year! |
10:38:42 | * | nc-x quit (Quit: Page closed) |
10:41:16 | rect0x51 | Happy new year |
10:42:47 | PMunch | Got an e-mail regarding my Nim lightning talk for FOSDEM by the way |
10:42:50 | ripspin | nc-x: choosenim devel looks good so far |
10:42:52 | PMunch | It's accepted :) |
10:43:00 | narimiran | PMunch: congrats!! |
10:43:12 | PMunch | Metaprogramming with Nim | H.2215 (Ferrer) | 2019-02-03 | 11:20:00 |
10:43:13 | rect0x51 | ohhh!! nice!! |
10:43:17 | * | stefanos82 joined #nim |
10:43:30 | rect0x51 | stefanos82: from Greece? |
10:43:48 | stefanos82 | rect0x51: Cyprus |
10:44:06 | rect0x51 | stefanos82: Nice to meet you, I'm from Greece and we have same name ;p |
10:44:36 | stefanos82 | yes, I know. I saw your ascii video yesterday that demonstrated the '\ issue |
10:44:45 | stefanos82 | nice to meet you too |
10:46:59 | ripspin | now i get: https://pastebin.com/PZvA5pdh when i compile with devel (aporia) |
10:47:18 | rect0x51 | PMunch: I am testing the vim commands now. LspDefinition seems to never return. I will do proper testing and report. |
10:47:47 | PMunch | I'm not sure why, but sometimes it takes quite a long while to find it |
10:48:22 | rect0x51 | PMunch: pretty sure it's stucked, my test.nim is 5 lines and it's been running for minutes now... |
10:48:27 | rect0x51 | stuck* |
10:48:35 | PMunch | Ouch, yeah that's not normal |
10:49:35 | * | ChristianWitts joined #nim |
10:54:35 | stefanos82 | one thing that i have noticed on my debian testing 64-bit system is that an aporia dependency is considered orphan package during a system apt upgrade |
10:54:55 | stefanos82 | and when i remove it, aporia does not compile successfully |
10:58:59 | * | dom96_w joined #nim |
11:02:01 | * | theelous3 quit (Ping timeout: 250 seconds) |
11:04:06 | rect0x51 | PMunch: It's weird. nimlsp.log shows that nimlsp successfully found the definition of the proc call. nimlsp.log ends with this line: Got valid Notification message of type textDocument/didOpen |
11:06:04 | PMunch | Hmm, that means vim probably sent a didOpen notification for the file it was supposed to open for the definition |
11:06:05 | PMunch | Strange |
11:06:16 | PMunch | Might be a bug with vim-lsp |
11:06:27 | PMunch | Could you paste the nimlsp log somewhere? |
11:06:37 | PMunch | I'll look at it when I get back from lunch |
11:07:15 | rect0x51 | should I just paste the link here? or open an issue? |
11:09:38 | * | ChristianWitts quit (Ping timeout: 245 seconds) |
11:10:48 | rect0x51 | PMunch: I'll open an issue, bon appetit |
11:16:40 | * | noonien joined #nim |
11:27:17 | * | NimBot joined #nim |
11:31:10 | * | theelous3 joined #nim |
11:31:37 | * | theelous3_ joined #nim |
11:34:33 | rect0x51 | PMunch: https://github.com/PMunch/nimlsp/issues/17 |
11:59:13 | PMunch | rect0x51, replied |
12:04:47 | FromGitter | <kaushalmodi> shashlick: π Awesome work! Thanks for making nightlies pass! |
12:04:51 | rect0x51 | PMunch: nimlsp keeps running yes |
12:06:02 | FromGitter | <kaushalmodi> shashlick: So you can now just delete the Appveyor config file from there? @Araq? |
12:07:21 | PMunch | rect0x51, so then it hangs for some reason.. |
12:09:47 | * | vlad1777d quit (Ping timeout: 240 seconds) |
12:10:35 | rect0x51 | yeah |
12:10:38 | * | narimiran quit (Remote host closed the connection) |
12:11:07 | * | narimiran joined #nim |
12:11:08 | * | narimiran quit (Remote host closed the connection) |
12:15:27 | * | nsf quit (Quit: WeeChat 2.3) |
12:15:27 | * | narimiran joined #nim |
12:15:53 | * | narimiran quit (Remote host closed the connection) |
12:17:12 | * | narimiran joined #nim |
12:22:54 | * | gangstacat quit (Quit: Δis!) |
12:28:18 | * | ChristianWitts joined #nim |
12:29:09 | FromDiscord_ | <PusiteGA> ``` |
12:29:09 | FromDiscord_ | <PusiteGA> if paramCount()<2: |
12:29:09 | FromDiscord_ | <PusiteGA> echo "Need 2 arguments, filename and size"; |
12:29:09 | FromDiscord_ | <PusiteGA> return; |
12:29:09 | FromDiscord_ | <PusiteGA> ``` |
12:29:17 | FromDiscord_ | <PusiteGA> why it says return not allwed here |
12:29:26 | FromDiscord_ | <PusiteGA> i just want to terminate my function |
12:29:41 | FromDiscord_ | <PusiteGA> i just want to terminate my script |
12:29:56 | PMunch | You're looking for `quit` |
12:30:08 | FromDiscord_ | <PusiteGA> i just want to terminate my script, hmm meybe cuz i am not in fuction |
12:30:19 | FromDiscord_ | <PusiteGA> ok will try that |
12:30:20 | PMunch | `return` is only for procedures and such |
12:30:43 | FromDiscord_ | <PusiteGA> yep got it |
12:30:59 | FromDiscord_ | <PusiteGA> i have do discard quit? |
12:31:09 | PMunch | Nope |
12:31:34 | rect0x51 | PMunch: I copied the whole Nim folder into nimlsp/src/nimlsppkg and recompiled with the "nimble debug" command. Then everything works fine! Sorry for all this trouble, but readme.md is seriously misleading... |
12:31:38 | FromDiscord_ | <PusiteGA> quit(0) |
12:31:47 | FromDiscord_ | <PusiteGA> works |
12:32:02 | PMunch | Yeah, `quit 1` would give the program an exit code of 1 |
12:32:12 | FromDiscord_ | <PusiteGA> got it π |
12:32:32 | PMunch | rect0x51, that's what the git submodule is for. |
12:33:12 | rect0x51 | PMunch: yeah, it seems this is the only correct way to install nimlsp atm, so we should just fix readme.md atm to explain that. |
12:48:14 | * | dddddd joined #nim |
13:03:47 | FromDiscord_ | <PusiteGA> do i have to create a openarray from paramStr to pass to startProcess or ist there some faster way? |
13:05:17 | PMunch | PusiteGA, you can get all of them with `commandLineParams` |
13:05:24 | PMunch | So you don't have to create it yourself |
13:06:09 | FromDiscord_ | <PusiteGA> whats posix, that mac or what? |
13:06:12 | PMunch | openarray isn't a specific type by the way: https://nim-lang.org/docs/tut1.html#advanced-types-open-arrays |
13:07:18 | PMunch | Well, POSIX is a standard that many Linux and Linux-like systems adhere to |
13:07:26 | PMunch | MacOS being one of them |
13:08:37 | * | Snircle joined #nim |
13:12:40 | * | rockcavera joined #nim |
13:13:58 | * | kapil____ joined #nim |
13:15:49 | * | Snircle quit (Quit: Textual IRC Client: www.textualapp.com) |
13:15:50 | FromDiscord_ | <PusiteGA> so i am on linux and it says that commandLineParams mey not work on POSIX |
13:16:12 | FromDiscord_ | <PusiteGA> whatewer will just forloop and create an seq/array |
13:16:25 | * | Snircle joined #nim |
13:18:36 | rect0x51 | PMunch: ... it wasn't an installation problem after all. nimlsp indeed hangs. Can you check your setup? Does vim work properly with nimlsp? |
13:18:45 | * | salewski joined #nim |
13:19:06 | PMunch | PusiteGA, it's only if you try to use it from a DLL that it won't work |
13:19:32 | PMunch | rect0x51, that is strange |
13:19:44 | PMunch | I'm using it every day and it works fine for me |
13:20:03 | rect0x51 | what version of vim do you have? |
13:20:07 | PMunch | It does sometimes do some strange stuff, but I haven't had it just not work like you're describing |
13:20:15 | PMunch | 8.1 |
13:20:31 | rect0x51 | could it be a problem with neovim? |
13:20:37 | PMunch | Could be.. |
13:20:51 | PMunch | Do you have another editor that supports LSP which you can try it on? |
13:21:13 | rect0x51 | I can download one, maybe VSCode? |
13:21:20 | rect0x51 | which ones do you want me to test? |
13:21:32 | PMunch | Well I've only tried vim and sublime |
13:21:45 | rect0x51 | ok I will try normal vim (not neovim) and sublime |
13:22:50 | * | nsf joined #nim |
13:22:53 | salewski | Does the search entry field in https://nim-lang.org/docs/lib.html work for you? |
13:23:14 | salewski | Not for me currently, may it be an issue with 0.19.2 docs? |
13:23:27 | PMunch | Works for me |
13:23:31 | FromDiscord_ | <PusiteGA> ``` |
13:23:31 | FromDiscord_ | <PusiteGA> Error: unhandled exception: ; Additional info: "Could not find command: \'usr/bin/ffprobe\'. OS error: No such file or directory" [OSError] |
13:23:31 | FromDiscord_ | <PusiteGA> ``` |
13:24:02 | FromDiscord_ | <PusiteGA> why is it "'usr/bin/ffprobe\' i newer added \ on end? |
13:24:19 | * | Vladar quit (Remote host closed the connection) |
13:24:21 | FromDiscord_ | <PusiteGA> let pr = startProcess("ffprobe","",arguments ,nil,{poStdErrToStdOut}); |
13:24:42 | FromDiscord_ | <PusiteGA> let pr = startProcess("usr/bin/ffprobe","",arguments ,nil,{poStdErrToStdOut}); |
13:24:48 | * | Vladar joined #nim |
13:24:53 | salewski | Well maybe it is my Firefox, will try another browser. Bye. |
13:24:57 | * | salewski quit (Quit: WeeChat 2.3) |
13:25:11 | leorize | PusiteGA: you should add poUsePath to options |
13:25:18 | leorize | it's easier that way |
13:25:36 | leorize | the `\` is because `'` need to be escaped, that's all |
13:27:28 | FromDiscord_ | <PusiteGA> ok anywya if frogot / ifont usr , but ye with poUsePaths ffprobe works np, dident complain about \ |
13:29:13 | rect0x51 | PMunch: I feel stupid that I wasted your time now... I used a clean .vimrc and it works. Must be some kind of conflict with the other vim configurations of mine. |
13:30:29 | PMunch | Haha, no problem :P |
13:30:42 | FromDiscord_ | <PusiteGA> accepting you stupit is a first step forward elightment xD |
13:30:52 | PMunch | Next time some has this issue I will be ready to tell them what to do :) |
13:34:12 | * | gangstacat joined #nim |
13:42:30 | rect0x51 | PMunch: 'zah/nim.vim' is a dependancy |
13:43:01 | rect0x51 | ? |
13:43:20 | PMunch | Uhm, not 100% sure tbh |
13:43:44 | PMunch | Might be just to get syntax highlighting, but I think that is what makes vim realise that a file is Nim or not |
13:43:58 | PMunch | I know Sublime requires the NimLime plugin |
13:44:26 | rect0x51 | I see, yeah, without it nimlsp doesn't start. |
13:45:33 | rect0x51 | Do you use zah/nim.vim? |
13:45:54 | PMunch | Yes |
13:46:35 | rect0x51 | I am not sure what is happening anymore... I'll post more info at the issue. |
13:47:44 | FromGitter | <zacharycarter> https://github.com/google/flutter-desktop-embedding |
13:47:54 | FromGitter | <zacharycarter> I wonder if flutter will become a viable alternative to electron |
13:48:08 | FromGitter | <zacharycarter> or SDL2 / GLFW3 |
13:52:13 | rect0x51 | PMunch: I wrongly thought for a moment that it worked. https://pastebin.com/R3Qjx31j with Vim 8.1 still same behavior. |
13:55:33 | rect0x51 | Must be the way I installed nimlsp after all. I will try the git module method as you suggested at the issue |
13:56:42 | FromDiscord_ | <PusiteGA> so how how pull only part of stream i am interested, in my case |
13:56:47 | FromDiscord_ | <PusiteGA> ``` |
13:56:47 | FromDiscord_ | <PusiteGA> compatible_brands: qt |
13:56:47 | FromDiscord_ | <PusiteGA> encoder : Lavf58.20.100 |
13:56:48 | FromDiscord_ | <PusiteGA> Duration: 00:02:00.02, start: 0.000000, bitrate: 371 kb/s |
13:56:48 | FromDiscord_ | <PusiteGA> Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1880x1008 [SAR 1:1 DAR 235:126], 355 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default) |
13:56:49 | FromDiscord_ | <PusiteGA> Metadata: |
13:56:51 | FromDiscord_ | <PusiteGA> ``` |
13:57:16 | narimiran | use some pastebin-like site for code-pasting, please and thank you |
13:57:17 | FromDiscord_ | <PusiteGA> i just want to pull out value of Duration: |
13:57:40 | FromDiscord_ | <PusiteGA> oh sorry i frogot this irc too |
13:57:57 | FromDiscord_ | <PusiteGA> anyway how to rape from text what i need only |
13:57:59 | FromDiscord_ | <PusiteGA> Duration: 00:02:00.02, start: 0.000000, bitrate: 371 kb/s |
13:58:11 | FromDiscord_ | <PusiteGA> so i want to get value of duration only |
13:58:37 | FromDiscord_ | <PusiteGA> and i cant be sure it will write it on same line , or at least i duno if it does π |
14:00:46 | FromDiscord_ | <PusiteGA> i can meybe go read all lines unitl i found 1 line with duration then just take this time part with substring, or is there a better way? |
14:02:42 | FromDiscord_ | <PusiteGA> or be smarter and just add more parementars to get exact data π |
14:02:53 | FromDiscord_ | <PusiteGA> or be smarter and just add more parementars to get exact data π from ffprobe |
14:03:58 | PMunch | If possible I'd go with options to only get the single value |
14:04:18 | PMunch | Or get output in some format that is intended to be machine-readable |
14:04:53 | PMunch | But you can of course just read line by line until the line starts with "Duration: " and then grab the the timestamp |
14:04:54 | FromDiscord_ | <PusiteGA> i found it allreay i get exactly what i want just output in seconds |
14:05:05 | PMunch | Probably things in strutils that can help you out there |
14:05:57 | * | whaletechno quit (Quit: ha det bra) |
14:10:38 | PMunch | If you have it in seconds you can use initDuration and toParts from times to create a timestamp similar to the one it outputs |
14:15:20 | rect0x51 | I am at a loss :( "git submodule update --recursive --remote" doesn't do anything when run |
14:17:27 | PMunch | You need to run git submodule init first |
14:17:39 | PMunch | git-scm.com/book/en/v2/Git-Tools-Submodules |
14:17:46 | PMunch | Cloning a Project with Submodules |
14:19:01 | FromDiscord_ | <PusiteGA> ty pmuch but i need it in seconds anyway π |
14:21:23 | rect0x51 | PMunch: Now I get what the other guy said some hours before, "Error: cannot export: Suggest" |
14:21:54 | PMunch | Hold on, I'll try to do the whole process myself |
14:22:02 | rect0x51 | thanks |
14:35:41 | PMunch | Aha |
14:35:59 | PMunch | The submodule must be set up to track the "devel" branch |
14:38:11 | FromDiscord_ | <PusiteGA> strutils.nim parseFloat |
14:38:11 | FromDiscord_ | <PusiteGA> Error: unhandled exception: invalid float: 120.022000 |
14:38:39 | PMunch | rect0x51, try to pull nimlsp again and reinitialize the git submodule |
14:39:00 | FromDiscord_ | <PusiteGA> hmm shoudent this be parsable, or meybe i have some whitespaces ? |
14:39:07 | PMunch | PusiteGA, make sure there is no whitespace |
14:40:00 | * | Marmumoto joined #nim |
14:40:29 | FromDiscord_ | <PusiteGA> yep my bad |
14:45:27 | rect0x51 | PMunch: ok it builds now, but what I described at the issue remains same :| |
14:47:13 | PMunch | Hold on, I'll try to let vim use my newly built version |
14:52:46 | * | rockcavera quit (Ping timeout: 268 seconds) |
14:54:49 | * | Ven`` joined #nim |
14:56:32 | * | narimiran quit (Remote host closed the connection) |
15:08:37 | shashlick | @kaushalmodi - please try out koch testinstall when you get a chance |
15:09:01 | shashlick | We also need to figure out how to group the release files together on http://github.com |
15:09:46 | shashlick | For some reason, 0.19.2 and 0.19.9 get grouped together even though they should have different titles |
15:09:57 | Araq | shashlick, "github Page build failure" but I don't know what it means |
15:10:17 | shashlick | The appveyor file can remain if it has anything useful |
15:10:31 | shashlick | Where do you see that Araq |
15:10:48 | Araq | got an email from github |
15:10:59 | Araq | I'm sure it has something to do with the release |
15:11:14 | Araq | but that's all I know |
15:12:03 | * | narimiran joined #nim |
15:13:38 | FromGitter | <kaushalmodi> shashlick: I am not sure what you mean by grouping |
15:13:44 | * | ChristianWitts quit (Ping timeout: 250 seconds) |
15:13:46 | FromGitter | <kaushalmodi> the asset file name is derived here: https://github.com/nim-lang/nightlies/blob/12b31a73924f56e967d710533b1d2928e2f24e51/.travis.yml#L162 |
15:14:21 | FromGitter | <kaushalmodi> it should be creating a separate archive file for each DEPLOY_VERSION |
15:15:00 | FromGitter | <kaushalmodi> I see that you add ARCH var too |
15:15:24 | FromGitter | <kaushalmodi> so looks like ARCH needs to be made a part of ASSETFILE too |
15:16:32 | shashlick | Arch is part of suffix |
15:16:49 | shashlick | And only relevant to windows |
15:17:08 | FromGitter | <kaushalmodi> ah, ok. I see that now |
15:17:24 | shashlick | I'm talking about the releases page in http://github.com how it shows multiple releases |
15:17:51 | shashlick | https://github.com/nim-lang/nightlies/releases/tag/untagged-16d01ddd109555351010 has a mix |
15:18:06 | * | abbiya joined #nim |
15:18:22 | FromGitter | <kaushalmodi> I don't know how to separate that |
15:18:39 | FromGitter | <kaushalmodi> if you know a project that does that, then may be we just need to look at that project's travis config |
15:19:18 | shashlick | But this and three others are isolated |
15:19:22 | shashlick | https://github.com/nim-lang/nightlies/releases/tag/untagged-99a315c692ccde8f0a8d |
15:19:29 | shashlick | Just weird |
15:20:02 | shashlick | But more importantly, all these builds need to be verified |
15:20:17 | FromGitter | <kaushalmodi> shashlick: I think I know to separate |
15:20:18 | FromGitter | <kaushalmodi> see https://github.com/nim-lang/nightlies/blob/master/.travis.yml#L137 |
15:20:22 | shashlick | Then we can fix the cosmetics |
15:20:30 | FromGitter | <kaushalmodi> NIMVERSHORT needs to be recalculated in the matrix too I think |
15:20:43 | * | ChristianWitts joined #nim |
15:20:55 | FromGitter | <kaushalmodi> then we should have unique titles for different versions from https://github.com/nim-lang/nightlies/blob/12b31a73924f56e967d710533b1d2928e2f24e51/.travis.yml#L176 |
15:21:14 | FromGitter | <kaushalmodi> > But more importantly, all these builds need to be verified β β yes, `koch testinstall` |
15:22:18 | shashlick | Well I'd rather see two releases, one for devel with 4 assets and a second for stable with 4 assets |
15:22:53 | shashlick | And this method should work since I deleted all cache and kicked off this build |
15:22:55 | FromGitter | <kaushalmodi> shashlick: yeah.. do you want to open an issue for this? This is cosmetic think as you said |
15:23:00 | FromGitter | <kaushalmodi> let's get the testinstall to pass |
15:23:17 | FromGitter | <kaushalmodi> about about question about why I cache .. |
15:23:24 | shashlick | I think we need to use build stages |
15:23:39 | shashlick | And have all builds pass first |
15:23:42 | FromGitter | <kaushalmodi> it just optimization, we do not need to rebuild the deploy assets if the git hash hasn't changed overnight |
15:23:57 | FromGitter | <kaushalmodi> that's mostly true for the stable deploys |
15:24:05 | PMunch | rect0x51, seems to work fine for me |
15:24:08 | shashlick | Then do a test install before deploy |
15:24:25 | FromGitter | <kaushalmodi> shashlick: that's the plan |
15:24:27 | shashlick | I agree |
15:24:32 | FromGitter | <kaushalmodi> I did that but then removed it because it always failed |
15:24:52 | shashlick | Have you done build stages before in Travis? |
15:25:15 | FromGitter | <kaushalmodi> probably not, because I don't know what that means :) |
15:25:23 | shashlick | https://docs.travis-ci.com/user/build-stages/ |
15:25:40 | shashlick | Probably not as trivial since we have a matrix as well |
15:25:58 | FromGitter | <kaushalmodi> hello_musl and nightlies are the most complex travis config I have dealt with |
15:25:59 | rect0x51 | PMunch: Very strange. I will investigate more. Thanks for testing. |
15:26:07 | shashlick | Anyway I'll open an issue for the releases page and look into that |
15:26:19 | shashlick | Please proceed as originally planned |
15:26:33 | shashlick | I need to fix my choosenim pr as well |
15:34:27 | * | PMunch quit (Remote host closed the connection) |
15:37:17 | * | ChristianWitts quit (Remote host closed the connection) |
15:39:10 | * | Ven` joined #nim |
15:40:44 | * | Ven` quit (Client Quit) |
15:41:16 | * | Sembei joined #nim |
15:41:25 | * | Trustable joined #nim |
15:42:19 | * | Marmumoto quit (Quit: Page closed) |
15:42:46 | * | Pisuke quit (Ping timeout: 250 seconds) |
15:43:02 | * | abm joined #nim |
15:44:58 | * | jxy quit (Quit: leaving) |
15:46:29 | * | rect0x51 quit (Quit: WeeChat 2.3) |
15:56:42 | narimiran | https://nim-lang.org/docs/lib.html β does the search work for you guys? |
15:58:22 | shashlick | yep just tested on chrome - searched split and got popup, clicked link and it went to right location |
15:59:01 | narimiran | hmmm, nothing happens on vivaldi (chrom(ium) based) |
15:59:01 | * | abbiya left #nim (#nim) |
15:59:12 | shashlick | check the console |
16:00:11 | narimiran | "lib.html:1227 Uncaught ReferenceError: search is not defined at HTMLInputElement.onkeyup (lib.html:1227)" |
16:15:22 | narimiran | hmmm, for me it doesn't work on firefox either |
16:16:18 | FromGitter | <kaushalmodi> narimiran: Hmm, it works for me on firefox |
16:16:34 | FromGitter | <kaushalmodi> Firefox 64.0 Win 10 64-bit |
16:17:19 | FromGitter | <kaushalmodi> narimiran: Does it not work for *any* search string? E.g. I typed "hash" and it showed the results |
16:17:45 | narimiran | whatever i type, nothing happens, not even after i press enter |
16:18:12 | FromGitter | <kaushalmodi> narimiran: yeah, that search doesn't need enter to be pressed |
16:18:34 | narimiran | i know, and it worked until the end of 2018 quite alright :) |
16:18:40 | FromGitter | <kaushalmodi> may be try clearing your cache |
16:18:54 | FromGitter | <kaushalmodi> can you Ctrl+F5 the page and try again (I did that, and it still works) |
16:19:06 | shashlick | @kaushalmodi, @Araq: https://github.com/nim-lang/nightlies/issues/14 |
16:20:50 | narimiran | @kaushalmodi still the same, in both browsers |
16:21:32 | narimiran | http://nim-lang.github.io/Nim/lib.html works fine! |
16:34:12 | * | vlad1777d joined #nim |
16:37:38 | * | quipa joined #nim |
16:45:30 | Araq | https://forum.nim-lang.org/t/4519 can anybody reproduce this? |
16:46:43 | FromGitter | <kaushalmodi> Araq: No, it works great on Firefox (Win 10, Android) |
16:47:48 | narimiran | cannot reproduce, but ever since the new design, nim forum is the only site which won't load in the background when i e.g. open several topics in new tabs |
16:47:55 | shashlick | thanks for the info @kaushalmodi |
16:48:21 | narimiran | don't know if that's somehow connected with what oyster describes |
16:48:50 | FromGitter | <kaushalmodi> shashlick: You are welcome. You can see that I am really inexperienced with Travis :P |
16:48:59 | FromGitter | <kaushalmodi> I got stuff working after a lot of hit and miss |
16:49:56 | shashlick | trust me I'm bumbling through it as well |
16:50:07 | shashlick | i don't see you pushing the tag once you create it |
16:50:11 | shashlick | in your history |
16:50:20 | shashlick | were tags created for releases ever? |
16:52:03 | FromGitter | <kaushalmodi> shasklick: yes, I then did a cleanup of all that mess |
16:52:21 | shashlick | I don't see a git push --tags in your history |
16:52:21 | Araq | sorry about the mess |
16:52:24 | FromGitter | <kaushalmodi> I never got the git tagging to happen *only when* the hash changed |
16:52:35 | FromGitter | <kaushalmodi> Araq: it wasn't you :) |
16:52:48 | FromGitter | <kaushalmodi> we are talking about the mess I created when experimenting with git tagging the releases |
16:52:59 | FromGitter | <kaushalmodi> I cleared the mess before anyone can see it |
16:53:08 | * | floppydh quit (Quit: WeeChat 2.3) |
16:53:21 | shashlick | well, so unless you pushed the tag, github would still simply create untagged- releases |
16:53:29 | shashlick | since the tag only exists on the local copy |
16:53:51 | FromGitter | <kaushalmodi> shashlick: I might be misremembering but the pushes did happen |
16:54:00 | shashlick | also you need to set TRAVIS_TAG or it doesn't know how to match |
16:54:28 | FromGitter | <kaushalmodi> I think the issue was when travis tried to apply the same git tag multiple times (because nim devel didn't have any new commit) |
16:55:07 | shashlick | then that shouldn't post anything - you already block that right? |
16:55:10 | FromGitter | <kaushalmodi> shashlick: It could be a compound issue; not sure |
16:55:14 | FromGitter | <kaushalmodi> I took the easy way out |
16:55:32 | shashlick | ok let me experiment with my apparent confidence π |
16:55:38 | shashlick | looks like you added most of the code already |
16:55:45 | FromDiscord_ | <PusiteGA> how to rape extension from file, is there some secure way or should i just read <<< until i hit . and remove it? |
16:55:46 | shashlick | how long does testinstall take |
16:56:07 | FromGitter | <kaushalmodi> it takes quite a bit, an hour or more |
16:56:19 | FromGitter | <kaushalmodi> but probably that was before the tester optimizations |
16:56:48 | shashlick | okay then we might have to do it in a separate step |
16:56:53 | FromGitter | <kaushalmodi> well, it couldn't be hour or more .. because Travis doesn't allow running 1+ hr jobs |
16:56:59 | shashlick | since linux already takes 20+ minutes to package |
16:57:02 | FromGitter | <arnetheduck> @Araq re RVO / placing `result` as a parameter instead of return value (in the generated code), did you ever consider doing it as a transformation step instead doing it in cgen? |
16:57:43 | FromGitter | <kaushalmodi> shashlick: I am running testinstall in my fork's master: https://travis-ci.org/kaushalmodi/nightlies/builds/474484665 |
16:57:46 | FromGitter | <kaushalmodi> let's see how it goes |
16:59:46 | * | nc-x joined #nim |
17:00:26 | shashlick | cool |
17:01:09 | shashlick | i presume this commit worked for tagging - https://github.com/kaushalmodi/nightlies/commit/08bd48adaa64edec008c7c6c71ef497b26dec4d6 |
17:01:27 | nc-x | shashlick, kaushalmodi: well you can use azure ci, it has a configurable 180 minutes timeout iirc |
17:01:36 | shashlick | can you let me know what you used for GIT_TAG_USER_NAME and GIT_TAG_USER_EMAIL |
17:01:38 | nc-x | but that would require to redo the work |
17:01:44 | shashlick | or set that in travis please |
17:01:49 | FromGitter | <kaushalmodi> shashlick: it can be anything you want |
17:02:14 | FromGitter | <kaushalmodi> set it in *your* travis config, commit to your fork master and see the results in your Travis |
17:02:20 | * | nc-x quit (Client Quit) |
17:02:35 | FromDiscord_ | <PusiteGA> how to rape extension from file, is there some secure way or should i just read <<< until i hit . and remove it? or is there some file info or some class like that? |
17:02:39 | FromGitter | <kaushalmodi> basically git needs username and email to associate with the git tagging |
17:03:22 | FromGitter | <kaushalmodi> nc-x: I am cringing at the idea of reworking this :P |
17:03:47 | narimiran | @PusiteGA https://nim-lang.github.io/Nim/os.html#splitFile%2Cstring ? |
17:04:09 | FromGitter | <kaushalmodi> shashlick: β β > i presume this commit worked for tagging β β No, that commit is where I get tired of the git tagging idea and get rid of it [https://gitter.im/nim-lang/Nim?at=5c2cef09d945b96882343a34] |
17:04:27 | shashlick | well, i mean did it create the tag? |
17:04:33 | shashlick | and push it correctly |
17:04:42 | shashlick | forget the other issues |
17:05:03 | FromDiscord_ | <PusiteGA> ty |
17:05:07 | FromGitter | <kaushalmodi> shashlick: I believe it did push but git puked on trying to set the same tag twice or something |
17:05:18 | shashlick | but you have a check for it |
17:05:19 | FromGitter | <kaushalmodi> sorry, don't remember much from that experiment |
17:05:22 | Araq | arnetheduck: Yes, I dream of an AST->AST codegen, remember? |
17:05:27 | Calinou | hey, I wonder if there's a way to specify compile flags when installing a package using nimble |
17:05:31 | Araq | also I looked at your travis.yml |
17:05:33 | FromGitter | <kaushalmodi> shashlick: yeah, but something still didn't work |
17:05:34 | Calinou | (such as --passc:-flto) |
17:06:19 | Araq | arnetheduck: how about this. A nim-lang/releases repo that simply lists the commit hashes of the releases |
17:06:31 | shashlick | okay cool |
17:06:53 | Araq | release building updates it automatically, no need to unzip stuff |
17:07:01 | FromGitter | <arnetheduck> yeah, ast-ast is one thing - but barring that, I'm curious why the return-value-to-arg transformation is done in cgen - if there was a compelling reason to put it there? basically, it means I must redo the same logic, as well as the "isresultassigned" logic in `nlvm` |
17:07:20 | Araq | and no freaking commits in koch.nim either. |
17:07:46 | FromGitter | <kaushalmodi> shashlick: about testinstall, I am not developing on Windows env, but I doubt if this same would work on windows too: https://github.com/kaushalmodi/nightlies/commit/6a04cfd550b52e7abb62641d2ee7d1da93719fae#diff-354f30a63fb0907d4ad57269548329e3R125 |
17:07:58 | FromGitter | <kaushalmodi> because I see that you are not doing the koch xz step for windows |
17:08:22 | Araq | compelling reason? not really. It was a C specific problem though. |
17:08:33 | dom96_w | a repo that contains commit hashes? |
17:08:35 | dom96_w | what? |
17:08:51 | dom96_w | This is why you have git tags |
17:10:18 | * | Ven`` quit (Ping timeout: 250 seconds) |
17:12:21 | shashlick | @kaushalmodi: ya, Araq said testinstall is for linux/osx only |
17:12:39 | shashlick | we may have to create a separate test for the windows build |
17:12:47 | shashlick | where no build happens again |
17:14:52 | FromGitter | <arnetheduck> separate repo sounds.. tricky. It's better than nothing at all, but it feels similarly loose to git tags.. for example, if I'm following the 0.19 branch of nim, how do I know which nimble to pick with that? |
17:19:49 | FromGitter | <arnetheduck> at that point, it might be that it's just easier for us to fork nimble and track it the same as nim.. then we can revisit it when the new nim release process with point releases and all has settled down a bit, to see if there's a workflow that's convenient for everyone.. it's really not something worth complicating nim development over |
17:21:24 | FromGitter | <arnetheduck> will you take a patch that allows the specification of a hash to `build_all.sh` and `koch tools` (as command line param)? |
17:25:27 | shashlick | @arnetheduck: this is why I want nimble to evolve separately from the compiler - it should support multiple versions of compilers and update like pip and co |
17:27:07 | FromGitter | <arnetheduck> @shashlick well yeah, that's nice, but my goal is to find *one* version that *just works* :) (and be able to reproduce that 6 months later, should I need to) |
17:28:56 | shashlick | right and that can happen if nimble released independenty |
17:29:11 | shashlick | you can download an older version and stay with if you preferred |
17:30:07 | FromGitter | <arnetheduck> nimble is merely the means - we have no real interest in nimble except as a tool to solve the actual problem we're solving.. nimble however is kind of crucial to the nim "experience" overall - and given it's tight integration with the language and compiler (library lookup paths etc), it's important that we find versions that work well together |
17:31:17 | FromGitter | <arnetheduck> since upstream is selecting such matching versions on a regular basis, we'd love to just follow that and get back to doing our stuff |
17:33:18 | shashlick | that's why I did a POC to evaluate if you can run nimble files without bundling in the entire compiler |
17:33:40 | shashlick | it worked well enough so it is possible to create a nimble that simply runs nim e as a subprocess |
17:35:26 | FromGitter | <arnetheduck> haha, well I'd actually prefer it if nimble files went back to being declarative so they wouldn't require a full language at all - then it would be easier to integrate them in other tooling as well that could do smart stuff with them, and they'd have fewer dependencies and moving parts generally |
17:35:30 | * | nc-x joined #nim |
17:36:34 | shashlick | ya well, I think it might be hard going that far back, but removing the internal compiler dependency is possible |
17:36:36 | FromGitter | <arnetheduck> in addition to that, they could/should have extension points for those custom scenarios, but have the 95% cases covered by declarative |
17:36:49 | nc-x | IMO nimble should be merged with nim. That way we also have one less configuration language. And whichever nim version you build you will have a working package/build manager. |
17:36:54 | shashlick | of course, if you use nimscript that an older compiler doesn't support in the VM, there might be issues |
17:37:43 | shashlick | nc-x: i'm proposing the opposite, a package manager should move faster than a compiler |
17:37:44 | FromGitter | <arnetheduck> for example, for wrappers that would be awesome - you'd have a custom nim script that builds the underlying dependency - but the rest of the nimble file would be discoverable and predictable |
17:38:32 | shashlick | i would think that's possible with nimble today - that's what i'm kind of doing with nimgen wrappers |
17:38:51 | FromGitter | <arnetheduck> the custom part would merely inform the declarative part of the outcome (which libs to link etc), but the whole experience overall would be much less messy |
17:39:22 | nc-x | and no i don't mean adding nimble repo to nim repo. I mean deprecating nimble and adding its features to nim itself. So nimscript file would contain the dependencies as well and `nim build` would do the dependency downloading/checking etc |
17:39:46 | shashlick | ok so that's more step two, are there any concerns with pulling out the compiler from nimble and just using an installed nim? |
17:40:03 | nc-x | the 3 configuration languages for nim is IMO one of the worst things about nim |
17:40:43 | shashlick | well, so nimble is just nimscript with some macros and in my POC, i could treat nimble files as a nimscript file that `nim e` could run just fine |
17:41:22 | shashlick | it would be cool if nim e allowed specifying an entry point but even that can be managed somewhat |
17:42:14 | * | nc-x quit (Quit: Page closed) |
17:43:08 | * | dom96_w quit (Quit: My MacBook has gone to sleep. ZZZzzzβ¦) |
17:43:48 | Araq | arnetheduck: alternative we can make the tag commit messages contain the used C sources and Nimble tags |
17:44:33 | shashlick | why does a package manager version become important for reproducibility |
17:45:04 | Araq | shashlick, I don't know tbh. that travis.yml file from Status wasn't enlightening |
17:45:09 | FromGitter | <arnetheduck> how's that different from a submodule update (except needing a custom parser) |
17:45:34 | Araq | I had really bad experience with git submodules in the past |
17:45:36 | FromGitter | <arnetheduck> well, it's what builds the project - 3 weeks ago, someone updated nimble and our builds broke as a result |
17:46:03 | shashlick | i'm not aware of this travis file |
17:46:17 | Araq | and even assuming these issues have been fixed by now it remains true that I don't understand git submodules well enough. And I don't use what I don't understand. |
17:46:38 | FromGitter | <arnetheduck> yeah, but think about it - a submodule is really nothing but a text file with a hash in it.. putting it in the commit message is.. very similar |
17:46:55 | Araq | it doesn't show up in 'git diff' though |
17:46:59 | Araq | it remains meta-data |
17:47:06 | Araq | that's why it's good. ymmv. |
17:47:19 | FromGitter | <arnetheduck> it does show up in git diff - at least when I used it in the past |
17:47:20 | FromDiscord_ | <PusiteGA> hmm how do i close process if i do an 1 liner |
17:47:22 | FromDiscord_ | <PusiteGA> let wholeVideoDuration : float = startProcess("ffprobe","",getLengOfVideoArgs,nil,{poStdErrToStdOut,poUsePath}).outputStream().readAll().strip().parseFloat(); |
17:47:34 | * | Tyresc joined #nim |
17:48:37 | FromGitter | <arnetheduck> ```code paste, see link``` β β this is nlvm updating the nim version it's tied to [https://gitter.im/nim-lang/Nim?at=5c2cf97593cce97d3bd7d66a] |
17:49:20 | FromGitter | <arnetheduck> oh. you want it to not show up? |
17:49:52 | shashlick | i guess I don't understand the issue - i feel a package manager, like choosenim should evolve in parallel and that ongoing improvement should help iron out compatibility issues |
17:49:55 | * | druonysus joined #nim |
17:49:55 | * | druonysus quit (Changing host) |
17:49:55 | * | druonysus joined #nim |
17:50:04 | shashlick | nimble should have an expanded test framework testing against older versions of nim |
17:50:36 | Araq | I would merge Nimble into Nim's repo but that's ultimately dom96's decision |
17:50:37 | shashlick | but this is far easier if nimble doesn't package in nim altogether since it only carries the compiler, not the stdlibs |
17:51:03 | shashlick | i disagree with that - it still ties nimble heavily with the compiler - no good reason for that |
17:51:05 | FromGitter | <arnetheduck> shashlick, that's fine by me as well, but it should be reflected in the nim release process then |
17:51:26 | Araq | also, side point but 'nimble dump' or similar exists and outputs the crucial information for others |
17:51:45 | shashlick | agreed - nim can provide a nimble binary on ship but nimble update nimble should be used to help keep things moving |
17:52:14 | Araq | arnetheduck: I want it to *not* show up, yes. |
17:52:55 | Araq | and my suggestion makes sense, it's a git tag, it might as well contain useful information |
17:54:58 | FromGitter | <arnetheduck> I don't think I've ever used or seen an annotaded git tag - it's certainly novel :) |
17:56:40 | * | theelous3_ quit (Ping timeout: 250 seconds) |
17:56:41 | shashlick | looks like we already have a way to update nimble - `koch nimble` does what we need |
17:56:51 | Araq | but I got the basic problem right, right? All you want is the (nim commit, nimble commit, csources commit) triple? |
17:56:57 | shashlick | only thing is that koch is not in the bin directory so it isn't accessible - say if nim is installed with choosenim |
17:58:18 | FromGitter | <arnetheduck> hm, more accurately: given a nim commit, I want nimble+csources commits that work with it |
17:58:36 | FromGitter | <kaushalmodi> shashlick, Araq: Hmm Travis times out after just 50 mins, trying to finish running `koch testinstall`: https://github.com/nim-lang/nightlies/issues/4#issuecomment-450934475 |
17:58:42 | * | vivus joined #nim |
17:59:15 | shashlick | I don't think testinstall can be done in the same job - it needs to be run in a separate step after releases are created but before releases are posted. |
17:59:19 | Araq | kaushalmodi: 'koch testinstall' can be trimmed down to only test e.g. 'megatest' |
17:59:21 | FromGitter | <arnetheduck> shashlick, it doestn't do what I need it to do: if I checkout nim 0.17 and run `koch nimble`, it will give a random version that does not work with nim 0.17 |
18:00:09 | shashlick | why wouldn't you use the xz files? that has an exact snapshot |
18:00:32 | Araq | he he, shashlick is following my footsteps |
18:00:35 | FromGitter | <arnetheduck> doh. |
18:01:06 | shashlick | @kaushalmodi, @Araq - looks like tags are working properly now - see my releases page - https://github.com/genotrance/nightlies/releases |
18:01:31 | Araq | shashlick, awesome :-) |
18:01:44 | FromGitter | <kaushalmodi> shashlick: awesome! |
18:01:53 | FromGitter | <arnetheduck> circles, circles.. because we occasionally patch nim and want to use git tools exclusively to help in that process - for example to make it easier to submit patches to upstream |
18:01:57 | FromGitter | <kaushalmodi> minor nitpick.. may be title the stable releases without hash? |
18:02:29 | narimiran | shashlick: very nice! |
18:02:32 | FromGitter | <kaushalmodi> "vx.y.z-hash nightly build" and "vx.y.z stable release"? |
18:02:40 | Araq | is it the stable release though? or the version-0-19 branch? |
18:02:50 | Araq | these are not the same thing... |
18:02:51 | FromGitter | <arnetheduck> also, because git provides a secure hash as part of its tooling. with tarballs, we have to recreate that experience doing manual hashing and stuff |
18:02:56 | shashlick | stable is still a snapshot, assuming version-0-19 continues to evolve |
18:03:04 | FromGitter | <kaushalmodi> Araq: good point |
18:03:11 | FromGitter | <kaushalmodi> yeah, then the hash makes sense |
18:03:23 | shashlick | ok so osx builds are still not up yet |
18:03:44 | shashlick | any way to speed up winrelease? it does koch boot twice as discussed earlier |
18:03:56 | FromGitter | <kaushalmodi> shashlick: yeah, osx lags behind by 10-15 mins usually |
18:04:06 | shashlick | well, that's because there's 8 jobs |
18:04:16 | shashlick | and windows takes 35 minutes whereas linux/osx take 18 mins |
18:04:17 | FromGitter | <arnetheduck> if we were not contributing to nim or if it was less important to us, we'd use the tarballs - but given that we're involved in developing it, git is *the* tool that makes it convenient |
18:04:26 | FromGitter | <kaushalmodi> you might also want to reword the release description, now that we have Windows assets too |
18:04:39 | shashlick | I have |
18:04:56 | * | Snircle quit (Ping timeout: 246 seconds) |
18:05:03 | FromGitter | <kaushalmodi> oh yes, you have! :P |
18:06:14 | FromGitter | <kaushalmodi> .. so the key was to use TRAVIS_TAG |
18:06:14 | FromGitter | <kaushalmodi> nice |
18:06:24 | Araq | can we come to a conclusion now? I'd like to automate 'git tag' with 'koch' anyway, I can make the commit message contain the C source and Nimble hashes, problem solved in ~5 lines of Nim code and automated |
18:06:41 | Araq | yes/no/maybe? |
18:07:05 | shashlick | @kaushalmodi: yep - looks like you went 95% down so was super easy |
18:07:58 | shashlick | one concern is that in the middle of the builds, someone could deliver something to devel and you'd get a different hash for some jobs |
18:08:09 | shashlick | less likely with stable but still possible |
18:08:53 | narimiran | well, it is NIGHTLY β built it at 3am CET, you should be safe :D |
18:09:06 | FromGitter | <kaushalmodi> shashlick: yeah, but that shouldn't matter much |
18:09:27 | shashlick | ya but the tags won't look good! π |
18:09:36 | FromGitter | <kaushalmodi> it's updated every night, so one platform might have a max latency of 2 days compared to other platform |
18:10:19 | FromGitter | <kaushalmodi> shashlick: this is a bad rabbit hole, up to you :P |
18:10:36 | shashlick | @narimiran: 3am CET is 10pm for me |
18:11:10 | shashlick | or 8pm rather |
18:11:21 | shashlick | anyway, small victories |
18:11:59 | narimiran | but there won't be pushes to devel at that time ;) |
18:12:17 | shashlick | bigger ones will be when linux/osx nightlies are binaries and then when choosenim can install a nightly binary |
18:12:38 | FromGitter | <arnetheduck> no/maybe. doesn't solve the branch use case (we patch nim but want to use the same nimble). it's good if it's combined with build_all and koch tools allowing to specify the hash to use, so we can use those to build nim.. a key objective is that we can use upstream build process to produce nim+nimble |
18:13:42 | FromGitter | <arnetheduck> in a way, that would accommodate @shashlick's use case as well, in case `nimble` ever gets more attention than `nim` - because then there's a common and supported way to build a new nimble for an old nim |
18:14:54 | shashlick | so tagging nim to a particular nimble release should be fine, even if nimble becomes more independent of compiler |
18:16:45 | shashlick | however, nimble also has releases and tags so in theory, you could do nimble install nimble@version - curious if @dom96 already enabled that |
18:16:58 | Araq | you lost me again. If you checkout Nim v0.17 why would you keep the current Nimble version? |
18:17:42 | Araq | it's unlikely to work... You need the nimble that belongs to 0.17 as you said it yourself |
18:17:51 | FromGitter | <arnetheduck> well, now that we've talked it through at least twice, I see it more clearly :) there are two separate problems: β β 1) there's no way to specify an exact version of nimble and csources to use when building (the official build instructions just take a random version that happens to be the latest) |
18:18:22 | FromGitter | <arnetheduck> 1) the record of which versions were used are loose / voluntary |
18:19:48 | FromGitter | <arnetheduck> @Araq - yes, it's unlikely to work. but it's the exact case that I want to enable. and actually, not just for 0.17 specifically, but for every commit in between 0.17 and 0.18 for example, and also for my private branch of nim |
18:21:09 | shashlick | so I went to my 0.18.0 install using choosenim, nimble -v shows 0.8.10 |
18:21:22 | shashlick | then I ran nimble install [email protected] and it built successfully |
18:21:58 | shashlick | it is installed to ~/.nimble/pkgs though and does not replace the nimble installed by choosenim and linked to from ~/.nimble/bin |
18:22:02 | FromGitter | <arnetheduck> I'm using 0.17 here as an example which is ridiculously old, but keep in mind that we'll be in the same spot a a year from now, talking about 0.19.. by that time, nimbus will have had an official release, and we will want to create patch releases for it. to do that, we will need to replicate the exact build environment we used to produce it in the first place, meaning we'll be going back in time a year, every time |
18:22:02 | FromGitter | ... we want to fix a bug |
18:22:03 | Araq | btw, csources version tags are Nim version tags |
18:22:24 | shashlick | so in theory, you could checkout an old nim and use nimble to build a specific tag or hash of nimble |
18:22:46 | shashlick | but ya, you still need to know what nim tag links to what nimble tag |
18:23:15 | Araq | shashlick, also since the tar.xz contains Nimble's source code, you can find out its git commit hash. It's messy, but the information is there |
18:23:35 | Araq | you merely have to compare all the file contents ;-) |
18:24:07 | * | rect0x51 joined #nim |
18:25:00 | * | vivus quit (Remote host closed the connection) |
18:25:00 | * | zachk joined #nim |
18:25:24 | FromGitter | <arnetheduck> > btw, csources version tags are Nim version tags β β ok, but `build_all.sh` does not use those tags - that's a missing link |
18:25:38 | shashlick | @kaushalmodi - looks like osx also was uploaded correctly - am pushing this commit to master |
18:25:58 | FromGitter | <kaushalmodi> shashlick: of course! thanks |
18:26:37 | * | zachk quit (Changing host) |
18:26:37 | * | zachk joined #nim |
18:26:49 | rect0x51 | Hey, what's the best plan in getting a working Nim REPL? Are we out of ideas? |
18:27:00 | shashlick | am also going to delete the other stuff on the releases page to clean things up |
18:27:11 | leorize | rect0x51: for starters, there's one: nim secret |
18:27:24 | leorize | and it sorta works |
18:27:42 | leorize | https://github.com/nim-lang/Nim/issues/8927 |
18:27:47 | rect0x51 | leorize: I know, it can't import important module though, right? |
18:27:51 | shashlick | there's also inim |
18:27:53 | shashlick | https://github.com/AndreiRegiani/INim |
18:27:53 | rect0x51 | modules* |
18:27:59 | FromGitter | <kaushalmodi> Araq: About the megatest and travis timing out, will you update koch.nim in Nim devel? |
18:28:07 | FromGitter | <kaushalmodi> Should I open an issue for that? |
18:28:39 | Araq | I'm thinking about it but I think nightlies could use its own koch.nim called build.nim |
18:29:05 | Araq | unless you enjoy this bash script hacking so much :P |
18:29:58 | rect0x51 | Oh ok, so AndreiRegiani made an one after all :P I'll try it out |
18:30:01 | FromGitter | <kaushalmodi> Araq: this won't be in bash script land, right? |
18:30:11 | FromGitter | <kaushalmodi> the testinstall target in Nim core needs to be updated |
18:30:25 | Araq | does it though? |
18:30:42 | Araq | it works, travis times out so travis needs a 'koch shorttestinstall' |
18:30:55 | Araq | and it's not clear that's koch.nim's business |
18:32:59 | shashlick | I don't think we should do this - rather run the full test suite in a separate job |
18:33:18 | FromGitter | <kaushalmodi> shasklick: makes sense, but I don't know how |
18:33:30 | shashlick | need to use build stages |
18:33:33 | FromGitter | <kaushalmodi> may be this comes back to the build phases you mentioned earlier |
18:33:34 | FromGitter | <kaushalmodi> yes |
18:33:59 | rect0x51 | does inim depend on nimscript VM, or is it independent? |
18:34:49 | leorize | it put everything into a file |
18:34:59 | leorize | if it compiles, keep the added lines |
18:35:02 | leorize | if not, remove it |
18:35:14 | leorize | the code is reexecuted for every input |
18:36:00 | rect0x51 | mmm i see, not a true REPL then |
18:36:47 | leorize | see the issue I linked above |
18:36:50 | rect0x51 | since nimscript has some limitations (not designed for this), I guess a proper REPL would require a different VM? |
18:37:05 | leorize | the biggest limitation is that C FFI is not supported |
18:37:17 | Araq | rect0x51, the VM got FFI support in a branch |
18:37:43 | Araq | I don't want it but I won't fight it too heavily since everybody else wants it. |
18:37:53 | * | natrys joined #nim |
18:37:54 | rect0x51 | Araq: ohh |
18:38:24 | shashlick | That's fantastic news |
18:38:44 | shashlick | Araq do we still have the copyMem limitation though? |
18:39:06 | Araq | what is the copyMem limitation? |
18:39:45 | shashlick | When you import some modules it complains that you cannot cause the module allocates memory |
18:39:56 | shashlick | Been a while, need to check back and see |
18:40:19 | Araq | that is still there yes |
18:40:38 | shashlick | Ok |
18:40:50 | FromGitter | <Clyybber> Araq: Why do you not want it? The patch is pretty simple, isn't it? |
18:41:16 | Araq | it's a can of worms. |
18:41:39 | FromGitter | <kaushalmodi> actually before looking into timeouts, I see that koch testinstall has many failures because of: β β ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5c2d05e337975e7ca962cf9a] |
18:42:16 | Araq | FFI calls have "marshalling" semantics, pass a pointer, some blob is updated but its symolic VM representation isn't |
18:43:00 | Araq | how do you debug this thing if it crashes and it will crash |
18:43:37 | Araq | can you run async in the VM? threads? |
18:44:24 | FromGitter | <Clyybber> Maybe its time to use a C interpreter for the VM |
18:44:33 | * | krux02 quit (Remote host closed the connection) |
18:44:36 | * | d10n-work joined #nim |
18:44:41 | FromGitter | <Clyybber> or a fast C compiler |
18:44:52 | * | krux02 joined #nim |
18:44:56 | shashlick | @kaushalmodi need to install node |
18:44:58 | Araq | that would make much more sense IMO |
18:45:10 | Araq | or finally embrace LLVM/nlvm |
18:45:17 | shashlick | Tcc |
18:45:25 | FromGitter | <kaushalmodi> shashlick: yes, reading through https://docs.travis-ci.com/user/languages/javascript-with-nodejs/ |
18:45:36 | FromGitter | <kaushalmodi> i wish they gave one golden way to do it |
18:45:50 | shashlick | No just install it with apt |
18:46:16 | Araq | I'd like to see more action on nlvm to give us a REPL and a better debugging experience |
18:47:05 | Araq | I consider TinyC and libFFI to be deadends. And on my bad days Nim's C's backend too. |
18:47:49 | FromGitter | <kaushalmodi> shashlick: ok, let's see how the next iteration of testinstall fares |
18:48:30 | FromGitter | <arnetheduck> > better debugging experience β β anything specific? |
18:48:54 | shashlick | @kaushalmodi: interestingly nim-lang/nim doesn't install node |
18:49:03 | shashlick | in its travis file |
18:49:26 | FromGitter | <Clyybber> Would it make sense to upstream nlvm to get better exposure and development? |
18:49:28 | Araq | in theory and in practice C code is impossible to generate. Thanks to #define, you never know what symbols are #defined and these cannot be used as struct fields etc. |
18:49:51 | FromGitter | <kaushalmodi> shashlick: hmm wonder how the js tests are running on the nim repo then |
18:50:28 | shashlick | Araq: i've had decent luck with -dD to get defines |
18:50:56 | FromGitter | <kaushalmodi> ah! because of `dist: trusty`? |
18:50:57 | FromGitter | <kaushalmodi> https://docs.travis-ci.com/user/reference/trusty/#javascript-and-nodejs-images |
18:51:53 | FromGitter | <kaushalmodi> *all of this feels like deja vu to me* |
18:54:43 | rect0x51 | nlvm compiles nim directly to llvm IR? |
18:54:51 | Araq | yup |
18:56:07 | Araq | and it's a real IR, not a clusterfuck of broken stuff like "strict aliasing rules that betray C's spirit" or "you need to make your locals volatile when using setjmp" |
18:56:32 | FromGitter | <Clyybber> Is it planned to be upstreamed? |
18:57:47 | Araq | it's not scheduled but some day I'll do it |
18:57:58 | FromGitter | <Clyybber> Nice |
18:58:52 | Araq | and of course my favourite "we won't tell you the contents of your overflow flags" |
18:59:20 | shashlick | Araq: is it possible to speed up the dochack step - perhaps like megatest |
19:00:39 | shashlick | perhaps merge compile all tutorials/examples |
19:03:10 | Araq | do you mean the runnable tests? |
19:03:15 | shashlick | looks like we are doing koch doc0 in linux/osx but winrelease runs dochack which takes much longer |
19:03:17 | shashlick | ya |
19:03:30 | Araq | don't do 'doc0' |
19:03:34 | Araq | do 'doc' instead |
19:03:36 | FromGitter | <Clyybber> @arnetheduck Is {.importc.} working in nlvm? |
19:04:29 | * | quipa quit (Remote host closed the connection) |
19:05:03 | shashlick | Araq: so https://github.com/nim-lang/nightlies/blob/master/.travis.yml#L126 should change to koch doc? |
19:05:30 | * | quipa joined #nim |
19:05:45 | Araq | yeah, doc0 is for me only |
19:06:01 | shashlick | ok will change that |
19:07:00 | shashlick | looks like winrelease effectively does a doc0 |
19:07:07 | shashlick | since it passes in gaCode |
19:07:30 | Araq | hum, but when I wrote that it has some purpose |
19:09:07 | shashlick | ok np will update linux / osx to do koch doc |
19:09:15 | shashlick | still wondering why linux/osx are so much fater |
19:09:16 | shashlick | fater |
19:09:19 | shashlick | fassster |
19:09:20 | * | Snircle joined #nim |
19:09:41 | shashlick | i know winrelease does koch boot again but travis has no timestamps |
19:10:24 | * | quipa quit (Excess Flood) |
19:11:59 | * | quipa joined #nim |
19:12:55 | * | quipa quit (Read error: Connection reset by peer) |
19:15:56 | shashlick | Araq: given we don't post nsis installers anymore and nim is already compiled with the correct arch, do we really need to rebuild in winrelease |
19:15:56 | shashlick | https://github.com/nim-lang/Nim/blob/devel/koch.nim#L351 |
19:19:30 | * | rockcavera joined #nim |
19:22:24 | * | kapil____ quit (Quit: Connection closed for inactivity) |
19:22:45 | Araq | winrelease needs to know its bits |
19:22:56 | Araq | when sizeof(pointer) == 4: |
19:22:56 | Araq | winReleaseArch "32" |
19:22:57 | Araq | when sizeof(pointer) == 8: |
19:22:59 | Araq | winReleaseArch "64" |
19:23:41 | shashlick | that is because winReleaseArch() recompiles everything, my question is why |
19:24:14 | shashlick | so in travis, i install 32bit mingw, then compile csources, then nim so i know everything is 32bit |
19:24:30 | shashlick | then when winrelease is compiled, it is 32bit, along with everything else - so why recompile again? |
19:30:45 | FromGitter | <arnetheduck> @Clyybber `importc`: yes, `header`: no |
19:31:15 | FromGitter | <Clyybber> Nice, gonna try it out now |
19:41:33 | FromGitter | <timotheecour> @araq for your comment here https://github.com/nim-lang/Nim/pull/10150#issuecomment-450714131 on FFI: β `{.push experimental: "allowFFIβ.}` doesnβt work ; `--experimental:allowFFI` works though |
19:45:02 | FromGitter | <arnetheduck> actually @Araq, "you need to make your locals volatile when using setjmp" is still true in llvm - that or some other barrier is needed to not reorder stuff |
19:45:58 | FromGitter | <timotheecour> When the VM starts reaches this point: `if allowFFI notin c.config.features`, even though a prior semantic pass correctly set `c.config.features`, by that time, `c.config.features` is back to empty |
19:47:59 | * | nsf quit (Quit: WeeChat 2.3) |
19:51:00 | FromGitter | <Clyybber> @arnetheduck When running `make compare` building fails: β β ```code paste, see link``` [https://gitter.im/nim-lang/Nim?at=5c2d162492cf4d22423403da] |
19:52:24 | FromGitter | <arnetheduck> yeah, that's the `pie` bug - your distro forces `pie` while `nlvm` builds non-`pie` objects.. https://stackoverflow.com/questions/43367427/32-bit-absolute-addresses-no-longer-allowed-in-x86-64-linux |
19:53:04 | FromGitter | <arnetheduck> need to add `--no-pie` or something like that to the link flags in `nim.cfg` |
19:53:33 | FromGitter | <Clyybber> alright, thanks |
19:53:53 | * | natrys quit (Quit: natrys) |
19:54:29 | shashlick | ok - latest nim nightly releases are posted - https://github.com/nim-lang/nightlies/releases |
19:54:31 | * | ripspin quit (Quit: Leaving) |
19:54:41 | FromGitter | <Clyybber> @arnetheduck When I run make compare it builds Nim + nlvm with nlvm? Is that right? |
19:54:44 | shashlick | @kaushalmodi - already ran into the issue of different hashes π |
19:55:00 | FromDiscord_ | <PusiteGA> so why i cant in catch block echo? |
19:55:53 | FromDiscord_ | <PusiteGA> so why i cant in catch block echo? , my bad |
19:55:55 | FromGitter | <arnetheduck> it builds `nlvm` with nim, then builds `nlvm.self` with `nlvm`, then compares the `llvm IR` that the two produce when building `nlvm.nim` |
19:57:13 | FromGitter | <Clyybber> Ah, makes sense thanks |
19:57:42 | FromGitter | <arnetheduck> there's actually some small bug in there right now I think.. I mostly look at `make test` - some 10% are failing right now - some because of real bugs and some because of unsupported features (emit, header, c++, that kind of stuff) |
19:59:56 | FromGitter | <Clyybber> Why does nlvm build non-pie objects? Is it for better utilizing available registers? |
20:00:18 | FromGitter | <arnetheduck> it's the default and it works for me |
20:01:34 | FromGitter | <arnetheduck> ie the project hasn't gotten far enough to take a stance on such details.. generally, there's a small performance cost to PIE due to extra indirections in some cases, but I haven't really studied it |
20:02:12 | FromGitter | <arnetheduck> if you make a patch to change it to pie, I'll accept |
20:02:30 | FromGitter | <Clyybber> Alright, will do |
20:15:41 | FromDiscord_ | <PusiteGA> yey i made my first github Nim repo π , just a script but its a progress |
20:15:41 | FromDiscord_ | <PusiteGA> https://github.com/kodkuce/SplitVideo-Nim |
20:16:19 | FromDiscord_ | <PusiteGA> go lought if want π |
20:16:20 | FromGitter | <kaushalmodi> PusiteGA: Why are you using semicolons?! |
20:16:23 | narimiran | semicolons? |
20:16:52 | FromGitter | <kaushalmodi> also committing binary to git is not a good idea |
20:17:18 | FromDiscord_ | <PusiteGA> i am just used to writing semicolons |
20:17:26 | narimiran | also give your code some breathing space |
20:17:40 | FromGitter | <kaushalmodi> PusiteGA: If you make your repo a valid nimble project, users can simply do `nimble install https://github.com/kodkuce/SplitVideo-Nim` |
20:18:15 | FromGitter | <kaushalmodi> you can read more about that on https://github.com/nim-lang/nimble#creating-packages |
20:18:58 | FromDiscord_ | <PusiteGA> ye i know about nimbe but, why would anyone need this for a project its just a simple script for terminal |
20:19:13 | FromDiscord_ | <PusiteGA> tought i guess somone could use it for project too |
20:20:22 | FromGitter | <kaushalmodi> PusiteGA: In that case, you can looking into using Travis to generate Release assets |
20:20:44 | FromGitter | <kaushalmodi> i.e. each time you commit to github, the corresponding binary gets updated in your GitHub repo's releases section |
20:20:59 | FromGitter | <kaushalmodi> though, I can understand, setting that for the first time can be very time consuming |
20:21:11 | FromGitter | <kaushalmodi> but once you do it for one Nim project, it's the same for all others |
20:21:59 | FromDiscord_ | <PusiteGA> duno meybe i try some other time atm baby steps π |
20:22:54 | FromGitter | <kaushalmodi> PusiteGA: I understand that. But binaries shouldn't be committed to git. |
20:25:49 | FromDiscord_ | <PusiteGA> removed π |
20:26:13 | FromDiscord_ | <PusiteGA> removed π , anyway whats reson i cant leave binary on git? |
20:26:20 | rect0x51 | PusiteGA: O.O semicolons! (sorry I had to comment) |
20:26:44 | FromDiscord_ | <PusiteGA> ok will remove them but i like semi π |
20:27:06 | FromGitter | <kaushalmodi> PusiteGA: If you stop typing semicolons, you will improve your coding speed significantly :P |
20:27:40 | narimiran | while you're at it, add some spaces after ',' and around operators, etc. |
20:28:05 | FromGitter | <kaushalmodi> PusiteGA: you can google for "why not to commit binaries to git" and will find many posts |
20:28:15 | FromGitter | <kaushalmodi> here's an arbitrary post from those results: https://robinwinslow.uk/2013/06/11/dont-ever-commit-binary-files-to-git/ |
20:28:27 | narimiran | btw, nimpretty can fix some inconsistencies, try it out |
20:28:41 | FromGitter | <kaushalmodi> summary: your repo size will bloat, git is great for text stuff; you lose on diff, blame, etc. for binary file commits |
20:29:08 | FromGitter | <kaushalmodi> also if you have a "bad" binary committed, you risk someone running that by reverting to an older commit containing that binary |
20:29:35 | FromGitter | <kaushalmodi> in short: use git only for stuff *you* create, not what Nim or any other tool creates |
20:29:43 | * | dom96_w joined #nim |
20:30:04 | FromGitter | <kaushalmodi> also that binary won't work for everyone |
20:30:19 | FromGitter | <kaushalmodi> platform dependencies, glibc dependencies, etc |
20:30:23 | rect0x51 | I really want to work on nlvm and repl but I'm 95% sure it's out of my reach :| |
20:30:45 | * | vivus joined #nim |
20:30:54 | * | dom96_w quit (Client Quit) |
20:34:33 | * | Vladar quit (Remote host closed the connection) |
20:35:11 | FromGitter | <zacharycarter> there's already WIP for hot code reloading |
20:35:42 | FromGitter | <zacharycarter> rect0x51: https://github.com/nim-lang/Nim/issues/8927 |
20:36:27 | rect0x51 | zacharycarter: thanks, leorize linked it earlier |
20:38:20 | FromDiscord_ | <PusiteGA> i removed semicolons, but readed late about spaces around operators xD |
20:38:49 | FromDiscord_ | <PusiteGA> tought i noticed when i have semicolons i mix them somethins with : so i think its better to not write them |
20:39:28 | * | kungtotte joined #nim |
20:40:10 | FromDiscord_ | <PusiteGA> nice i killed my script while cleaning up xD |
20:40:21 | FromDiscord_ | <PusiteGA> should test before commit |
20:40:23 | FromGitter | <zacharycarter> ah, my bad - I think a lot of the work is already done |
20:40:37 | FromGitter | <zacharycarter> at least it appears so if you examine the fork / branch |
20:41:47 | * | endragor joined #nim |
20:55:54 | * | narimiran quit (Quit: Leaving) |
20:55:58 | FromDiscord_ | <PusiteGA> hmm, 1 quesiton when i run process if i dont do outputStreem.ReadAll() it continues code even it dident finish process |
20:56:07 | FromDiscord_ | <PusiteGA> hmm, 1 quesiton when i run process if i dont do outputStreem.ReadAll() it continues code even it dident finish process, that normal? |
21:00:28 | * | rockcavera quit (Ping timeout: 245 seconds) |
21:02:07 | * | Trustable quit (Remote host closed the connection) |
21:10:17 | * | abm quit (Quit: Leaving) |
21:30:10 | * | xet7 quit (Quit: Leaving) |
21:30:31 | * | sagax joined #nim |
21:35:13 | rect0x51 | What the heck is a jupyter kernel? I don't get it. |
21:41:18 | FromGitter | <kaushalmodi> Feels great to not have to `import typetraits` just to print a variable type name ( https://gitlab.com/kaushalmodi/kaushalmodi.gitlab.io/commit/eb38c453fddba99192b3a4e554056bd0f7bd571e <-- expand diff for the `nim.org` file). Thanks @timotheecour! |
21:44:38 | * | thomasross quit (Remote host closed the connection) |
21:45:05 | * | thomasross joined #nim |
22:08:07 | rayman22201 | @rect0x51 https://jupyter.org/ It's a popular live coding environment |
22:09:06 | * | MyMind joined #nim |
22:11:13 | * | Sembei quit (Ping timeout: 268 seconds) |
22:15:28 | * | MyMind quit (Ping timeout: 245 seconds) |
22:15:34 | * | Pisuke joined #nim |
22:17:36 | rect0x51 | rayman22201: Like an online REPL or something? |
22:20:12 | * | lritter quit (Ping timeout: 272 seconds) |
22:24:17 | rayman22201 | It's a weird thing to explain. It has "REPL" like features, but it's more like literate coding. You have a browser based WYSIWYG interface where you can write notes, but also you can make little snippets of code that run along with your notes. |
22:24:42 | rayman22201 | It's popular with some data science people |
22:25:14 | rayman22201 | the best way to understand it is to try it: https://jupyter.org/try |
22:28:33 | rayman22201 | The snippets run by sending the little code snippets from the browser to a server that compiles and runs the code, and then sends the result back to browser. The server that actually runs the code is called a "jupyter kernel" and you can swap out different languages / compilers. |
22:29:23 | * | dddddd quit (Ping timeout: 244 seconds) |
22:30:32 | rect0x51 | rayman22201: wow it sounds powerful |
22:34:14 | rect0x51 | do you know which branch is the one where VM got FFI support? |
22:34:50 | FromGitter | <Clyybber> rect0x51: https://github.com/nim-lang/Nim/pull/10150 |
22:38:11 | rayman22201 | Jupyter is ok. Depends on your use case. It has limits. It's good for some research projects lol. |
22:39:25 | rect0x51 | Clyybber: thanks! |
22:39:51 | FromGitter | <Clyybber> np :) |
22:52:51 | * | dddddd joined #nim |
22:54:09 | * | Ven`` joined #nim |
22:54:48 | * | cspar joined #nim |
23:11:17 | * | Geezus42 joined #nim |
23:17:15 | stefanos82 | jupyter has become the standard tool for data scientists and AI / ML / DL researchers |
23:17:37 | stefanos82 | I use it for teaching myself ML |
23:23:55 | * | stefanos82 quit (Remote host closed the connection) |
23:26:06 | shashlick | What is the popular choice for IPC in Nim |
23:26:06 | FromGitter | <Clyybber> @arnetheduck Fixed the issue with PIE being enabled by default: https://github.com/arnetheduck/nlvm/pull/10 |
23:27:22 | FromGitter | <Clyybber> shashlick: dbus always works, doesn't it? |
23:29:03 | FromGitter | <Clyybber> shashlick: Assuming you are not on windows, which I now remember you are :P |
23:30:15 | FromGitter | <Clyybber> But I guess pipes or sockets should do |
23:31:17 | FromGitter | <Clyybber> dbus should also work on windows |
23:34:32 | * | rect0x51 quit (Quit: WeeChat 2.3) |
23:43:40 | * | kinkinkijkin joined #nim |