Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: dotnet/razor
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 64910d5bea
Choose a base ref
...
head repository: dotnet/razor
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 16ec5eb521
Choose a head ref
  • 12 commits
  • 36 files changed
  • 1 contributor

Commits on Jan 22, 2025

  1. Provide debugger strings on default imports

    This provides better debugger strings for the RazorProjectItems that represent default imports.
    DustinCampbell committed Jan 22, 2025
    Configuration menu
    Copy the full SHA
    73b08f6 View commit details
    Browse the repository at this point in the history
  2. Seal all IImportProjectFeature implementations

    Some were sealed, some weren't.
    DustinCampbell committed Jan 22, 2025
    Configuration menu
    Copy the full SHA
    ce64430 View commit details
    Browse the repository at this point in the history
  3. IImportProjectFeature: Change accessibility to internal

    This change makes the IImportProjectFeature interface internal. In addition, the SetImportFeature extension method on RazorProjectEngineBuilder has been moved to the common test library, since it's really intended to be used by tests.
    
    This is a public API breaking change, but there are no users of these APIs in dotnet/sdk.
    DustinCampbell committed Jan 22, 2025
    Configuration menu
    Copy the full SHA
    309862d View commit details
    Browse the repository at this point in the history
  4. Share TestImportProjectFeature across compiler and tooling tests

    Consolidate the three "TestImportProjectFeature" classes and place it in Microsoft.AspNetCore.Razor.Test.Common.
    DustinCampbell committed Jan 22, 2025
    Configuration menu
    Copy the full SHA
    b937a47 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    8ec6ad5 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ef010b8 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    9be372f View commit details
    Browse the repository at this point in the history
  8. Consolidate RazorProjectItems for default imports

    This change introduces a DefaultImportProjectItem that is shared across features that add default imports.
    DustinCampbell committed Jan 22, 2025
    Configuration menu
    Copy the full SHA
    fecec1d View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2025

  1. PooledArrayBuilder: Add ToImmutableReversed and DrainToImmutableReversed

    Add a couple of methods to PooledArrayBuilder to produce a reversed ImmutableArray.
    DustinCampbell committed Jan 23, 2025
    Configuration menu
    Copy the full SHA
    b502495 View commit details
    Browse the repository at this point in the history
  2. RazorProjectFileSystem: Improve performance of FindHierarchicalItems

    This change rewrites RazorProjectFileSystem.FindHierarchicalItems(...) to avoid allocations. It now returns results in reverse order, since every caller in Razor immediately called `Reverse()`. In addition, the access has been reduced to internal since there are no external callers of this method.
    DustinCampbell committed Jan 23, 2025
    Configuration menu
    Copy the full SHA
    14e2159 View commit details
    Browse the repository at this point in the history

Commits on Jan 24, 2025

  1. Remove depth check from RazorProjectFileSystem.FindHierarchicalItems

    FindHierarchicalItem has a "max depth" check to ensure that it returns a maximum of 255 file paths. However, all this method does is perform string manipulation by looking for '/' characters. It does not actually touch the file system.
    
    Technically, this could result in a breaking change because this method is used to find applicable Imports files. So, if the user had a Razor project with 256+ nested subdirectories, the compiler would now consider Imports that it might not have considered in the past. However, that seems like a highly unlikely situation and it's even more unlikely that a user would depend on that behavior.
    DustinCampbell committed Jan 24, 2025
    Configuration menu
    Copy the full SHA
    872b397 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2025

  1. Clean up and rationalize imports in the compiler (#11409)

    This change represents a lot of clean up and consolidate a lot of code
    around how imports are provided and queried for in the compiler.
    
    There are a couple of API breaking changes here that shouldn't have
    external impact. In particular, I've made `IImportProjectFeature`
    internal and changed its API significantly. In addition, I've rewritten
    `RazorProjectFileSystem.FindHierarchicalItems(...)` to reduce
    allocations, make it more efficient, and return its results in reversed
    order (since every caller immediately called `Reverse()`).
    
    CI Build:
    https://dev.azure.com/dnceng/internal/_build/results?buildId=2626377&view=results
    Test Insertion:
    https://dev.azure.com/devdiv/DevDiv/_git/VS/pullrequest/605137
    DustinCampbell authored Jan 30, 2025
    Configuration menu
    Copy the full SHA
    16ec5eb View commit details
    Browse the repository at this point in the history
Loading