{"id":13648572,"url":"https://github.com/pulp-platform/morty","last_synced_at":"2025-04-22T11:32:48.170Z","repository":{"id":41998293,"uuid":"195853612","full_name":"pulp-platform/morty","owner":"pulp-platform","description":"A SystemVerilog source file pickler.","archived":false,"fork":false,"pushed_at":"2024-10-20T04:14:01.000Z","size":938,"stargazers_count":56,"open_issues_count":9,"forks_count":5,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-17T21:35:30.428Z","etag":null,"topics":["picklers","rickandmorty","rust","systemverilog-hdl"],"latest_commit_sha":null,"homepage":null,"language":"Rust","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/pulp-platform.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,"zenodo":null}},"created_at":"2019-07-08T16:59:00.000Z","updated_at":"2025-03-24T18:29:51.000Z","dependencies_parsed_at":"2025-04-17T21:49:31.473Z","dependency_job_id":null,"html_url":"https://github.com/pulp-platform/morty","commit_stats":{"total_commits":124,"total_committers":8,"mean_commits":15.5,"dds":0.5967741935483871,"last_synced_commit":"a1a5b483fabc8b119a78f3c5b1921e8d6510720d"},"previous_names":["zarubaf/morty"],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulp-platform%2Fmorty","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulp-platform%2Fmorty/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulp-platform%2Fmorty/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulp-platform%2Fmorty/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pulp-platform","download_url":"https://codeload.github.com/pulp-platform/morty/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250232391,"owners_count":21396632,"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":["picklers","rickandmorty","rust","systemverilog-hdl"],"created_at":"2024-08-02T01:04:21.609Z","updated_at":"2025-04-22T11:32:47.683Z","avatar_url":"https://github.com/pulp-platform.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"![CI](https://github.com/pulp-platform/morty/workflows/CI/badge.svg?branch=master)\n[![Crate](https://img.shields.io/crates/v/morty.svg)](https://crates.io/crates/morty)\n[![dependency status](https://deps.rs/repo/github/pulp-platform/morty/status.svg)](https://deps.rs/repo/github/pulp-platform/morty)\n# Morty\n\n_Come on, flip the pickle, Morty, you're not gonna regret it. The payoff is huge. I turned myself into a pickle, Morty!_\n\nMorty reads SystemVerilog files and pickles them into a single file for easier handling. Optionally it allows to re-name modules with a common prefix or suffix. This allows for easier management of larger projects (they just become a single file). By making them unique they can also depend on different versions of the same dependency without namespace clashes.\n\n## Install\n\nWe provide pre-builds for popular operating systems on our [releases page](https://github.com/pulp-platform/morty/releases).\n\n### From Source\n\nMorty is written in Rust. Get the latest stable Rust version:\n```\ncurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh\n```\nThen install `morty` using `cargo`:\n```\ncargo install --git https://github.com/pulp-platform/morty.git\n```\n\n## Example Usage\n\nTo prefix all modules and packages in `test/package.sv` and `test/package_import_2.sv` and files with `my_little_prefix_` do:\n```\nmorty test/package.sv test/package_import_2.sv -p my_little_prefix_\n```\n\nAlternatively, if you want to pass more files, `morty` will also parse manifest files (as generated by `bender sources -f`). See [Bender](https://github.com/pulp-platform/bender). For example:\n\n```\n[\n  {\n    \"include_dirs\": [\n      \"/path/to/include/dir/common_cells/include/\",\n      \"/path/to/include/dir/axi/include/\"\n    ],\n    \"defines\": {\n      \"DEFINE_TO_BE_SET\": \"1\"\n    },\n    \"files\": [\n      \"/path/to/file_0.sv\",\n      \"/path/to/file_1.sv\",\n      \"/path/to/file_2.sv\"\n    ]\n  },\n  {\n    \"include_dirs\": [\n      \"/path/to/include/dir/deps/include/\"\n    ],\n    \"defines\": {\n      \"ANOTHER_DEFINE_TO_BE_SET\": \"1\"\n    },\n    \"files\": [\n      \"/path/to/file_3.sv\",\n      \"/path/to/file_4.sv\",\n      \"/path/to/file_5.sv\"\n    ]\n  }\n]\n```\n\n## Comments Stripping\n\nOptionally, `morty` can strip comments (`--strip-comments`) of the pickled sources.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpulp-platform%2Fmorty","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpulp-platform%2Fmorty","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpulp-platform%2Fmorty/lists"}