-
Notifications
You must be signed in to change notification settings - Fork 384
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
⚰️Remove checked-in tools requiring Git LFS #1052
Conversation
Trying to remove all Git LFS files to remove the following error on build (or even checking out UnitsNet):
The machines used by GitHub have 7Zip and NuGet preinstalled. (I don't know what sfk.exe is!) |
Thanks, I got the notification yesterday that the LFS bandwidth of 1 GB was used up, 1.5 had been used. Storage was fine. I guess the repo is being checked out a lot by CI systems, but I'm astonished that I'm hitting bandwidth limits on a fairly small projects with very small binary files. I bought a LFS data pack to fix it short term, but I'm happy to remove the binaries we don't need. I think we have some dependencies on nuget.exe at least. I don't think we can change the scripts to assume At my work, we use init scripts to download and install any dependencies required to build or run. Mostly Docker stuff. I'm thinking we can add an Slightly unrelated, but we could also switch to GitHub actions, or my favorite Azure DevOps, but it's time I struggle to find. AppVeyor is excruciatingly slow at times, but it has mostly worked well. |
Or better yet, dive into #693 and never worry about what's in a users path again 😉 But I would definitely be in favor of moving to ADO or GitHub actions. I am familiar with ADO but not Actions. |
Oh yeah! Remote environment is really compelling. Have you tried it? Still, I do think the init script is a good idea to make it real easy to checkout and build/run, as I would expect for any github project. Remote container is a nice supplement, but I wouldn't want to enforce it. |
I have tried it with some of my own projects and seen it used in some other open source repos. Really it's great. Especially Linux ones where you end up in some CMake dependency / toolchain craziness. That said, it won't get around this issue. Everyone who clones UnitsNet, including CI builds, are contributing to that bandwidth limit. How do we get around this in the meantime? |
I bought the LFS data pack, so we are good for at least 30 days, or until I unsubscribe. |
Well, if you ever feel like setting up a remote setup for UnitsNet, that would be really cool! |
I will try to find some time. Easier said than done though 😄 |
Codecov ReportPatch and project coverage have no change.
Additional details and impacted files@@ Coverage Diff @@
## master #1052 +/- ##
======================================
Coverage 84% 84%
======================================
Files 334 334
Lines 31827 31827
======================================
Hits 26811 26811
Misses 5016 5016 ☔ View full report in Codecov by Sentry. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
# Conflicts: # Build/build-functions.psm1 # Build/build-pack-nano-nugets.psm1
Pushed some changes, think this is ready to go. Waiting for PR build to see that everything works. Queued a CI build too: https://dev.azure.com/unitsnet/Units.NET/_build/results?buildId=541&view=results |
GitHub currently charges $5 / month due to high bandwidth of downloading tools, of which most tools are not even used except NuGet.exe.
Also, checkout requires everyone to have Git LFS plugin installed.
Changes
init.ps1
script to new.tools
folderdotnet tool install
to use.tools
folder.tools
folder in Git