Skip to content

Commit 7be3762

Browse files
committed
Restore symlinks, changelog, bump ext version
1 parent b31b070 commit 7be3762

3 files changed

Lines changed: 33 additions & 6 deletions

File tree

PowerSync/PowerSync.Common/CHANGELOG.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
# PowerSync.Common Changelog
22

3-
## 0.1.2-dev.1
3+
## 0.1.2
44

5-
- Fix `net9.0-android` and `net9.0-ios` not being in TargetFrameworks.
5+
- Add support for MacCatalyst.
6+
- Add support for .NET 9.0. Supported targets now also include `net9.0`, `net9.0-android`, `net9.0-ios`, and `net9.0-maccatalyst`.
7+
- Update the PowerSync SQLite core extension to 0.4.13.
68

79
## 0.1.1
810

PowerSync/PowerSync.Maui/CHANGELOG.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
# PowerSync.Maui Changelog
22

3-
## 0.1.2-dev.1
3+
## 0.1.2
44

5-
- Fix `net9.0-android` and `net9.0-ios` not being in TargetFrameworks.
5+
- Add support for MacCatalyst.
6+
- Add support for .NET 9.0. Supported targets now also include `net9.0`, `net9.0-android`, `net9.0-ios`, and `net9.0-maccatalyst`.
7+
- Upstream PowerSync.Common version bump (See Powersync.Common changelog 0.1.2 for more information)
68

79
## 0.1.1
810

Tools/Setup/Setup.cs

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
/// </summary>
1111
public class PowerSyncSetup
1212
{
13-
private const string VERSION = "0.4.12";
13+
private const string VERSION = "0.4.13";
1414

1515
private const string GITHUB_BASE_URL = $"https://github.com/powersync-ja/powersync-sqlite-core/releases/download/v{VERSION}";
1616
private const string MAVEN_BASE_URL = $"https://repo1.maven.org/maven2/com/powersync/powersync-sqlite-core/{VERSION}";
@@ -199,7 +199,7 @@ private async Task ProcessArchiveDownload(string nativeDir, ArchiveConfig config
199199
if (Directory.Exists(extractedPath))
200200
Directory.Delete(extractedPath, recursive: true);
201201

202-
ZipFile.ExtractToDirectory(downloadPath, nativeDir);
202+
ExtractZipPreservingSymlinks(downloadPath, nativeDir);
203203
File.Delete(downloadPath);
204204

205205
Console.WriteLine($"✓ Extracted {config.ArchiveFileName}{config.ExtractedName}");
@@ -210,6 +210,29 @@ private async Task ProcessArchiveDownload(string nativeDir, ArchiveConfig config
210210
}
211211
}
212212

213+
private static void ExtractZipPreservingSymlinks(string zipPath, string destDir)
214+
{
215+
// ZipFile.ExtractToDirectory does not preserve symlinks, which breaks
216+
// macOS/Catalyst .xcframework bundles. Use `unzip` on Unix instead.
217+
if (!OperatingSystem.IsWindows())
218+
{
219+
var proc = System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo
220+
{
221+
FileName = "unzip",
222+
ArgumentList = { "-o", zipPath, "-d", destDir },
223+
RedirectStandardOutput = true,
224+
RedirectStandardError = true,
225+
})!;
226+
proc.WaitForExit();
227+
if (proc.ExitCode != 0)
228+
throw new Exception($"unzip exited with code {proc.ExitCode}: {proc.StandardError.ReadToEnd()}");
229+
}
230+
else
231+
{
232+
ZipFile.ExtractToDirectory(zipPath, destDir);
233+
}
234+
}
235+
213236
private async Task DownloadFile(string url, string outputPath)
214237
{
215238
Console.WriteLine($"📥 Downloading: {Path.GetFileName(outputPath)}");

0 commit comments

Comments
 (0)