/
/
# What does this implement/fix? Podcast feeds that only number some of their episodes (like Science Vs) showed episodes in a scrambled order. The episode listing jumped between real episode numbers and feed index positions because we mixed two incompatible numbering schemes within the same show. Episode ordering was also inconsistent between providers, so playing from a chosen episode could queue up older episodes instead of newer ones. - Use episode numbers only when every episode in the feed has one, otherwise work the order out from the publication dates - Oldest episode is always the lowest number, so the newest episode is always the highest - Fixed across iTunes, Podcast Index, Podcast Feed, gPodder, Overcast, Pocket Casts, Spotify, Audiobookshelf, YouTube Music, Deezer, OpenSubsonic and Audible - Playing from a chosen episode now queues that episode and the newer ones, on every provider - Asking for the latest episode of an RSS feed podcast no longer plays the oldest one - Serial podcasts, the ones that ask apps to list oldest first, are no longer shown in reverse - Podcasts split into seasons no longer have their episodes interleaved - Single episode and browse paths no longer invent a position when one isn't available Now that oldest = lowest is standardised then the default sort for podcasts needs to be position descending which is done in this frontend PR https://github.com/music-assistant/frontend/pull/2620 **Related issue (if applicable):** - n/a ## Types of changes - [X] Bugfix (non-breaking change which fixes an issue) — `bugfix` - [ ] New feature (non-breaking change which adds functionality) — `new-feature` - [ ] Enhancement to an existing feature — `enhancement` - [ ] New music/player/metadata/plugin provider — `new-provider` - [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) — `breaking-change` - [ ] Refactor (no behaviour change) — `refactor` - [ ] Documentation only — `documentation` - [ ] Maintenance / chore — `maintenance` - [ ] CI / workflow change — `ci` - [ ] Dependencies bump — `dependencies` ## Checklist - [x] The code change is tested and works locally. - [x] `pre-commit run --all-files` passes. - [x] `pytest` passes, and tests have been added/updated under `tests/` where applicable. - [ ] For changes to shared models, the companion PR in `music-assistant/models` is linked. - [x] For changes affecting the UI, the companion PR in `music-assistant/frontend` is linked. - [x] I have read and complied with the project's [AI Policy](https://github.com/music-assistant/.github/blob/main/AI_POLICY.md) for any AI-assisted contributions. - [ ] I have [raised a PR against the documentation repository](https://github.com/music-assistant/music-assistant.io/blob/main/CONTRIBUTING.md) targeting the main or beta branch as appropriate.