]> git.kaiwu.me - njs.git/log
njs.git
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.

9 years agonjs_vm_function() interface to get a function by name.
Igor Sysoev [Thu, 14 Jul 2016 16:24:51 +0000 (19:24 +0300)]
njs_vm_function() interface to get a function by name.

9 years agoSyntax error messages are more verbose and have line number.
Igor Sysoev [Wed, 13 Jul 2016 10:56:12 +0000 (13:56 +0300)]
Syntax error messages are more verbose and have line number.

9 years agoFixed building by modern GCC versions.
Igor Sysoev [Mon, 11 Jul 2016 12:24:29 +0000 (15:24 +0300)]
Fixed building by modern GCC versions.

9 years agoNeedless argument checkers for String.toLowerCase()
Igor Sysoev [Fri, 8 Jul 2016 15:13:00 +0000 (18:13 +0300)]
Needless argument checkers for String.toLowerCase()
and String.toUpperCase() have been removed.

9 years agoNow ASCII strings use UTF8 variant of PCRE code.
Igor Sysoev [Fri, 8 Jul 2016 15:07:57 +0000 (18:07 +0300)]
Now ASCII strings use UTF8 variant of PCRE code.

9 years agoByte string processing was fixed in String.split(),
Igor Sysoev [Thu, 7 Jul 2016 17:49:57 +0000 (20:49 +0300)]
Byte string processing was fixed in String.split(),
the issue has been found by Coverity Scan.

9 years agoArray.reverse() method.
Igor Sysoev [Wed, 29 Jun 2016 10:38:20 +0000 (13:38 +0300)]
Array.reverse() method.

9 years agoString.split() method.
Igor Sysoev [Tue, 28 Jun 2016 16:28:00 +0000 (19:28 +0300)]
String.split() method.

9 years agoUsing nxt_regex interface in nJSVM.
Igor Sysoev [Wed, 1 Jun 2016 12:31:34 +0000 (15:31 +0300)]
Using nxt_regex interface in nJSVM.

9 years agoPCRE code is available via nxt_regex interface.
Igor Sysoev [Wed, 1 Jun 2016 12:30:50 +0000 (15:30 +0300)]
PCRE code is available via nxt_regex interface.

10 years agoFix in String.indexOf() and String.lastIndexOf() functions.
Igor Sysoev [Fri, 29 Apr 2016 14:02:52 +0000 (17:02 +0300)]
Fix in String.indexOf() and String.lastIndexOf() functions.

10 years agoparseFloat() function.
Igor Sysoev [Mon, 25 Apr 2016 16:30:27 +0000 (19:30 +0300)]
parseFloat() function.

10 years agoparseInt() function.
Igor Sysoev [Mon, 25 Apr 2016 14:28:34 +0000 (17:28 +0300)]
parseInt() function.

10 years agoisFinite() function.
Igor Sysoev [Thu, 21 Apr 2016 15:23:16 +0000 (18:23 +0300)]
isFinite() function.

10 years agoisNaN() function.
Igor Sysoev [Thu, 21 Apr 2016 15:23:12 +0000 (18:23 +0300)]
isNaN() function.

10 years agoGlobal toString() function.
Igor Sysoev [Thu, 21 Apr 2016 12:57:05 +0000 (15:57 +0300)]
Global toString() function.

10 years agoReserverd words can be used as property names.
Igor Sysoev [Wed, 20 Apr 2016 15:30:31 +0000 (18:30 +0300)]
Reserverd words can be used as property names.

10 years agoeval() placeholder has been moved from the constructor table
Igor Sysoev [Tue, 19 Apr 2016 13:08:32 +0000 (16:08 +0300)]
eval() placeholder has been moved from the constructor table
to the shared function table.

10 years agonjs_string_new().
Igor Sysoev [Tue, 19 Apr 2016 13:07:33 +0000 (16:07 +0300)]
njs_string_new().

10 years agoNumber.toString(radix).
Igor Sysoev [Tue, 19 Apr 2016 14:26:25 +0000 (17:26 +0300)]
Number.toString(radix).

10 years agoString.toUpperCase().
Igor Sysoev [Fri, 15 Apr 2016 15:01:40 +0000 (18:01 +0300)]
String.toUpperCase().

10 years agoString.toLowerCase().
Igor Sysoev [Fri, 15 Apr 2016 15:01:19 +0000 (18:01 +0300)]
String.toLowerCase().

10 years ago"new Date()" incorrectly returned always Jan 1, 1970.
Igor Sysoev [Thu, 14 Apr 2016 15:23:09 +0000 (18:23 +0300)]
"new Date()" incorrectly returned always Jan 1, 1970.

10 years agoString.fromCharCode() and String.fromCodePoint().
Igor Sysoev [Mon, 11 Apr 2016 11:39:59 +0000 (14:39 +0300)]
String.fromCharCode() and String.fromCodePoint().

10 years agoOld array data are freed after array relocation.
Igor Sysoev [Sat, 9 Apr 2016 09:21:31 +0000 (12:21 +0300)]
Old array data are freed after array relocation.

10 years agoSegfault has been fixed when array element was added
Igor Sysoev [Sat, 9 Apr 2016 09:18:47 +0000 (12:18 +0300)]
Segfault has been fixed when array element was added
with assignment.

10 years agoForgotten nxt/nxt_time.h file has been added.
Igor Sysoev [Fri, 8 Apr 2016 15:59:06 +0000 (18:59 +0300)]
Forgotten nxt/nxt_time.h file has been added.

10 years agoDate() function.
Igor Sysoev [Fri, 8 Apr 2016 15:19:43 +0000 (18:19 +0300)]
Date() function.

10 years agoA fast exit from argument normalization loop.
Igor Sysoev [Tue, 29 Mar 2016 10:38:18 +0000 (13:38 +0300)]
A fast exit from argument normalization loop.
This also fixes an issue when SunC 5.9 does not set
omitted array elements to a zero.

10 years agoFixed building on Solaris by SunC.
Igor Sysoev [Mon, 28 Mar 2016 14:34:42 +0000 (17:34 +0300)]
Fixed building on Solaris by SunC.

10 years agoMiscellaneous issues found by Coverity Scan have been fixed.
Igor Sysoev [Thu, 24 Mar 2016 14:13:27 +0000 (17:13 +0300)]
Miscellaneous issues found by Coverity Scan have been fixed.

10 years agoIssues found by Coverity Scan in Regex have been fixed.
Igor Sysoev [Thu, 24 Mar 2016 11:22:08 +0000 (14:22 +0300)]
Issues found by Coverity Scan in Regex have been fixed.

10 years agoIssues found by Coverity Scan in String.match() have been fixed.
Igor Sysoev [Thu, 24 Mar 2016 10:57:06 +0000 (13:57 +0300)]
Issues found by Coverity Scan in String.match() have been fixed.

10 years agoUser defined function prototype.
Igor Sysoev [Wed, 23 Mar 2016 12:49:49 +0000 (15:49 +0300)]
User defined function prototype.

10 years agoMath.random() method.
Igor Sysoev [Wed, 23 Mar 2016 12:49:46 +0000 (15:49 +0300)]
Math.random() method.

10 years agoMath object.
Igor Sysoev [Wed, 23 Mar 2016 12:27:14 +0000 (15:27 +0300)]
Math object.

10 years agoStyle and small miscellaneous fixes.
Igor Sysoev [Wed, 23 Mar 2016 12:27:10 +0000 (15:27 +0300)]
Style and small miscellaneous fixes.

10 years agoAn option how to build njs module dynamically provided.
Maxim Konovalov [Wed, 23 Mar 2016 09:10:44 +0000 (12:10 +0300)]
An option how to build njs module dynamically provided.

10 years agoFixed building by GCC 4.1.
Igor Sysoev [Fri, 4 Mar 2016 11:57:21 +0000 (14:57 +0300)]
Fixed building by GCC 4.1.

10 years agonjs_vm_call() interface to call a function outside.
Igor Sysoev [Wed, 2 Mar 2016 12:10:28 +0000 (15:10 +0300)]
njs_vm_call() interface to call a function outside.
nginx content and variable handlers interface is

    function name(request, response) { ... }

Variable handler use a value returned by function as value of the variable.

10 years agoImplemented support for dynamic modules.
Ruslan Ermilov [Thu, 25 Feb 2016 13:32:47 +0000 (16:32 +0300)]
Implemented support for dynamic modules.

10 years agoFixed building on Solaris by SunC.
Igor Sysoev [Thu, 25 Feb 2016 08:14:22 +0000 (11:14 +0300)]
Fixed building on Solaris by SunC.