[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#929452: release.debian.org: [pre-approval] testing-proposed-updates for unicode changes



Control: tags -1 - moreinfo

Le 23/05/2019 à 22:25, Niels Thykier a écrit :
> Control: tags -1 moreinfo
> 
> Xavier Guimard:
>> Package: release.debian.org
>> Severity: normal
>>
>> Hi all,
>>
>> dur to unicode change, 2 nodejs packages require an update:
>>  - node-regenerate-unicode-properties
>>  - node-regexpu-core
>>
>> These 2 packages have been updated in unstable so can no more be updated
>> using the normal way. The proposed changes are very few (patch to update
>> package.json + debian/control dependency update from node-unicode-11.0.0
>> to node-unicode-12.0.0).
>>
>> These updates are required since they are both dependencies of node-rollup
>> which is a build dependency of ~20 packages.
>>
>> Do you authorize me to upload these 2 +deb10u1 packages in
>> testing-proposed-updates? Packages are tested locally, build +
>> autopkgtest OK.
>>
>> Sorry for the inconvenience.
>>
>> Cheers,
>> Xavier
>>
>> [...]
>>
> 
> The versions in unstable: Could they be used / unblocked as-is (without
> needing anything else)?

Hi,

yes they can be unblocked. Changes are not so big and all tests pass
(even if upstream tests are not enabled here).

diff --git a/.travis.yml b/.travis.yml
index eaf74ce..d55375c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,13 +1,11 @@
 sudo: false
 language: node_js
 node_js:
-  - '4'
-  - '5'
   - '6'
-  - '7'
   - '8'
+  - '10'
 script:
-  - 'if [ "${TRAVIS_NODE_VERSION}" = "8" ]; then
+  - 'if [ "${TRAVIS_NODE_VERSION}" = "10" ]; then
        npm run build;
      fi'
   - 'npm test'
diff --git a/debian/changelog b/debian/changelog
index 1440a50..220d5d4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+node-regexpu-core (4.5.4+ds-1) unstable; urgency=medium
+
+  * New upstream release.
+  * Bump std-vers to 4.3.0.
+
+ -- Julien Puydt <jpuydt@debian.org>  Tue, 16 Apr 2019 13:19:14 +0200
+
 node-regexpu-core (4.4.0+ds-1) unstable; urgency=medium
 
   * New upstream release.
diff --git a/debian/control b/debian/control
index 043f294..79f1ab7 100644
--- a/debian/control
+++ b/debian/control
@@ -7,9 +7,9 @@ Build-Depends: debhelper (>= 11),
                node-jsesc (>= 2.5.1),
                node-lodash (>= 4.17.4),
                node-regenerate (>= 1.4.0),
-               node-unicode-11.0.0,
+               node-unicode-12.0.0,
                nodejs (>= 6)
-Standards-Version: 4.2.1
+Standards-Version: 4.3.0
 Homepage: https://mths.be/regexpu
 Vcs-Git: https://salsa.debian.org/js-team/node-regexpu-core.git
 Vcs-Browser: https://salsa.debian.org/js-team/node-regexpu-core
diff --git a/package.json b/package.json
index 79eee47..dcf7930 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
 	"name": "regexpu-core",
-	"version": "4.4.0",
+	"version": "4.5.4",
 	"description": "regexpu’s core functionality (i.e. `rewritePattern(pattern, flag)`), capable of translating ES6 Unicode regular expressions to ES5.",
 	"homepage": "https://mths.be/regexpu";,
 	"main": "rewrite-pattern.js",
@@ -49,19 +49,19 @@
 	},
 	"dependencies": {
 		"regenerate": "^1.4.0",
-		"regenerate-unicode-properties": "^7.0.0",
+		"regenerate-unicode-properties": "^8.0.2",
 		"regjsgen": "^0.5.0",
 		"regjsparser": "^0.6.0",
 		"unicode-match-property-ecmascript": "^1.0.4",
-		"unicode-match-property-value-ecmascript": "^1.0.2"
+		"unicode-match-property-value-ecmascript": "^1.1.0"
 	},
 	"devDependencies": {
-		"codecov": "^3.0.2",
+		"codecov": "^3.2.0",
 		"istanbul": "^0.4.5",
-		"jsesc": "^2.5.1",
-		"lodash": "^4.17.10",
-		"mocha": "^5.2.0",
+		"jsesc": "^2.5.2",
+		"lodash": "^4.17.11",
+		"mocha": "^6.0.2",
 		"regexpu-fixtures": "^2.1.2",
-		"unicode-11.0.0": "^0.7.7"
+		"unicode-12.0.0": "^0.7.9"
 	}
 }
diff --git a/property-escapes.md b/property-escapes.md
index f8ddff1..eefd50e 100644
--- a/property-escapes.md
+++ b/property-escapes.md
@@ -117,6 +117,7 @@ $ node -e 'require("regenerate-unicode-properties").get("Script_Extensions").for
 \p{Script_Extensions=Duployan}
 \p{Script_Extensions=Egyptian_Hieroglyphs}
 \p{Script_Extensions=Elbasan}
+\p{Script_Extensions=Elymaic}
 \p{Script_Extensions=Ethiopic}
 \p{Script_Extensions=Georgian}
 \p{Script_Extensions=Glagolitic}
@@ -174,10 +175,12 @@ $ node -e 'require("regenerate-unicode-properties").get("Script_Extensions").for
 \p{Script_Extensions=Multani}
 \p{Script_Extensions=Myanmar}
 \p{Script_Extensions=Nabataean}
+\p{Script_Extensions=Nandinagari}
 \p{Script_Extensions=New_Tai_Lue}
 \p{Script_Extensions=Newa}
 \p{Script_Extensions=Nko}
 \p{Script_Extensions=Nushu}
+\p{Script_Extensions=Nyiakeng_Puachue_Hmong}
 \p{Script_Extensions=Ogham}
 \p{Script_Extensions=Ol_Chiki}
 \p{Script_Extensions=Old_Hungarian}
@@ -228,6 +231,7 @@ $ node -e 'require("regenerate-unicode-properties").get("Script_Extensions").for
 \p{Script_Extensions=Tirhuta}
 \p{Script_Extensions=Ugaritic}
 \p{Script_Extensions=Vai}
+\p{Script_Extensions=Wancho}
 \p{Script_Extensions=Warang_Citi}
 \p{Script_Extensions=Yi}
 \p{Script_Extensions=Zanabazar_Square}
diff --git a/scripts/character-class-escape-sets.js b/scripts/character-class-escape-sets.js
index 1e2a6e2..b60b5d4 100644
--- a/scripts/character-class-escape-sets.js
+++ b/scripts/character-class-escape-sets.js
@@ -4,7 +4,7 @@ const fs = require('fs');
 const jsesc = require('jsesc');
 const regenerate = require('regenerate');
 
-const Zs = require('unicode-11.0.0/General_Category/Space_Separator/code-points.js');
+const Zs = require('unicode-12.0.0/General_Category/Space_Separator/code-points.js');
 
 const iuMappings = require('../data/iu-mappings.js');
 
diff --git a/scripts/iu-mappings.js b/scripts/iu-mappings.js
index 52f4618..93c853d 100644
--- a/scripts/iu-mappings.js
+++ b/scripts/iu-mappings.js
@@ -81,8 +81,8 @@ const extend = (map, key, value, callback) => {
 //  A. To do a simple case folding, use the mappings with status C + S.
 //  B. To do a full case folding, use the mappings with status C + F.
 
-const commonMappings = require('unicode-11.0.0/Case_Folding/C/code-points.js');
-const simpleMappings = require('unicode-11.0.0/Case_Folding/S/code-points.js');
+const commonMappings = require('unicode-12.0.0/Case_Folding/C/code-points.js');
+const simpleMappings = require('unicode-12.0.0/Case_Folding/S/code-points.js');
 
 // We want the `C` mappings in both directions (i.e. `A` should fold to `a`
 // and `a` to `A`), and the `S` mappings in both directions (i.e. `ẞ` should
diff --git a/tests/tests.js b/tests/tests.js
index aac503a..e00bc9c 100644
--- a/tests/tests.js
+++ b/tests/tests.js
@@ -22,7 +22,7 @@ describe('rewritePattern', () => {
 });
 
 const unicodePropertyEscapeFixtures = [
-	// http://unicode.org/reports/tr18/#RL1.2 item 1
+	// https://unicode.org/reports/tr18/#RL1.2 item 1
 	{
 		'path': 'General_Category/Uppercase_Letter',
 		'expressions': [
@@ -34,7 +34,7 @@ const unicodePropertyEscapeFixtures = [
 			'Uppercase_Letter'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 2a
+	// https://unicode.org/reports/tr18/#RL1.2 item 2a
 	{
 		'path': 'Script/Greek',
 		'expressions': [
@@ -53,7 +53,7 @@ const unicodePropertyEscapeFixtures = [
 			'Script=Hiragana'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 2b
+	// https://unicode.org/reports/tr18/#RL1.2 item 2b
 	{
 		'path': 'Script_Extensions/Greek',
 		'expressions': [
@@ -63,7 +63,7 @@ const unicodePropertyEscapeFixtures = [
 			'Script_Extensions=Greek'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 3
+	// https://unicode.org/reports/tr18/#RL1.2 item 3
 	{
 		'path': 'Binary_Property/Alphabetic',
 		'expressions': [
@@ -71,7 +71,7 @@ const unicodePropertyEscapeFixtures = [
 			'Alphabetic'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 4
+	// https://unicode.org/reports/tr18/#RL1.2 item 4
 	{
 		'path': 'Binary_Property/Uppercase',
 		'expressions': [
@@ -79,7 +79,7 @@ const unicodePropertyEscapeFixtures = [
 			'Uppercase'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 5
+	// https://unicode.org/reports/tr18/#RL1.2 item 5
 	{
 		'path': 'Binary_Property/Lowercase',
 		'expressions': [
@@ -87,7 +87,7 @@ const unicodePropertyEscapeFixtures = [
 			'Lowercase'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 6
+	// https://unicode.org/reports/tr18/#RL1.2 item 6
 	{
 		'path': 'Binary_Property/White_Space',
 		'expressions': [
@@ -95,7 +95,7 @@ const unicodePropertyEscapeFixtures = [
 			'White_Space'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 7
+	// https://unicode.org/reports/tr18/#RL1.2 item 7
 	{
 		'path': 'Binary_Property/Noncharacter_Code_Point',
 		'expressions': [
@@ -103,7 +103,7 @@ const unicodePropertyEscapeFixtures = [
 			'Noncharacter_Code_Point'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 8
+	// https://unicode.org/reports/tr18/#RL1.2 item 8
 	{
 		'path': 'Binary_Property/Default_Ignorable_Code_Point',
 		'expressions': [
@@ -111,28 +111,28 @@ const unicodePropertyEscapeFixtures = [
 			'Default_Ignorable_Code_Point'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 9a
+	// https://unicode.org/reports/tr18/#RL1.2 item 9a
 	{
 		'path': 'Binary_Property/Any',
 		'expressions': [
 			'Any'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 9b
+	// https://unicode.org/reports/tr18/#RL1.2 item 9b
 	{
 		'path': 'Binary_Property/ASCII',
 		'expressions': [
 			'ASCII'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL1.2 item 9c
+	// https://unicode.org/reports/tr18/#RL1.2 item 9c
 	{
 		'path': 'Binary_Property/Assigned',
 		'expressions': [
 			'Assigned'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/ASCII_Hex_Digit',
 		'expressions': [
@@ -140,7 +140,7 @@ const unicodePropertyEscapeFixtures = [
 			'AHex'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	// {
 	// 	'path': 'Bidi_Class/Arabic_Letter',
 	// 	'expressions': [
@@ -150,7 +150,7 @@ const unicodePropertyEscapeFixtures = [
 	// 		'Bidi_Class=Arabic_Letter'
 	// 	]
 	// },
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Bidi_Control',
 		'expressions': [
@@ -158,7 +158,7 @@ const unicodePropertyEscapeFixtures = [
 			'Bidi_Control'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Bidi_Mirrored',
 		'expressions': [
@@ -166,7 +166,7 @@ const unicodePropertyEscapeFixtures = [
 			'Bidi_Mirrored'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Case_Ignorable',
 		'expressions': [
@@ -174,14 +174,14 @@ const unicodePropertyEscapeFixtures = [
 			'Case_Ignorable',
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Cased',
 		'expressions': [
 			'Cased'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Changes_When_NFKC_Casefolded',
 		'expressions': [
@@ -189,7 +189,7 @@ const unicodePropertyEscapeFixtures = [
 			'Changes_When_NFKC_Casefolded'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Changes_When_Casefolded',
 		'expressions': [
@@ -197,7 +197,7 @@ const unicodePropertyEscapeFixtures = [
 			'Changes_When_Casefolded'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Changes_When_Casemapped',
 		'expressions': [
@@ -205,7 +205,7 @@ const unicodePropertyEscapeFixtures = [
 			'Changes_When_Casemapped'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Changes_When_Lowercased',
 		'expressions': [
@@ -213,7 +213,7 @@ const unicodePropertyEscapeFixtures = [
 			'Changes_When_Lowercased'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Changes_When_Titlecased',
 		'expressions': [
@@ -221,7 +221,7 @@ const unicodePropertyEscapeFixtures = [
 			'Changes_When_Titlecased'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Changes_When_Uppercased',
 		'expressions': [
@@ -229,14 +229,14 @@ const unicodePropertyEscapeFixtures = [
 			'Changes_When_Uppercased'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Dash',
 		'expressions': [
 			'Dash'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Deprecated',
 		'expressions': [
@@ -244,7 +244,7 @@ const unicodePropertyEscapeFixtures = [
 			'Deprecated'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Diacritic',
 		'expressions': [
@@ -252,7 +252,7 @@ const unicodePropertyEscapeFixtures = [
 			'Diacritic'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Extender',
 		'expressions': [
@@ -260,7 +260,7 @@ const unicodePropertyEscapeFixtures = [
 			'Extender'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Grapheme_Base',
 		'expressions': [
@@ -268,7 +268,7 @@ const unicodePropertyEscapeFixtures = [
 			'Grapheme_Base'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Grapheme_Extend',
 		'expressions': [
@@ -276,7 +276,7 @@ const unicodePropertyEscapeFixtures = [
 			'Grapheme_Extend'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Hex_Digit',
 		'expressions': [
@@ -284,7 +284,7 @@ const unicodePropertyEscapeFixtures = [
 			'Hex_Digit'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/ID_Continue',
 		'expressions': [
@@ -292,7 +292,7 @@ const unicodePropertyEscapeFixtures = [
 			'ID_Continue'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/ID_Start',
 		'expressions': [
@@ -300,7 +300,7 @@ const unicodePropertyEscapeFixtures = [
 			'ID_Start'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Ideographic',
 		'expressions': [
@@ -308,7 +308,7 @@ const unicodePropertyEscapeFixtures = [
 			'Ideographic'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/IDS_Binary_Operator',
 		'expressions': [
@@ -316,7 +316,7 @@ const unicodePropertyEscapeFixtures = [
 			'IDS_Binary_Operator'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/IDS_Trinary_Operator',
 		'expressions': [
@@ -324,7 +324,7 @@ const unicodePropertyEscapeFixtures = [
 			'IDS_Trinary_Operator'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Join_Control',
 		'expressions': [
@@ -332,7 +332,7 @@ const unicodePropertyEscapeFixtures = [
 			'Join_Control'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Logical_Order_Exception',
 		'expressions': [
@@ -340,14 +340,14 @@ const unicodePropertyEscapeFixtures = [
 			'Logical_Order_Exception'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Math',
 		'expressions': [
 			'Math'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Pattern_Syntax',
 		'expressions': [
@@ -355,7 +355,7 @@ const unicodePropertyEscapeFixtures = [
 			'Pattern_Syntax'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Pattern_White_Space',
 		'expressions': [
@@ -363,7 +363,7 @@ const unicodePropertyEscapeFixtures = [
 			'Pattern_White_Space'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Quotation_Mark',
 		'expressions': [
@@ -371,7 +371,7 @@ const unicodePropertyEscapeFixtures = [
 			'Quotation_Mark'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Radical',
 		'expressions': [
@@ -385,7 +385,7 @@ const unicodePropertyEscapeFixtures = [
 			'Regional_Indicator'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Soft_Dotted',
 		'expressions': [
@@ -393,7 +393,7 @@ const unicodePropertyEscapeFixtures = [
 			'Soft_Dotted'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Sentence_Terminal',
 		'expressions': [
@@ -401,7 +401,7 @@ const unicodePropertyEscapeFixtures = [
 			'Sentence_Terminal'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Terminal_Punctuation',
 		'expressions': [
@@ -409,7 +409,7 @@ const unicodePropertyEscapeFixtures = [
 			'Terminal_Punctuation'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Unified_Ideograph',
 		'expressions': [
@@ -417,7 +417,7 @@ const unicodePropertyEscapeFixtures = [
 			'Unified_Ideograph'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/Variation_Selector',
 		'expressions': [
@@ -425,7 +425,7 @@ const unicodePropertyEscapeFixtures = [
 			'Variation_Selector'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/XID_Continue',
 		'expressions': [
@@ -433,7 +433,7 @@ const unicodePropertyEscapeFixtures = [
 			'XID_Continue'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	{
 		'path': 'Binary_Property/XID_Start',
 		'expressions': [
@@ -441,7 +441,7 @@ const unicodePropertyEscapeFixtures = [
 			'XID_Start'
 		]
 	},
-	// http://unicode.org/reports/tr18/#RL2.7
+	// https://unicode.org/reports/tr18/#RL2.7
 	// {
 	// 	'path': 'Bidi_Paired_Bracket_Type/Open',
 	// 	'expressions': [
@@ -451,54 +451,52 @@ const unicodePropertyEscapeFixtures = [
 	// 		'Bidi_Paired_Bracket_Type=Open'
 	// 	]
 	// },
-	// http://unicode.org/reports/tr51/
+	// https://unicode.org/reports/tr51/
 	{
 		'path': 'Binary_Property/Emoji',
 		'expressions': [
 			'Emoji'
 		]
 	},
-	// http://unicode.org/reports/tr51/
+	// https://unicode.org/reports/tr51/
 	{
 		'path': 'Binary_Property/Emoji_Component',
 		'expressions': [
 			'Emoji_Component'
 		]
 	},
-	// http://unicode.org/reports/tr51/
+	// https://unicode.org/reports/tr51/
 	{
 		'path': 'Binary_Property/Emoji_Modifier',
 		'expressions': [
 			'Emoji_Modifier'
 		]
 	},
-	// http://unicode.org/reports/tr51/
+	// https://unicode.org/reports/tr51/
 	{
 		'path': 'Binary_Property/Emoji_Modifier_Base',
 		'expressions': [
 			'Emoji_Modifier_Base'
 		]
 	},
-	// http://unicode.org/reports/tr51/
+	// https://unicode.org/reports/tr51/
 	{
 		'path': 'Binary_Property/Emoji_Presentation',
 		'expressions': [
 			'Emoji_Presentation'
 		]
 	},
-	// http://unicode.org/reports/tr51/proposed.html
-	// TODO: uncomment once Unicode 11 is released and
-	// `Extended_Pictographic` makes it into the ECMAScript spec.
-	// {
-	// 	'path': 'Binary_Property/Extended_Pictographic',
-	// 	'expressions': [
-	// 		'Extended_Pictographic'
-	// 	]
-	// },
+	// https://unicode.org/reports/tr51/proposed.html
+	{
+		'path': 'Binary_Property/Extended_Pictographic',
+		'expressions': [
+			'Extended_Pictographic'
+		]
+	},
 ];
 
 const getPropertyValuePattern = (path) => {
-	const codePoints = require(`unicode-11.0.0/${
+	const codePoints = require(`unicode-12.0.0/${
 		path }/code-points.js`);
 	return {
 		'p': regenerate(codePoints).toString(),
@@ -572,6 +570,10 @@ describe('unicodePropertyEscapes', () => {
 			rewritePattern('(?:\\p{Script_Extensions=Anatolian_Hieroglyphs})', 'u', features),
 			'(?:(?:\\uD811[\\uDC00-\\uDE46]))'
 		);
+		assert.equal(
+			rewritePattern('(?:\\p{Script_Extensions=Wancho})', 'u', features),
+			'(?:(?:\\uD838[\\uDEC0-\\uDEF9\\uDEFF]))'
+		);
 	});
 	it('throws without the `u` flag', () => {
 		assert.throws(() => {
diff --git a/.travis.yml b/.travis.yml
index 7a9866d..f66b528 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,11 +1,9 @@
 language: node_js
 node_js:
-  - '4'
-  - '5'
-  - '6'
-  - '7'
+  - '8'
+  - '10'
 script:
-  - 'if [ "${TRAVIS_NODE_VERSION}" = "7" ]; then
+  - 'if [ "${TRAVIS_NODE_VERSION}" = "10" ]; then
        npm run build;
      fi'
   - 'npm test'
diff --git a/build.js b/build.js
index cad5411..0f6cf51 100644
--- a/build.js
+++ b/build.js
@@ -4,7 +4,7 @@ const fs = require('fs');
 const jsesc = require('jsesc');
 const emptyDirSync = require('fs-extra').emptyDirSync;
 const regenerate = require('regenerate');
-const UNICODE_VERSION = '11.0.0';
+const UNICODE_VERSION = '12.0.0';
 const unicode = require(`unicode-${ UNICODE_VERSION }`);
 
 /*----------------------------------------------------------------------------*/
@@ -37,8 +37,24 @@ regenerate.prototype.toCode = function() {
 		}
 		index += 2;
 	}
-	return 'require(\'regenerate\')(' + loneCodePoints.join(', ') + ')' +
-		(ranges.length ? '.' + ranges.join('.') : '');
+	let output = 'const set = require(\'regenerate\')(' + loneCodePoints.join(', ') + ');\n';
+	if (ranges.length > 0) {
+		let i = 0;
+		output += 'set';
+		// Avoid deeply-nested ASTs.
+		// https://github.com/babel/babel/issues/8278
+		const MAX_CHAINED_CALLS = 50;
+		for (const range of ranges) {
+			if (i++ == MAX_CHAINED_CALLS) {
+				i = 0;
+				output += '.' + range + ';\nset';
+			} else {
+				output += '.' + range;
+			}
+		}
+		output += ';';
+	}
+	return output;
 };
 
 const INDEX = new Map();
@@ -66,7 +82,7 @@ for (const property of nonBinaryProperties) {
 			`unicode-${ UNICODE_VERSION }/${ property }/${ value }/code-points.js`
 		);
 		const set = regenerate(codePoints);
-		const output = `module.exports = ${ set.toCode() };\n`;
+		const output = `${ set.toCode() }\nmodule.exports = set;\n`;
 		fs.writeFileSync(fileName, output);
 	}
 	INDEX.set(property, values.sort());
@@ -91,7 +107,7 @@ for (const property of binaryProperties) {
 		`unicode-${ UNICODE_VERSION }/Binary_Property/${ property }/code-points.js`
 	);
 	const set = regenerate(codePoints);
-	const output = `module.exports = ${ set.toCode() };\n`;
+	const output = `${ set.toCode() }\nmodule.exports = set;\n`;
 	fs.writeFileSync(fileName, output);
 }
 
diff --git a/debian/changelog b/debian/changelog
index 7389de9..c3f90b9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+node-regenerate-unicode-properties (8.0.2+ds-1) unstable; urgency=medium
+
+  * New upstream release.
+  * Bump std-ver to 4.3.0.
+  * Mark the binary package M-A: foreign following hinter.
+
+ -- Julien Puydt <jpuydt@debian.org>  Tue, 16 Apr 2019 12:23:35 +0200
+
 node-regenerate-unicode-properties (7.0.0+ds-1) unstable; urgency=medium
 
   * New upstream release.
diff --git a/debian/control b/debian/control
index 22119fe..8ae4220 100644
--- a/debian/control
+++ b/debian/control
@@ -8,15 +8,16 @@ Build-Depends: debhelper (>= 11),
                node-jsesc (>= 2.5.1),
                node-regenerate (>= 1.3.2),
                node-unicode-canonical-property-names-ecmascript (>= 1.0.4),
-               node-unicode-11.0.0,
+               node-unicode-12.0.0,
                nodejs (>= 6)
-Standards-Version: 4.1.5
+Standards-Version: 4.3.0
 Homepage: https://github.com/mathiasbynens/regenerate-unicode-properties
 Vcs-Git: https://salsa.debian.org/js-team/node-regenerate-unicode-properties.git
 Vcs-Browser: https://salsa.debian.org/js-team/node-regenerate-unicode-properties
 
 Package: node-regenerate-unicode-properties
 Architecture: all
+Multi-Arch: foreign
 Depends: nodejs (>= 6), ${misc:Depends}
 Description: Unicode properties and values as Regenerate sets for Node.js
  This package provides Unicode properties and values as Regenerate sets,
diff --git a/package.json b/package.json
index 40c2112..84fe3ec 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "regenerate-unicode-properties",
-  "version": "7.0.0",
+  "version": "8.0.2",
   "description": "Regenerate sets for Unicode properties and values.",
   "homepage": "https://github.com/mathiasbynens/regenerate-unicode-properties";,
   "main": "index.js",
@@ -35,10 +35,10 @@
     "regenerate": "^1.4.0"
   },
   "devDependencies": {
-    "ava": "^0.25.0",
-    "fs-extra": "^6.0.1",
-    "jsesc": "^2.5.1",
-    "unicode-11.0.0": "^0.7.7",
+    "ava": "^1.2.1",
+    "fs-extra": "^7.0.1",
+    "jsesc": "^2.5.2",
+    "unicode-12.0.0": "^0.7.9",
     "unicode-canonical-property-names-ecmascript": "^1.0.4"
   },
   "scripts": {
diff --git a/tests/tests.js b/tests/tests.js
index f449cbe..e6d0d2d 100644
--- a/tests/tests.js
+++ b/tests/tests.js
@@ -2,7 +2,7 @@ import test from 'ava';
 import regenerate from 'regenerate';
 import matchLoosely from '../index.js';
 
-test(t => {
+test('regenerate-unicode-properties', t => {
 	t.true(
 		require('../Binary_Property/ASCII.js') instanceof regenerate
 	);

Reply to: