Skip to content
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

Rebuild bottles when dependencies are outdated #1381

Closed
kiendang opened this issue May 24, 2020 · 8 comments
Closed

Rebuild bottles when dependencies are outdated #1381

kiendang opened this issue May 24, 2020 · 8 comments
Labels
enhancement 🎉 stale 💤 this is for the issues that are stale

Comments

@kiendang
Copy link

Is your feature request related to a problem? Please describe.

The osgeo-gdal 3.1.0 bottle is currently broken since it was built against cfitsio 3.470 and cfitsio has been upgraded to 3.480. I discovered this when compiling the R package rgdal linking against the bottled osgeo-gdal 3.1.0. Building osgeo-gdal from source works fine.

Error: package or namespace load failed for ‘rgdal’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/Users/kien/.R/library/00LOCK-rgdal/00new/rgdal/libs/rgdal.so':
  dlopen(/Users/kien/.R/library/00LOCK-rgdal/00new/rgdal/libs/rgdal.so, 6): Library not loaded: /usr/local/opt/cfitsio/lib/libcfitsio.8.dylib
  Referenced from: /usr/local/opt/osgeo-gdal/lib/libgdal.27.dylib
  Reason: image not found
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/Users/kien/.R/library/rgdal’
* restoring previous ‘/Users/kien/.R/library/rgdal’

Describe the solution you'd like

The bottles in homebrew-core are rebuilt whenever a dependency is upgraded. Maybe we should do this here as well? I'm not sure this is a feasible solution but willing to help out.

Describe alternatives you've considered

Additional context

@alazarolop
Copy link
Collaborator

Hi @kiendang , thank you for letting us know about this issue. Bottles are being rebuilt now.

I'm not sure neither about an automated process, e.g. at this moment building queue is manually set within the tap. It would be great if anyone could put some light in this topic and we would be glad to add it.

@kiendang
Copy link
Author

kiendang commented May 24, 2020

I'm pretty sure for the formulae in homebrew-core, bottles are rebuilt whenever a dependency is upgraded

https://jonathanchang.org/blog/maintain-your-own-homebrew-repository-with-binary-bottles/

You’ll need to update your bottles in a few situations. If you release a new version of your software, update the url and sha256 in your formula and, if needed, the version field. See brew bump-formula-pr for a quick way to do this. When a library your formula depends_on has breaking changes (e.g., Boost), you’ll need to increment the revision number; if this isn’t already present in your formula, just add revision 1. You can remove this when your software gets a new version.

I'm not sure if this is done manually or automated but if it's the later I'll look into how they set up their CI for this.

@alazarolop
Copy link
Collaborator

GDAL bottles have been rebuilt a106728

@alazarolop
Copy link
Collaborator

@kiendang Exactly, at this moment we manually trigger the process by incrementing the revision number and then use CI to build bottles and update links and SHA in the formula.

It makes sense there is an automated way and it would be great to use within the tap. It's out of my scope, but maybe asking in core repo would shed some light on?

@stale
Copy link

stale bot commented Jun 25, 2020

This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want to keep the issue open, please comment or update the info here. Thank you for your contributions.

@stale stale bot added the stale 💤 this is for the issues that are stale label Jun 25, 2020
@stale
Copy link

stale bot commented Jul 2, 2020

This issue or pull request has been automatically closed because it has not had recent activity. Thank you for your contributions.

@stale stale bot closed this as completed Jul 2, 2020
@alazarolop alazarolop added enhancement 🎉 and removed stale 💤 this is for the issues that are stale labels Jul 2, 2020
@alazarolop alazarolop reopened this Jul 2, 2020
@stale
Copy link

stale bot commented Aug 1, 2020

This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want to keep the issue open, please comment or update the info here. Thank you for your contributions.

@stale stale bot added the stale 💤 this is for the issues that are stale label Aug 1, 2020
@stale
Copy link

stale bot commented Aug 8, 2020

This issue or pull request has been automatically closed because it has not had recent activity. Thank you for your contributions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement 🎉 stale 💤 this is for the issues that are stale
Projects
None yet
Development

No branches or pull requests

2 participants