{"id":229067,"name":"semigroups","ecosystem":"hackage","description":"In mathematics, a semigroup is an algebraic structure consisting of a set together with an associative binary operation. A semigroup generalizes a monoid in that there might not exist an identity element. It also (originally) generalized a group (a monoid with all inverses) to a type where every element did not have to have an inverse, thus the name semigroup.","homepage":"http://github.com/ekmett/semigroups/","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/ekmett/semigroups","keywords_array":["algebra","bsd3","data","data-structures","library","math","Propose Tags"],"namespace":null,"versions_count":65,"first_release_published_at":"2011-01-07T23:51:11.000Z","latest_release_published_at":"2026-01-10T20:32:00.000Z","latest_release_number":"0.20.1","last_synced_at":"2026-09-24T21:37:09.059Z","created_at":"2022-04-06T01:17:17.046Z","updated_at":"2026-09-24T21:37:09.254Z","registry_url":"https://hackage.haskell.org/package/semigroups","install_command":"cabal install semigroups","documentation_url":null,"metadata":{},"repo_metadata":{"id":46306575,"uuid":"1231710","full_name":"ekmett/semigroups","owner":"ekmett","description":"Haskell 98 semigroups","archived":false,"fork":false,"pushed_at":"2026-01-10T20:31:50.000Z","size":537,"stargazers_count":62,"open_issues_count":3,"forks_count":28,"subscribers_count":8,"default_branch":"master","last_synced_at":"2026-09-15T02:37:44.888Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://hackage.haskell.org/package/semigroups","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ekmett.png","metadata":{"files":{"readme":"README.markdown","changelog":"CHANGELOG.markdown","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2011-01-07T23:49:55.000Z","updated_at":"2026-01-10T20:31:39.000Z","dependencies_parsed_at":"2024-06-18T16:48:35.260Z","dependency_job_id":"9e975562-212e-418d-afde-01d064661ddf","html_url":"https://github.com/ekmett/semigroups","commit_stats":{"total_commits":243,"total_committers":34,"mean_commits":7.147058823529412,"dds":0.5514403292181069,"last_synced_commit":"ee4efc9e127345eec586335fd8a73cd156237b50"},"previous_names":[],"tags_count":36,"template":false,"template_full_name":null,"purl":"pkg:github/ekmett/semigroups","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekmett","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":341189360,"owners_count":37659804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-08-22T15:14:58.755Z","status":"online","status_checked_at":"2026-09-24T02:00:06.325Z","response_time":86,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"},"owner_record":{"login":"ekmett","name":"Edward Kmett","uuid":"304657","kind":"user","description":"I write a lot of Haskell.","email":"","website":"http://comonad.com","location":"Farmington Hills, MI","twitter":"kmett","company":"Groq","icon_url":"https://avatars.githubusercontent.com/u/304657?v=4","repositories_count":298,"last_synced_at":"2023-04-10T02:32:00.294Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/ekmett","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:37:43.210Z","updated_at":"2023-04-10T02:32:01.377Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekmett","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekmett/repositories"},"tags":[{"name":"v0.20.1","sha":"f326766eda226146bc570e830b0c2398ed43dcfc","kind":"commit","published_at":"2026-01-10T20:28:33.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.20.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.20.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.20.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.20.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.20.1/manifests"},{"name":"v0.20","sha":"0171122648910a3547224e99108041708a3f8e84","kind":"commit","published_at":"2021-11-16T00:01:27.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.20","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.20","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.20","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.20","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.20/manifests"},{"name":"v0.19.2","sha":"653287bd561f087e514c079e23f980f38634ac6b","kind":"commit","published_at":"2021-08-30T11:23:00.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.19.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.19.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.19.2/manifests"},{"name":"v0.19.1","sha":"2c662cd60b49927d1ac76c657bc0bf0350869386","kind":"commit","published_at":"2019-08-27T12:56:04.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.19.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.19.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.19.1/manifests"},{"name":"v0.19","sha":"563130bc7acb6c206854a457a2e500be607fc66d","kind":"commit","published_at":"2019-05-10T13:55:30.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.19","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.19","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.19","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.19/manifests"},{"name":"v0.18.5","sha":"61313f6ea77709e6891e73b8c1f4bab2ae49b17e","kind":"commit","published_at":"2018-07-02T21:57:17.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18.5","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.5/manifests"},{"name":"v0.18.4","sha":"4ee786b80a79e0dbca562a38aaa90ef482f6b320","kind":"commit","published_at":"2018-01-30T04:17:31.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18.4","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.4/manifests"},{"name":"v0.18.3","sha":"d2639cb4014471959ad172991041c600a5134eaf","kind":"commit","published_at":"2017-04-16T16:42:05.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18.3","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.3/manifests"},{"name":"v0.18.2","sha":"380c88314a2fad2f68ffe798fb0b0110a35fb9bb","kind":"commit","published_at":"2016-06-23T02:07:19.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.2/manifests"},{"name":"v0.18.1","sha":"da5b62a0638ddebc4127f0bf1e9a9aed8c13f946","kind":"tag","published_at":"2016-01-26T21:17:03.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.1/manifests"},{"name":"v0.18.0.1","sha":"0b8829479d42c8e104e98f192a18461f1d44c93e","kind":"tag","published_at":"2015-11-08T19:16:34.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18.0.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18.0.1/manifests"},{"name":"v0.18","sha":"7a000212847b0d309892f34e4754a25ddec7100b","kind":"tag","published_at":"2015-10-31T20:30:31.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.18","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.18","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.18","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.18/manifests"},{"name":"v0.17.0.1","sha":"3f0caec983d74aacdd2460399488de758e957a16","kind":"tag","published_at":"2015-09-13T18:20:02.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.17.0.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.17.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.17.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.17.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.17.0.1/manifests"},{"name":"v0.17","sha":"bb03b9365a5708ec382f7d8ec3f37000e201fa67","kind":"tag","published_at":"2015-09-13T17:40:49.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.17","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.17","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.17","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.17/manifests"},{"name":"v0.16.2.2","sha":"11b52b65cfc8a27c6c1b2654eb0fbccb3acb2d95","kind":"tag","published_at":"2015-03-07T07:26:34.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.16.2.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.16.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.16.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.2.2/manifests"},{"name":"v0.16.2.1","sha":"2a36d6a11c06a0e2ba7a5d4c0e57cf7a7c69af78","kind":"tag","published_at":"2015-03-07T04:27:38.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.16.2.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.16.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.16.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.2.1/manifests"},{"name":"v0.16.2","sha":"ff20314335c7c26c46d8476ac8ca6e5998856210","kind":"tag","published_at":"2015-03-06T22:17:07.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.16.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.16.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.16.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.2/manifests"},{"name":"v0.16.1","sha":"64792f0913c013058bb8e5f81ede1dc2a3946f60","kind":"tag","published_at":"2015-01-23T05:36:18.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.16.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.16.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.1/manifests"},{"name":"v0.16.0.1","sha":"effa92e63d68c9a120556da4ff1b83d7ed6352ba","kind":"tag","published_at":"2014-12-17T16:58:08.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.16.0.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.16.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.16.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16.0.1/manifests"},{"name":"v0.16","sha":"c617cb5707877010c92c6632abea962d1c53b2c5","kind":"tag","published_at":"2014-12-02T08:35:58.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.16","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.16/manifests"},{"name":"v0.15.3","sha":"5accb7445cf560510a03c807d0b3f5388c17e494","kind":"tag","published_at":"2014-09-08T17:46:24.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.15.3","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.15.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.15.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.15.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.15.3/manifests"},{"name":"v0.15.2","sha":"0f4c7448ec5fe66934ec258157e9fa786a721452","kind":"tag","published_at":"2014-07-25T12:20:06.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.15.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.15.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.15.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.15.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.15.2/manifests"},{"name":"v0.15","sha":"e3fcd9abd2dcb56db9117e1ec6c0dfdfa6353365","kind":"tag","published_at":"2014-05-29T06:10:52.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.15","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.15","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.15","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.15/manifests"},{"name":"v0.14","sha":"49bb9a2027cf09788a76b4f8d65118182eb179a3","kind":"tag","published_at":"2014-05-12T06:48:13.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.14","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.14","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.14","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.14/manifests"},{"name":"v0.13.0.1","sha":"e34e997fefadc9b226cb3f32144a03cce7151373","kind":"tag","published_at":"2014-04-09T18:52:22.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.13.0.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.13.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.13.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.13.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.13.0.1/manifests"},{"name":"v0.13","sha":"468564ce2ec3e20cb771c90727cb6bb1bb14369f","kind":"tag","published_at":"2014-04-09T14:02:13.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.13","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.13","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.13","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.13/manifests"},{"name":"v0.12.2","sha":"8fd5a252c0bb66ac330adfc9507526005e755a15","kind":"tag","published_at":"2014-01-14T22:20:17.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.12.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.12.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.12.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12.2/manifests"},{"name":"v0.12.1","sha":"40c34a2399522b20a54d3d7efb1b0bd58ed504d6","kind":"tag","published_at":"2013-12-09T05:43:14.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.12.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.12.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12.1/manifests"},{"name":"v0.12.0.1","sha":"c90954718c051f4142f7a40ccbf655f55cfed979","kind":"tag","published_at":"2013-12-09T04:53:06.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.12.0.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.12.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.12.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12.0.1/manifests"},{"name":"v0.12","sha":"c90954718c051f4142f7a40ccbf655f55cfed979","kind":"tag","published_at":"2013-11-26T01:35:20.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.12","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.12","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.12","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.12/manifests"},{"name":"v0.11","sha":"dda244339f1bec123ed174ab3ee0c5420567459d","kind":"tag","published_at":"2013-09-17T14:51:46.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.11","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.11","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.11","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.11/manifests"},{"name":"v0.10","sha":"898c4ae0474bf3989b4a2de53bc24f54d4e13af5","kind":"tag","published_at":"2013-09-16T20:26:19.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.10","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.10/manifests"},{"name":"v0.9.2","sha":"1bd6d9da5e69ebd850a3ee835e5be624f26b8a21","kind":"tag","published_at":"2013-05-19T16:53:36.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.9.2","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.9.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.9.2/manifests"},{"name":"v0.9.1","sha":"ec54cec150cc0e6d966f8b7428f382d5f20541a2","kind":"tag","published_at":"2013-04-16T15:14:12.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.9.1","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.9.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.9.1/manifests"},{"name":"v0.9","sha":"53519fa5098a961398eb73515316e29344e9535e","kind":"tag","published_at":"2013-01-06T18:54:34.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.9","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.9/manifests"},{"name":"v0.8.5","sha":"194c8dad6eba7d304e346417da6cc71c9ff2f248","kind":"tag","published_at":"2012-12-20T18:30:02.000Z","download_url":"https://codeload.github.com/ekmett/semigroups/tar.gz/v0.8.5","html_url":"https://github.com/ekmett/semigroups/releases/tag/v0.8.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/ekmett/semigroups@v0.8.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.8.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/tags/v0.8.5/manifests"}]},"repo_metadata_updated_at":"2026-09-24T21:37:09.254Z","dependent_packages_count":350,"downloads":493180,"downloads_period":"total","dependent_repos_count":1911,"rankings":{"downloads":0.033907883582933035,"dependent_repos_count":0.2769143825939531,"dependent_packages_count":0.09042102288782142,"stargazers_count":10.358858434586041,"forks_count":7.267589714608647,"docker_downloads_count":null,"average":3.6055382876518793},"purl":"pkg:hackage/semigroups","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/hackage/semigroups","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/hackage/semigroups","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/hackage/semigroups/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2026-09-21T07:15:48.174Z","issues_count":43,"pull_requests_count":59,"avg_time_to_close_issue":15429725.55,"avg_time_to_close_pull_request":982128.6271186441,"issues_closed_count":40,"pull_requests_closed_count":59,"pull_request_authors_count":33,"issue_authors_count":34,"avg_comments_per_issue":3.2325581395348837,"avg_comments_per_pull_request":1.711864406779661,"merged_pull_requests_count":54,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":169424.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekmett%2Fsemigroups/issues","maintainers":[{"login":"RyanGlScott","count":16,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/RyanGlScott"},{"login":"hvr","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/hvr"},{"login":"ppetr","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ppetr"},{"login":"supki","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/supki"},{"login":"bmillwood","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bmillwood"},{"login":"ekmett","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ekmett"},{"login":"Taneb","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/Taneb"},{"login":"glguy","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/glguy"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/semigroups/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/semigroups/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/semigroups/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/semigroups/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/semigroups/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/packages/semigroups/codemeta","maintainers":[{"uuid":"HerbertValerioRiedel","login":"HerbertValerioRiedel","name":null,"email":null,"url":null,"packages_count":136,"html_url":"https://hackage.haskell.org/user/HerbertValerioRiedel","role":null,"created_at":"2022-11-14T19:37:06.961Z","updated_at":"2022-11-14T19:37:06.961Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/maintainers/HerbertValerioRiedel/packages"},{"uuid":"ryanglscott","login":"ryanglscott","name":null,"email":null,"url":null,"packages_count":153,"html_url":"https://hackage.haskell.org/user/ryanglscott","role":null,"created_at":"2022-11-14T19:37:06.982Z","updated_at":"2022-11-14T19:37:06.982Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/maintainers/ryanglscott/packages"},{"uuid":"EricMertens","login":"EricMertens","name":null,"email":null,"url":null,"packages_count":96,"html_url":"https://hackage.haskell.org/user/EricMertens","role":null,"created_at":"2022-11-14T19:37:06.903Z","updated_at":"2022-11-14T19:37:06.903Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/maintainers/EricMertens/packages"},{"uuid":"EdwardKmett","login":"EdwardKmett","name":null,"email":null,"url":null,"packages_count":136,"html_url":"https://hackage.haskell.org/user/EdwardKmett","role":null,"created_at":"2022-11-14T19:37:06.887Z","updated_at":"2022-11-14T19:37:06.887Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/hackage.haskell.org/maintainers/EdwardKmett/packages"}]}