ROOTPLOIT
Server: LiteSpeed
System: Linux in-mum-web1878.main-hosting.eu 5.14.0-570.21.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jun 11 07:22:35 EDT 2025 x86_64
User: u435929562 (435929562)
PHP: 7.4.33
Disabled: system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/golang/1.22.0/src/cmd/go/testdata/script/mod_get_extra.txt
cp go.mod go.mod.orig

# The -u flag should not (even temporarily) upgrade modules whose versions are
# determined by explicit queries to any version other than the explicit one.
# Otherwise, 'go get -u' could introduce spurious dependencies.

go get -u example.net/[email protected] example.net/[email protected]
go list -m all
stdout '^example.net/a v0.1.0 '
stdout '^example.net/b v0.1.0 '
! stdout '^example.net/c '


# TODO(bcmills): This property does not yet hold for modules added for
# missing packages when the newly-added module matches a wildcard.

cp go.mod.orig go.mod

go get -u example.net/[email protected] example.net/b/[email protected]
go list -m all
stdout '^example.net/a v0.1.0 '
stdout '^example.net/b v0.1.0 '
stdout '^example.net/c '  # BUG, but a minor and rare one


-- go.mod --
module example

go 1.15

replace (
	example.net/a v0.1.0 => ./a1
	example.net/b v0.1.0 => ./b1
	example.net/b v0.2.0 => ./b2
	example.net/c v0.1.0 => ./c1
	example.net/c v0.2.0 => ./c1
)

-- a1/go.mod --
module example.net/a

go 1.15

// example.net/a needs a dependency on example.net/b, but lacks a requirement
// on it (perhaps due to a missed file in a VCS commit).
-- a1/a.go --
package a
import _ "example.net/b"

-- b1/go.mod --
module example.net/b

go 1.15
-- b1/b.go --
package b

-- b2/go.mod --
module example.net/b

go 1.15

require example.net/c v0.1.0
-- b2/b.go --
package b

-- c1/go.mod --
module example.net/c

go 1.15