aboutsummaryrefslogtreecommitdiff
path: root/pandora
Commit message (Collapse)AuthorAge
* Release 2.1.1release-2.1.1Mike Crute2021-09-02
|
* New version of black moved the cheese :-(Mike Crute2020-12-19
|
* Release 2.1.0release-2.1.0Mike Crute2020-12-19
|
* Use correct token when creating stationsMike Crute2020-12-19
| | | | | | | | | Track tokens should only be used when creating stations from tracks not from search results. Also return the created station from the search models when a station is created. Fixes #63 Closes #64
* Convert build system to toxMike Crute2020-06-09
| | | | This is the current modern way to build, package, and test python code.
* Use black for formattingMike Crute2020-06-08
| | | | | | I don't particularly like the black formatter (does anybody, really?) but it's guaranteed to be consistent so it should prevent nitpicking style.
* Remove 'no cover' pragmasMike Crute2019-04-07
|
* Remove python2 hackMike Crute2019-04-07
|
* Upgrade Python syntax with pyupgrade --py3-plusHugo2019-04-07
|
* Cleanup codacy errorsMike Crute2019-04-02
|
* Reorganize modelsMike Crute2019-04-02
|
* Migrate model bases to _baseMike Crute2019-04-02
|
* Empty top level __init__Mike Crute2019-04-02
|
* Remove deprecated constructorsMike Crute2019-04-02
|
* Drop C blowfish cryptorMike Crute2019-04-02
|
* Remove python 2 compatabilityMike Crute2019-04-02
|
* Enhancement: Adds additional audio urls (#58)Skybound12018-12-10
| | | | | | | * Adds support for additionalAudioUrl for station.getPlaylist * Fixes broken tests * Reworks use of iterables for additional audio urls and adds associated tests * Moves parsing additional url response into a syntethic field * Adds tests for additional urls field
* create_station returns a Station modelMike Crute2018-09-01
| | | | related: #57
* Update Station modelMike Crute2017-10-30
| | | | | | Stations contain feedback and seeds that can be manipulated later through the API. Construct these model classes when building a Station object.
* Extract date formatter logic to SyntheticFieldMike Crute2017-10-30
|
* Refactor SyntheticField interfaceMike Crute2017-10-30
| | | | | The SyntheticField already has an instance of itself when the formatter runs so no longer passes attributes from the value into the field.
* Refactor sub-model buildingMike Crute2017-10-30
| | | | | | | These used to be done with formatters but that was somewhat an abuse of the formatter model in the first place. This changeset adds a model attribute that will cause the underlying model builder to dynamically construct a model or list of models depending on the incoming data type.
* Move with_metaclass to py2compatMike Crute2017-10-30
| | | | | | This is an internal implementation detail that exists purely for python2 backwards compatibility. Put it with all the other python 2 compatibility stuff.
* Add documentationMike Crute2017-10-30
| | | | | The complex models don't make sense without a data sample and I always end up looking at the tests. Instead add some docs and a data sample.
* Make strip_padding python 2 compatibleMike Crute2017-10-07
|
* func_name not usable in python 3Mike Crute2017-10-07
|
* Refactor audio URL extractionMike Crute2017-10-07
| | | | | | | | | | This generalizes the audio URL extraction logic into a synthesized field that can be extracted from the PlaylistModel class. It also removes a few transmogrifiers that are no longer needed in the general case. Technically this breaks a publicly exposed API within playlists models but it was always considered an implementation detail so nobody should be relying on it.
* Remove dict_list_key checkMike Crute2017-10-07
| | | | | | This doesn't make any sense. If the dict list key isn't defined it falls through to the loop which would iterate the keys of a dict and not the dicts in a list which will likely fail anyhow.
* Add no-cover pragmasMike Crute2017-10-07
|
* Import directly from modulesMike Crute2017-10-07
| | | | | Importing from the base of a module is deprecated and will be removed in a future major version. Nothing internally should be doing this.
* Fix blowfish PEP8 errorMike Crute2017-10-01
|
* Prefer pure-python crypto if using Python 3Mike Crute2017-10-01
|
* Make crypto class pluggableMike Crute2017-10-01
|
* Add pure-python blowfish backendMike Crute2017-10-01
|
* Move compatible input to py2compat moduleMike Crute2017-09-30
|
* Fix python2.7 regressionMike Crute2017-09-30
|
* Remove PyCrypto and add CryptographyMike Crute2017-09-30
| | | | | | | | | | PyCrypto is no longer supported nor recommended. Cryptography is the replacement package which is actively maintained by the Python core committers. Also Cryptography is bundled as binary wheels for all the platforms we support which removes the install-tiem compiler requirement, making it easier to distribute Pydora. This commit replaces all usages of PyCrypto with Cryptography but is completely API compatible with the previous version.
* Split player backends, add VLC strategyMike Crute2017-06-12
| | | | | | | | | Extract core player logic and mpg123-bound logic into parent-child classes so that other player backend strategies can be added. Create a headless VLC strategy that uses VLC if it's available. Update the pydora player to prefer VLC if it's available on the system because it supports a much more broad set of codecs and Pandora is now preferring AAC formatted files.
* Support new-style audio URLsMike Crute2017-06-12
| | | | | | | | | | Pandora now returns two different responses to the API depending on which API key the client is using and the tuner endpoint. Instead of a quality map only a single audio URL is returned which is of AAC SBR format. This change accommodates that and returns the proper bitrate and format based on empirical testing. see: #52
* Add encoding field to trackMike Crute2017-06-12
| | | | | | | | | Previously Pandora only surfaced mp3 files in their responses which worked fairly universally. Recently they started surfacing AAC files which don't work in the pydora player as-is. Add the encoding to the sock model so that players can make a decision based on it. see: #52
* Remove py_release_tools, use flake8Mike Crute2017-05-25
|
* Cleanup pylint nitpicksMike Crute2016-06-11
|
* Add support for searching genre stations. (#45)John Cass2016-06-06
| | | Add support for searching genre stations.
* Remove extra re importMike Crute2016-05-31
|
* Use less strict pattern matching for search types.jcass2016-06-01
|
* Fix SearchResult model.jcass2016-06-01
|
* Fix SearchResult model.jcass2016-05-29
|
* Set retries for HTTP adapter and SysCallErrors to three.jcass2016-01-24
|
* Fix to ensure InvalidAuthToken exceptions result in re-authentication and retry.jcass2016-01-12
|
* Remove unreachable code. Test case for avoiding retries on PandoraException ↵jcass2016-01-12
| | | | being raised.