]> git.kaiwu.me - njs.git/log
njs.git
9 years agoArray.prototypes.includes() method.
Igor Sysoev [Tue, 25 Oct 2016 14:52:18 +0000 (17:52 +0300)]
Array.prototypes.includes() method.

9 years agoArray.prototype.lastIndexOf() and Array.prototype.indexOf() fixes.
Andrey Zelenkov [Mon, 24 Oct 2016 16:02:31 +0000 (19:02 +0300)]
Array.prototype.lastIndexOf() and Array.prototype.indexOf() fixes.

The fromIndex parameter processing in lastIndexOf() has been fixed.
The lastIndexOf() search algorithm has been optimized.
The njs_array_index_of() function has been removed.

In collaboration with Valentin Bartenev.

9 years agoIncomplete non-recursive parser has been removed.
Igor Sysoev [Mon, 24 Oct 2016 15:27:31 +0000 (18:27 +0300)]
Incomplete non-recursive parser has been removed.

9 years agoStyle unification of configure feature tests.
Igor Sysoev [Mon, 24 Oct 2016 14:29:27 +0000 (17:29 +0300)]
Style unification of configure feature tests.

9 years agoA build with -Werror=return-type has been fixed.
Igor Sysoev [Mon, 24 Oct 2016 14:23:00 +0000 (17:23 +0300)]
A build with -Werror=return-type has been fixed.

Patch by Piotr Sikora.

9 years agoA build with -Werror=old-style-definition has been fixed.
Igor Sysoev [Mon, 24 Oct 2016 14:16:10 +0000 (17:16 +0300)]
A build with -Werror=old-style-definition has been fixed.

Patch by Piotr Sikora.

9 years agoAdded tag 0.1.4 for changeset 508689c1fb94
Igor Sysoev [Mon, 24 Oct 2016 12:04:57 +0000 (15:04 +0300)]
Added tag 0.1.4 for changeset 508689c1fb94

9 years agoVersion 0.1.4. 0.1.4
Igor Sysoev [Mon, 24 Oct 2016 12:04:50 +0000 (15:04 +0300)]
Version 0.1.4.

9 years agonjs_array_realloc() has been changed to njs_array_expand().
Igor Sysoev [Mon, 24 Oct 2016 11:56:28 +0000 (14:56 +0300)]
njs_array_realloc() has been changed to njs_array_expand().

9 years agoArray creation and reallocation optimizations.
Igor Sysoev [Mon, 24 Oct 2016 11:12:12 +0000 (14:12 +0300)]
Array creation and reallocation optimizations.

9 years agoA fix in decodeURI() and decodeURIComponent() functions.
Igor Sysoev [Sat, 22 Oct 2016 17:24:32 +0000 (20:24 +0300)]
A fix in decodeURI() and decodeURIComponent() functions.

Found with afl-fuzz.

9 years agoA fix in Array.prototype.splice() function.
Igor Sysoev [Fri, 21 Oct 2016 20:03:02 +0000 (23:03 +0300)]
A fix in Array.prototype.splice() function.

Found with afl-fuzz.

9 years agoA fix in typeof function.
Andrey Zelenkov [Thu, 20 Oct 2016 14:12:42 +0000 (17:12 +0300)]
A fix in typeof function.

Found with afl-fuzz.

9 years agoArray.indexOf() and Array.lastIndexOf() have been fixed.
Igor Sysoev [Tue, 18 Oct 2016 14:44:01 +0000 (17:44 +0300)]
Array.indexOf() and Array.lastIndexOf() have been fixed.

9 years agoInvalid Unicode code point processing has been fixed.
Igor Sysoev [Tue, 18 Oct 2016 12:48:22 +0000 (15:48 +0300)]
Invalid Unicode code point processing has been fixed.

9 years agoA fix of function name usage.
Igor Sysoev [Tue, 18 Oct 2016 12:48:19 +0000 (15:48 +0300)]
A fix of function name usage.

9 years agoFixes in generating "continue" and "break" statements.
Igor Sysoev [Tue, 18 Oct 2016 12:48:13 +0000 (15:48 +0300)]
Fixes in generating "continue" and "break" statements.

9 years agoRelative addresses have been added to disassembler output.
Igor Sysoev [Mon, 17 Oct 2016 20:29:15 +0000 (23:29 +0300)]
Relative addresses have been added to disassembler output.

9 years agoStyle fixes.
Igor Sysoev [Mon, 17 Oct 2016 14:03:22 +0000 (17:03 +0300)]
Style fixes.

9 years agoFixes in various String methods which return part of string.
Igor Sysoev [Mon, 17 Oct 2016 13:42:31 +0000 (16:42 +0300)]
Fixes in various String methods which return part of string.

9 years agoObject argument in some Date methods was not checked.
Igor Sysoev [Fri, 14 Oct 2016 15:21:37 +0000 (18:21 +0300)]
Object argument in some Date methods was not checked.

9 years agoA fix of var declaration.
Igor Sysoev [Fri, 14 Oct 2016 15:12:36 +0000 (18:12 +0300)]
A fix of var declaration.

9 years agoA fix in Array.splice() function.
Igor Sysoev [Fri, 14 Oct 2016 14:21:35 +0000 (17:21 +0300)]
A fix in Array.splice() function.

9 years agoA fix in Array.slice() function.
Igor Sysoev [Wed, 12 Oct 2016 16:08:57 +0000 (19:08 +0300)]
A fix in Array.slice() function.

9 years agoConstructor function prototypes should be real functions.
Igor Sysoev [Tue, 11 Oct 2016 17:09:18 +0000 (20:09 +0300)]
Constructor function prototypes should be real functions.

9 years agoAccessing the global this object caused segfault.
Igor Sysoev [Tue, 11 Oct 2016 14:44:05 +0000 (17:44 +0300)]
Accessing the global this object caused segfault.

9 years agoSegfaults in the delete operator have been fixed.
Igor Sysoev [Tue, 11 Oct 2016 14:44:01 +0000 (17:44 +0300)]
Segfaults in the delete operator have been fixed.

9 years agoSegfaults in increment and decrement operators have been fixed.
Igor Sysoev [Tue, 11 Oct 2016 14:04:28 +0000 (17:04 +0300)]
Segfaults in increment and decrement operators have been fixed.

9 years agoSegfaults in Date have been fixed.
Igor Sysoev [Tue, 11 Oct 2016 10:01:41 +0000 (13:01 +0300)]
Segfaults in Date have been fixed.

9 years agoAdded tag 0.1.3 for changeset 360449773d51
Igor Sysoev [Mon, 10 Oct 2016 14:22:26 +0000 (17:22 +0300)]
Added tag 0.1.3 for changeset 360449773d51

9 years agoVersion 0.1.3. 0.1.3
Igor Sysoev [Mon, 10 Oct 2016 14:21:53 +0000 (17:21 +0300)]
Version 0.1.3.

9 years agoNow njs_vm_compile() returns all global functions via the export
Igor Sysoev [Mon, 10 Oct 2016 13:33:56 +0000 (16:33 +0300)]
Now njs_vm_compile() returns all global functions via the export
array.

9 years agoNow setting property of primitive type returns TypeError exception.
Igor Sysoev [Mon, 10 Oct 2016 10:08:40 +0000 (13:08 +0300)]
Now setting property of primitive type returns TypeError exception.

9 years agoA dead code found by Coverity Scan has been removed.
Igor Sysoev [Tue, 4 Oct 2016 08:28:29 +0000 (11:28 +0300)]
A dead code found by Coverity Scan has been removed.

9 years agoInclusive "new" operators and "new" operator calls without
Igor Sysoev [Fri, 30 Sep 2016 19:07:07 +0000 (22:07 +0300)]
Inclusive "new" operators and "new" operator calls without
parenthesis are supported.

9 years agoA "var" statement termination has been fixed.
Igor Sysoev [Fri, 30 Sep 2016 11:11:27 +0000 (14:11 +0300)]
A "var" statement termination has been fixed.

9 years agoStream js: js_access, js_preread, js_filter.
Roman Arutyunyan [Wed, 28 Sep 2016 16:52:05 +0000 (19:52 +0300)]
Stream js: js_access, js_preread, js_filter.

9 years agoA function stored in array could not be called.
Igor Sysoev [Mon, 26 Sep 2016 15:41:57 +0000 (18:41 +0300)]
A function stored in array could not be called.

9 years agoString processing unification using njs_string_length(),
Igor Sysoev [Mon, 26 Sep 2016 11:01:45 +0000 (14:01 +0300)]
String processing unification using njs_string_length(),
njs_utf8_t, and njs_regexp_utf8_t.

9 years agoThe cause of linker hanging on Linux/PPC64 has been
Igor Sysoev [Mon, 26 Sep 2016 11:01:39 +0000 (14:01 +0300)]
The cause of linker hanging on Linux/PPC64 has been
finally tracked down and thus only the aligment attribute
has been correctly disabled on this platform.

9 years agoA fix of possible sign extension overflow,
Igor Sysoev [Sun, 25 Sep 2016 07:54:51 +0000 (10:54 +0300)]
A fix of possible sign extension overflow,
the issue has been found by Coverity Scan.

9 years agoAll C feature attributes have been disabled for Linux/PPC64.
Igor Sysoev [Sat, 24 Sep 2016 19:13:31 +0000 (22:13 +0300)]
All C feature attributes have been disabled for Linux/PPC64.

9 years agoThe visibility attribute disabling in the commit af6c17324584
Igor Sysoev [Fri, 23 Sep 2016 08:59:58 +0000 (11:59 +0300)]
The visibility attribute disabling in the commit af6c17324584
had not resovled the issue.  So now it is enabled and the aligment
attribute has been disabled instead for Linux/PPC64.

9 years agoStyle and small miscellaneous fixes.
Igor Sysoev [Fri, 23 Sep 2016 08:59:56 +0000 (11:59 +0300)]
Style and small miscellaneous fixes.

9 years agoString.replace() function.
Igor Sysoev [Fri, 23 Sep 2016 08:59:48 +0000 (11:59 +0300)]
String.replace() function.

9 years agoReturning an intptr_t result by rbtree comparison function
Igor Sysoev [Thu, 15 Sep 2016 15:00:55 +0000 (18:00 +0300)]
Returning an intptr_t result by rbtree comparison function
decreases overhead required to implement correct addresses
comparison without result truncation.

9 years agoA fix of use-after-free memory bug.
Igor Sysoev [Thu, 15 Sep 2016 14:37:52 +0000 (17:37 +0300)]
A fix of use-after-free memory bug.

9 years agoFixed compilation of nginx njs module without stream or http.
Roman Arutyunyan [Thu, 15 Sep 2016 14:34:34 +0000 (17:34 +0300)]
Fixed compilation of nginx njs module without stream or http.

Additionally, support for nginx versions without dynamic modules is now dropped.

9 years agoStyle: express requirement to use PCRE via $ngx_module_libs.
Ruslan Ermilov [Thu, 15 Sep 2016 07:52:01 +0000 (10:52 +0300)]
Style: express requirement to use PCRE via $ngx_module_libs.

9 years agoAdded tag 0.1.2 for changeset 5b066b4db54c
Igor Sysoev [Tue, 13 Sep 2016 13:59:27 +0000 (16:59 +0300)]
Added tag 0.1.2 for changeset 5b066b4db54c

9 years agoVersion 0.1.2. 0.1.2
Igor Sysoev [Tue, 13 Sep 2016 13:59:09 +0000 (16:59 +0300)]
Version 0.1.2.

9 years agoFixed building by GCC 4.
Igor Sysoev [Tue, 13 Sep 2016 13:53:24 +0000 (16:53 +0300)]
Fixed building by GCC 4.

9 years agoConstructor function prototypes now have correct types and values.
Igor Sysoev [Tue, 13 Sep 2016 13:19:26 +0000 (16:19 +0300)]
Constructor function prototypes now have correct types and values.

9 years agoNow Date.parse() and Date() accept shortcut date strings.
Igor Sysoev [Thu, 1 Sep 2016 13:12:31 +0000 (16:12 +0300)]
Now Date.parse() and Date() accept shortcut date strings.

9 years agoAttribute visibility detection has been disabled.
Sergey Kandaurov [Thu, 1 Sep 2016 10:28:44 +0000 (13:28 +0300)]
Attribute visibility detection has been disabled.

Old GNU ld linker hangs on Linux ppc64le platform.

9 years agoA fix in decodeURI() and decodeURIComponent() functions.
Igor Sysoev [Wed, 31 Aug 2016 16:28:08 +0000 (19:28 +0300)]
A fix in decodeURI() and decodeURIComponent() functions.

9 years agoA fix in decodeURI() function.
Igor Sysoev [Wed, 31 Aug 2016 16:18:47 +0000 (19:18 +0300)]
A fix in decodeURI() function.

9 years agoA fix in decodeURI() and decodeURIComponent() functions.
Igor Sysoev [Wed, 31 Aug 2016 14:51:54 +0000 (17:51 +0300)]
A fix in decodeURI() and decodeURIComponent() functions.

9 years agoAn invalid value of Date object has been fixed.
Igor Sysoev [Wed, 31 Aug 2016 12:53:13 +0000 (15:53 +0300)]
An invalid value of Date object has been fixed.

9 years agoC language features have been enabled.
Igor Sysoev [Tue, 30 Aug 2016 09:11:24 +0000 (12:11 +0300)]
C language features have been enabled.

9 years agodecodeURI() and decodeURIComponent() functions.
Igor Sysoev [Tue, 30 Aug 2016 09:05:46 +0000 (12:05 +0300)]
decodeURI() and decodeURIComponent() functions.

9 years agoencodeURI() and encodeURIComponent() functions.
Igor Sysoev [Tue, 30 Aug 2016 09:02:31 +0000 (12:02 +0300)]
encodeURI() and encodeURIComponent() functions.

9 years agoAdded tag 0.1.1 for changeset 0039a747d25a
Igor Sysoev [Tue, 16 Aug 2016 16:13:41 +0000 (19:13 +0300)]
Added tag 0.1.1 for changeset 0039a747d25a

9 years agoVersion 0.1.1. 0.1.1
Igor Sysoev [Tue, 16 Aug 2016 16:09:03 +0000 (19:09 +0300)]
Version 0.1.1.

9 years agoString.match() fixes.
Igor Sysoev [Tue, 16 Aug 2016 15:58:30 +0000 (18:58 +0300)]
String.match() fixes.

9 years agoStyle fixes.
Igor Sysoev [Tue, 16 Aug 2016 15:09:35 +0000 (18:09 +0300)]
Style fixes.

9 years agoA return statement has been disabled outside of function.
Igor Sysoev [Mon, 15 Aug 2016 08:33:37 +0000 (11:33 +0300)]
A return statement has been disabled outside of function.

9 years agoArray iterator functions optimizations.
Igor Sysoev [Thu, 11 Aug 2016 10:57:36 +0000 (13:57 +0300)]
Array iterator functions optimizations.

9 years agoArray.join() now treats "null" and "undefined" as empty values.
Igor Sysoev [Thu, 11 Aug 2016 10:21:46 +0000 (13:21 +0300)]
Array.join() now treats "null" and "undefined" as empty values.

9 years agoArray.sort() function.
Igor Sysoev [Thu, 11 Aug 2016 07:58:29 +0000 (10:58 +0300)]
Array.sort() function.

9 years agoArray.splice() function.
Igor Sysoev [Wed, 10 Aug 2016 15:03:54 +0000 (18:03 +0300)]
Array.splice() function.

9 years agoArray.indexOf() and Array.lastIndexOf() functions.
Igor Sysoev [Wed, 10 Aug 2016 12:52:25 +0000 (15:52 +0300)]
Array.indexOf() and Array.lastIndexOf() functions.

9 years agoArray.isArray() function.
Igor Sysoev [Wed, 10 Aug 2016 08:57:56 +0000 (11:57 +0300)]
Array.isArray() function.

9 years agoArray.reduceRight() function.
Igor Sysoev [Tue, 9 Aug 2016 11:10:33 +0000 (14:10 +0300)]
Array.reduceRight() function.

9 years agoArray.reduce() function.
Igor Sysoev [Tue, 9 Aug 2016 11:10:32 +0000 (14:10 +0300)]
Array.reduce() function.

9 years agoArray.map() function.
Igor Sysoev [Tue, 9 Aug 2016 11:10:31 +0000 (14:10 +0300)]
Array.map() function.

9 years agoArray.filter() function.
Igor Sysoev [Tue, 9 Aug 2016 11:10:29 +0000 (14:10 +0300)]
Array.filter() function.

9 years agoArray iterator functions update.
Igor Sysoev [Tue, 9 Aug 2016 11:10:21 +0000 (14:10 +0300)]
Array iterator functions update.

9 years agonxt_trace.o has been added to the libnjs.
Igor Sysoev [Thu, 4 Aug 2016 13:59:15 +0000 (16:59 +0300)]
nxt_trace.o has been added to the libnjs.

9 years agoThe lvlhsh unit test has been updated after nxt_str_t changes.
Igor Sysoev [Thu, 4 Aug 2016 13:31:48 +0000 (16:31 +0300)]
The lvlhsh unit test has been updated after nxt_str_t changes.

9 years agonxt_trace files have been missed in the previous commit.
Igor Sysoev [Thu, 4 Aug 2016 13:27:38 +0000 (16:27 +0300)]
nxt_trace files have been missed in the previous commit.

9 years agonxt_trace interface. nxt_regex, RegExp, and parser use it now.
Igor Sysoev [Thu, 4 Aug 2016 13:05:38 +0000 (16:05 +0300)]
nxt_trace interface. nxt_regex, RegExp, and parser use it now.

9 years agonxt_str_t changes.
Igor Sysoev [Thu, 4 Aug 2016 11:45:27 +0000 (14:45 +0300)]
nxt_str_t changes.

9 years agonjs_parser_is_lvalue().
Igor Sysoev [Thu, 4 Aug 2016 11:43:20 +0000 (14:43 +0300)]
njs_parser_is_lvalue().

9 years agoSegfaults have been fixed when incorrect operands were used
Igor Sysoev [Tue, 26 Jul 2016 13:25:58 +0000 (16:25 +0300)]
Segfaults have been fixed when incorrect operands were used
in left-hand side expressions.

9 years agoA dist target in Makefile.
Igor Sysoev [Tue, 26 Jul 2016 12:09:07 +0000 (15:09 +0300)]
A dist target in Makefile.

9 years agoRemoved tag help from .hgtags
Igor Sysoev [Mon, 25 Jul 2016 12:34:53 +0000 (15:34 +0300)]
Removed tag help from .hgtags

9 years agoRemoved tag help
Igor Sysoev [Mon, 25 Jul 2016 12:17:51 +0000 (15:17 +0300)]
Removed tag help

9 years agoAdded tag 0.1.0 for changeset cdb8d20935ee
Igor Sysoev [Fri, 22 Jul 2016 14:00:05 +0000 (17:00 +0300)]
Added tag 0.1.0 for changeset cdb8d20935ee

9 years agoDuplicate function names are disabled. 0.1.0
Igor Sysoev [Fri, 22 Jul 2016 11:38:06 +0000 (14:38 +0300)]
Duplicate function names are disabled.

9 years agoNow a make command does not fail for obscure reason at
Igor Sysoev [Fri, 22 Jul 2016 11:15:54 +0000 (14:15 +0300)]
Now a make command does not fail for obscure reason at
the very start or after "make clean" command but it offers
to run the ./configure command instead.  This change is
not compatible with BSD PMake which does not support both
"-include" and "sinclude" directives but only ".sinclude"
directive so GNU Make should be used.

9 years agoA line number in error messages was incorrect if a script
Igor Sysoev [Thu, 21 Jul 2016 18:42:58 +0000 (21:42 +0300)]
A line number in error messages was incorrect if a script
has comments.

9 years agoA fix of code generation of logical operations.
Igor Sysoev [Thu, 21 Jul 2016 18:37:46 +0000 (21:37 +0300)]
A fix of code generation of logical operations.

9 years agonjs_vm_function() must return only function.
Igor Sysoev [Thu, 21 Jul 2016 17:51:22 +0000 (20:51 +0300)]
njs_vm_function() must return only function.

9 years agoFixed closing file descriptor on error.
Roman Arutyunyan [Thu, 21 Jul 2016 08:39:00 +0000 (11:39 +0300)]
Fixed closing file descriptor on error.

Found by Coverity (CID 1364196136419713641981364199).

9 years agoUpdated README.
Roman Arutyunyan [Wed, 20 Jul 2016 18:40:34 +0000 (21:40 +0300)]
Updated README.

9 years agoUpdated README to reflect changes in HTTP and Stream modules.
Roman Arutyunyan [Wed, 20 Jul 2016 16:38:00 +0000 (19:38 +0300)]
Updated README to reflect changes in HTTP and Stream modules.

9 years agoStream njs module.
Roman Arutyunyan [Wed, 20 Jul 2016 15:20:17 +0000 (18:20 +0300)]
Stream njs module.

9 years agoNew http js module syntax.
Roman Arutyunyan [Wed, 20 Jul 2016 15:20:13 +0000 (18:20 +0300)]
New http js module syntax.

- the js_include directive is introduced
- all js code is now located in a separate file

9 years agonjs_vm_function() and njs_vm_external() functions name and
Igor Sysoev [Fri, 15 Jul 2016 12:50:13 +0000 (15:50 +0300)]
njs_vm_function() and njs_vm_external() functions name and
behavior unification.  The function can be used with both
original compiled VM and its clones.