-
Notifications
You must be signed in to change notification settings - Fork 161
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 DEBUG_LOADING, InfoRead1, and InfoRead2 #2237
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2237 +/- ##
==========================================
- Coverage 85.13% 85.12% -0.01%
==========================================
Files 110 110
Lines 56964 56960 -4
==========================================
- Hits 48494 48489 -5
- Misses 8470 8471 +1
|
2002950
to
5d6828f
Compare
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.
Looks good in general to me, but of course it breaks packages using InfoRead1
and InfoRead2
, as you pointed out yourself. But there's a quick solution to that, too: We can just defined them in lib/obsolete.{gi,gd}
for now, with a list of packages still using them (as we do with lots of other functions).
Although this would break the "Toggle Library Read Mesg" menu entry" in xgap
when used together with the -D
option, but I think that's not something to worry about (I guess it could be changed to just toggle GAPInfo.CommandLineOptions.D
).
InfoRead1( "#I reading ", name, "\n" ); | ||
if GAPInfo.CommandLineOptions.D then | ||
Print( "#I reading ", name, "\n" ); | ||
fi; |
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 briefly thought "hmm, why not introduce an InfoRead
info class, and use that here, as Info(InfoRead, 1, "reading ", name");
but I suppose the answer for that is that at this point, we are still far away from loading lib/info.gi
, so we can't really use Info
yet. OK.
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 tried introducing an InfoClass
for this purpose, but as you say the infrastructure is not initialised when we'd want to use it.
One could (independently of this PR) try moving the info infrastructure as early as possible in startup.
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 think it is fine to leave this with a Print
statement, but perhaps add a comment like
We cannot use
Info
yet, because info.gi has not yet been read
hecke, guava and xgap are on GitHub, so we can send pull requests. For This leaves |
5d6828f
to
dfacaeb
Compare
Re-added |
ae9bbb5
to
9600511
Compare
Concerning the use of |
InfoRead1( "#I reading ", name, "\n" ); | ||
if GAPInfo.CommandLineOptions.D then | ||
Print( "#I reading ", name, "\n" ); | ||
fi; |
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 think it is fine to leave this with a Print
statement, but perhaps add a comment like
We cannot use
Info
yet, because info.gi has not yet been read
I anybody working on PRs for the affected packages, resp. emailing the GBNP maintainer? |
I will email the GBNP people. I think it's best to then remove |
@markuspf did you already do that? One of the authors, Arjeh Cohen, is retired; the other is Jan-Willem Knopper, and I am not sure how interested he is in maintaining GBNP he is. Perhaps we can convince them to let us maintain GBNP for them, and move it to GitHub etc. I know both authors, as well as GBNP, and could also talk to them. |
Just for reference, I emailed Arjeh and Jan Willem, and JW replied and promised to work on an update. |
While I approve in general, clearly we need to wait till packages are adjusted. Also, this PR is not mergeable right now.
25fb1f3
to
47f9551
Compare
I cross-referenced this in #2804 under "PRs blocked by packages". |
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.
Actually, is there any reason not to merge this? Sure, a few packages are broken if GAP is started w/o obsoletes -- but that's already now the case, and in a sense, the very reason we have an "obsoletes" mechanism, no?
Of course we should still keep an open issue tracking the status of this in various packages.
Thoughts? Of course it would be best to rebase this PR one more time, to make sure it's still working fine with latest master.
47f9551
to
85d923c
Compare
Rebased, waiting for AppVeyor to get its act together. I agree this should then be merged. |
lib/obsolete.gd
Outdated
## InfoRead used to be used to print when a file is read using `Read()` | ||
## | ||
## These variables are still referred to by atlasrep, gbnp, guava, hecke | ||
## and xgap. |
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.
@markuspf please update this comment - only atlasrep and gbnp remain (hecke and xgap were done today by @fingolfin).
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.
@markuspf I see that the last sentence in this comment has been deleted completely - why? It should say These variables are still referred to by atlasrep, gbnp
. @fingolfin spent some time on updating these comments recently, and made sure that they provide the actual list of packages that still use obsoletes.
85d923c
to
1751ddb
Compare
They are a leftover of a legacy debugging mechanism.
InfoRead1
andInfoRead2
are moved intoobsoletes.gd
.Unfortunately the following packages still refer to
InfoRead1
orInfoRead2
:InfoRead1
for info output, should be replaced byInfo()
)InfoRead1
): TODO Remove use of InfoRead1 gap-packages/hecke#5These packages will break with this PR if GAP is started without obsoletes.