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

Replace hardcoded pass sequence with a scheduler #74

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

jdpage
Copy link
Collaborator

@jdpage jdpage commented Feb 22, 2019

Passes are now tagged with information about what they do, and are automatically placed into the correct order. The scheduling algorithm is designed such that the same input will always produce the same output, so that the order that passes tests is the same order used in production. This can be disabled for testing purposes.

@jdpage jdpage self-assigned this Feb 22, 2019
@jdpage jdpage added this to the Hello world! milestone Feb 22, 2019
@jdpage jdpage force-pushed the pass-schedule branch 2 times, most recently from 7d33ba3 to 951ae3a Compare February 22, 2019 04:37
Passes are now tagged with information about what they do, and are
automatically placed into the correct order. The scheduling algorithm
is designed such that the same input will always produce the same
output, so that the order that passes tests is the same order used in
production. This can be disabled for testing purposes.
@coveralls
Copy link

coveralls commented Feb 22, 2019

Pull Request Test Coverage Report for Build 439

  • 114 of 139 (82.01%) changed or added relevant lines in 11 files are covered.
  • 1 unchanged line in 1 file lost coverage.
  • Overall coverage decreased (-0.8%) to 87.202%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/jeff65/ast.py 3 5 60.0%
src/jeff65/pattern.py 11 13 84.62%
src/jeff65/graph.py 44 54 81.48%
src/jeff65/init.py 1 12 8.33%
Files with Coverage Reduction New Missed Lines %
src/jeff65/init.py 1 22.09%
Totals Coverage Status
Change from base Build 431: -0.8%
Covered Lines: 1630
Relevant Lines: 1847

💛 - Coveralls

@jdpage jdpage requested a review from woodrowbarlow February 22, 2019 06:15
@jdpage
Copy link
Collaborator Author

jdpage commented Feb 22, 2019

@woodrowbarlow Assigned this to you not because I necessarily want you to go over the code--though feel free to--but because I'm not sure if this is a clever idea or a dumb idea and I want your input.

@woodrowbarlow
Copy link
Collaborator

woodrowbarlow commented Feb 22, 2019

so, without looking at the code, my initial thoughts:
a hardcoded pass sequence gives us 100% control and flexibility. do you believe the code is at a level of complexity where manually managing a hardcoded pass sequence would be more painful than (worst case scenario) having to modify the scheduler or fight with it to get the ordering the way we want?
having the pass sequencing be algorithmicly determined based on metadata seems like a good idea eventually. do you think we're there?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants