jplag / JPlag

State-of-the-Art Software Plagiarism & Collusion Detection
https://jplag.github.io/JPlag/
GNU General Public License v3.0
1.28k stars 304 forks source link

Define, annotate and document what belongs to the public API #697

Open sebinside opened 1 year ago

sebinside commented 1 year ago

With release 4.0.0 in sight, we shall clearly define which JPlag interfaces belong to the public API and thus require changing the version numbers in the future, according to semantic versioning.

Potential interfaces are:

Also, we should then mark all methods that belong to the public API, e.g., by using java annotations. This shall minimize the risk of accidentally breaking semantic versioning for future versions.

tsaglam commented 3 months ago

With v6.0.0 (currently in planning), we will move to the local-mode-only version of JPlag, meaning JPlag will host the report viewer locally and launch it in the browser automatically. Thus, the JSON serialization between the report viewer and JPlag core is no longer considered public API.