• v0.6.1 7488323c13

    mtnash released this 2024-04-13 08:41:04 -04:00 | 1 commits to main since this release

    This release is a minor maintenance patch

    Changelog

    • update dependancies
    • update flake lock
    • fix warnings
    Downloads
  • v0.6.0 53346f8526

    mtnash released this 2024-02-19 14:59:04 -05:00 | 5 commits to main since this release

    This release finally adds multi-playlist support to the player! (you can change playlists without exiting it)

    Changelog

    • Update docs to be consistant with new interface
      • Remove broken links in docs (gitea does not handle md file links properly)
    • Flake shell no longer forces the use of zsh
    • Add menu for playlist selection
    • Minor refactoring of the UI drawing code

    Known Issues

    • Opening an empty playlist will crash the player

    Status Report

    UI Completion

    • Playlist viewer/player UI (play songs from one playlist)
      • Track search
    • Multi-playlist UI (change playlists without exiting program)
      • Playlist search
    • Diff UI (view changes between cached and current playlist spec) no longer needed
    • Download UI (download playlists)
    • UI Integration (change between different parts without exiting)

    Downloading Music

    • Download a single playlist
    • Create and display diff (no UI) no longer needed
    • Update cached playlist using diff

    Schema / File Structure

    • Music/ directory layout
      • "symlink" to arbitrary music directory
    • Import/Share sources between playlists
    • Finalize / future thoughts

    Creature Comforts

    • cargo new equivilant - create empty Music/ dir, playlist.ron, source.ron files
    • Configurable Colorscheme

    Documentation

    • README.md
    • Installation
      • NixOS
        • Nix Flake (install with nix build + git)
        • NixOS config
        • Nix Profile
        • documentation
        • nixpkgs (?)
      • cargo/crates.io (recommend against this)
      • Arch (AUR? git+pkgbuild?)
      • MacOS (alternatively: not)
      • Windows: can cope
    • examples (dep: dmm command to create example file?)
      • Playlists
      • Source files
      • CLI/TUI Usage
    • doc: Config file dmm.ron
    • doc: Playlist file <playlist>.ron
    • doc: Source file <source>.ron
    • internal
      • doc: Cache file index.ron
      • cache directory layout
      • cache explainer
      • source layout

    Management

    • Proper release schedule / how to decide when to make a release
    Downloads
  • v0.5.1 07022e2977

    mtnash released this 2024-02-05 10:06:24 -05:00 | 21 commits to main since this release

    Minor release to fix the nix build

    Changelog

    • include files necessary to build in nix source
    Downloads
  • v0.5.0 76a5206005

    mtnash released this 2024-02-03 11:43:55 -05:00 | 22 commits to main since this release

    This release cleans up a few things I wanted to catch before posting it on the rust discord

    Changelog

    • add dmm init
    • add a Getting Started section to README.md

    Status Report

    UI Completion

    • Playlist viewer/player UI (play songs from one playlist)
      • Track search
    • Multi-playlist UI (change playlists without exiting program)
      • Playlist search
    • Diff UI (view changes between cached and current playlist spec) no longer needed
    • Download UI (download playlists)
    • UI Integration (change between different parts without exiting)

    Downloading Music

    • Download a single playlist
    • Create and display diff (no UI) no longer needed
    • Update cached playlist using diff

    Schema / File Structure

    • Music/ directory layout
      • "symlink" to arbitrary music directory
    • Import/Share sources between playlists
    • Finalize / future thoughts

    Creature Comforts

    • cargo new equivilant - create empty Music/ dir, playlist.ron, source.ron files
    • Configurable Colorscheme

    Documentation

    • README.md
    • Installation
      • NixOS
        • Nix Flake (install with nix build + git)
        • NixOS config
        • Nix Profile
        • documentation
        • nixpkgs (?)
      • cargo/crates.io (recommend against this)
      • Arch (AUR? git+pkgbuild?)
      • MacOS (alternatively: not)
      • Windows: can cope
    • examples (dep: dmm command to create example file?)
      • Playlists
      • Source files
      • CLI/TUI Usage
    • doc: Config file dmm.ron
    • doc: Playlist file <playlist>.ron
    • doc: Source file <source>.ron
    • internal
      • doc: Cache file index.ron
      • cache directory layout
      • cache explainer
      • source layout

    Management

    • Proper release schedule / how to decide when to make a release
    Downloads
  • v0.4.0 fae4a1507f

    mtnash released this 2024-02-03 10:14:51 -05:00 | 26 commits to main since this release

    This release is mostly intended to end the poor choices made in releasing the last version as -rc1 (which did not adhere to semver)

    Changelog

    • renamed dmm download to dmm download playlist (breaking)
    • add dmm download all to download all playlists
    • alias dmm download to dl
    • alias dmm download playlist to pl
    • doc: mention nightly DMM
    • doc: installation through crates.io
    Downloads
  • v0.4.0-rc1 166bc79fc6

    mtnash released this 2024-01-31 19:45:42 -05:00 | 30 commits to main since this release

    This a minor release before 0.4.0 (0.4.0 will include the rest of the store information features)
    It was chosen to be 0.4.0 instead of 0.3.1 because of breaking changes + new features, even though the content will be quite small

    This (and the other -rc versions pre 0.4.0) will not be pushed to stable / published

    Changelog (no status report as this is a minor release)

    • renamed dmm gc to dmm store gc
    • add dmm store extract
    • this allows you to retrieve a music file downloaded by DMM. If, for example a youtube video you used as a source was DMCA'd, you can extract the cached version and add a source to use it directly from the extracted local copy
    Downloads
  • v0.3.0 b33194b48d

    mtnash released this 2023-12-21 10:48:37 -05:00 | 35 commits to main since this release

    This release contains breaking changes to the cache: Any currently downloaded music will not be recognized (and may cause errors) with the new version!

    • to fix this issue, delete the cache directory (you will need to download all playlists again!)

    the cache format may change again soon, however a method to migrate to the new format should exist next time

    the example yt-dlp source must be updated for this release

    Features of the new cache

    • If the same song is referenced multiple times (across playlists or in a playlist, doesn't matter), it will only be downloaded once
    • 'diff' functionality is no long necessary

    Changelog

    • replace the cache (see above)
    • replace a DMCA'd video URL in christmas.ron with an official version

    Below is the current state of the music player

    UI Completion

    • Playlist viewer/player UI (play songs from one playlist)
      • Track search
    • Multi-playlist UI (change playlists without exiting program)
      • Playlist search
    • Diff UI (view changes between cached and current playlist spec) no longer needed
    • Download UI (download playlists)
    • UI Integration (change between different parts without exiting)

    Downloading Music

    • Download a single playlist
    • Create and display diff (no UI) no longer needed
    • Update cached playlist using diff

    Schema / File Structure

    • Music/ directory layout
      • "symlink" to arbitrary music directory
    • Import/Share sources between playlists
    • Finalize / future thoughts

    Creature Comforts

    • cargo new equivilant - create empty Music/ dir, playlist.ron, source.ron files
    • Configurable Colorscheme

    Documentation

    • README.md
    • Installation
      • NixOS
        • Nix Flake (install with nix build + git)
        • NixOS config
        • Nix Profile
        • documentation
        • nixpkgs (?)
      • cargo/crates.io (recommend against this)
      • Arch (AUR? git+pkgbuild?)
      • MacOS (alternatively: not lol)
      • Windows: can cope
    • examples (dep: dmm command to create example file?)
      • Playlists
      • Source files
      • CLI/TUI Usage
    • doc: Config file dmm.ron
    • doc: Playlist file <playlist>.ron
    • doc: Source file <source>.ron
    • internal
      • doc: Cache file index.ron
      • cache directory layout
      • cache explainer
      • source layout

    Management

    • Proper release schedule / how to decide when to make a release
    Downloads
  • v0.2.2 00703fdacd

    mtnash released this 2023-12-15 11:13:55 -05:00 | 43 commits to main since this release

    Should be ready to publish to crates.io

    Changelog

    • Doc: setup stable branch for auto-updates to the latest stable version
    • Doc: complete Cargo.toml metadata
    Downloads
  • v0.2.1 a3565c6f0c

    mtnash released this 2023-12-13 18:17:28 -05:00 | 45 commits to main since this release

    v0.2.1 - The Documentation Update

    Changelog

    • Add documentation (and lots of it)
    • Improve errors for when you are not in the music directory
    • flake now supports platforms other than x86_64-linux

    Below is the current state of the music player

    UI Completion

    • Playlist viewer/player UI (play songs from one playlist)
      • Track search
    • Multi-playlist UI (change playlists without exiting program)
      • Playlist search
    • Diff UI (view changes between cached and current playlist spec)
    • Download UI (download playlists)
    • UI Integration (change between different parts without exiting)

    Downloading Music

    • Download a single playlist
    • Create and display diff (no UI)
    • Update cached playlist using diff

    Schema / File Structure

    • Music/ directory layout
      • "symlink" to arbitrary music directory
    • Import/Share sources between playlists
    • Finalize / future thoughts

    Creature Comforts

    • cargo new equivilant - create empty Music/ dir, playlist.ron, source.ron files
    • Configurable Colorscheme

    Documentation

    • README.md
    • Installation
      • NixOS
        • Nix Flake (install with nix build + git)
        • NixOS config
        • Nix Profile
        • documentation
        • nixpkgs (?)
      • cargo/crates.io (recommend against this)
      • Arch (AUR? git+pkgbuild?)
      • MacOS (alternatively: not lol)
      • Windows: can cope
    • examples (dep: dmm command to create example file?)
      • Playlists
      • Source files
      • CLI/TUI Usage
    • doc: Config file dmm.ron
    • doc: Playlist file <playlist>.ron
    • doc: Source file <source>.ron
    • internal
      • doc: Cache file index.ron
      • cache directory layout
      • source layout

    Management

    • Proper release schedule / how to decide when to make a release
    Downloads
  • v0.2.0 848dd6b31d

    mtnash released this 2023-12-10 20:19:42 -05:00 | 58 commits to main since this release

    I Can't Believe It's Not Had a Release Yet!

    This is the first (official) (pre?) release of DMM.
    This release message serves to sumarize the current state of the music player

    UI Completion

    • Playlist viewer/player UI (play songs from one playlist)
      • Track search
    • Multi-playlist UI (change playlists without exiting program)
      • Playlist search
    • Diff UI (view changes between cached and current playlist spec)
    • Download UI (download playlists)
    • UI Integration (change between different parts without exiting)

    Downloading Music

    • Download a single playlist
    • Create and display diff (no UI)
    • Update cached playlist using diff

    Schema / File Structure

    • Music/ directory layout
      • "symlink" to arbitrary music directory
    • Import/Share sources between playlists
    • Finalize / future thoughts

    Creature Comforts

    • cargo new equivilant - create empty Music/ dir, playlist.ron, source.ron files
    • Configurable Colorscheme

    Documentation

    • README.md (at all)
    • Installation
      • NixOS
        • Nix Flake (install with nix build + git)
          • document
        • nixpkgs (?)
      • cargo/crates.io (recommend against this)
      • Arch (AUR? git+pkgbuild?)
      • MacOS (alternatively: not lol)
      • Windows: can cope
    • examples (dep: dmm command to create example file?)
      • Playlists
      • Source files
      • CLI/TUI Usage
    • doc: Config file dmm.ron
    • doc: Playlist file <playlist>.ron
    • doc: Source file <source>.ron
    • internal
      • doc: Cache file index.ron
      • cache directory layout
      • source layout

    Management

    • Proper release schedule / how to decide when to make a release
    Downloads