Skip to content

Latest commit

 

History

History
103 lines (69 loc) · 1.96 KB

CONTRIBUTING.md

File metadata and controls

103 lines (69 loc) · 1.96 KB

Logo

Contributing to StringDistance

Thanks for taking the time to contribute!


1. Initial setup

Install Java 8:

Download Java 8

Clone the repository:

git clone https://github.com/vickumar1981/stringdistance.git

Update dependencies:

# From project root directory
./sbt update

Compile the project:

# From project root directory
./sbt compile

2. Pull Requests and Bugs

  • Please submit pull requests against the latest SNAPSHOT branch.

  • Please feel free to report any bugs or issues to the Github issues page.


3. Running tests

Running unit tests:

# From project root directory
./sbt test

Formatting your code:

# From project root directory
./sbt scalafmtAll

Run linter, unit tests, & code coverage:

# From project root directory
./test.sh

4. Testing with a local Java/Scala project

To test local changes against a java project, it is sometimes useful to publish the artifact locally, and then bring those changes into your gradle or sbt project.

To publish locally:

# From project root directory
./sbt publishLocal

5. Updating the Documentation

To test/view changes to the documentation, simply use sbt.

Generate API documentation:

# From project root directory
./sbt clean doc

The index.html page of the documentation should be located in your project root directory, under target/scala-2.13/api.


6. Running benchmarks

To run, benchmarks on a single thread: ./sbt "bench/jmh:run -i 1 -wi 1 -f 1 -t 1" or ./sbt "bench/jmh:run -bm ss -lrf".

For more information on JMH benchmarking parameters, please refer to these links:

Scala JMH Plugin Page

Java Microbenchmark Harness Page