{"id":15010870,"url":"https://github.com/haskell/threadscope","last_synced_at":"2025-04-04T08:06:16.129Z","repository":{"id":1617939,"uuid":"2276407","full_name":"haskell/ThreadScope","owner":"haskell","description":"A graphical tool for profiling parallel Haskell programs","archived":false,"fork":false,"pushed_at":"2025-03-28T16:16:19.000Z","size":47583,"stargazers_count":155,"open_issues_count":34,"forks_count":35,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-04T07:42:44.017Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://www.haskell.org/haskellwiki/ThreadScope","language":"Haskell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"imbo/imbo","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/haskell.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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}},"created_at":"2011-08-26T20:27:13.000Z","updated_at":"2025-03-28T16:13:47.000Z","dependencies_parsed_at":"2024-03-17T04:38:40.528Z","dependency_job_id":"6357a1c4-6a30-411c-85a0-539d87ccc76b","html_url":"https://github.com/haskell/ThreadScope","commit_stats":{"total_commits":875,"total_committers":25,"mean_commits":35.0,"dds":0.7371428571428571,"last_synced_commit":"9b57b694e12644b455c7111280bc094aeae827e7"},"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2FThreadScope","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2FThreadScope/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2FThreadScope/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haskell%2FThreadScope/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haskell","download_url":"https://codeload.github.com/haskell/ThreadScope/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247142063,"owners_count":20890652,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-09-24T19:36:46.837Z","updated_at":"2025-04-04T08:06:16.113Z","avatar_url":"https://github.com/haskell.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ThreadScope\n\n[![Hackage](https://img.shields.io/hackage/v/threadscope.svg)](https://hackage.haskell.org/package/threadscope)\n[![Hackage-Deps](https://img.shields.io/hackage-deps/v/threadscope.svg)](http://packdeps.haskellers.com/feed?needle=threadscope)\n![CI](https://github.com/haskell/ThreadScope/workflows/CI/badge.svg?branch=master)\n\n## Using pre-built binaries\n\nCurrently [pre-built binaries](https://github.com/haskell/ThreadScope/releases) for the following platforms are provided:\n\n* Ubuntu 18.04 (64-bit)\n* macOS 10.15\n* Windows Server 2019 (x64)\n\nGTK+2 needs to be installed for these binaries to work.\n\nOn Windows, the [MSYS2](http://www.msys2.org) is the recommended way to install GTK+2. In MSYS2 MINGW64 shell:\n\n```sh\npacman -S $MINGW_PACKAGE_PREFIX-gtk2\n```\n\nthen you can run the threadscope binary from the shell.\n\n## Building from source\n\nUse `git clone` or `cabal get threadscope` to get the source and move into the threadscope directory.\n\n### Linux\n\nGTK+2 is required to be installed. On Ubuntu-like systems:\n\n```sh\nsudo apt install libgtk2.0-dev\n```\n\nThen you can build threadscope using cabal:\n\n```sh\ncabal v2-build   # to only build the project, or\ncabal v2-install # to build and install the binary\n```\n\nOr using stack:\n\n```sh\nstack build   # to only build the project, or\nstack install # to build and install the binary\n```\n\n### macOS\n\nGTK+ is required:\n\n```sh\nbrew install gtk+\n```\n\nThen you can build threadscope using cabal:\n\n```sh\ncabal --project-file=cabal.project.osx v2-build   # to only build the project, or\ncabal --project-file=cabal.project.osx v2-install # to build and install the binary\n```\n\nOr using stack:\n\n```sh\nstack --stack-yaml=stack.osx.yaml build   # to only build the project, or\nstack --stack-yaml=stack.osx.yaml install # to install the binary\n```\n\n### Windows\n\n[Chocolatey](https://chocolatey.org/) can be used to install GHC and [MSYS2](https://www.msys2.org/) is the recommended way to install GTK+.\n\n```sh\nchoco install ghc\nrefreshenv\nset PATH=C:\\\\msys64\\\\mingw64\\\\bin;C:\\\\msys64\\\\usr\\\\bin;%PATH%\npacman -Sy mingw-w64-x86_64-gtk2\n```\n\nthen you can build threadscope using cabal:\n\n```sh\ncabal v2-build\n```\n\nOr you can use stack instead.\n\nCAVEAT: gtk2 needs to be installed twice: one for stack's MSYS2 environment and another for local MSYS2 environment.\n\nIn command prompt:\n\n```sh\nstack setup\nstack exec -- pacman --needed -Sy bash pacman pacman-mirrors msys2-runtime msys2-runtime-devel\nstack exec -- pacman -Syu\nstack exec -- pacman -Syuu\nstack exec -- pacman -S base-devel mingw-w64-x86_64-pkg-config mingw-w64-x86_64-toolchain mingw-w64-x86_64-gtk2\nstack install\n```\n\nThen in MSYS2 MINGW64 shell:\n\n```sh\npacman -S $MINGW_PACKAGE_PREFIX-gtk2\necho 'export PATH=$APPDATA/local/bin:$PATH' \u003e\u003e .profile\nsource .profile\nthreadscope\n```\n\nBuilding using stack is not tested in CI. If you find any issues with building with stack, please update the instructions and send a PR.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaskell%2Fthreadscope","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaskell%2Fthreadscope","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaskell%2Fthreadscope/lists"}