ocaml-semver / ocaml-api-watch

Libraries and tools to keep watch on you OCaml lib's API changes
ISC License
21 stars 15 forks source link

Drop diffutils dependency #79

Closed NathanReb closed 1 month ago

NathanReb commented 1 month ago

We are currently using the diffutils project to print API diffs as human readable text diffs. diffutils is not released to opam and it prevents us from releasing api-watch.

Vendoring the whole diffutils project would be a bit overkill as we're only using a very small part of it.

We would like to instead embed the types and functions we use directly in the project.

This makes sense as it is likely that our need for custom diff printing utilities will grow as we move toward a proper structural diff representation of API diffs.

What to import

All of our uses of Diffutils are contained within our Text_diff module. All the types we use come from Diffutils.Diff:

For now we'll simply re-implement those exactly like they are defined in Diffutils, we'll make adjustment to suit our needs in the future.

Those parts of the code are already tested so we won't need to write new ones there. Making sure our existing test pass should be enough.

azzsal commented 1 month ago

Hello,

I am an outreachy applicant, I am interested in contributing to this project. I have just built the project successfully as requested.

api-watch-man-page

Could this issue be assigned to me, please ?

Thank you!

panglesd commented 1 month ago

Hello @azzsal !

Yes, let this issue be assigned to you!