diff --git a/README.md b/README.md index 6517ad1..4b2bbc4 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # lambdaisland/deep-diff2 -[![CircleCI](https://circleci.com/gh/lambdaisland/deep-diff2.svg?style=svg)](https://circleci.com/gh/lambdaisland/deep-diff2) [![cljdoc badge](https://cljdoc.org/badge/lambdaisland/deep-diff2)](https://cljdoc.org/d/lambdaisland/deep-diff2) [![Clojars Project](https://img.shields.io/clojars/v/lambdaisland/deep-diff2.svg)](https://clojars.org/lambdaisland/deep-diff2) [![bb compatible](https://raw.githubusercontent.com/babashka/babashka/master/logo/badge.svg)](https://babashka.org) +[![CircleCI](https://circleci.com/gh/lambdaisland/deep-diff2.svg?style=svg)](https://circleci.com/gh/lambdaisland/deep-diff2) [![cljdoc badge](https://cljdoc.org/badge/lambdaisland/deep-diff2)](https://cljdoc.org/d/lambdaisland/deep-diff2) [![Clojars Project](https://img.shields.io/clojars/v/lambdaisland/deep-diff2.svg)](https://clojars.org/lambdaisland/deep-diff2) Recursively compare Clojure or ClojureScript data structures, and produce a colorized diff of the result. @@ -14,25 +14,31 @@ if you want to programatically diff/patch Clojure data structures then [this write-up by Huahai Yang](https://juji.io/blog/comparing-clojure-diff-libraries/). +## Lambda Island Open Source -  +Thank you! deep-diff2 is made possible thanks to our generous backers. [Become a +backer on OpenCollective](https://opencollective.com/lambda-island) so that we +can continue to make deep-diff2 better. + + + +   -## Support Lambda Island Open Source +deep-diff2 is part of a growing collection of quality Clojure libraries created and maintained +by the fine folks at [Gaiwan](https://gaiwan.co). -deep-diff2 is part of a growing collection of quality Clojure libraries and -tools released on the Lambda Island label. If you are using this project -commercially then you are expected to pay it forward by -[becoming a backer on Open Collective](http://opencollective.com/lambda-island#section-contribute), -so that we may continue to enjoy a thriving Clojure ecosystem. +Pay it forward by [becoming a backer on our OpenCollective](http://opencollective.com/lambda-island), +so that we continue to enjoy a thriving Clojure ecosystem. -  +You can find an overview of all our different projects at [lambdaisland/open-source](https://github.com/lambdaisland/open-source).   +  ## Installation @@ -243,33 +249,29 @@ the future. When in doubt check the CHANGELOG. ## Contributing -Everyone has a right to submit patches to deep-diff2, and thus become a contributor. - -Contributors MUST +We warmly welcome patches to deep-diff2. Please keep in mind the following: - adhere to the [LambdaIsland Clojure Style Guide](https://nextjournal.com/lambdaisland/clojure-style-guide) -- write patches that solve a problem. Start by stating the problem, then supply a minimal solution. `*` -- agree to license their contributions as EPL 1.0. -- not break the contract with downstream consumers. `**` -- not break the tests. +- write patches that solve a problem +- start by stating the problem, then supply a minimal solution `*` +- by contributing you agree to license your contributions as EPL 1.0 +- don't break the contract with downstream consumers `**` +- don't break the tests -Contributors SHOULD +We would very much appreciate it if you also -- update the CHANGELOG and README. -- add tests for new functionality. +- update the CHANGELOG and README +- add tests for new functionality -If you submit a pull request that adheres to these rules, then it will almost -certainly be merged immediately. However some things may require more -consideration. If you add new dependencies, or significantly increase the API -surface, then we need to decide if these changes are in line with the project's -goals. In this case you can start by [writing a pitch](https://nextjournal.com/lambdaisland/pitch-template), -and collecting feedback on it. +We recommend opening an issue first, before opening a pull request. That way we +can make sure we agree what the problem is, and discuss how best to solve it. +This is especially true if you add new dependencies, or significantly increase +the API surface. In cases like these we need to decide if these changes are in +line with the project's goals. -`*` This goes for features too, a feature needs to solve a problem. State the problem it solves, then supply a minimal solution. +`*` This goes for features too, a feature needs to solve a problem. State the problem it solves first, only then move on to solving it. -`**` As long as this project has not seen a public release (i.e. is not on Clojars) -we may still consider making breaking changes, if there is consensus that the -changes are justified. +`**` Projects that have a version that starts with `0.` may still see breaking changes, although we also consider the level of community adoption. The more widespread a project is, the less likely we're willing to introduce breakage. See [LambdaIsland-flavored Versioning](https://github.com/lambdaisland/open-source#lambdaisland-flavored-versioning) for more info. ## Credits @@ -292,7 +294,7 @@ Another library that implements a form of data structure diffing is [editscript] ## License -Copyright © 2018-2020 Arne Brasseur and contributors +Copyright © 2018-2024 Arne Brasseur and contributors Available under the terms of the Eclipse Public License 1.0, see LICENSE.txt - + \ No newline at end of file