Document known issues and compatibility in Readme (#45)

This commit is contained in:
Mark Tiedemann 2019-02-16 15:51:08 +01:00 committed by Ryan Dahl
parent d35d01b705
commit 9c7dd18d8d
3 changed files with 71 additions and 20 deletions

View file

@ -1,39 +1,90 @@
# Deno Binary Installer
# deno_install
| **Linux** | **Windows** |
**One-line commands to install Deno on your system.**
| **Linux & Mac** | **Windows** |
|:---------------:|:-----------:|
| [![Build Status](https://travis-ci.com/denoland/deno_install.svg?branch=master)](https://travis-ci.com/denoland/deno_install) | [![Build status](https://ci.appveyor.com/api/projects/status/gtekeaf7r60xa896?branch=master&svg=true)](https://ci.appveyor.com/project/deno/deno-install) |
Downloads the latest Deno binary into `$HOME/.deno/bin`.
## Install Latest Version
**Install with Shell:**
**With Shell:**
```sh
curl -L https://deno.land/x/install/install.sh | sh
```
**Install with PowerShell:**
**With PowerShell:**
```powershell
iex (iwr https://deno.land/x/install/install.ps1)
iwr https://deno.land/x/install/install.ps1 | iex
```
_Note: Depending on your security settings, you may have to run `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser` first to allow downloaded scripts to be executed._
## Install Specific Version
## Install other versions
If you need to install specific version of deno, use the following commands:
**Install with Shell:**
**With Shell:**
```sh
curl -L https://deno.land/x/install/install.sh | sh -s v0.2.0
curl -L https://deno.land/x/install/install.sh | sh -s v0.2.10
```
**Install with PowerShell:**
**With PowerShell:**
```powershell
iwr https://deno.land/x/install/install.ps1 -out install.ps1; .\install.ps1 v0.2.0
iwr https://deno.land/x/install/install.ps1 -out install.ps1; .\install.ps1 v0.2.10
```
_Note: Depending on your security settings, you may have to run `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser` first to allow downloaded scripts to be executed._
## Compatibility
- The Shell installer can be used on Windows via the [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/about).
- The PowerShell installer can be used on Linux and Mac thanks to [PowerShell Core](https://docs.microsoft.com/en-us/powershell/scripting).
## Known Issues
### Could not create SSL/TLS secure channel
```
PS C:\> iwr https://deno.land/x/install/install.ps1 | iex
iwr : The request was aborted: Could not create SSL/TLS secure channel.
At line:1 char:1
+ iwr https://deno.land/x/install/install.ps1 | iex
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
```
**When does this issue occur?**
If your systems' [ServicePointManager](https://docs.microsoft.com/en-us/dotnet/api/system.net.servicepointmanager.securityprotocol) is configured to use an out-dated security protocol, such as, TLS 1.0.
**How can this issue be fixed?**
Configure your system to use an up-to-date security protocol, such as, TLS 1.2:
```powershell
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
```
### Running scripts is disabled
```
PS C:\> iwr https://deno.land/x/install/install.ps1 -out install.ps1; .\install.ps1 v0.2.10
.\install.ps1 : File C:\install.ps1 cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:63
+ ... no.land/x/install/install.ps1 -out install.ps1; .\install.ps1 v0.2.10
+ ~~~~~~~~~~~~~
+ CategoryInfo : SecurityError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnauthorizedAccess
```
**When does this issue occur?**
If your systems' [ExecutionPolicy](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies) is `Undefined` or `Restricted`.
**How can this issue be fixed?**
Allow scripts that are downloaded from the internet to be executed by setting the execution policy to `RemoteSigned`:
```powershell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
```

View file

@ -25,13 +25,13 @@ $BinDir = if ($IsWindows) {
# Test we can install a specific version.
Remove-Item $BinDir -Recurse -Force -ErrorAction SilentlyContinue
.\install.ps1 v0.2.0
.\install.ps1 v0.2.10
$DenoVersion = if ($IsWindows) {
deno --version
} else {
~/.deno/bin/deno --version
}
if (!($DenoVersion -like '*0.2.0*')) {
if (!($DenoVersion -like '*0.2.10*')) {
throw $DenoVersion
}

View file

@ -8,8 +8,8 @@ shfmt -d .
# Test we can install a specific version.
rm -rf ~/.deno
./install.sh v0.2.0
~/.deno/bin/deno -v | grep 0.2.0
./install.sh v0.2.10
~/.deno/bin/deno -v | grep 0.2.10
# Test we can install the latest version.
rm -rf ~/.deno