# Changelog

## v1.4.3 (04/02/2023)
- [Fix and improved bundled playlist update logging](https://github.com/Drapersniper/PyLav/commit/e84e47261c5a9daa4ea62757b812d6bc5a070802) - @Drapersniper

---

## v1.4.2 (04/02/2023)
- [Fix an issue when failures were raising when they should not](https://github.com/Drapersniper/PyLav/commit/d44a15fc07455d0e35eb79aac097d94af0ea8357) - @Drapersniper
- [pre-commit run on all files](https://github.com/Drapersniper/PyLav/commit/06779e908bbea5f3982d6bcb568f23cd5cfeee83) - @Drapersniper
- [ffs](https://github.com/Drapersniper/PyLav/commit/1309217a05f3a293a98176365b5f6f49b4dac5a9) - @Drapersniper
- [ffs](https://github.com/Drapersniper/PyLav/commit/a4c79e4347aeb569618b24d093d99d5782c793ec) - @Drapersniper
- [cleanup automerge](https://github.com/Drapersniper/PyLav/commit/cf76a17424b1e119a0ff6bfbfbf7aae4c8bb52ff) - @Drapersniper

---

## v1.4.1 (04/02/2023)
- [Make Release](https://github.com/Drapersniper/PyLav/commit/c568bd8cadceb3a37ede91d84c307361b353e46d) - @Drapersniper
- [Cleanup the now playing embed text](https://github.com/Drapersniper/PyLav/commit/b80a50de90281f3044f09b3ac37073823552f42b) - @Drapersniper
- [Disable logging for deepdiff and watchfiles modules](https://github.com/Drapersniper/PyLav/commit/9093a9f4468a0fc1a1720f83b1fdf2f93f697b9c) - @Drapersniper
- [Show help on the embed foot to assist users using the controller](https://github.com/Drapersniper/PyLav/commit/cbe06754838e63f17d904c31f082f5661815f760) - @Drapersniper
- [Disable the watchfile logger and deepdiff logger](https://github.com/Drapersniper/PyLav/commit/33adbf6986d103a30bbbf802932371f8ae88e990) - @Drapersniper
- [Add watchfiles dependency to more efficiently process PyLav Local files](https://github.com/Drapersniper/PyLav/commit/4b6bcd354ac3ccea3fc599a78e8f6ccfa4704e6b) - @Drapersniper
- [Add a way to hide the progress bar in the now playing embed](https://github.com/Drapersniper/PyLav/commit/dd1e1b455b386e0a202824762dce9604c0e74083) - @Drapersniper

---

## v1.4.0 (03/02/2023)
- [Release](https://github.com/Drapersniper/PyLav/commit/3752e113e931b0e2da1c7ce619d13ca17455419f) - @Drapersniper
- [fix TypeError: 'async_generator' object cannot be interpreted as an integer](https://github.com/Drapersniper/PyLav/commit/c902ede507aca495cadf4c731828029c4720f5f7) - @Drapersniper
- [fix TypeError: 'async for' requires an object with __aiter__ method, got list_iterator](https://github.com/Drapersniper/PyLav/commit/266979bd0e4e0847e64e31f5008070bdb5f98fdc) - @Drapersniper
- [fix circular import error](https://github.com/Drapersniper/PyLav/commit/2b16919b56fad47709df645c13f5e1cb68bbf7a6) - @Drapersniper
- [Translation friendly strings + a few fixes](https://github.com/Drapersniper/PyLav/commit/1e372611b47c814aa0fbf4c0cc17337b0c288c3c) - @Drapersniper
- [update .pre-commit-config.yaml](https://github.com/Drapersniper/PyLav/commit/a74878f32c86d40902349189e154492e40136b00) - @Drapersniper
- [fix RuntimeWarning: coroutine 'sort_key_nodes' was never awaited](https://github.com/Drapersniper/PyLav/commit/ef9401708aa9d3a3212446f84eadbd8afd8278aa) - @Drapersniper
- [Circular import fix](https://github.com/Drapersniper/PyLav/commit/e2ef9829d93b0baf3c09b14d3364a83f0e8d5975) - @Drapersniper
- [Translation friendly string, reduce usage of asyncstdlib and AsyncIter to improve response times](https://github.com/Drapersniper/PyLav/commit/2868e7bd6b2cf2f1c0f1fe098619036519f2e0eb) - @Drapersniper

---

## v1.3.9 (02/02/2023)
- [fix automerge.yml](https://github.com/Drapersniper/PyLav/commit/06b0c81e1e295b2b2587d9907cddd0938bc8f969) - @Drapersniper
- [automerge.yml update](https://github.com/Drapersniper/PyLav/commit/36b3a0549b692972537e9a408a5058a7b7793e6f) - @Drapersniper
- [Dependency update](https://github.com/Drapersniper/PyLav/commit/9c6cdd1600e3c354defa7568487bccfdf9d50c25) - @Drapersniper
- [update crowdin workflow to run whenever a python file changes](https://github.com/Drapersniper/PyLav/commit/73f0c40ae4595e395d3d98caf368c3858eca85dd) - @Drapersniper
- [fix automerge workflow](https://github.com/Drapersniper/PyLav/commit/e903a5c5df7e8d1d709f96d23669d40e660bff7a) - @Drapersniper
- [update crowdin action to stop pushing translations](https://github.com/Drapersniper/PyLav/commit/d73af846904dba44ba2bde65729463391cf880d8) - @Drapersniper
- [update crowdin action to stop pushing translations](https://github.com/Drapersniper/PyLav/commit/cf063c7a8fea6e0a130250c105c24b55a4352577) - @Drapersniper
- [Update application.example.yml](https://github.com/Drapersniper/PyLav/commit/18800d3b4e1dc1b65661fdbeb21b80fb9c3abc1e) - @Drapersniper
- [Translation-friendly strings; Just partial because I got lazy](https://github.com/Drapersniper/PyLav/commit/2e4eb99d45a91f6dcaa56ee33ecf75241bb1ab9a) - @Drapersniper
- [Delete bad translations](https://github.com/Drapersniper/PyLav/commit/0981e64b107d407ec3835e00eb52177de5e3276d) - @Drapersniper
- [Translation friendly strings](https://github.com/Drapersniper/PyLav/commit/fb9fd96b7c30098adaec79ef0e97e617fa2a34e8) - @Drapersniper
- [Update to the newest version of LavaSrc](https://github.com/Drapersniper/PyLav/commit/ad023b3d996a0a0650a0c927bf8676c3b4db5627) - @Drapersniper
- [Admin: labeller updates](https://github.com/Drapersniper/PyLav/commit/1d4e1b56acc6dd63fcc55303f900dec892f21800) - @Drapersniper
- [vale](https://github.com/Drapersniper/PyLav/commit/3d9b44d74642459b2d724d3347aeacc1bdaadcc8) - @Drapersniper
- [update .pre-commit-config.yaml](https://github.com/Drapersniper/PyLav/commit/a4f3a355da60b19e44bb3a8abbf5be9e6a8a39f5) - @Drapersniper
- [update docker-compose.yml with the new version of Lavasrc](https://github.com/Drapersniper/PyLav/commit/092f3b526c4b85a49c950adaf1a2c69a5c6a5ec2) - @Drapersniper
- [Update Playlist artwork attribute to artworkUrl](https://github.com/Drapersniper/PyLav/commit/91a50fcd6cf1faf02e40455de23695cfb74e9add) - @Drapersniper
- [Labeler and automerge updates](https://github.com/Drapersniper/PyLav/commit/6ac6ffbb70382072f38cc811153abf9bb249f34f) - @Drapersniper
- [chore(workflows): Update automerge workflow to run when a PR is created and on pull review](https://github.com/Drapersniper/PyLav/commit/0f44c78ff7077be111d7e97b7c9a712bb7c81159) - @Drapersniper
- [Clean up Auto merge action](https://github.com/Drapersniper/PyLav/commit/e3510c5e2d4d944abdd64ff2d790e1ccd1078b08) - @Drapersniper
- [Nuke Translations](https://github.com/Drapersniper/PyLav/commit/30c497906f600b3c48a08e2ccdae4a7b55ce0481) - @Drapersniper
- [Nuke Translations](https://github.com/Drapersniper/PyLav/commit/22c7f07b9ec1dcb72802c0a871d41a58b47aed69) - @Drapersniper
- [Fixes](https://github.com/Drapersniper/PyLav/commit/73c5f54b045da08ff8844c39a348bd6279a53fd4) - @Drapersniper
- [update pre-commit](https://github.com/Drapersniper/PyLav/commit/68a0957fb8ea3ac4b2cd288c79e9ca27d2961b1b) - @Drapersniper
- [Simplify Crowdin Action, Update user references to direct users to the PyLav merged project](https://github.com/Drapersniper/PyLav/commit/ed86c5f3136cd002236a0cf32475833e1c335c94) - @Drapersniper
- [Fix the crowdin action](https://github.com/Drapersniper/PyLav/commit/d564475110a402983e030d4ae23f94a2277f8fb6) - @Drapersniper
- [Fix the crowdin action](https://github.com/Drapersniper/PyLav/commit/a439f46d6e9281d5e2395c5cbe877ab8776c57e4) - @Drapersniper
- [Crowdin project merge](https://github.com/Drapersniper/PyLav/commit/0760ac815539f0276de750f6798a6296442b0f70) - @Drapersniper

---

## v1.3.8 (31/01/2023)
- [Formatting and logging added to 1.3.8 LL migration](https://github.com/Drapersniper/PyLav/commit/f52ef79382ebf6d9a0a86a01911649e7cfe621f9) - @Drapersniper
- [Fix ImportError: cannot import name 'ConfigController' from partially initialized module 'pylav.storage.controllers.config' (most likely due to a circular import) introduced with 3107feaa1c54220c79715320425466e8a24a2921](https://github.com/Drapersniper/PyLav/commit/dc3eaba76c69da09813a10c89c45ee2634978d09) - @Drapersniper
- [Update 1.3.8 migration to name the new column artworkUrl instead of artwork to mirror Lavalink's response](https://github.com/Drapersniper/PyLav/commit/f96c39ba72fcf38052b86f71616f28d4368521c6) - @Drapersniper
- [enable local queries to be searchable in the cache](https://github.com/Drapersniper/PyLav/commit/2203bbbb2f1a02758b808e3cc536e4b592ca3643) - @Drapersniper
- [Fix an invalid import due to 3107feaa1c54220c79715320425466e8a24a2921](https://github.com/Drapersniper/PyLav/commit/00620289b508bc320196f4e84f9b39f2aed6ec77) - @Drapersniper
- [Add 1.3.8 migrations](https://github.com/Drapersniper/PyLav/commit/e2debe4b8fef9bb5bccf9fc4e3b6a98a9ffe65e4) - @Drapersniper
- [Cleanup 1.0.0 low level migrations and split it up in prep for 1.3.7 migrations](https://github.com/Drapersniper/PyLav/commit/3107feaa1c54220c79715320425466e8a24a2921) - @Drapersniper
- [Fix an error if a Null player was passed to `Client.get_all_tracks_for_queries`](https://github.com/Drapersniper/PyLav/commit/ed96e0722bc8c1ca86f6c3d275905bef9e2df005) - @Drapersniper
- [Allow caching for the local source](https://github.com/Drapersniper/PyLav/commit/bf28fbc3727c0dbf3fca7ca3c78827e92c9a4f82) - @Drapersniper
- [Update pre-commit hooks](https://github.com/Drapersniper/PyLav/commit/5ff29441dcdcc8fb0a9d970c93ccf779c6082395) - @Drapersniper
- [Make Locks Object specific for locks affecting Players and Queues (Used to be a shared lock)](https://github.com/Drapersniper/PyLav/commit/6f30c712c54c21cd0f5d33878d7c1cda94716074) - @Drapersniper

---

## v1.3.7 (30/01/2023)
- [Cache RadioBrowser responses for http://all.api.radio-browser.info/json/servers as it is extremely rate-limited](https://github.com/Drapersniper/PyLav/commit/141838c5c48e66c542594d3eae606841d28db441) - @Drapersniper
- [Fix the start up failures caused by aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=iso-8859-1', url=URL('http://all.api.radio-browser.info/json/servers')](https://github.com/Drapersniper/PyLav/commit/7a69d0be2f8c38344620bd68d5ea2823465e7ecd) - @Drapersniper

---

## v1.3.6 (30/01/2023)
- [Speed up Queue rebuild + fix a crash that could happen due to partial tracks](https://github.com/Drapersniper/PyLav/commit/08fcdb4077d68e81ad524c701c3362b898b66533) - @Drapersniper
- [Localtrack tweaks](https://github.com/Drapersniper/PyLav/commit/a4dba731b9527077f8ea517f1e1985d550256af3) - @Drapersniper
- [Many Localtrack optmizations as well as other smaller tweaks](https://github.com/Drapersniper/PyLav/commit/3f547b36d354662a1d376e18074729410b1acb80) - @Drapersniper

---

## v1.3.5 (30/01/2023)
- [hotfix for d.py circular imports](https://github.com/Drapersniper/PyLav/commit/e7f89ec4739a88ce939bb476546e8cc18d15bec1) - @Drapersniper

---

## v1.3.4 (30/01/2023)
- [remove unnecessary async methods](https://github.com/Drapersniper/PyLav/commit/5a674424ac83783b5df9f2abaf8c61bf9f11b5f3) - @Drapersniper
- [KeyError fix for when new stations are added to RadioBrowser and cache is not up to date.](https://github.com/Drapersniper/PyLav/commit/f4e26a99eea375347d6d11abe1804b33846edcd5) - @Drapersniper

---

## v1.3.3 (29/01/2023)
- [Add caching to the Radio transformers, improve transformers performance](https://github.com/Drapersniper/PyLav/commit/15383ca5189ebdeeddcb85377f28eef956198abd) - @Drapersniper

---

## v1.3.2 (28/01/2023)
- [Fix incorrect boolean in Client.managed_node_is_enabled](https://github.com/Drapersniper/PyLav/commit/cda5e6cff92acbb1a531a651160a7a2547767ebd) - @Drapersniper
- [Disable Managed node if running inside a container](https://github.com/Drapersniper/PyLav/commit/e374c937a51591a5bfb552993041564cb71db668) - @Drapersniper

---

## v1.3.1 (28/01/2023)
- [Add a version bump as part of the release logic](https://github.com/Drapersniper/PyLav/commit/fde01a1fefc393e0263c0423a5f768485f037885) - @Drapersniper
- [Dependency update](https://github.com/Drapersniper/PyLav/commit/a51a5897baff810d29f9ccc1714e4c816d6d7420) - @Drapersniper
- [pre-commit updates](https://github.com/Drapersniper/PyLav/commit/57eaa6eac2a07e873b016c58eec8f1b8636f77ae) - @Drapersniper
- [Bump crowdin/github-action from 1.5.3 to 1.6.0 (#169)](https://github.com/Drapersniper/PyLav/commit/17265241a4fe7dea5b68ab1e9ef1f31a36a46c84) - @dependabot[bot]
- [formatting](https://github.com/Drapersniper/PyLav/commit/b61f421c212f42bf451be8623f55a9aacc36c0d4) - @Drapersniper
- [Update documentation](https://github.com/Drapersniper/PyLav/commit/e923f6944225f8fda72b9e636af66a57761395ed) - @Drapersniper

---

## v1.3.0 (23/01/2023)
- [enhancements to reduce duplicate work on track conversions](https://github.com/Drapersniper/PyLav/commit/03ea4608d6e582c0fdf68d61aa2a01ef36d78cd0) - @Drapersniper
- [Stricter type definitions aligned with Lavalink V4](https://github.com/Drapersniper/PyLav/commit/dc26c0d237480871894aa1651e0856bd98a2309f) - @Drapersniper
- [Fix a startup issue that could happen on an OS change](https://github.com/Drapersniper/PyLav/commit/7a9a1878ced6b3df44a297b09d19f82e0b6643ab) - @Drapersniper
- [pre-commit update](https://github.com/Drapersniper/PyLav/commit/96a8160d2c49bda82ce908d7460b2a9cec8f79ee) - @Drapersniper
- [fix docker-compose.yml envvar](https://github.com/Drapersniper/PyLav/commit/e2cab308f0b55b01349482827e101aff6a1084e3) - @Drapersniper
- [update docker-compose.yml with new red image](https://github.com/Drapersniper/PyLav/commit/a80e543a11e4df1b89d2a6c9cfe9b9778ad7337e) - @Drapersniper
- [Update Docker image to my fork of Phase](https://github.com/Drapersniper/PyLav/commit/f395f55d0020224f498b2e808bc6e6f114ad1e14) - @Drapersniper

---

## v1.2.7 (22/01/2023)
- [Fix incorrect assignement due to walrus](https://github.com/Drapersniper/PyLav/commit/44b55d8456743e3be0b6f6dbd050c20c67fb178d) - @Drapersniper

---

## v1.2.6 (22/01/2023)
- [fix incorrect assignment](https://github.com/Drapersniper/PyLav/commit/3529b64ddc7b0a5a6de70c25ac453215e9766107) - @Drapersniper
- [undo accidental deletion](https://github.com/Drapersniper/PyLav/commit/0c5e325a5f34aefbab08c8aa58aa3cb61c63b27c) - @Drapersniper
- [Introduce end-of-line normalization](https://github.com/Drapersniper/PyLav/commit/a8a08a6ea6c5522cbdc67db79303c894c81d63ab) - @Drapersniper
- [if PYLAV__DATA_FOLDER is defined, and PYLAV__YAML_CONFIG is not specified, create the pylav.yaml file inside PYLAV__DATA_FOLDER](https://github.com/Drapersniper/PyLav/commit/3b58dd42ce1a80a667f31f38e4120b319f83b982) - @Drapersniper
- [update docker compose to use githubs image repo](https://github.com/Drapersniper/PyLav/commit/dccecf9de9b7f72c2372d09657780fe576224b2b) - @Drapersniper
- [Override localtracks folder as part of migrations if the envvar is explicitly set](https://github.com/Drapersniper/PyLav/commit/896048c7a0989764b0aadcbb0269a7f4e4207c6b) - @Drapersniper

---

## v1.2.5 (22/01/2023)
- [fix incorrect URL import](https://github.com/Drapersniper/PyLav/commit/69893a4269e1d84c7af4b580416c3b20ff489e02) - @Drapersniper
- [Use `yarl` which is a dep of aiohttp](https://github.com/Drapersniper/PyLav/commit/bd5ce779c77fcdb2a7c14f0b21320561ff90ec2d) - @Drapersniper
- [Fix RadioBrowser resolution and simplify logic](https://github.com/Drapersniper/PyLav/commit/f382e7356af321cc7ab1bfe3d9b1051447f94709) - @Drapersniper
- [fix NameError: name '__load_origin' is not defined](https://github.com/Drapersniper/PyLav/commit/449aadc52b924822b3631262687ee6bc066b28cd) - @Drapersniper

---

## v1.2.4 (21/01/2023)
- [fix AttributeError: 'Red' object has no attribute 'dispatch_event'](https://github.com/Drapersniper/PyLav/commit/acb26eeda14573ede7649044ca6e08c83f221abf) - @Drapersniper
- [add home helper code to identify origins](https://github.com/Drapersniper/PyLav/commit/f73b2d724d1db0cd125e21667e0c8f8e0cddf661) - @Drapersniper
- [Bump dependencies](https://github.com/Drapersniper/PyLav/commit/18c6c7bd4568f20d5059a8b2178c9af0e29f674b) - @Drapersniper
- [fix incorrect doc strings](https://github.com/Drapersniper/PyLav/commit/95245e1e6191ea8ce5e7fe71b1fe6f14668f35f8) - @Drapersniper
- [Implement a compatibility module for the json module which uses fastest json module available for any given op](https://github.com/Drapersniper/PyLav/commit/9bf08eac497bc3c2a152c1e37ac5e49512400529) - @Drapersniper

---

## v1.2.3 (21/01/2023)
- [add `PlayerAutoDisconnectedEmptyQueueEvent`  `PlayerAutoDisconnectedAloneEvent` `PlayerAutoPausedEvent` and `PlayerAutoResumedEvent` events to the player](https://github.com/Drapersniper/PyLav/commit/26e48b07448cabf25584a55810d8b75b304d2afc) - @Drapersniper
- [add `PYLAV__YAML_CONFIG` and `PYLAV__LOCAL_TRACKS_FOLDER` env vars](https://github.com/Drapersniper/PyLav/commit/2458cc2461150835b197d73625ad894771a5789c) - @Drapersniper
- [explicitly set the hostname and container_name](https://github.com/Drapersniper/PyLav/commit/ecbbfb6db28e7b8e88a9a969b958904b6f1ece36) - @Drapersniper

---

## v1.2.2 (18/01/2023)
- [properly use PYLAV__EXTERNAL_UNMANAGED_NAME](https://github.com/Drapersniper/PyLav/commit/273b5046238d5ef1e178975967f5b433fe3a2cdf) - @Drapersniper

---

## v1.2.1 (18/01/2023)
- [Remove caching from radio browser api init](https://github.com/Drapersniper/PyLav/commit/a4e870d8236204ef8387ff5bc44f6390346d84ca) - @Drapersniper

---

## v1.2.0 (18/01/2023)
- [Enforce Env Var on config stored values (Run a migration on every start up)](https://github.com/Drapersniper/PyLav/commit/0295ddeacc89f8449e7d84cd0b208bedb85c51da) - @Drapersniper
- [Add PYLAV__EXTERNAL_UNMANAGED_NAME to allow setting a name to the EnvVar node and set ENV Vars to take precedence over the file values](https://github.com/Drapersniper/PyLav/commit/66643bb714fc67f6a0e4bc7cad4ecb34e02d624a) - @Drapersniper
- [update docker-compose.yml](https://github.com/Drapersniper/PyLav/commit/650e7308758858c8139eb8ef0ffbb96a41e881d8) - @Drapersniper

---

## v1.1.19 (18/01/2023)
- [Make Release](https://github.com/Drapersniper/PyLav/commit/9b2a1a1286636201ec5a3716d51768459afb3f4f) - @Drapersniper

---

## v1.1.18 (18/01/2023)
- [hotfix migration](https://github.com/Drapersniper/PyLav/commit/f80281b26fd21eefb9faccae984c49e137e46f4d) - @Drapersniper

---

## v1.1.17 (18/01/2023)
- [pre-commit update](https://github.com/Drapersniper/PyLav/commit/e8b5120f3fbedb51aab021ef7037e59b6478bb16) - @Drapersniper
- [Tweak LavaScr Providers to align with Topi's suggestion](https://github.com/Drapersniper/PyLav/commit/23247baad9b55badb12c5b68fe8d63d913f8d74e) - @Drapersniper

---

## v1.1.7 (15/01/2023)
- [Tweaks to special handling logic for node penalty](https://github.com/Drapersniper/PyLav/commit/1c27a95e7899a6102edfd3b0b64dc6e0176f1d25) - @Drapersniper
- [fix incorrect reference to pylav.docker.yaml](https://github.com/Drapersniper/PyLav/commit/fdbe1ec61e4005360ae2152738ec96bf238f422e) - @Drapersniper

---

## v1.1.6 (14/01/2023)
- [Add a special penalty handling for nodes to change the weighting](https://github.com/Drapersniper/PyLav/commit/44153b74658aca19d5c3d829977e00482dae8b52) - @Drapersniper
- [Update docker-compose.yml with the new lavasrc commit](https://github.com/Drapersniper/PyLav/commit/f6fda52bb1817a890e23266f160b2c2f74a253d3) - @Drapersniper
- [Disable the london node - as that has been sunset-ed for the time being](https://github.com/Drapersniper/PyLav/commit/867fc28cb15e0f3e8ce813663344bc86723c4d0b) - @Drapersniper
- [Add new Lavasrc configuration values for playlist and album limits (Applemusic built-in limit = 9K songs and Spotify = 11K songs)](https://github.com/Drapersniper/PyLav/commit/0de5c235336b61002b4af14bd455d32304ea9d2c) - @Drapersniper

---

## v1.1.5 (12/01/2023)
- [More optimizations](https://github.com/Drapersniper/PyLav/commit/240686c7c45c4fcd6d384ca8e334689f0504bd28) - @Drapersniper
- [optmization fixes](https://github.com/Drapersniper/PyLav/commit/df6aaf99105817218b3898c53efe621678f1aa75) - @Drapersniper
- [bulk process track where possible](https://github.com/Drapersniper/PyLav/commit/31e8df416507f29e8b1995191570566da4c62eb3) - @Drapersniper
- [Increase the node session timeouts](https://github.com/Drapersniper/PyLav/commit/cf0b3c9f0e762aadc2374060625f4f49e4bf9f8c) - @Drapersniper
- [pre-commit hook version update](https://github.com/Drapersniper/PyLav/commit/445817f0ff0a1e6db035dd29a2a3e5bad70d89d1) - @Drapersniper
- [increase session timeout for node](https://github.com/Drapersniper/PyLav/commit/3c9cbfe39278ec71ba4b655b2a86ea713810dbf2) - @Drapersniper

---

## v1.1.4 (09/01/2023)
- [Further start up enhancements](https://github.com/Drapersniper/PyLav/commit/1b89d276b8e3bceb9430cb0c36ad2f842391226f) - @Drapersniper

---

## v1.1.3 (09/01/2023)
- [Better track caching and references (Better performance)](https://github.com/Drapersniper/PyLav/commit/9eedaa9d17431e275431ea414a92a04c9ce58323) - @Drapersniper
- [Fix the base64 decoder](https://github.com/Drapersniper/PyLav/commit/b550a3d20b3f5cd01956da62e31c6143b0c5b5b4) - @Drapersniper
- [Used cached session for decode endpoints](https://github.com/Drapersniper/PyLav/commit/4197ad78cfa0210c6fc20f352b32ff91d642609a) - @Drapersniper
- [Fix incorrect cog name reference](https://github.com/Drapersniper/PyLav/commit/6b364195f70e664d4976813901aa5e462068b0d8) - @Drapersniper
- [fix AttributeError: 'NoneType' object has no attribute 'source'](https://github.com/Drapersniper/PyLav/commit/9fec736961094fcfd54afde511b6dcfe7a747df3) - @Drapersniper
- [precommit update](https://github.com/Drapersniper/PyLav/commit/839b097a2d8bd4817006e86ba0a3c94cb38038e4) - @Drapersniper
- [Update setup.md](https://github.com/Drapersniper/PyLav/commit/a6a576f57b598817c00d8ed4b5774db13e011bee) - @Drapersniper
