isselab / HAnS

HAnS - Helping Annotate Software. HAnS is an open-source (Apache 2.0) plugin for IntelliJ that helps you annotate software.
Apache License 2.0
6 stars 8 forks source link

Refactored FeatureService to be more performant #79

Closed johmara closed 3 months ago

johmara commented 3 months ago

Description

The service was slowing the idea down a bit therefore I reworked it to be a little bit more efficient. I also added some more structure to the code so that it is more clear what is happening.

The Metrics view have also gained some additional metrics which where low hanging fruit from what was previously already there πŸ‘

πŸ”— to calculation docs: https://bitbucket.org/easelab/faxe/src/master/specification/embedded_annotation_metrics.pdf

How Has This Been Tested?

This has only been tested in the context of the MetricsView feature which was also the main motivation behind making this change. But I will try developing unit/integration tests asap.

Screenshots (if appropriate):

Types of changes

Checklist:

github-actions[bot] commented 3 months ago

Qodana Community for JVM

16 new problems were found

Inspection name Severity Problems
Usage of API marked for removal πŸ”΄ Failure 7
Unused import πŸ”Ά Warning 4
Unstable API Usage πŸ”Ά Warning 3
Unchecked warning πŸ”Ά Warning 2

πŸ’‘ Qodana analysis was run in the pull request mode: only the changed files were checked

View the detailed Qodana report To be able to view the detailed Qodana report, you can either: - Register at [Qodana Cloud](https://qodana.cloud/) and [configure the action](https://github.com/jetbrains/qodana-action#qodana-cloud) - Use [GitHub Code Scanning with Qodana](https://github.com/jetbrains/qodana-action#github-code-scanning) - Host [Qodana report at GitHub Pages](https://github.com/JetBrains/qodana-action/blob/3a8e25f5caad8d8b01c1435f1ef7b19fe8b039a0/README.md#github-pages) - Inspect and use `qodana.sarif.json` (see [the Qodana SARIF format](https://www.jetbrains.com/help/qodana/qodana-sarif-output.html#Report+structure) for details) To get `*.log` files or any other Qodana artifacts, run the action with `upload-result` option set to `true`, so that the action will upload the files as the job artifacts: ```yaml - name: 'Qodana Scan' uses: JetBrains/qodana-action@v2024.1.8 with: upload-result: true ```
Contact Qodana team Contact us at [qodana-support@jetbrains.com](mailto:qodana-support@jetbrains.com) - Or via our issue tracker: https://jb.gg/qodana-issue - Or share your feedback: https://jb.gg/qodana-discussions