All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
2.0.0 (2022-12-14)
- url-parsing:
endpoint
has been replaced forpathname
andurlMount
is now deprecated
- environment: url component defaults are now evaluated on the environment directly (9cb3bfe)
- error classes are now available via named exports (f3582df)
- errors: improved error handling including support for accurate stack tracing (7745224)
- url-parsing: an improved and more efficient URL parser (ce6cd5e)
- utils:
isNumber
helper and addedstrict
mode tomerge
(c0b6bf8)
- errors: internal error spawns caused an uncaught exception if the error was not instance of (26b5ca7)
- headers: headers incorrectly merging with existing headers (bae1e95)
- parsing configuration caused mutation issues (9003b5e)
- throwing an error inside
resolveStatus
caused an uncaught error (a2f59a1) - url-parser: parsing a url incorrectly set the
searchParams
property (0380507) - url-parser: pathnames assigning an unneeded forward slash to components without hostnames (ec8acd7)
- url-parser: using
set
was not correctly updating thesearchParams
(2dc734a)
1.2.0 (2022-11-29)
- browser: browser requests are now supported (3315a22)
- core: urbex now supports
XHR
requests for browser environments (77f0913) - errors: refactored error classes for better error handling (cfe80d5)
- headers: added
parse
operation to convert strings into an object (cac69de) - support to reset the configuration to defaults (41a48b6)
- urbex: added
resolveStatus
property to alter request destinations (9a3d2b2)
- cloning objects was causing mutation issues to global constants (40cdf0e)
- headers: using
has()
to check if a key exists does not parse the header key correctly (b31f114) - internal cache not stopping when re-configuring the client or when calling
reset()
(80cc927) - transformers: parsing strings using
JSON.parse
threw unnecessary errors (5774d5b) - transformers: xhr requests incorrectly parsing JSON response types (c75376b)
- uri parsing incorrectly extracting protocols (0e6eea8)
1.1.0 (2022-11-21)
- internal request api now integrates with the
CacheClock
module (57de0d8) - pipelines: support for buildable pipline executors (99adf7f)
- request-config: improved config parser for an increased result output (a9fb982)
- support for
responseType
andresponseEncoding
options (e7ce7ae) - types: extended
UrbexResponse
with additional properties (19c23b0) - types: improved typescript converage (78ce34c)
- types: only necessary types are exported (9d2c67a)
- headers: incorrectly assigning default headers when using in a browser (ca56b68)
- incorrectly checking if
endpoint
andurlMount
start with a/
(761757d) - uri parsing handling partial urls incorrectly (a2ba671)
- uriParser: failing to correctly update the
url.href
#4 (93228ce)
- cache: capture and control ttl's on cachable items (7fe55ef)
- cache: find a suitable time provider based on env context (80a758e)
- cache: generate consistent cache keys based on input (f05714a)
- cache: new ttl-cache to store items with a ttl (889ac1c)
- cache: stringify incoming data when adding to cache (6ab6fba)
- config: support for uri validation, parsing and config setting (ef0c4b9)
- core: the client now supports alias method calls (fd7dce4)
- environment: configure and parse a
.env
file if found (4b1fc0b) - environment: detect the current working environment of a project (d074a10)
- headers: added default
User-Agent
headers to Node environments (16d70bd) - headers: added method to normalize incoming header config (ad2444a)
- headers: support static creation of a headers instance (0628313)
- http: perform basic http requests in node environments (37d9da2)
- serializeParams: now supports optional return types (a1b9099)
- types: global project types (46da3bc)
- urbex: added core urbex class for creating http clients (ac5216e)
- urbex: added default export to the extended urbex client (40288e0)
- urbex: added headers class to parse and manipulate config headers (33ccf2a)
- utils: added deepMerge and forEach utility functions (9809d75)
- utils: effectively determine a values type (3721d06)
- utils: extra utility methods (a9eeff8)
- utils: local method to extract match at given index (77218a1)
window
andprocess
objects throwing errors when passed as an argument (23e088e)- component -> string returns incorrect values when an non-object is passed (8b2b198)
- defining a new environment instance caused it to be undefined (d00423a)
- disable force merge when clearing header values (93b029b)
- env: throw a contextful error when attempting to use in browser (92574be)
- incorrect import paths (320a6d7)
- incorrect internal types for method alias generation (224d8c5)
- incorrect method call (47b2b33)
- params not serializing correctly #6 (a5cf0c2)
- support for null type (efe5d44)
- typescript complaining about unassignable types #3 (e3b88ac)
- typescript: iterable maps only available in ES2015 or higher #2 (b31b833)
- unable to pass an optional config when isolating the client (52b239f)
- unit tests can now be run in both Node and Browser environments (6075715)
- uriparser: empty values were being handled incorrectly (e42e593)
- url port returning null instead of an empty string (c046b23)