version bump to 1.2.64.407

This commit is contained in:
amd64fox
2025-05-17 00:37:01 +03:00
parent b7e9cbe14f
commit ae32767ca1
2 changed files with 84 additions and 48 deletions

View File

@@ -309,7 +309,7 @@
"native_description": "Enable Your Listening Upsell Banner for free & unauth users",
"version": {
"fr": "1.2.25",
"to": ""
"to": "1.2.63"
}
},
"podcast-ads": {
@@ -471,7 +471,7 @@
"native_description": "Enable Spotify Brand Lift (SBL) Surveys in the NPV",
"version": {
"fr": "1.2.43",
"to": ""
"to": "1.2.63"
}
},
"EFlag": {
@@ -489,7 +489,7 @@
"native_description": "Enable impressions on home for impression economy (some impressions will still be logged with this disabled)",
"version": {
"fr": "1.2.44",
"to": ""
"to": "1.2.63"
}
},
"SearchImpressions": {
@@ -498,7 +498,7 @@
"native_description": "Enable impressions on search for impression economy",
"version": {
"fr": "1.2.44",
"to": ""
"to": "1.2.63"
}
},
"StageDesktopDebug": {
@@ -608,6 +608,15 @@
"fr": "1.2.62",
"to": ""
}
},
"EmbeddedAdVisibilityLogging": {
"name": "enableEmbeddedAdVisibilityLogging",
"description": "When enabled, enhanced visibility logs will be sent for embedded ads",
"native_description": "EWhen enabled, enhanced visibility logs will be sent for embedded ads",
"version": {
"fr": "1.2.63",
"to": ""
}
}
},
"EnableExp": {
@@ -1636,16 +1645,6 @@
"to": ""
}
},
"DesktopOnboardingChecklist": {
"name": "enableDesktopOnboardingChecklist",
"description": "Enable checklist-based onboarding",
"native_description": "Enable checklist-based onboarding",
"value": "control",
"version": {
"fr": "1.2.60",
"to": ""
}
},
"SpotifyOnboardingChecklist": {
"name": "enableSpotifyOnboardingChecklist",
"description": "Enable checklist-based onboarding",

105
run.ps1
View File

@@ -378,7 +378,7 @@ if (!($version -and $version -match $match_v)) {
}
else {
# latest tested version for Win 10-12
$onlineFull = "1.2.63.394.g126b0d89-2269"
$onlineFull = "1.2.64.407.g14ea11a6-146"
}
}
else {
@@ -1700,6 +1700,61 @@ function Extract-WebpackModules {
}
function Update-ZipEntry {
[CmdletBinding()]
param (
[Parameter(Mandatory)]
[System.IO.Compression.ZipArchive]$archive,
[Parameter(Mandatory)]
[string]$entryName,
[string]$newEntryName = $null,
[string]$prepend = $null,
[scriptblock]$contentTransform = $null
)
$entry = $archive.GetEntry($entryName)
if ($entry) {
Write-Verbose "Updating entry: $entryName"
$streamReader = $null
$content = ''
try {
$streamReader = New-Object System.IO.StreamReader($entry.Open(), [System.Text.Encoding]::UTF8)
$content = $streamReader.ReadToEnd()
}
finally {
if ($null -ne $streamReader) {
$streamReader.Close()
}
}
$entry.Delete()
if ($prepend) { $content = "$prepend`n$content" }
if ($contentTransform) { $content = & $contentTransform $content }
$finalEntryName = if ($newEntryName) { $newEntryName } else { $entryName }
Write-Verbose "Creating new entry: $finalEntryName"
$newEntry = $archive.CreateEntry($finalEntryName)
$streamWriter = $null
try {
$streamWriter = New-Object System.IO.StreamWriter($newEntry.Open(), [System.Text.Encoding]::UTF8)
$streamWriter.Write($content)
$streamWriter.Flush()
}
finally {
if ($null -ne $streamWriter) {
$streamWriter.Close()
}
}
Write-Verbose "Entry $finalEntryName updated successfully."
}
else {
Write-Warning "Entry '$entryName' not found in archive."
}
}
Write-Host ($lang).ModSpoti`n
$tempDirectory = $PWD
@@ -1754,12 +1809,16 @@ if ($test_spa) {
Add-Type -Assembly 'System.IO.Compression.FileSystem'
# Check for the presence of xpui.js in the xpui.spa archive
$archive_spa = $null
try {
$archive_spa = [System.IO.Compression.ZipFile]::OpenRead($xpui_spa_patch)
$xpuiJsEntry = $archive_spa.GetEntry('xpui.js')
$xpuiSnapshotEntry = $archive_spa.GetEntry('xpui-snapshot.js')
if (($null -eq $xpuiJsEntry) -and ($null -ne $xpuiSnapshotEntry)) {
if (($null -eq $xpuiJsEntry) -and ($null -ne $xpuiSnapshotEntry)) {
$snapshot_x64 = Join-Path $spotifyDirectory 'v8_context_snapshot.bin'
$snapshot_arm64 = Join-Path $spotifyDirectory 'v8_context_snapshot.arm64.bin'
@@ -1768,51 +1827,29 @@ if ($test_spa) {
{ Test-Path $snapshot_arm64 } { $snapshot_arm64; break }
default { $null }
}
if ($v8_snapshot) {
$modules = Extract-WebpackModules -InputFile $v8_snapshot
function Update-ZipEntry {
param (
[Parameter(Mandatory)]
$archive,
[Parameter(Mandatory)]
[string]$entryName,
[string]$newEntryName = $null,
[string]$prepend = $null,
[scriptblock]$contentTransform = $null
)
$entry = $archive.GetEntry($entryName)
if ($entry) {
$tmpFile = [System.IO.Path]::GetTempFileName()
$reader = New-Object IO.StreamReader($entry.Open())
$content = $reader.ReadToEnd()
$reader.Close()
$entry.Delete()
if ($prepend) { $content = "$prepend`n$content" }
if ($contentTransform) { $content = & $contentTransform $content }
[System.IO.File]::WriteAllText($tmpFile, $content)
[System.IO.Compression.ZipFileExtensions]::CreateEntryFromFile($archive, $tmpFile, $(if ($newEntryName) { $newEntryName } else { $entryName })) | Out-Null
Remove-Item $tmpFile
}
}
$firstLine = ($modules -split "`r?`n")[0]
$firstLine = ($modules -split "`r?`n" | Select-Object -First 1)
$archive_spa.Dispose()
$archive_spa = [System.IO.Compression.ZipFile]::Open($xpui_spa_patch, [System.IO.Compression.ZipArchiveMode]::Update)
Update-ZipEntry -archive $archive_spa -entryName 'xpui-snapshot.js' -prepend $firstLine
Update-ZipEntry -archive $archive_spa -entryName 'xpui-snapshot.js' -newEntryName 'xpui.js'
Update-ZipEntry -archive $archive_spa -entryName 'xpui-snapshot.css' -newEntryName 'xpui.css'
Update-ZipEntry -archive $archive_spa -entryName 'xpui-snapshot.js' -prepend $firstLine -newEntryName 'xpui.js' -Verbose:$VerbosePreference
Update-ZipEntry -archive $archive_spa -entryName 'xpui-snapshot.css' -newEntryName 'xpui.css' -Verbose:$VerbosePreference
Update-ZipEntry -archive $archive_spa -entryName 'index.html' -contentTransform {
param($c)
$c -replace 'xpui-snapshot.js', 'xpui.js' -replace 'xpui-snapshot.css', 'xpui.css'
}
$c = $c -replace 'xpui-snapshot.js', 'xpui.js'
$c = $c -replace 'xpui-snapshot.css', 'xpui.css'
return $c
} -Verbose:$VerbosePreference
}
else {
Write-Warning "v8_context_snapshot file not found"
}
}
}
catch {