Logs: freenode/#haskell
| 2020-11-06 08:00:00 | hackage | morloc 0.33.0 - A multi-lingual, typed, workflow language https://hackage.haskell.org/package/morloc-0.33.0 (arendsee) |
| 2020-11-06 08:00:04 | × | pera quits (pera@gateway/vpn/mullvad/pera) (Ping timeout: 246 seconds) |
| 2020-11-06 08:00:34 | <sclv> | w00t |
| 2020-11-06 08:01:11 | → | alp joins (~alp@2a01:e0a:58b:4920:2d40:19c5:99d8:c050) |
| 2020-11-06 08:01:47 | <loximann> | I guess the environment file .ghc_hide/x86_64-linux-8.8.4/environments/default was broken somehow |
| 2020-11-06 08:01:53 | <loximann> | I'll look into that. Thanks :-) |
| 2020-11-06 08:02:12 | <sclv> | cabal can write to it depending on the version and configuration |
| 2020-11-06 08:02:14 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 2020-11-06 08:02:19 | × | codygman quits (~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Read error: Connection reset by peer) |
| 2020-11-06 08:02:27 | → | codygman joins (codygman@gateway/vpn/privateinternetaccess/codygman) |
| 2020-11-06 08:02:56 | → | pera joins (~pera@unaffiliated/pera) |
| 2020-11-06 08:03:30 | → | thir joins (~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) |
| 2020-11-06 08:04:20 | <loximann> | Weird. All the packages seem to be listed in the environment file |
| 2020-11-06 08:05:02 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-06 08:06:34 | → | kritzefitz joins (~kritzefit@fw-front.credativ.com) |
| 2020-11-06 08:06:37 | → | pthariensflame joins (~pthariens@068-189-075-144.res.spectrum.com) |
| 2020-11-06 08:06:51 | × | pthariensflame quits (~pthariens@068-189-075-144.res.spectrum.com) (Client Quit) |
| 2020-11-06 08:07:11 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-06 08:07:57 | <loximann> | Alright, apparently there was a left over cache lock? I removed .ghc/x86_64-linux-8.8.4/package.conf.d/package.cache.lock and it all seems to work |
| 2020-11-06 08:08:26 | × | thir quits (~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
| 2020-11-06 08:10:50 | <loximann> | Thanks a lot for your help! :-D |
| 2020-11-06 08:12:57 | → | jedws joins (~jedws@101.184.150.81) |
| 2020-11-06 08:14:01 | → | mdunnio joins (~mdunnio@208.59.170.5) |
| 2020-11-06 08:14:49 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 2020-11-06 08:14:54 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-06 08:15:09 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2020-11-06 08:16:14 | <Uniaika> | have a nice one, loximann :) |
| 2020-11-06 08:16:18 | → | todda7 joins (~torstein@ppp-2-84-30-242.home.otenet.gr) |
| 2020-11-06 08:17:21 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-06 08:18:37 | → | m0rphism joins (~m0rphism@HSI-KBW-095-208-098-207.hsi5.kabel-badenwuerttemberg.de) |
| 2020-11-06 08:18:45 | × | mdunnio quits (~mdunnio@208.59.170.5) (Ping timeout: 240 seconds) |
| 2020-11-06 08:19:27 | × | Sgeo quits (~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer) |
| 2020-11-06 08:20:54 | → | jbox joins (~atlas@unaffiliated/jbox) |
| 2020-11-06 08:22:01 | hackage | yesod-auth 1.6.10.1 - Authentication for Yesod. https://hackage.haskell.org/package/yesod-auth-1.6.10.1 (MichaelSnoyman) |
| 2020-11-06 08:22:10 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-06 08:23:54 | <jchia> | Without using temp files or writing to another file, how can I remove lines with a certain prefix from a UTF-8 text file using only memory that scales with the size of the prefix or at most the size of the longest line? I know the idea but want to know how to express it elegantly in Haskell. |
| 2020-11-06 08:24:37 | <jchia> | i can even simplify the problem and say the file encoding is latin-1. |
| 2020-11-06 08:25:11 | <pjb> | read line, write line or not, repeat. |
| 2020-11-06 08:25:15 | <jophish> | sed '/^prefix/d' |
| 2020-11-06 08:25:43 | <jchia> | jophish: I know sed can do it. I just want to do it simply in Haskell |
| 2020-11-06 08:25:46 | <pjb> | The trick is that either you open the file twice, or you just between the read position and the write position. |
| 2020-11-06 08:25:55 | <jchia> | pjb: If I write to the file while reading, will I get data corruption? |
| 2020-11-06 08:26:00 | <pjb> | Nope. |
| 2020-11-06 08:26:09 | <pjb> | Because you are only _removing_ lines. |
| 2020-11-06 08:26:23 | <jchia> | pjb: open with two handles, one for read one for write? |
| 2020-11-06 08:26:48 | <pjb> | Well, you have to be careful, because if you remove a small line, while copying a big following lines, indeed you would have an overlap. |
| 2020-11-06 08:27:00 | <pjb> | Better to use fixed buffers. |
| 2020-11-06 08:28:04 | <pjb> | The simpliest is to use a temporary file. |
| 2020-11-06 08:28:55 | → | jff joins (~Thunderbi@a109-49-149-2.cpe.netcabo.pt) |
| 2020-11-06 08:29:08 | <jchia> | I'll just do it the naive way. It's not a real problem I have to solve as the file is not that big. Just wondering if there is an elegant way to do it with a low memory footprint. |
| 2020-11-06 08:29:34 | × | jedws quits (~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 2020-11-06 08:29:41 | <pjb> | If the file can be read entirely in RAM, then indeed, read, split, delete, write. |
| 2020-11-06 08:29:59 | <pjb> | In that case you may use a single file, if you have access to a truncate(2) syscall. |
| 2020-11-06 08:30:01 | hackage | yesod-persistent 1.6.0.5 - Some helpers for using Persistent from Yesod. https://hackage.haskell.org/package/yesod-persistent-1.6.0.5 (MichaelSnoyman) |
| 2020-11-06 08:30:18 | <pjb> | It's not in POSIX, but in BSD and Linux. |
| 2020-11-06 08:32:13 | × | watt749 quits (~watt749@124.123.105.19) (Remote host closed the connection) |
| 2020-11-06 08:32:36 | → | watt540 joins (~watt540@124.123.105.19) |
| 2020-11-06 08:32:44 | <merijn> | pjb: Why even bother "removing lines"? |
| 2020-11-06 08:32:47 | → | borne joins (~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de) |
| 2020-11-06 08:32:51 | → | christo joins (~chris@81.96.113.213) |
| 2020-11-06 08:33:12 | <pjb> | fixed-size record files are easier to work with. |
| 2020-11-06 08:33:17 | <merijn> | You just gotta keep track of the end of the last "keep" line and copy the next "keep" line after there |
| 2020-11-06 08:33:28 | <merijn> | You can never overlap data you care about that way |
| 2020-11-06 08:33:40 | <merijn> | Since you only ever copy data "forward" |
| 2020-11-06 08:34:17 | <merijn> | jchia: It can be done, whether it's worth the effort is the real question |
| 2020-11-06 08:35:30 | × | hive-mind quits (~hivemind@rrcs-67-53-148-69.west.biz.rr.com) (Ping timeout: 272 seconds) |
| 2020-11-06 08:38:32 | → | hive-mind joins (~hivemind@rrcs-67-53-148-69.west.biz.rr.com) |
| 2020-11-06 08:38:57 | <tomsmeding> | can be a nice learning task I guess, it's not too hard to do it this way |
| 2020-11-06 08:39:11 | × | watt540 quits (~watt540@124.123.105.19) (Remote host closed the connection) |
| 2020-11-06 08:39:14 | <tomjaguarpaw> | Is there a simple and well-maintained CI setup for Haskell packages that people recommend these days? |
| 2020-11-06 08:39:22 | × | christo quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 2020-11-06 08:39:23 | <tomjaguarpaw> | I have been using Travis, but the writing is on the wall. |
| 2020-11-06 08:39:30 | hackage | yesod-auth-oauth 1.6.0.2 - OAuth Authentication for Yesod. https://hackage.haskell.org/package/yesod-auth-oauth-1.6.0.2 (MichaelSnoyman) |
| 2020-11-06 08:40:15 | → | watt001 joins (~watt001@124.123.105.19) |
| 2020-11-06 08:42:59 | × | codygman quits (codygman@gateway/vpn/privateinternetaccess/codygman) (Ping timeout: 256 seconds) |
| 2020-11-06 08:43:12 | → | codygman joins (codygman@gateway/vpn/privateinternetaccess/codygman) |
| 2020-11-06 08:43:46 | <merijn> | Github Actions? :p |
| 2020-11-06 08:44:28 | × | pera quits (~pera@unaffiliated/pera) (Ping timeout: 256 seconds) |
| 2020-11-06 08:45:13 | × | Sanchayan quits (~Sanchayan@223.226.118.59) (Ping timeout: 246 seconds) |
| 2020-11-06 08:46:14 | × | pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!) |
| 2020-11-06 08:49:05 | → | mimi_vx joins (~mimi@tulipan.habr.nat.praha12.net) |
| 2020-11-06 08:50:10 | → | o1lo01ol1o joins (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) |
| 2020-11-06 08:50:26 | <Uniaika> | tomjaguarpaw: GitHub Actions |
| 2020-11-06 08:51:37 | → | jedws joins (~jedws@101.184.150.81) |
| 2020-11-06 08:51:54 | <tomjaguarpaw> | I mean is there simple and well-maintained Haskell code to use the CI service :D |
| 2020-11-06 08:52:14 | × | mimi1vx quits (~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4) (Ping timeout: 264 seconds) |
| 2020-11-06 08:53:12 | × | alexelcu quits (~alexelcu@142.93.180.198) (Quit: ZNC 1.8.2 - https://znc.in) |
| 2020-11-06 08:53:22 | <dminuoso> | tomjaguarpaw: gitlab-ci+gitlab-runner |
| 2020-11-06 08:53:31 | <dminuoso> | Jenkins |
| 2020-11-06 08:53:39 | <dminuoso> | Anything that can run a single `cabal build` works for 95% of hackage. |
| 2020-11-06 08:53:47 | <dminuoso> | (Or stack equivalent) |
| 2020-11-06 08:54:01 | → | LKoen joins (~LKoen@53.253.88.92.rev.sfr.net) |
| 2020-11-06 08:54:02 | → | alexelcu joins (~alexelcu@142.93.180.198) |
| 2020-11-06 08:54:33 | × | jedws quits (~jedws@101.184.150.81) (Client Quit) |
| 2020-11-06 08:54:40 | × | o1lo01ol1o quits (~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 246 seconds) |
| 2020-11-06 08:54:51 | <dminuoso> | Fundamentally, my gitlab ci jobs do nothing more than `cabal build ...; cp $(cabal-plan list-bin ...) ...` |
| 2020-11-06 08:55:14 | × | jespada quits (~jespada@90.254.245.49) (Ping timeout: 264 seconds) |
| 2020-11-06 08:56:18 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 265 seconds) |
| 2020-11-06 08:56:54 | → | jespada joins (~jespada@90.254.245.49) |
| 2020-11-06 08:57:27 | → | Sanchayan joins (~Sanchayan@223.226.118.59) |
All times are in UTC.