15 Commits

Author SHA1 Message Date
Matthew Haughton
1258c2fe82 Add dependency-analysis plugin and implement some recommendations (#4798)
Co-authored-by: schalkms <30376729+schalkms@users.noreply.github.com>
2022-06-02 13:19:44 +01:00
Brais Gabín
a2734b18c1 Remove Unnecesary @Nested (#4740) 2022-04-25 23:04:26 +02:00
Nicola Corti
74d3b6f1e3 Move the website to detekt.dev (#4544) 2022-02-04 00:50:26 +00:00
marschwar
743706fb45 Clean up gradle files for modules migrated to junit (#4516)
Co-authored-by: Markus Schwarz <post@markus-schwarz.net>
2022-01-24 09:21:24 +01:00
marschwar
f997fe0ef5 Migrate tests in detekt-report-xxx to junit (#4513)
* migrate tests in detekt-report-html to junit

* migrate tests in detekt-report-txt to junit

* migrate tests in detekt-report-sarif to junit

* migrate tests in detekt-report-xml to junit

Co-authored-by: Markus Schwarz <post@markus-schwarz.net>
2022-01-24 09:30:24 +11:00
Matthew Haughton
3e1d7c350d Drop junit-platform-launcher dependency (#4115)
Modern versions of IntelliJ and Gradle do not require this explicit
dependency to be added to the project.
2021-09-20 11:50:35 +10:00
Matthew Haughton
e0aed91293 Remove detekt-bom module (#4043) 2021-09-11 07:27:16 +10:00
Matthew Haughton
fd0cb9096e Migrate buildSrc to composite build (#4090)
This will help reduce build times when changes are made to the precompiled
script plugins used in the build. This is because a change in buildSrc
causes the whole project to become out-of-date [0]. Using an included build
instead works around this problem.

[0] https://docs.gradle.org/7.2/userguide/organizing_gradle_projects.html#sec:build_sources
2021-09-04 23:09:59 +10:00
Matthew Haughton
dc2f3d801c Enable Gradle's type-safe project accessors (#3742) 2021-05-06 20:59:44 +02:00
Brais Gabín
92b6a01903 Apply more formatting rules to our code (#3615)
* Update formatting configuration

* Apply autocorrect to the project

* Format using ktlint 0.41 --experimental

* Minor manual improvements
2021-03-28 10:00:03 -07:00
Chao Zhang
5019fe7279 Support relative output paths (#3319)
* Support relative output paths

* Enrich test spec description and add KDoc

* Update documentation

* Refactor FilePath

* Fix CI failures

* Fix detekt failures and restore defaults as absolute

* Renamed report base path back to base path
2021-01-07 14:02:13 +01:00
Brais Gabín
945f075af1 Simplify our buildSrc (#3322)
* Move cli gradle configuration to its build.gradle.kts

* Create plugin module so we can add it to each module
2021-01-05 00:06:10 +01:00
Artur Bosch
c526ec63f5 Test performance improvements (#2921)
* Use max 4 workers, test discovery slows down parallel workers

* Use a spek snapshot to improve test discovery time

* Introduce an api test fixture for modules needing just an analysis result

* Use api test fixture in html module

* Use api test fixtures in report-xml module

* Use api test fixtures in metrics module

* Use api test fixtures in core module

* Use single-threaded classpath scanning

* Do not create a kotlin environment upfront

* Move mockk usage to execution phase

* Move KtCompiler creation to execution phase

* Move setup code to execution phase in api module

* Move setup code to execution phase in core module

* Move setup code to execution phase in rules-empty module
2020-08-02 12:32:29 +02:00
M Schalk
a9fd6f5377 Document Output Reports code (#2911)
as noted in #2869
2020-07-31 23:04:00 +02:00
Artur Bosch
65a49589e4 Extract xml and html reports to own modules (#2750)
* Move xml report to own module

* Extract common complexity report logic to metrics module

This allows to share complexity report logic between the console report and a report-html module.

* Move whichXXX functions from DebugUtils to api module for now

More modules use the detekt version at runtime
and it is nice to have it in plugins as the IntelliJ or Sonar plugin. We should later move this helpers to the tooling-api.

* Extract html report to own module

* Merge all service files when packaging cli fatJar

* Write the detekt version to all jar manifest files

This allows to retrieve the detekt version from any jar at runtime.

* Extract txt report to own module
2020-05-31 15:35:38 +02:00