{"id":15149134,"url":"https://github.com/jamiesinn/csa-usb-tool","last_synced_at":"2025-04-04T18:06:48.094Z","repository":{"id":27977901,"uuid":"115771505","full_name":"JamieSinn/CSA-USB-Tool","owner":"JamieSinn","description":"Tool to download all files in a given FIRST season needed to support teams.","archived":false,"fork":false,"pushed_at":"2025-04-04T00:03:38.000Z","size":369,"stargazers_count":114,"open_issues_count":9,"forks_count":41,"subscribers_count":19,"default_branch":"main","last_synced_at":"2025-04-04T18:06:41.698Z","etag":null,"topics":["control-systems-advisors","first-frc","first-robotics-competition","first-technical-advisors"],"latest_commit_sha":null,"homepage":"","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/JamieSinn.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":"2017-12-30T03:39:31.000Z","updated_at":"2025-04-04T00:03:42.000Z","dependencies_parsed_at":"2023-02-14T14:40:34.937Z","dependency_job_id":"f377ddd1-82f2-4da7-a4eb-600386e9575b","html_url":"https://github.com/JamieSinn/CSA-USB-Tool","commit_stats":{"total_commits":163,"total_committers":31,"mean_commits":5.258064516129032,"dds":0.5214723926380368,"last_synced_commit":"ab20055348ca0817dbb016201a3e6814363b3b03"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamieSinn%2FCSA-USB-Tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamieSinn%2FCSA-USB-Tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamieSinn%2FCSA-USB-Tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JamieSinn%2FCSA-USB-Tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JamieSinn","download_url":"https://codeload.github.com/JamieSinn/CSA-USB-Tool/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247226213,"owners_count":20904465,"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":["control-systems-advisors","first-frc","first-robotics-competition","first-technical-advisors"],"created_at":"2024-09-26T13:42:05.876Z","updated_at":"2025-04-04T18:06:48.072Z","avatar_url":"https://github.com/JamieSinn.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CSA-USB-Tool \n\nThis tool downloads all the installers/packages for a given FRC season. CSA's commonly need these on hand in a USB to help\nteams update to the latest version or to diagnose issues.\n\n## Breaking changes incoming! (CSA USB Tool v2)\n\nThere is currently a very heavy rewrite being done in the background as I have time to do it.\nGoals of this rewrite are as follows:\n\n- Multi-platform support\n\t- Specifically support for OSX/Linux via a Command Line interface\n\t- Windows included for CLI\n- Move off of WinForms\n\t- It sucks. \n- Migration to a better format/organization of the software available per season\n\t- Unknown whether this will still be a CSV, or if it'll be a different format like JSON.\n\t- This would also enable better support for external tools wanting to make use of the updated lists\n- Provide better crash/bug reporting/logging and metrics (opt-out)\n\t- This is done via DevCycle (my work) - with anonymous data/metrics recording of what software is downloaded and when to provide better understanding of when the tool is used.\n- Provide a proper installer for Windows\n\t- This would allow you to update the tool year to year without re-downloading it and just checking for an update (Windows only unfortunately).\n- Signed Windows binaries\n\t- Code-signed binary to prevent smartscreen warnings.\n- FTA specific tooling\n\t- TBD\n\nThese changes are expected to be a breaking change - where the old season file lists will be converted; but no new versions will be added to the \"Years.txt\" requiring an update to the base binary.\n\n## Download/Usage\n\nDownload the release zip file from the GitHub releases on the right hand side -\u003e \n\nThere is a C# GUI available as a github release (recommended), or you can use the `pyusbtool.py` python script. The Python script is not packaged with the release; but you can download it standalone from the repo.\n\nExample usage of the python script on unix based systems:\n\n```console\n$ ./pyusbtool.py FRCSoftware\u003cYEAR\u003e.csv /path/to/drive/ --download\n```\n\n### PreRequisites\n- .NET 6 Runtime\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamiesinn%2Fcsa-usb-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjamiesinn%2Fcsa-usb-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjamiesinn%2Fcsa-usb-tool/lists"}