1. 09 6月, 2021 30 次提交
  2. 08 6月, 2021 10 次提交
    • D
      Fire diagnostic source events from IHostBuilder.Build (#53757) · 543a9836
      David Fowler 提交于
      * Fire diagnostic source events from IHostBuilder.Build
      - We want to enable getting access to the IHostBuilder and IHost during the call to IHostBuilder.Build so that we can access the application's IServiceProvider from various tools. Usually, this is enabled by exposing a different entry point from the application but this technique allows us to let the application execute normally and hook important events via a diagnostic source.
      - Add support for the new pattern in HostFactoryResolver
      - Added support for resolving an IServiceProvider using the new diagnostics source pattern (which doesn't require a different entrypoint)
      - Detect the version of Microsoft.Extensions.Hosting before waiting for events to fire
      - We want to fail fast if we know this version of hosting will never fire events of if the hosting assembly fails to load. Added a version check.
      - Allow the caller to specify a wait timeout.
      -  Added a flag to allow running the application to completion
      543a9836
    • S
      Multi-target RuntimeConfigParser Task (#53827) · 9af4b97f
      Steve Pfister 提交于
      Fixes https://github.com/dotnet/runtime/issues/53811
      
      The props were not taking into account the right paths.
      9af4b97f
    • T
      Sockets.tests: TcpReceiveSendGetsCanceledByDispose: remove Timeout. (#52599) · 06cf0b02
      Tom Deseyn 提交于
      * Sockets.tests: TcpReceiveSendGetsCanceledByDispose: remove Timeout.
      
      This timeout is not needed and masks a more useful exception thrown
      by the test.
      
      * Add WaitAsync to timeout on all async operations
      
      * Add missing timeout
      06cf0b02
    • D
      86719086
    • M
      [libraries] Fix metadata name following arcade change to stop supporting... · d52f9250
      Mitchell Hwang 提交于
      [libraries] Fix metadata name following arcade change to stop supporting multiple targets in helix sdk (#53828)
      Co-authored-by: NMitchell Hwang <mitchell.hwang@microsoft.com>
      d52f9250
    • D
      [main] Update dependencies from dotnet/runtime dotnet/hotreload-utils dotnet/xharness (#53787) · fbf5e794
      dotnet-maestro[bot] 提交于
      [main] Update dependencies from dotnet/runtime dotnet/hotreload-utils dotnet/xharness
      fbf5e794
    • B
      Add more iterators to JIT (#52515) · 5788ea0d
      Bruce Forstall 提交于
      Add more iterators compatible with range-based `for` syntax for various data structures. These iterators all assume (and some check) that the underlying data structures determining the iteration are not changed during the iteration. For example, don't use these to iterate over the predecessor edges if you are changing the order or contents of the predecessor edge list.
      
      - BasicBlock: iterate over all blocks in the function, a subset starting not at the first block, or a specified range of blocks. Removed uses of the `foreach_block` macro. E.g.:
      ```
      for (BasicBlock* const block : Blocks()) // all blocks in function
      for (BasicBlock* const block : BasicBlockSimpleList(fgFirstBB->bbNext)) // all blocks starting at fgFirstBB->bbNext
      for (BasicBlock* const testBlock : BasicBlockRangeList(firstNonLoopBlock, lastNonLoopBlock)) // all blocks in range (inclusive)
      ```
      
      - block predecessors: iterate over all predecessor edges, or all predecessor blocks, e.g.:
      ```
      for (flowList* const edge : block->PredEdges())
      for (BasicBlock* const predBlock : block->PredBlocks())
      ```
      
      - block successors: iterate over all block successors using the `NumSucc()/GetSucc()`, or `NumSucc(Compiler*)/GetSucc(Compiler*)` pairs, e.g.:
      ```
      for (BasicBlock* const succ : Succs())
      for (BasicBlock* const succ : Succs(compiler))
      ```
      Note that there already exists the "AllSuccessorsIter" which iterates over block successors including possible EH successors, e.g.:
      ```
      for (BasicBlock* succ : block->GetAllSuccs(m_pCompiler))
      ```
      
      - switch targets, (namely, the successors of `BBJ_SWITCH` blocks), e.g.:
      ```
      for (BasicBlock* const bTarget : block->SwitchTargets())
      ```
      
      - loops blocks: iterate over all the blocks in a loop, e.g.:
      ```
      for (BasicBlock* const blk : optLoopTable[loopInd].LoopBlocks())
      ```
      
      - Statements: added an iterator shortcut for the non-phi statements, e.g.:
      ```
      for (Statement* const stmt : block->NonPhiStatements())
      ```
      Note that there already exists an iterator over all statements, e.g.:
      ```
      for (Statement* const stmt : block->Statements())
      ```
      
      - EH clauses, e.g.:
      ```
      for (EHblkDsc* const HBtab : EHClauses(this))
      ```
      
      - GenTree in linear order (but not LIR, which already has an iterator), namely, using the `gtNext` links, e.g.:
      ```
      for (GenTree* const call : stmt->TreeList())
      ```
      
      This is a no-diff change.
      5788ea0d
    • Z
    • J
      Resolving ILLink warnings on Microsoft.Extensions.Options.ConfigurationManager (#53552) · 866bf990
      Jose Perez Rodriguez 提交于
      * Resolving ILLink warnings on Microsoft.Extensions.Options.ConfigurationManager
      
      * Fix message
      
      * Addressing messages feedback
      
      * Update src/libraries/Microsoft.Extensions.Logging.Configuration/ref/Microsoft.Extensions.Logging.Configuration.cs
      Co-authored-by: NEric Erhardt <eric.erhardt@microsoft.com>
      
      * Update remaining messages with suggestion.
      Co-authored-by: NEric Erhardt <eric.erhardt@microsoft.com>
      866bf990
    • B
      Fix superpmi.py/jitrollingbuild.py to handle large REST results (#53750) · 2dd402dc
      Bruce Forstall 提交于
      The Azure Storage REST API returns a maximum of 5000 results in
      a single query. We have more results in the JIT rolling build set,
      so we weren't finding queried git_hash values.
      
      Generalize the query to loop using the "marker" continuation functionality.
      
      We currently have about 800 superpmi collections results, but update
      the superpmi.py script similarly for future proofing.
      
      I also changed the query used by jitrollingbuild.py to specify a prefix,
      to avoid requiring so many results. Probably should do the same thing for
      SuperPMI collections. The downside is the REST api doesn't have a facility
      for the prefix to be case-insensitive. I think it's ok to be case-sensitive,
      but we'd need to verify that.
      2dd402dc