{"id":36592140,"url":"https://github.com/hoangmaihuy/mill-missinglink","last_synced_at":"2026-01-17T23:36:47.726Z","repository":{"id":209616285,"uuid":"718524721","full_name":"hoangmaihuy/mill-missinglink","owner":"hoangmaihuy","description":"A Mill plugin for missinglink","archived":false,"fork":false,"pushed_at":"2025-08-18T14:46:16.000Z","size":59,"stargazers_count":3,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-18T15:14:07.258Z","etag":null,"topics":["mill","mill-plugin"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hoangmaihuy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-11-14T09:05:13.000Z","updated_at":"2025-08-18T14:46:12.000Z","dependencies_parsed_at":"2024-06-24T06:22:04.561Z","dependency_job_id":"6ee59cd1-9201-400d-938b-202a574f5f78","html_url":"https://github.com/hoangmaihuy/mill-missinglink","commit_stats":null,"previous_names":["hoangmaihuy/mill-missinglink"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/hoangmaihuy/mill-missinglink","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangmaihuy%2Fmill-missinglink","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangmaihuy%2Fmill-missinglink/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangmaihuy%2Fmill-missinglink/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangmaihuy%2Fmill-missinglink/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hoangmaihuy","download_url":"https://codeload.github.com/hoangmaihuy/mill-missinglink/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hoangmaihuy%2Fmill-missinglink/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28337590,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T06:09:07.588Z","status":"ssl_error","status_checked_at":"2026-01-12T06:05:18.301Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mill","mill-plugin"],"created_at":"2026-01-12T08:18:44.780Z","updated_at":"2026-01-17T23:36:47.719Z","avatar_url":"https://github.com/hoangmaihuy.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mill-missinglink\n\nA Mill plugin for [missinglink](https://github.com/spotify/missinglink), ported from [sbt-missinglink](https://github.com/scalacenter/sbt-missinglink)\n\n## Usage\n\nAdd the following lines in `build.mill`:\n\n```scala\n//| mvnDeps:\n//| - io.github.hoangmaihuy::mill-missinglink::\u003clatest-version\u003e\n```\n\nExtends `MissinglinkCheckModule`\n\n```scala\nimport io.github.hoangmaihuy.missinglink.*\n\nobject example extends MissinglinkCheckModule\n```\n\nThen, run `missinglinkCheck` command\n\n```bash \n\u003e mill example.missinglinkCheck\n```\n\nCurrently, `missinglinkCheck` only checks conflicts in **Runtime** scope.\n\n### Do not fail on conflicts\n\nBy default, the plugin fails the build if any conflicts are found.\nIt can be disabled by the `missinglinkFailOnConflicts` setting:\n\n```scala\nobject example extends MissinglinkCheckModule {\n  override def missinglinkFailOnConflicts = false\n}\n```\n\n### Ignore conflicts in certain packages\n\nConflicts can be ignored based on the package name of the class that has the conflict.\nThere are separate configuration options for ignoring conflicts on the \"source\" side of the conflict and the \"destination\" side of the conflict.\nPackages on the source side can be ignored with `missinglinkIgnoreSourcePackages` and packages on the destination side can be ignored with `missinglinkIgnoreDestinationPackages`:\n\n```scala\nobject example extends MissinglinkCheckModule {\n  override def missinglinkIgnoreDestinationPackages = Seq(IgnoredPackage(\"com.google.common\"))\n  override def missinglinkIgnoreSourcePackages = Seq(IgnoredPackage(\"com.example\"))\n}\n```\n\nBy default, all subpackages of the specified package are also ignored, but this can be disabled by the `ignoreSubpackages` field: `IgnoredPackage(\"test\", ignoreSubpackages = false)`.\n\n### Excluding some dependencies from the analysis\n\nYou can exclude certain dependencies using `DependencyFilter`:\n\n```scala\nobject example extends MissinglinkCheckModule {\n  override def missinglinkExcludedDependencies = Seq(DependencyFilter(organization = \"com.google.guava\"))\n  override def missinglinkExcludedDependencies = Seq(DependencyFilter(organization = \"ch.qos.logback\", name = \"logback-core\"))\n}\n```\n\n## More information\n\nThis plugin was ported from ported from [sbt-missinglink](https://github.com/scalacenter/sbt-missinglink). Core functions were copied from `sbt-missinglink` with some modifications to work with Mill.\n\nYou can find more information about the problem statement, caveats and\nlimitations, etc. in the upstream project\n[missinglink](https://github.com/spotify/missinglink).\n\n## Licenses\n\nThis software is released under the Apache License 2.0. More information in the file LICENSE distributed with this project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhoangmaihuy%2Fmill-missinglink","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhoangmaihuy%2Fmill-missinglink","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhoangmaihuy%2Fmill-missinglink/lists"}