OpenResty XRay 助力 LLVM clang 性能优化实践
\ndiff --git a/README.md b/README.md index a3d0c18da..cb9d43305 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,7 @@ Table of Contents * [Name](#name) * [Description](#description) * [Building](#building) +* [OpenResty Release](#openresty-release) * [TODO](#todo) * [Credit](#credit) * [Author](#author) @@ -112,7 +113,22 @@ When you are ready to release a new version of openresty, then you need to manua After that, run the following commands to generate the new version of the site: ```bash +if [ ! -d ../lemplate ]; then + git clone git@github.com:openresty/lemplate ../ +fi + +export PATH=$PWD/../lemplate:$PATH + +nvm install 23.11.0 +nvm use 23.11.0 + +# or use the latest version +# nvm install node --latest-npm +# nvm use node + +cd v2 make clean +which lemplate make ``` diff --git a/v2/cn/ann-1027001003.md.tt2 b/v2/cn/ann-1027001003.md.tt2 new file mode 100644 index 000000000..1ff731ff9 --- /dev/null +++ b/v2/cn/ann-1027001003.md.tt2 @@ -0,0 +1,83 @@ +[% major_ver = "1.27.1"; version = major_ver _ ".3" -%] + + +We are happy to announce the new formal release, [% version %], of the +OpenResty web platform based on NGINX and LuaJIT. + +[Download this version here](download.html). + +The (portable) source code distribution, the Win32/Win64 binary +distributions, and the pre-built binary Linux packages for Ubuntu, +Debian, Fedora, CentOS, RHEL, RockyLinux, AlmaLinux, OpenSUSE, Amazon Linux, Alpine, TecentOS Linux, Alibaba Cloud Linux are provided on this +[Download page](download.html). + +# Version highlights + +* OpenSSL + * upgraded from version 3.4.1 to 3.5.1. +* PCRE + * upgraded from version 10.44 to 10.45. +* [lua-resty-redis](https://github.com/openresty/lua-resty-redis) + * bugfix: connection is closed after the blpop and brpop calls time out. + * optimize: return setmetatable is NYI which can not be jit compiled. (#287) +* [headers-more-nginx-module](https://github.com/openresty/headers-more-nginx-module) + * bugfix: didn't set next to NULL for the output header. +* [ngx_devel_kit](https://github.com/simplresty/ngx_devel_kit) + * src/ndk.h: do not #error if 'NDK' is undefined +* [lua-resty-mysql](https://github.com/openresty/lua-resty-mysql) + * bugfix: mysql driver doesn't handle well server side query timeout (Query execution was interrupted). +* [luajit2](https://github.com/openresty/luajit2) + * ARM64: Fix pass-by-value struct calling conventions. + * ARM: Fix soft-float math.min()/math.max(). + * Add compatibility string coercion for fp:seek() argument. + * Avoid out-of-range PC for stack overflow error from snapshot restore. + * Avoid unpatching bytecode twice after a trace flush. + * Change handling of nil value markers in template tables. + * FFI: Add pre-declared int128_t, uint128_t, __int128 types. + * FFI: Fix dangling CType references. + * Fix JIT slot overflow during up-recursion. + * Fix error generation in load*. + * Fix handling of nil value markers in template tables. + * Fix state restore when recording __concat metamethod. + * Improve CLI signal handling on POSIX. + * Initialize unused value when specializing to cdata metatable. + * Prevent Clang UB 'optimization' which breaks integerness checks. + * bugfix: table.clone can't work after commit 538a82133ad. + * macOS: Add suport for Apple hardened runtime. + * macOS: Fix Apple hardened runtime support and put behind build option. + * macOS: Fix support for Apple hardened runtime. + +# Full Change logs + +Complete change logs since the last (formal) release, [1.27.1.2](ann-1027001002.html), +can be browsed in the page [Change Log for [% major_ver %].x](changelog-1027002.html). + +# Testing + +We have run extensive testing on our Amazon EC2 test cluster and +ensured that all the components (including the Nginx core) play well +together. The latest test report can always be found here: + +https://qa.openresty.org/ + +We also always run our OpenResty Edge commercial software based on the +latest open source version of OpenResty in our own global CDN network +(dubbed "mini CDN") powering our openresty.org and openresty.com +websites. See https://openresty.com/ for more details. + +# Community Support + +See the [Community Page](community.html). + +# Commercial Support + +Commercial technical support and real-time noninvasive online monitoring and profiling +solution is provided through the official [OpenResty XRay](https://openresty.com/en/xray/) +product. + +# Feedback + +Feedback on this release is more than welcome. Feel free to create new +[GitHub issues](https://github.com/openresty/openresty/issues) or send emails to one of our [mailing lists](community.html). diff --git a/v2/cn/changelog-1027001.md b/v2/cn/changelog-1027001.md index acd2cf2eb..2620918ba 100644 --- a/v2/cn/changelog-1027001.md +++ b/v2/cn/changelog-1027001.md @@ -4,6 +4,49 @@ @created 2024-08-14 14:33 GMT ---> +# Version 1.27.1.3 - 16 Jul 2025 + +* upgraded [lua-resty-redis](https://github.com/openresty/lua-resty-redis) to v0.33 + * bugfix: connection is closed after the blpop and brpop calls time out. _Thanks 冉朋 for the patch._ + * docs: fix typo in README.markdown. _Thanks hms5232 for the patch._ + * optimize: return setmetatable is NYI which can not be jit compiled. (#287) _Thanks Zero King for the patch._ +* upgraded [headers-more-nginx-module](https://github.com/openresty/headers-more-nginx-module) to v0.39 + * bugfix: didn't set next to NULL for the output header. _Thanks lijunlong for the patch._ + * Move the LICENSE content to a separate file. _Thanks uhliarik for the patch._ +* upgraded [ngx_devel_kit](https://github.com/simplresty/ngx_devel_kit) to v0.3.4 + * src/ndk.h: Do not #error if 'NDK' is undefined _Thanks Simpl for the patch._ + * src/ndk.h: do not #error if 'NDK' is undefined _Thanks Zurab Kvachadze for the patch._ + * src/ndk.h: Update version _Thanks Simpl for the patch._ +* upgraded [lua-resty-mysql](https://github.com/openresty/lua-resty-mysql) to v0.28 + * bugfix: mysql driver doesn't handle well server side query timeout (Query execution was interrupted). _Thanks Nir Nahum for the patch._ +* upgraded [luajit2](https://github.com/openresty/luajit2) to v2.1-20250529 + * Add compatibility string coercion for fp:seek() argument. _Thanks Mike Pall for the patch._ + * ARM64: Fix pass-by-value struct calling conventions. _Thanks Mike Pall for the patch._ + * ARM: Fix soft-float math.min()/math.max(). _Thanks Mike Pall for the patch._ + * Avoid out-of-range PC for stack overflow error from snapshot restore. _Thanks Mike Pall for the patch._ + * Avoid unpatching bytecode twice after a trace flush. _Thanks Mike Pall for the patch._ + * bugfix: table.clone can't work after commit 538a82133ad. _Thanks lijunlong for the patch._ + * Change handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * Change handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * FFI: Add pre-declared int128_t, uint128_t, __int128 types. _Thanks Mike Pall for the patch._ + * FFI: Fix dangling CType references. _Thanks Mike Pall for the patch._ + * Fix error generation in load*. _Thanks Mike Pall for the patch._ + * Fix handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * Fix JIT slot overflow during up-recursion. _Thanks Mike Pall for the patch._ + * Fix state restore when recording __concat metamethod. _Thanks Mike Pall for the patch._ + * Improve CLI signal handling on POSIX. _Thanks Mike Pall for the patch._ + * Initialize unused value when specializing to cdata metatable. _Thanks Mike Pall for the patch._ + * macOS: Add suport for Apple hardened runtime. _Thanks Mike Pall for the patch._ + * macOS: Fix Apple hardened runtime support and put behind build option. _Thanks Mike Pall for the patch._ + * macOS: Fix support for Apple hardened runtime. _Thanks Mike Pall for the patch._ + * Merge from upstream v2.1. _Thanks lijunlong for the patch._ + * Prevent Clang UB 'optimization' which breaks integerness checks. _Thanks Mike Pall for the patch._ + * Remove Cygwin from docs, since it's not a supported target. _Thanks Mike Pall for the patch._ + * REVERT: Change handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * Use dylib extension for iOS installs, too. _Thanks Mike Pall for the patch._ + * Windows: Allow mixed builds with msvcbuild.bat. _Thanks Mike Pall for the patch._ + * Windows: Clarify installation directory layout. _Thanks Mike Pall for the patch._ + # Version 1.27.1.2 - 14 Mar 2025 * upgraded [lua-nginx-module](https://github.com/openresty/lua-nginx-module) to v0.10.28 diff --git a/v2/cn/download.md.tt2 b/v2/cn/download.md.tt2 index 6c05e2201..9ab1a9c38 100644 --- a/v2/cn/download.md.tt2 +++ b/v2/cn/download.md.tt2 @@ -9,18 +9,17 @@ ## Linux OpenResty® 给常见 Linux 发布提供[官方预编译安装包](linux-packages.html)。 -目前我们为 Ubuntu、Debian、RHEL、CentOS、Fedora、OpenSUSE、Alpine、Amazon Linux、 -Rocky Linux、Oracle Linux、CBL Mariner 提供官方的二进制包仓库。 +目前我们为 Ubuntu、Debian、RHEL、CentOS、RockyLinux、AlmaLinux、Fedora、OpenSUSE、Alpine、Amazon Linux、Oracle Linux、CBL Mariner 提供官方的二进制包仓库。 ## Windows 所有版本都是用 Yichun Zhang 的 PGP 公钥 `A0E98066` 签发的。 -[% ver = "1.27.1.2" -%] +[% ver = "1.27.1.3" -%] * 32 位 Windows: [openresty-[% ver %]-win32.zip](https://openresty.org/download/openresty-[% ver %]-win32.zip) 16MB -[PGP](https://openresty.org/download/openresty-[% ver %]-win32.zip.asc) - 2025年3月14日 +[PGP](https://openresty.org/download/openresty-[% ver %]-win32.zip.asc) - 2025年7月16日 * 64 位 Windows: [openresty-[% ver %]-win64.zip](https://openresty.org/download/openresty-[% ver %]-win64.zip) 16MB -[PGP](https://openresty.org/download/openresty-[% ver %]-win64.zip.asc) - 2025年3月14日 +[PGP](https://openresty.org/download/openresty-[% ver %]-win64.zip.asc) - 2025年7月16日 参见针对 Windows 版 OpenResty 的[用法文档](https://github.com/openresty/openresty/blob/master/doc/README-windows.md)。 @@ -59,15 +58,19 @@ brew install openresty-debug ## 最新版 -[% ver = "1.27.1.2" -%] +[% ver = "1.27.1.3" -%] * [openresty-[% ver %].tar.gz](https://openresty.org/download/openresty-[% ver %].tar.gz) 5.4MB [PGP](https://openresty.org/download/openresty-[% ver %].tar.gz.asc) -[变更列表](changelog-1027001.html) - 2025年3月14日 +[变更列表](changelog-1027001.html) - 2025年7月16日 ## 历史版 有时候我们可能会需要较老的版本: +[% ver = "1.27.1.2" -%] +* [openresty-[% ver %].tar.gz](https://openresty.org/download/openresty-[% ver %].tar.gz) 5.4MB + [PGP](https://openresty.org/download/openresty-[% ver %].tar.gz.asc) +[变更列表](changelog-1027001.html) - 2025年3月14日 [% ver = "1.27.1.1" -%] * [openresty-[% ver %].tar.gz](https://openresty.org/download/openresty-[% ver %].tar.gz) 5.4MB [PGP](https://openresty.org/download/openresty-[% ver %].tar.gz.asc) diff --git a/v2/en/ann-1027001003.md.tt2 b/v2/en/ann-1027001003.md.tt2 new file mode 100644 index 000000000..1ff731ff9 --- /dev/null +++ b/v2/en/ann-1027001003.md.tt2 @@ -0,0 +1,83 @@ +[% major_ver = "1.27.1"; version = major_ver _ ".3" -%] + + +We are happy to announce the new formal release, [% version %], of the +OpenResty web platform based on NGINX and LuaJIT. + +[Download this version here](download.html). + +The (portable) source code distribution, the Win32/Win64 binary +distributions, and the pre-built binary Linux packages for Ubuntu, +Debian, Fedora, CentOS, RHEL, RockyLinux, AlmaLinux, OpenSUSE, Amazon Linux, Alpine, TecentOS Linux, Alibaba Cloud Linux are provided on this +[Download page](download.html). + +# Version highlights + +* OpenSSL + * upgraded from version 3.4.1 to 3.5.1. +* PCRE + * upgraded from version 10.44 to 10.45. +* [lua-resty-redis](https://github.com/openresty/lua-resty-redis) + * bugfix: connection is closed after the blpop and brpop calls time out. + * optimize: return setmetatable is NYI which can not be jit compiled. (#287) +* [headers-more-nginx-module](https://github.com/openresty/headers-more-nginx-module) + * bugfix: didn't set next to NULL for the output header. +* [ngx_devel_kit](https://github.com/simplresty/ngx_devel_kit) + * src/ndk.h: do not #error if 'NDK' is undefined +* [lua-resty-mysql](https://github.com/openresty/lua-resty-mysql) + * bugfix: mysql driver doesn't handle well server side query timeout (Query execution was interrupted). +* [luajit2](https://github.com/openresty/luajit2) + * ARM64: Fix pass-by-value struct calling conventions. + * ARM: Fix soft-float math.min()/math.max(). + * Add compatibility string coercion for fp:seek() argument. + * Avoid out-of-range PC for stack overflow error from snapshot restore. + * Avoid unpatching bytecode twice after a trace flush. + * Change handling of nil value markers in template tables. + * FFI: Add pre-declared int128_t, uint128_t, __int128 types. + * FFI: Fix dangling CType references. + * Fix JIT slot overflow during up-recursion. + * Fix error generation in load*. + * Fix handling of nil value markers in template tables. + * Fix state restore when recording __concat metamethod. + * Improve CLI signal handling on POSIX. + * Initialize unused value when specializing to cdata metatable. + * Prevent Clang UB 'optimization' which breaks integerness checks. + * bugfix: table.clone can't work after commit 538a82133ad. + * macOS: Add suport for Apple hardened runtime. + * macOS: Fix Apple hardened runtime support and put behind build option. + * macOS: Fix support for Apple hardened runtime. + +# Full Change logs + +Complete change logs since the last (formal) release, [1.27.1.2](ann-1027001002.html), +can be browsed in the page [Change Log for [% major_ver %].x](changelog-1027002.html). + +# Testing + +We have run extensive testing on our Amazon EC2 test cluster and +ensured that all the components (including the Nginx core) play well +together. The latest test report can always be found here: + +https://qa.openresty.org/ + +We also always run our OpenResty Edge commercial software based on the +latest open source version of OpenResty in our own global CDN network +(dubbed "mini CDN") powering our openresty.org and openresty.com +websites. See https://openresty.com/ for more details. + +# Community Support + +See the [Community Page](community.html). + +# Commercial Support + +Commercial technical support and real-time noninvasive online monitoring and profiling +solution is provided through the official [OpenResty XRay](https://openresty.com/en/xray/) +product. + +# Feedback + +Feedback on this release is more than welcome. Feel free to create new +[GitHub issues](https://github.com/openresty/openresty/issues) or send emails to one of our [mailing lists](community.html). diff --git a/v2/en/changelog-1027001.md b/v2/en/changelog-1027001.md index c142c7666..d6c1dd3f1 100644 --- a/v2/en/changelog-1027001.md +++ b/v2/en/changelog-1027001.md @@ -4,6 +4,49 @@ @created 2024-08-14 14:33 GMT ---> +# Version 1.27.1.3 - 16 Jul 2025 + +* upgraded [lua-resty-redis](https://github.com/openresty/lua-resty-redis) to v0.33 + * bugfix: connection is closed after the blpop and brpop calls time out. _Thanks 冉朋 for the patch._ + * docs: fix typo in README.markdown. _Thanks hms5232 for the patch._ + * optimize: return setmetatable is NYI which can not be jit compiled. (#287) _Thanks Zero King for the patch._ +* upgraded [headers-more-nginx-module](https://github.com/openresty/headers-more-nginx-module) to v0.39 + * bugfix: didn't set next to NULL for the output header. _Thanks lijunlong for the patch._ + * Move the LICENSE content to a separate file. _Thanks uhliarik for the patch._ +* upgraded [ngx_devel_kit](https://github.com/simplresty/ngx_devel_kit) to v0.3.4 + * src/ndk.h: Do not #error if 'NDK' is undefined _Thanks Simpl for the patch._ + * src/ndk.h: do not #error if 'NDK' is undefined _Thanks Zurab Kvachadze for the patch._ + * src/ndk.h: Update version _Thanks Simpl for the patch._ +* upgraded [lua-resty-mysql](https://github.com/openresty/lua-resty-mysql) to v0.28 + * bugfix: mysql driver doesn't handle well server side query timeout (Query execution was interrupted). _Thanks Nir Nahum for the patch._ +* upgraded [luajit2](https://github.com/openresty/luajit2) to v2.1-20250529 + * Add compatibility string coercion for fp:seek() argument. _Thanks Mike Pall for the patch._ + * ARM64: Fix pass-by-value struct calling conventions. _Thanks Mike Pall for the patch._ + * ARM: Fix soft-float math.min()/math.max(). _Thanks Mike Pall for the patch._ + * Avoid out-of-range PC for stack overflow error from snapshot restore. _Thanks Mike Pall for the patch._ + * Avoid unpatching bytecode twice after a trace flush. _Thanks Mike Pall for the patch._ + * bugfix: table.clone can't work after commit 538a82133ad. _Thanks lijunlong for the patch._ + * Change handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * Change handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * FFI: Add pre-declared int128_t, uint128_t, __int128 types. _Thanks Mike Pall for the patch._ + * FFI: Fix dangling CType references. _Thanks Mike Pall for the patch._ + * Fix error generation in load*. _Thanks Mike Pall for the patch._ + * Fix handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * Fix JIT slot overflow during up-recursion. _Thanks Mike Pall for the patch._ + * Fix state restore when recording __concat metamethod. _Thanks Mike Pall for the patch._ + * Improve CLI signal handling on POSIX. _Thanks Mike Pall for the patch._ + * Initialize unused value when specializing to cdata metatable. _Thanks Mike Pall for the patch._ + * macOS: Add suport for Apple hardened runtime. _Thanks Mike Pall for the patch._ + * macOS: Fix Apple hardened runtime support and put behind build option. _Thanks Mike Pall for the patch._ + * macOS: Fix support for Apple hardened runtime. _Thanks Mike Pall for the patch._ + * Merge from upstream v2.1. _Thanks lijunlong for the patch._ + * Prevent Clang UB 'optimization' which breaks integerness checks. _Thanks Mike Pall for the patch._ + * Remove Cygwin from docs, since it's not a supported target. _Thanks Mike Pall for the patch._ + * REVERT: Change handling of nil value markers in template tables. _Thanks Mike Pall for the patch._ + * Use dylib extension for iOS installs, too. _Thanks Mike Pall for the patch._ + * Windows: Allow mixed builds with msvcbuild.bat. _Thanks Mike Pall for the patch._ + * Windows: Clarify installation directory layout. _Thanks Mike Pall for the patch._ + # Version 1.27.1.2 - 14 Mar 2025 * upgraded [lua-nginx-module](https://github.com/openresty/lua-nginx-module) to v0.10.28 diff --git a/v2/en/download.md.tt2 b/v2/en/download.md.tt2 index ba7d926b0..72e1d21bd 100644 --- a/v2/en/download.md.tt2 +++ b/v2/en/download.md.tt2 @@ -11,8 +11,8 @@ OpenResty® provides [official pre-built packages](linux-packages.html) for common Linux distributions. -We currently support Ubuntu, Debian, RHEL, CentOS, Fedora, OpenSUSE, Alpine, -Amazon Linux, Rocky Linux, Oracle Linux, and CBL Mariner. +We currently support Ubuntu, Debian, RHEL, CentOS, RockyLinux, AlmaLinux, Fedora, OpenSUSE, Alpine, +Amazon Linux, Oracle Linux, and CBL Mariner. We also provide official package repositories for our users so that receiving and installing package updates can be trivial. @@ -21,7 +21,7 @@ installing package updates can be trivial. All the releases are signed by the public PGP key `A0E98066` of Yichun Zhang. -[% ver = "1.27.1.2" -%] +[% ver = "1.27.1.3" -%] * For 32-bit Windows: [openresty-[% ver %]-win32.zip](https://openresty.org/download/openresty-[% ver %]-win32.zip) 16MB [PGP](https://openresty.org/download/openresty-[% ver %]-win32.zip.asc) - 14 Mar 2025 * For 64-bit Windows: [openresty-[% ver %]-win64.zip](https://openresty.org/download/openresty-[% ver %]-win64.zip) 16MB @@ -65,13 +65,17 @@ the instructions on the [Installation](installation.html) page to build and install it. ## Lastest release -[% ver = "1.27.1.2" -%] +[% ver = "1.27.1.3" -%] * [openresty-[% ver %].tar.gz](https://openresty.org/download/openresty-[% ver %].tar.gz) 5.4MB [PGP](https://openresty.org/download/openresty-[% ver %].tar.gz.asc) -[Changes](changelog-1027001.html) - 14 Mar 2025 +[Changes](changelog-1027001.html) - 16 Jul 2025 ## Legacy releases Sometimes, users may want to download old releases. +[% ver = "1.27.1.2" -%] +* [openresty-[% ver %].tar.gz](https://openresty.org/download/openresty-[% ver %].tar.gz) 5.4MB + [PGP](https://openresty.org/download/openresty-[% ver %].tar.gz.asc) +[Changes](changelog-1027001.html) - 14 Mar 2025 [% ver = "1.27.1.1" -%] * [openresty-[% ver %].tar.gz](https://openresty.org/download/openresty-[% ver %].tar.gz) 5.4MB [PGP](https://openresty.org/download/openresty-[% ver %].tar.gz.asc) diff --git a/v2/images/header-images/dynamic-tracing-challenge.jpg b/v2/images/header-images/dynamic-tracing-challenge.jpg new file mode 100644 index 000000000..c736ce230 Binary files /dev/null and b/v2/images/header-images/dynamic-tracing-challenge.jpg differ diff --git a/v2/images/header-images/dynamic-tracing-compare.jpg b/v2/images/header-images/dynamic-tracing-compare.jpg new file mode 100644 index 000000000..49109fc28 Binary files /dev/null and b/v2/images/header-images/dynamic-tracing-compare.jpg differ diff --git a/v2/images/header-images/dynamic-tracing-diagnose.jpg b/v2/images/header-images/dynamic-tracing-diagnose.jpg new file mode 100644 index 000000000..f460947a7 Binary files /dev/null and b/v2/images/header-images/dynamic-tracing-diagnose.jpg differ diff --git a/v2/images/header-images/dynamic-tracing-future-debug.jpg b/v2/images/header-images/dynamic-tracing-future-debug.jpg new file mode 100644 index 000000000..e881ddfb3 Binary files /dev/null and b/v2/images/header-images/dynamic-tracing-future-debug.jpg differ diff --git a/v2/images/header-images/dynamic-tracing-trend.jpg b/v2/images/header-images/dynamic-tracing-trend.jpg new file mode 100644 index 000000000..51f160ce1 Binary files /dev/null and b/v2/images/header-images/dynamic-tracing-trend.jpg differ diff --git a/v2/images/header-images/undo-java-file-bt.jpg b/v2/images/header-images/undo-java-file-bt.jpg new file mode 100644 index 000000000..946802fa9 Binary files /dev/null and b/v2/images/header-images/undo-java-file-bt.jpg differ diff --git a/v2/images/header-images/undo-openresty-lua-bt.jpg b/v2/images/header-images/undo-openresty-lua-bt.jpg new file mode 100644 index 000000000..7dc985e5d Binary files /dev/null and b/v2/images/header-images/undo-openresty-lua-bt.jpg differ diff --git a/v2/images/header-images/undo-perl-bt.jpg b/v2/images/header-images/undo-perl-bt.jpg new file mode 100644 index 000000000..394852cd3 Binary files /dev/null and b/v2/images/header-images/undo-perl-bt.jpg differ diff --git a/v2/images/header-images/undo-python-network-bt.jpg b/v2/images/header-images/undo-python-network-bt.jpg new file mode 100644 index 000000000..fb2b28d26 Binary files /dev/null and b/v2/images/header-images/undo-python-network-bt.jpg differ diff --git a/v2/images/header-images/xray-black-box.jpg b/v2/images/header-images/xray-black-box.jpg new file mode 100644 index 000000000..aa7a0d5c8 Binary files /dev/null and b/v2/images/header-images/xray-black-box.jpg differ diff --git a/v2/images/header-images/xray-casestudy-lua-lru.jpg b/v2/images/header-images/xray-casestudy-lua-lru.jpg new file mode 100644 index 000000000..c6861af4e Binary files /dev/null and b/v2/images/header-images/xray-casestudy-lua-lru.jpg differ diff --git a/v2/images/header-images/xray-customer-casestudy-dns.jpg b/v2/images/header-images/xray-customer-casestudy-dns.jpg new file mode 100644 index 000000000..ffc222070 Binary files /dev/null and b/v2/images/header-images/xray-customer-casestudy-dns.jpg differ diff --git a/v2/images/header-images/xray-new-feature-je.jpg b/v2/images/header-images/xray-new-feature-je.jpg new file mode 100644 index 000000000..4395adb3a Binary files /dev/null and b/v2/images/header-images/xray-new-feature-je.jpg differ diff --git a/v2/images/header-images/ylang-simple-intro.jpg b/v2/images/header-images/ylang-simple-intro.jpg new file mode 100644 index 000000000..a29296a62 Binary files /dev/null and b/v2/images/header-images/ylang-simple-intro.jpg differ diff --git a/v2/lua/openresty_org/templates.lua b/v2/lua/openresty_org/templates.lua index 40a031d26..8b4047808 100644 --- a/v2/lua/openresty_org/templates.lua +++ b/v2/lua/openresty_org/templates.lua @@ -430,70 +430,70 @@ template_map['news-cn.tt2'] = function (context) local output = {} local i = 0 -i = i + 1 output[i] = '\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
-
+
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+