{"id":32178138,"url":"https://github.com/mitgcm/xmitgcm","last_synced_at":"2025-10-21T20:49:02.764Z","repository":{"id":11813215,"uuid":"70649781","full_name":"MITgcm/xmitgcm","owner":"MITgcm","description":"Read MITgcm mds binary files into xarray","archived":false,"fork":false,"pushed_at":"2025-08-08T08:53:54.000Z","size":123125,"stargazers_count":66,"open_issues_count":92,"forks_count":68,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-10-21T20:48:52.150Z","etag":null,"topics":["dask","ocean-modelling","oceanography","xarray"],"latest_commit_sha":null,"homepage":"http://xmitgcm.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MITgcm.png","metadata":{"files":{"readme":"README.rst","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}},"created_at":"2016-10-12T01:22:04.000Z","updated_at":"2025-10-13T17:39:11.000Z","dependencies_parsed_at":"2023-01-13T21:00:40.732Z","dependency_job_id":"bdf4c701-b69d-4643-b9a9-f1779269604d","html_url":"https://github.com/MITgcm/xmitgcm","commit_stats":{"total_commits":199,"total_committers":26,"mean_commits":7.653846153846154,"dds":0.6733668341708543,"last_synced_commit":"63ba7511c6ada3bb7c56e4c6f7a3f770c9f9c62f"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/MITgcm/xmitgcm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MITgcm%2Fxmitgcm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MITgcm%2Fxmitgcm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MITgcm%2Fxmitgcm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MITgcm%2Fxmitgcm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MITgcm","download_url":"https://codeload.github.com/MITgcm/xmitgcm/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MITgcm%2Fxmitgcm/sbom","scorecard":{"id":87672,"data":{"date":"2025-08-11","repo":{"name":"github.com/MITgcm/xmitgcm","commit":"472252b487ba4aabc36dcf3d80920dd50973c9ea"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.6,"checks":[{"name":"Maintained","score":5,"reason":"4 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 5","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":7,"reason":"Found 22/29 approved changesets -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci.yaml:1","Warn: no topLevel permission defined: .github/workflows/pythonpublish.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yaml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yaml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yaml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yaml:93: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yaml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yaml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci.yaml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/ci.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pythonpublish.yaml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/pythonpublish.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pythonpublish.yaml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/MITgcm/xmitgcm/pythonpublish.yaml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/pythonpublish.yaml:18","Warn: pipCommand not pinned by hash: .github/workflows/pythonpublish.yaml:19","Info:   0 out of   6 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   4 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 29 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-15T07:16:32.882Z","repository_id":11813215,"created_at":"2025-08-15T07:16:32.883Z","updated_at":"2025-08-15T07:16:32.883Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280333492,"owners_count":26312845,"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","status":"online","status_checked_at":"2025-10-21T02:00:06.614Z","response_time":58,"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"}},"keywords":["dask","ocean-modelling","oceanography","xarray"],"created_at":"2025-10-21T20:48:59.229Z","updated_at":"2025-10-21T20:49:02.752Z","avatar_url":"https://github.com/MITgcm.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"xmitgcm: Read MITgcm mds binary files into xarray\n=================================================\n\n|pypi| |Build Status| |codecov| |docs| |DOI|\n\nxmitgcm is a python package for reading MITgcm_ binary MDS files into\nxarray_ data structures. By storing data in dask_ arrays, xmitgcm enables\nparallel, out-of-core_ analysis of MITgcm output data.\n\nLinks\n-----\n\n-  HTML documentation: https://xmitgcm.readthedocs.org\n-  Issue tracker: https://github.com/MITgcm/xmitgcm/issues\n-  Source code: https://github.com/MITgcm/xmitgcm\n\nInstallation\n------------\n\nRequirements\n^^^^^^^^^^^^\n\nxmitgcm is compatible with python \u003e=3.7. It requires xarray_\n(\u003e= version 0.14.1) and dask_ (\u003e= version 1.0).\nThese packages are most reliably installed via the\n`conda \u003chttps://conda.pydata.org/docs/\u003e`_ environment management\nsystem, which is part of the Anaconda_ python distribution. Assuming you have\nconda available on your system, the dependencies can be installed with the\ncommand::\n\n    conda install xarray dask\n\nIf you are using earlier versions of these packages, you should update before\ninstalling xmitgcm.\n\nInstallation via pip\n^^^^^^^^^^^^^^^^^^^^\n\nIf you just want to use xmitgcm, the easiest way is to install via pip::\n\n    pip install xmitgcm\n\nThis will automatically install the latest release from\n`pypi \u003chttps://pypi.python.org/pypi\u003e`_.\n\nInstallation from github\n^^^^^^^^^^^^^^^^^^^^^^^^\n\nxmitgcm is under active development. To obtain the latest development version,\nyou may clone the `source repository \u003chttps://github.com/MITgcm/xmitgcm\u003e`_\nand install it::\n\n    git clone https://github.com/MITgcm/xmitgcm.git\n    cd xmitgcm\n    python setup.py install\n\nUsers are encouraged to `fork \u003chttps://help.github.com/articles/fork-a-repo/\u003e`_\nxmitgcm and submit issues_ and `pull requests`_.\n\nQuick Start\n-----------\n\nFirst make sure you understand what an xarray_ Dataset object is. Then find\nsome MITgcm MDS data. If you don't have any data of your own, you can download\nthe xmitgcm\n`test repositories \u003chttps://figshare.com/articles/xmitgcm_test_datasets/4033530\u003e`_\nTo download the some test data, run the shell commands::\n\n    $ curl -L -J -O https://ndownloader.figshare.com/files/6494718\n    $ tar -xvzf global_oce_latlon.tar.gz\n\nThis will create a directory called ``global_oce_latlon`` which we will use\nfor the rest of these examples. If you have your own data, replace this with\nthe path to your mitgcm files.\n\nTo open MITgcm MDS data as an xarray.Dataset, do the following in python::\n\n    from xmitgcm import open_mdsdataset\n    data_dir = './global_oce_latlon'\n    ds = open_mdsdataset(data_dir)\n\n``data_dir``, should be the path (absolute or relative) to an\nMITgcm run directory. xmitgcm will automatically scan this directory and\ntry to determine the file prefixes and iteration numbers to read. In some\nconfigurations, the ``open_mdsdataset`` function may work without further\nkeyword arguments. In most cases, you will have to specify further details.\n\nConsult the `online documentation \u003chttps://xmitgcm.readthedocs.org\u003e`_ for\nmore details.\n\n.. |DOI| image:: https://zenodo.org/badge/70649781.svg\n   :target: https://zenodo.org/badge/latestdoi/70649781\n.. |Build Status| image:: https://travis-ci.org/MITgcm/xmitgcm.svg?branch=master\n   :target: https://travis-ci.org/MITgcm/xmitgcm\n   :alt: travis-ci build status\n.. |codecov| image:: https://codecov.io/github/MITgcm/xmitgcm/coverage.svg?branch=master\n   :target: https://codecov.io/github/MITgcm/xmitgcm?branch=master\n   :alt: code coverage\n.. |pypi| image:: https://badge.fury.io/py/xmitgcm.svg\n   :target: https://badge.fury.io/py/xmitgcm\n   :alt: pypi package\n.. |docs| image:: https://readthedocs.org/projects/xmitgcm/badge/?version=stable\n   :target: https://xmitgcm.readthedocs.org/en/stable/?badge=stable\n   :alt: documentation status\n\n.. _dask: https://dask.pydata.org\n.. _xarray: https://xarray.pydata.org\n.. _Comodo: https://pycomodo.forge.imag.fr/norm.html\n.. _issues: https://github.com/MITgcm/xmitgcm/issues\n.. _`pull requests`: https://github.com/MITgcm/xmitgcm/pulls\n.. _MITgcm: http://mitgcm.org/public/r2_manual/latest/online_documents/node277.html\n.. _out-of-core: https://en.wikipedia.org/wiki/Out-of-core_algorithm\n.. _Anaconda: https://www.continuum.io/downloads\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitgcm%2Fxmitgcm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmitgcm%2Fxmitgcm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmitgcm%2Fxmitgcm/lists"}