diff --git a/.github/scripts/build_docs.sh b/.github/scripts/build_docs.sh index 2d6661c6..e06ef6d7 100755 --- a/.github/scripts/build_docs.sh +++ b/.github/scripts/build_docs.sh @@ -2,5 +2,5 @@ rm -rf doc/_apidoc/ rm -rf doc/build/ -sphinx-build -W -b html doc/ doc/build +sphinx-build -b html doc/ doc/build exit $? diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml deleted file mode 100644 index 6de0c433..00000000 --- a/.github/workflows/codeql.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: "CodeQL" - -on: - push: - branches: [ main, dev ] - pull_request: - # The branches below must be a subset of the branches above - branches: [ main ] - schedule: - - cron: '28 5 * * 4' - -jobs: - analyze: - name: Analyze - runs-on: ubuntu-latest - permissions: - security-events: write - - strategy: - fail-fast: false - matrix: - language: [ 'python' ] - - steps: - - name: Checkout repository - uses: actions/checkout@v4 - - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{ matrix.language }} - - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 - with: - category: "/language:${{matrix.language}}" diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml deleted file mode 100644 index 47d9a0f4..00000000 --- a/.github/workflows/coverage.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: Post coverage comment - -on: - workflow_run: - workflows: ["run_unit_tests"] - types: - - completed - -jobs: - test: - name: Run tests & display coverage - runs-on: ubuntu-latest - if: github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success' - steps: - - name: Post comment - uses: py-cov-action/python-coverage-comment-action@v3 - with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - GITHUB_PR_RUN_ID: ${{ github.event.workflow_run.id }} diff --git a/.github/workflows/integration_tests.yml b/.github/workflows/integration_tests.yml deleted file mode 100644 index 35726d13..00000000 --- a/.github/workflows/integration_tests.yml +++ /dev/null @@ -1,59 +0,0 @@ -name: Integration Tests - -# All tests in this file: -# 1. Run against every PR -# 2. Do not require AWS credentials (We only run the tests that require credentials on code that has been approved and merged to main) - -on: - push: - branches: - - main - - dev - pull_request: - branches: - - main - - dev - - -jobs: - prepare: - runs-on: ubuntu-latest - outputs: - matrix: ${{ steps.set-matrix.outputs.matrix }} - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: 3.x - - name: Prepare Inputs - id: set-matrix - run: | - import os - import json - - target_directory = 'test/integration_tests/configs/suites/quick' - files = [f for f in os.listdir(target_directory) if os.path.isfile(os.path.join(target_directory, f))] - matrix_json = json.dumps(files) - print(matrix_json) - with open('matrix.json', 'w') as f: - f.write(matrix_json) - - name = "matrix" - value = matrix_json - with open(os.environ['GITHUB_OUTPUT'], 'a') as fh: - print(f'{name}={value}', file=fh) - - shell: python - - - tests: - needs: prepare - strategy: - fail-fast: false - matrix: - suite: ${{ fromJSON(needs.prepare.outputs.matrix)}} - uses: ./.github/workflows/run_renate.yml - with: - path: test/integration_tests - script: run_quick_test.py --test-file ${{ matrix.suite }} - diff --git a/.github/workflows/pypi_publish.yml b/.github/workflows/pypi_publish.yml deleted file mode 100644 index 86a2257a..00000000 --- a/.github/workflows/pypi_publish.yml +++ /dev/null @@ -1,39 +0,0 @@ -name: Publish to PyPI - -on: - release: - types: [published] - -jobs: - build-n-publish: - name: Build and publish to PyPI - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - name: Set up Python 3.10 - uses: actions/setup-python@v5 - with: - python-version: "3.10" - - - name: Install pypa/build - run: >- - python -m - pip install - build - --user - - name: Build a binary wheel and a source tarball - run: >- - python -m - build - --sdist - --wheel - --outdir dist/ - . - - - name: Publish distribution to PyPI - uses: pypa/gh-action-pypi-publish@release/v1 - with: - password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/run_renate.yml b/.github/workflows/run_renate.yml deleted file mode 100644 index 628578da..00000000 --- a/.github/workflows/run_renate.yml +++ /dev/null @@ -1,60 +0,0 @@ -name: Run Renate - -permissions: - id-token: write # This is required for requesting the JWT - contents: read # This is required for actions/checkout - -on: - workflow_call: - inputs: - path: - required: true - type: string - script: - required: true - type: string - requires-aws-credentials: - required: false - type: boolean - timeout-minutes: - required: false - type: number - secrets: - PROD_AWS_END_TO_END_TEST_ROLE_ARN: - required: false - -env: - AWS_DEFAULT_REGION: us-west-2 - SCRIPT_PATH: ${{ inputs.script-path }} - AWS_ROLE: ${{ secrets.PROD_AWS_END_TO_END_TEST_ROLE_ARN }} - -jobs: - run: - runs-on: ubuntu-latest - timeout-minutes: ${{ inputs.timeout-minutes }} - steps: - - name: Configure AWS Credentials (if required) - if: ${{ inputs.requires-aws-credentials == true }} - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: ${{ secrets.PROD_AWS_END_TO_END_TEST_ROLE_ARN }} - role-session-name: integtestsession - aws-region: ${{ env.AWS_DEFAULT_REGION }} - - uses: actions/checkout@v4 - - name: Set up Python 3.9 - uses: actions/setup-python@v5 - with: - python-version: 3.9 - cache: 'pip' - - name: Install Renate - run: | - python -m pip install --upgrade pip - python -m pip install -e '.[dev]' - - name: Run optional custom command - if: ${{ inputs.additional-command != '' }} - run: ${{ inputs.additional-command }} - - name: Run Renate Script - run: | - cd ${{ inputs.path }} - python ${{ inputs.script }} - cd ~ diff --git a/.github/workflows/run_unit_tests.yml b/.github/workflows/run_unit_tests.yml deleted file mode 100644 index 1ed3d280..00000000 --- a/.github/workflows/run_unit_tests.yml +++ /dev/null @@ -1,82 +0,0 @@ -name: Unit Tests, Lint and Coverage - -on: - push: - branches: [ "main", "dev" ] - pull_request: - branches: [ "main", "dev" ] - -jobs: - test: - runs-on: ubuntu-latest - strategy: - matrix: - python-version: ["3.8", "3.9", "3.10"] - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Switch to Current Branch - run: git checkout ${{ env.BRANCH }} - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -r requirements.txt - pip install -e .[dev] - - - name: Lint with flake8 - run: | - pip install flake8 - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,E402,E501,F63,F7,F82,F401,W291,W605 --max-line-length=100 --show-source --statistics - # exit-zero treats all errors as warnings. - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=100 --statistics - - - name: Black - uses: psf/black@stable - with: - options: "--check --verbose" - - - name: Run unit tests - run: PYTHONPATH=test python -m pytest test/ - env: - COVERAGE_FILE: ".coverage.${{ matrix.python_version }}" - - - name: Store coverage file - uses: actions/upload-artifact@v3 - with: - name: coverage - path: .coverage.${{ matrix.python_version }} - - coverage: - name: Coverage - runs-on: ubuntu-latest - needs: test - steps: - - uses: actions/checkout@v4 - - - uses: actions/download-artifact@v3 - id: download - with: - name: 'coverage' - - - name: Coverage comment - id: coverage_comment - uses: py-cov-action/python-coverage-comment-action@v3 - with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - MERGE_COVERAGE_FILES: true - - - name: Store Pull Request comment to be posted - uses: actions/upload-artifact@v3 - if: steps.coverage_comment.outputs.COMMENT_FILE_WRITTEN == 'true' - with: - name: python-coverage-comment-action - path: python-coverage-comment-action.txt diff --git a/.github/workflows/sagemaker_tests.yml b/.github/workflows/sagemaker_tests.yml deleted file mode 100644 index a6363e92..00000000 --- a/.github/workflows/sagemaker_tests.yml +++ /dev/null @@ -1,69 +0,0 @@ -name: SageMaker Tests - -# All tests in this file: -# 1. Run when launched manually -# 2. Require AWS credentials and launch training jobs - -on: - workflow_dispatch: -# pull_request: # UNCOMMENT FOR TESTING -# branches: # UNCOMMENT FOR TESTING -# - main # UNCOMMENT FOR TESTING -# - dev # UNCOMMENT FOR TESTING - -env: - AWS_DEFAULT_REGION: us-west-2 - AWS_ROLE: ${{ secrets.PROD_AWS_END_TO_END_TEST_ROLE_ARN }} - -permissions: - id-token: write # This is required for requesting the JWT - contents: read # This is required for actions/checkout - -jobs: - launch-sagemaker-jobs: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 - with: - python-version: 3.9 - cache: 'pip' - - name: Install Renate - run: | - python -m pip install --upgrade pip - python -m pip install -e '.[dev]' - - name: Install toml library - run: pip install toml - - name: Write requirements.txt for SageMaker training jobs - run: | - python test/integration_tests/generate_requirements.py - - name: Get Credentials - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: ${{ secrets.PROD_AWS_END_TO_END_TEST_ROLE_ARN }} - role-session-name: integtestsession - aws-region: ${{ env.AWS_DEFAULT_REGION }} - - name: Launch SageMaker Jobs - run: | - import os - import subprocess - - target_directory = 'test/integration_tests/configs/suites/main' - files = [f for f in os.listdir(target_directory) if os.path.isfile(os.path.join(target_directory, f))] - - for file in files: - process = subprocess.Popen( - [ - "python", - "test/integration_tests/run_test.py", - "--test-file", - file, - "--seed", - "0", - "--requirements-file", - "test/integration_tests/requirements.txt", - ] - ) - process.wait() - - shell: python diff --git a/.github/workflows/test_docs.yml b/.github/workflows/test_docs.yml index ce75c923..6a1bdb06 100644 --- a/.github/workflows/test_docs.yml +++ b/.github/workflows/test_docs.yml @@ -21,12 +21,11 @@ jobs: - name: Set up Python 3.9 uses: actions/setup-python@v5 with: - python-version: "3.9" + python-version: "3.12" - name: Install dependencies run: | python -m pip install --upgrade pip - pip install -r requirements.txt pip install -r doc/requirements.txt - name: Build docs diff --git a/README.rst b/README.rst index 6dea1aa6..213c2431 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,10 @@ +.. warning:: + + **⚠️ This project has been archived and is no longer maintained.** + No further updates, bug fixes, or security patches will be provided. + Dependencies may be outdated and/or contain known vulnerabilities. + Use at your own risk. + .. image:: https://img.shields.io/pypi/status/Renate :target: # :alt: PyPI - Status diff --git a/doc/benchmarking/index.rst b/doc/benchmarking/index.rst index afa750b0..9544d82a 100644 --- a/doc/benchmarking/index.rst +++ b/doc/benchmarking/index.rst @@ -1,3 +1,7 @@ +.. warning:: + + This project has been archived and is no longer maintained. Dependencies may be outdated and/or contain vulnerabilities. + ************ Benchmarking ************ diff --git a/doc/conf.py b/doc/conf.py index c001868a..a1f60908 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -9,6 +9,28 @@ sys.path.insert(0, os.path.abspath("../src/")) +autodoc_mock_imports = [ + "avalanche", + "boto3", + "botocore", + "datasets", + "deepspeed", + "gdown", + "lightning", + "numpy", + "pandas", + "PIL", + "pytorch_lightning", + "sagemaker", + "syne_tune", + "tabulate", + "torch", + "torchmetrics", + "torchvision", + "transformers", + "wild_time_data", +] + import renate # noqa: E402 diff --git a/doc/examples/index.rst b/doc/examples/index.rst index 1d626ccf..d3da4748 100644 --- a/doc/examples/index.rst +++ b/doc/examples/index.rst @@ -1,3 +1,7 @@ +.. warning:: + + This project has been archived and is no longer maintained. Dependencies may be outdated and/or contain vulnerabilities. + ******** Examples ******** diff --git a/doc/getting_started/index.rst b/doc/getting_started/index.rst index 93e4a890..c162fcae 100644 --- a/doc/getting_started/index.rst +++ b/doc/getting_started/index.rst @@ -1,3 +1,7 @@ +.. warning:: + + This project has been archived and is no longer maintained. Dependencies may be outdated and/or contain vulnerabilities. + *************** Getting Started *************** diff --git a/doc/requirements.txt b/doc/requirements.txt index cc805761..d2487610 100644 --- a/doc/requirements.txt +++ b/doc/requirements.txt @@ -6,7 +6,3 @@ sphinxext-opengraph==0.9.1 pydata-sphinx-theme==0.15.4 sphinx-autodoc-typehints==2.2.2 sphinx-paramlinks==0.6.0 - -# Temporarily added -avalanche_lib==0.3.1 -wild-time-data==0.1.1