Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v3.6.0 #2258

Open
wants to merge 39 commits into
base: future3/main
Choose a base branch
from
Open

Release v3.6.0 #2258

wants to merge 39 commits into from

Commits on Feb 11, 2024

  1. Bump to v3.6.0-alpha

    AlvinSchiller committed Feb 11, 2024
    Configuration menu
    Copy the full SHA
    d6b48d8 View commit details
    Browse the repository at this point in the history

Commits on Feb 14, 2024

  1. Extract docs for battery monitor (#2257)

    * extract battmon docs into markdown
    
    * Fix typo
    
    * add link to ADS1015
    s-martin authored Feb 14, 2024
    Configuration menu
    Copy the full SHA
    75743da View commit details
    Browse the repository at this point in the history
  2. github actions update (#2239)

    * Bump actions/download-artifact from 3 to 4
    
    Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.
    - [Release notes](https://github.com/actions/download-artifact/releases)
    - [Commits](actions/download-artifact@v3...v4)
    
    * Bump actions/upload-artifact from 3 to 4
    
    Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4.
    - [Release notes](https://github.com/actions/upload-artifact/releases)
    - [Commits](actions/[email protected])
    
    * Bump geekyeggo/delete-artifact from 2 to 4
    
    * add write permission for artifact deletion
    
    * ignore fails for artifact deletion
    
    * Revert "ignore fails for artifact deletion"
    
    This reverts commit a759d89.
    
    * Revert "add write permission for artifact deletion"
    
    This reverts commit 1028402.
    
    * remove cleanup stage for now
    AlvinSchiller authored Feb 14, 2024
    Configuration menu
    Copy the full SHA
    876219a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f630d30 View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2024

  1. (maint) Remove duplicate rst (#2269)

    * remove duplicate rst doc file
    
    * fix link
    s-martin authored Feb 18, 2024
    Configuration menu
    Copy the full SHA
    21639b9 View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2024

  1. Configuration menu
    Copy the full SHA
    958ada9 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #2273

    merge hotfix 3.5.2
    AlvinSchiller authored Feb 19, 2024
    Configuration menu
    Copy the full SHA
    e1e8416 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2024

  1. Event Device Support (evdev) (#1943)

    * Add event device plugin
    
    This implements an "event device" listener plugin,
    that enables the user to configure the phoniebox to
    respond to events from an "event device" (device under /dev/input).
    This incluces eg button presses from an USB controller or keyboard.
    
    * Adds documentation for the event device plugin
    
    Includes a detailed how-to as well as example config
    
    * Allow empty button config
    
    This is an actual usecase in case someone wants to setup a device
    and figure out the button ids by looking at the logs
    
    * Update README.rst
    
    * Improve README
    
    - Remove duplicated section as suggested
    - Add Zero Delay Arcade USB Encoder usecase
    
    * Give more meaningfull name to listener thread variable
    
    * Link to old documentation
    
    * Remove README and fix typo
    
    The documentation is now part of the markdown documentation
    
    * Remove unecessary plain=1
    
    * Remove indents in example code
    
    There was some left over indentation from the old rtf format in the python code examples.
    
    * Add example how to access evdev in docker
    
    * Example for new Evdev config structure
    
    This is tighly modeled after gpio.
    In contrast to GPIO, this is a list of devices containing
    each one or more input/output devices.
    Eg a Joystick has keys but potentially also rumble or leds.
    
    Currently only very simply input devices (buttons) are supported.
    This structer should enable to extend this easily.
    
    * Move evdev config to separate file
    
    As suggested this should be a separate file, similar to the gpioz config
    
    * Adapt evdev code to new config
    
    Now the config for evdev is akin to GPIO.
    The big difference is that multiple devices with each
    multiple input/output devices are supported.
    
    Note that the backend is still the old event device listener backend.
    Thus to support more features, the backend would need to be
    quite drastically overhauled.
    
    * Update documentation for new evdev config format
    
    * Fix wrong reference
    
    * Fix bug to correctly check supported input device type
    
    * Add more tests for evdev init
    
    * Fix wrong attribute name
    
    The attribute 'device_request' of EvDevKeyListener is now called 'device_name_request'
    
    * Validate input config better
    
    Fails if there is no device_name and setts proper default for 'exact'
    
    * Add pyzmq installation for github action
    
    This is required for some tests.
    
    Following the instructions from issue #2050
    Specifically: #2050 (comment)
    
    * Revert "Add pyzmq installation for github action"
    
    This reverts commit 75161b5.
    
    As this was not working
    
    * Mock `jukebox.publishing` in tests to avoid zmq
    
    Currently it is hard to install zmq (#2050) and for
    CI pytest `zmq` is not available.
    As the test do not really require `jukebox.publishing`
    running, mocking it in the test avoids it being imported.
    
    Thus the tests do not require `zmq` to be installed.
    
    ---------
    
    Co-authored-by: pabera <[email protected]>
    Co-authored-by: Vito Zanotelli <[email protected]>
    Co-authored-by: s-martin <[email protected]>
    4 people authored Feb 20, 2024
    Configuration menu
    Copy the full SHA
    07208e6 View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2024

  1. Configuration menu
    Copy the full SHA
    c5e58d5 View commit details
    Browse the repository at this point in the history
  2. fix: Stop Back Action at audiofolder root level (#2293)

    * bugfix: Stop Back Action at audiofolder root level
    
    This also allows to go back when folder is empty
    
    Fixes #2224
    
    * fix: Flake8 issue
    
    * Remove some minor issues
    pabera authored Mar 16, 2024
    Configuration menu
    Copy the full SHA
    4d05c75 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2024

  1. Reactivate delete artifact (#2297)

    * activated delete-artifacts again with v5
    
    * deactivate failOnError for deletion
    AlvinSchiller authored Mar 19, 2024
    Configuration menu
    Copy the full SHA
    cfd72b2 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2024

  1. Configuration menu
    Copy the full SHA
    2b5ef6e View commit details
    Browse the repository at this point in the history

Commits on Mar 21, 2024

  1. Add markdown linting (#2284)

    * fix docs
    
    * add markdown action
    
    * use different action
    
    * change linter
    
    * add checkout
    
    * change globs
    
    * change wildcard
    
    * Aktualisieren von markdown_v3.yml
    
    * fix ignore
    
    * comment ignore
    
    * change version
    
    * use master
    
    * new action used for linting
    
    * Fix config
    
    * Remove ignore
    
    * Ignore docstring dir
    
    * ignore GitHub
    
    * Aktualisieren von markdown_v3.yml
    
    * use dot true
    
    * Aktualisieren von markdown_v3.yml
    
    * Use new action
    
    * Fix continue-on-error
    
    * Remove unnecessary code
    
    * Add markdownlint config
    
    * Rename . markdownlint-cli2.yaml to .markdownlint-cli2.yaml
    
    * Use config file
    
    * Simplify globs
    
    * Use globs and ignore in config file
    
    * Ignore $ errors
    
    * Ignore src and .github
    
    * Use only config file
    
    * Fix general glob
    
    * Ignore inline html
    
    * Disable MD010
    
    * Fix language
    
    * dont warn trailing punctuation
    
    * fix warnings
    
    * fix a warning
    
    * reduce ignore
    
    * fix warnings
    
    * fail check, if markdownlint fails
    
    * add runner script and hook
    
    * Update documentation/builders/components/power/onoff-shim.md
    
    Co-authored-by: Alvin Schiller <[email protected]>
    
    * Update playlists-livestreams-podcasts.md
    
    * add documentation for documentation with md
    
    * get rid of docker
    
    * fix comments
    
    * incorporate comments
    
    * Update documentation/developers/documentation.md
    
    Co-authored-by: Alvin Schiller <[email protected]>
    
    * check, if cmd does not exisr
    
    ---------
    
    Co-authored-by: Alvin Schiller <[email protected]>
    s-martin and AlvinSchiller authored Mar 21, 2024
    Configuration menu
    Copy the full SHA
    c3b622c View commit details
    Browse the repository at this point in the history

Commits on Mar 22, 2024

  1. docs: Manually upgrade to the latest version (#2300)

    * docs: Manually upgrade to the latest version
    
    * Fix typo
    
    * Fix Typos
    
    * Solve last issue
    
    * fix: Align with comments
    
    * fix: indentation was off
    
    * fix: markdown lint
    
    * fix: one small bugfix
    
    * fix: remove last linting issues
    
    * fix: adding info about missing upgrade feature
    pabera authored Mar 22, 2024
    Configuration menu
    Copy the full SHA
    de40661 View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2024

  1. Customize markdownlint (#2310)

    * Customize markdownlint
    
    * Remove ignore in file
    
    * Remove ignore in file
    s-martin authored Mar 27, 2024
    Configuration menu
    Copy the full SHA
    c319ca9 View commit details
    Browse the repository at this point in the history

Commits on Mar 30, 2024

  1. Update CodeQL to v3 (#2312)

    * use codeql v3
    
    * make sure there's always an update
    s-martin authored Mar 30, 2024
    Configuration menu
    Copy the full SHA
    62ebd27 View commit details
    Browse the repository at this point in the history

Commits on Apr 6, 2024

  1. fix: Build libzmq locally to work on all host types (#2307)

    * Externalize libzmq build
    
    * Update documentation
    
    * Use dedicated build directory for libzmq
    
    * improve: update make command to be more efficient
    
    * Update docker/Dockerfile.libzmq
    
    Co-authored-by: notapirate <[email protected]>
    
    * fix: Remove unneccesary MD linting rule
    
    * fix: Remove another markdown linter
    
    * Remove uncessary file
    
    * refactor: Rename docker.pulse.mpd.conf
    
    ---------
    
    Co-authored-by: notapirate <[email protected]>
    pabera and notapirate authored Apr 6, 2024
    Configuration menu
    Copy the full SHA
    27b23cb View commit details
    Browse the repository at this point in the history

Commits on Apr 8, 2024

  1. Fix PlayerMPD.rewind to start with the first song (#2323)

    rewind() is documented to jump to the first song of the playlist.
    Instead, it jumped to the second song as SONGPOS in
    MPDClient.play(SONGPOS) is zero-indexed [1], so mpd.play(1) started
    the second song.
    
    [1] https://mpd.readthedocs.io/en/latest/protocol.html#the-queue
    "The position is a 0-based index"
    
    Related: #2294
    hoffie authored Apr 8, 2024
    Configuration menu
    Copy the full SHA
    aadff23 View commit details
    Browse the repository at this point in the history
  2. Add Python 3.12 to Action (#2320)

    * Try python 3.12
    
    * Trigger py file for action
    
    * Revert previous commit
    
    * fix flake8 warnings for python 3.12
    
    * fix e126
    
    * fix e126
    
    * ignoring e126 as it is too strict
    
    * revert e126 attempts
    s-martin authored Apr 8, 2024
    Configuration menu
    Copy the full SHA
    7c7024c View commit details
    Browse the repository at this point in the history
  3. Fix CoverartCacheManager (#2325)

    * Fix CoverartCacheManager for songs with no art
    
    Previously, an ERROR was logged for each song without cover art when the
    Web UI was open.
    This commit avoids the error, caches the no-cover-art result and saves a
    roundtrip to mpd for all no-cover-art songs.
    
    * refactor: Reducing code and simplifying some logical statements
    
    * fix: flake8 error
    
    * refactor: reducing complexity for cache filename
    
    * refactor: introduce queuing for saving cache files
    
    * fix: remove slugify
    
    * feat: Use mutagen instead of MPD to retrieve cover art, include cache flush, and thread
    
    * fix: flake8 error
    
    * Update src/jukebox/components/playermpd/__init__.py
    
    Co-authored-by: Christian Hoffmann <[email protected]>
    
    ---------
    
    Co-authored-by: pabera <[email protected]>
    hoffie and pabera authored Apr 8, 2024
    Configuration menu
    Copy the full SHA
    3865c5a View commit details
    Browse the repository at this point in the history

Commits on Apr 12, 2024

  1. maint: Update actions (#2334)

    * Update action versions
    
    * Trigger python action
    
    * Update Python action
    
    * Use correct env variable
    
    * Revert change for triggering action
    s-martin authored Apr 12, 2024
    Configuration menu
    Copy the full SHA
    afd0e47 View commit details
    Browse the repository at this point in the history
  2. Fix PlayerMPD.prev/next() when stopped (#2326)

    * utils: Add get_config_action
    
    This abstracts away the functionality to resolve a given config option
    to an action in a pre-defined dict.
    
    Co-authored-by: Christian Hoffmann <[email protected]>
    
    * Fix PlayerMPD.prev/next() when stopped
    
    * Avoid MPD-related crashes during all prev/next() calls.
    * Explicitly handle prev() in stopped state, configurable via
      `playermpd.stopped_prev_action`.
    * Explicitly handle next() in stopped state, configurable via
      `playermpd.stopped_next_action`.
    * Explicitly handle next() when reaching the end of the playlist:
      jukebox-daemon will now ignore the action by default (similar to v2).
      It can also be configured to rewind the playlist instead by setting
      the new config option `playermpd.end_of_playlist_next_action: rewind`
      or to stop playing.
    
    Fixes #2294
    Fixes #2327
    
    Co-authored-by: pabera <[email protected]>
    
    ---------
    
    Co-authored-by: pabera <[email protected]>
    hoffie and pabera authored Apr 12, 2024
    Configuration menu
    Copy the full SHA
    a9ab571 View commit details
    Browse the repository at this point in the history

Commits on Apr 13, 2024

  1. fix a typo (#2336)

    s-martin authored Apr 13, 2024
    Configuration menu
    Copy the full SHA
    fa110b4 View commit details
    Browse the repository at this point in the history

Commits on Apr 15, 2024

  1. Configuration menu
    Copy the full SHA
    33fec64 View commit details
    Browse the repository at this point in the history

Commits on Apr 17, 2024

  1. Configuration menu
    Copy the full SHA
    870b5ec View commit details
    Browse the repository at this point in the history
  2. Merge pull request #2346 Merge Hotifx 3.5.3

    Merge Hotifx 3.5.3
    AlvinSchiller authored Apr 17, 2024
    Configuration menu
    Copy the full SHA
    6ca650b View commit details
    Browse the repository at this point in the history

Commits on Apr 21, 2024

  1. fix: docker build after pyzmq update (#2351)

    * fix: Add cmake as requirement to support pyzmq build
    
    * fix: Remove cmake and pin pyzmq<26 as cmake does not build well in RPI env
    pabera authored Apr 21, 2024
    Configuration menu
    Copy the full SHA
    6003682 View commit details
    Browse the repository at this point in the history
  2. feat: Allow to enable/disable Cover Art in Web App & load from filesy…

    …stem (#2352)
    
    * feat: Introduce Web App Settings
    
    * feat: Allow to enable/disable Cover Art in Web App
    
    * fix: handle Falsy mimetype and data even when APIC tag has been found my mutagen
    
    * feat: Try to load cover from filesystem when not found in audio file
    
    * fix: flake8 linting error
    
    * docs: Add documentation for Cover Art
    
    * feat: Allow show_covers setting to be managed in Web App
    
    * fix: again flake8 linting errors
    pabera authored Apr 21, 2024
    Configuration menu
    Copy the full SHA
    aee32ff View commit details
    Browse the repository at this point in the history

Commits on May 3, 2024

  1. Configuration menu
    Copy the full SHA
    141a05f View commit details
    Browse the repository at this point in the history

Commits on May 5, 2024

  1. Fix links (#2366)

    s-martin authored May 5, 2024
    Configuration menu
    Copy the full SHA
    a1b2df8 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2024

  1. add details about cards for RC522 (#2372)

    * add details about cards
    
    * fix empty line
    
    * Update documentation/developers/rfid/mfrc522_spi.md
    
    Co-authored-by: Alvin Schiller <[email protected]>
    
    ---------
    
    Co-authored-by: Alvin Schiller <[email protected]>
    s-martin and AlvinSchiller authored May 17, 2024
    Configuration menu
    Copy the full SHA
    2232a35 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2024

  1. Configuration menu
    Copy the full SHA
    d93f071 View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2024

  1. feat: Add INA219 battery sensor (#2380)

    * specify specific pip version wich works with zmq install
    
    * add INA219 sensor
    
    * average measurement for more accurate results. Use supply voltage for measurement.
    
    * Revert "specify specific pip version wich works with zmq install"
    
    This reverts commit 48dd1bf.
    
    * correct format
    
    * Update src/jukebox/components/battery_monitor/batt_mon_i2c_ina219/__init__.py
    
    Co-authored-by: s-martin <[email protected]>
    
    * Update copyright notice
    
    * Update license
    
    * Update license
    
    * Document the INA219
    
    * add error handling and type safety
    
    * Update batterymonitor.md
    
    * Update __init__.py
    
    * fix markdown lint for batterymonitor.md
    
    * fix markdown lint batterymonitor.md
    
    * Update documentation/builders/components/power/batterymonitor.md
    
    Co-authored-by: s-martin <[email protected]>
    
    * Update documentation/builders/components/power/batterymonitor.md
    
    Co-authored-by: s-martin <[email protected]>
    
    ---------
    
    Co-authored-by: Timm <[email protected]>
    Co-authored-by: s-martin <[email protected]>
    3 people authored Jun 8, 2024
    Configuration menu
    Copy the full SHA
    f2a1730 View commit details
    Browse the repository at this point in the history

Commits on Nov 3, 2024

  1. Docker semantic fix (#2451)

    pabera authored Nov 3, 2024
    Configuration menu
    Copy the full SHA
    a216c78 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2024

  1. Future3/lift 64bit restriction (#2425)

    * Remove 64bit check in installer script
    
    * Check presence of raspi.list in raspian check
    
    * fix: update check for debian derived os. integrate checks
    
    RPiOS: 32-bit = raspbian, 64-bit = debian
    
    ---------
    
    Co-authored-by: Alvin Schiller <[email protected]>
    mittler-works and AlvinSchiller authored Nov 7, 2024
    Configuration menu
    Copy the full SHA
    32798da View commit details
    Browse the repository at this point in the history
  2. Use correct raspi-config command for bookworm (#2450)

    * use correct raspi-config command for bookworm
    
    * simplify _get_boot_file_path
    
    * fix path
    
    * revert last commit
    
    * merge fixes
    
    * merge fixes
    
    ---------
    
    Co-authored-by: Alvin Schiller <[email protected]>
    s-martin and AlvinSchiller authored Nov 7, 2024
    Configuration menu
    Copy the full SHA
    bdc1a23 View commit details
    Browse the repository at this point in the history

Commits on Nov 10, 2024

  1. feat: Add Idle Shutdown Timer support (#2332)

    * feat: Add Idle Shutdown Timer support
    
    This adds an optional idle shutdown timer which can be enabled
    via timers.idle_shutdown.timeout_sec in the jukebox.yaml config.
    
    The system will shut down after the given number of seconds if no
    activity has been detected during that time. Activity is defined as:
    - music playing
    - active SSH sessions
    - changes in configs or audio content.
    
    Fixes: #1970
    
    * refactor: Break down IdleTimer into 2 standard GenericMultiTimerClass and GenericEndlessTimerClass timers
    
    * feat: Introducing new Timer UI, including Idle Shutdown
    
    * refactor: Abstract into functions
    
    * Adding Sleep timer / not functional
    
    * Finalize Volume Fadeout Shutdown timer
    
    * Fix flake8
    
    * Fix more flake8s
    
    * Fix small bugs
    
    * Improve multitimer.py suggested by #2386
    
    * Fix flake8
    
    ---------
    
    Co-authored-by: pabera <[email protected]>
    hoffie and pabera authored Nov 10, 2024
    Configuration menu
    Copy the full SHA
    0df1a0c View commit details
    Browse the repository at this point in the history

Commits on Nov 23, 2024

  1. Configuration menu
    Copy the full SHA
    ea40be3 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #2455 from s-martin/future3/ignore-file-in-linter

    [maint] Ignore LICENSE file in markdown linter
    s-martin authored Nov 23, 2024
    Configuration menu
    Copy the full SHA
    d43da21 View commit details
    Browse the repository at this point in the history