chore: release Erlang R16B03
- Provide a better install experience by cleaning up installed versions in the erl 5.10 series and their inclusion in PATH
This commit is contained in:
@@ -3,10 +3,10 @@
|
|||||||
<metadata>
|
<metadata>
|
||||||
<id>Erlang16</id>
|
<id>Erlang16</id>
|
||||||
<title>Erlang OTP</title>
|
<title>Erlang OTP</title>
|
||||||
<version>16.01.4</version>
|
<version>16.03.4</version>
|
||||||
<authors>Joe Armstrong, Ericsson, Erlang Contributors</authors>
|
<authors>Joe Armstrong, Ericsson, Erlang Contributors</authors>
|
||||||
<owners>Ethan J Brown</owners>
|
<owners>Ethan J Brown</owners>
|
||||||
<summary>Erlang R16B01 is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.</summary>
|
<summary>Erlang R16B03 is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.</summary>
|
||||||
<description>What is Erlang?
|
<description>What is Erlang?
|
||||||
|
|
||||||
Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.
|
Erlang is a programming language used to build massively scalable soft real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance.
|
||||||
@@ -16,7 +16,7 @@ Erlang quickstart
|
|||||||
What is OTP?
|
What is OTP?
|
||||||
|
|
||||||
OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems. It includes its own distributed database, applications to interface towards other languages, debugging and release handling tools.</description>
|
OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems. It includes its own distributed database, applications to interface towards other languages, debugging and release handling tools.</description>
|
||||||
<releaseNotes>http://www.erlang.org/download/otp_src_R16B01.readme</releaseNotes>
|
<releaseNotes>http://www.erlang.org/download/otp_src_R16B03.readme</releaseNotes>
|
||||||
<projectUrl>http://www.erlang.org/</projectUrl>
|
<projectUrl>http://www.erlang.org/</projectUrl>
|
||||||
<tags>erlang concurrent programming language sdk otp</tags>
|
<tags>erlang concurrent programming language sdk otp</tags>
|
||||||
<licenseUrl>http://www.erlang.org/EPLICENSE</licenseUrl>
|
<licenseUrl>http://www.erlang.org/EPLICENSE</licenseUrl>
|
||||||
|
@@ -1,11 +1,48 @@
|
|||||||
$package = 'Erlang'
|
$package = 'Erlang'
|
||||||
$version = 'R16B01'
|
$version = 'R16B03'
|
||||||
$installFolder = 'erl5.10.2'
|
$installFolder = 'erl5.10.4'
|
||||||
$releaseFolder = "$installFolder\releases\$version"
|
$releaseFolder = "$installFolder\releases\$version"
|
||||||
|
|
||||||
|
function Remove-PreviousVersions
|
||||||
|
{
|
||||||
|
$filter = 'erl5.10*'
|
||||||
|
$installs = (Get-ChildItem ${Env:\ProgramFiles(x86)} -Filter $filter) +
|
||||||
|
(Get-ChildItem $Env:ProgramFiles -Filter $filter)
|
||||||
|
|
||||||
|
$installs |
|
||||||
|
Get-ChildItem -Filter 'Uninstall.exe' |
|
||||||
|
Select -ExpandProperty FullName |
|
||||||
|
% {
|
||||||
|
$uninstallParams = @{
|
||||||
|
PackageName = $package;
|
||||||
|
FileType = 'exe';
|
||||||
|
SilentArgs = '/S';
|
||||||
|
File = $_;
|
||||||
|
}
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
# including additions to PATH
|
||||||
|
$binPath = (Join-Path (Split-Path $_) 'bin') -replace '\\', '\\'
|
||||||
|
|
||||||
|
$userPaths = [Environment]::GetEnvironmentVariable('Path', 'User') -split ';' |
|
||||||
|
? { ($_ -notmatch $binPath) -and (![String]::IsNullOrEmpty($_)) } |
|
||||||
|
Select-Object -Unique
|
||||||
|
|
||||||
|
[Environment]::SetEnvironmentVariable('Path', ($userPaths -join ';'), 'User')
|
||||||
|
|
||||||
|
Uninstall-ChocolateyPackage @uninstallParams
|
||||||
|
}
|
||||||
|
catch [Exception]
|
||||||
|
{
|
||||||
|
Write-Warning "Could not properly uninstall existing Erlang from $($uninstallParams.File):`n`n$_"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
$installedPath = (Join-Path "${Env:\ProgramFiles(x86)}" $installFolder),
|
$installedPath = (Join-Path ${Env:\ProgramFiles(x86)} $installFolder),
|
||||||
(Join-Path $Env:ProgramFiles "$installFolder\bin") |
|
(Join-Path $Env:ProgramFiles "$installFolder\bin") |
|
||||||
? { Test-Path $_ } |
|
? { Test-Path $_ } |
|
||||||
Select -First 1
|
Select -First 1
|
||||||
@@ -17,6 +54,9 @@ try {
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
# first remove previous R16 releases if found
|
||||||
|
Remove-PreviousVersions
|
||||||
|
|
||||||
$params = @{
|
$params = @{
|
||||||
PackageName = $package;
|
PackageName = $package;
|
||||||
FileType = 'exe';
|
FileType = 'exe';
|
||||||
@@ -41,4 +81,3 @@ try {
|
|||||||
Write-ChocolateyFailure $package "$($_.Exception.Message)"
|
Write-ChocolateyFailure $package "$($_.Exception.Message)"
|
||||||
throw
|
throw
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user