Home
last modified time | relevance | path

Searched hist:2020 (Results 176 – 200 of 328) sorted by last modified time

12345678910>>...14

/unit/src/python/
H A Dnxt_python.hdiff 1681:542b5b8c0647 Wed Nov 04 21:04:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Python: request processing in multiple threads.

This closes #459 issue on GitHub.
diff 1680:7bd798408038 Wed Nov 04 21:04:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Python: introducting macro to simplify minor version check.
diff 1648:551e0dbba1da Mon Oct 12 22:37:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Fixed building with Python 3.9.

PyUnicode_GET_SIZE() in deprecated since 3.3 and will be removed in 3.12.
In version 3.9 it was explicitly marked by deprecation warning causing
compilation error with Unit.

PyUnicode_GET_LENGTH() must be used instead.
diff 1624:e46b1b422545 Thu Oct 01 20:55:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Python: ASGI server introduced.

This closes #461 issue on GitHub.
1592:9727c9b61f1c Mon Sep 14 10:27:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Python: split module initialization from WSGI implementation.

This is required for futher ASGI implementation.
/unit/src/
H A Dnxt_http_return.cdiff 1432:f650ced3012a Fri Mar 20 22:39:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Implemented "location" option for "return" action.

This allows to specify redirects:

{
"action": {
"return": 301,
"location": "https://www.example.com/"
}
}
1429:9a0d78f144ac Fri Mar 27 14:22:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Implemented "return" action.

The "return" action can be used to immediately generate a simple HTTP response
with an arbitrary status:

{
"action": {
"return": 404
}
}

This is especially useful for denying access to specific resources.
H A Dnxt_string.hdiff 1580:f1aefdf995d4 Thu Aug 20 14:44:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Isolation: mount tmpfs by default.
diff 1481:235553af9977 Fri May 15 18:32:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Fixed global constant declaration (appeared in 9af10e099d09).

This fixes building with GCC 10, which is default to -fno-common.
See: https://gcc.gnu.org/gcc-10/porting_to.html
diff 1474:9af10e099d09 Wed May 13 22:29:00 UTC 2020 Axel Duch <axel.duch@nginx.com> Router: decode uri and args.
diff 1439:32578e837322 Mon Mar 30 16:37:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Configuration: support for rational numbers.
diff 1431:fe30a27f21ba Fri Mar 27 14:22:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Added nxt_is_complex_uri_encoded()/nxt_encode_complex_uri().
H A Dnxt_string.cdiff 1474:9af10e099d09 Wed May 13 22:29:00 UTC 2020 Axel Duch <axel.duch@nginx.com> Router: decode uri and args.
diff 1439:32578e837322 Mon Mar 30 16:37:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Configuration: support for rational numbers.
diff 1431:fe30a27f21ba Fri Mar 27 14:22:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Added nxt_is_complex_uri_encoded()/nxt_encode_complex_uri().
diff 1430:f4245d81dc2a Fri Mar 27 14:22:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Updated URI escaping table for better conformity with RFC 3986.

Now '>', '<', '"', '^', '\', '}', '|', '{', and '`' are also escaped.
H A Dnxt_sockaddr.cdiff 2175:e83cff38d672 Wed Aug 03 12:42:00 UTC 2022 Alejandro Colomar <alx.manpages@gmail.com> Removed dead code.

nxt_sockaddr_ntop() stopped being used in commit (git) 029942f4eb71.
It has been replaced mostly by nxt_sockaddr_text().

commit 029942f4eb7196c2cff0d0e26bc6ff274138f7d8
Author: Igor Sysoev <igor@sysoev.ru>
Date: Wed Feb 22 15:09:59 2017 +0300

I/O operations refactoring.

nxt_job_sockaddr_parse() stopped being used in commit (git) 794248090a74.

commit 794248090a74f31cbfcf24ea8c835df2d4d21073
Author: Igor Sysoev <igor@sysoev.ru>
Date: Wed Mar 4 14:04:08 2020 +0300

Legacy upstream code removed.

Also, remove functions and types used only by those two functions:

nxt_job_sockaddr_unix_parse()
nxt_job_sockaddr_inet6_parse()
nxt_job_sockaddr_inet_parse()
nxt_job_sockaddr_parse_t
nxt_job_resolve()
nxt_job_resolve_t
H A Dnxt_http_route_addr.cdiff 1343:8cc299d14325 Tue Jan 28 15:05:00 UTC 2020 Axel Duch <axel.duch@nginx.com> Fixed missing IPv6 checking in route-addr and an unused variable.

This closes #363 issue on Github.
Thanks to to 洪志道 (Hong Zhi Dao).
H A Dnxt_unit_request.hdiff 1733:dab8544b5440 Mon Dec 07 22:59:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> PHP: populating PHP_AUTH_* server variables.

This closes #498 issue on GitHub.
diff 1473:e07d5b451423 Thu May 14 10:15:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> PHP: implemented "targets" option.

This allows to specify multiple subsequent targets inside PHP applications.
For example:

{
"listeners": {
"*:80": {
"pass": "routes"
}
},

"routes": [
{
"match": {
"uri": "/info"
},

"action": {
"pass": "applications/my_app/phpinfo"
}
},
{
"match": {
"uri": "/hello"
},

"action": {
"pass": "applications/my_app/hello"
}
},
{
"action": {
"pass": "applications/my_app/rest"
}
}
],

"applications": {
"my_app": {
"type": "php",
"targets": {
"phpinfo": {
"script": "phpinfo.php",
"root": "/www/data/admin",
},

"hello": {
"script": "hello.php",
"root": "/www/data/test",
},

"rest": {
"root": "/www/data/example.com",
"index": "index.php"
},
}
}
}
}
H A Dnxt_port.cdiff 1558:026e4b909b61 Tue Aug 11 18:48:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Style fixes for 2 file descriptors transfer over port.

Two consecutive fd and fd2 fields replaced with array.
diff 1555:1d84b9e4b459 Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Introducing application and port shared memory queues.

The goal is to minimize the number of syscalls needed to deliver a message.
diff 1547:cbcd76704c90 Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Introducing the shared application port.

This is the port shared between all application processes which use it to pass
requests for processing. Using it significantly simplifies the request
processing code in the router. The drawback is 2 more file descriptors per each
configured application and more complex libunit message wait/read code.
diff 1488:6976d36be926 Mon Mar 09 16:28:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Refactor of process management.

The process abstraction has changed to:

setup(task, process)
start(task, process_data)
prefork(task, process, mp)

The prefork() occurs in the main process right before fork.

The file src/nxt_main_process.c is completely free of process
specific logic.

The creation of a process now supports a PROCESS_CREATED state. The
The setup() function of each process can set its state to either
created or ready. If created, a MSG_PROCESS_CREATED is sent to main
process, where external setup can be done (required for rootfs under
container).

The core processes (discovery, controller and router) doesn't need
external setup, then they all proceeds to their start() function
straight away.

In the case of applications, the load of the module happens at the
process setup() time and The module's init() function has changed
to be the start() of the process.

The module API has changed to:

setup(task, process, conf)
start(task, data)

As a direct benefit of the PROCESS_CREATED message, the clone(2) of
processes using pid namespaces now doesn't need to create a pipe
to make the child block until parent setup uid/gid mappings nor it
needs to receive the child pid.
H A Dnxt_capability.cdiff 1489:4a3ec07f4b19 Thu May 28 13:57:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Added "rootfs" feature.
H A Dnxt_fs.hdiff 1673:883f2f79c2f6 Thu Oct 29 20:30:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Isolation: mounting of procfs by default when using "rootfs".
diff 1585:e941d77852d1 Tue Aug 25 14:25:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Isolation: added "automount" option.

Now it's possible to disable default bind mounts of
languages by setting:

{
"isolation": {
"automount": {
"language_deps": false
}
}
}

In this case, the user is responsible to provide a "rootfs"
containing the language libraries and required files for
the application.
diff 1580:f1aefdf995d4 Thu Aug 20 14:44:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Isolation: mount tmpfs by default.
1489:4a3ec07f4b19 Thu May 28 13:57:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Added "rootfs" feature.
H A Dnxt_conn.hdiff 1458:ad693d003313 Wed Apr 15 12:10:00 UTC 2020 Igor Sysoev <igor@sysoev.ru> Fixed memory leak occurring upon failure to accept a connection.
H A Dnxt_conn_accept.cdiff 1533:6e107ec3b502 Wed Aug 05 11:55:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> Fixed nxt_conn_accept_alloc() behavior in low memory conditions.

Earlier, if nxt_mp_create() failed to allocate memory while accepting a new
connection, the resulting NULL was subsequently passed to nxt_mp_destroy(),
crashing the process.

More, if nxt_mp_create() was successful but nxt_sockaddr_cache_alloc() failed,
the connection object wasn't destroyed properly, leaving the connection counter
in an inconsistent state. Repeated, this condition lowered the connection
capacity of the process and could eventually prevent it from accepting
connections altogether.
diff 1458:ad693d003313 Wed Apr 15 12:10:00 UTC 2020 Igor Sysoev <igor@sysoev.ru> Fixed memory leak occurring upon failure to accept a connection.
diff 1457:af93c866b4f0 Wed Apr 15 11:54:00 UTC 2020 Igor Sysoev <igor@sysoev.ru> Fixed crash that occurs when idle connections are closed forcibly.
H A Dnxt_isolation.h1579:c80e692dc644 Thu Aug 20 14:22:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Moved isolation related code to "nxt_isolation.c".
H A Dnxt_sockaddr.hdiff 2175:e83cff38d672 Wed Aug 03 12:42:00 UTC 2022 Alejandro Colomar <alx.manpages@gmail.com> Removed dead code.

nxt_sockaddr_ntop() stopped being used in commit (git) 029942f4eb71.
It has been replaced mostly by nxt_sockaddr_text().

commit 029942f4eb7196c2cff0d0e26bc6ff274138f7d8
Author: Igor Sysoev <igor@sysoev.ru>
Date: Wed Feb 22 15:09:59 2017 +0300

I/O operations refactoring.

nxt_job_sockaddr_parse() stopped being used in commit (git) 794248090a74.

commit 794248090a74f31cbfcf24ea8c835df2d4d21073
Author: Igor Sysoev <igor@sysoev.ru>
Date: Wed Mar 4 14:04:08 2020 +0300

Legacy upstream code removed.

Also, remove functions and types used only by those two functions:

nxt_job_sockaddr_unix_parse()
nxt_job_sockaddr_inet6_parse()
nxt_job_sockaddr_inet_parse()
nxt_job_sockaddr_parse_t
nxt_job_resolve()
nxt_job_resolve_t
H A Dnxt_unix.hdiff 1489:4a3ec07f4b19 Thu May 28 13:57:00 UTC 2020 Tiago Natel de Moura <t.nateldemoura@f5.com> Added "rootfs" feature.
H A Dnxt_nncq.h1554:8f22edff911d Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Circular queues implementations and a test.

- naive circular queue, described in the article "A Scalable, Portable, and
Memory-Efficient Lock-Free FIFO Queue" by Ruslan Nikolaev:
https://drops.dagstuhl.de/opus/volltexte/2019/11335/pdf/LIPIcs-DISC-2019-28.pdf
- circular queue, proposed by Valentin Bartenev in the "Unit router application
IPC" design draft
H A Dnxt_nvbcq.h1554:8f22edff911d Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Circular queues implementations and a test.

- naive circular queue, described in the article "A Scalable, Portable, and
Memory-Efficient Lock-Free FIFO Queue" by Ruslan Nikolaev:
https://drops.dagstuhl.de/opus/volltexte/2019/11335/pdf/LIPIcs-DISC-2019-28.pdf
- circular queue, proposed by Valentin Bartenev in the "Unit router application
IPC" design draft
H A Dnxt_port_memory_int.hdiff 1546:06017e6e3a5f Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Changing router to application shared memory exchange protocol.

The application process needs to request the shared memory segment from the
router instead of the latter pushing the segment before sending a request to
the application. This is required to simplify the communication between the
router and the application and to prepare the router for using the application
shared port and then the queue.
H A Dnxt_port_socket.cdiff 1560:ef3da1be976d Wed Aug 12 10:37:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Fixing issues found by static analyzer.
diff 1558:026e4b909b61 Tue Aug 11 18:48:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Style fixes for 2 file descriptors transfer over port.

Two consecutive fd and fd2 fields replaced with array.
diff 1555:1d84b9e4b459 Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Introducing application and port shared memory queues.

The goal is to minimize the number of syscalls needed to deliver a message.
diff 1553:c3fad601f58b Tue Aug 11 16:20:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Port message extended to transfer 2 file descriptors.
diff 1485:bef3cb69fc92 Wed May 27 21:40:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Closing unsent file descriptors from port queue.

After a process exits, all ports linked to it from other processes
should be closed. All unsent file descriptors in port queue, marked as
"close after send", should be closed to avoid resource leakage.
/unit/pkg/deb/debian.module/
H A Dcontrol.indiff 2020:f8e0a0b7ffb9 Wed Dec 01 06:01:00 UTC 2021 Andrei Belov <defan@nginx.com> Packages: adjusted debhelper minimal version for Debian/Ubuntu.

Forgotten in 199a11eceb3c.

While here, Standards-Version increased to 4.1.4 (matches Ubuntu 18.04
as the oldest supported distro).
diff 1752:e8e3d17a8168 Tue Nov 24 11:27:00 UTC 2020 Konstantin Pavlov <thresh@nginx.com> Packages: added pcre2 to build depends.

While at it, propagate unit build depends to modules.
/unit/src/test/
H A Dnxt_http_parse_test.cdiff 1709:1fe93c17d23f Tue Nov 17 13:50:00 UTC 2020 Valentin Bartenev <vbart@nginx.com> HTTP parser: allowed more characters in header field names.

Previously, all requests that contained in header field names characters other
than alphanumeric, or "-", or "_" were rejected with a 400 "Bad Request" error
response.

Now, the parser allows the same set of characters as specified in RFC 7230,
including: "!", "#", "$", "%", "&", "'", "*", "+", ".", "^", "`", "|", and "~".
Header field names that contain only these characters are considered valid.

Also, there's a new option introduced: "discard_unsafe_fields". It accepts
boolean value and it is set to "true" by default.

When this option is "true", all header field names that contain characters
in valid range, but other than alphanumeric or "-" are skipped during parsing.
When the option is "false", these header fields aren't skipped.

Requests with non-valid characters in header field names according to
RFC 7230 are rejected regardless of "discard_unsafe_fields" setting.

This closes #422 issue on GitHub.
diff 1459:358b957ca294 Thu Apr 16 14:09:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Using malloc/free for the http fields hash.

This is required due to lack of a graceful shutdown: there is a small gap
between the runtime's memory pool release and router process's exit. Thus, a
worker thread may start processing a request between these two operations,
which may result in an http fields hash access and subsequent crash.

To simplify issue reproduction, it makes sense to add a 2 sec sleep before
exit() in nxt_runtime_exit().
H A Dnxt_unit_websocket_chat.cdiff 1710:e598cd15bd91 Wed Nov 18 19:33:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Libunit: improving logging consistency.

Debug logging depends on macros defined in nxt_auto_config.h.
/unit/auto/
H A Dsendfilediff 1577:604db78b62f9 Sun Aug 16 21:28:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Supporting platforms without sendfile() implementation.

This is a quick and dirty sendfile() replacement.

This closes #452 PR on GitHub.
diff 1413:58282dc9b416 Tue Mar 17 11:44:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Checking sendfile() availability in configure.

Removing SF_NODISKIO flag for FreeBSD sendfile() check because it
is not used yet and to support DragonFlyBSD.

This closes #414 issue on GitHub.
H A Dpcrediff 1721:53b6ab9b324b Tue Nov 17 15:03:00 UTC 2020 Axel Duch <axel.duch@nginx.com> Router: matching regular expressions support.
/unit/src/ruby/
H A Dnxt_ruby.hdiff 1687:b9d99e596725 Wed Nov 04 21:45:00 UTC 2020 Max Romanov <max.romanov@nginx.com> Ruby: request processing in multiple threads.

This closes #482 issue on GitHub.

12345678910>>...14