[njs] Version 0.1.5.
details: http://hg.nginx.org/njs/rev/9c813c2bb2ac branches: changeset: 255:9c813c2bb2ac user: Igor Sysoevdate: Tue Nov 15 18:28:18 2016 +0300 description: Version 0.1.5. diffstat: Makefile | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diffs (10 lines): diff -r d2ab98ea87ad -r 9c813c2bb2ac Makefile --- a/Makefile Tue Nov 15 17:43:05 2016 +0300 +++ b/Makefile Tue Nov 15 18:28:18 2016 +0300 @@ -1,5 +1,5 @@ -NJS_VER = 0.1.4 +NJS_VER = 0.1.5 NXT_LIB = nxt ___ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel
[njs] Added tag 0.1.5 for changeset 9c813c2bb2ac
details: http://hg.nginx.org/njs/rev/9b9f46b55de2 branches: changeset: 256:9b9f46b55de2 user: Igor Sysoevdate: Tue Nov 15 18:28:35 2016 +0300 description: Added tag 0.1.5 for changeset 9c813c2bb2ac diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 9c813c2bb2ac -r 9b9f46b55de2 .hgtags --- a/.hgtags Tue Nov 15 18:28:18 2016 +0300 +++ b/.hgtags Tue Nov 15 18:28:35 2016 +0300 @@ -3,3 +3,4 @@ 0039a747d25a3e08792c23c43b75768896724031 5b066b4db54c17dc0a9a72948474f36957462e87 0.1.2 360449773d51e7f451e5396e27021badc6b86085 0.1.3 508689c1fb94c23f6b24be087c1dc63b2f9e6654 0.1.4 +9c813c2bb2acfd5b6e9d1e9b6699af928baea15a 0.1.5 ___ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel
[nginx] nginx-1.11.6-RELEASE
details: http://hg.nginx.org/nginx/rev/5e371426b3bc branches: changeset: 6801:5e371426b3bc user: Maxim Dounindate: Tue Nov 15 18:11:46 2016 +0300 description: nginx-1.11.6-RELEASE diffstat: docs/xml/nginx/changes.xml | 130 + 1 files changed, 130 insertions(+), 0 deletions(-) diffs (140 lines): diff --git a/docs/xml/nginx/changes.xml b/docs/xml/nginx/changes.xml --- a/docs/xml/nginx/changes.xml +++ b/docs/xml/nginx/changes.xml @@ -5,6 +5,136 @@ + + + + +формат переменных $ssl_client_s_dn и $ssl_client_i_dn +изменён на соответствующий RFC 2253 (RFC 4514); +значения в старом формате доступны через переменные +$ssl_client_s_dn_legacy и $ssl_client_i_dn_legacy. + + +format of the $ssl_client_s_dn and $ssl_client_i_dn variables +has been changed to follow RFC 2253 (RFC 4514); +values in the old format are available in +the $ssl_client_s_dn_legacy and $ssl_client_i_dn_legacy variables. + + + + + +при сохранении временных файлов в каталоге кэша +они теперь располагаются не в отдельном подкаталоге для временных файлов, +а в том же подкаталоге, что и соответствующие файлы в кэше. + + +when storing temporary files in a cache directory +they will be stored in the same subdirectories as corresponding cache files +instead of a separate subdirectory for temporary files. + + + + + +поддержка метода аутентификации EXTERNAL +в почтовом прокси-сервере. +Спасибо Robert Norris. + + +EXTERNAL authentication mechanism support +in mail proxy. +Thanks to Robert Norris. + + + + + +поддержка WebP в модуле ngx_http_image_filter_module. + + +WebP support in the ngx_http_image_filter_module. + + + + + +директива proxy_method поддерживает переменные. +Спасибо Дмитрию Лазуркину. + + +variables support in the "proxy_method" directive. +Thanks to Dmitry Lazurkin. + + + + + +директива http2_max_requests в модуле ngx_http_v2_module. + + +the "http2_max_requests" directive in the ngx_http_v2_module. + + + + + +директивы proxy_cache_max_range_offset, fastcgi_cache_max_range_offset, +scgi_cache_max_range_offset и uwsgi_cache_max_range_offset. + + +the "proxy_cache_max_range_offset", "fastcgi_cache_max_range_offset", +"scgi_cache_max_range_offset", and "uwsgi_cache_max_range_offset" directives. + + + + + +плавное завершение старых рабочих процессов могло занимать бесконечное время +при использовании HTTP/2. + + +graceful shutdown of old worker processes might require infinite time +when using HTTP/2. + + + + + +в модуле ngx_http_mp4_module. + + +in the ngx_http_mp4_module. + + + + + +при проксировании WebSocket-соединений и включённом кэшировании +в логах могли появляться сообщения "ignore long locked inactive cache entry". + + +"ignore long locked inactive cache entry" alerts might appear in logs +when proxying WebSocket connections with caching enabled. + + + + + +если во время SSL handshake с бэкендом происходил таймаут, +nginx ничего не писал в лог +и возвращал ответ с кодом 502 вместо 504. + + +nginx did not write anything to log +and returned a response with code 502 instead of 504 +when a timeout occurred during an SSL handshake to a backend. + + + + + + ___ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel
[nginx] release-1.11.6 tag
details: http://hg.nginx.org/nginx/rev/6a26016e9a13 branches: changeset: 6802:6a26016e9a13 user: Maxim Dounindate: Tue Nov 15 18:11:46 2016 +0300 description: release-1.11.6 tag diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -404,3 +404,4 @@ 4d3b3a13a8cf5fc3351a7f167d1c13325e00f21c b83a067949a3384a49fd3d943eb8d0997b31f87b release-1.11.3 953512ca02c6f63b4fcbbc3e10d0d9835896bf99 release-1.11.4 5253015a339aaca0a3111473d3e931b6d4752393 release-1.11.5 +5e371426b3bcba4312ce08606194b89b758927d1 release-1.11.6 ___ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel
[njs] Native methods and non-constructor functions must throw
details: http://hg.nginx.org/njs/rev/d2ab98ea87ad branches: changeset: 254:d2ab98ea87ad user: Igor Sysoevdate: Tue Nov 15 17:43:05 2016 +0300 description: Native methods and non-constructor functions must throw TypeError exception if they are called as constructor. diffstat: njs/njs_builtin.c| 1 + njs/njs_vm.c | 22 +- njs/njs_vm.h | 16 +++- njs/test/njs_unit_test.c | 6 ++ 4 files changed, 27 insertions(+), 18 deletions(-) diffs (127 lines): diff -r 91640c0405f4 -r d2ab98ea87ad njs/njs_builtin.c --- a/njs/njs_builtin.c Fri Nov 11 18:12:13 2016 +0300 +++ b/njs/njs_builtin.c Tue Nov 15 17:43:05 2016 +0300 @@ -237,6 +237,7 @@ njs_builtin_objects_create(njs_vm_t *vm) for (i = NJS_CONSTRUCTOR_OBJECT; i < NJS_CONSTRUCTOR_MAX; i++) { constructors[i].object.shared = 0; constructors[i].native = 1; +constructors[i].ctor = 1; constructors[i].args_offset = 1; constructors[i].u.native = native_constructors[i].native; constructors[i].args_types[0] = native_constructors[i].args_types[0]; diff -r 91640c0405f4 -r d2ab98ea87ad njs/njs_vm.c --- a/njs/njs_vm.c Fri Nov 11 18:12:13 2016 +0300 +++ b/njs/njs_vm.c Tue Nov 15 17:43:05 2016 +0300 @@ -2152,6 +2152,7 @@ njs_ret_t njs_vmcode_function_frame(njs_vm_t *vm, njs_value_t *value, njs_value_t *nargs) { njs_ret_tret; +nxt_bool_t ctor; njs_value_t val, *this; njs_object_t *object; njs_function_t *function; @@ -2160,13 +2161,17 @@ njs_vmcode_function_frame(njs_vm_t *vm, if (nxt_fast_path(njs_is_function(value))) { func = (njs_vmcode_function_frame_t *) vm->current; +ctor = func->code.ctor; function = value->data.u.function; if (function->native) { +if (ctor && !function->ctor) { +goto fail; +} + ret = njs_function_native_frame(vm, function, _value_void, -NULL, (uintptr_t) nargs, 0, -func->code.ctor); +NULL, (uintptr_t) nargs, 0, ctor); if (nxt_fast_path(ret == NXT_OK)) { return sizeof(njs_vmcode_function_frame_t); @@ -2175,7 +2180,7 @@ njs_vmcode_function_frame(njs_vm_t *vm, return ret; } -if (func->code.ctor) { +if (ctor) { object = njs_function_new_object(vm, value); if (nxt_slow_path(object == NULL)) { return NXT_ERROR; @@ -2191,7 +2196,7 @@ njs_vmcode_function_frame(njs_vm_t *vm, } ret = njs_function_frame(vm, function, this, NULL, (uintptr_t) nargs, - func->code.ctor); + ctor); if (nxt_fast_path(ret == NXT_OK)) { return sizeof(njs_vmcode_function_frame_t); @@ -2200,6 +2205,8 @@ njs_vmcode_function_frame(njs_vm_t *vm, return ret; } +fail: + vm->exception = _exception_type_error; return NXT_ERROR; @@ -2329,8 +2336,13 @@ njs_vmcode_method_call(njs_vm_t *vm, njs return ret; } +if (method->code.ctor) { +vm->exception = _exception_type_error; +return NXT_ERROR; +} + ret = njs_function_native_frame(vm, function, object, NULL, method->nargs, -0, method->code.ctor); +0, 0); if (nxt_fast_path(ret == NXT_OK)) { njs_retain(object); diff -r 91640c0405f4 -r d2ab98ea87ad njs/njs_vm.h --- a/njs/njs_vm.h Fri Nov 11 18:12:13 2016 +0300 +++ b/njs/njs_vm.h Tue Nov 15 17:43:05 2016 +0300 @@ -230,20 +230,10 @@ struct njs_function_s { uint8_t args_types[NJS_ARGS_TYPES_MAX]; uint8_t args_offset; - -/* - * TODO Shared - * When function object is used as value: in assignments, - * as function argument, as property and as object to get properties. - */ +uint8_t continuation_size; -#if (NXT_64BIT) -uint8_t native; -uint8_t continuation_size; -#else -uint8_t native; -uint8_t continuation_size; -#endif +uint8_t native:1; +uint8_t ctor:1; union { njs_function_lambda_t *lambda; diff -r 91640c0405f4 -r d2ab98ea87ad njs/test/njs_unit_test.c --- a/njs/test/njs_unit_test.c Fri Nov 11 18:12:13 2016 +0300 +++ b/njs/test/njs_unit_test.c Tue Nov 15 17:43:05 2016 +0300 @@ -4223,6 +4223,12 @@ static njs_unit_test_t njs_test[] = { nxt_string("var F = function (){}; typeof F.prototype"),
[nginx] Fixed a typo, removed an empty line.
details: http://hg.nginx.org/nginx/rev/49d7dbd25a27 branches: changeset: 6800:49d7dbd25a27 user: Maxim Dounindate: Mon Nov 14 21:55:44 2016 +0300 description: Fixed a typo, removed an empty line. diffstat: docs/xml/nginx/changes.xml | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diffs (20 lines): diff --git a/docs/xml/nginx/changes.xml b/docs/xml/nginx/changes.xml --- a/docs/xml/nginx/changes.xml +++ b/docs/xml/nginx/changes.xml @@ -790,7 +790,6 @@ and tries to avoid cache keys zone overf в логах могли появляться сообщения "task already active" и "second aio post". - "task already active" and "second aio post" alerts might appear in logs when using the "sendfile" and "aio" directives with subrequests. @@ -18140,7 +18139,7 @@ nginx did not omit the "#fragment" part -POP3 прокси поддерживает AUTH LOIGN PLAIN и CRAM-MD5. +POP3 прокси поддерживает AUTH LOGIN PLAIN и CRAM-MD5. the POP3 proxy supports the AUTH LOGIN PLAIN and CRAM-MD5. ___ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel