Skip to content

Latest commit

 

History

History
51 lines (35 loc) · 1.67 KB

Contribution.md

File metadata and controls

51 lines (35 loc) · 1.67 KB

Contribution Guide

Thank you for your interest in this library!

Feedback is always appreciated, currently you can use github issues for everything related to this library (bugs, feedback etc). I'm (eikek) also available on Matrix (@eikek:matrix.org).

If you plan to invest more time in coding something, please consider opening a ticket first for discussing it.

Modules

If you want to create another utility that integrates with another library, just create another module analog to the existing ones (like doobie, circe, …). The core module should stay dependency free.

The core module has a package called internal, which contains internal stuff meant to be used within the core module only. Please try to not use these things in another modue.

CI

Github actions are used to execute the sbt task ci for each pull request. This task is only an alias, you can see it at the beginning of build.sbt. It simply runs all tests across all configured Scala versions and does a publishLocal at the end.

You can run the same task locally: sbt ci.

Formatting

This project uses scalafmt and scalafix to unify the formatting. You can run sbt fix to reformat source code according to the rules in .scalafmt.conf and .scalafix.conf.

The formatting can be checked with sbt lint command.

Readme

The README is generated by sbt, because it contains code examples that are compiled to make sure that they are up to date. When editing the README, please edit the doc/readme.md file. The root README.md can be generated via:

sbt readme/updateReadme

It will extract all scala mdoc source blocks and then compiles them, to make sure the examples are working.