Skip to content

Commit

Permalink
Merge pull request #8 from BlinkID/jenkins/stable-build
Browse files Browse the repository at this point in the history
Automatically built release by Jenkins
  • Loading branch information
vjekoart authored Aug 13, 2021
2 parents e0bc560 + cb43963 commit 056f63c
Show file tree
Hide file tree
Showing 60 changed files with 2,315 additions and 2,336 deletions.
125 changes: 124 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,134 @@
# Release notes

## 5.13.0

### New additions to our supported document list

We’ve added 61 new documents:

#### Europe

* Austria - Paper Passport
* Belarus - Paper Passport
* Belgium - Paper Passport (beta)
* Bulgaria - Paper Passport
* Estonia - Paper Passport
* France - Paper Passport (beta)
* Georgia - Paper Passport (beta)
* Germany - Paper Passport
* Greece - Paper Passport
* Hungary- Paper Passport
* Italy - Paper Passport (beta)
* Kosovo - Paper Passport
* Moldova - Paper Passport (beta)
* Poland - Paper Passport
* Portugal - Paper Passport
* Spain - Paper Passport
* Switzerland - Paper Passport
* UK - Paper Passport

#### Middle East and Africa

* Algeria - Paper Passport (beta)
* Egypt - Paper Passport (beta)
* Eswatini - Paper Passport
* Ghana - Paper Passport
* Iran - Paper Passport (beta)
* Iraq - Paper Passport (beta)
* Israel - Paper Passport (beta)
* Jordan - Paper Passport (beta)
* Kenya - Polycarbonate Passport
* Libya - Polycarbonate Passport (beta)
* Morocco - Paper Passport (beta)
* Nigeria - Paper Passport
* Nigeria - Polycarbonate Passport (beta)
* Qatar - ID Card (front only, beta)
* Saudi Arabia - Paper Passport
* Syria - Paper Passport
* Tanzania - ID Card (beta)
* Tanzania - Voter ID (front only, beta)
* Tunisia - Paper Passport
* Turkey - Paper Passport
* Zimbabwe - Paper Passport

#### Latin America and the Caribbean

* Argentina - Paper Passport
* Brazil - Paper Passport (beta)
* Guatemala - Paper Passport
* Haiti - Paper Passport
* Honduras - Paper Passport (beta)
* Mexico - Paper Passport (beta)
* Mexico - Nayarit - Driving Licence (beta)

#### Asia

* Bangladesh - Paper Passport
* China - Paper Passport (beta)
* India - Paper Passport
* Indonesia - Paper Passport
* Japan - Paper Passport
* Nepal - Paper Passport
* Pakistan - Paper Passport
* Philippines - Paper Passport
* South Korea - Paper Passport (beta)
* Sri Lanka - Paper Passport
* Uzbekistan - Paper Passport

#### Oceania

* Australia - Paper Passport

#### Northern America

* Canada - Paper Passport
* Canada - Weapon Permit (front only, beta)
* USA - Paper Passport (beta)

#### Back side support added:

* Greece - ID Card
* Burkina Faso - ID Card
* Democratic Republic of the Congo - Driving Licence
* Mexico - Veracruz - Driving Licence
* Canada - Citizenship Certificate

#### No longer BETA:

* Belarus - Driving Licence
* UK - Polycarbonate Passport
* Argentina - Alien ID
* Bahamas - Driving Licence
* Mexico - Durango - Driving Licence
* Venezuela - ID Card
* USA - Kansas - ID Card

### Changes to the BlinkId(Combined)Recognizer:

* We’ve renamed the Swaziland country to Eswatini in results and `ClassInfo` structure
* We are filling out COUNTRY and REGION fields in ClassInfo, without the field TYPE of document, when using BarcodeID mode for scanning documents where the Front side is not supported, and back side results are extracted from AAMVA compliant barcodes
* This applies only if `ClassInfo` isn’t already prepopulated in some other way and when you’re not in `FullRecognition` mode
* We've added support for including or excluding groups of documents supported by the current license with the `captureModeFilter` setting
* Scanning of documents with AAMVA compliant barcodes with BarcodeID mode
* Scanning of all licensed documents in BlinkID FullRecognition mode

### Platform-related SDK changes

* We've fixed a bug where some users were not able to scan passports, even though all document types were allowed by the license key.
* We've improved the performance of the SDK by adding support for WebAssembly SIMD.
* This increases the scanning performance on compatible browsers up to 77% and up to 94% in cases when WebAssembly threads are also supported.
* Keep in mind that this feature requires a compatible browser (Chrome 91 and Firefox 90 or newer versions). Only `advanced` and `advanced-threads` binaries are using SIMD. In case that the browser doesn't support this feature, `basic` binary will be used.
* We've reduced the memory fragmentation during video processing, resulting in a smaller memory footprint.
* We've added a mechanism to automatically delete an instance of worker script in case of unsuccessful SDK initialization.
* New method `WasmSDK.delete()` was added for this purpose and is available on every instance of the SDK.
* We've changed improper error handling in the `VideoRecognizer` class.
* From now on, it's possible to catch all errors that happen during the video recognition.

## 5.11.3

* We've fixed a broken `client-library` which resulted as empty folder and unusable development bundle

## 5.11.2
### SDK changes

* We've exposed a couple of functions that are used by the SDK to determine which WebAssembly bundle to load and from which location
* Function `detectWasmType()` returns the best possible WebAssembly bundle based on the features a browser supports.
Expand Down
29 changes: 20 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,10 +140,15 @@ to use the SDK in both JavaScript and TypeScript projects.

---

Alternatively, it's possible to use UMD builds, which can be loaded from [the `dist` folder on unpkg](https://unpkg.com/@microblink/blinkid-imagecapture-in-browser-sdk/dist/). The UMD builds make `BlinkIDImageCaptureSDK` available as a `window.BlinkIDImageCaptureSDK` global variable:
Alternatively, it's possible to use UMD builds which can be loaded from public CDN services.

However, **we strongly advise** that you host the JavaScript bundles on your infrastructure since there is no guarantee that the public CDN service has satisfactory uptime and availability throughout the world.

For example, it's possible to use UMD builds from [the `dist` folder on Unpkg CDN](https://unpkg.com/@microblink/blinkid-imagecapture-in-browser-sdk/dist/). The UMD builds make `BlinkIDImageCaptureSDK` available as a `window.BlinkIDImageCaptureSDK` global variable:

```html
<script src="https://unpkg.com/@microblink/blinkid-imagecapture-in-browser-sdk/dist/blinkid-imagecapture-sdk.min.js"></script>
<!-- IMPORTANT: change "X.Y.Z" to the version number you wish to use! -->
<script src="https://unpkg.com/@microblink/[email protected]/dist/blinkid-imagecapture-sdk.min.js"></script>
```

Finally, it's possible to use ES builds, which can be downloaded from [the `es` folder on unpkg](https://unpkg.com/@microblink/blinkid-imagecapture-in-browser-sdk/es/). ES modules are used in a similar manner as NPM package:
Expand Down Expand Up @@ -215,7 +220,11 @@ For example, in `package.json` you should have something like `"@microblink/blin
import * as BlinkIDImageCaptureSDK from "@microblink/blinkid-imagecapture-in-browser-sdk";
const recognizer = await BlinkIDImageCaptureSDK.createBlinkIdImageCaptureRecognizer( wasmSDK );
const recognizerRunner = await BlinkIDImageCaptureSDK.createRecognizerRunner( wasmSDK, [ recognizer ], true );
const recognizerRunner = await BlinkIDImageCaptureSDK.createRecognizerRunner(
wasmSDK,
[ recognizer ],
true
);
```

5. Obtain a reference to your HTML video element and create a `VideoRecognizer` using the element and your instance of `RecognizerRunner` which then can be used to process input video stream:
Expand Down Expand Up @@ -306,16 +315,16 @@ const loadSettings = new BlinkIDImageCaptureSDK.WasmSDKLoadSettings( "your-base6
* Hello message will contain the name and version of the SDK, which are required information for all support
* tickets.
*
* Default value is true.
* The default value is true.
*/
loadSettings.allowHelloMessage = true;
/**
* Absolute location of WASM and related JS/data files. Useful when resource files should be loaded over CDN, or
* when web frameworks/libraries are used which store resources in specific locations, e.g. inside "assets" folder.
*
* Important: if the engine is hosted on another origin, CORS must be enabled between two hosts. That is, server where
* engine is hosted must have 'Access-Control-Allow-Origin' header for the location of the web app.
* Important: if the engine is hosted on another origin, CORS must be enabled between two hosts. That is, server
* where engine is hosted must have 'Access-Control-Allow-Origin' header for the location of the web app.
*
* Important: SDK and WASM resources must be from the same version of a package.
*
Expand All @@ -335,7 +344,7 @@ wasmType: WasmType | null = null;
*
* This can be useful for displaying progress bar to users with slow connections.
*
* Default value is "null".
* The default value is "null".
*
* @example
* loadSettings.loadProgressCallback = (percentage: number) => console.log(`${ percentage }% loaded!`);
Expand Down Expand Up @@ -365,17 +374,19 @@ WASM wrapper contain three different builds:
* `Basic`

* The WASM that will be loaded will be most compatible with all browsers that support the WASM, but will lack features that could be used to improve performance.

* `Advanced`

* The WASM that will be loaded will be built with advanced WASM features, such as bulk memory, non-trapping floating point and sign extension. Such WASM can only be executed in browsers that support those features. Attempting to run this WASM in a non-compatible browser will crash your app.
* The WASM that will be loaded will be built with advanced WASM features, such as bulk memory, SIMD, non-trapping floating point and sign extension. Such WASM can only be executed in browsers that support those features. Attempting to run this WASM in a non-compatible browser will crash your app.

* `AdvancedWithThreads`

* The WASM that will be loaded will be build with advanced WASM features, just like above. Additionally, it will be also built with support for multi-threaded processing. This feature requires a browser with support for both advanced WASM features and `SharedArrayBuffer`.

* For multi-threaded processing there are some things that needs to be set up additionally, like COOP and COEP headers, more info about web server setup can be found [here](#wasmsetup).

* Keep in mind that this WASM bundle requires that all resources are on the same origin. So, for example, it's not possible to load WASM files from some CDN. This limitation exists due to browser security rules.

_Files: resources/{basic,advanced,advanced-threads}/BlinkID ImageCaptureWasmSDK.{data,js,wasm}_

##### Server Configuration
Expand Down
14 changes: 10 additions & 4 deletions client-library/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,21 +39,27 @@ import { Client } from "@microblink/blinkid-imagecapture-in-browser-sdk";

### <a name="installation-standalone-bundle"></a> Standalone (UMD) bundle

Since client library is published on NPM, it's possible to load the library via CDN.
Since the client library is published on NPM, it's possible to download the library via public CDN services.

However, **we strongly advise** that you host the JavaScript bundle on your infrastructure since there is no guarantee that the public CDN service has satisfactory uptime and availability throughout the world.

```html
<!-- After successful load, global variable `Client` is available. -->
<script src="https://unpkg.com/@microblink/blinkid-imagecapture-in-browser-sdk/client-library/dist/client-library.min.js"></script>
<!-- IMPORTANT: change "X.Y.Z" to the version number you wish to use! -->
<script src="https://unpkg.com/@microblink/[email protected]/client-library/dist/client-library.min.js"></script>
```

*Keep in mind that Unpkg CDN is used for demonstration, it's not intended to be used in production!*

### <a name="installation-es-module"></a> ES module

The library is also packaged as a classic ES module which can be loaded via CDN.
The library is also packaged as a classic ES module which can be downloaded via public CDN services.

However, **we strongly advise** that you host the JavaScript bundle on your infrastructure since there is no guarantee that the public CDN service has satisfactory uptime and availability throughout the world.

```js
import { Client } from "https://unpkg.com/@microblink/blinkid-imagecapture-in-browser-sdk/client-library/es/client-library.mjs";
/* IMPORTANT: change "X.Y.Z" to the version number you wish to use! */
import { Client } from "https://unpkg.com/@microblink/[email protected]/client-library/es/client-library.mjs";
```

*Keep in mind that Unpkg CDN is used for demonstration, it's not intended to be used in production!*
Expand Down
2 changes: 1 addition & 1 deletion client-library/examples/example.cloud.html
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ <h2>Results</h2>
</body>

<!-- STEP 1: load Client library -->
<script src="../dist/client-librart.js"></script>
<script src="../dist/client-library.js"></script>

<script>
/* Auxiliary code for showing status and results */
Expand Down
Loading

0 comments on commit 056f63c

Please sign in to comment.