1. 26 1月, 2017 1 次提交
  2. 04 1月, 2017 1 次提交
    • J
      Fix caching logic · c32817f4
      Jared Parsons 提交于
      The caching logic is now much stricture about the handling of missing
      references during caching.  There are valid cases for missing
      references, light up features.  But there are other cases where it
      simply repreesnts an error.  The code now defaults to assuming missing
      references are an error and opts in the cases where it's known to be
      okay.
      c32817f4
  3. 31 12月, 2016 7 次提交
  4. 29 12月, 2016 1 次提交
  5. 15 11月, 2016 2 次提交
  6. 08 11月, 2016 3 次提交
  7. 05 11月, 2016 2 次提交
  8. 26 10月, 2016 1 次提交
  9. 22 10月, 2016 1 次提交
    • J
      TLDR: artifacts are going to move around in Binaries\Debug and the directory... · b9ba3e9e
      Jared Parsons 提交于
      TLDR: artifacts are going to move around in Binaries\Debug and the directory is going to get a lot bigger.
      
      At a high level build projects can be classified into three categories based on how they write output:
      
      - incorrect: a given output path is written to more than once with different contents
      - less correct: a given output path is written to more than once but always with the same content
      - correct: a given output path is written to exactly once
      
      Today the roslyn build is decidedly “incorrect” as pretty much every file is written directly into Binaries\Debug. This means it ends up writing pretty much every Visual Studio SDK DLL twice: once for Dev14 and once for Dev15. For example at various points in the build Binaries\Debug\Microsoft.VisualStudio.Text.Data.dll may refer to Dev14 and at others it’s Dev15. If this seems like a scary proposition for a build that’s because it is indeed scary and it has real consequences. By now pretty much everyone on the team has hit the build race condition that is dragging down our PRs.
      
      The general fix here is to move build outputs into separate directories. Instead of building to $(Configuration) projects now build into say $(Configuration)\Exes\$(MSBuildProjectFileName). This will have a substantial increase in the size of Binaries. We will be looking into ways to reduce that. In the short term though build stability far outweighs the size increase.
      
      This change takes us most of the way to "correct". There are several places I had to compromise in order to get this initial change in:
      
      - UnitTests still build to a common output folder (one for Dev14, another for Dev15). Pulling unit tests apart is going to take a bit of work.
      - Every project has a <RoslynProjectType> entry. This will go away in the future for most projects. It's temporarily needed so I can fix roslyn-internal in parallel without taking down the build.
      - VSL.Imports.targets is messy. Unavoidable for now due to the above. It will get cleaner as I iterate on this.
      
      None of these are relevant to the underlying race condition. Hence it's okay to push them off.
      b9ba3e9e
  10. 30 9月, 2016 3 次提交
  11. 05 8月, 2016 1 次提交
  12. 02 4月, 2016 1 次提交
  13. 01 4月, 2016 2 次提交
  14. 31 3月, 2016 2 次提交
  15. 02 3月, 2016 1 次提交
  16. 01 3月, 2016 1 次提交
    • J
      Move RunTests to it's own output directory · 66f56bc2
      Jared Parsons 提交于
      The Jenkins build is copying Newtonsoft.Json into the output directory.  This is not happening locally and the version chosen by Jenkins is not compatible with the one we are referencing here.  Moving to own output directory to eliminate this issue.
      66f56bc2
  17. 28 2月, 2016 1 次提交
  18. 26 2月, 2016 3 次提交
  19. 17 2月, 2016 4 次提交
  20. 10 2月, 2016 1 次提交
  21. 03 2月, 2016 1 次提交