{
  "version": "1.10.0",
  "pub_date": "2026-11-07T04:00:27.711Z",
  "notes": "## [1.10.0] — 2026-11-07\n\n### Added\n- Make the Track Filter's My Tag columns selectable and apply them.\n- Log every listed disk and why it was offered or skipped (#803).\n- Make Reload Tag one Track Edit per selection.\n- Record the values Reload Tag replaces.\n- Switch columns with the artwork mode and add the sub-browser's buttons.\n- Give the whole artwork its own columns, as rekordbox does.\n- Edit track color from collection and playlist rows.\n- Add USB-only files to on-device playlists.\n- Add Sort Items to the native Playlist menu.\n- Register ordered analysis stages and UI options.\n- Look at one track's file again on request.\n- Add My Tag to the Comments from Preferences.\n- Write My Tags into a track's comment as rekordbox does.\n- Add reorder my tags to the AppleScript dictionary.\n- Reorder one list of My Tags with exact Undo.\n- Record Tag List and history removals as one Undo each.\n- Keep the rows a Tag List or history removal takes off, for Undo.\n- Make Relocate, Relocate by location and Auto Relocate undoable.\n- Record and reverse a relocation run's file links.\n- Restore the file's key tag with the library key.\n- Swap a file's key tag only while it holds the expected key.\n- Make Add Tracks to Playlist and reorder undoable.\n- Keep the rows an add made and a reorder's numbers for Undo.\n- Make XML and iTunes Replace existing one Undo step.\n- Make playlist, folder and intelligent playlist creation undoable.\n- Keep playlist creations, rule and artwork edits for undo.\n- Make cue and loop edits undoable from Edit > Undo.\n- Keep cue rows before and after an edit for Undo.\n- Remember each deck's beat-jump size across runs.\n- Run Sort Items in the backend as one Undo step.\n- Sort a playlist folder's children in one write.\n- Add rekordbox's ICU name collation to rbl-index.\n- Add rekordbox's Change… to the copy question.\n- Write what a device knows of a track Import Playlist copied.\n- Give an analysis file a new PPTH and keep every other section.\n- Add rekordbox's upper-part and whole-artwork buttons to the track list.\n- Expose bounded waveform overviews to companion apps.\n- Add guarded collection removal for companion workflows.\n- Expose safe My Tag automation for companion apps.\n- Add Shift+Enter to load selected track onto Player 2.\n- Add an Analyze key preference to keep existing keys.\n- Show the playlists a track belongs to (#564).\n- Set the Active Loop from the MEMORY list's loop mark.\n- Export tracks or a playlist by dropping them on a stick.\n- Add played-track RESET and the Playback time setting.\n- Draw played tracks in rekordbox's played green.\n- Keep played tracks and expose them to the window.\n- Clear played marks on a player's history remove and delete.\n- Add rekordbox's My Tag configuration window.\n- Tick, add, rename and delete My Tags over IPC.\n- Create, rename and delete My Tags as rekordbox writes them.\n- Resize the manager and sort and resize its columns.\n- Sort the Missing File Manager list as rekordbox does.\n- Draw a row preview's memory cues in their own colour.\n- Hand out each chunk's 16-bit stereo frames beside the downmix.\n- Add PERFORMANCE mode's fixed-distance beat jumps as keyboard actions.\n\n### Fixed\n- Preserve pending Play when skipping tracks.\n- Apply current beat-jump handling to fixed shortcuts.\n- Escape Windows reserved device names in FAT-safe paths.\n- Preserve USB BPM when device metadata is invalid.\n- Clear cache bookkeeping at export boundaries.\n- Bound internal cache during USB sync.\n- Report actual playlist additions.\n- Let Track Filter My Tag columns past the fourth be ticked and picked.\n- Read a library cue at a negative position instead of stopping every sync.\n- Read out-of-range integer columns of a stick's exportLibrary.db as unknown instead of stopping the sync (#787).\n- Say beside Import why it is greyed under Library Protection (#790).\n- Accept rekordbox dbVersion 10000 exports when the schema matches.\n- Remember the chosen audio output device across launches.\n- Run Linux eject helpers without AppImage library injection (#802).\n- Keep a library whose own integrity check already reports rows.\n- Say why analysis is refused when the library is read-only (#829).\n- RST resets zoom and no longer plays/pauses (#832).\n- Move phase-locked beat jumps from audio head.\n- Reconcile loop moves against engine snapshots.\n- Keep repeated beat jumps aligned with engine state.\n- Move active loop with beat jump.\n- Pin loading playback until deck frames advance.\n- Import external files into All Tracks.\n- Save analyzed keys in the selected notation.\n- Honor Color edit preference and preserve failed writes.\n- Skip empty obsolete analysis paths after publication.\n- Continue selected tracks after deck drop.\n- Preserve USB-only track ownership on repeat add.\n- Wire device actions in secondary browser.\n- Enable USB playlist drops in split view.\n- Preserve detail waveform height under cue lane.\n- Keep bulk selection ticks tied to confirmed tracks.\n- Apply imported DAT grid correction to player beats.\n- Retain valid DeviceSQL year during USB sync.\n- Keep Analyze Track enabled in the native menu.\n- Route deck quantize controls through one command.\n- Keep OneLibrary cue ordering when skipping EXT.\n- Bound USB browser cue companion reads.\n- Show cues in USB library browser rows.\n- Guard playlist context export destinations.\n- Cancel stale deck file checks on replacement.\n- Recheck audio file status before deck load.\n- Refuse Sort Items while library edits are locked.\n- Skip missing device analysis files.\n- Reject mismatched AIFF-C alias widths.\n- Honor DAT cue counts and cover loop import.\n- Import DAT-only device cues for copied tracks.\n- Translate playlist import choices.\n- Clarify device playlist import choices.\n- Preserve stored filename during manual relocate.\n- Keep fallback analysis inside selected USB.\n- Read AIFF-C files that label plain PCM in24, in32, FL32 or FL64.\n- Hide devices above ID 100 from the LINK device list.\n- Let either deck's BEAT SYNC follow the first deck to play.\n- Reserve a carried track's analysis slot, not its whole folder.\n- Keep a stick track's path and analysis slot on the first sync.\n- List a stick's readable library when the other cannot be read.\n- Show a file gone missing once its row is selected.\n- Count a NULL My Tag Attribute as a tag when reading a run.\n- Word the taken-file refusal without claiming it is new.\n- Compare track numbers before an add's Undo or Redo.\n- Compare My Tags without duplicate rows in the undo check.\n- Report grid history conflicts as ErrorKind::Conflict.\n- Keep newer values when library undo conflicts.\n- Refuse undo and redo over values changed since.\n- Keep an info-panel BPM edit in the track's grid Undo.\n- Judge tempo changes on the kick band, not the attack map.\n- Keep constant-tempo tracks at one tempo in RBXport mode.\n- Stop rekordbox 7 treating RBX sticks as older-version exports.\n- Keep a memory cue's colour from a stick.\n- Send a memory cue's colour one row up, as rekordbox does.\n- Rebuild and read older sticks' date added after #637.\n- Write the date added where players read it in export.pdb.\n- Show deck A's beat-jump size on both decks while they are linked.\n- Draw the playhead solid on whole device pixels in rekordbox's colours.\n- Keep cue markers in their own lane above the detail waveform.\n- Refuse Sort Items from a key or the menu bar while the tree is searched.\n- End library Undo history after imports and replacing lists.\n- Keep the stick's BPM, key, waveform, grid and cues on copied tracks.\n- Allow collection tracks to drop into device playlists.\n- Count a row's alignment before it opens a new row group.\n- Follow the Full/Preview Waveform setting in the track list preview.\n- Reuse freed artwork ids so old covers do not pile up.\n- Keep artwork ids stable across syncs.\n- Number and filter pdb menu rows as exportLibrary.db does.\n- Write device category and sort settings to export.pdb.\n- Route My Tag reads through the track scripting receiver.\n- Pass selectedTrackId to Player B.\n- Stop the XML scanner looping on a tag cut off after its slash.\n- Read a stick's negative analysedBits instead of stopping the sync.\n- Give playlist folders the playlists' column layout.\n- Turn a called loop into the field's beat loop instead of exiting it.\n- Store a playing loop as a hot loop when an empty hot cue pad is pressed.\n- Match XDJ-XZ filter defaults.\n- Relaunch every AppImage start and set DESKTOPINTEGRATION.\n- Start the Linux AppImage on Wayland with the host libwayland-client.\n- Zoom both decks from the wheel and reset both with RST.\n- Reset the band kills with the layout, as rekordbox does.\n- Omit Hide items from the app menu outside macOS.\n- Store new and reset hot cues without a colour of their own.\n- Use rekordbox's full-stick message verbatim.\n- Cover staging folders, settings files and AppleDouble in the space check.\n- Say a full stick has no room in rekordbox's words.\n- Count a sync's space in the stick's own clusters.\n- Export a track's Active Loop to USB as an active memory loop.\n- Give the Sub-Browser's tree the stick drop and hold drops while a stick is busy.\n- Keep the simple player's head at its own 1pt width.\n- Draw the overview playhead two device pixels wide across the whole band.\n- Grey only this LINK session's plays on the players.\n- Set a hot cue from an empty HOT CUE list row.\n- Draw the ticked box and the rename box as rekordbox does.\n- Refresh the Track Filter's tag list when a My Tag is added.\n- Translate the column resize handle label.\n- Return an error when the en-US collator cannot be built.\n- Draw memory cue markers in their own colour, as rekordbox does.\n- Match blue waveform colors to BPM analysis.\n- Generate blue previews with RGB and 3-band waveforms.\n- Write rekordbox's own colour and 3-band waveforms.\n\n### Improved\n- Skip USB companion paths after view budget.\n- Reserve rekordbox's waveform values from the container's length.\n\n## [1.9.0] — 2026-10-16\n\n### Added\n- Save a playing loop as a memory loop by pressing MEMORY.\n- Choose rekordbox-style Performance 1, Performance 2, or no keyboard preset, and assign shortcuts for hot cue pads D to H.\n- Use the Track and Playlist menus to analyze tracks, locate a loaded track, renumber playlist order, and manage playlists.\n\n### Fixed\n- USB sync preserves existing playlists and folders when first syncing a rekordbox stick, and keeps tracks added on the device to synced playlists while the library playlist is unchanged.\n- USB sync replaces player-edited cues and beat grids with your library’s, while keeping device waveforms and beat grids when the library has no analysis.\n- Ejecting USB drives and SD cards on Windows handles composite readers correctly and no longer ejects the USB hub.\n- Dropping files with accented names into rbxport on macOS imports them correctly.\n- USB LINK on Windows finds network adapters with link-local addresses.\n- Extending or shrinking a track selection with Shift and the arrow keys works reliably.\n- Uncoloured hot cues use the default colour for their slot and selected colour scheme.\n\n### Improved\n- Replacing a playlist by dropping a folder onto it can be undone in one step.\n- The status bar shows the open playlist’s total playing time.\n\n## [1.8.2] — 2026-10-15\n\n### Fixed\n- Reordering tracks while the list scrolls and dropping tracks or playlists onto the library tree no longer misses drops made just as the pointer reaches a row.\n- Clicking the waveform overview while a track is still loading now keeps the chosen position so playback starts from there.\n- USB import messages, playlist removal confirmations, and import choices show more consistently in the selected language.\n\n## [1.8.1] — 2026-10-14\n\n### Added\n- Loading an unanalysed collection track onto a deck automatically queues it ahead of waiting tracks and draws its waveform as analysis progresses.\n\n### Fixed\n- Loaded decks show updated waveforms and beat grids as soon as a track’s analysis finishes, without waiting for the rest of the batch.\n- Audio files with a malformed tag field can import with the unreadable field left empty.\n- Setting a loop manually no longer lights the auto-loop length indicator when it matches the previous auto loop.\n\n### Improved\n- Import results name the first skipped file and explain why it was skipped.\n- Playlist preferences use compact dropdowns, and Preferences no longer shows Auto Relocate Search Folders or Find duplicates.\n\n## [1.8.0] — 2026-10-14\n\n### Added\n- Keep the previous USB library recoverable until the new export has been checked, and recover interrupted exports on the next sync.\n\n### Fixed\n- USB sync keeps a usable existing device copy when a source is missing or conversion fails, and reports which tracks were kept or skipped.\n- A disconnected USB device or a failed space check no longer prevents other selected sticks from syncing.\n- USB sticks eject correctly after sync, and converted tracks no longer retain seek information from the original audio.\n\n### Improved\n- Repeat USB syncs skip unchanged work and report “Already up to date”; playlist-only edits leave unchanged audio, waveforms, and artwork alone, and syncing several sticks shares track conversions.\n- USB sync shows progress across each stage, with track titles, transfer details, elapsed time, and responsive Stop controls during source checks and conversion.\n- Sync Manager updates each stick’s projected space use as selections change and shows the temporary space needed to sync safely.\n- Sync and Import settings buttons open their matching sections in USB Export preferences, and Verify all files is remembered between sessions.\n- USB devices start collapsed in Sync Manager so more sticks fit on screen, and Format USB defaults to HFS+ for sticks already using HFS+.\n\n## [1.7.0] — 2026-10-13\n\n### Added\n- Import a playlist from a connected USB device into your collection, choosing whether to copy tracks that are missing locally.\n- Use your library’s My Tags in compatible players’ Track Filter over LINK.\n- Choose whether a same-named folder dropped on Playlists replaces the existing list or imports as a copy, and see what replacement removed.\n- Choose the BPM range used when analysing tracks, including tracks analysed during import.\n- Optionally write edited track keys to audio-file ID3 tags.\n- Import and export star ratings with USB devices.\n- Continue to the next track in the playlist automatically when a deck’s track ends.\n- Change a set hot cue’s colour from its pad and clear a hot cue from the pad.\n- Select or clear all playlists at once in Sync Manager.\n- Add a File Created column and sort the library by it.\n\n### Fixed\n- USB exports now create analysis and database files that rekordbox and older NXS-era players can read, including libraries with hundreds of playlist entries.\n- Imported device playlists reuse tracks already copied into the collection and avoid copying linked files from the USB device.\n- Smart Playlist rules now save in rekordbox’s format.\n- Auto Relocate finds moved files using rekordbox’s search behavior.\n- Tracks whose paths pass through a symlink can load over LINK while USB imports remain protected from linked files.\n- XDJ-RX3 players can join LINK automatically, including on Linux.\n- Dragging and reordering tracks stays accurate while the list scrolls, including duplicate tracks.\n- USB tracks with path-case differences can play on Linux, and MP3s dropped from Explorer import into playlists on Windows.\n- Editing track information preserves existing values, colours, and units correctly.\n- Analysis preserves measured BPM precision and handles Normal mode as a constant tempo.\n- Deck waveform display, hot-cue loop labels, and list scroll position behave more reliably.\n\n### Improved\n- The Info panel loads when opened so the main library is ready sooner.\n\n## [1.6.0] — 2026-10-11\n\n### Added\n- Edit a track’s Key directly in the track list by choosing from the library’s keys.\n\n### Fixed\n- The first sync of a USB stick exported by rekordbox keeps tracks already on the stick instead of copying them again or requiring space for duplicate copies.\n- USB sync preserves tracks it did not export, even when their audio files are missing, and removes deselected tracks it did export once no device playlist or history needs them.\n- When a USB stick’s two libraries disagree, sync can update selected tracks and playlists; if another difference blocks the first sync, the message identifies what needs attention.\n- My Tags on exported tracks appear in compatible players’ Track Filter.\n- USB exports with accented names no longer use the database string layout that caused a CDJ-2000NXS to freeze.\n- MP3 playback, analysis, and WAV loop export follow rekordbox’s timeline so cues and beat grids line up with the audio.\n- Tracks opened from a USB stick in Devices show their artwork, waveforms, and beat grids.\n- USB export folders and playlists follow their order in the library tree.\n- A quick flick starts dragging a track on the first try, and editing a track no longer blanks and rebuilds the whole track list.\n- The beat-grid TAP button measures each tap when pressed, keeping the tapped tempo and beat position accurate.\n- XDJ-700 VBR uploads no longer interrupt browsing on a linked player.\n\n### Improved\n- The Color column shows each track’s colour as a coloured circle beside its name.\n\n## [1.5.0] — 2026-10-10\n\n### Added\n- Add tracks already in a playlist again, choosing whether to skip or add duplicates and remembering your choice in Preferences.\n- Import folders and large batches of tracks with progress, faster processing, and a Stop button.\n- Confirmation questions now open in rbxport's own dialogs.\n\n### Fixed\n- Export Playlist adds or updates the selected playlist without replacing the other playlists on the USB stick, while preserving empty folders and playlists kept from earlier exports.\n- A track that cannot be read, converted, or copied no longer stops the rest of a USB sync; Show details lists each track left out and why.\n- Save and delete cues made on linked CDJs and XDJs correctly, without stalling the player.\n- Linked players can load tracks stored directly on your computer, and repaired previews load correctly on compatible players.\n- Export tracks analysed during an active analysis run with their analysis files, and importing cues from a large USB no longer blocks analysis and sync for an extended time.\n- USB sync accepts a rekordbox stick's first sync and reads all playlist entries, including entries on larger export database pages.\n- RGB waveforms analysed by rbxport now match rekordbox's player height and colour.\n- Exporting AAC .m4a tracks with CDJ-compatible conversion no longer fails because of their channel layout.\n- Auto Relocate shows its Searching... status and waits correctly before analysis starts.\n\n### Improved\n- USB resyncs finish faster by avoiding unnecessary rereads of every track.\n- rbxport starts with less to load, while the device, Info, and confirmation panels load when first opened.\n- Linux's window title and Sync Manager layout now fit the platform, without the unavailable iTunes column.\n\n## [1.4.0] — 2026-10-09\n\n### Added\n- Format a USB stick as FAT32 or HFS+ directly from its expanded row in Sync Manager.\n- Preview the space a sync will add or free on each selected USB stick before it starts.\n- Review every selected track with missing audio before syncing, then cancel or skip those tracks.\n- Rename hot and memory cues, add cue comments from the colour menu, and drag hot cues into a new order.\n- Create a new playlist exactly where you right-clicked.\n- Remember your last Analyze Track choices.\n\n### Fixed\n- Sync continues exporting the other tracks when one track's analysis files are missing.\n- Empty hot-cue rows no longer create a cue when clicked.\n- Sync Manager shows the underlying reason when a command fails.\n- Each mouse-wheel notch moves waveform zoom by exactly one level.\n\n### Improved\n- Sync results now report tracks added, removed, and updated.\n- Analysis preferences keep the first-beat memory-cue setting in one place and present their switches more clearly.\n\n## [1.3.0] — 2026-10-09\n\n### Added\n- Manage missing tracks in a Missing File Manager: find them, relocate them, or remove them from the collection.\n- Browse and edit the playlists stored on a connected USB device from the Devices tree.\n- Find rekordbox libraries on connected drives, choose the library drive, and respond when its drive is missing.\n- Drop folders onto Playlists to create matching playlist folders and playlists.\n- Edit metadata for several selected tracks together from the Information panel.\n- List Collection tracks that have never been analysed.\n- Show progress while importing rekordbox and iTunes XML files.\n- Control loops live on both decks, including resizing them while they play.\n- Add a memory cue on the first beat during analysis.\n\n### Fixed\n- USB sync now handles drives touched by rekordbox, files newer than your computer clock, interrupted syncs, unplugged devices, and background-agent leftovers more safely.\n- Export to exFAT and older-Mac FAT32 sticks, including tracks with accented names.\n- Avoid copying music that is already on the USB device and preserve deselected tracks during later syncs.\n- XML re-import now asks before replacing same-named playlists and replaces their tracks together without partial writes.\n- Relocate all matching missing tracks from the Missing File Manager and follow rekordbox's search folders and file chooser.\n- Preview playback stops when another playlist or deck takes over and follows the master volume.\n- Quantized hot-cue jumps wait for the beat and leave loops correctly; short loops and loop-length stepping now match rekordbox.\n- BPM SYNC starts on the master's beat after loading or restarting, and CUE or PLAY can cancel a pending move.\n- Delete removes every selected track once and asks before removing tracks from playlists, history, or the Tag List.\n- Import track tags, cues, and history correctly when files or tracks are not already in the library.\n- Cloud-synced tracks play and reload tags from their local copy.\n- Long tracks draw their waveform and beat grid to the end.\n- Beat-grid tempo edits continue to work after tempo changes, and grid shifts are audible immediately.\n- Maximum CDJ compatibility also converts low-sample-rate MP3s.\n- Export a playlist directly to a connected USB device instead of opening a folder picker.\n- Keep USB playlist edits consistent by blocking them while the device is busy and preserving the right track and playlist state.\n\n### Improved\n- Browser column dragging shows where a column will land, and column changes persist across restarts.\n- USB sync reports the specific failure when an export cannot finish.\n- Device playlist edits and USB import results use the interface's selected language.\n\n## [1.2.0] — 2026-10-08\n\n### Added\n- Remember the DUAL control across restarts.\n- Add keyboard bindings for hot cues D-H and all hot cue clears.\n- Preview a track by clicking its waveform in the browser.\n- Add AIFF export conversion.\n- Add Keyboard pane rows for per-deck low/mid/high EQ kill.\n- Hide the missing-file manager from users for now.\n- Tell reporters their bug description is posted publicly.\n- Show reporters a link to follow their bug report.\n- Import every identified column from rekordbox's browser layout.\n- Sort tracks by every column rekordbox can sort.\n\n### Fixed\n- Match rekordbox's Explorer track menu for imported and loose files.\n- Base the track menu in the Explorer on each file's import state.\n- Name the refused file handle in stale-handle log lines.\n- Match rekordbox's BPM + KEY related tracks, half and double tempo included.\n- Analyse every selected track, not only those in the row cache.\n- Show the Backups preferences fully in the chosen language.\n- Let Windows backups flush the database copy.\n- Add files already in the library to the playlist they are dropped on.\n- Let beat-grid edits confirm tempo changes on macOS and start at zero.\n- Answer intelligent playlists on a My Tag.\n- Apply Browse font size and line space to the playlist tree.\n- Let mouse wheel notches always step the waveform zoom.\n- Slow trackpad waveform zoom and make the sidebar easier to resize.\n- Install Windows updates silently at quit.\n- Sort tracks by DJ play count.\n- Use hidden Pioneer root on HFS exports.\n- Register analysis for rekordbox waveforms.\n- Localize the native menu at runtime.\n- Recognize Linux FAT32 sync devices.\n- Include intelligent playlists in Sync Manager.\n\n## [1.1.0] — 2026-10-07\n\n### Added\n- Warn before unlocking an unbacked library.\n- Include complete context in bug reports.\n\n### Fixed\n- Default automatic analysis to off.\n- Preserve active loop ends on export.\n- Tolerate malformed library text.\n\n## [1.0.0] — 2026-10-06\n\n### Added\n- rbxport 1.0 is now available.\n\n## [1.0.0-rc.15] — 2026-10-06\n\n### Fixed\n- Preserve audio extensions on FAT exports.\n\n## [1.0.0-rc.14] — 2026-10-06\n\n### Added\n- Recognize the paired PRO DJ LINK identities used by compatible all-in-one players.\n\n### Fixed\n- Files and folders dropped onto a playlist import correctly on Linux.\n- Smart Playlists load more reliably from rekordbox XML and match relative-date, text, and numeric rules correctly.\n- LINK key labels and key sorting now follow their separate player settings consistently.\n\n### Improved\n- Automatic LINK connections prefer wired adapters and keep player membership and addresses current as devices reconnect or leave the network.\n- LINK Export file transfers use more player-compatible request sizes and responses, reducing unnecessary network retransmissions during track loads.\n- LINK browsing and player control handle unsupported requests, load responses, and rejected connections more reliably.\n\n## [1.0.0-rc.13] — 2026-10-04\n\n### Added\n- Automatically connect to available PRO DJ LINK players and mixers with an opt-in setting.\n- USB sync warns when a device is not formatted as FAT32.\n- Support rbxport with a donation button in the main window.\n\n### Fixed\n- RBX-25: Playlist positions remain correct when sorting or filtering. Dropping files onto a playlist now shows import progress immediately.\n- RBX-24: Album artwork keeps its original colors in the info panel.\n- RBX-23: Create playlists and folders in an empty library or after deleting the last playlist.\n- Smart Playlists work in LINK Export, with corrected text and numeric rule matching.\n- LINK browsing uses the player's supported categories, preserves playlist hierarchy order, and handles menu pagination correctly.\n- XDJ-RX3 browse rows show the active sort column and configured key notation, while preserving key-matching information.\n- LINK history shows the active session and records tracks when the player reports them as played.\n- Track titles display correctly for legacy LINK clients.\n- USB sync refreshes available destinations before starting and repairs legacy analysis files during export.\n\n### Improved\n- LINK library services use the selected network interface.\n- LINK preview reads use a bounded cache and combine adjacent requests.\n- Mixer cue indicators and PRO DJ LINK settings use a more consistent layout.\n- Linux uses native window decorations.\n\n## [1.0.0-rc.12] — 2026-09-30\n\n### Added\n- Import selected iTunes playlists into your library from the Sync Manager.\n- The status bar shows a prompt when an update is ready to install.\n- Open rbxport's TikTok from a link in the About pane.\n- rbxport reports crashes automatically so failures can be diagnosed and fixed.\n- Use LINK with the XDJ-RX3 over rear USB and correctly handle all-in-one players whose decks and mixer share one network address.\n\n### Improved\n- Browsing a player's menus over LINK a second time is instant, as the menus are now cached.\n- LINK browsing, sorting, and export compatibility with the XDJ-RX3 are more complete.\n\n### Fixed\n- Key analysis now saves its result in new and sparsely imported libraries.\n- USB sync on macOS no longer reports a completed export as failed when an exFAT device does not support directory flushing.\n- On Linux, USB drives are detected reliably and diagnostics report the app's thread count.\n\n## [1.0.0-rc.7] — 2026-09-29\n\n### Added\n- Import selected iTunes playlists into your library from the Sync Manager.\n- The status bar shows a prompt when an update is ready to install.\n- Open rbxport's TikTok from a link in the About pane.\n- rbxport reports crashes automatically so failures can be diagnosed and fixed.\n\n### Improved\n- Browsing a player's menus over LINK a second time is instant, as the menus are now cached.\n\n## [1.0.0-rc.6] — 2026-09-26\n\n### Added\n- Use LINK with the XDJ-RX3 over rear USB and correctly handle all-in-one players whose decks and mixer share one network address.\n\n### Fixed\n- USB sync on macOS no longer reports a completed export as failed when an exFAT device does not support directory flushing.\n\n## [1.0.0-rc.5] — 2026-09-26\n\n### Added\n- Import cues and beat grids, play history, and CDJ/mixer settings from USB devices with one Import button in the Sync Manager, and choose which are ticked when it opens.\n\n### Fixed\n- Over LINK, a player's HISTORY shows this session's LINK HISTORY, as with rekordbox, and tracks played on the decks are recorded to it.\n- Adding a track to the Tag List, from the menu or a player, no longer reloads the list on screen.\n- Recently added text is translated, and several mistranslated labels are corrected.\n\n## [1.0.0-rc.4] — 2026-09-25\n\n### Fixed\n- Rating stars are the same size on macOS, Windows and Linux.\n- Scrolling the waveform zoom quickly on linked decks moves through every zoom step instead of skipping some.\n- Open and closed folders in the library tree are remembered across restarts.\n- On macOS, rbxport asks for access when library music is on a network volume.\n\n## [1.0.0-rc.3] — 2026-09-25\n\n### Added\n- Undo and redo playlist renames, moves, deletions and track removals, plus track metadata, rating, comment, colour and My Tag edits.\n- See release notes before updating and get a persistent prompt when a downloaded update is ready to install.\n\n### Improved\n- Each deck's waveform zoom is remembered across sessions.\n- Scrubbing opens to full-frequency audio at normal playback speed.\n\n### Fixed\n- A playing deck immediately plays the next loaded track, even when tracks are switched rapidly.\n- The inline BPM editor stays the same compact width as its readout.\n- Switching to a shorter playlist no longer leaves old track rows painted below the list.\n- USB waveform settings such as RGB can be changed while rekordbox is running; the status badge now clarifies that only library editing is read-only.\n\n## [1.0.0-rc.2] — 2026-09-25\n\n### Fixed\n- Hot cues without a custom colour use the default green instead of appearing black.\n\n## [1.0.0-rc.1] — 2026-09-24\n\n### Added\n- Control rbxport from AppleScript on macOS.\n- Undo and redo deleting playlists and folders from the Edit menu.\n- Create a rekordbox library when none exists instead of opening an empty window with an error.\n- Keep the last library screen, artwork, and waveforms visible while the library loads.\n- Right-click the version in the status bar to open the current application log.\n\n### Improved\n- USB devices and Sync Manager load faster on macOS, and Preferences and bug reporting open faster on every platform.\n\n### Fixed\n- Bug reports can be sent again on macOS and Windows.\n- Track artwork appears correctly on Windows.\n- Zoomed waveforms line up with the playhead and beat grid on tracks with encoder delay.\n- Sub-browser track actions, reordering, and Information now act on the playlist open on the right.\n",
  "platforms": {
    "darwin-aarch64": {
      "url": "https://download.rbxport.com/rbxport-1.10.0-darwin-aarch64.app.tar.gz",
      "signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVUanBnRGxwSWR6eGE1bkVtdklkRU9uS0d4ZjUzNGxsb2R6SDdvakorM0hXSzFXUm5rOXBydFdtL2p2UXJLMnZvUEdhN2NBL0xXUVRRNmhmd1h3WExLNUhzRUZPZ0ZhbEE0PQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzk0MDIyMjg0CWZpbGU6cmJ4cG9ydC5hcHAudGFyLmd6CmZCVHVVWEtuRUVONXQ1ZVpLWFBKR2oyQ3RvQUNQVElUb1NQYUlua0JhVWJuY2svSDZ1RHNBbDVzQXpURGhwMldCRVlIRC9wT3JwOG1pcElCWTFXU0RRPT0K"
    },
    "darwin-x86_64": {
      "url": "https://download.rbxport.com/rbxport-1.10.0-darwin-x86_64.app.tar.gz",
      "signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVUanBnRGxwSWR6eFdvOENVOXNDdEFyWUk2TEVsdzFhTHZ1cGwwYTVJZkxmK0dscmJuNHhDWUdDRDc0bHExRXZ6dXgyTW9WRm5DVTh5MjlmeUM4SmFYeSt3VU95TjJBWVFnPQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzk0MDIzODQxCWZpbGU6cmJ4cG9ydC5hcHAudGFyLmd6CnVpRzIzQ2FoNCtMZ1pMUXBWT2RsVnVwRy8zMWFqNHF1anFQTTNaUC94dmY0QkVBNWFONUZMNzZFcFFUMThwdnpwMFV4QURWSnU5Z2ZNLzVHeGRTNUJRPT0K"
    },
    "windows-x86_64": {
      "url": "https://download.rbxport.com/rbxport-1.10.0-windows-x86_64-setup.exe",
      "signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVUanBnRGxwSWR6eFFrNURjV1ZXT25vWmJNVEFIbjhUYmpQb3hzTW9iaVVnNFlmRXRRalBJRHEzd1pneGFSM29NU1hMV1hINklpKy9KNGpUSHIrU0xnU3c3RUJDN0t4clFvPQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzk0MDIyODM4CWZpbGU6cmJ4cG9ydF8xLjEwLjBfeDY0LXNldHVwLmV4ZQplSU5rSHVIR0RYb1c0a1lYRTBRUVRiYTJTaDFXa0szOVhaL0ZlaDREYTFWc1djMWM5UzlYS1AwK01taVZRMkhuRnQ4Q0NWY2dlMmFJSTFoUnRUWm9Ddz09Cg=="
    },
    "linux-x86_64": {
      "url": "https://download.rbxport.com/rbxport-1.10.0-linux-x86_64.AppImage",
      "signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVUanBnRGxwSWR6eGJVUjFOWUJ0MURmcHV2cVJTWUdWU3pVSGtsUml4bGZ0S0NLaGxOSjg4eUdKbThYVkxjRkYzcjBkNGRpSVIwOGwrTzQ1YkNNUmxYcUpqQStnRU03RUFnPQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzk0MDIxNDkxCWZpbGU6cmJ4cG9ydF8xLjEwLjBfYW1kNjQuQXBwSW1hZ2UKQUwzZ0Nrem4xZkNUYVVxVVgzdnJtUmk5T0QxdERtd01UYVpSTVJjdmpDR1ZEK0ZBSzRkSVRYNDlaUnNhKzQ3YjFxV0kzN29URUlYb1lvSnM5K1FMQmc9PQo="
    },
    "linux-x86_64-deb": {
      "url": "https://download.rbxport.com/rbxport-1.10.0-linux-x86_64.deb",
      "signature": "dW50cnVzdGVkIGNvbW1lbnQ6IHNpZ25hdHVyZSBmcm9tIHRhdXJpIHNlY3JldCBrZXkKUlVUanBnRGxwSWR6eGJCaDgrNjUyU2xSQ1pMdnhpZmV3OUgzMTRDWnBVRzhMQXI1K2UvSUJ1OHdJMFI1Y1RuRlJpQjlSTXQ4TXJHZVNudWNYVkpDeXlXaXZaeUljRjlVbHdNPQp0cnVzdGVkIGNvbW1lbnQ6IHRpbWVzdGFtcDoxNzk0MDIxNDkyCWZpbGU6cmJ4cG9ydF8xLjEwLjBfYW1kNjQuZGViCnJaenVpVU5BcHp3WGtMOXY3SXpMakNpRW9xZlJjd0VPZnN3RUVoRW9jdzdUSytSTGxnY3hMdWpDMUZ4WEt0Q1Bua1dDNTdqVm12WUJqQkRPQks1Y0NRPT0K"
    }
  },
  "downloads": {
    "darwin-aarch64": {
      "file": "rbxport-1.10.0-darwin-aarch64.dmg",
      "url": "https://download.rbxport.com/rbxport-1.10.0-darwin-aarch64.dmg"
    },
    "darwin-x86_64": {
      "file": "rbxport-1.10.0-darwin-x86_64.dmg",
      "url": "https://download.rbxport.com/rbxport-1.10.0-darwin-x86_64.dmg"
    },
    "windows-x86_64": {
      "file": "rbxport-1.10.0-windows-x86_64-setup.exe",
      "url": "https://download.rbxport.com/rbxport-1.10.0-windows-x86_64-setup.exe"
    },
    "linux-x86_64": {
      "file": "rbxport-1.10.0-linux-x86_64.AppImage",
      "url": "https://download.rbxport.com/rbxport-1.10.0-linux-x86_64.AppImage"
    },
    "linux-x86_64-deb": {
      "file": "rbxport-1.10.0-linux-x86_64.deb",
      "url": "https://download.rbxport.com/rbxport-1.10.0-linux-x86_64.deb"
    }
  }
}
