- Fix bug with response body getting corrupted
- Improve download speeds even more by reducing memory copies
- Fix wrong mime type being reported in response blob
- Improve download speeds by increasing libcurl's internal buffer size and listening directly for websocket messages
- Enable a per host connection limit. This defaults to 6, which is the same as most web browsers.
- Use the latest WolfSSL again and compile with workarounds
- Upgrade to curl 8.10.1
- Fix a bug with
Headers
objects andRequest
objects not being properly handled when passed intolibcurl.fetch
- Errors thrown are now
Error
orTypeError
objects instead of plain strings
- WolfSSL has been downgraded to v5.6.6 due to an upstream regression
- All dependencies have been updated to the latest versions
libcurl.load_wasm
now returns a promise that resolves when the WASM has finished loading- Unused protocol support has been disabled in the curl binary, resulting in 100kb binary size savings
- A minor bug where the hostname for TCP connections would be wrong in certain cases has been fixed.
- The APIs from wisp-client-js are now exposed at
libcurl.wisp
- Add support for SOCKS5, SOCKS4, and HTTP proxies
- Fix a problem where the websocket URL wouldn't be set properly in some cases
- Fix a possible double free when requests get aborted
- Handle
ReadableStream
objects as the request payload - Support the Clang AddressSanitizer
- Add support for relative URLs in HTTP sessions
- Better error handling for invalid URLs
- Fix handling of
Request
objects when passed intolibcurl.fetch
- Fix random segfaults due to an improper invocation of libcurl
- Update Wisp client and server
- Compile WolfSSL with greater site support
- Fix handling of request bodies
- Fix an error during websocket cleanup
- Fix NPM package exports
- Refactor JS and C code
- Allow for multiple sessions with separate connection pools
- Switch to wolfSSL instead of OpenSSL for significantly smaller binaries
- Add support for sending cookies automatically
- Add NPM export for bundled version
- Update Wisp client and server, which improves error handling
- Expose the wisp-client-js version in the API
- Fix a bug with error handling
- Added support for aborting requests
- Added support for streaming HTTP responses via a readable stream
- Improve compatibility for older browsers
- Support for all types of fetch request bodies
- Expose a function to get error strings
- Fix handling of duplicate HTTP headers
- Add TLS socket support
- Add function to get the CA cert bundle
- Re-add wsproxy support
- Add custom network transport support
- Split WebSocket API into simple
libcurl.CurlWebSocket
andlibcurl.WebSocket
polyfill - Refactor WebSocket API code
- Fix running libcurl.js inside a web worker
- Update Wisp client and server
- Expose Wisp client API functions
- Pin C library versions to stable
- Load the CA certs directly from memory instead of from the Emscripten virtual filesystem
- Fix ES6 module syntax
- Limit max TCP connections to 50
- Fix a memory leak with WebSockets
- Fix handling of 204 and 205 response codes
- Add verbose option to WebSocket API
- Fix conversion of request payloads
- Add a copyright notice to the JS bundle
- Add API to get the libcurl.js version and C library versions
- Add checks to ensure that the Websocket proxy URL has been set
- Add an option to redirect the verbose curl output.
- Use separate callbacks for stdout and stderr.
- Fix bundling the WASM into a single file
- Add unit tests
- Don't set a default websocket proxy URL
- Initial release on NPM
- Add Github Actions for automatic builds
- Add WebSocket support
- Add Fetch API support