{"id":21028888,"url":"https://github.com/chamons/rust-csharp-build-compare","last_synced_at":"2025-07-01T08:03:16.273Z","repository":{"id":87165433,"uuid":"229305670","full_name":"chamons/rust-csharp-build-compare","owner":"chamons","description":"How fast due \"empty\" lib/exec/test projects build","archived":false,"fork":false,"pushed_at":"2019-12-20T18:29:32.000Z","size":10,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-20T14:55:25.325Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","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/chamons.png","metadata":{"files":{"readme":"README.md","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":"2019-12-20T17:09:29.000Z","updated_at":"2020-06-16T20:30:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"47dfc220-e873-42f4-80d6-29963813dad1","html_url":"https://github.com/chamons/rust-csharp-build-compare","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chamons%2Frust-csharp-build-compare","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chamons%2Frust-csharp-build-compare/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chamons%2Frust-csharp-build-compare/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chamons%2Frust-csharp-build-compare/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chamons","download_url":"https://codeload.github.com/chamons/rust-csharp-build-compare/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243467024,"owners_count":20295309,"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-11-19T11:59:32.240Z","updated_at":"2025-03-13T19:16:20.965Z","avatar_url":"https://github.com/chamons.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## rust-csharp-build-compare\n\nThis is a small sample showing how quickly a tiny testable console app (exe + lib + test) can be run in:\n\n- rust\n- .NET Console app (Xamarin/mono) (.nunit3 tests)\n- .NET Core Console app (xunit tests)\n\n\n## Results on my machine\n\n### First Run (fully clean repo)\n\nThis is run after a git clean -xdf so there is no cache of any kind:\n\n```\ngit clean -xdf\nmake \u003c- Measuring this one\n```\n\nFirst number is build, second number is test execution.\n\n- Rust: 0.45, 0.50\n- Xamarin: 2.86 + 1.97, 1.25\n- .NET Core: 1.93, 3.02\n\n### First Run (after simple clean)\n\nThis is a run after doing a build and then clean, so we have nugets but nothing else.\n\n```\nmake\nmake clean\nmake \u003c- Measuring this one\n```\n\n- Rust: 0.46, 0.50\n- Xamarin: 2.86 + 2.00, 1.26\n- .NET Core: 1.57, 3.00\n\n### No change run\n\nThis is a run after another run, no change\n\n```\nmake\nmake \u003c- Measuring this one\n```\n\n- Rust: 0.02, 0.08\n- Xamarin: 2.86 + 1.78, 1.25\n- .NET Core: 1.32, 3.05\n\n### Changing library line\n\nThis is a run after modifying the add method to add 3, thus causing a test failure\n\n```\nmake\nmake code change\nmake rust \u003c- Measuring this one\nmake xamarin \u003c- Measuring this one\nmake netcore \u003c- Measuring this one\n```\n\n- Rust: 0.33, 0.40\n- Xamarin 2.65 + 1.89, 1.28\n- .NET Core: 1.42, 2.99\n\n\n## Optimizations\n\nI chose safe defaults, but you could:\n\n- Remove the nuget restore in the Xamarin case and add `--no-restore` to .NET Core if you are willing to remember to restore\n\nThis changes the timings, dropping about 2 seconds off Xamarin .4 seconds or so off net core\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchamons%2Frust-csharp-build-compare","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchamons%2Frust-csharp-build-compare","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchamons%2Frust-csharp-build-compare/lists"}