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

Set warnings to be always printed #3370

Merged
merged 10 commits into from
Aug 12, 2024

Conversation

mahrud
Copy link
Member

@mahrud mahrud commented Jul 21, 2024

Before:

$ ninja install-Msolve
[1/1] Installing package Msolve
 -- making example results for "msolveEliminate"                             -- 1.79479 seconds elapsed
 -- making example results for "msolveSaturate"                              -- 1.6628 seconds elapsed
 -- making example results for "msolveRealSolutions"                         -- 2.01426 seconds elapsed
 -- making example results for "msolveLeadMonomials"                         -- 1.76609 seconds elapsed
 -- making example results for "msolveRUR"                                   -- 1.79487 seconds elapsed
 -- making example results for "msolveGB"                                    -- 1.7215 seconds elapsed
 -- warning: found 6 documentation node(s) not listed as a subnode

After:

$ ninja install-Msolve
[1/1] Installing package Msolve
 -- warning: document: documentation headlines must be less than 100 characters long:
 --   "Macaulay2 interface for msolve; computes real solutions, Groebner basis (in GRevLex), saturations, and elimination ideals."
 -- warning: document: documentation headlines must be less than 100 characters long:
 --   "Uses symbolic methods to compute a certified solution interval for each real solution to a zero dimensional polynomial system."
 -- warning: document: documentation headlines must be less than 100 characters long:
 --   "Uses symbolic methods to compute the rational univariate representation of a zero dimensional polynomial system."
 -- warning: document: documentation headlines must be less than 100 characters long:
 --   "Computes a Groebner basis for the saturation of an ideal by a single polynomial in GrevLex order; only works over a finite field."
 -- warning: found 6 documentation node(s) not listed as a subnode
 -- warning: ("MaybeQuotedTT{msolveEliminate(Ideal,List)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(Ideal,List)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(Ideal,RingElement)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(Ideal,RingElement)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(List,Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(List,Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(RingElement,Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveEliminate(RingElement,Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveGB(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveGB(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveLeadMonomials(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveLeadMonomials(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveRealSolutions(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveRealSolutions(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveRUR(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveRUR(Ideal)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveSaturate(Ideal,RingElement)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)
 -- warning: ("MaybeQuotedTT{msolveSaturate(Ideal,RingElement)}", is an instance of an intermediate markup type ,"MaybeQuotedTT", with no qname, appearing in hypertext during validation)

My intention is to force users to cut short their documentation headlines, but I'm not sure what those markup type warnings are all about ...

@d-torrance
Copy link
Member

I think the MaybeQuotedTT warnings are my fault from #3070. I'll see if I can figure out what's going on.

@mahrud
Copy link
Member Author

mahrud commented Jul 21, 2024

LOL there are 53630 MaybeQuotedTT warnings and 5652 others XD

  • 2176 are:

("LATER{FunctionClosure[../../../../Macaulay2/m2/document.m2:487:94-487:119]}", is an instance of an intermediate markup type ,"LATER", with no qname, appearing in hypertext during validation)

  • 274 are:

documentation headlines must be less than 100 characters long

  • 90 are:

warning: newPackage: use the Contributors or Acknowledgement keywords to acknowledge contributors in the package documentation

Fun fact: out of 6683 examples in M2, the average takes about 2.8s, standard variation is ~5.3, and the top 10 take 15 minutes! I'm thinking of adding a warning for examples taking more than 30s, which is only about 28 examples taking 28 minutes. The example for lowerBound in SumsOfSquares takes more than 4 minutes!

Similarly, out of 4008 tests, average is 0.85s, std.var is ~2.8, but only 7 or so take more than 30s. Maybe a warning there isn't a terrible idea. Surprisingly all tests are under a minute.

@mahrud
Copy link
Member Author

mahrud commented Aug 2, 2024

Rebased this on top of the qname changes. Hopefully there should be very few warnings now.

@mahrud
Copy link
Member Author

mahrud commented Aug 10, 2024

Is this good to merge?

@mahrud mahrud force-pushed the quickfix/warnings branch 2 times, most recently from e444b2f to ae73772 Compare August 11, 2024 01:44
@d-torrance
Copy link
Member

I think so. I'll go ahead and merge #3376 first since this is on top of that.

@d-torrance d-torrance merged commit 3c16151 into Macaulay2:development Aug 12, 2024
5 checks passed
@mahrud mahrud deleted the quickfix/warnings branch August 12, 2024 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants