Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release/v1.7.0 #1207

Open
wants to merge 76 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
817f067
typo: fix docs/installation markdown lint and syntax
kwanhur Feb 9, 2022
a0072d0
typo: fix docs/faq markdown lint and syntax
kwanhur Feb 9, 2022
dfaf1a2
typo: fix docs/modules markdown lint
kwanhur Feb 9, 2022
a1f128d
typo: fix docs/operation markdown lint
kwanhur Feb 9, 2022
91ac1fa
typo: fix docs/monitor markdown lint and syntax
kwanhur Feb 9, 2022
77eb6c9
Add en_us/condition/request/context.md
iyangsj Feb 11, 2022
8a85510
Add zh_cn/condition/request/context.md
iyangsj Feb 11, 2022
f11d853
add req_context_value_in() to condition_primitive_index.md and adjust…
mileszhang2016 Feb 11, 2022
9215d8e
ci: add markdown lint action
kwanhur Feb 11, 2022
2c833f0
typo: fix docs/condition markdown lints
kwanhur Feb 11, 2022
541756f
Revert "chore: add typos in pre-commit"
mileszhang2016 Feb 14, 2022
c9b0eb6
typo: fix bfe_balance spelling
kwanhur Feb 28, 2022
86d6046
typo: fix bfe_basic BOM
kwanhur Feb 28, 2022
4b36f01
typo: fix bfe_config spelling
kwanhur Feb 28, 2022
36d730b
typo: fix bfe_fcgi spelling
kwanhur Feb 28, 2022
64bea7f
typo: fix bfe_http bfe_server spelling
kwanhur Feb 28, 2022
35c05d2
typo: fix bfe_http2 spelling
kwanhur Feb 28, 2022
d829405
typo: fix bfe_module spelling
kwanhur Feb 28, 2022
f08b6b3
typo: format bfe_modules/mod_userid
kwanhur Feb 28, 2022
e03dc4a
typo: fix bfe_route spelling
kwanhur Feb 28, 2022
873c812
typo: fix bfe_spdy spelling
kwanhur Feb 28, 2022
ae67626
typo: fix bfe_tls spelling
kwanhur Feb 28, 2022
1e43b66
typo: format bfe_util/socket_util
kwanhur Feb 28, 2022
520f6e0
chore: ignore log rotate files
kwanhur Feb 28, 2022
913f7a8
typo: remove dot at the end
kwanhur Mar 2, 2022
7d2438a
Fix typo in mod_geo (#1029)
blinkbean Mar 11, 2022
3a0d54a
Add staticcheck pre-commit hook (#1019)
kwanhur Apr 6, 2022
b2bb316
Add precommit hook for markdownlint (#1038)
kwanhur Apr 28, 2022
3f9dcbc
Evict the oldest conn when the conn pool exceeds its limit (#1044)
ccqy66 May 27, 2022
17fa1c4
import code-lint workflow job (#1037)
kwanhur May 28, 2022
20cbf54
fix go.yaml dependency
daimg May 28, 2022
657e46c
fix arm build error in golang1.18
daimg Jun 6, 2022
0ca8d2b
refactor: replace strings.Replace with strings.ReplaceAll
Juneezee Jun 6, 2022
493c651
Create some slices with enough capacity (#1054)
ccqy66 Jun 22, 2022
da6a696
Update ci.yml (#1061)
kezhenxu94 Jul 17, 2022
d7ebf6b
fix build failed on macos (#1067)
supermario1990 Jul 24, 2022
d333a43
Make some optimization for leastConnsBalance (#1062)
cooper-li Jul 29, 2022
89926ce
Fix some unreachable code in unit tests (#1068)
Abirdcfly Aug 22, 2022
ae2220d
Support HTTP/2 fingerprint (#1072)
xqbumu Sep 13, 2022
b85917f
update v1.6.0 changelog
clarinette9 Oct 21, 2022
8407362
update changelog and version file
clarinette9 Oct 21, 2022
4a86b62
Update CHANGELOG.md
clarinette9 Oct 21, 2022
202d2fc
Update condition_grammar.md
mileszhang2016 Jan 10, 2023
1ec2d7d
Update README.md
mileszhang2016 Feb 3, 2023
d7fee7a
update mkdocs yml and download link for v1.5 and v1.6 (#1084)
clarinette9 Mar 2, 2023
7bf109f
Resolved #800 support test configuration
kwanhur Sep 25, 2021
aef0d6a
Update MAINTAINERS.md
clarinette9 Jun 1, 2023
c35cecf
Update MAINTAINERS.md
clarinette9 Jun 1, 2023
0c83c6a
update maintainers.md
clarinette9 Jun 1, 2023
338fae8
fix some typo (#1113)
cuishuang Sep 29, 2023
d740c05
Update ci.yml
iyangsj Sep 29, 2023
5e49f91
Update ADOPTERS.md (#1123)
pheianox Sep 29, 2023
7bbb477
build(deps): bump golang.org/x/sys (#1101)
dependabot[bot] Dec 9, 2023
840d2a8
remove TestSetKeepAlive
Mar 12, 2024
800a7a4
remove TestSetKeepAlive
Mar 13, 2024
bee5c85
Resubmit with Signed-off-by line
Mar 13, 2024
05190a3
Resubmit with Signed-off-by line
Mar 13, 2024
b875d64
http2: close connections when receiving too many headers (#1156)
z8n24 May 16, 2024
c676c84
Update Dockerfile to support multiarch build (#1120)
watchword Oct 4, 2024
4bed025
Fix format issue in bfe_http/request_test.go (#1163)
cuishuang Oct 4, 2024
b542302
Temporarily remove some test cases using legacy test data (#1193)
iyangsj Oct 5, 2024
5a14e5c
The experimental `dynamic plugin` is deprecated (#1197)
iyangsj Oct 5, 2024
f71f5fa
Update versions of some thirdpaty modules (#1198)
iyangsj Oct 8, 2024
f593914
Upgrade third-party modules for security reasons (#1201)
iyangsj Oct 22, 2024
59364a4
bfe_wasm
Nov 30, 2024
1618f4e
remove v2
Dec 1, 2024
0c8af1b
remove redundant codes
Dec 1, 2024
6994c8e
fix OnPluginStart
Dec 3, 2024
5d9f3ec
refine codes
Dec 3, 2024
bd614bb
fix.
Dec 3, 2024
8c81208
fix nil
Dec 3, 2024
e52e97b
rename package & remove some obsolete lines.
Dec 4, 2024
b4d2367
refine
Dec 4, 2024
9b2e478
fix & refine
Dec 5, 2024
4eea4d6
update CHANGELOG and VERSION files
Dec 29, 2024
b54ec66
resolving merge conflict.Using 1.7.0
Dec 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ jobs:
- name: Setup Go
uses: actions/setup-go@v2
with:
go-version: 1.17
go-version: 1.21

# Build
- name: Build
Expand All @@ -75,8 +75,8 @@ jobs:
- name: setup Python
uses: actions/setup-python@v2
with:
python-version: '2.x' # Version range or exact version of a Python version to use, using SemVer's version range syntax
- run: python -m SimpleHTTPServer 8181&
python-version: '3.x' # Version range or exact version of a Python version to use, using SemVer's version range syntax
- run: python3 -m http.server 8181&

# Modify Conf and Run
- name: Run
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,6 @@ coverage.txt
.vscode/*
bfe
dist/*
conf/wasm_plugin

.DS_Store
32 changes: 0 additions & 32 deletions .markdownlint.yml

This file was deleted.

2 changes: 2 additions & 0 deletions ADOPTERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ Some of our users include:

* [Haier](https://www.haier.com)

* [PITS Global Data Recovery Services](https://pitsdatarecovery.net/)

* [Postal Savings Bank of China](https://www.psbc.com)

* [Resolink](https://www.crresolink.com.cn)
Expand Down
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,25 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [v1.7.0] - 2024-12-29

### Added

- Support building docker images for multiple architectures
- Support WASM to allow dynamic plugin

### Fixed

- Upgrade versions of some third-paty modules for security reasons
- Fix format issue in bfe_http/request_test.go
- Temporarily remove some test cases using legacy test data
- mod_tcp_keepalive: fix broken unit tests
- http2: close connections when receiving too many headers

### Removed

- The previous experimental dynamic plugin is deprecated

## [v1.6.0] - 2022-10-21

### Added
Expand Down
6 changes: 4 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,13 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
FROM golang:1.17.5-alpine3.15 AS build
FROM --platform=${BUILDPLATFORM} golang:1.17.5-alpine3.15 AS build
ARG TARGETARCH
ARG TARGETOS

WORKDIR /bfe
COPY . .
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-X main.version=`cat VERSION`"
RUN CGO_ENABLED=0 GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags "-X main.version=`cat VERSION`"

FROM alpine:3.15 AS run
RUN apk update && apk add --no-cache ca-certificates
Expand Down
14 changes: 9 additions & 5 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,25 @@ This file lists who are the maintainers of the BFE project. The responsibilities

| Name | GitHub ID | Affiliation |
| ---- | --------- | ----------- |
| [Miao Zhang](mailto:zhangmiao02@baidu.com) | [mileszhang2016](https://github.com/mileszhang2016) | Baidu |
| [Sijie Yang](mailto:[email protected]) | [iyangsj](https://github.com/iyangsj) | Baidu |
| [Miao Zhang](mailto:zhangmiao@yf-networks.com) | [mileszhang2016](https://github.com/mileszhang2016) | Yingfei Networks |
| [Sijie Yang](mailto:[email protected]) | [iyangsj](https://github.com/iyangsj) | Tencent |

## Senior Maintainers

| Name | GitHub ID | Affiliation |
| ---- | --------- | ----------- |
| [Sijie Yang](mailto:[email protected]) | [iyangsj](https://github.com/iyangsj) | Baidu |
| [Sijie Yang](mailto:[email protected]) | [iyangsj](https://github.com/iyangsj) | Tencent |

## Maintainers

| Name | GitHub ID | Affiliation |
| ---- | --------- | ----------- |
| [Derek Zheng](mailto:[email protected]) | [shanhuhai5739](https://github.com/shanhuhai5739) | Kuaishou |
| [Xiaofei Yu](mailto:[email protected]) | [xiaofei0800](https://github.com/xiaofei0800) | Baidu |
| [Xiaofei Yu](mailto:[email protected]) | [xiaofei0800](https://github.com/xiaofei0800) | Tencent |
| [Wensi Yang](mailto:[email protected]) | [tianxinheihei](https://github.com/tianxinheihei) | ByteDance |
| [Kaiyu Zheng](mailto:[email protected]) | [kaiyuzheng](https://github.com/kaiyuzheng) | ByteDance |
| [Yuqi Xiao](mailto:[email protected]) | [Yuqi Xiao](https://github.com/YuqiXiao) | Baidu |
| [Yuqi Xiao](mailto:[email protected]) | [YuqiXiao](https://github.com/YuqiXiao) | ByteDance |
| [Wei Wei](mailto:[email protected]) | [weiwei99](https://github.com/weiwei99) | Baidu |
| [Andy Liang](mailto:[email protected]) | [andyxmu](https://github.com/andyxmu) | Yingfei Networks |
| [Leiming Xu](mailto:[email protected]) | [xuleiming](https://github.com/xuleiming) | Yingfei Networks |
| [Jian Song](mailto:[email protected]) | [clarinette9](https://github.com/clarinette9) | Yingfei Networks |
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ strip: prepare compile-strip package
# make prepare, download dependencies
prepare: prepare-dep prepare-gen
prepare-dep:
$(call INSTALL_PKG, goyacc, golang.org/x/tools/cmd/goyacc)
$(call INSTALL_PKG, goyacc, golang.org/x/tools/cmd/goyacc@latest)
prepare-gen:
cd "bfe_basic/condition/parser" && $(GOGEN)

Expand Down Expand Up @@ -117,7 +117,7 @@ package:
# make deps
deps:
$(call PIP_INSTALL_PKG, pre-commit)
$(call INSTALL_PKG, goyacc, golang.org/x/tools/cmd/goyacc)
$(call INSTALL_PKG, goyacc, golang.org/x/tools/cmd/goyacc@latest)
$(call INSTALL_PKG, staticcheck, honnef.co/go/tools/cmd/staticcheck)
$(call INSTALL_PKG, license-eye, github.com/apache/skywalking-eyes/cmd/license-eye@latest)

Expand Down
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,13 @@ Besides, we also implement [BFE Ingress Controller](https://github.com/bfenetwor
- [English version](https://www.bfe-networks.net/en_us/ABOUT/)
- [Chinese version](https://www.bfe-networks.net/zh_cn/ABOUT/)

## Book

- [In-depth Understanding of BFE](https://github.com/baidu/bfe-book) (Released in Feb 2023)

This book focuses on BFE open source project, introduces the relevant technical principles of network access, explains the design idea of BFE open source software, and how to build a network front-end platform based on BFE open source software. Readers with development capabilities can also develop BFE extension modules according to their own needs or contribute code to BFE open source projects according to the instructions in this book.


## Contributing

- Please create an issue in [issue list](http://github.com/bfenetworks/bfe/issues).
Expand Down
3 changes: 2 additions & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
1.6.0
1.7.0

28 changes: 24 additions & 4 deletions bfe.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ var (
showVersion = flag.Bool("v", false, "to show version of bfe")
showVerbose = flag.Bool("V", false, "to show verbose information about bfe")
debugLog = flag.Bool("d", false, "to show debug log (otherwise >= info)")
testConf = flag.Bool("t", false, "test configuration and exit")
)

var version string
Expand Down Expand Up @@ -74,7 +75,12 @@ func main() {
logSwitch = "DEBUG"
bfe_debug.DebugIsOpen = true
} else {
logSwitch = "INFO"
// ignore under ERROR level
if *testConf {
logSwitch = "ERROR"
} else {
logSwitch = "INFO"
}
bfe_debug.DebugIsOpen = false
}

Expand All @@ -84,7 +90,7 @@ func main() {
log4go.SetLogFormat(log4go.FORMAT_DEFAULT_WITH_PID)
log4go.SetSrcLineForBinLog(false)

err = log.Init("bfe", logSwitch, *logPath, *stdOut, "midnight", 7)
err = log.Init("bfe", logSwitch, *logPath, *stdOut || *testConf, "midnight", 7)
if err != nil {
fmt.Printf("bfe: err in log.Init():%s\n", err.Error())
bfe_util.AbnormalExit()
Expand All @@ -97,10 +103,13 @@ func main() {
config, err = bfe_conf.BfeConfigLoad(confPath, *confRoot)
if err != nil {
log.Logger.Error("main(): in BfeConfigLoad():%s", err.Error())
if *testConf {
fmt.Printf("bfe: configuration file %s test failed\n", confPath)
}
bfe_util.AbnormalExit()
}

// maximum number of CPUs (GOMAXPROCS) defaults to runtime.CPUNUM
// maximum number of CPUs (GOMAXPROCS) defaults to runtime.CPUNUM
// if running on machine, or CPU quota if running on container
// (with the help of "go.uber.org/automaxprocs").
// here, we change maximum number of cpus if the MaxCpus is positive.
Expand All @@ -112,11 +121,22 @@ func main() {
bfe_debug.SetDebugFlag(config.Server)

// start and serve
if err = bfe_server.StartUp(config, version, *confRoot); err != nil {
if err = bfe_server.StartUp(config, version, *confRoot, *testConf); err != nil {
log.Logger.Error("main(): bfe_server.StartUp(): %s", err.Error())
}

// waiting for logger finish jobs
time.Sleep(1 * time.Second)
log.Logger.Close()

// output final configuration test result
if *testConf {
if err != nil {
fmt.Printf("bfe: configuration file %s test failed\n", confPath)
bfe_util.AbnormalExit()
} else {
fmt.Printf("bfe: configuration file %s test is successful\n", confPath)
bfe_util.NormalExit()
}
}
}
Loading