Title: Integrate upstream .NET patches for Console.ReadKey · Issue #617 · PowerShell/PowerShell · GitHub
Open Graph Title: Integrate upstream .NET patches for Console.ReadKey · Issue #617 · PowerShell/PowerShell
X Title: Integrate upstream .NET patches for Console.ReadKey · Issue #617 · PowerShell/PowerShell
Description: While I'd hoped this would be easy, I must track it because I am blocked (again) on dotnet/cli#1043. This will resolve #571, #461, and #484. The patches were merged in dotnet/corefx#6488, and I've posted manually built patched assemblies...
Open Graph Description: While I'd hoped this would be easy, I must track it because I am blocked (again) on dotnet/cli#1043. This will resolve #571, #461, and #484. The patches were merged in dotnet/corefx#6488, and I've ...
X Description: While I'd hoped this would be easy, I must track it because I am blocked (again) on dotnet/cli#1043. This will resolve #571, #461, and #484. The patches were merged in dotnet/corefx#6488, and I...
Opengraph URL: https://github.com/PowerShell/PowerShell/issues/617
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Integrate upstream .NET patches for Console.ReadKey","articleBody":"While I'd hoped this would be easy, I must track it because I am blocked (again) on dotnet/cli#1043.\n\nThis will resolve #571, #461, and #484. The patches were merged in dotnet/corefx#6488, and I've posted manually built patched assemblies to the #porting channel on Slack.\n\nThe `ReadKey` changes are likely to be incompatible with @palladia's changes in #613 to support intercepting `Ctrl-C`.\n\n\u003e Lifetime of terminal attribute settings. Previously we were setting up the terminal's attributes (e.g. disabling echo) the first time the console was used, and leaving those settings for the duration of the process. This has the very bad effect of leaving such settings on the terminal while other code using that terminal runs. For example, if you launch a process with Process.Start and that process expects input, echo will still be disabled, and you won't be able to see the input. This commit changes how we do these attributes. Instead of setting them and leaving them, we only set them while a read operation is in progress, reverting the settings immediately after. (**This does mean that typing prior to a call to Console.ReadKey(intecept: true) will yield visible text**, an unfortunate tradeoff, but it seems to be the better of the options.)\n\n(Emphasis mine. This trade-off is the only solution we have to a myriad of other problems.)\n\nI believe this means that characters typed while `ReadKey` is not blocking will not get captured. However, the only way to know for sure is extensive testing.\n","author":{"url":"https://github.com/andyleejordan","@type":"Person","name":"andyleejordan"},"datePublished":"2016-03-03T17:27:33.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":4},"url":"https://github.com/617/PowerShell/issues/617"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:6053f54f-a7c5-3596-c5e0-f9e73a27e72f |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | D326:1B6875:1B01F5B:23E6AB9:6A5AE01A |
| html-safe-nonce | 4c3962da1164faf328609a115ab6d9a48026a604a7f91d909f9a8679dd54dc08 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEMzI2OjFCNjg3NToxQjAxRjVCOjIzRTZBQjk6NkE1QUUwMUEiLCJ2aXNpdG9yX2lkIjoiODk0NTYxNjgxNzEzOTQwODkyMiIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | a233ceaef5c4a78a574d7a16f57ba7bbfb25e7e1c2e50b6330fbbc3e908d31ce |
| hovercard-subject-tag | issue:138244036 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/PowerShell/PowerShell/617/issue_layout |
| twitter:image | https://opengraph.githubassets.com/fb89f2af31dae64bf7b61a6263940a54c0251095d6e7933a3548dc2457eeaa8a/PowerShell/PowerShell/issues/617 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/fb89f2af31dae64bf7b61a6263940a54c0251095d6e7933a3548dc2457eeaa8a/PowerShell/PowerShell/issues/617 |
| og:image:alt | While I'd hoped this would be easy, I must track it because I am blocked (again) on dotnet/cli#1043. This will resolve #571, #461, and #484. The patches were merged in dotnet/corefx#6488, and I've ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | andyleejordan |
| hostname | github.com |
| expected-hostname | github.com |
| None | 5290d7e14309ad1e76106a9c4237bd1041517e83ea182c8ab756752cb0c6940b |
| turbo-cache-control | no-preview |
| go-import | github.com/PowerShell/PowerShell git https://github.com/PowerShell/PowerShell.git |
| octolytics-dimension-user_id | 11524380 |
| octolytics-dimension-user_login | PowerShell |
| octolytics-dimension-repository_id | 49609581 |
| octolytics-dimension-repository_nwo | PowerShell/PowerShell |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 49609581 |
| octolytics-dimension-repository_network_root_nwo | PowerShell/PowerShell |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 9c975978430e9ad293956f2bbdaf153b1bd84a99 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width