sling-connector issueshttps://gitlab.entropy.cc/entropy/sling-connector/-/issues2021-03-01T11:28:48Zhttps://gitlab.entropy.cc/entropy/sling-connector/-/issues/13Add axios-retry library2021-03-01T11:28:48ZCaleb WeeksAdd axios-retry libraryImplement the axios-retry library. https://github.com/softonic/axios-retry
This will simplify implementation in envs where socket connections are unreliable.Implement the axios-retry library. https://github.com/softonic/axios-retry
This will simplify implementation in envs where socket connections are unreliable.https://gitlab.entropy.cc/entropy/sling-connector/-/issues/15Remove redundant JSON.parse / JSON.stringify call2021-01-25T14:12:58ZCaleb WeeksRemove redundant JSON.parse / JSON.stringify callWhen the HTTP calls were switched to Axios vs request, a number of redundant JSON.parse / JSON.stringify calls were introduced. Mostly likely because Axios is pre-parsing the JSON whereas that needed to be explicitly done before. The is ...When the HTTP calls were switched to Axios vs request, a number of redundant JSON.parse / JSON.stringify calls were introduced. Mostly likely because Axios is pre-parsing the JSON whereas that needed to be explicitly done before. The is most apparent in the `.post` and `.slingql` functions, because of how the responses are normalized, but there are improvements that could be made in the `get` calls as well, primarily if the `dontParse` options is provided. That will require tapping into the `transformResponse` option for the Axios instance. A POC of a number of these improvements was put together here: https://git.workbench.fourseasons.com/developers/fs-secure/legacy/-/merge_requests/156/diffs#note_49763 .https://gitlab.entropy.cc/entropy/sling-connector/-/issues/16Discussion: Move to Promise first implementation2021-01-25T14:30:32ZCaleb WeeksDiscussion: Move to Promise first implementationThis is a space to discuss options for switching to a Promise-first approach for the SlingConnector. The drive for this is to reduce the complexity of the current SlingConnector code and make the calls more efficient overall. Suggestions...This is a space to discuss options for switching to a Promise-first approach for the SlingConnector. The drive for this is to reduce the complexity of the current SlingConnector code and make the calls more efficient overall. Suggestions made so far:
1. Remove callback version entirely and bump to a new major version
1. This makes for the cleanest implementation of Promises, but will take a long time for full adoption. BL core could be updated without _too_ much hassle, but non-core consumers would take a long time meaning we'd need to two version of the sling-connector available, which I don't love. I think this is only viable if we commit to updating **everything** to use the new version
2. Keep the callbacks as an option, but switch to doing Promises first, calling callbacks only if they're provided.
1. This was something I actually considered when we first added Promise support (https://stackoverflow.com/questions/57686203/function-needs-to-support-promises-and-callbacks), but I opted not to do it because I couldn't find anyone approaching callbacks / Promised that way. I still don't see any obvious downsides with it.
3. Move the promise version to a nested area in the import. Something like `require('sling-connector/promise')`.
1. I don't love this option since we still have the complexity of reusing code between the two approaches. It just forces the developer to pay more attention to the import. It would also break anywhere that's using the current Promise version.
4. We could go with something similar to the `aws-sdk`, where the Promise version must be explicitly requested with the `.promise()` call. Similar to the item above this, I don't love it because any existing Promise implementations would break. Might have been a good option from the start, but difficult to switch to now.Caleb WeeksCaleb Weekshttps://gitlab.entropy.cc/entropy/sling-connector/-/issues/18Update typescript definitions2022-01-04T15:23:26ZCory BryantUpdate typescript definitions- [ ] Fix definitions that have optional params before required params.
- [ ] Expand definition for return objects instead of a generic `object`.- [ ] Fix definitions that have optional params before required params.
- [ ] Expand definition for return objects instead of a generic `object`.https://gitlab.entropy.cc/entropy/sling-connector/-/issues/19Dependency Dashboard2023-07-07T12:11:46Zrenovate-botDependency DashboardThis issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Open
These updates have all been created already. Click a checkbo...This issue lists Renovate updates and detected dependencies. Read the [Dependency Dashboard](https://docs.renovatebot.com/key-concepts/dashboard/) docs to learn more.
## Open
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
- [ ] <!-- rebase-branch=renovate/axios-0.x -->[Update dependency axios to ^0.27.0](!33)
- [ ] <!-- rebase-branch=renovate/axios-1.x -->[Update dependency axios to v1](!35)
- [ ] <!-- rebase-branch=renovate/debug-4.x -->[Update dependency debug to v4](!36)
- [ ] <!-- rebase-branch=renovate/form-data-4.x -->[Update dependency form-data to v4](!37)
- [ ] <!-- rebase-branch=renovate/husky-8.x -->[Update dependency husky to v8](!38)
- [ ] <!-- rebase-branch=renovate/mkdirp-3.x -->[Update dependency mkdirp to v3](!39)
- [ ] <!-- rebase-branch=renovate/node-18.x -->[Update dependency node to v18](!34)
- [ ] <!-- rebase-branch=renovate/major-jest-monorepo -->[Update jest monorepo to v29 (major)](!40) (`@types/jest`, `jest`)
- [ ] <!-- rebase-all-open-prs -->**Click on this checkbox to rebase all open MRs at once**
## Detected dependencies
<details><summary>gitlabci-include</summary>
<blockquote>
<details><summary>.gitlab-ci.yml</summary>
</details>
</blockquote>
</details>
<details><summary>npm</summary>
<blockquote>
<details><summary>package.json</summary>
- `agentkeepalive ^4.0.2`
- `axios ^0.19.2`
- `debug ^3.1.0`
- `form-data ^3.0.0`
- `lodash ^4.17.10`
- `mkdirp ^0.5.1`
- `querystring ^0.2.0`
- `@types/jest ^24.0.15`
- `husky ^0.14.3`
- `jest ^24.8`
</details>
</blockquote>
</details>
<details><summary>nvm</summary>
<blockquote>
<details><summary>.nvmrc</summary>
- `node 10`
</details>
</blockquote>
</details>