Beta programı
Mevcut geliştirme sürümünün test derlemelerine, sürüm notlarına ve ayrıntılı program bilgisine erişmek için giriş yapın veya kaydolun.
Giriş yapın veya kaydolun
Hesabınızı onayladıktan sonra Songbook Buddy Beta uygulamasında aynı e-posta ve şifreyi kullanın.
Beta kuralları — katılmadan önce okuyun
Beta derlemeleri bitmemiş yazılımdır. Kaydolarak bu koşulları kabul edersiniz:
- Çökme, veri kaybı ve bozuk özellikler olabilir. Önem verdiğiniz şarkıların yedeğini alın.
- Ayrı Songbook Buddy Beta uygulamasını ve beta cloud backend'ini kullanın — test verisini sürüm kütüphanenizle karıştırmayın.
- Beta hesabınız yalnızca test için Pro ve Cloud alır. Bu haklar halka açık sürüm uygulamasına veya üretim cloud'a taşınmaz.
- Hataları bildirin ve soruları yalnızca Discord kanalımızda sorun — halka açık destek e-postasıyla değil.
- Mobil test yalnızca TestFlight (iOS) ve Google Play dahili test (Android) ile.
- Beta derlemelerini, giriş bağlantılarını veya yayınlanmamış özellikleri program dışında paylaşmayın.
- Beta hesabınızı istediğiniz zaman silebilirsiniz; beta bittiğinde erişimi iptal edebiliriz.
Kaydolmak veya giriş yapmak bu kuralları kabul ettiğiniz anlamına gelir.
Beta kuralları — katılmadan önce okuyun
Beta derlemeleri bitmemiş yazılımdır. Kaydolarak bu koşulları kabul edersiniz:
- Çökme, veri kaybı ve bozuk özellikler olabilir. Önem verdiğiniz şarkıların yedeğini alın.
- Ayrı Songbook Buddy Beta uygulamasını ve beta cloud backend'ini kullanın — test verisini sürüm kütüphanenizle karıştırmayın.
- Beta hesabınız yalnızca test için Pro ve Cloud alır. Bu haklar halka açık sürüm uygulamasına veya üretim cloud'a taşınmaz.
- Hataları bildirin ve soruları yalnızca Discord kanalımızda sorun — halka açık destek e-postasıyla değil.
- Mobil test yalnızca TestFlight (iOS) ve Google Play dahili test (Android) ile.
- Beta derlemelerini, giriş bağlantılarını veya yayınlanmamış özellikleri program dışında paylaşmayın.
- Beta hesabınızı istediğiniz zaman silebilirsiniz; beta bittiğinde erişimi iptal edebiliriz.
Kaydolmak veya giriş yapmak bu kuralları kabul ettiğiniz anlamına gelir.
Beta'da Cloud dahil
Onaylanmış her beta hesabı yalnızca beta backend'inde Pro ve Cloud alır. Test sırasında Band Mode, cloud sync ve tüm Pro özelliklerini açmak için Songbook Buddy Beta'da aynı hesapla giriş yapın.
En son halka açık beta derlemesi: 1.0.23
Bu derlemede test edilecekler
The beta channel is currently retired — there is no active beta build.
Sürüm ve beta uygulaması yan yana
Yeni derlemeleri test ederken stabil uygulamayı gig'ler için kullanabilmelisiniz — şarkı kütüphanelerini karıştırmadan.
- Platformunuzda kullanılabilir olduğunda beta'yı kendi simgesi ve adıyla (Songbook Buddy Beta) ayrı uygulama olarak kurun.
- Her uygulama kendi yerel veritabanı, ayarları ve cihaz kimliğini tutar — beta'daki düzenlemeler sürüm kütüphanenize dokunmaz.
- Beta'daki cloud sync ayrı backend projesi kullanır; test verisi üretim senkron verisinin üzerine yazmaz.
- Masaüstünde her iki uygulamayı aynı anda çalıştırabilirsiniz; mobil/tablette iki kurulu uygulama arasında geçiş yaparsınız.
Ayrı beta uygulaması tüm platformlarda gelene kadar beta derlemesi kurmak o cihazdaki mevcut uygulamanın yerini alabilir. Mümkünse yedek cihaz tercih edin.
Beta destek kanalları
Beta sırasında testçileri yalnızca bu kanallardan destekliyoruz:
- Discord — hatalar, sorular ve tartışma
- TestFlight — iOS beta kurulumları ve güncellemeler
- Google Play dahili test — Android beta kurulumları ve güncellemeler
Halka açık destek sayfası ve destek e-postası beta sorunları içindir değildir.
Son derlemeler
Son girişler — eski derlemeler için tam listeyi açın.
Yalnızca üyeler
Beta sürüm notlarını ve indirmeleri görmek için yukarıdan giriş yapın veya kaydolun.
Version 1.0.23
August 11, 2026
A sync-reliability release fixing a permanent resync loop and a false "library was repaired" prompt on wiped devices:
- Uploaded rows are no longer stored as
pending. The generic outbox push uploaded the full local row without stamping its sync status, sopending— the local marker for "still waiting to be pushed" — was written into the server copy and pulled straight back down. The row then looked stranded, the 1.0.21 stranded-row rescue re-queued it, and that local write scheduled the next sync: a self-sustaining loop that resynced hundreds of rows on a library nobody had touched (one report: 765 rows, four cycles in a row). Uploads now strip the server-managed columns and stampsyncedat the single choke point every full-row upload passes, and pulls assertsyncedon every row written locally, so the wedged state cannot be represented on the device whatever arrives from the server. Existing backlogs heal on the next pull with no migration, and because the push also repairs the stored server value, devices still running an older build stop looping without updating. - A device with no library is not "behind a library repair". "Wipe local database" deletes the device's library-generation marker along with everything else, and reading it back defaulted to generation 1 while the account's server generation stays where an earlier repair left it. "This device has no idea which generation it is on" was therefore indistinguishable from "this device is two generations behind", so every wiped or freshly installed device on a once-repaired account took the destructive catch-up path — prompting about unsynced changes an empty device cannot have, and on a send-only device raising a hard sync block it had no way to clear. A missing marker together with an empty library and an empty outbox is now recognised as a fresh device: it adopts the server generation and lets the ordinary full pull fetch the library. A library that has rows but no marker still gets the prompt, because those rows can genuinely be pushed at the wrong generation.
- Smaller fixes: the release publisher no longer aborts one channel's publish because a different, deliberately retired channel still lists deleted artifacts — asset checks are now scoped to the channel being published, and a channel marked unavailable is skipped entirely.
Version 1.0.22
August 11, 2026
A fix release for chord spelling, enharmonic chord diagrams, silent DMX output and a stuck macOS modifier:
- Transposed chords keep their scale degree. The tonic moves a fixed number of letter steps and every chord moves with it, so a D in a song in E now transposes to Bb in C rather than A#. Borrowed and diatonic chords are both spelled the way a chart spells them; where the degree-correct name would need a double accidental or one of B#/E#/Cb/Fb, the song's own preference decides instead.
- Both spellings of a note reach the same chord diagrams. Db and C#, Gb and F# were separate namespaces in the chord lookup, so one of each pair fell through to calculated shapes while 254 of 260 curated fingerings sat unused. Reads now match either spelling for guitar, ukulele, banjo and mandolin, existing user grips and synced rows are found without a rename, and duplicate twins are folded away.
- DMX output reports when it is being dropped. When the OS refuses the app's Art-Net datagrams, the DMX sidebar now shows a warning naming the likely cause (the "Local network" permission on iOS/macOS) instead of looking healthy while nothing reaches the fixtures. The automatic socket rebind now backs off exponentially (2 s → 60 s) rather than retrying every two seconds indefinitely, and resets on recovery or a new target address.
- macOS: a stale ⌘ modifier heals itself. A lost key-up from a native menu or sheet could leave Command permanently "held", turning every plain keystroke in the editor into its shortcut until the app was switched away and back. The keyboard state is now reconciled against the engine after native menu callbacks and after each shell shortcut fires, so at most one keystroke misfires before typing works again.
- Smaller fixes: support reports now record which modifier keys were held when a shortcut fired; the DMX rebind log pair is throttled so it no longer crowds the rest of the support log out of the tail; two macOS marketing-capture failures (an IFS leak and a first-launch Gatekeeper timeout) fixed in the build tooling.