Devious Fish
pianod2 music server
profile for Perette at Stack Overflow, Q&A for professional and enthusiast programmers


Work in progress

Recent progress

Generated from SVN logs.

Date Revision Description
28 Sep 2022 r394
  • pianod: Null-terminate the 2-character salt passed to crypt().
  • pianod: Fix crash when non-request sources are queried about requests.
23 Sep 2022 r393
  • update to autoconf 2.71.
  • viewer.ts: ensure 'idle' class is shown when player is idle.
28 Mar 2022 r392
  • Update ncurses check to ensure tiparm() is defined correctly.
27 Mar 2022 r391
  • Fixed failure to restore a source on startup to neither prevent startup nor trigger uncaught exception.
  • Change other initialization exceptions to avoid uncaught exception abort.
  • Fix av_packet_init deprecation warnings.
  • Strip support for ffmpeg < 3.1, which was released ~6 years ago.
  • Improvements suggested by compilation warnings from Clang 13.
26 Mar 2022 r390
  • Make extractOptions() recurse, and move work to non-recursing extract() for calling by constructors.
  • Rework source statistic reporting; JSON report was previously incomplete.
  • common/interpreter.cpp: Fixes to help renderer to correct mismatched brackets and optional option parser detail omissions.
  • Compilation failure: tiparm() not found on MacOS 10.15.
09 Mar 2022 r389
  • Close connection if error setting NOSIGPIPE.
  • Small corrections to parsnip documentation.
20 Dec 2021 r388
  • If unittest is run with wrong shell, print an error and exit with status for test skipped.
19 Dec 2021 r387
  • Last of the using namespace std fixes, hopefully.
19 Dec 2021 r386
  • Fix a few more using namespace std issues.
19 Dec 2021 r385
  • Fixes for removal of using namespace std
19 Dec 2021 r384
  • Fix crash when Pandora ads had no company name or no title.
19 Dec 2021 r383
  • Code cleanup: Remove `using namespace std` several places
  • Modernization: Remove #ifdef guards in favor of #pragma once
30 Aug 2021 r382
  • JSON Protocol: Add missing JSON requests for source add/use/etc.
  • Pandora: Prime/Refresh cache if needed before getting song rating.
  • Update documentation, adding protocol overview and adding JSON
  • request names to respective command overview.
27 Aug 2021 r381
  • - Fix bug in getHistory/getQueue requests with negative indicies.
27 May 2021 r380
  • Client: Fix HTML validation error by providing default target for A element.
24 May 2021 r379
  • :vi Change
24 May 2021 r378
  • Fix compile errors generated by latest TypeScript compiler & jQuery definitions.
  • Fix linking flag "-lsdl" to "-lSDL".
  • Makefiles: Retrieve node.js paths with "npm config get prefix"
  • Makefiles: TypeScript: use "--moduleResolution node" to find jQuery definitions.
  • Fix compile errors generated by latest TypeScript compiler & jQuery definitions.
  • Credit to Martin Stumpf for identifying these issues and submitting patches.
23 May 2021 r377
  • Fix missing #include <memory> in audiooutput.cpp.
17 Apr 2021 r376
  • Fix assert after Pandora request failed with error #0.
  • Fix some static analyzer complaints.
01 Apr 2021 r375
  • Rework ThingieList and other collections to avoid template code bloat
  • Client-Console: Fix shutdown command
24 Mar 2021 r374
  • Rework seeds/ratings handling for protocol omissions on internal-tuner
  • Don't save altered source parameters unless asked to.
20 Mar 2021 r373
  • - Fix assertion when searching with a source that isn't ready
  • - Fix problem/assertion when rating currently playing song
  • - Reintegrate using old ("JSON v5") protocol
  • - Constipate source pointers thoughout code base.
16 Mar 2021 r372
  • Reintegrate Pandora using older "JSON" protocol.
  • Fix crash related to JSON protocol when rating current song.
19 Feb 2021 r371
  • Fix makefile issue.
18 Feb 2021 r370
  • JSON protocol: Add missing albumName on albums and songs
  • Client: deliver as ECMAScript 6; ditch Node.js toolchains.
  • Rewrite viewer using JSON protocol.
13 Feb 2021 r369
  • Workaround for GCC 6 compile issue.
13 Feb 2021 r368
  • Adjust code to compile on GCC 7. Add install note GCC 6 no longer works.
  • Fix a few typos.
  • Some cleanup in json_format.cpp.
13 Feb 2021 r367
  • Add "greeting=<none,brief,full>" option when connecting
  • JSON protocol: Fix several events being omitted
  • JSON protcol: Fix version number reporting
  • json_format: add flatten, validate validation, and man page
  • Schemas: allow additionalProperties schemas
  • Schema creation/validation: Better location reporting
08 Feb 2021 r366
  • Fix durations in replies going to whole service.
07 Feb 2021 r365
  • Fixes for Mac compile.
07 Feb 2021 r364
  • Add missing #includes causing compile errors on Macs.
07 Feb 2021 r363
  • Football: Fix rounding issue with fractional poll intervals.
  • Fix to ffmpeg/AVDevices output.
  • Implement JSON tranmission, document protocol.
02 Feb 2021 r362
  • Refactor MusicThingie tranmission.
  • Football: Bug fix for service member count upon rejected connection.
31 Jan 2021 r361
  • Football: Reject connections from (occasional on MacOS)
  • Football: Fix buffer overflow in fb_unregister
  • Rework PLAY/SELECT commands/requests.
  • Parsnip: Allow keyword optionals at end of option sequence.
27 Jan 2021 r360
  • Fix: SelectedSource and Privileges updates being dropped.
  • Client: Fix seed toggle buttons, which were always toggling song seed.
  • Football: Add service option for ping interval.
  • Football: Send websocket close just before connection closure.
  • Football: Fix `pong` response, resolving spurious disconnects.
26 Jan 2021 r359
  • Fix compile issues with gstreamerplayer and OS X player.
26 Jan 2021 r358
  • Add alternate libparsnip build & tests with comments & file position enabled.
  • Return responses through ResponseCollector, DataResponse & CommandReply rather than transmit directly.
  • Scrub docu-comment issues identified by Doxygen.
24 Jan 2021 r357
  • Return command responses through ResponseCollector/DataResponse "funnel"
  • Fixes to Parsnip JSON parsing when comments enabled.
10 Jan 2021 r354
  • Add PARSNIP_JSON_TRACK_POSITION to report line+character number of JSON parse errors.
09 Jan 2021 r353
  • Fix warning issue in failurecounter.h (part of unit tests).
09 Jan 2021 r352
  • Parsnip: Add RegEx to command line protocol
  • Unittest: don't enable color if not writing to a terminal
  • Address issues reported by static analyzer.
07 Jan 2021 r351
  • Clean up/reformat Pandora message creation.
  • Parsnip: Implement schema creation from JSON Schema definitions.
30 Dec 2020 r350
  • - Workaround for compile error: default initialization of const with =default constructor.
30 Dec 2020 r349
  • Implement JSON requests
  • Parsnip: Allow apostrope-demarked strings in JSON
  • Add JSON request support to `piano` shell script
  • Refactor away StringDictionary; keep source parameters in JSON dictionary.
14 Dec 2020 r348
  • Fixes for Makefiles.
14 Dec 2020 r347
  • Reimplement help
  • Clean up some error formatting
  • Remove 'include' directory; modify #includes for Parsnip & Football
10 Dec 2020 r346
  • Enable all warnings (-Wall) when configured with --enable-debug
  • Scrub warnings
  • Detect/set C++ standard for Objective C++ compiler
06 Dec 2020 r345
  • Corrections to makefiles, unit test timing issue.
06 Dec 2020 r344
  • Replace Football parser with Parsnip parser.
08 Jun 2020 r343
  • Fix Pandora items reporting as queueable.
  • Fix occasional Pandora search failures