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

An n-pass linter #220

Merged
merged 19 commits into from
Apr 26, 2017
Merged

An n-pass linter #220

merged 19 commits into from
Apr 26, 2017

Conversation

TotalVerb
Copy link
Collaborator

@TotalVerb TotalVerb commented Apr 15, 2017

This is a big change that switches the current one-pass linter to a as-many-passes-as-needed linter. It should be a big step toward removing spurious symbol not found problems. Currently there are a lot of broken tests, but they should mostly not be too hard to fix.

This breaks a lot of backward compatibility for LintContext, LintMessage, etc., because large portions of the infrastructure had to be rewritten. I'll document the changes.

Closes #12.

@coveralls
Copy link

coveralls commented Apr 15, 2017

Coverage Status

Coverage increased (+1.3%) to 92.114% when pulling a5d4807 on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 15, 2017

Coverage Status

Coverage increased (+1.3%) to 92.084% when pulling 57c7de0 on fw/npass into 7f311ed on master.

@TotalVerb
Copy link
Collaborator Author

Running this on packages tends to yield a barrage of "local variable shadows global" problems (the new I340, I341, I342, I343). This is consistent with every package I try it on. They're not false positives but very annoying, so it might make sense to disable them by default.

@coveralls
Copy link

coveralls commented Apr 15, 2017

Coverage Status

Coverage increased (+1.1%) to 91.909% when pulling 23a275a on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 16, 2017

Coverage Status

Coverage increased (+1.1%) to 91.895% when pulling c7e9578 on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 20, 2017

Coverage Status

Coverage increased (+1.1%) to 91.895% when pulling 1f2229e on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 20, 2017

Coverage Status

Coverage increased (+1.06%) to 91.844% when pulling 1f2229e on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 20, 2017

Coverage Status

Coverage increased (+1.06%) to 91.844% when pulling f96d0ad on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 20, 2017

Coverage Status

Coverage increased (+1.8%) to 92.599% when pulling ada82a3 on fw/npass into 7f311ed on master.

:ERROR => :magenta,
:INFO => Base.info_color(),
:WARN => Base.warn_color(),
:ERROR => isdefined(Base, :error_color) ? Base.error_color() :
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would it ever be the case where this is not defined ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On 0.5, Base.error_color doesn't exist, because errors and warnings are both printed in Base.warn_color().

@coveralls
Copy link

coveralls commented Apr 20, 2017

Coverage Status

Coverage increased (+1.9%) to 92.71% when pulling 8c1d5a0 on fw/npass into 7f311ed on master.

@coveralls
Copy link

coveralls commented Apr 24, 2017

Coverage Status

Coverage increased (+2.0%) to 92.869% when pulling 393b5cd on fw/npass into 60a2068 on master.

@coveralls
Copy link

coveralls commented Apr 24, 2017

Coverage Status

Coverage increased (+2.0%) to 92.845% when pulling 5e5fea5 on fw/npass into 60a2068 on master.

@coveralls
Copy link

coveralls commented Apr 24, 2017

Coverage Status

Coverage increased (+2.04%) to 92.929% when pulling 8d46ed5 on fw/npass into 60a2068 on master.

@coveralls
Copy link

coveralls commented Apr 24, 2017

Coverage Status

Coverage increased (+2.04%) to 92.929% when pulling bf7e902 on fw/npass into 60a2068 on master.

@TotalVerb
Copy link
Collaborator Author

I think I'll merge this soon to give it time to simmer on master, in case people who are checkouting Lint are depending on the removed features. However this isn't ready for tagging yet; there are still a lot of broken tests that need to be fixed.

@TotalVerb TotalVerb changed the title WIP: An n-pass linter An n-pass linter Apr 26, 2017
@TotalVerb TotalVerb merged commit 70bdec6 into master Apr 26, 2017
@TotalVerb TotalVerb deleted the fw/npass branch April 27, 2017 02:39
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.

Change to 2-pass lint process
3 participants