aboutsummaryrefslogtreecommitdiff
path: root/pandora
Commit message (Collapse)AuthorAge
* 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.
* Should 'break' from while loop to avoid retries, not continue.jcass2016-01-12
|
* Throw InvalidUserLogin error when login failsMike Crute2016-01-09
| | | | fixes https://github.com/mcrute/pydora/issues/41
* Simplify exception handlingMike Crute2016-01-09
|
* Add return value back that went missing during merge.jcass2016-01-04
|
* Set checksum explicitly instead of manually adding to JSON results.jcass2016-01-03
|
* Change attribute type for non-JSON fields.jcass2016-01-03
|
* Add ad_token to AdItem definition.jcass2016-01-02
|
* Clarify ad registration error messages.jcass2015-12-29
|
* Remove unused import statement.jcass2015-12-29
|
* Fix pep8 violations.jcass2015-12-29
|
* Remove logger, align naming convention for test parameters.jcass2015-12-29
|
* Change base exception for retries back to 'Exception' handle pyOpenSSL ↵jcass2015-12-29
| | | | exceptions.
* Align with using Pandora's ParameterMissing exception for ValueErrors.jcass2015-12-28
|
* Handle IOErrors and ValueErrors when attempting to register ads.jcass2015-12-28
|
* Fix for python3Mike Crute2015-12-27
|
* Merge remote-tracking branch 'upstream/master' into enhance/ad_fieldsjcass2015-12-27
|\
| * Add is_quickmix field, remove defaults.jcass2015-12-21
| |
* | Move validation check to be performed before expensive network call.jcass2015-12-22
| |
* | Fix pep8 formatting violation.jcass2015-12-21
| |
* | Process ad tokens in-place instead of making a copy of the list.jcass2015-12-21
| |
* | Fix pep8 indentation error.jcass2015-12-21
| |
* | Additional error checking and test cases for retrieving ad metadata.jcass2015-12-21
| |
* | Add suppot for more advertisement fields.jcass2015-12-21
|/
* Fix 'stationId' field name.jcass2015-12-07
|