diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..78570c6 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @chshersh @vrom911 \ No newline at end of file diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..0ead586 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,12 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + commit-message: + prefix: "GA" + include: "scope" + labels: + - "CI" + - "dependencies" \ No newline at end of file diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..d0ff927 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,88 @@ +name: CI + +on: + pull_request: + types: [synchronize, opened, reopened] + push: + branches: [main] + schedule: + # additionally run once per week (At 00:00 on Sunday) to maintain cache + - cron: '0 0 * * 0' + +jobs: + cabal: + name: ${{ matrix.os }} / ghc ${{ matrix.ghc }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, macOS-latest, windows-latest] + cabal: ["3.4"] + ghc: + - "8.2.2" + - "8.4.4" + - "8.6.5" + - "8.8.4" + - "8.10.7" + - "9.0.1" + exclude: + - os: macOS-latest + ghc: 9.0.1 + - os: macOS-latest + ghc: 8.8.4 + - os: macOS-latest + ghc: 8.6.5 + - os: macOS-latest + ghc: 8.4.4 + - os: macOS-latest + ghc: 8.2.2 + + - os: windows-latest + ghc: 9.0.1 + - os: windows-latest + ghc: 8.8.4 + - os: windows-latest + ghc: 8.6.5 + - os: windows-latest + ghc: 8.4.4 + - os: windows-latest + ghc: 8.2.2 + + steps: + - uses: actions/checkout@v2 + + - uses: haskell/actions/setup@v1 + id: setup-haskell-cabal + name: Setup Haskell + with: + ghc-version: ${{ matrix.ghc }} + cabal-version: ${{ matrix.cabal }} + + - name: Configure + run: | + cabal configure --enable-tests --enable-benchmarks --enable-documentation --test-show-details=direct --write-ghc-environment-files=always + + - name: Freeze + run: | + cabal freeze + + - uses: actions/cache@v2 + name: Cache ~/.cabal/store + with: + path: ${{ steps.setup-haskell-cabal.outputs.cabal-store }} + key: ${{ runner.os }}-${{ matrix.ghc }}-${{ hashFiles('cabal.project.freeze') }} + + - name: Install dependencies + run: | + cabal build all --only-dependencies + + - name: Build + run: | + cabal build all + + - name: Test + run: | + cabal test all + + - name: Documentation + run: | + cabal haddock \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6b7dab1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,57 @@ +### Haskell +dist +dist-* +cabal-dev +*.o +*.hi +*.chi +*.chs.h +*.dyn_o +*.dyn_hi +*.prof +*.aux +*.hp +*.eventlog +.virtualenv +.hsenv +.hpc +.cabal-sandbox/ +cabal.sandbox.config +cabal.config +cabal.project.local +.ghc.environment.* +.HTF/ +# Stack +.stack-work/ +stack.yaml.lock + +### IDE/support +# Vim +[._]*.s[a-v][a-z] +[._]*.sw[a-p] +[._]s[a-v][a-z] +[._]sw[a-p] +*~ +tags + +# IntellijIDEA +.idea/ +.ideaHaskellLib/ +*.iml + +# Atom +.haskell-ghc-mod.json + +# VS +.vscode/ + +# Emacs +*# +.dir-locals.el +TAGS + +# other +.DS_Store + +# co-log +*.log \ No newline at end of file diff --git a/co-log-core/CHANGELOG.md b/CHANGELOG.md similarity index 100% rename from co-log-core/CHANGELOG.md rename to CHANGELOG.md diff --git a/co-log-core/co-log-core.cabal b/co-log-core.cabal similarity index 94% rename from co-log-core/co-log-core.cabal rename to co-log-core.cabal index 64414d7..481c906 100644 --- a/co-log-core/co-log-core.cabal +++ b/co-log-core.cabal @@ -21,8 +21,8 @@ description: * [co-log-polysemy](http://hackage.haskell.org/package/co-log-polysemy): extensible effects implementation based on @polysemy@. -homepage: https://github.com/kowainik/co-log -bug-reports: https://github.com/kowainik/co-log/issues +homepage: https://github.com/co-log/co-log-core +bug-reports: https://github.com/co-log/co-log-core/issues license: MPL-2.0 license-file: LICENSE author: Dmitrii Kovanikov @@ -42,7 +42,7 @@ tested-with: GHC == 8.2.2 source-repository head type: git - location: https://github.com/kowainik/co-log.git + location: https://github.com/co-log/co-log-core.git common common-options build-depends: base >= 4.10.1.0 && < 4.16 diff --git a/co-log-core/LICENSE b/co-log-core/LICENSE deleted file mode 120000 index ea5b606..0000000 --- a/co-log-core/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../LICENSE \ No newline at end of file diff --git a/co-log-core/README.md b/co-log-core/README.md deleted file mode 120000 index 32d46ee..0000000 --- a/co-log-core/README.md +++ /dev/null @@ -1 +0,0 @@ -../README.md \ No newline at end of file diff --git a/co-log-core/src/Colog/Core.hs b/src/Colog/Core.hs similarity index 100% rename from co-log-core/src/Colog/Core.hs rename to src/Colog/Core.hs diff --git a/co-log-core/src/Colog/Core/Action.hs b/src/Colog/Core/Action.hs similarity index 100% rename from co-log-core/src/Colog/Core/Action.hs rename to src/Colog/Core/Action.hs diff --git a/co-log-core/src/Colog/Core/Class.hs b/src/Colog/Core/Class.hs similarity index 100% rename from co-log-core/src/Colog/Core/Class.hs rename to src/Colog/Core/Class.hs diff --git a/co-log-core/src/Colog/Core/IO.hs b/src/Colog/Core/IO.hs similarity index 100% rename from co-log-core/src/Colog/Core/IO.hs rename to src/Colog/Core/IO.hs diff --git a/co-log-core/src/Colog/Core/Severity.hs b/src/Colog/Core/Severity.hs similarity index 100% rename from co-log-core/src/Colog/Core/Severity.hs rename to src/Colog/Core/Severity.hs diff --git a/co-log-core/test/Doctests.hs b/test/Doctests.hs similarity index 100% rename from co-log-core/test/Doctests.hs rename to test/Doctests.hs