Comparing version 3.4.0 to 3.5.0
# CHANGELOG | ||
## 3.5.0 | ||
#### New Functionality | ||
- Can now use BM25 scoring method for searches. (MarkLogic Server version 12.0.0-EA or higher needed). | ||
- Can now use vector functionality including Cosine Similarity and others. (MarkLogic Server version 12.0.0-EA or higher needed). | ||
#### Bug Fix | ||
- Fix for security vulnerabilities - https://nvd.nist.gov/vuln/detail/CVE-2024-4068 and https://github.com/advisories/GHSA-7fh5-64p2-3v2j | ||
- [#669](https://github.com/marklogic/node-client-api/issues/669) - DatabaseClient.eval() always return true when the result is a boolean | ||
## 3.4.0 | ||
@@ -3,0 +14,0 @@ #### New Functionality |
@@ -73,2 +73,5 @@ /* | ||
} else if (arg instanceof types.ServerType) { | ||
if(arg._ns === 'vec'){ | ||
return arg._args; | ||
} | ||
throw new Error( | ||
@@ -126,7 +129,7 @@ `${argLabel(funcName, paramName, argPos)} must have type ${typeLabel(paramTypes)}` | ||
case 'scoreMethod': | ||
if (['logtfidf', 'logtf', 'simple', 'score-logtfidf', 'score-logtf', 'score-simple'].includes(value)) { | ||
if (['logtfidf', 'logtf', 'simple', 'bm25'].includes(value)) { | ||
return true; | ||
} | ||
throw new Error( | ||
`${argLabel(funcName, paramName, argPos)} can only be logtfidf, logtf, or simple` | ||
`${argLabel(funcName, paramName, argPos)} can only be 'logtfidf', 'logtf', 'simple' or 'bm25'` | ||
); | ||
@@ -140,2 +143,9 @@ case 'qualityWeight': | ||
); | ||
case 'bm25LengthWeight': | ||
if (typeof value === 'number' || value instanceof Number) { | ||
return true; | ||
} | ||
throw new Error( | ||
`bm25LengthWeight must be a number` | ||
); | ||
default: | ||
@@ -142,0 +152,0 @@ return false; |
@@ -76,6 +76,7 @@ /* | ||
case 'boolean': | ||
const booleanValue = (typeof data.content === 'string')?(data.content.toLowerCase() === 'true'):data.content; | ||
return { | ||
format: 'text', | ||
datatype: primitive, | ||
value: Boolean(data.content) | ||
value: Boolean(booleanValue) | ||
}; | ||
@@ -82,0 +83,0 @@ case 'dateTime': |
@@ -27,2 +27,9 @@ /* | ||
} | ||
class VecVector extends ServerType { | ||
constructor(ns, fn, args) { | ||
super(ns, fn, args); | ||
} | ||
} | ||
class Item extends ServerType { | ||
@@ -752,2 +759,3 @@ | ||
TextNode: TextNode, | ||
VecVector: VecVector, | ||
XmlContentNode: XmlContentNode, | ||
@@ -754,0 +762,0 @@ XmlRootNode: XmlRootNode, |
@@ -6,3 +6,3 @@ { | ||
"homepage": "https://github.com/marklogic/node-client-api", | ||
"version": "3.4.0", | ||
"version": "3.5.0", | ||
"license": "Apache-2.0", | ||
@@ -12,6 +12,7 @@ "main": "./lib/marklogic.js", | ||
"doc": "gulp doc", | ||
"preinstall": "node checkNodeVersion", | ||
"prestart": "node checkNodeVersion", | ||
"test:setup": "node etc/test-setup.js", | ||
"test:teardown": "node etc/test-teardown.js", | ||
"test": "gulp test", | ||
"preinstall": "(npm install --package-lock-only --ignore-scripts) && npx npm-force-resolutions" | ||
"test": "gulp test" | ||
}, | ||
@@ -58,3 +59,3 @@ "keywords": [ | ||
"bunyan": "^1.8.15", | ||
"chai": "^4.3.10", | ||
"chai": "^4.4.1", | ||
"core-util-is": "^1.0.3", | ||
@@ -80,14 +81,12 @@ "gulp": "^5.0.0", | ||
}, | ||
"resolutions": { | ||
"overrides": { | ||
"braces": "3.0.3", | ||
"jsdoc": "4.0.0", | ||
"sanitize-html": "^2.13.0", | ||
"minimatch": "5.1.0", | ||
"nanoid": "3.1.31", | ||
"glob-parent": "6.0.2", | ||
"nanoid": "3.1.31", | ||
"simple-get": "4.0.1", | ||
"minimatch": "5.1.0", | ||
"sanitize-html": "2.13.0", | ||
"semver": "7.5.3" | ||
}, | ||
"overrides": { | ||
"jsdoc": "4.0.0", | ||
"sanitize-html": "^2.13.0" | ||
} | ||
} |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Install scripts
Supply chain riskInstall scripts are run when the package is installed. The majority of malware in npm is hidden in install scripts.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Install scripts
Supply chain riskInstall scripts are run when the package is installed. The majority of malware in npm is hidden in install scripts.
Found 1 instance in 1 package
1653204
48
30324