-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Rework the guile ecosystem #25319
Rework the guile ecosystem #25319
Conversation
Notifying maintainers: |
Why did you revision bump |
I did not notice there are two revision fields in the file. Fixed. |
These are failing with:
|
Hm. Any idea why? I am sure I built the Portfile just fine locally. And `port lint' does not complain. |
thanks @graywolf for working on this. I suppose you looked at the relevant Trac tickets, for example https://trac.macports.org/ticket/60139 ? There appear to be / have been issues in making sure that none of the "guile-x.y" ports install overlapping files and thus would conflict. Is all of this resolved? I haven't looked in detail but it appears that much of the indentation in the Portfiles is messed up: indentations should be with spaces in multiples of four - that is something (admittedly cosmetic) that will need to be resolved. But maIn question is whether all these ports can be installed side-by-side and whether dependents are verified to find/link with the correct version. |
Yes.
Hm, is that something I broke? I tried to match the style of each specific Portfile I modified, but it is well possible I did not do that well in few places.
I currently have all 3 guile ports (guile-1.8, guile-2.2, guile-3.3) installed on my macbook. The guile_select provides a mechanism to pick a default guile to provide binaries, info and manual pages under non-versioned name.
I made sure all ports I modified build. In case guile is used in a variant, I verified that variant. There were 2 or 3 ports (I should have take notes) I did not manage to build at all, but the failures did not seem related to guile changes. So I hoped CI will have more lack for those. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very nice, thanks!
@graywolf I will test this in a day or two. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some things to change in the portfile, mostly non-functional.
@graywolf I can confirm that it fails to parse for the said reason. P. S. Or is it something added in 2.10.0? I have 2.9.99 on this machine. Let me update and try again. |
@graywolf
UPD. If this is not something easy to fix, can we just move docs to a non-default variant? Or disable them for old systems/powerpc. Perhaps not worth spending time to fix this, but it is desirable to have the port building. Local docs are not an essential thing. |
I just installed 2.9.3 from source, and portindex processed the Portfile fine. So I have to admit I have no idea what is wrong. I can change it, is there any other recommended way to suppress
warnings from configure phase? |
Edit: Yeah, it got added in 2.10: Probably should re-enable it and we can either wave off the failure, or 2.10 will be hitting the CI shortly. |
@graywolf Do you have any guess what may be causing a failure? Could it potentially be related to any configure arguments that are passed? For reporting, I get it correctly, that the only way is to subscribe to guile mailing list? No proper bugzilla and no GitHub issues which get responded to? |
Since we only need
(This is not arch-specific.) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@graywolf formatting issues in the guile*
Portfiles has not been fixed yet. If you check the CI port lint
(or run that locally as is part of the PR checklist), will warn about that (i.e., you're using tabs instead of spaces).
On August 21, 2024 3:38:07 AM GMT+02:00, Renee Otten ***@***.***> wrote:
@reneeotten requested changes on this pull request.
@graywolf formatting issues in the `guile*` Portfiles has not been fixed yet. If you check the CI `port lint` (or run that locally as is part of the PR checklist), will warn about that (i.e., you're using tabs instead of spaces).
I believe I did not introduce any such changes, guile-3.0 is correct, and the others were already like that.
My other question still stands: if you have all three `guile` versions installed (which should be possible now), do all ports pick up the correct dependency/libraries to link to?
I had all 3 installed during development, so yes, I believe so.
…--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
|
Even if the others already had tabs instead of spaces, this would be a good opportunity to fix it. You can (and indeed should!) do it in a separate commit of course. |
Sergey Fedorov ***@***.***> writes:
> This is bit concerning, thanks for taking the time to report it upstream. However be prepared for possibly slightly frustrating experience, the project is bit under-staffed.
@graywolf Do you have any guess what may be causing a failure? Could
it potentially be related to any configure arguments that are passed?
Sorry I sadly have no idea. I do not know enough about Guile internals
to be able to even guess. :/
For reporting, I get it correctly, that the only way is to subscribe
to guile mailing list? No proper bugzilla and no GitHub issues which
get responded to? Mailing list is a bit of a pain, but if that is the
only way, I will do it. PowerPC should be fixed eventually.
I do not think you need to subscribe. While mailing list is used for
bug reporting[0], any mail that is received on the mailing list is
converted into a bug report in debbugs (for example like this[1]). You
will get the bug number back by email response. People usually CC when
reacting on the bug, so subscribing is not necessary (and not even
common as far as I know).
0: https://www.gnu.org/software/guile/manual/html_node/Reporting-Bugs.html
1: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72383
…--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.
|
"Perry E. Metzger" ***@***.***> writes:
Even if the others already had tabs instead of spaces, this would be a
good opportunity to fix it. You can (and indeed should!) do it in a
separate commit of course.
Got it, will try to get to it.
W.
…--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.
|
Sounds good. I will do that once back to the PowerMac (so that I can attach the whole log), perhaps tomorrow. |
Regarding the multi-hour bootstrapping process of Guile: Maybe the tiny patch in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=69314 helps (if it does please reply to this bug report so that there is more incentive to the Guile people to react). |
@lemzwerg The problem is that their prebuilt binaries are broken and using them breaks the build (already at the onset of stage0). So we have to avoid using them. (Well, perhaps I might be able to use my earlier binaries, which worked correctly.) |
I have tried to resolve lint warnings. In few hours we will see if that works. One that I know will remain is:
I have no idea what to do regarding that. Any suggestions? |
542ae3b
to
cc19f33
Compare
@graywolf where are we on this - the PR and comments have become a bit unwieldy and thus harder to keep up with. Warnings like:
could occur when ports don't compile stuff and/or not install architecture-dependent files; that doesn't seem to apply to |
are there any other substantial concerns here? If not, let's try and get this merged. |
On August 28, 2024 1:21:41 PM GMT+02:00, Renee Otten ***@***.***> wrote:
@graywolf where are we on this - the PR and comments have become a bit unwieldy and thus harder to keep up with.
Warnings like:
```
port test libctl: Warning: libctl is configured to build for the architecture(s) 'x86_64', but did not install any Mach-O files.
```
could occur when ports don't compile stuff and/or not install architecture-dependent files; that doesn't seem to apply to `libtcl` so I am not sure. You can ignore these for the purpose of this PR.
In that case I believe I am done. All tabs related lint warnings where resolved.
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
|
Nothing from my side: powerpc is broken at the moment with 3.0.10 (3.0.9 worked fine), but no time right now to fix it (and no real urgency with guile). I will return to this in a while in a separate PR. |
@graywolf none of the commits to resolve the lint issues actually do so in the preferred way. The Portfile should be aligned the same throughout if possible (typically one would do so at 20 spaces, so starting at "21" "value" of the fields). Right now it's all over the place... the diff should be a small as possible just with removal of the tabs in favor of spaces. I can take care of these smaller details if you prefer before merging. |
On August 29, 2024 3:45:08 AM GMT+02:00, Renee Otten ***@***.***> wrote:
@graywolf none of the commits to resolve the lint issues actually do so in the preferred way. The Portfile should be aligned the same throughout if possible (typically one would do so at 20 spaces, so starting at "21" "value" of the fields). Right now it's all over the place... the diff should be a small as possible just with removal of the tabs in favor of spaces.
The commits replaced each tab with number of spaces to next tab stop, per the modeline. M-x untabify. Exactly in order to achieve as small diff as possible. Visually the files did not change for me in the editor.
I will find time over the weekend to properly align them if that is what is required.
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
|
@graywolf I got in touch with Guile devs. As of now, Guile 3.0.10 appears to be broken on 32-bit platforms, including x86. See: https://issues.guix.gnu.org/72215 |
I amended the three last commits, hopefully they are to your satisfaction now.
I would have prefer it, but is seems edits to the comments are not sent via the email, so I have read your offer too late (now). :) |
thanks @graywolf I'll merge this now. We can keep an eye on the buildbots and if anything fails to build take a look at fixing that. Thank you for all the work! |
Thank you cooperation and for merging it :) |
Description
Move guile18 to guile-1.8, guile to guile-2.2, create new port guile-3.0. Update all ports accordingly and add guile_select port.
Type(s)
Tested on
macOS 14.6
Xcode x.y / Command Line Tools x.y.z
Verification
Have you
I think there is a value in preserving individual commits. But I can squash it if you insist.
port lint --nitpick
?sudo port test
?sudo port -vst install
?