@sap/xsodata
Advanced tools
Comparing version 4.6.0 to 5.0.0
@@ -11,2 +11,25 @@ # Change Log | ||
## [5.0.0] - 2019-12-17 | ||
### Info | ||
* Removed lock when opening a db connection | ||
The new native hana-client driver used by xsjs is thread save, so the lock for retrieving a new db connection is not required anymore. | ||
**IMPORTANT** If a custom open function is used, then this function must be reentrant or implement an own lock inside. | ||
### Fixed | ||
* When using $count to determine the number of records of an entity set in junction with the limit feature, the | ||
returned number was also capped by the limit, this was wrong. Now the correct full number of records is returned. | ||
* Fixed typeError if a stored procedure used as custom exit does not return a proper error structure. | ||
## [4.7.0] - 2019-10-28 | ||
### Fixed | ||
Fixed error causing duplicate properties and property references in the metadata document. Prerequisites: | ||
* The error occurs if an calculation view has been used as source for an entityset | ||
* This calculation view contains an input parameter which is used in more than one measures | ||
* Example: Input parameter "Input_Currency" (a calcview variable) is used in the currency conversion for the measures "VALUE" and "TAX" | ||
## [4.6.0] - 2019-10-11 | ||
@@ -13,0 +36,0 @@ |
@@ -17,5 +17,2 @@ 'use strict'; | ||
const RwLock = require('rwlock'); | ||
const locks = new RwLock(); | ||
const InternalError = require('./../utils/errors/internalError'); | ||
@@ -249,13 +246,10 @@ const ApplicationError = require('./../utils/errors/applicationError'); | ||
locks.writeLock('db_open', function (release) { | ||
return _connectInternal(context, function (err) { | ||
if (err) { | ||
context.logger.debug('db', 'connect error ' + JSON.stringify(err)); | ||
} | ||
context.logger.debug('db', 'connection is usable'); | ||
context.db.connectionInitialized = true; | ||
release(); | ||
return asyncDone(err, context); | ||
}); | ||
return _connectInternal(context, function (err) { | ||
if (err) { | ||
context.logger.debug('db', 'connect error ' + JSON.stringify(err)); | ||
} | ||
context.logger.debug('db', 'connection is usable'); | ||
context.db.connectionInitialized = true; | ||
return asyncDone(err, context); | ||
}); | ||
@@ -262,0 +256,0 @@ }; |
@@ -225,3 +225,3 @@ 'use strict'; | ||
// At the time this sql was developed SCHEMA_NAME == NULL | ||
var sql = 'select ' + | ||
var sql = 'select distinct ' + | ||
'VARIABLE_NAME, ' + | ||
@@ -228,0 +228,0 @@ 'COLUMN_TYPE_D, ' + |
@@ -182,3 +182,3 @@ 'use strict'; | ||
} else { | ||
if (outTable.length > 0) { | ||
if (outTable && isNaN(outTable) && outTable.length > 0) { | ||
var appError = outTable[0]; | ||
@@ -185,0 +185,0 @@ var statusCode = appError.HTTP_STATUS_CODE; |
@@ -204,3 +204,3 @@ 'use strict'; | ||
//add $top --> Limit | ||
if (!countFallback) { | ||
if (!isCount) { | ||
const maxRecords = getLimit(sqlContext, 'max_records'); | ||
@@ -207,0 +207,0 @@ const top = sqlContext.systemQueryParameters.top; |
{ | ||
"name": "@sap/xsodata", | ||
"version": "4.6.0", | ||
"version": "5.0.0", | ||
"dependencies": { | ||
@@ -5,0 +5,0 @@ "@sap/xsenv": { |
@@ -1,1 +0,1 @@ | ||
{"bundleDependencies":false,"dependencies":{"@sap/xsenv":"^2.0.0","@sap/xssec":"^2.2.3","async":"=3.0.1","big.js":"=5.2.2","body-parser":"=1.19.0","hdb":"=0.17.0","lodash":"=4.17.15","negotiator":"=0.6.2","rwlock":"=5.0.0","xml-writer":"=1.7.0"},"deprecated":false,"description":"Expose data from a HANA database as OData V2 service with help of .xsodata files.","devDependencies":{"@sap/hana-client":"=2.4.144","chai":"=4.2.0","expect":"=1.20.2","filter-node-package":"=2.2.0","istanbul":"=0.4.5","jison":"=0.4.18","jshint":"=2.10.2","mocha":"=6.2.0","mocha-simple-html-reporter":"=1.1.0","node-mocks-http":"=1.7.6","pegjs":"=0.10.0","sinon":"=6.1.4","xml2js":"=0.4.19"},"engines":{"node":"^6.0.0 || ^8.0.0 || ^10.0.0"},"keywords":["odata","xsjs"],"main":"index.js","name":"@sap/xsodata","repository":{"type":"git"},"scripts":{"all-tests":"node ./node_modules/mocha/bin/_mocha test/**/test*.js test_apps/test_**/**/test*.js","all-tests-jenkins":"node ./node_modules/mocha/bin/_mocha 'test/**/test*.js' 'test_apps/test_**/**/test*.js'","cover":"istanbul cover -x test/**/* -x test_apps/**/* --report lcov --dir ./_coverage ./node_modules/mocha/bin/_mocha -- -R spec test/**/test*.js test_apps/**/test*.js","cover-jenkins":"istanbul cover ./node_modules/mocha/bin/_mocha 'test/**/test*.js' 'test_apps/**/test*.js' && istanbul check-coverage ./_coverage/coverage.json","cover-scenario-tests":"istanbul cover -x test_apps/**/* --report lcov --dir ./_coverage ./node_modules/mocha/bin/_mocha -- -R spec test_apps/**/test*.js","cover-unit-tests":"istanbul cover -x test/**/* --report lcov --dir ./_coverage ./node_modules/mocha/bin/_mocha -- -R spec test/**/test*.js","env":"env","gen":"npm run genfilter && npm run genorderby && npm run gensegment && npm run genxso && npm run genxml && npm run genDateTimeParser","genDateTimeParser":"pegjs lib/grammars/dateTimeToJson.peg lib/parsers/dateTimeParser.js","genfilter":"jison lib/grammars/filter.jison -o lib/parsers/jison_filter_parser.js","genorderby":"jison lib/grammars/orderby.jison -o lib/parsers/jison_orderby_parser.js","gensegment":"jison lib/grammars/segment.jison -o lib/parsers/jison_segment_parser.js","genuri_kv":"jison lib/grammars/uriKeyValue.jison -o lib/parsers/uriKeyValue.js","genxml":"pegjs -o lib/parsers/xml2JsonParser.js lib/grammars/xml2json.peg","genxso":"pegjs -o lib/parsers/peg_xsodata_parser.js lib/grammars/xsodata.peg","lint":"jshint .","prepareRelease":"clean-packages && npm prune --production && ls && cat package.json","pretest":"npm -g ls --depth=0 && npm ls --depth=0","report":"node ./node_modules/mocha/bin/_mocha test/**/test*.js test_apps/test_**/**/test*.js --reporter mocha-simple-html-reporter --reporter-options output=_gen/report/report_all.html","report-scenario-tests":"node ./node_modules/mocha/bin/_mocha test_apps/test_**/**/test*.js --reporter mocha-simple-html-reporter --reporter-options output=_gen/report/report_scenario.html","report-unit-tests":"node ./node_modules/mocha/bin/_mocha test/**/test*.js --reporter mocha-simple-html-reporter --reporter-options output=_gen/report/report_unit.html","scenario-tests":"node ./node_modules/mocha/bin/_mocha test_apps/test_**/**/test*.js","serve":"node test_apps/server","serve-debug":"node-debug test_apps/server","test":"npm run unit-tests","unit-tests":"node ./node_modules/mocha/bin/_mocha test/**/test*.js"},"version":"4.6.0","license":"SEE LICENSE IN developer-license-3.1.txt"} | ||
{"bundleDependencies":false,"dependencies":{"@sap/xsenv":"^2.0.0","@sap/xssec":"^2.2.3","async":"=3.0.1","big.js":"=5.2.2","body-parser":"=1.19.0","hdb":"=0.17.0","lodash":"=4.17.15","negotiator":"=0.6.2","rwlock":"=5.0.0","xml-writer":"=1.7.0"},"deprecated":false,"description":"Expose data from a HANA database as OData V2 service with help of .xsodata files.","devDependencies":{"@sap/hana-client":"=2.4.144","chai":"=4.2.0","expect":"=1.20.2","filter-node-package":"=2.2.0","istanbul":"=0.4.5","jison":"=0.4.18","jshint":"=2.10.2","mocha":"=6.2.0","mocha-simple-html-reporter":"=1.1.0","node-mocks-http":"=1.7.6","pegjs":"=0.10.0","sinon":"=6.1.4","xml2js":"=0.4.19"},"engines":{"node":"^6.0.0 || ^8.0.0 || ^10.0.0"},"keywords":["odata","xsjs"],"main":"index.js","name":"@sap/xsodata","repository":{"type":"git"},"scripts":{"all-tests":"node ./node_modules/mocha/bin/_mocha test/**/test*.js test_apps/test_**/**/test*.js","all-tests-jenkins":"node ./node_modules/mocha/bin/_mocha 'test/**/test*.js' 'test_apps/test_**/**/test*.js'","cover":"istanbul cover -x test/**/* -x test_apps/**/* --report lcov --dir ./_coverage ./node_modules/mocha/bin/_mocha -- -R spec test/**/test*.js test_apps/**/test*.js","cover-jenkins":"istanbul cover ./node_modules/mocha/bin/_mocha 'test/**/test*.js' 'test_apps/**/test*.js' && istanbul check-coverage ./_coverage/coverage.json","cover-scenario-tests":"istanbul cover -x test_apps/**/* --report lcov --dir ./_coverage ./node_modules/mocha/bin/_mocha -- -R spec test_apps/**/test*.js","cover-unit-tests":"istanbul cover -x test/**/* --report lcov --dir ./_coverage ./node_modules/mocha/bin/_mocha -- -R spec test/**/test*.js","env":"env","gen":"npm run genfilter && npm run genorderby && npm run gensegment && npm run genxso && npm run genxml && npm run genDateTimeParser","genDateTimeParser":"pegjs lib/grammars/dateTimeToJson.peg lib/parsers/dateTimeParser.js","genfilter":"jison lib/grammars/filter.jison -o lib/parsers/jison_filter_parser.js","genorderby":"jison lib/grammars/orderby.jison -o lib/parsers/jison_orderby_parser.js","gensegment":"jison lib/grammars/segment.jison -o lib/parsers/jison_segment_parser.js","genuri_kv":"jison lib/grammars/uriKeyValue.jison -o lib/parsers/uriKeyValue.js","genxml":"pegjs -o lib/parsers/xml2JsonParser.js lib/grammars/xml2json.peg","genxso":"pegjs -o lib/parsers/peg_xsodata_parser.js lib/grammars/xsodata.peg","lint":"jshint .","prepareRelease":"clean-packages && npm prune --production && ls && cat package.json","pretest":"npm -g ls --depth=0 && npm ls --depth=0","report":"node ./node_modules/mocha/bin/_mocha test/**/test*.js test_apps/test_**/**/test*.js --reporter mocha-simple-html-reporter --reporter-options output=_gen/report/report_all.html","report-scenario-tests":"node ./node_modules/mocha/bin/_mocha test_apps/test_**/**/test*.js --reporter mocha-simple-html-reporter --reporter-options output=_gen/report/report_scenario.html","report-unit-tests":"node ./node_modules/mocha/bin/_mocha test/**/test*.js --reporter mocha-simple-html-reporter --reporter-options output=_gen/report/report_unit.html","scenario-tests":"node ./node_modules/mocha/bin/_mocha test_apps/test_**/**/test*.js","serve":"node test_apps/server","serve-debug":"node-debug test_apps/server","test":"npm run unit-tests","unit-tests":"node ./node_modules/mocha/bin/_mocha test/**/test*.js"},"version":"5.0.0","license":"SEE LICENSE IN developer-license-3.1.txt"} |
Sorry, the diff of this file is not supported yet
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
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
1621482
32138