changelog
v1.1.1 (since v1.1.0) — 2025-09-17
-
Changed:
- Introduced data validation into the SDK for consistent checks across integrations.
-
Fixed:
- Corrected padding length handling that could trigger validation errors in certain flows.
- Improved error mapping and registry for clearer SDK error messages.
-
Removed:
- Cleaned up unused/internal helper functions in
Clientand error utilities (no public API impact).
- Cleaned up unused/internal helper functions in
-
Compare:
- Git:
v1.1.0...v1.1.1—https://github.com/nervotec/nervoscan-js/compare/v1.1.0...v1.1.1
- Git:
v1.1.0 (since v1.0.7) — 2025-09-11
-
Added:
- License key authentication via
client.initialize({ licenseKey })with internal licence manager. - RGB mode capabilities: face alignment feedback, frame validation controls, continuous mode, video end detection, FPS/quality controls, diagnostics.
- New APIs:
setOnAlignmentStatus((status) => void)startFaceDetection()/stopFaceDetection()resetMediaPipeTimestamps()setFrameValidationEnabled(enabled)/isFrameValidationEnabled()setTargetFPS(fps)setMinFrameQuality(quality)setQualityControlEnabled(enabled)getFrameStatistics(),getTotalFrameCount(),getConfiguration()enableContinuousMode(cb?)/disableContinuousMode()enableVideoEndDetection(timeoutMs?, onVideoEnd?)/disableVideoEndDetection()- Diagnostics:
getRGBDataCollectionStatus(),getRGBTimestamps(),isFaceDetectionActive(),isContinuousModeEnabled()
- Smoke tests for video, RGB, streaming; timing analysis scripts and docs.
- Logging utilities and type definitions.
- License key authentication via
-
Changed:
initializeis now synchronous and takes an options object:{ licenseKey?, username?, password?, serverType?, useRgb? }.initializeStreamingnow accepts an optional RGB config and returnsPromise<void>.- Results delivery standardized on Firebase callbacks; polling endpoints removed from flow.
- Expanded error model with new classes:
InvalidCredentialsError,LicenseInactiveError,LowFrameCountError,ConnectionLostError,ScanFailedError,VideoError,FPSCalculationError,NotImplementedError,EnvIncompatibleError,FaceLandmarkerNotInitializedError,RGBError. - README updated; Node 18+ recommended.
-
Fixed:
- Low FPS error handling and reporting.
- Face detection not working after scan started.
- Null Blob upload guard.
- MIME type issues and video playback problem.
- Various type issues and general cleanup.
-
Deprecated:
- Username/password authentication (prefer
licenseKey). Forserverless, license key is not yet implemented. - "Improved capture" toggle APIs are retained as no-ops; legacy capture is used.
- Username/password authentication (prefer
-
Removed:
- Legacy polling methods:
checkResults(jobID),getResults(jobID)(use callbacks instead).
- Legacy polling methods:
-
Upgrade notes:
- Replace
client.initialize('user','pass')withclient.initialize({ licenseKey: '...' }). For serverless, continue with{ username, password }for now. - Replace polling with callbacks:
setOnWindowResults,setOnFinalResults,setOnError. - Remove usage of improved capture toggles; legacy capture is default.
- Replace
-
Compare:
- Git:
v1.0.7...v1.1.0—https://github.com/nervotec/nervoscan-js/compare/v1.0.7...v1.1.0
- Git: