-
Notifications
You must be signed in to change notification settings - Fork 17.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cmd/go: [modules + integration] go mod pack, pack sources as module files #31302
Labels
modules
NeedsInvestigation
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone
Comments
thepudds
changed the title
[modules + integration] go mod pack, packing code as module files
cmd/go: [modules + integration] go mod pack, packing code as module files
Apr 6, 2019
This was referenced Apr 7, 2019
nim-nim
changed the title
cmd/go: [modules + integration] go mod pack, packing code as module files
cmd/go: [modules + integration] go mod pack, pack sources as module files
Apr 7, 2019
This was referenced Apr 8, 2019
julieqiu
added
the
NeedsInvestigation
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
label
May 28, 2019
Change https://golang.org/cl/202042 mentions this issue: |
gopherbot
pushed a commit
to golang/mod
that referenced
this issue
Nov 1, 2019
zip provides three new functions: * Create - build a zip from an abstract list of files, filtering out files in submodules and vendor directories. This is useful for filtering a zip produced by a VCS tool (as the go command does). * CreateFromDir - build a zip from a directory. This is a convenience wrapper for Create. * Unzip - extract a zip file, checking various restrictions. A list of restrictions on module paths, versions, files within zips, and size limits is included in the package documentation. Both Create and Unzip enforce these restrictions. Also: copied cmd/go/internal/txtar to internal/txtar for testing. Updates golang/go#31302 Updates golang/go#33312 Updates golang/go#33778 Change-Id: I6fedb8b839a0cd991c9b210e73bafedc4b286ec5 Reviewed-on: https://go-review.googlesource.com/c/mod/+/202042 Run-TryBot: Jay Conrod <jayconrod@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
The api is https://pkg.go.dev/golang.org/x/mod/zip |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
modules
NeedsInvestigation
Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
This report is part of a series, filled at the request of @mdempsky, focused at making Go modules integrator-friendly.
Please do not close or mark it as duplicate before making sure you’ve read and understood the general context. A lot of work went into identifying problems points precisely.
Needed feature
Go needs an official
go mod pack
command that processes a set of unpacked Go modules and generates the corresponding packed module files for reuse (as specified in goproxy.)This is different from issue #27858, because issue #27858 wants to put the generated files in the module cache, mixing them with modules of other provenance, and forbidding result reuse by anyone but the current user.
Constrains
go.mod
filesystem paths (as produced bygo mod discover
in issue cmd/go: [modules + integration] go mod discover, discover a set of unpacked modules within a directory #31299), one or several directory paths (similar to the directory paths defined in issue cmd/go: [modules + integration] go mod discover, discover a set of unpacked modules within a directory #31299), or a mix of bothdestination
should be any binary directory path the user specifiesprefix
flag should allow pre-pending a path to the destination:destination
, actually work onfilepath.Join(prefix, destination)
canonical_path
, using a/prefix/canonical_path
staging directorydestination
prefix
, since the command is pretending to write directly intodestination
go mod build
(cmd/go: [modules + integration] go mod build, build all the binaries provided by a module #31323) and should use the same conventionsinfo
files discovered next to the correspondingmod
filesinfo
files are not present, or to override them (both strategies could arguably be valid)mod
files by default, removing unneeded requires (but see also cmd/go: [modules + integration] tidy a specific module descriptor #31318)list
index files (but see also cmd/go: [modules + integration] go mod index, reindex a goproxy directory #31303 that is more general and is needed anyway)Motivation
Creating and managing a baseline of third-party code in a go module world requires the ability to generate the go module files that will serve as baseline blocks in separate CI/CD runs.
The text was updated successfully, but these errors were encountered: