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

10 years agoFixed building by GCC 4.8.
Igor Sysoev [Thu, 25 Feb 2016 06:29:07 +0000 (09:29 +0300)]
Fixed building by GCC 4.8.

10 years agoDeclared function objects are copied on demand to allow
Igor Sysoev [Tue, 23 Feb 2016 18:09:42 +0000 (21:09 +0300)]
Declared function objects are copied on demand to allow
property manipulations and to have correct Function.prototype.

10 years agoCommon parts of Function.call() and Function.apply() have
Igor Sysoev [Mon, 22 Feb 2016 09:39:31 +0000 (12:39 +0300)]
Common parts of Function.call() and Function.apply() have
been merged.

10 years agoFunctions rearrangement.
Igor Sysoev [Mon, 22 Feb 2016 09:26:42 +0000 (12:26 +0300)]
Functions rearrangement.

10 years agoThe "args" has been removed from njs_vmcode_t.
Igor Sysoev [Sun, 21 Feb 2016 21:06:59 +0000 (00:06 +0300)]
The "args" has been removed from njs_vmcode_t.

10 years agoContinuations have been refactored.
Igor Sysoev [Sun, 21 Feb 2016 21:06:53 +0000 (00:06 +0300)]
Continuations have been refactored.

10 years agonjs_function_previous_frame() and njs_function_frame_free().
Igor Sysoev [Sun, 21 Feb 2016 21:06:40 +0000 (00:06 +0300)]
njs_function_previous_frame() and njs_function_frame_free().

10 years agoFunction.bind() implementation.
Igor Sysoev [Mon, 15 Feb 2016 14:31:59 +0000 (17:31 +0300)]
Function.bind() implementation.

10 years agonjs_param_t removal.
Igor Sysoev [Sun, 14 Feb 2016 18:49:15 +0000 (21:49 +0300)]
njs_param_t removal.

10 years agoThe "this" has been removed from njs_param_t.
Igor Sysoev [Fri, 12 Feb 2016 10:40:36 +0000 (13:40 +0300)]
The "this" has been removed from njs_param_t.

10 years agoFunction.apply() works with continuation.
Igor Sysoev [Thu, 11 Feb 2016 15:42:21 +0000 (18:42 +0300)]
Function.apply() works with continuation.

10 years agonjs_function_apply() interface is changed.
Igor Sysoev [Thu, 11 Feb 2016 15:42:06 +0000 (18:42 +0300)]
njs_function_apply() interface is changed.

10 years agoObsolete functions removal.
Igor Sysoev [Thu, 11 Feb 2016 15:10:34 +0000 (18:10 +0300)]
Obsolete functions removal.

10 years agoObsolete function removal.
Igor Sysoev [Thu, 11 Feb 2016 14:44:53 +0000 (17:44 +0300)]
Obsolete function removal.

10 years agoArray.join() optimization.
Igor Sysoev [Thu, 11 Feb 2016 08:36:14 +0000 (11:36 +0300)]
Array.join() optimization.

10 years agoDisassembler fixes.
Igor Sysoev [Wed, 10 Feb 2016 16:52:23 +0000 (19:52 +0300)]
Disassembler fixes.

10 years agoFixed argument convertion to integer.
Igor Sysoev [Wed, 10 Feb 2016 16:18:28 +0000 (19:18 +0300)]
Fixed argument convertion to integer.

10 years agoFixed building on Solaris by SunC.
Igor Sysoev [Wed, 10 Feb 2016 16:18:22 +0000 (19:18 +0300)]
Fixed building on Solaris by SunC.

10 years agoLogical AND and OR operations support short-circuit evaluation.
Igor Sysoev [Tue, 9 Feb 2016 15:17:22 +0000 (18:17 +0300)]
Logical AND and OR operations support short-circuit evaluation.

10 years agoSegfault has been fixed when "if" operator has an empty "then"
Igor Sysoev [Mon, 8 Feb 2016 15:18:24 +0000 (18:18 +0300)]
Segfault has been fixed when "if" operator has an empty "then"
branch.

10 years agoA whole native frame is zeroed.
Igor Sysoev [Mon, 8 Feb 2016 15:18:09 +0000 (18:18 +0300)]
A whole native frame is zeroed.

10 years agoNative function continuation support.
Igor Sysoev [Mon, 8 Feb 2016 14:41:09 +0000 (17:41 +0300)]
Native function continuation support.

10 years agoTraps for native method arguments.
Igor Sysoev [Wed, 3 Feb 2016 14:47:41 +0000 (17:47 +0300)]
Traps for native method arguments.

10 years agoProperties and prototypes of objects created by Boolean(),
Igor Sysoev [Wed, 3 Feb 2016 13:53:15 +0000 (16:53 +0300)]
Properties and prototypes of objects created by Boolean(),
Number(), and String() constructors have been fixed.

10 years agoStyle and small miscellaneous fixes.
Igor Sysoev [Wed, 3 Feb 2016 12:03:30 +0000 (15:03 +0300)]
Style and small miscellaneous fixes.

10 years agoAn additional trap frame has been removed, the trap values are
Igor Sysoev [Mon, 25 Jan 2016 12:17:00 +0000 (15:17 +0300)]
An additional trap frame has been removed, the trap values are
stored just in native function frame.

10 years agonJSVM current instruction pointer is updated now in
Igor Sysoev [Mon, 25 Jan 2016 12:15:00 +0000 (15:15 +0300)]
nJSVM current instruction pointer is updated now in
njs_function_call().

10 years agoExternal methods now have njs_function_t structure.
Igor Sysoev [Mon, 25 Jan 2016 12:14:00 +0000 (15:14 +0300)]
External methods now have njs_function_t structure.

10 years agoNative function local data size has been moved to njs_function_t.
Igor Sysoev [Wed, 20 Jan 2016 17:35:00 +0000 (20:35 +0300)]
Native function local data size has been moved to njs_function_t.

10 years agoUsing C99 syntax for static structures initializaion.
Igor Sysoev [Mon, 18 Jan 2016 17:02:35 +0000 (20:02 +0300)]
Using C99 syntax for static structures initializaion.

10 years agoSegfault has been fixed when global frame was skipped on
Igor Sysoev [Thu, 14 Jan 2016 08:36:33 +0000 (11:36 +0300)]
Segfault has been fixed when global frame was skipped on
function return because of uninitialized frame skip flag.
Thanks to 洪志道 (Hong Zhi Dao).

10 years agoSegfaults are fixed when non-existent external object property was
Igor Sysoev [Wed, 13 Jan 2016 16:11:36 +0000 (19:11 +0300)]
Segfaults are fixed when non-existent external object property was
accessed or when existent property does not support operation.

10 years agoSegfault is fixed when script is terminated by unbalanced
Igor Sysoev [Tue, 12 Jan 2016 17:09:33 +0000 (20:09 +0300)]
Segfault is fixed when script is terminated by unbalanced
closing brace.

10 years agoSegfault is fixed when the last return in function is terminated
Igor Sysoev [Tue, 12 Jan 2016 16:47:29 +0000 (19:47 +0300)]
Segfault is fixed when the last return in function is terminated
by semicolon.

10 years ago2016 year.
Igor Sysoev [Sat, 2 Jan 2016 17:41:21 +0000 (20:41 +0300)]
2016 year.

10 years agoObject to external string convertion.
Igor Sysoev [Sun, 27 Dec 2015 12:26:11 +0000 (15:26 +0300)]
Object to external string convertion.

10 years agoObject to primitive value convertion traps have been fixed.
Igor Sysoev [Sun, 27 Dec 2015 12:26:08 +0000 (15:26 +0300)]
Object to primitive value convertion traps have been fixed.

10 years agoFunctions rearrangement.
Igor Sysoev [Sun, 27 Dec 2015 12:26:06 +0000 (15:26 +0300)]
Functions rearrangement.

10 years agoStyle and small miscellaneous fixes.
Igor Sysoev [Sun, 27 Dec 2015 12:26:04 +0000 (15:26 +0300)]
Style and small miscellaneous fixes.

10 years agoFixed building on some 32-bit platforms.
Igor Sysoev [Sun, 27 Dec 2015 12:24:13 +0000 (15:24 +0300)]
Fixed building on some 32-bit platforms.

10 years agoThe "break" and "continue" statements did not work on big endian
Igor Sysoev [Sun, 27 Dec 2015 12:23:57 +0000 (15:23 +0300)]
The "break" and "continue" statements did not work on big endian
platforms.

10 years agoChange of special return values handled by nJSVM interpreter.
Igor Sysoev [Wed, 23 Dec 2015 07:23:45 +0000 (10:23 +0300)]
Change of special return values handled by nJSVM interpreter.

10 years agoThe "switch" statement.
Igor Sysoev [Tue, 15 Dec 2015 17:17:10 +0000 (20:17 +0300)]
The "switch" statement.

10 years agoSupport of "continue" and "break" statements without labels
Igor Sysoev [Tue, 15 Dec 2015 13:46:00 +0000 (16:46 +0300)]
Support of "continue" and "break" statements without labels
in loops.

10 years agoComma expressions, statement sequences, and njs_vmcode_stop
Igor Sysoev [Tue, 15 Dec 2015 13:45:56 +0000 (16:45 +0300)]
Comma expressions, statement sequences, and njs_vmcode_stop
changes.

10 years agoArray enumeration changes.
Igor Sysoev [Sat, 12 Dec 2015 21:00:40 +0000 (00:00 +0300)]
Array enumeration changes.

10 years agoProperty enumeration changes.
Igor Sysoev [Sat, 12 Dec 2015 21:00:30 +0000 (00:00 +0300)]
Property enumeration changes.

10 years agoCode generator updates.
Igor Sysoev [Sat, 12 Dec 2015 21:00:21 +0000 (00:00 +0300)]
Code generator updates.

10 years ago"var" statement fixed.
Igor Sysoev [Fri, 11 Dec 2015 15:41:40 +0000 (18:41 +0300)]
"var" statement fixed.

10 years agoparam->object was changed to param->this.
Igor Sysoev [Fri, 11 Dec 2015 15:41:30 +0000 (18:41 +0300)]
param->object was changed to param->this.

10 years agoArray.toString() fixed.
Igor Sysoev [Fri, 11 Dec 2015 15:41:20 +0000 (18:41 +0300)]
Array.toString() fixed.

10 years agoRiddance of NJS_NATIVE type.
Igor Sysoev [Fri, 11 Dec 2015 15:41:10 +0000 (18:41 +0300)]
Riddance of NJS_NATIVE type.

10 years agoFunctions refactored.
Igor Sysoev [Fri, 11 Dec 2015 15:41:00 +0000 (18:41 +0300)]
Functions refactored.

10 years agoThe "return" statement without arguments fixed.
Igor Sysoev [Mon, 7 Dec 2015 08:59:33 +0000 (11:59 +0300)]
The "return" statement without arguments fixed.

10 years agoBuiltin objects refactored.
Igor Sysoev [Sat, 28 Nov 2015 09:18:10 +0000 (12:18 +0300)]
Builtin objects refactored.

10 years agoStyle and small miscellaneous fixes.
Igor Sysoev [Wed, 25 Nov 2015 14:22:45 +0000 (17:22 +0300)]
Style and small miscellaneous fixes.

10 years agonJSVM disassembler changes.
Igor Sysoev [Wed, 25 Nov 2015 14:22:41 +0000 (17:22 +0300)]
nJSVM disassembler changes.

10 years agoeval() placeholders update.
Igor Sysoev [Mon, 23 Nov 2015 19:37:01 +0000 (22:37 +0300)]
eval() placeholders update.

10 years agoString.toString() and String.valueOf() methods.
Igor Sysoev [Mon, 23 Nov 2015 19:36:59 +0000 (22:36 +0300)]
String.toString() and String.valueOf() methods.

10 years ago"instanceof" fixes.
Igor Sysoev [Mon, 23 Nov 2015 19:36:56 +0000 (22:36 +0300)]
"instanceof" fixes.

10 years agoBoolean objects support.
Igor Sysoev [Mon, 23 Nov 2015 19:36:52 +0000 (22:36 +0300)]
Boolean objects support.

10 years ago__proto__ property fixes.
Igor Sysoev [Mon, 23 Nov 2015 19:34:24 +0000 (22:34 +0300)]
__proto__ property fixes.

10 years agoEmpty array elements support.
Igor Sysoev [Mon, 23 Nov 2015 12:35:49 +0000 (15:35 +0300)]
Empty array elements support.