Commit Graph

437 Commits

Author SHA1 Message Date
pre-commit-ci[bot] ef3b8f4b1d [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-12-28 16:16:49 +00:00
wizardoesmagic 590f292275 Refactor library and examples for improved usability and features
Key changes:
- Integrated autoplay support into the Player class.
- Added new equalizer presets for Pop, Soft, and Light Bass.
- Enhanced Queue with move and remove_duplicates functionality.
- Updated exception messages and docstrings for better clarity.
- Refreshed advanced example with interaction buttons and progress bars.
2025-12-28 16:11:20 +00:00
pre-commit-ci[bot] 77d1e3fcbc [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-12-28 08:10:51 +00:00
wizardoesmagic 7551362b2b Final integration of advanced features into core classes 2025-12-28 08:10:42 +00:00
pre-commit-ci[bot] 012bea6a19 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-12-28 08:07:43 +00:00
wizardoesmagic 14044a3256 Consolidate documentation into single FEATURES.md file
- Merged ADVANCED_FEATURES.md and NEW_FEATURES_SUMMARY.md into FEATURES.md
- Provides comprehensive guide for all advanced features
- Easier to maintain and navigate
- Includes all examples and quick reference sections
2025-12-28 08:07:23 +00:00
pre-commit-ci[bot] e5dd3aec86 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-12-28 07:58:13 +00:00
wizardoesmagic 0e7473a807 Add advanced features to Pomice
New Features:
- Track History: Keep track of previously played songs with navigation and search
- Queue Statistics: Detailed analytics about queue contents (duration, requesters, etc.)
- Playlist Manager: Export/import playlists to JSON and M3U formats
- Track Utilities: Advanced filtering, searching, and sorting capabilities

Added Files:
- pomice/history.py: Track history management system
- pomice/queue_stats.py: Queue statistics and analytics
- pomice/playlist_manager.py: Playlist export/import functionality
- pomice/track_utils.py: Track filtering and search utilities
- examples/advanced_features.py: Complete example bot demonstrating all features
- ADVANCED_FEATURES.md: Comprehensive documentation
- NEW_FEATURES_SUMMARY.md: Quick reference guide

All features are fully documented with examples and type hints.
No breaking changes to existing functionality.
2025-12-28 07:57:58 +00:00
pre-commit-ci[bot] b18719dc48 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-12-28 07:54:10 +00:00
wizardoesmagic c48ac5716b Fix critical bug in iter_playlist_tracks wave iteration logic
- Fixed TypeError where next() was incorrectly called on a range object
- Replaced flawed iterator manipulation with clean list-based slicing
- Maintains same wave-based pagination functionality for efficiency
- Ensures proper handling of large Spotify playlists with multiple pages
2025-12-28 07:48:19 +00:00
cloudwithax 9bffdebe25 2.10.0 2025-10-04 00:00:57 -04:00
cloudwithax 720ba187ab 2.10.0 2025-10-04 00:00:01 -04:00
cloudwithax 855bf4e0d7 2.9.2 2024-11-21 21:11:24 -05:00
cloudwithax cd579becad fixed file playing and recursion issue in queue looping 2024-11-21 21:06:32 -05:00
cloudwithax 3a1ecf9eec 2.9.1 2024-08-23 21:18:25 -04:00
clxud 5227962228
Merge pull request #69 from ZandercraftGames/fix/other-sources
Fix Support for Other Source and Playlist Types
2024-08-23 21:04:04 -04:00
Zander be7106616b
Typing fix from NiceAesth
Co-authored-by: Andrei Baciu <8437201+NiceAesth@users.noreply.github.com>
2024-08-18 00:34:43 -04:00
Zander ba9534bc27
Typing fix from NiceAesth
Co-authored-by: Andrei Baciu <8437201+NiceAesth@users.noreply.github.com>
2024-08-18 00:34:32 -04:00
pre-commit-ci[bot] 2e0f5b365a [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-08-17 05:44:34 +00:00
Zander M. 851f00aa97
Add support for other unsupported playlist types 2024-08-17 01:23:59 -04:00
Zander M. 817295d321
Add support for other unsupported source types 2024-08-17 00:46:32 -04:00
Zander M. 8ab3ae9ccd
Add websockets dependency to Pipenv 2024-08-17 00:44:51 -04:00
cloudwithax 094f2be181 refactor: set original track if search type is not defined in Player's play_track method 2024-06-10 21:54:21 -04:00
cloudwithax b60a6aec18 refactor: guard check for search type to prevent nulled search types getting searched 2024-06-10 21:30:57 -04:00
cloudwithax 80f7b77cd3 refactor: update search_type handling in Player and Node classes to be nullish to support lavasrc 2024-06-10 21:20:59 -04:00
cloudwithax 8679d6d125 Merge branch 'main' of https://github.com/cloudwithax/pomice 2024-06-10 21:17:57 -04:00
cloudwithax ad01407fff refactor: update query handling in Node class 2024-06-10 21:17:53 -04:00
Clxud f1609f7049
Merge pull request #67 from ZandercraftGames/fix/load-exceptions
Fix KeyError in exception handling on error when loading a track.
2024-03-27 22:10:37 -04:00
pre-commit-ci[bot] 5fcfc73901 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-03-28 02:08:22 +00:00
Zander M. 86b35106b2
Fix KeyError in exception handling on error when loading a track. 2024-03-27 22:04:39 -04:00
Clxud 519a14fbde
Merge pull request #66 from ZandercraftGames/main
Fix build_track failure with Lavalink v4 decodetrack format
2024-03-13 10:16:31 -04:00
Zander M. 9a42093f64
Merge remote-tracking branch 'origin/main' 2024-03-11 13:50:22 -04:00
Zander M. 347a6e0b96
Refactor sourceName to use track_info object. 2024-03-11 13:50:07 -04:00
pre-commit-ci[bot] 83d5add134 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-03-11 17:29:47 +00:00
Zander M. bb12e33584
Python Black Format 2024-03-11 13:24:54 -04:00
Zander M. 6817cd8e07
Fix build_track failure with Lavalink v4 decodetrack format. 2024-03-11 13:23:42 -04:00
Clxud 179472bd6e
Merge pull request #63 from NiceAesth/fix-assert
fix: remove unnecessary assert
2024-02-22 11:00:05 -05:00
NiceAesth ba761743b9 fix: remove unnecessary assert
Hit this in production (https://sunnycord.sentry.io/share/issue/e39efaaa16d64b4fbf4e3ec409406971/)
The assert is unnecessary since track is typed as optional either way.
2024-02-19 20:43:58 +02:00
cloudwithax b3795102b8 2.9.0 2024-02-06 17:32:17 -05:00
cloudwithax 2a492c793f fix issues related to loading files/http links, added spotify recommendation querying, changed loglevel enum behavior 2024-02-06 17:31:51 -05:00
cloudwithax 705ac9feab 2.8.1 2024-02-01 22:03:52 -05:00
cloudwithax a926616028 actually make logging optional lol 2024-02-01 22:03:30 -05:00
cloudwithax 4507b50b8b 2.8.0 2024-02-01 21:12:34 -05:00
cloudwithax bd78f47585 fix logging and made spotify + apple music optional because of v4 2024-02-01 21:11:42 -05:00
cloudwithax 9b18759864 update voice channel on state update + dont make logging enabled by default 2024-01-28 15:59:41 -05:00
Clxud 001b801a15
Merge pull request #57 from cloudwithax/pre-commit-ci-update-config
[pre-commit.ci] pre-commit autoupdate
2023-11-05 20:33:45 -05:00
pre-commit-ci[bot] db1c66dd40 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-10-30 17:50:55 +00:00
pre-commit-ci[bot] 341164a0d2
[pre-commit.ci] pre-commit autoupdate
updates:
- [github.com/pre-commit/pre-commit-hooks: v4.4.0 → v4.5.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.4.0...v4.5.0)
- [github.com/psf/black: 23.7.0 → 23.10.1](https://github.com/psf/black/compare/23.7.0...23.10.1)
- [github.com/asottile/blacken-docs: 1.15.0 → 1.16.0](https://github.com/asottile/blacken-docs/compare/1.15.0...1.16.0)
- [github.com/asottile/pyupgrade: v3.10.1 → v3.15.0](https://github.com/asottile/pyupgrade/compare/v3.10.1...v3.15.0)
- [github.com/asottile/reorder-python-imports: v3.10.0 → v3.12.0](https://github.com/asottile/reorder-python-imports/compare/v3.10.0...v3.12.0)
- [github.com/asottile/add-trailing-comma: v3.0.1 → v3.1.0](https://github.com/asottile/add-trailing-comma/compare/v3.0.1...v3.1.0)
- [github.com/hadialqattan/pycln: v2.2.2 → v2.3.0](https://github.com/hadialqattan/pycln/compare/v2.2.2...v2.3.0)
2023-10-30 17:50:45 +00:00
Clxud 7829086ae3
Merge pull request #59 from corpnewt/patch-1
Account for Lavalink v4 changes when loading YT playlists
2023-09-17 11:33:42 -04:00
pre-commit-ci[bot] f9cb48c48f [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2023-09-15 23:28:59 +00:00