Text file src/cmd/go/testdata/script/list_ignore_dependency.txt

     1  # go list should skip 'ignore' directives with respect to module boundaries.
     2  # See golang.org/issue/42965
     3  
     4  env ROOT=$WORK${/}gopath${/}src
     5  
     6  # Lists all packages known to the Go toolchain.
     7  # Since go list already does not traverse into other modules found in
     8  # subdirectories, it should only ignore the root node_modules.
     9  go list -x all
    10  stdout 'example$'
    11  stdout 'example/depA'
    12  stderr 'ignoring directory '$ROOT''${/}'node_modules'
    13  ! stderr 'ignoring directory '$ROOT''${/}'depA'${/}'node_modules'
    14  
    15  # Lists all packages within the current Go module.
    16  # Since go list already does not traverse into other modules found in
    17  # subdirectories, it should only ignore the root node_modules.
    18  go list -x ./...
    19  stdout 'example$'
    20  stderr 'ignoring directory '$ROOT''${/}'node_modules'
    21  ! stderr 'ignoring directory '$ROOT''${/}'depA'${/}'node_modules'
    22  
    23  # Lists all packages belonging to the module whose import path starts with
    24  # example.
    25  # In this case, go list will traverse into each module that starts with example.
    26  # So it should ignore the root node_modules and the subdirectories' node_modules.
    27  go list -x example/...
    28  stdout 'example$'
    29  stdout 'example/depA'
    30  stderr 'ignoring directory '$ROOT''${/}'node_modules'
    31  stderr 'ignoring directory '$ROOT''${/}'depA'${/}'node_modules'
    32  
    33  # Entering the submodule should now cause go list to ignore depA/node_modules.
    34  cd depA
    35  go list -x all
    36  stdout 'example/depA'
    37  stderr 'ignoring directory '$ROOT''${/}'depA'${/}'node_modules'
    38  ! stderr 'ignoring directory '$ROOT''${/}'node_modules'
    39  
    40  go list -x ./...
    41  stdout 'example/depA'
    42  stderr 'ignoring directory '$ROOT''${/}'depA'${/}'node_modules'
    43  ! stderr 'ignoring directory '$ROOT''${/}'node_modules'
    44  
    45  -- depA/go.mod --
    46  module example/depA
    47  
    48  go 1.24
    49  ignore ./node_modules
    50  -- depA/depA.go --
    51  package depA
    52  
    53  const Foo = "This is Foo!"
    54  -- depA/node_modules/some_pkg/index.js --
    55  console.log("This should be ignored!");
    56  -- node_modules/some_pkg/index.js --
    57  console.log("This should be ignored!");
    58  -- go.mod --
    59  module example
    60  
    61  go 1.24
    62  
    63  ignore ./node_modules
    64  require example/depA v1.0.0
    65  replace example/depA => ./depA
    66  
    67  -- main.go --
    68  package main
    69  import (
    70          "fmt"
    71          "example/depA"
    72  )
    73  func main() {
    74          fmt.Println("test")
    75          fmt.Println(depA.Foo)
    76  }
    77  

View as plain text