Skip to content
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

proposal: syscall: reconsider entire package #5616

Open
mikioh opened this issue Jun 3, 2013 · 6 comments

Comments

@mikioh
Copy link
Contributor

commented Jun 3, 2013

So far syscall package holds tons of constants, a bit abstracted and raw functions that
wrap syscalls especially for networking stuff.

E.g.,
Constants assigned by IANA (IPPROTO, IFType,), other standard bodies (could be moved
into each specific package)
Set/Getsockopt for Windows
Set/GetsockoptInt,Facilites for Unix variants
Routing sockets, constants for BSD variants
Netlink sockets, constants for Linux

We can reconsider the package shape even under the Go 1 contract.
(and make things easy for bridging btw Go1 and Go2.)
@bradfitz

This comment has been minimized.

Copy link
Member

commented Jul 23, 2013

Comment 1:

Labels changed: added longterm, go2, removed priority-triage.

Status changed to Accepted.

@rsc

This comment has been minimized.

Copy link
Contributor

commented Dec 4, 2013

Comment 2:

Labels changed: added repo-main.

@rsc

This comment has been minimized.

Copy link
Contributor

commented Mar 4, 2014

Comment 3:

Labels changed: added release-none.

@mikioh

This comment has been minimized.

Copy link
Contributor Author

commented Mar 4, 2014

Comment 4:

Now I feel that syscall should keep syscall.Syscall-like functions in and constants and
numbers out.

Labels changed: removed go2.

@mikioh

This comment has been minimized.

Copy link
Contributor Author

commented Mar 4, 2014

Comment 5:

Issue #2999 has been merged into this issue.

@mikioh mikioh added accepted labels Mar 4, 2014

@bradfitz bradfitz added Go2 accepted and removed accepted labels Dec 17, 2014

@rsc rsc added this to the Unplanned milestone Apr 10, 2015

@rsc rsc removed release-none labels Apr 10, 2015

@rsc rsc changed the title syscall: reconsideration on what syscall package should hold syscall: reconsider entire package Jun 17, 2017

@rsc rsc changed the title syscall: reconsider entire package proposal: syscall: reconsider entire package Jun 17, 2017

@ianlancetaylor

This comment has been minimized.

Copy link
Contributor

commented Dec 6, 2017

For Go 2, we should decide whether to simply remove the syscall package from the standard library, and direct people to use golang.org/x/sys instead. We could have a slightly smaller version of the current syscall package in internal/syscall for use by runtime, os, net, and whatever other standard library packages need syscall support.

Our vote is to do this: to remove syscall entirely from Go 2, and use an automated rewriter to change all current uses to use golang.org/x/sys instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.