<< 09-11-2016 >>

00:05:31*ftsf joined #nim
00:11:58*saml_ joined #nim
00:14:44*pregress_ joined #nim
00:15:15*pregressive quit (Read error: Connection reset by peer)
00:28:48*chemist69 quit (Ping timeout: 245 seconds)
00:31:28*chemist69 joined #nim
00:39:13*libman joined #nim
00:42:45*byte512 quit (Ping timeout: 248 seconds)
00:48:32*Trustable quit (Remote host closed the connection)
01:13:03*dmi0 joined #nim
01:31:45*vlad1777d quit (Quit: Leaving)
01:39:33*dmi00 joined #nim
01:40:09*dmi0 quit (Ping timeout: 252 seconds)
02:22:35*boop quit (Ping timeout: 265 seconds)
02:23:03*boop joined #nim
02:27:51*couven92 quit (Ping timeout: 268 seconds)
02:31:58*aaasad joined #nim
02:33:00*chemist69 quit (Ping timeout: 260 seconds)
02:46:11*chemist69 joined #nim
03:02:07*brson quit (Ping timeout: 256 seconds)
03:04:53*ftsf quit (Ping timeout: 258 seconds)
03:05:24*enthus1ast_ joined #nim
03:05:46*enthus1ast_ quit (Read error: Connection reset by peer)
03:05:58*dmi00 quit (Ping timeout: 256 seconds)
03:19:17*brechtm joined #nim
03:23:49*brechtm quit (Ping timeout: 248 seconds)
03:31:52*aaasad_ joined #nim
03:35:32*aaasad quit (Ping timeout: 260 seconds)
03:50:06*saml_ quit (Remote host closed the connection)
03:53:37*ibk joined #nim
03:55:22ibkhow to configure nimble to produce binary name that contain `-`
03:55:23*Dankrad quit (Ping timeout: 256 seconds)
04:05:27*libman quit (Remote host closed the connection)
04:58:17*brson joined #nim
04:58:50*ftsf joined #nim
05:13:41*brson quit (Ping timeout: 248 seconds)
05:17:22*brson joined #nim
05:27:28*brson quit (Ping timeout: 260 seconds)
05:27:48*brson joined #nim
05:32:19*brson quit (Read error: Connection reset by peer)
05:38:01*brson joined #nim
05:43:21*perturbation joined #nim
05:50:03*Senketsu joined #nim
06:01:12*nsf joined #nim
06:56:54def-ibk: nim -o:file-with-dashes c x.nim
06:57:52def-ibk: oh, nimble. maybe just unsupported so far
06:58:20*GustavoLapasta joined #nim
07:09:23*desophos quit (Read error: Connection reset by peer)
07:12:54FromGitter<ephja> well, you do have cfg files
07:34:09*tankfeeder joined #nim
07:41:24*gokr joined #nim
07:50:04FromGitter<gogolxdong> Does Nim implement DES/AES encryption algorithm ?
07:52:04*Arrrr joined #nim
07:52:25flyxgogolxdong: hopefully not. crypto is nothing everybody should write an own implementation for.
07:53:06flyxgogolxdong: just use OpenSSL/LibreSSL/GnuTLS/whatever you want
07:53:40tankfeederI've implement a lot on PicoLisp
07:53:41tankfeederhttps://bitbucket.org/mihailp/tankfeeder/src/aea7dd71f485f5b6631f1d00afa04ce9f0b35948/crypto/?at=default
07:53:46tankfeederfor fun.
07:57:44*brechtm joined #nim
07:58:26*brechtm_ joined #nim
07:59:45*bjz joined #nim
08:00:33*Trustable joined #nim
08:02:17*brechtm quit (Ping timeout: 260 seconds)
08:10:54cheatfategogolxdong: of course nim has
08:11:37cheatfatehttps://github.com/jangko/nimAES
08:11:45flyxoh, did not know that
08:14:18cheatfategogolxdong, and if you need i have twofish and blowfish, but they not published so just ask me
08:17:44cheatfategogolxdong: and also if you still need DES/3DES https://github.com/LucaWolf/des.nim
08:21:10*bjz quit (Read error: Connection reset by peer)
08:27:10*yglukhov joined #nim
08:29:31FromGitter<gogolxdong> Great help,thank you. Shouldn't these be a part of standard lib?
08:30:40FromGitter<ephja> at the very least after a lof of testing then, imo
08:31:09FromGitter<ephja> des.nim has a few tests, so that's a step in the right direction
08:32:15cheatfategogolxdong: i dont think crypto library must be part of stdlib
08:33:26flyxthe problem with crypto is that it should be audited before being used for anything in production
08:33:33FromGitter<ephja> perhaps if there's a formal process involved
08:45:01*bjz joined #nim
08:47:35*aaasad_ quit (Ping timeout: 244 seconds)
09:02:21cheatfatethat's annoying when people say, dont make crypto yourself - dangerous, dont reinvent the wheel - waste of time. But all great inventions made by mankind was experiments with something dangerous, or `reinventing wheel`
09:04:31tankfeederall my crypto code passes NESSIE test vectors, i trust in general.
09:04:32flyxthe difference is that crypto is very thorough specification, one of the few where you actually exactly know what to implement. so there's not really room for inventing something now
09:04:33flyx*new
09:04:59*perturbation quit (Ping timeout: 268 seconds)
09:06:59cheatfatecrypto invented by people and new `crypto primitives` appears all the time, same with `protocols`.
09:07:17cheatfateso there is enough room for everybody to make something new
09:07:39flyxyeah sure. finding a new crypto mechanism is something new. implementing AES is not.
09:08:23cheatfateso what the difference with AES implemented in pure Nim and implemented by openssl?
09:09:05FromGitter<ephja> the amount of developers and reviewers
09:09:58flyxOpenSSL has gone through multiple security audits
09:10:16cheatfateflyx, you are wrong openssl is still as standard
09:10:35flyxI didn't say it isn't
09:10:56cheatfateflyx, and what crypto library you prefer?
09:11:28flyxyou are talking as if I said something bad about OpenSSL
09:11:31flyxI didn't
09:12:12cheatfateok
09:12:21flyxI have not needed crypto functionality in my code, so I did not yet evaluate the available libs
09:13:30FromGitter<ephja> perhaps you misunderstood the term "audit", which is not synonymous with "exploit" ;)
09:15:27cheatfateephja i'm not misunderstood... but why you trust auditors?
09:15:32cheatfatedo you know this people?
09:16:14cheatfatemay be they all work for NSA or any other agency of any other country
09:16:21cheatfatehave you audited them in such way?
09:16:54cheatfateso its impossible to audit code in `crypto way`
09:17:16FromGitter<ephja> it's not impossible, but unlikely considering the fact that the code is available to everyone
09:18:02flyxan audit may also oversee security holes. nobody thinks a successful audit will make the software flawless
09:18:18flyxit just lowers the propability of errors
09:18:38*brson quit (Ping timeout: 258 seconds)
09:19:14cheatfateso if pure nim aes implementation successfully passes test vectors, and source is published, can i use it?
09:19:16flyxwhich is exactly „the crypto way“, because crypto usually depends on improbability of the equivalence of keys and such
09:19:48FromGitter<ephja> and let's hope that less unsafe languages will gain more traction over time
09:21:30*paulmr joined #nim
09:21:34flyxcheatfate: you can use whatever you want. the point is, if you want to minimize the risk of security exploits, it's better to use OpenSSL. for now.
09:21:50cheatfateflyx, and you are wrong one more time
09:22:13cheatfatethat's why we have libressl
09:22:18cheatfateand any other ssls
09:23:14cheatfatethere is no strong security exploits against wide used `crypto primitives`. so implementing `crypto primitive` is safe enough
09:23:44cheatfateflyx, i dont trust openssl because of random generator
09:23:51flyxthe exploits I am talking about are not those in the specification, but those in the implementation
09:24:03flyxif the specification is flawed, any implementation is exploitable
09:24:16FromGitter<ephja> it helps to use a language with better safety constructs, but it's not a panacea
09:24:20*Andris_zbx joined #nim
09:24:35cheatfateephja but nim has better safety than c have
09:24:59*brson joined #nim
09:25:06FromGitter<ephja> I forgot to add "... than C has"
09:25:26flyxif a Nim crypto lib becomes widely used, it may with time have stronger security assurances than OpenSSL
09:25:44flyxand yeah, of course you can go the way and start such a lib
09:26:23cheatfateflyx, but you blame people here in #nim to doing such lib
09:26:36flyxI did not blame anyone
09:27:49cheatfatebut you warn anybody to use broken ssl libs
09:28:04cheatfate`broken`
09:28:39flyxyeah, and I will continue to do so. that does not mean I have anything against people writing such a lib
09:30:00flyxmy point is just that using crypto usually means critical privacy stuff is involved, in which case I think anyone should try and go for the best security assurance available rather than testing out new libs
09:31:30*brson quit (Ping timeout: 268 seconds)
09:33:19*brson joined #nim
09:35:49lg_flyx: software with over then 300K lines of code can't be considered "secure". I'd rather use my son's C# version of rijndael implementation, then bet on openssl stuff
09:37:43cheatfateflyx, also its not a good idea to put all eggs in one basket, because if basket will be `hacked`... all eggs becomes broken...
09:38:36flyxlg_: if it is impossible that 300k lines of code are considered secure, I really wonder how planes keep flying.
09:38:58cheatfateflyx, secure != keep flying...
09:38:59FromGitter<ephja> aliens
09:39:29cheatfateflyx, you so opposite to custom crypto so i'm thinking you are NSA agent :)
09:39:36lg_flyx: that is how ;) https://s-media-cache-ak0.pinimg.com/originals/1a/c8/62/1ac862487c8f729a6f89b90d1fd01d30.jpg
09:40:16flyxcheatfate: well on that ground I don't think it makes any sense to continue this discussion.
09:40:28flyxlg_: good one
09:40:43FromGitter<ephja> that's a questionable conclusion imo ;)
09:43:07*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
09:46:45FromGitter<ephja> "all libraries are secure. man-hours are irrelevant" regards, your average non-NSA agent
09:46:55*bjz joined #nim
09:48:21cheatfateeven using of `secure` library in your application don't guarantee security... `whatsapp` - nice example
09:50:00flyxnothing „guarantees“ anything
09:50:31FromGitter<ephja> statistical probability
09:54:55FromGitter<ephja> in the same way that password cracking is unlikely, but never impossible
09:55:44cheatfateephja: yeah every crypto can be broken via bruteforce...
09:56:57*bjz quit (Read error: Connection reset by peer)
10:04:12*yglukhov_ joined #nim
10:05:03*ftsf quit (Ping timeout: 252 seconds)
10:07:34*yglukhov quit (Ping timeout: 250 seconds)
10:08:21*brson quit (Read error: Connection reset by peer)
10:08:39*yglukhov_ quit (Remote host closed the connection)
10:09:27*yglukhov joined #nim
10:10:45*yglukhov quit (Remote host closed the connection)
10:14:01*yglukhov joined #nim
10:16:53*paulmr quit (Remote host closed the connection)
10:19:30*tankfeeder quit (Quit: Leaving)
10:50:03*bjz joined #nim
11:09:46*brechtm_ quit (Remote host closed the connection)
11:12:18*brechtm joined #nim
11:15:12*couven92 joined #nim
11:18:38*kier quit (Remote host closed the connection)
11:19:00*kier joined #nim
11:19:14*kier quit (Remote host closed the connection)
11:21:12*maattdd quit (Ping timeout: 260 seconds)
11:24:42*Andris_zbx quit (Ping timeout: 250 seconds)
11:34:41*kier joined #nim
11:35:25*kier quit (Remote host closed the connection)
11:35:55*kier joined #nim
11:37:54*dmi00 joined #nim
11:44:37*bjz quit (Ping timeout: 240 seconds)
11:44:45*bjz_ joined #nim
11:50:58*vlad1777d joined #nim
11:57:06*brechtm_ joined #nim
11:59:17*brechtm quit (Ping timeout: 240 seconds)
11:59:46*elrood joined #nim
12:09:30*Arrrr quit (Quit: WeeChat 1.5)
12:11:07*GustavoLapasta quit (Quit: Leaving)
12:20:00FromGitter<MatejLach> Hello, just compiled aporia and have a bit of an issue; it doesn't remember any preferences upon next launch; that is, the preferences are applied, but only until I close the application, what could be the problem?
12:26:29*aaasad joined #nim
12:37:29*brechtm_ quit (Remote host closed the connection)
12:38:46*brechtm joined #nim
12:45:34*aaasad quit (Read error: Connection reset by peer)
12:45:51*aaasad joined #nim
12:46:59*aaasad_ joined #nim
12:51:20*aaasad quit (Ping timeout: 260 seconds)
12:54:27*aaasad_ quit (Ping timeout: 252 seconds)
13:02:48*nsf quit (Quit: WeeChat 1.6)
13:08:58*cheatfate_ joined #nim
13:12:08*cheatfate quit (Ping timeout: 245 seconds)
13:14:57*couven92 quit (Read error: Connection reset by peer)
13:37:05*tankfeeder joined #nim
13:37:29*tankfeeder left #nim (#nim)
13:40:06*dddddd joined #nim
13:51:09yglukhovAraq: hi. there's a slight issue with dyncalls.nim, specifically that its using stderr in case of errors and there's no way to override this. this is especially bad on android where stderr gets nowhere. i would suggest using errorMessageWriter, but its a bit tricky because its interface is not appropriate for how dyncalls logs its errors.
13:51:35*arnetheduck joined #nim
13:53:02yglukhovAraq: so my current idea is to change errorMessageWriter interface in a breaking way from proc(s: string) to proc(openarray[cstring])
13:58:02*nsf joined #nim
14:03:12FromGitter<ephja> @MatejLach I dunno, but there are good plugins for more featureful editors
14:06:29*perturbation joined #nim
14:10:33*bjz_ quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
14:21:32*couven92 joined #nim
14:37:52*gokr quit (Ping timeout: 256 seconds)
14:55:56*abeaumont quit (Ping timeout: 260 seconds)
15:03:05*miere joined #nim
15:06:44*lg_` joined #nim
15:07:11*lg_` is now known as zevlg
15:09:26*lg_ quit (Ping timeout: 268 seconds)
15:11:17*elrood_ joined #nim
15:13:41*elrood quit (Ping timeout: 256 seconds)
15:20:20*zevlg` joined #nim
15:22:38*zevlg quit (Ping timeout: 256 seconds)
15:28:14*pregress_ quit (Remote host closed the connection)
15:28:48*pregressive joined #nim
15:33:33*pregressive quit (Ping timeout: 260 seconds)
15:34:41*perturbation quit (Ping timeout: 258 seconds)
15:42:07*Andris_zbx joined #nim
15:43:30*cheatfate_ quit (Read error: Connection reset by peer)
15:50:56*cheatfate joined #nim
15:59:02*gokr joined #nim
16:05:56*pregressive joined #nim
16:09:13*couven92 quit (Read error: Connection reset by peer)
16:18:23*ibk quit (Quit: Connection closed for inactivity)
16:25:49*yglukhov_ joined #nim
16:26:56*gokr quit (Ping timeout: 260 seconds)
16:29:20*yglukhov quit (Ping timeout: 246 seconds)
16:30:00*yglukhov_ quit (Ping timeout: 244 seconds)
16:30:14*Andris_zbx quit (Quit: Leaving)
16:37:24*brson joined #nim
16:59:56*abeaumont joined #nim
17:20:57*vendethiel joined #nim
17:23:22*libman joined #nim
17:29:12*Snircle quit (Quit: Textual IRC Client: www.textualapp.com)
17:33:44*vendethiel quit (Ping timeout: 246 seconds)
17:35:22*vendethiel joined #nim
18:02:08*ofelas quit (Quit: shutdown -h now)
18:03:11*yglukhov joined #nim
18:07:39*yglukhov quit (Ping timeout: 268 seconds)
18:08:37*ofelas joined #nim
18:15:48*Dankrad joined #nim
18:22:01*brechtm quit (Ping timeout: 260 seconds)
18:23:41*Senketsu quit (Read error: Connection reset by peer)
18:27:39*Trustable quit (Remote host closed the connection)
18:34:59*desophos joined #nim
18:37:37*yglukhov joined #nim
18:52:56*desophos quit (Ping timeout: 260 seconds)
18:53:22*desophos joined #nim
18:55:57*planhths joined #nim
18:58:43planhthshow are macros evaluted when they are passed as pragmas?
19:00:04yglukhovproc myProc() {.myMacro.} = echo "hi" is rewritten to: myMacro(proc myProc() = echo "hi")
19:05:04*desophos quit (Ping timeout: 260 seconds)
19:05:31*yglukhov quit (Remote host closed the connection)
19:05:35planhthslet me try it
19:06:38*yglukhov joined #nim
19:10:41yglukhovdom96: ping
19:19:03*yglukhov quit (Remote host closed the connection)
19:24:09planhthsdoes not compile, I asked because of this:
19:24:10planhthsimport macros
19:24:12planhthsmacro newMacro*(a, b: untyped): untyped =
19:24:13planhths result = b
19:24:15planhths echo "First"
19:24:16planhthsmacro secondMacro(p: untyped): untyped =
19:24:18planhths result = p
19:24:19planhths echo "Second"
19:24:21planhthsnewMacro 1:
19:24:22planhths proc newStr(): string {.secondMacro.} = echo "hello"
19:24:24planhthsecho newStr()
19:24:25planhthssorry
19:27:25*yglukhov joined #nim
19:27:47dom96yglukhov: sup
19:29:13yglukhovdom96: hey, so i'm abserving a strange issue with nimble. i can see it only in my docker container.
19:30:22dom96yglukhov: tell me more :)
19:30:52yglukhovdom96: the container has nim and nimble installed. if i try to install anything (eg nake), i'm observing this: https://gist.github.com/yglukhov/b5ed1dc51ba69e3791f024ba24340a11
19:31:16planhthsmy bad I misunderstood it
19:32:31yglukhovplanhths: sorry, missed your comments. stupid laptop goes offline when monitor sleeps.
19:32:51planhthsits ok yglukhov
19:33:16yglukhovplanhths: so is your question still open or have you figured it out?
19:34:20planhthsI am a bit confused about in which order are macros evaluted
19:34:23yglukhovdom96: oh btw. could you pls take a look at my pr to nim?
19:35:16yglukhovdom96: https://github.com/nim-lang/Nim/pull/5011
19:35:18dom96yglukhov: hrm, I suppose I need to tag a new release
19:35:27dom96https://github.com/nim-lang/nimble/commit/d854bc64c85645f38e0133663c06c996df96f7dc
19:35:36dom96That problem should be fixed through that
19:35:48*dmi00 quit (Ping timeout: 258 seconds)
19:36:06yglukhovdom96: no.
19:36:23yglukhovdom96: i have latest nimble. and have your patch in the nimble file.
19:37:13yglukhovdom96: but i think i'm starting to understand the problem... dirExists is relative to pwd. and i've got src dir in pwd.
19:38:05dom96oh
19:38:10dom96that makes sense :\
19:38:51dom96I'm not sure what I should do, is this dirExist's fault?
19:38:58dom96*dirExists'
19:39:53dom96I merged your PR
19:40:04yglukhovdom96: i don't think so. dirExists is fine i guess. but you're misusing it. maybe slurp? its relative to _this_ file.
19:40:32yglukhovthats surely a hack though. but might work =)
19:40:38dom96that sucks
19:41:13yglukhovalso staticExec is relative, afair?
19:41:14dom96One of the reasons for nimscript support in Nimble is to remove the need for specifying versions multiple times
19:41:47dom96but wait
19:41:53dom96hrm
19:42:05dom96I just don't see why it would be relative to PWD>
19:42:12yglukhovdom96: by slurp, i mean you can replace your dirExists condition with smth like if slurp("src/nimblepkg/common.nim") != nil: ...
19:42:30yglukhov* s/if/when/
19:42:43*miere quit ()
19:44:00yglukhovplanhths: ok, as far as i understood your code (which has completely messed up indentaion). you're defining a proc (with applied secondMacro) inside an ast passed to newMacro. thats correct?
19:45:07yglukhovdom96: well, all generic things that work with fs usually accept either absolute or relative-to-cur-dir paths. right? =)
19:45:32yglukhovdom96: thanks for merge
19:46:12planhthsyglukhov: yep
19:46:34dom96yglukhov: yes, but if you think about it a `dirExists` inside a .nimble file should be relative to that .nimble file I think
19:48:05dom96yglukhov: In any case, please create an issue somewhere. Maybe as a workaround you can downgrade Nimble?
19:48:23yglukhovplanhths: the order is defined by typed/untyped args of the most external macro. since your newMacro takes untyped it means, that no semantic check should be done to ast that you're passing as untyped.
19:48:35yglukhovdoes that make sense?
19:48:40planhthsyep
19:48:58planhthsthank you yglukhov
19:49:04yglukhovanytime =)
19:52:55yglukhovdom96: why would dirExists behave differently in nimble file? nimble file is just a nimscript.
19:54:01yglukhovdom96: as i'm seeing it, current dirExists behavior is the only one possibly correct.
19:55:50dom96sorry, i gotta go, bbl
19:55:57yglukhovsee you
20:00:57*nsf quit (Quit: WeeChat 1.6)
20:02:18*planhths quit (Quit: Konversation terminated!)
20:04:11*markedone joined #nim
20:09:05*markedone quit (Quit: http://quassel-irc.org - ??????????? ?????. ??????.)
20:09:43*PMunch joined #nim
20:09:47*planhths joined #nim
20:14:37*planhths quit (Remote host closed the connection)
20:30:12*GustavoLapasta joined #nim
20:35:09*cheatfate_ joined #nim
20:36:32*tinAndi joined #nim
20:38:39*cheatfate quit (Ping timeout: 252 seconds)
20:39:07*markedone joined #nim
20:46:06*markedone quit (Remote host closed the connection)
20:46:48*markedone joined #nim
20:49:02*brson quit (Ping timeout: 256 seconds)
20:52:12*joequery joined #nim
20:56:55*bjz joined #nim
20:56:55*cheatfate_ is now known as cheatfate
21:02:24*brson joined #nim
21:15:53*GustavoLapasta quit (Quit: Leaving)
21:22:20*nsf joined #nim
21:35:18*Matthias247 joined #nim
21:56:28*joequery quit (Read error: Connection reset by peer)
21:56:59*dmi0 joined #nim
22:04:17*djellemah quit (Ping timeout: 244 seconds)
22:05:52*Trustable joined #nim
22:06:44*bjz quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
22:20:32*elrood_ quit (Quit: Leaving)
22:26:22*pregressive quit ()
22:28:13*pregressive joined #nim
22:32:15*pregressive quit (Client Quit)
22:45:39*djellemah joined #nim
22:47:08*brson quit (Ping timeout: 245 seconds)
22:50:34*brson joined #nim
23:01:05*xet7 quit (Quit: Leaving)
23:03:49*xet7 joined #nim
23:09:06*nsf quit (Quit: WeeChat 1.6)
23:12:33*tinAndi quit (Ping timeout: 245 seconds)
23:16:31*cheatfate_ joined #nim
23:19:59*cheatfate quit (Ping timeout: 252 seconds)
23:20:23*cheatfate_ is now known as cheatfate
23:21:21*Trustable quit (Remote host closed the connection)
23:28:37*markedone quit (Remote host closed the connection)
23:35:38*dmi0 quit (Ping timeout: 256 seconds)
23:36:54*desophos joined #nim
23:49:41*brson quit (Ping timeout: 244 seconds)
23:52:12*Matthias247 quit (Read error: Connection reset by peer)