-
Notifications
You must be signed in to change notification settings - Fork 1.2k
new way to sync nrc #699
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
new way to sync nrc #699
Conversation
(cherry picked from commit 06202c3)
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
do not comments that lines for now, we will update the code later |
I dont have a NRC test environment, but it looks like working. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose it would work
* yihong0618-master: Add new runner (yihong0618#707) feat: adding illustration for special tracks (yihong0618#705) fix: use `KEEP_SPORT_TYPES` instead of `KEEP_DATA_TYPE_API` (yihong0618#703) Modified `Track` class to accept an optional `run_from` parameter in `to_namedtuple` method, (yihong0618#702) Fix readme tag closure (yihong0618#700) fix: lint new way to sync nrc (yihong0618#699) Update README-CN.md (yihong0618#693) add laihj's run page (yihong0618#691) Update README-CN.md (yihong0618#685) feat: integrate gen_svg into joyrun_sync.py(yihong0618#675) (yihong0618#680) Join Running page runners (yihong0618#683) chore: my data
* new way to sync nrc (cherry picked from commit 06202c3) * test git push
* new way to sync nrc (cherry picked from commit 06202c3) * test git push
* docs:rewrite docs (yihong0618#514) docs:rewrite docs Signed-off-by: shaoanianche <github@duanfei.org> * feat: add NavigationControl * update: sport type: trail_running * doc: runner info fix * fix: show in firefox Signed-off-by: yihong0618 <zouzou0208@gmail.com> * feat: reduce grid svg file size * feat: add NavigationControl (yihong0618#534) * feat:suport heart_rate in export gpx file (yihong0618#529) * feat:suport heart_rate in export gpx file * feat: reduce grid svg file size (yihong0618#535) * feat: elevation gain - strava/garmin(gpx/tcx/fit) * feat: elevation gain - keep: elevation & gpx type * upd deploy to github-pages (yihong0618#537) * 更新部署 github-pages 说明 * Update Deploy to Github-pages --------- Co-authored-by: haowei.chen <chenhaowei93@163.com> * fix: gh-pages build: drop the ref while trigger from Run Data Sync (yihong0618#540) * fix: gh-pages build: drop the ref while trigger from Run Data Sync * fix: nrc sync Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Master (yihong0618#545) * Update run_data_sync.yml * Update run_data_sync.yml * Update run_data_sync.yml * add screenshot to show how to get nike refresh token * add screenshot to show how to get nike refresh token * refactor * Update strava_to_garmin_sync.py (yihong0618#544) Sort the activities downloaded from Strava by their id's thus they are uploaded to Garmin from the oldest to the latest. Otherwise, the latest one is uploaded first, and if the process is interrupted, any activities older than it will never be uploaded because the code before this line gets the latest activity from Garmin and only download those newer than it from Strava. * doc: add nrc detail written by @angolap * perf: use auto instead of scroll (yihong0618#550) Co-authored-by: caojiawen <caojiawen@zmeng123.com> * feat: `RunRow` toggle selection & cursor pointer (yihong0618#551) * feat: PeriodStat marathon * feat: PeriodStat marathon * perf: split `activities.json` from index (yihong0618#552) * fix a bug in track.py. (yihong0618#559) * fix: yihong0618#566 * feat: Workouts click filter * feat: PeriodStat marathon * update: activities.json * feat: Lights on and off * style: Show boundary and line together, combine geoData(only when not combine yet) * style: disable dash and transparent, stronger line when lights off * update: drawing interval * update: site title * fix: update the year when change by Title & City, otherwise the `SVG` will be displayed and the table will not be shown if the previous status is 'Total' * fix: marathon filter * fix: Trail Run Marathon * style: Button alignment * style: dash line: default disable * style: Button alignment * fix: update the year when change by Title & City, otherwise the `SVG` will be displayed and the table will not be shown if the previous status is 'Total' (yihong0618#567) * fix: dockerfile typo thanks @dywu516 Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: Codoon tcx output use start_time as ID instead of Codoon id (yihong0618#568) * fix: Codoon tcv output use start_time as ID instead of Codoon id * fix lint by black --------- Co-authored-by: anchao <chao.an@fastonetech.com> * docs: add runner (yihong0618#571) * fix: Trail Run Marathon * feat: ✨ Support ga, default off (yihong0618#572) * docs: add runner page (yihong0618#577) add runner page * 添加 (yihong0618#578) Co-authored-by: ppz <ppzisgod@gmail.com> * Update index.tsx (yihong0618#579) bugfix: BPM Sort Function * Reduce svg size & lzay load github.svg and grid.svg (yihong0618#580) * feat: sync garmin cn to garmin global * github workflow * nits * nits * fix fit download gpx file (yihong0618#582) * garmin-cn sync garmin-global tutorial in readme and readme-cn * fix: lock lxml version Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Refactor: sync garmin cn to global Step 1: Sync all activities from Garmin CN to Garmin Global in FIT format. If the activity is manually imported with a GPX, the GPX file will be synced. Step 2: Generate track from gpx file. * nits * config: codoon sync all types * remove fake device * fix: yihong0618#584 change fit-tool to garmin-fit-sdk (yihong0618#590) * fix: 584 change fit-tool to garmin-fit-sdk * feat: garmin - handle gpx(if exist) when sync with fit * fix import error * doc: SEMICIRCLE * fix: wrap_device_info using fit-tool --------- Co-authored-by: NaturezzZ <naturezzz@outlook.com> * step 2, generate running page from .fit and .gpx * nits * fix readme * fix: city match * update: garmin remove GET_ALL config * style: Fullscreen Button alignment * Feat: lights switch (yihong0618#591) * feat: Lights on and off * style: Show boundary and line together, combine geoData(only when not combine yet) * style: disable dash and transparent, stronger line when lights off * style: Button alignment * style: Fullscreen Button alignment * feat: LIGHTS_ON config * feat: PRIVACY_MODE config * feat: PRIVACY_MODE config * doc: note for PRIVACY_MODE (yihong0618#594) * chore: my data Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: resolve issue yihong0618#597 (yihong0618#599) * set country name to chinese * nits * nits * fix: svg not found causes page crash (yihong0618#598) * Joyrun gpx export fix for pauses and gpx segments (yihong0618#601) support pause, add segments to gpx * fix: text position change when map zoom in and zoom out (yihong0618#604) * add min-width:100px to '.runRow td:first-child' class (ben-29#27) * chore: lint * set default file_suffix = gpx (yihong0618#609) * set default file_suffix = gpx * fix: lint Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> Co-authored-by: yihong0618 <zouzou0208@gmail.com> * add yer1k's running page (yihong0618#608) * Update ci.yml (yihong0618#610) Upgrade checkout to v4 from v3 and setup-python from v4 to v5 * Update GitHub Actions and README (yihong0618#611) * Update GitHub Pages+Custom domain instruction in README.md * update gh-pages.yml * update actions version in run_data_sync.yml * Added zh instrustion for custom domain with github.io and yer1k's running page link * fix: strava version Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: stravaweblib version Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: garmin cn to global, add name and source fields * fix: ts type error (yihong0618#622) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Fix README typo (yihong0618#624) * feat: coros sync (yihong0618#623) * feat: coros sync --------- Co-authored-by: Dingkun Yang <81750079+yer1k@users.noreply.github.com> * add run.drink.cafe (yihong0618#628) * Update README.md * Update README-CN.md * fix: kml import * chore: Update package manager and ignore requirements-dev.txt (yihong0618#632) Fix issue vercel error: spawn pip3 ENOENT by: - Update packageManager field from "pnpm@8.7.0" to "yarn@1.22.22" - Add `requirements-dev.txt` to `.vercelignore` close: yihong0618#627 Signed-off-by: yihong0618 <zouzou0208@gmail.com> * feat: add line color in China Geojson * feat: fill countries that been there; only support Chinese user; * feat: fill countries that been there; only support Chinese user; * chore: fix typo (yihong0618#633) * Add proxy config, add keep config, change npm registry, use yarn (yihong0618#634) Add readme. * Update README.md (yihong0618#638) * Update README.md //添加了我的running_page //修正install and testing(从pnpm改为yarn) * chore: Update package manager command, dependencies, and instructions - Update package manager command from `yarn install` to `pnpm install` - Change development command from `yarn vite` to `pnpm develop` * fix --------- Co-authored-by: yihong0618 <zouzou0208@gmail.com> * fix: tachyons-sass import error (yihong0618#639) * fix tachyons sass * fix tachyons sass * fix: no package manager Signed-off-by: yihong0618 <zouzou0208@gmail.com> * docs: add a comment in `src/utils/consts.ts` to remind about security considerations regarding the `MAPBOX_TOKEN` (yihong0618#644) * fix: type VirtualRide * docs: update README (yihong0618#650) Co-authored-by: wangliyong <wangliyong@webull.com> * doc: add new runner * docs: add runner (yihong0618#651) * feat: fill country (yihong0618#654) * feat: add line color in China Geojson * feat: fill countries that been there; only support Chinese user; * feat: fill countries that been there; only support Chinese user; * style: use Tailwind CSS (yihong0618#655) * style: use Tailwind CSS * update yarn.lock * fix style file path * fix build error * A nested style rule cannot start with 'thead' because it looks like the start of a declaration * @import must precede all other statements * fix style * format files with prettier * Add data to 'running page runners' table (yihong0618#656) * Add date of Running page runners table * Add date of Running page runners table * add keep2strava (yihong0618#653) Adds keep2strava features and support for multiple sport types * style: use Tailwind CSS * Update README-CN.md (yihong0618#663) add https://run.jiangkai.org personal running page, please review, thanks. * Fix codoon and Upload tcx_to_garmin (yihong0618#662) * add oppo_sync and tcx_to_garmin.py also modify some format problem when uploading the tcx file export from codoon. * 修改readme.md * 修复CI遇到的问题,已经根据评审修改相关的代码 * 解决运行时参数少了的异常 * Optimise the lap details in tcx file. * type: 修改漏掉的文件 scope: subject: * 完善代码逻辑 * 修改代码漏洞 * 修改oppo的请求接口地址 * 解决编译问题 * 解决咕咚tcx生成异常问题,同时解决当前存在的CI问题 * 使用black完成代码format * fix: upload_file_to_strava not force the type to run * style: LINE_OPACITY 0.4 -> 0.6 * style: bigger map & table * fix the deprecation warning (yihong0618#668) * add </details> (yihong0618#669) * chore: add raycast extension support (yihong0618#670) * Add laqieer's running page to README (yihong0618#672) * fix: xingzhe start_time_local * feat: elevation gain - keep: elevation & gpx type * feat: elevation gain - ui * feat: joyrun gpx: elevation and heart_rate * feat: elevation gain - joyrun * feat: elevation gain - keep * feat: elevation gain - gpx * feat: elevation gain - oppo * feat: elevation gain - tulipsport * feat: elevation gain - field name * feat: elevation gain - db updator * feat: elevation gain - fix * chore: my data Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Join Running page runners (yihong0618#683) * feat: integrate gen_svg into joyrun_sync.py(yihong0618#675) (yihong0618#680) * Update README-CN.md (yihong0618#685) * add laihj's run page (yihong0618#691) * Update README-CN.md (yihong0618#693) * new way to sync nrc (yihong0618#699) * new way to sync nrc (cherry picked from commit 06202c3) * test git push * fix: lint Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Fix readme tag closure (yihong0618#700) * Modified `Track` class to accept an optional `run_from` parameter in `to_namedtuple` method, (yihong0618#702) allowing dynamic naming of activities based on their source. * fix: use `KEEP_SPORT_TYPES` instead of `KEEP_DATA_TYPE_API` (yihong0618#703) * doc: update notice * doc: readme * add: 2024 data * feat: adding illustration for special tracks (yihong0618#705) * feat: add illustration for special tracks update * format special distance * Add new runner (yihong0618#707) * Some Front Optimization for Keep indoor data (yihong0618#709) * fix: use specific version match lockfileVersion * chore: slient stderr * fix: heartRates is in keep run data * chore: spell * refactor: use city coord instead country coord (keep indoor data has incomplete geoPoints) * Update utils.ts * add: type EBikeRide * doc: fix typo close yihong0618#704 Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Fix AttributeError in Activity class (yihong0618#714) * ignore the year which has no running data when drawing github.svg (yihong0618#712) * feat: conditionally output analysis JS only in Vercel environment (yihong0618#715) * feat: fix nrc Changed their apis (yihong0618#718) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * ci: fix Actions bot as committer deafault Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: light mode change to false as default (yihong0618#724) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * chore: update my data Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: `FullscreenControl` is not fullscreen until resizing window (yihong0618#726) * perf: listen to `fullscreenchange` instead of `onRender` resize (yihong0618#729) * fix: tracks color (yihong0618#730) * fix: tracks color * chore: black format * fixed the bug where incremental uploads failed for not storing synced_activity in GitHub cache in sync_garmin_cn_global mode (yihong0618#734) * Python 3.7 to 3.11 in Cloudflare (yihong0618#736) * Python 3.7 to 3.11. Python 3.7 does not work properly in Cloudflare, whereas Python 3.11 does. * fix: also for README-CN Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> Co-authored-by: yihong0618 <zouzou0208@gmail.com> * feat: pargent (yihong0618#738) * feat: pargent Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: add requirements duckdb Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: default false for duckdb Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Richer activity title with more sport types and locations (yihong0618#733) * show activity name with more detailed type * Added a flag for whether to turn on rich activity titles * fix: subtype issue (yihong0618#744) * fix: subtype issue Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: drop nrc dead code Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: yihong0618#745 and subtype to strava Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: update python version Signed-off-by: yihong0618 <zouzou0208@gmail.com> * doc: readme python version Signed-off-by: yihong0618 <zouzou0208@gmail.com> * adapt: Richer activity title * doc: simplify * chore: sync my data to latest Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Update README.md (yihong0618#754) * Remove duplicate runs from joyrun (yihong0618#757) * remove duplicate runs from joyrun and support user-defined threshold value in command line * Reformat run_page/joyrun_sync.py using black to align with github merge rules * fix arguments not match error (yihong0618#758) * add Evan's page (English and Chinese) (yihong0618#759) * add Evan's page * add Evan's page CN * Update LICENSE, fix license year (yihong0618#760) Signed-off-by: JasonnnW3000 <sufssl04@gmail.com> * fix Dockerfile: package manager from yarn->pnpm (yihong0618#761) Co-authored-by: walkerdu <walkerdu@tencent.com> * Fix: using pnpm from corepack when install dependency (yihong0618#762) * feat: use pnpm from corepack to install dependency Since package.json already has the packageManager field specified with pnpm and its specific version, there is no reason not to use it during whole dev/build process. * feat: use npmmirror in Dockerfile * feat: install pnpm through mirror * feat(Dockerfile): set apt-get mirror * doc: new runner Signed-off-by: yihong0618 <zouzou0208@gmail.com> * chore: Optimize the Github svg style (yihong0618#765) * fix: corepack Signed-off-by: yihong0618 <zouzou0208@gmail.com> * Fix CI format failure (yihong0618#772) * ci: show diff if check format failed * fix: format check failure in ci https://github.com/laqieer/running_page/actions/runs/13156810689 * ci: fix permission Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: ci upload Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: page permission fucked Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix:... * docs: new runner Signed-off-by: yihong0618 <zouzou0208@gmail.com> * docs: new runner Signed-off-by: yihong0618 <zouzou0208@gmail.com> * ci: safe ci using zizmor (yihong0618#774) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: id-token write Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: Enable persist-credentials to resolve authentication failure in GitHub Actions (yihong0618#780) * ci: 更新 GitHub Actions 工作流配置 - 修改了 actions/checkout@v4 步骤的 persist-credentials 参数 - 将 persist-credentials 参数从 false 修改为 true * ci: 更新 GitHub Actions 工作流中的凭据配置 - 在 ci.yml 中将 persist-credentials 设置为 false,以提高安全性 - 在 run_data_sync.yml 中将 persist-credentials 设置为 true,以确保数据同步任务的正常运行 * fix: joyrun duplicate check logic (yihong0618#784) * Refactor `parse_points_to_gpx()` of joyrun_sync.py to modularize GPX instance construction for extension data (yihong0618#783) * [Refactor] Create classes to handle pause data in parse_points_to_gpx() * [Refactor] Reorder GPX instances creation * [Refactor] Use gpxpy native classes to construct GPX data in `parse_points_to_gpx()` * fix: joyrun duplicate check logic (yihong0618#784) * [Update] Address the Pause and Pause list class type conversion issue --------- Co-authored-by: Ben Bell <ben_29@live.com> * [Add] Add heart rate data in Joyrun output GPX file extension (yihong0618#785) * Add heart rate data in Joyrun output GPX file extension * nit: remove unused import * Update README.md (yihong0618#790) * add: Coros multi sports * doc: autocorrect it (yihong0618#793) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * download all activities (yihong0618#795) * doc: new runner (yihong0618#796) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: type swimming (coros) * fix: ruff it Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: typo in run_data_sync.yml (yihong0618#799) * fix: keep_sync.py (yihong0618#800) * Update keep_sync.py keep字段变化 timestamp->unixTimestamp * fix: keep_sync.py lint * fix: keep_sync.py lint * feat: Add summary page (yihong0618#750) * feat: Add summary page * fix: some style Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> Co-authored-by: mx <480471449@qq.com> Co-authored-by: yihong0618 <zouzou0208@gmail.com> * fix: chore my data (yihong0618#802) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: update local date handling in ActivityList component (yihong0618#803) * fix: improve week calculation in ActivityList component (yihong0618#804) * style: summary page * fix: add redirect handling in 404 page and improve index.html script for Github Pages (yihong0618#807) * fix: add redirect handling in 404 page and improve index.html script for Github Pages * fix: update base URL handling in index.html, 404.html, and site-metadata.ts * fix: ignore fit no distance (yihong0618#811) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * different path color based on sport type (yihong0618#741) * feat: Elevation Gain (yihong0618#719) * feat: elevation gain - strava/garmin(gpx/tcx/fit) * feat: elevation gain - keep: elevation & gpx type * feat: elevation gain - keep: elevation & gpx type * feat: elevation gain - ui * feat: joyrun gpx: elevation and heart_rate * feat: elevation gain - joyrun * feat: elevation gain - keep * feat: elevation gain - gpx * feat: elevation gain - oppo * feat: elevation gain - tulipsport * feat: elevation gain - field name * feat: elevation gain - db updator * feat: elevation gain - fix * doc: update notice * feat: elevation gain display switch, default not show --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> Co-authored-by: yihong0618 <zouzou0208@gmail.com> * fix: replace HeartRateList with DataSeries for heart rate and elevation_gain in Joyrun (yihong0618#813) * fix: replace HeartRateList with DataSeries for heart rate and altitude data handling * fix: add missing elevation parameter to new_track_point and update docstring for altitude data * fix: handle None values for elevation gain in activity updates (yihong0618#814) * fix: some typos (yihong0618#815) Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix garmin route load failure due to garmin fit format change (yihong0618#816) * feat: support pdm (yihong0618#818) * feat: support pdm Signed-off-by: yihong0618 <zouzou0208@gmail.com> * fix: address comments Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: yihong0618 <zouzou0208@gmail.com> --------- Signed-off-by: shaoanianche <github@duanfei.org> Signed-off-by: yihong0618 <zouzou0208@gmail.com> Signed-off-by: JasonnnW3000 <sufssl04@gmail.com> Co-authored-by: Friends A <github@duanfei.org> Co-authored-by: ben_29 <ben_29@live.com> Co-authored-by: yihong0618 <zouzou0208@gmail.com> Co-authored-by: haowei93 <727171008@qq.com> Co-authored-by: haowei.chen <chenhaowei93@163.com> Co-authored-by: Zion <67903793+zlog-in@users.noreply.github.com> Co-authored-by: Li Peng <lipeng31@gmail.com> Co-authored-by: orionna319 <85230052+orionna319@users.noreply.github.com> Co-authored-by: caojiawen <caojiawen@zmeng123.com> Co-authored-by: conanyangqun <yangqunxinli@163.com> Co-authored-by: Chao An <andrew881003@qq.com> Co-authored-by: anchao <chao.an@fastonetech.com> Co-authored-by: Chilly Forest <1394466835@qq.com> Co-authored-by: iiiRyan <85ryan.blue@gmail.com> Co-authored-by: 8824PPZ <36729296+8824PPZ@users.noreply.github.com> Co-authored-by: ppz <ppzisgod@gmail.com> Co-authored-by: ElvisZhu <zjb1229@gmail.com> Co-authored-by: /ictor Lin <vlin@hotmail.com> Co-authored-by: NaturezzZ <naturezzz@outlook.com> Co-authored-by: NaturezzZ <46887061+NaturezzZ@users.noreply.github.com> Co-authored-by: Fahrayheit <raym0nd@outlook.com> Co-authored-by: Sayid He <herq12315@gmail.com> Co-authored-by: beer <beer5214@126.com> Co-authored-by: Dingkun Yang <81750079+Yer1k@users.noreply.github.com> Co-authored-by: tianheg <i@tianheg.co> Co-authored-by: Garden Yuen <weaming@users.noreply.github.com> Co-authored-by: pq <44841842+qianphong@users.noreply.github.com> Co-authored-by: lalalala256 <jtwang256@163.com> Co-authored-by: gavenwan <37296420+gavenwan@users.noreply.github.com> Co-authored-by: Chris <46549482+changchiyou@users.noreply.github.com> Co-authored-by: Leeyom Wang <635709492@qq.com> Co-authored-by: wangliyong <wangliyong@webull.com> Co-authored-by: Zeonsing G <110376555+NoonieBao@users.noreply.github.com> Co-authored-by: Paul Yao <yaoper@163.com> Co-authored-by: _SongJ <songj9507@outlook.com> Co-authored-by: NoZTurn <infoseek@163.com> Co-authored-by: Vensent.Wang <kobeangeles8@gmail.com> Co-authored-by: Oilbeater <liumengxinfly@gmail.com> Co-authored-by: Lemon <bxb100@outlook.com> Co-authored-by: laqieer <laqieer@126.com> Co-authored-by: Guoxin Liu <lgx31@sina.cn> Co-authored-by: twyc <im.wangyichao@qq.com> Co-authored-by: Uiolee <22849383+uiolee@users.noreply.github.com> Co-authored-by: 赖恒坚 <hamainter@gmail.com> Co-authored-by: Darren <110591423+Flavored4179@users.noreply.github.com> Co-authored-by: Joey Xue <xue.zhl.learn@gmail.com> Co-authored-by: shiyang07ca <iceyasha@gmail.com> Co-authored-by: F4ria <f4riacool@gmail.com> Co-authored-by: Ginta <775650117@qq.com> Co-authored-by: houfeng <houfeng0923@gmail.com> Co-authored-by: Liudon <i.mu@qq.com> Co-authored-by: JacquesWanna <qingcheliuzhi@qq.com> Co-authored-by: dafengy <112263692+dafengy@users.noreply.github.com> Co-authored-by: Samuel Dixon <61887299+SamuelDixxon@users.noreply.github.com> Co-authored-by: simongong <simon.gong64@gmail.com> Co-authored-by: RealTiny656 <tiny656@hotmail.com> Co-authored-by: Ling-Hao CHEN <48591455+LinghaoChan@users.noreply.github.com> Co-authored-by: Jason N. White <sufssl04@gmail.com> Co-authored-by: walkerdu <walkerdualias@gmail.com> Co-authored-by: walkerdu <walkerdu@tencent.com> Co-authored-by: Oちゃん <71199274+OrkWard@users.noreply.github.com> Co-authored-by: Xinyu Kuo <gxylong@126.com> Co-authored-by: viazure <vicrease@gmail.com> Co-authored-by: ddddzh <61132463+ddddzh@users.noreply.github.com> Co-authored-by: danielyu316 <134822806+danielyu316@users.noreply.github.com> Co-authored-by: woodenrobot <woodenrobot1993@gmail.com> Co-authored-by: MikuSugar <1076414691@qq.com> Co-authored-by: John Brandon <132646358+malanxi2022@users.noreply.github.com> Co-authored-by: mx <480471449@qq.com> Co-authored-by: hank.zhao <hankzhao@trip.com>
(cherry picked from commit 06202c3)