Haiou Wang

12 papers A* 1Journal 7Unranked 4
YearRankTypeTitle / Venue / Authors
2026 A* conf
AAAI
Binqing Wu, Weiqi Chen, Shiyu Liu, Zongjiang Shang, Haiou Wang, Liang Sun, Ling Chen
2024 J jnl
J. King Saud Univ. Comput. Inf. Sci.
Zaiheng Zhang, Yanjie Lu, Mingtao Ye, Wanyu Huang, Lixu Jin, Guodao Zhang, Yisu Ge, Alireza Baghban, Qiwen Zhang, Haiou Wang, Wenzong Zhu
2024 conf
ICBEA
Sara Shamim, Haiou Wang, Long Ba
2021 J jnl
Comput. Math. Appl.
Hanqing Li, Bonan Xu, Hanhui Jin, Haiou Wang, Jianren Fan
2020 J jnl
J. Comput. Phys.
Min Chai, Kun Luo, Changxiao Shao, Haiou Wang, Jianren Fan
2020 J jnl
ACM Trans. Intell. Syst. Technol.
Hui Liu, Haiou Wang, Yan Wu, Lei Xing
2019 J jnl
J. Intell. Fuzzy Syst.
Hui Liu, Haiou Wang, Yixuan Yuan, Caiming Zhang
2018 J jnl
J. Comput. Phys.
Changxiao Shao, Kun Luo, Min Chai, Haiou Wang, Jianren Fan
2017 J jnl
Int. J. Emerg. Technol. Learn.
Haiou Wang
2010 conf
CCTA (4)
Siquan Hu, Haiou Wang, Chundong She, Junfeng Wang
2010 conf
CCTA (1)
Siquan Hu, Haiou Wang, Chundong She, Junfeng Wang
2010 conf
CCTA (3)
Haiou Wang, Guangrong Zhong, Guoqing Shi, Fangting Pan
lint.sh
← Index lint.sh bash
#!/bin/bash

# Linting script for REDB project
# Usage: ./lint.sh [--fix] [--check-only]

set -e

# Colors for output
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color

# Default values
FIX=false
CHECK_ONLY=false

# Parse arguments
while [[ $# -gt 0 ]]; do
    case $1 in
        --fix)
            FIX=true
            shift
            ;;
        --check-only)
            CHECK_ONLY=true
            shift
            ;;
        *)
            echo "Unknown option: $1"
            echo "Usage: $0 [--fix] [--check-only]"
            exit 1
            ;;
    esac
done

echo -e "${GREEN}Running linting checks on REDB project...${NC}"

# Check if we're in a virtual environment
if [[ "$VIRTUAL_ENV" == "" ]]; then
    echo -e "${YELLOW}Warning: Not in a virtual environment. Consider activating one.${NC}"
fi

# Function to run a command and check its exit status
run_check() {
    local name="$1"
    local command="$2"
    
    echo -e "\n${YELLOW}Running $name...${NC}"
    if eval "$command"; then
        echo -e "${GREEN}✓ $name passed${NC}"
    else
        echo -e "${RED}✗ $name failed${NC}"
        return 1
    fi
}

# Track overall success
overall_success=true

# 1. isort (import sorting)
if [[ "$FIX" == true ]]; then
    run_check "isort" "isort redb/" || overall_success=false
else
    run_check "isort" "isort --check-only --diff redb/" || overall_success=false
fi

# 2. black (code formatting)
if [[ "$FIX" == true ]]; then
    run_check "black" "black redb/" || overall_success=false
else
    run_check "black" "black --check --diff redb/" || overall_success=false
fi

# 3. flake8 (style and error checking)
run_check "flake8" "flake8 redb/" || overall_success=false

# 4. pylint (comprehensive analysis)
run_check "pylint" "pylint --rcfile=pyproject.toml redb/" || overall_success=false

echo -e "\n${GREEN}Linting completed!${NC}"

if [[ "$overall_success" == true ]]; then
    echo -e "${GREEN}All checks passed! ✨${NC}"
    exit 0
else
    echo -e "${RED}Some checks failed. Please fix the issues above.${NC}"
    exit 1
fi