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

Tracking issue for Windows subsystem support #37499

Closed
alexcrichton opened this Issue Oct 31, 2016 · 10 comments

Comments

Projects
None yet
5 participants
@alexcrichton
Copy link
Member

alexcrichton commented Oct 31, 2016

Tracking issue for rust-lang/rfcs#1665

alexcrichton added a commit to alexcrichton/rust that referenced this issue Oct 31, 2016

rustc: Add knowledge of Windows subsystems.
This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc rust-lang#37499

alexcrichton added a commit to alexcrichton/rust that referenced this issue Oct 31, 2016

rustc: Add knowledge of Windows subsystems.
This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc rust-lang#37499

bors added a commit that referenced this issue Nov 3, 2016

Auto merge of #37501 - alexcrichton:windows-subsystem, r=brson
rustc: Add knowledge of Windows subsystems.

This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc #37499

jonathandturner added a commit to jonathandturner/rust that referenced this issue Nov 4, 2016

Rollup merge of rust-lang#37501 - alexcrichton:windows-subsystem, r=b…
…rson

rustc: Add knowledge of Windows subsystems.

This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc rust-lang#37499

alexcrichton added a commit to alexcrichton/rust that referenced this issue Nov 4, 2016

Rollup merge of rust-lang#37501 - alexcrichton:windows-subsystem, r=b…
…rson

rustc: Add knowledge of Windows subsystems.

This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc rust-lang#37499

bors added a commit that referenced this issue Nov 5, 2016

Auto merge of #37501 - alexcrichton:windows-subsystem, r=brson
rustc: Add knowledge of Windows subsystems.

This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc #37499

alexcrichton added a commit to alexcrichton/rust that referenced this issue Nov 5, 2016

Rollup merge of rust-lang#37501 - alexcrichton:windows-subsystem, r=b…
…rson

rustc: Add knowledge of Windows subsystems.

This commit is an implementation of [RFC 1665] which adds support for the
`#![windows_subsystem]` attribute. This attribute allows specifying either the
"windows" or "console" subsystems on Windows to the linker.

[RFC 1665]: https://github.com/rust-lang/rfcs/blob/master/text/1665-windows-subsystem.md

Previously all Rust executables were compiled as the "console" subsystem which
meant that if you wanted a graphical application it would erroneously pop up a
console whenever opened. When compiling an application, however, this is
undesired behavior and the "windows" subsystem is used instead to have control
over user interactions.

This attribute is validated, but ignored on all non-Windows platforms.

cc rust-lang#37499
@yasammez

This comment has been minimized.

Copy link

yasammez commented Nov 6, 2016

Not sure if this is the right place to comment, but since the RFC is already closed, I don't know where else to put it: a future inclusion of the native subsystem would enable us to write Windows kernel mode drivers. And ring 0 is really, where all that safety comes in handy ;-)

@chriskrycho

This comment has been minimized.

Copy link
Contributor

chriskrycho commented Dec 31, 2016

Has this been stabilized? It doesn't appear in the release notes for 1.13.0 or 1.14.0 (the releases since the last commits and actions on this).

@alexcrichton

This comment has been minimized.

Copy link
Member Author

alexcrichton commented Dec 31, 2016

@chriskrycho this has not yet been stabilized, no

@chriskrycho

This comment has been minimized.

Copy link
Contributor

chriskrycho commented Dec 31, 2016

@alexcrichton thanks for the clarification! I've written it up as to-be-documented over on #38643 accordingly. (And presumably we'd catch it anyway, but I wanted to be exhaustive.)

@alexcrichton alexcrichton added I-nominated and removed I-nominated labels Feb 2, 2017

@alexcrichton

This comment has been minimized.

Copy link
Member Author

alexcrichton commented Feb 2, 2017

This seems like it's baked long enough and we haven't seen many changes, so I'd like to propose we stabilize it! To that end...

@rfcbot fcp merge

@rfcbot

This comment has been minimized.

Copy link

rfcbot commented Feb 2, 2017

Team member @alexcrichton has proposed to merge this. The next step is review by the rest of the tagged teams:

No concerns currently listed.

Once these reviewers reach consensus, this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@brson

This comment has been minimized.

Copy link
Contributor

brson commented Mar 16, 2017

We should consider backporting to 1.17.

@rfcbot

This comment has been minimized.

Copy link

rfcbot commented Mar 16, 2017

🔔 This is now entering its final comment period, as per the review above. 🔔

1 similar comment
@rfcbot

This comment has been minimized.

Copy link

rfcbot commented Mar 16, 2017

🔔 This is now entering its final comment period, as per the review above. 🔔

@rfcbot

This comment has been minimized.

Copy link

rfcbot commented Mar 26, 2017

The final comment period is now complete.

alexcrichton added a commit to alexcrichton/rust that referenced this issue Mar 27, 2017

rustc: Stabilize the `#![windows_subsystem]` attribute
This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Mar 30, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

alexcrichton added a commit to alexcrichton/rust that referenced this issue Apr 1, 2017

rustc: Stabilize the `#![windows_subsystem]` attribute
This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 1, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 2, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 2, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 2, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 3, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 3, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 3, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 3, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 4, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 4, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 4, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 5, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 5, 2017

Rollup merge of rust-lang#40870 - alexcrichton:stabilize-windows-subs…
…ystem, r=aturon

rustc: Stabilize the `#![windows_subsystem]` attribute

This commit stabilizes the `#![windows_subsystem]` attribute which is a
conservative exposure of the `/SUBSYSTEM` linker flag on Widnows platforms. This
is useful for creating applications as well as console programs.

Closes rust-lang#37499

@bors bors closed this in #40870 Apr 5, 2017

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