Skip to content

Commit

Permalink
resolve conflict
Browse files Browse the repository at this point in the history
  • Loading branch information
limowang committed Jan 7, 2024
2 parents 8580b73 + 363d789 commit 5e2cee8
Show file tree
Hide file tree
Showing 33 changed files with 677 additions and 358 deletions.
1 change: 1 addition & 0 deletions .asf.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ github:
- ruojieranyishen
- ninsmiracle
- Samunroyu
- limowang

notifications:
commits: [email protected]
Expand Down
19 changes: 19 additions & 0 deletions .github/workflows/lint_and_test_collector.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,32 @@ on:
paths:
- .github/workflows/lint_and_test_collector.yml
- collector/**
- go-client/**

# for manually triggering workflow
workflow_dispatch:

# workflow tasks
jobs:
format:
name: Format
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Go
uses: actions/setup-go@v2
with:
go-version: 1.18
- name: Format
working-directory: ./go-client
run: |
gofmt -d .
test -z "$(gofmt -d .)"
lint:
name: Lint
needs: format
runs-on: ubuntu-20.04
steps:
- name: Checkout
Expand All @@ -58,6 +76,7 @@ jobs:

build:
name: Build
needs: lint
runs-on: ubuntu-20.04
steps:
- name: Checkout
Expand Down
210 changes: 142 additions & 68 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ src/runtime/dsn.layer2_types.cpp
onebox/
.zk_install/
*.data/
config-*.ini
.kill_test.shell.*
pegasus_kill_test.log
kill_history.txt
Expand Down Expand Up @@ -142,121 +141,196 @@ java-client/src/main/java/org/apache/pegasus/apps/*
java-client/src/main/java/org/apache/pegasus/replication/*
java-client/.flattened-pom.xml

# ============ #
# scala-client #
# ============ #
scala-client/project/project/
scala-client/project/target/

# From https://github.com/github/gitignore/blob/main/Scala.gitignore
scala-client/**/*.class
scala-client/**/*.log

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
scala-client/**/hs_err_pid*

# Created by .ignore support plugin (hsz.mobi)
### SBT template
# Simple Build Tool
# http://www.scala-sbt.org/release/docs/Getting-Started/Directories.html#configuring-version-control

scala-client/target/
### Scala template
scala-client/*.class
scala-client/*.log

scala-client/.idea/
scala-client/.iml
scala-client/rolling_log/

# ============= #
# python-client #
# ============= #
python-client/pypegasus/replication/
python-client/pypegasus/rrdb/
python-client/tests/_trial_temp/

# From https://github.com/github/gitignore/blob/main/Python.gitignore
# Byte-compiled / optimized / DLL files
python-client/__pycache__/
python-client/*.py[cod]
python-client/*$py.class
python-client/**/__pycache__/
python-client/**/*.py[cod]
python-client/**/*$py.class

# C extensions
python-client/*.so
python-client/**/*.so

# Distribution / packaging
python-client/.Python
python-client/env/
python-client/build/
python-client/develop-eggs/
python-client/dist/
python-client/downloads/
python-client/eggs/
python-client/.eggs/
python-client/lib/
python-client/lib64/
python-client/parts/
python-client/sdist/
python-client/var/
python-client/wheels/
python-client/*.egg-info/
python-client/.installed.cfg
python-client/*.egg
python-client/**/.Python
python-client/**/build/
python-client/**/develop-eggs/
python-client/**/dist/
python-client/**/downloads/
python-client/**/eggs/
python-client/**/.eggs/
python-client/**/lib/
python-client/**/lib64/
python-client/**/parts/
python-client/**/sdist/
python-client/**/var/
python-client/**/wheels/
python-client/**/share/python-wheels/
python-client/**/*.egg-info/
python-client/**/.installed.cfg
python-client/**/*.egg
python-client/**/MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
python-client/*.manifest
python-client/*.spec
python-client/**/*.manifest
python-client/**/*.spec

# Installer logs
python-client/pip-log.txt
python-client/pip-delete-this-directory.txt
python-client/**/pip-log.txt
python-client/**/pip-delete-this-directory.txt

# Unit test / coverage reports
python-client/htmlcov/
python-client/.tox/
python-client/.coverage
python-client/.coverage.*
python-client/.cache
python-client/nosetests.xml
python-client/coverage.xml
python-client/*.cover
python-client/.hypothesis/
python-client/**/htmlcov/
python-client/**/.tox/
python-client/**/.nox/
python-client/**/.coverage
python-client/**/.coverage.*
python-client/**/.cache
python-client/**/nosetests.xml
python-client/**/coverage.xml
python-client/**/*.cover
python-client/**/*.py,cover
python-client/**/.hypothesis/
python-client/**/.pytest_cache/
python-client/**/cover/

# Translations
python-client/*.mo
python-client/*.pot
python-client/**/*.mo
python-client/**/*.pot

# Django stuff:
python-client/*.log
python-client/local_settings.py
python-client/**/*.log
python-client/**/local_settings.py
python-client/**/db.sqlite3
python-client/**/db.sqlite3-journal

# Flask stuff:
python-client/instance/
python-client/.webassets-cache
python-client/**/instance/
python-client/**/.webassets-cache

python-client/# Scrapy stuff:
python-client/.scrapy
# Scrapy stuff:
python-client/**/.scrapy

# Sphinx documentation
python-client/docs/_build/
python-client/**/docs/_build/

# PyBuilder
python-client/target/
python-client/**/.pybuilder/
python-client/**/target/

# Jupyter Notebook
python-client/.ipynb_checkpoints
python-client/**/.ipynb_checkpoints

# pyenv
python-client/.python-version
# IPython
python-client/**/profile_default/
python-client/**/ipython_config.py

# celery beat schedule file
python-client/celerybeat-schedule
# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
python-client/**/.python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
python-client/**/Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
python-client/**/poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
python-client/**/pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
python-client/**/.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
python-client/**/__pypackages__/

# Celery stuff
python-client/**/celerybeat-schedule
python-client/**/celerybeat.pid

# SageMath parsed files
python-client/*.sage.py

# dotenv
python-client/.env
python-client/**/*.sage.py

# virtualenv
python-client/.venv
python-client/venv/
python-client/ENV/
# Environments
python-client/**/.env
python-client/**/.venv
python-client/**/env/
python-client/**/venv/
python-client/**/ENV/
python-client/**/env.bak/
python-client/**/venv.bak/

# Spyder project settings
python-client/.spyderproject
python-client/.spyproject
python-client/**/.spyderproject
python-client/**/.spyproject

# Rope project settings
python-client/.ropeproject
python-client/**/.ropeproject

# mkdocs documentation
python-client/site
python-client/**//site

# mypy
python-client/.mypy_cache/
python-client/**/.mypy_cache/
python-client/**/.dmypy.json
python-client/**/dmypy.json

# Pyre type checker
python-client/**/.pyre/

# pytype static type analyzer
python-client/**/.pytype/

# Cython debug symbols
python-client/**/cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
python-client/**/.idea/

.arcconfig
*.log*
Expand Down
7 changes: 7 additions & 0 deletions cmake_modules/BaseFunctions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -222,6 +222,13 @@ function(dsn_setup_compiler_flags)
add_compile_options(-Wno-deprecated-declarations)
add_compile_options(-Wno-inconsistent-missing-override)
add_compile_options(-Wno-attributes)

# Mute errors like the follows, the Pegasus codebase will be checked by clang-format, so it's safe to mute it.
# /__w/incubator-pegasus/incubator-pegasus/thirdparty/output/include/boost/lexical_cast/detail/lcast_unsigned_converters.hpp:149:17: error: this 'while' clause does not guard... [-Werror=misleading-indentation]
# 149 | inline CharT* main_convert_loop() BOOST_NOEXCEPT {
# | ^~~~~
add_compile_options(-Wno-misleading-indentation)

# -fno-omit-frame-pointer
# use frame pointers to allow simple stack frame walking for backtraces.
# This has a small perf hit but worth it for the ability to profile in production
Expand Down
16 changes: 16 additions & 0 deletions collector/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,19 @@ Collector is a part of the Pegasus ecosystem that serves as:
1. the service availability detector
2. the hotkey detector
3. the capacity units recorder

## Requirement

- Go1.18+

## Development

Build the collector:
```bash
make build
```

Format the code:
```bash
make fmt
```
2 changes: 1 addition & 1 deletion collector/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,4 @@ require (
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
)
2 changes: 1 addition & 1 deletion java-client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
</parent>
<groupId>org.apache.pegasus</groupId>
<artifactId>pegasus-client</artifactId>
<version>2.5.0-SNAPSHOT</version>
<version>2.6.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Pegasus Java Client</name>

Expand Down
2 changes: 1 addition & 1 deletion nodejs-client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "pegasus-nodejs-client",
"version": "2.5.0",
"version": "2.6.0",
"description": "offical pegasus nodejs client",
"main": "index.js",
"scripts": {
Expand Down
2 changes: 1 addition & 1 deletion python-client/pypegasus/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,4 @@
# specific language governing permissions and limitations
# under the License.

__version__ = '2.5.0'
__version__ = '2.6.0'
Loading

0 comments on commit 5e2cee8

Please sign in to comment.