Releases: inrupt/solid-client-js
v2.1.2
v2.1.1
Internal change
- This change has no impact on shipped code. A feature flag has been added to Problem Details end-to-end tests.
Patch changes
- Some dependency updates
Full Changelog: v2.1.0...v2.1.1
v2.1.0
New Features
- Node 22 is now supported
FetchError
now implementsWithProblemDetails
: it has a.problemDetails
getter providing
additional information about the HTTP error response, either provided by the server if it
supports RFC9457, or falling back to defaults.
Patch changes
-
Fixed #2339: Unnamed policies are now returned by
getResourcePolicyAll
if an optional argument
{ acceptBlankNodes: true }
is specified. This additional argument makes this a non-breaking change,
as the current type signature isn't changed. -
getThing
now supports Blank Node identifiers in addition to IRIs and skolems to refer to a subject. -
getThingAll(dataset, { allowacceptBlankNodes: true })
now returns all Blank Nodes
subjects in the Dataset, in particular including those part of a single chain of
predicates. For instance, given the following dataset:@prefix ex: <https://example.org/> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . ex:camille foaf:knows [ foaf:name "Dominique"@en ; ] . ;
getThingAll(dataset, { allowacceptBlankNodes: true })
would have previously returned
a single element for the Named Node (ex:camille
), it will now also include a second
element for the Blank Node. Blank Node identifiers are by definition unstable and shouldn't
be relied upon beyond local resolution.
New Contributors
- @acoburn made their first contribution in #2455
- @jholleran made their first contribution in #2468
Full Changelog: v2.0.1...v2.1.0
v2.0.1
Patch changes
- Normalize input URLs for
getSolidDataset
,getFile
,saveSolidDatasetAt
,overwriteFile
,createContainerAt
,deleteSolidDataset
,deleteFile
,deleteContainer
,saveSolidDatasetInContainer
,createContainerInContainer
,saveFileInContainer
,getResourceInfo
: Input URLs are now normalized by collapsing slash sequences (foo///bar
becomesfoo/bar
), and resolving relative URL segments (foo/bar/..
becomesfoo/
).
v2.0.0
Breaking Changes
- Use the global
fetch
function instead of@inrupt/universal-fetch
. This means this library now only works
with Node 18 and higher. - Due to changes in the rollup config the
umd
output is now found atdist/index.umd.js
rather thanumd/index.js
. - Drop support for
Buffer
s as input tosaveFileInContainer
andoverwriteFile
. Use the file name of inputs tosaveFileInContainer
as theSlug
name recommendation if no slug is explicitly provided. - Have
getJsonLdParser
returnvoid
rather than a Promise so that it now aligns with
theParser
type definition. - Remove deprecated ACP APIs; including all APIs for ESS 1.1.
v1.30.2
v1.30.1
Patch
- Add a non-regression test for containment relationship validation. The behavior
of the library was already correct in a specific edge case, but that was not
covered by any test. Thanks to Otto-AA for noticing
the gap and implementing the missing test. - Build system (bundler and TypeScript) updates. This should be transparent to dependants.
v1.30.0
v1.30.0
New features
validateContainedResourcesAll
: In addition to the change togetContainedResourcesAll
described in the Bugfix section, a new function is added to the API to help detecting
incorrect containment claims.
Bugfixes
getProfileAll
now also followsrdfs:seeAlso
when discovering extended profiles.- When listing contained resources with
getContainedResourcesAll
, resources that
are not direct child resources of the target container from a URL path semantics
perspective are no longer returned. This meanshttps://pod.example.org/foo/bar/moo
cannot be considered a child resource ofhttps://pod.example.org/foo/
, regardless
of theldp:contains
statements in the container. Resources from a different
origin are also be excluded by this change.