...

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

Documentation: cmd/go/testdata/script

     1# If go.mod has go 1.27 or higher, multiple require blocks should be
     2# consolidated.  Even those with comments.
     3
     4cp go.mod.127 go.mod
     5go mod tidy
     6cmp go.mod go.mod.127tidy
     7
     8# If go.mod has go 1.26, blocks with comments should be preserved.
     9cp go.mod.126 go.mod
    10go mod tidy
    11cmp go.mod go.mod.126tidy
    12
    13-- go.mod.127 --
    14module example.com/m
    15
    16go 1.27
    17
    18require example.com/a v1.0.0
    19
    20// Block comment
    21require (
    22	example.com/b v1.0.0
    23)
    24
    25// Another block comment
    26require (
    27	example.com/d v1.0.0 // an inline comment
    28  example.com/c v1.0.0 // indirect
    29)
    30
    31// A third block comment
    32require (
    33  example.com/e v1.0.0 // indirect
    34)
    35
    36replace (
    37	example.com/a v1.0.0 => ./a
    38	example.com/b v1.0.0 => ./b
    39	example.com/c v1.0.0 => ./c
    40	example.com/d v1.0.0 => ./d
    41	example.com/e v1.0.0 => ./e
    42)
    43-- go.mod.127tidy --
    44module example.com/m
    45
    46go 1.27
    47
    48// Block comment
    49//
    50// Another block comment
    51require (
    52	example.com/a v1.0.0
    53	example.com/b v1.0.0
    54	example.com/d v1.0.0 // an inline comment
    55)
    56
    57// A third block comment
    58require (
    59	example.com/c v1.0.0 // indirect
    60	example.com/e v1.0.0 // indirect
    61)
    62
    63replace (
    64	example.com/a v1.0.0 => ./a
    65	example.com/b v1.0.0 => ./b
    66	example.com/c v1.0.0 => ./c
    67	example.com/d v1.0.0 => ./d
    68	example.com/e v1.0.0 => ./e
    69)
    70-- go.mod.126 --
    71module example.com/m
    72
    73go 1.26
    74
    75require example.com/a v1.0.0
    76
    77// Block comment
    78require (
    79	example.com/b v1.0.0
    80	example.com/d v1.0.0
    81)
    82
    83require example.com/c v1.0.0 // indirect
    84
    85replace (
    86	example.com/a v1.0.0 => ./a
    87	example.com/b v1.0.0 => ./b
    88	example.com/c v1.0.0 => ./c
    89	example.com/d v1.0.0 => ./d
    90	example.com/e v1.0.0 => ./e
    91)
    92-- go.mod.126tidy --
    93module example.com/m
    94
    95go 1.26
    96
    97require example.com/a v1.0.0
    98
    99// Block comment
   100require (
   101	example.com/b v1.0.0
   102	example.com/d v1.0.0
   103)
   104
   105require (
   106	example.com/c v1.0.0 // indirect
   107	example.com/e v1.0.0 // indirect
   108)
   109
   110replace (
   111	example.com/a v1.0.0 => ./a
   112	example.com/b v1.0.0 => ./b
   113	example.com/c v1.0.0 => ./c
   114	example.com/d v1.0.0 => ./d
   115	example.com/e v1.0.0 => ./e
   116)
   117-- m.go --
   118package m
   119import _ "example.com/a"
   120import _ "example.com/b"
   121import _ "example.com/d"
   122
   123-- a/go.mod --
   124module example.com/a
   125go 1.26
   126require example.com/c v1.0.0
   127require example.com/e v1.0.0
   128-- a/a.go --
   129package a
   130import _ "example.com/c"
   131import _ "example.com/e"
   132
   133-- b/go.mod --
   134module example.com/b
   135go 1.26
   136-- b/b.go --
   137package b
   138
   139-- c/go.mod --
   140module example.com/c
   141go 1.26
   142-- c/c.go --
   143package c
   144
   145-- d/go.mod --
   146module example.com/d
   147go 1.26
   148-- d/d.go --
   149package d
   150
   151-- e/go.mod --
   152module example.com/e
   153go 1.26
   154-- e/e.go --
   155package e

View as plain text