-
-
Notifications
You must be signed in to change notification settings - Fork 356
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
Provide error information directly when class definition loading fails #16898
Provide error information directly when class definition loading fails #16898
Conversation
Thanks for opening this pull request! Now continious integration (CI) will build Pharo with your change and run all tests. This might fail due to many reasons! Please check if your PR breaks the build or makes tests fail. Feel free to add comments to the PR. After this, before your PR can be merged it needs one or more reviews. Do not hesitate to ask people (on the Mailinglist or Discord) to help! When the CI shows no problems and there are positive reviews, your PR will be merged. |
I think the original code might be wrong in a slight way, as indicated by the note that a second pass might fix the errors. Perhaps this would be fixed if the terminating condition in |
Please notice that I'm not sure that Pharo use the Metacello repository |
I changed this code in P12. I don't have time to review now but I'll review it next week |
Tx Cyril :) |
Checking the size should be enough because we will not load definitions in the n+1 pass that was not already present in the n pass of the loading. So we don't need to check for equivalences |
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.
I just have one little code cleaning I suggested, except that, the changes seems good to me
errorsDict keysDo: [ :ea | | ||
s | ||
space; | ||
space; | ||
nextPutAll: ea summary; | ||
nextPutAll: ' ('; | ||
nextPutAll: ((errorsDict at: ea) description asString); | ||
nextPutAll: ')'; |
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.
errorsDict keysDo: [ :ea | | |
s | |
space; | |
space; | |
nextPutAll: ea summary; | |
nextPutAll: ' ('; | |
nextPutAll: ((errorsDict at: ea) description asString); | |
nextPutAll: ')'; | |
errorsDict keysAndValuesDo: [ :definition :error | | |
s | |
space; | |
space; | |
nextPutAll: definition summary; | |
nextPutAll: ' ('; | |
nextPutAll: error description asString; | |
nextPutAll: ')'; |
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.
@jecisc may be we should do your changes and integrate this PR
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.
I don't have the rights to push my changes to this PR. I'll just integrate it. My changes were for readability only
Congrats on merging your first pull request! Do another one! We try to have a list of (relatively) easy issues here: https://github.com/orgs/pharo-project/projects/8.
|
Fixes Metacello/metacello#559