Al-HUWAITI Shell
Al-huwaiti


Server : LiteSpeed
System : Linux in-mum-web1333.main-hosting.eu 4.18.0-553.37.1.lve.el8.x86_64 #1 SMP Mon Feb 10 22:45:17 UTC 2025 x86_64
User : u141265441 ( 141265441)
PHP Version : 8.4.3
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Directory :  /proc/self/root/opt/golang/1.22.0/src/cmd/go/testdata/script/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/opt/golang/1.22.0/src/cmd/go/testdata/script/mod_internal.txt
env GO111MODULE=on
[short] skip

# golang.org/x/internal should be importable from other golang.org/x modules.
go mod edit -module=golang.org/x/anything
go get .

# ...and their tests...
go test
stdout PASS

# ...but that should not leak into other modules.
go get ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

# Internal packages in the standard library should not leak into modules.
go get ./fromstd
! go build ./fromstd
stderr 'use of internal package internal/testenv not allowed'

# Dependencies should be able to use their own internal modules...
go mod edit -module=golang.org/notx
go get ./throughdep

# ... but other modules should not, even if they have transitive dependencies.
go get .
! go build .
stderr 'use of internal package golang.org/x/.* not allowed'

# And transitive dependencies still should not leak.
go get ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

# Replacing an internal module should keep it internal to the same paths.
go mod edit -module=golang.org/notx
go mod edit -replace golang.org/x/internal=./replace/golang.org/notx/internal
go get ./throughdep

go get ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

go mod edit -replace golang.org/x/internal=./vendor/golang.org/x/internal
go get ./throughdep

go get ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

-- go.mod --
module TBD
go 1.12
-- useinternal.go --
package useinternal
import _ "golang.org/x/internal/subtle"

-- useinternal_test.go --
package useinternal_test
import (
	"testing"
	_ "golang.org/x/internal/subtle"
)

func Test(*testing.T) {}

-- throughdep/useinternal.go --
package throughdep
import _ "golang.org/x/useinternal"

-- baddep/useinternal.go --
package baddep
import _ "golang.org/notx/useinternal"

-- fromstd/useinternal.go --
package fromstd
import _ "internal/testenv"

-- replace/golang.org/notx/internal/go.mod --
module golang.org/x/internal

-- replace/golang.org/notx/internal/subtle/subtle.go --
package subtle
// Ha ha! Nothing here!

-- vendor/golang.org/x/internal/go.mod --
module golang.org/x/internal

-- vendor/golang.org/x/internal/subtle/subtle.go --
package subtle
// Ha ha! Nothing here!

Al-HUWAITI Shell