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

Optimize task filtering #982

Merged
merged 1 commit into from
Jan 14, 2023
Merged

Optimize task filtering #982

merged 1 commit into from
Jan 14, 2023

Conversation

pd93
Copy link
Member

@pd93 pd93 commented Jan 12, 2023

This PR makes some optimizations to the task filtering. It's currently extremely slow on complex configs. Particularly in setups with many files that include one another.

  • Use goroutines for each compilation
  • Filter before compiling a task
  • Simplify filtering API
  • Handle fast compile errors

Edit: Some context, this takes one of my more complex Taskfiles from around 4 seconds to compile the tasks, to around 0.5s!

- This is currently extremely slow on complex multi-include configs
- Use goroutines for each compilation
- Filter before compiling a task
- Simplify filtering
- Handle fast compile errors
@pd93 pd93 changed the title chore: optimize task filtering Optimize task filtering Jan 12, 2023
@andreynering
Copy link
Member

Thanks @pd93!

@andreynering andreynering merged commit 2da7ddc into master Jan 14, 2023
@andreynering andreynering deleted the optimize-task-filtering branch January 14, 2023 19:45
andreynering added a commit that referenced this pull request Jan 14, 2023
@pd93 pd93 mentioned this pull request Jul 19, 2023
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