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

Extract Build verb from Compile #4599

Closed
2 tasks done
cdmihai opened this issue Dec 17, 2015 · 7 comments
Closed
2 tasks done

Extract Build verb from Compile #4599

cdmihai opened this issue Dec 17, 2015 · 7 comments

Comments

@cdmihai
Copy link
Contributor

cdmihai commented Dec 17, 2015

Compile is having two main responsibilities (happy paths):

  1. find dependencies and decide which of them to compile
  2. know how to invoke the bytecode and the native compiler for a project

In preparing for incremental compilation we need to separate responsibility 1. into a new verb, Build.
Eventually, Build needs to also:

I'll start with two PRs:

  • split Build from Compile. CLI uses build instead of Compile
  • add safety checks and --profile flag to Build ()

Here is the updated user experience from issue #4403

picture1 - copy

picture2

picture3

@blackdwarf
Copy link

@cdmihai we still need to define what this command does all-up. Can you add also a Readme.md that is tailored as with the rest of the commands in the repo that outlines this?

@cdmihai
Copy link
Contributor Author

cdmihai commented Dec 18, 2015

@blackdwarf

Sure. I'll edit the readme and update the PR.

In short, given a root project, Build expands it into a graph of projects (root project + dependencies) and then compiles that graph either incrementally or non incrementally. For each node in the graph, Build invokes Compile to compile that node. Compile is then responsible for knowing how to setup and call the compiler.

For users, the difference mainly lies in calling build instead of compile.

@dannyvv
Copy link
Member

dannyvv commented Dec 18, 2015

Agreed we should have. I'm okay if that happens succinctly on a future pull request. Since lots of folks are blocked on this I wouldn't hold off the PR

@blackdwarf
Copy link

For sure, no need to block the pr on this. Just for tracking.

@cdmihai
Copy link
Contributor Author

cdmihai commented Dec 19, 2015

I created a readme for Build: https://github.com/cdmihai/cli/wiki/Build-readme
And also modified the readme for compile: https://github.com/cdmihai/cli/wiki/Compiler---readme

I'll include them in my current PR once I'm done resolving conflicts :)

@blackdwarf
Copy link

Thanks, will take a look at the PR.

Thanks,
Z

Sent from my tricorder

On Fri, Dec 18, 2015 at 4:55 PM -0800, "Mihai Codoban" <[email protected]mailto:[email protected]> wrote:

I created a readme for Build: https://github.com/cdmihai/cli/wiki/Build-readme
And also modified the readme for compile: https://github.com/cdmihai/cli/wiki/Compiler---readme

I'll include them in my current PR once I'm done resolving conflicts :)

Reply to this email directly or view it on GitHubhttps://github.com/dotnet/cli/issues/532#issuecomment-165929075.

@blackdwarf
Copy link

Done in dotnet/cli#663

@msftgits msftgits transferred this issue from dotnet/cli Jan 31, 2020
rainersigwald pushed a commit that referenced this issue Jul 20, 2020
…0200605.5 (#4599)

Microsoft.Build.Localization , Microsoft.Build
 From Version 16.7.0-preview-20305-04 -> To Version 16.7.0-preview-20305-05

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
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

No branches or pull requests

3 participants