{"id":21030001,"url":"https://github.com/camfort/camfort","last_synced_at":"2025-04-05T03:11:27.731Z","repository":{"id":8062094,"uuid":"9473985","full_name":"camfort/camfort","owner":"camfort","description":"Light-weight verification and transformation tools for Fortran","archived":false,"fork":false,"pushed_at":"2025-01-09T21:48:16.000Z","size":16487,"stargazers_count":130,"open_issues_count":61,"forks_count":15,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-29T02:08:17.067Z","etag":null,"topics":["automated-refactoring","fortran","haskell","static-analysis","verification"],"latest_commit_sha":null,"homepage":"https://camfort.github.io/","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/camfort.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":"2013-04-16T14:10:41.000Z","updated_at":"2025-03-27T23:04:44.000Z","dependencies_parsed_at":"2023-01-11T18:46:12.373Z","dependency_job_id":"f62cb969-469f-4828-a345-be5878a2660c","html_url":"https://github.com/camfort/camfort","commit_stats":{"total_commits":1869,"total_committers":11,"mean_commits":169.9090909090909,"dds":0.6377742108079187,"last_synced_commit":"2ac4d3396afd9a928cd47917a7ee20c7c1f141a4"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camfort%2Fcamfort","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camfort%2Fcamfort/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camfort%2Fcamfort/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/camfort%2Fcamfort/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/camfort","download_url":"https://codeload.github.com/camfort/camfort/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247280272,"owners_count":20912967,"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":["automated-refactoring","fortran","haskell","static-analysis","verification"],"created_at":"2024-11-19T12:15:19.886Z","updated_at":"2025-04-05T03:11:27.699Z","avatar_url":"https://github.com/camfort.png","language":"Haskell","funding_links":[],"categories":["Language and Tooling"],"sub_categories":["Linters and Formatters"],"readme":"# CamFort\nCamFort is a refactoring and verification tool for scientific Fortran programs.\nIt currently supports Fortran 66, 77, 90, 95 and 2003 (somewhat) with various\nlegacy extensions.\n\nIt is a research project developed in the University of Cambridge and University of\nKent.\n\n## Obtaining\n**Recommended install method by OS:**\n\n  * **Windows:** prebuilt bundles (includes dependencies) at\n    [Releases](https://github.com/camfort/camfort/releases): download\n    ones beginning `camfort-bundle-windows`\n  * **Mac:** via Homebrew: `brew install camfort/camfort/camfort`\n  * **Linux:** prebuilt binaries at\n    [Releases](https://github.com/camfort/camfort/releases). See\n    [Wiki: Building](https://github.com/camfort/camfort/wiki/Building#system-specific-guides)\n    for how to install library dependencies for your OS.\n\nWe provide [prebuilt binaries](https://github.com/camfort/camfort/releases) for\nWindows, Mac and Linux. For Windows, we also provide archives that bundle the\nCamFort executable together with all of its dependencies.\n\nCamFort is also available through Homebrew\n[(formula)](https://github.com/camfort/homebrew-camfort):\n\n    brew install camfort/camfort/camfort\n\nAn older (~2019) version of CamFort is available on Docker at\n[camfort/camfort](https://cloud.docker.com/u/camfort/repository/docker/camfort/camfort).\n\nA new Docker image for developers (still work-in-progress) is available at\n`ghcr.io/camfort/camfort:dev`. Suggested invocation is:\n\n  * podman: `podman run --volume $(pwd):/host --workdir /host\n    ghcr.io/camfort/camfort:dev \u003cCamFort arguments\u003e`\n\n## Usage\nCamFort is a command-line tool, so invoke it from your favourite shell or\ncommand prompt. [Detailed usage\ninformation](https://github.com/camfort/camfort/wiki) is available on the wiki.\n\n## Building\n*(If you want a recent build and don't want to sit through the compilation\nprocess, you may wish to instead check the\n[Actions](https://github.com/camfort/camfort/actions) tab and download the\nrelevant build for your system from a recent workflow run.)*\n\nThis section only covers building briefly. See [Wiki:\nBuilding](https://github.com/camfort/camfort/wiki/Building) for full details.\n\nCamFort supports **GHC 8.4 through GHC 8.10**, and builds with both Stack and\nCabal. We regularly test at least the minimum and maximum supported GHCs.\nReleases prior to/newer than those may have issues. (We welcome fixes that would\nlet us support a wider range of compilers!)\n\nYou will likely need **at least 3 GiBs of memory** and some patience to build\nCamFort.\n\nCamFort depends on the following foreign libraries:\n\n  * [FLINT](https://www.flintlib.org/) \u003e= 2.5\n  * LAPACK\n  * BLAS\n  * [Z3](https://github.com/Z3Prover/z3) \u003e= 4.5 (executable)\n\nThese should be built for your system, but installation method varies.\nSystem-specific guides are provided on the [wiki](https://github.com/camfort/camfort/wiki). *(Alternatively, you could\ncheck the GitHub Actions workflows.)* On Ubuntu:\n\n    apt install libflint-dev liblapack-dev libopenblas-dev z3\n\nThen `stack build` for Stack, or `cabal build` for Cabal.\n\n### Tab Completion (Bash)\nTo enable Bash autocompletion for camfort, add the following to your\n`.bashrc` or `.bash_profile` file:\n\n    eval \"$(camfort --bash-completion-script=$(which camfort))\"\n\n## Contributing\nWe appreciate any bugs you encounter and kindly request you to submit it as an\nissue.\n\nPull requests are much appreciated, but please contact us first if it is a\nsubstantial change. Make sure to run the test suite before you submit.\n\nIf you have scientific code that you would like us to analyse, we would be happy\nto add it to CamFort corpus. This helps us finding useful ways to extend CamFort\nas well as ensuring it is robust.\n\n## Support\n### For maintainers\nSee `doc/maintainers.md`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamfort%2Fcamfort","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcamfort%2Fcamfort","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcamfort%2Fcamfort/lists"}