profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/chshersh/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Dmitrii Kovanikov chshersh @kowainik London, UK kodimensional.dev Passionate Haskell Developer, @bindthegap editor-in-chief, #Learn4Haskell mentor. See @kowainik for most of my work.

haskell/cabal 1287

Official upstream development repository for Cabal and cabal-install

kowainik/summoner 610

๐Ÿ”ฎ ๐Ÿ”ง Tool for scaffolding batteries-included production-level Haskell projects

jagajaga/FP-Course-ITMO 560

Slides and other materials for functional programming lectures ITMO university

kowainik/cake-slayer 100

๐Ÿฐ๐Ÿ”ช Architecture of Haskell backend applications

kowainik/slist 45

โ™พ๏ธ Sized list

kowainik/idris-patricia 21

๐ŸŒ‹ Idris implementation of patricia tree

kowainik/life-sync 21

๐Ÿ”„ Synchronize personal configs across multiple machines

chshersh/chshersh.github.io 6

:yellow_heart: My website

chshersh/rogue-lang 4

Compiler for Rogue programming language

PullRequestReviewEvent

Pull request review commentkowainik/summoner

[#519] Implement a golden generator executable

 library                      , validation-selective ^>= 0.1.0.0  executable summon-  import:              common-options+  import:              common-options, exe-options   hs-source-dirs:      app   main-is:             Cli.hs   build-depends:       summoner -  ghc-options:         -threaded-                       -rtsopts-                       -with-rtsopts=-N+executable gg+  import:              exe-options+  hs-source-dirs:      golden+  main-is:             Main.hs+  build-depends:       base

I wasn't able to use common-options here because GHC outputs warning that base is not used in this executable (due to -Wunused-packages) ๐Ÿ˜’ So I don't use relude and warnings in this simple small file, just base, no ketchup, raw base

chshersh

comment created time in 5 hours

PR opened kowainik/summoner

[#519] Implement a golden generator executable tests

This PR implements gg โ€” a golden generator executable. It regenerates and updates on disk the content of all projects, scripts and default TOML config. It is useful when doing some massive boring updates (e.g. adding/removing GHC version support). With gg you can just change the main Summoner code and just run crun gg to update all the projects.

The second commit in this PR shows an example of updating years in all projects using gg.

It might be counter-intuitive to use gg to generate tests and then test against tests themselves. But the main idea is that you usually don't use gg after each change. Golden tests ensure that nothing changes unexpectedly. However, when changing e.g. GHC version you expect changes in golden tests. So you can quickly regenerate them, check the diff to verify that the changes look ok and submit them ๐Ÿ™‚ If gg generated some unexpected results, you can always clean the mess with git because all the projects under the version control :octocat:

+347 -252

0 comment

19 changed files

pr created time in 6 hours

push eventkowainik/summoner

Veronika Romashkina

commit sha 3f66f31358b3283add97976957e46a2051c63bb3

[#547] Support GHC 8.10.7 (#548) * [#547] Support GHC 8.10.7 Resolves #547 * Update summoner-cli/src/Summoner/GhcVer.hs Co-authored-by: Dmitrii Kovanikov <kovanikov@gmail.com> * Fix Co-authored-by: Dmitrii Kovanikov <kovanikov@gmail.com>

view details

push time in 8 hours

delete branch kowainik/summoner

delete branch : vrom911/547-Support-GHC-8107

delete time in 8 hours

PR merged kowainik/summoner

[#547] Support GHC 8.10.7 ghc

Resolves #547

+46 -45

0 comment

26 changed files

vrom911

pr closed time in 8 hours

issue closedkowainik/summoner

Support GHC 8.10.7

It's out and contains several bugfixes:

  • https://www.haskell.org/ghc/blog/20210814-ghc-8.10.6-released.html

But Stackage doesn't support it at the moment.

  • https://www.stackage.org/

closed time in 8 hours

chshersh

Pull request review commentkowainik/summoner

[#547] Support GHC 8.10.7

 baseVerPvp = \case     Ghc844  -> Pvp 4 11 1 0     Ghc865  -> Pvp 4 12 0 0     Ghc884  -> Pvp 4 13 0 0-    Ghc8103 -> Pvp 4 14 1 0+    Ghc8107 -> Pvp 4 14 1 0

They bumped minor version for base in minor GHC releases ๐Ÿ˜’

    Ghc8107 -> Pvp 4 14 3 0
vrom911

comment created time in 12 hours

PullRequestReviewEvent
PullRequestReviewEvent

startedtfausak/evoke

started time in 3 days

startederkal/kite

started time in 5 days

Pull request review commentJoshuaTy/learn4haskell

Chapter4 challenge

 Can you implement a monad version of AND, polymorphic over any monad? ๐Ÿ•ฏ HINT: Use "(>>=)", "pure" and anonymous function -} andM :: (Monad m) => m Bool -> m Bool -> m Bool-andM = error "andM: Not implemented!"+andM  mbA mbB = mbA >>= (\a -> if a == False then pure a else mbB >>= (\b -> pure $ b && a))

That's the correct solution ๐Ÿ‘๐Ÿป You can simplify it a little bit like this:

andM  ma mb = ma >>= \a -> if a then mb else pure False
JoshuaTy

comment created time in 6 days

PullRequestReviewEvent
PullRequestReviewEvent

startedCopilot-Language/copilot

started time in 9 days

startedXAMPPRocky/tokei

started time in 9 days

startedmbj/mutant

started time in 10 days

startedfacundoolano/rpg-cli

started time in 10 days

pull request commentJoshuaTy/learn4haskell

Chapter2 challenge

@JoshuaTy The PR looks great ๐Ÿ‘๐Ÿป I think it's finished and can be merged ๐Ÿ

JoshuaTy

comment created time in 10 days

pull request commentJoshuaTy/learn4haskell

Chapter1 challenge

@JoshuaTy The PR looks great ๐Ÿ‘๐Ÿป I think it's finished and can be merged ๐Ÿ

JoshuaTy

comment created time in 10 days

pull request commentHolmusk/servant-hmac-auth

Servant 0.18 & increase upper-bounds

Hi @ocharles! Thanks for reaching out ๐Ÿค— We don't maintain this library anymore because we don't work at Holmusk. I can recommend reaching out to @arbus or writing an email to tech@holmusk.com if you're interested in maintaining this library.

ocharles

comment created time in 14 days

startedtonyday567/hecklist

started time in 15 days

push eventkowainik/github-graphql

dependabot[bot]

commit sha ba0545bf68e6355381ea0d8e985f9378eb6a6839

GA(deps): Bump actions/checkout from 2 to 2.3.4 (#39) Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 2.3.4. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v2...v2.3.4) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

dependabot[bot]

commit sha 3830ee5c92d0943c0ea7067b67e0d14926bab547

GA(deps): Bump actions/cache from 2.1.5 to 2.1.6 (#40) Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6. - [Release notes](https://github.com/actions/cache/releases) - [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

view details

Dmitrii Kovanikov

commit sha 999e69dd1c3335af76ad19b9f6e5606cc9fe749d

[#35] Support querying Milestone by number and add helper query to get milestone by number Resolves #35

view details

Dmitrii Kovanikov

commit sha 113805f6bdef61c0070e6d1cd6381149282d16d1

Add query for MilestoneId, improve JSON parsing ergonomics

view details

Dmitrii Kovanikov

commit sha cb02ec472a91e5669bf97c6576ff8440cfffbfcc

Update reexports

view details

Dmitrii Kovanikov

commit sha 06b38b9354f39ce167901cffdd2c1b2418d47ce5

Derive more instances

view details

Dmitrii Kovanikov

commit sha 83b400147fd87b600ae2b2f49be72a7aa7733930

Add more ids

view details

Dmitrii Kovanikov

commit sha e6d084938c137df167e698c7f8eddc1e2f43eb43

Add milestone description

view details

Dmitrii Kovanikov

commit sha 9ef593b39a7dfbe44bab1b891b0b127332bb694f

[#38] Improve error messages reporting Resolves #38

view details

Dmitrii Kovanikov

commit sha 4827d3f6a4d17b8e28764696f1529c9f964f71d7

Improve error messages

view details

Dmitrii Kovanikov

commit sha 9992869ab1f0676ee180344e0fc935b9c472f5ce

Add states to milestone

view details

Dmitrii Kovanikov

commit sha fbdad78cb4c1d497ef3105de84e971a32e1f61b7

Fix after review

view details

push time in 19 days

push eventkowainik/github-graphql

Dmitrii Kovanikov

commit sha 8a5aa8164a461b5aaffe1ee8af1b1ab527b9fad2

Fix after review

view details

push time in 19 days

startedfacebookincubator/Glean

started time in 19 days

pull request commentkowainik/tomland

Allow megaparsec 9.1

@bergmark Why is this blocking Stackage? We removed all Kowainik packages from Stackage previously exactly because we don't want to block Stackage:

  • https://github.com/commercialhaskell/stackage/pull/5965
felixonmars

comment created time in 20 days

PR closed kowainik/learn4haskell

Reviewers
Chapter4 challenge hacktoberfest-accepted chapter4

Solutions for Chapter {4}

cc @vrom911 @chshersh

+568 -91

1 comment

4 changed files

JoshuaTy

pr closed time in 22 days

pull request commentkowainik/learn4haskell

Chapter4 challenge

Hi @JoshuaTy! Thanks for taking our course ๐Ÿค— I'm going to close this PR as we can't merge solutions to our repo. But don't worry, I've already reviewed your solutions for this chapter in your fork ๐Ÿ™‚

JoshuaTy

comment created time in 22 days