diff --git a/.github/workflows/GenerateReport-Debug.yml b/.github/workflows/GenerateReport-Debug.yml new file mode 100644 index 0000000..7762ed7 --- /dev/null +++ b/.github/workflows/GenerateReport-Debug.yml @@ -0,0 +1,97 @@ +name: Generate Report (Debug) + +on: + workflow_dispatch: + push: + branches: + - MonthlyReport + paths: + - '**.py' + - 'GenerateReport-Debug.yml' + - '.github/workflows/PythonSetup/**' + - '.github/workflows/RcloneSetup/**' + - '.env' + - 'src/**' + +permissions: + contents: write + +jobs: + healthcheck: + name: Health Check + runs-on: ubuntu-latest + environment: WT_WeeklyTriggerEnv + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + ref: MonthlyReport + + - name: Call setup-python + id: setup-python + uses: ./.github/workflows/PythonSetup + + - name: DEBUG - Check pip health + run: | + pip --version + python -c "import pip._vendor.resolvelib; print(pip._vendor.resolvelib.__file__)" + + - name: DEBUG - Print config.env + run: grep -E '^(FULL_RELOAD_PACKAGES|BASE_PACKAGE_CSV|REQUIREMENTS_FILE)=' .env || true + + generate-report: + name: Generate Weekly Report + runs-on: ubuntu-latest + needs: healthcheck + environment: WT_WeeklyTriggerEnv + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + ref: MonthlyReport + + - name: Call setup-python + id: setup-python + uses: ./.github/workflows/PythonSetup + + - name: DEBUG - Check pip health + run: | + pip --version + python -c "import pip._vendor.resolvelib; print(pip._vendor.resolvelib.__file__)" + + - name: DEBUG - Print config.env + run: grep -E '^(FULL_RELOAD_PACKAGES|BASE_PACKAGE_CSV|REQUIREMENTS_FILE)=' .env || true + + - name: Run weekly report script + run: python GenerateReport.py + + - name: DEBUG - Show changed files + run: | + git status + git diff --name-only + + - name: Commit and push changes + run: | + git config user.name "github-actions[bot]" + git config user.email "github-actions[bot]@users.noreply.github.com" + + git add WeeklyReport/* || true + git commit -m "📝 Update WeeklyReport on $(date '+%Y-%m-%d %H:%M')" || echo "No changes in WeeklyReport" + + git add MonthlyReport/* || true + git commit -m "📊 Update MonthlyReport on $(date '+%Y-%m-%d %H:%M')" || echo "No changes in MonthlyReport" + + git add src/BasePackageWithDependencies.csv || true + git commit -m "📦 Update BasePackageWithDependencies on $(date '+%Y-%m-%d %H:%M')" || echo "No changes in BasePackageWithDependencies" + + # Pull remote changes before pushing to avoid non-fast-forward errors + git fetch origin ${{ github.ref_name }} + git rebase origin/${{ github.ref_name }} || { + echo "❌ Rebase failed due to conflict. Please resolve manually." + exit 1 + } + + git push origin HEAD:${{ github.ref_name }} || { + echo "❌ Push failed. Someone else may have pushed changes. Please re-run the workflow." + exit 1 + } diff --git a/.github/workflows/GenerateReport.yml b/.github/workflows/GenerateReport.yml index 7fa51a4..4178660 100644 --- a/.github/workflows/GenerateReport.yml +++ b/.github/workflows/GenerateReport.yml @@ -4,14 +4,6 @@ on: schedule: - cron: '0 0 * * MON,THU' workflow_dispatch: - push: - branches: - - main - paths: - - '**.py' - - '**.yml' - - '.env' - - 'src/**' permissions: contents: write diff --git a/GenerateReport.py b/GenerateReport.py index 5739a2d..e4cafa8 100644 --- a/GenerateReport.py +++ b/GenerateReport.py @@ -23,6 +23,7 @@ from utils.ConfigUtils import( get_report_paths, get_report_output_folder, + get_monthly_report_output_folder, load_base_packages, parse_requirements ) @@ -84,6 +85,7 @@ def main() -> None: """ paths = get_report_paths() report_dir = get_report_output_folder() + monthly_report_dir = get_monthly_report_output_folder() OUTPUT_CSV = paths["csv"] logger.debug(f"CSV Path: {OUTPUT_CSV}") @@ -274,7 +276,55 @@ def main() -> None: logger.warning(f"⚠️ {len(failed_versions)} package versions failed vulnerability check. Saved to {OUTPUT_FAILED}.txt") except Exception as e: print(f"❌ Failed to write failed packages list: {e}") - + + # Monthly Report + import pandas as pd + from datetime import datetime + monthly_df = pd.DataFrame(rows)[[ + 'Package Name', 'Package Type', 'Custodian', 'Current Version', + 'Dependencies for Current', 'Newer Versions', 'Dependencies for Latest', + 'Latest Version', 'Current Version Vulnerable?', 'Current Version Vulnerability Details', + 'Upgrade Version Vulnerable?', 'Upgrade Vulnerability Details', + 'Suggested Upgrade', 'Remarks' + ]] + # Overview Sheet + total_packages = len(monthly_df) + base_count = (monthly_df['Package Type'] == 'Base Package').sum() + dep_count = total_packages - base_count + custodian_summary = monthly_df.groupby(['Custodian', 'Package Type']).size().unstack(fill_value=0) + custodian_summary['Total'] = custodian_summary.sum(axis=1) + overview_df = pd.DataFrame({ + "Metric": ["Total Packages", "Base Packages", "Dependency Packages"], + "Count": [total_packages, base_count, dep_count] + }) + # Custodian Sheet + custodian_raw_df = pd.read_csv(CUSTODIAN_LIST) + custodian_map_rev = { + "1": decode_base64_env("CUSTODIAN_1"), + "2": decode_base64_env("CUSTODIAN_2") + } + custodian_raw_df['Custodian'] = custodian_raw_df['Custodian'].astype(str).map(custodian_map_rev) + + now = datetime.now().strftime("%Y%m-%d-%H%M") + monthly_file_path = os.path.join(monthly_report_dir, f"MonthlyReport-{now}.xlsx") + YearMonth = datetime.now().strftime("%Y%m") + + # Write to Monthly Report + try: + with pd.ExcelWriter(monthly_file_path, engine='xlsxwriter') as writer: + overview_df.to_excel(writer, sheet_name='Overview', index=False) + custodian_summary.reset_index().to_excel(writer, sheet_name='Overview', startrow=5, index=False) + custodian_raw_df.to_excel(writer, sheet_name='Custodian', index=False) + monthly_df.to_excel(writer, sheet_name=f'Monthly Report - {YearMonth}', index=False) + # Hide specific columns in Excel + worksheet = writer.sheets[f'Monthly Report - {YearMonth}'] + col_indices = monthly_df.columns.get_indexer(['Dependencies for Current', 'Dependencies for Latest']) + for col_idx in col_indices: + worksheet.set_column(col_idx, col_idx, None, None, {'hidden': True}) + print(f"\U0001F4C4 Monthly Excel report saved to {monthly_file_path}") + except Exception as e: + print(f"\u274C Failed to write monthly Excel report: {e}") + # Summary logging total = len(rows) base_count = sum(1 for r in rows if r['Package Type'] == 'Base Package') @@ -294,4 +344,4 @@ def main() -> None: main() except KeyboardInterrupt: print("\n❌ Execution interrupted by user.") - sys.exit(1) \ No newline at end of file + sys.exit(1) diff --git a/MonthlyReport/2025-06/MonthlyReport-202506-02-0858.xlsx b/MonthlyReport/2025-06/MonthlyReport-202506-02-0858.xlsx new file mode 100644 index 0000000..e038e23 Binary files /dev/null and b/MonthlyReport/2025-06/MonthlyReport-202506-02-0858.xlsx differ diff --git a/MonthlyReport/2025-06/MonthlyReport-202506-02-0907.xlsx b/MonthlyReport/2025-06/MonthlyReport-202506-02-0907.xlsx new file mode 100644 index 0000000..d7e121d Binary files /dev/null and b/MonthlyReport/2025-06/MonthlyReport-202506-02-0907.xlsx differ diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.csv b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.csv new file mode 100644 index 0000000..01485a2 --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.csv @@ -0,0 +1,6 @@ +Package Name,Package Type,Custodian,Current Version,Dependencies for Current,Newer Versions,Dependencies for Latest,Latest Version,Current Version Vulnerable?,Current Version Vulnerability Details,Upgrade Version Vulnerable?,Upgrade Vulnerability Details,Suggested Upgrade,Upgrade Instruction,Remarks +adlfs,Base Package,EY,2024.4.1,"azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == ""docs""; myst-parser; extra == ""docs""; furo; extra == ""docs""; numpydoc; extra == ""docs""; pytest; extra == ""tests""; docker; extra == ""tests""; pytest-mock; extra == ""tests""; arrow; extra == ""tests""; dask[dataframe]; extra == ""tests""","2024.7.0, 2024.12.0","azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == ""docs""; myst-parser; extra == ""docs""; furo; extra == ""docs""; numpydoc; extra == ""docs""; pytest; extra == ""tests""; docker; extra == ""tests""; pytest-mock; extra == ""tests""; arrow; extra == ""tests""; dask[dataframe]; extra == ""tests""",2024.12.0,No,,No,None,2024.12.0,"{'base_package': 'adlfs==2024.12.0', 'dependencies': ['azure-core==1.34.0', 'azure-datalake-store==0.0.53', 'azure-identity==1.23.0', 'azure-storage-blob==12.26.0b1', 'fsspec==2023.12.2', 'aiohttp==3.12.6', 'sphinx==8.3.0', 'myst-parser==4.0.1', 'furo==2024.8.6', 'numpydoc==1.8.0', 'pytest==8.3.5', 'docker==7.1.0', 'pytest-mock==3.14.1', 'arrow==1.3.0', 'dask==2025.5.1']}", +adal,Dependency Package,EY,1.2.7,"PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)",,"PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)",1.2.7,No,,No,None,1.2.7,"{'base_package': 'adal==1.2.7', 'dependencies': ['requests==2.32.3', 'python-dateutil==2.9.0.post0']}", +aiofiles,Dependency Package,EY,24.1.0,,,,24.1.0,No,,No,None,24.1.0,"{'base_package': 'aiofiles==24.1.0', 'dependencies': []}", +aiohappyeyeballs,Dependency Package,EY,2.4.6,,"2.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.1",,2.6.1,No,,No,None,2.6.1,"{'base_package': 'aiohappyeyeballs==2.6.1', 'dependencies': []}", +absl-py,Dependency Package,I&S,2.1.0,,"2.2.0, 2.2.1, 2.2.2, 2.3.0",,2.3.0,No,,No,None,2.3.0,"{'base_package': 'absl-py==2.3.0', 'dependencies': []}", diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.html b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.html new file mode 100644 index 0000000..1301fd2 --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.html @@ -0,0 +1,502 @@ + + + + + Weekly Python Package Report +

Report generated at 2025-06-02 16:54:01 +08

+ + + + + + + +

Dependency Upgrade Report

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Package NamePackage TypeCustodianCurrent VersionDependencies for CurrentNewer VersionsDependencies for LatestLatest VersionCurrent Version Vulnerable?Current Version Vulnerability DetailsUpgrade Version Vulnerable?Upgrade Vulnerability DetailsSuggested UpgradeUpgrade InstructionRemarks
Package NamePackage TypeCustodianCurrent VersionDependencies for CurrentNewer VersionsDependencies for LatestLatest VersionCurrent Version Vulnerable?Current Version Vulnerability DetailsUpgrade Version Vulnerable?Upgrade Vulnerability DetailsSuggested UpgradeUpgrade InstructionRemarks
adlfsBase PackageEY2024.4.1azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == "docs"; myst-parser; extra == "docs"; furo; extra == "docs"; numpydoc; extra == "docs"; pytest; extra == "tests"; docker; extra == "tests"; pytest-mock; extra == "tests"; arrow; extra == "tests"; dask[dataframe]; extra == "tests"2024.7.0, 2024.12.0azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == "docs"; myst-parser; extra == "docs"; furo; extra == "docs"; numpydoc; extra == "docs"; pytest; extra == "tests"; docker; extra == "tests"; pytest-mock; extra == "tests"; arrow; extra == "tests"; dask[dataframe]; extra == "tests"2024.12.0NoNoNone2024.12.0{'base_package': 'adlfs==2024.12.0', 'dependencies': ['azure-core==1.34.0', 'azure-datalake-store==0.0.53', 'azure-identity==1.23.0', 'azure-storage-blob==12.26.0b1', 'fsspec==2023.12.2', 'aiohttp==3.12.6', 'sphinx==8.3.0', 'myst-parser==4.0.1', 'furo==2024.8.6', 'numpydoc==1.8.0', 'pytest==8.3.5', 'docker==7.1.0', 'pytest-mock==3.14.1', 'arrow==1.3.0', 'dask==2025.5.1']}
adalDependency PackageEY1.2.7PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)1.2.7NoNoNone1.2.7{'base_package': 'adal==1.2.7', 'dependencies': ['requests==2.32.3', 'python-dateutil==2.9.0.post0']}
aiofilesDependency PackageEY24.1.024.1.0NoNoNone24.1.0{'base_package': 'aiofiles==24.1.0', 'dependencies': []}
aiohappyeyeballsDependency PackageEY2.4.62.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.12.6.1NoNoNone2.6.1{'base_package': 'aiohappyeyeballs==2.6.1', 'dependencies': []}
absl-pyDependency PackageI&S2.1.02.2.0, 2.2.1, 2.2.2, 2.3.02.3.0NoNoNone2.3.0{'base_package': 'absl-py==2.3.0', 'dependencies': []}
+ + + + \ No newline at end of file diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.json b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.json new file mode 100644 index 0000000..38902ae --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165317.json @@ -0,0 +1,121 @@ +[ + { + "Package Name": "adlfs", + "Package Type": "Base Package", + "Custodian": "EY", + "Current Version": "2024.4.1", + "Dependencies for Current": "azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == \"docs\"; myst-parser; extra == \"docs\"; furo; extra == \"docs\"; numpydoc; extra == \"docs\"; pytest; extra == \"tests\"; docker; extra == \"tests\"; pytest-mock; extra == \"tests\"; arrow; extra == \"tests\"; dask[dataframe]; extra == \"tests\"", + "Newer Versions": "2024.7.0, 2024.12.0", + "Dependencies for Latest": "azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == \"docs\"; myst-parser; extra == \"docs\"; furo; extra == \"docs\"; numpydoc; extra == \"docs\"; pytest; extra == \"tests\"; docker; extra == \"tests\"; pytest-mock; extra == \"tests\"; arrow; extra == \"tests\"; dask[dataframe]; extra == \"tests\"", + "Latest Version": "2024.12.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2024.12.0", + "Upgrade Instruction": { + "base_package": "adlfs==2024.12.0", + "dependencies": [ + "azure-core==1.34.0", + "azure-datalake-store==0.0.53", + "azure-identity==1.23.0", + "azure-storage-blob==12.26.0b1", + "fsspec==2023.12.2", + "aiohttp==3.12.6", + "sphinx==8.3.0", + "myst-parser==4.0.1", + "furo==2024.8.6", + "numpydoc==1.8.0", + "pytest==8.3.5", + "docker==7.1.0", + "pytest-mock==3.14.1", + "arrow==1.3.0", + "dask==2025.5.1" + ] + }, + "Remarks": "" + }, + { + "Package Name": "adal", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "1.2.7", + "Dependencies for Current": "PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)", + "Newer Versions": "", + "Dependencies for Latest": "PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)", + "Latest Version": "1.2.7", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "1.2.7", + "Upgrade Instruction": { + "base_package": "adal==1.2.7", + "dependencies": [ + "requests==2.32.3", + "python-dateutil==2.9.0.post0" + ] + }, + "Remarks": "" + }, + { + "Package Name": "aiofiles", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "24.1.0", + "Dependencies for Current": "", + "Newer Versions": "", + "Dependencies for Latest": "", + "Latest Version": "24.1.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "24.1.0", + "Upgrade Instruction": { + "base_package": "aiofiles==24.1.0", + "dependencies": [] + }, + "Remarks": "" + }, + { + "Package Name": "aiohappyeyeballs", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "2.4.6", + "Dependencies for Current": "", + "Newer Versions": "2.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.1", + "Dependencies for Latest": "", + "Latest Version": "2.6.1", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2.6.1", + "Upgrade Instruction": { + "base_package": "aiohappyeyeballs==2.6.1", + "dependencies": [] + }, + "Remarks": "" + }, + { + "Package Name": "absl-py", + "Package Type": "Dependency Package", + "Custodian": "I&S", + "Current Version": "2.1.0", + "Dependencies for Current": "", + "Newer Versions": "2.2.0, 2.2.1, 2.2.2, 2.3.0", + "Dependencies for Latest": "", + "Latest Version": "2.3.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2.3.0", + "Upgrade Instruction": { + "base_package": "absl-py==2.3.0", + "dependencies": [] + }, + "Remarks": "" + } +] \ No newline at end of file diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.csv b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.csv new file mode 100644 index 0000000..01485a2 --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.csv @@ -0,0 +1,6 @@ +Package Name,Package Type,Custodian,Current Version,Dependencies for Current,Newer Versions,Dependencies for Latest,Latest Version,Current Version Vulnerable?,Current Version Vulnerability Details,Upgrade Version Vulnerable?,Upgrade Vulnerability Details,Suggested Upgrade,Upgrade Instruction,Remarks +adlfs,Base Package,EY,2024.4.1,"azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == ""docs""; myst-parser; extra == ""docs""; furo; extra == ""docs""; numpydoc; extra == ""docs""; pytest; extra == ""tests""; docker; extra == ""tests""; pytest-mock; extra == ""tests""; arrow; extra == ""tests""; dask[dataframe]; extra == ""tests""","2024.7.0, 2024.12.0","azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == ""docs""; myst-parser; extra == ""docs""; furo; extra == ""docs""; numpydoc; extra == ""docs""; pytest; extra == ""tests""; docker; extra == ""tests""; pytest-mock; extra == ""tests""; arrow; extra == ""tests""; dask[dataframe]; extra == ""tests""",2024.12.0,No,,No,None,2024.12.0,"{'base_package': 'adlfs==2024.12.0', 'dependencies': ['azure-core==1.34.0', 'azure-datalake-store==0.0.53', 'azure-identity==1.23.0', 'azure-storage-blob==12.26.0b1', 'fsspec==2023.12.2', 'aiohttp==3.12.6', 'sphinx==8.3.0', 'myst-parser==4.0.1', 'furo==2024.8.6', 'numpydoc==1.8.0', 'pytest==8.3.5', 'docker==7.1.0', 'pytest-mock==3.14.1', 'arrow==1.3.0', 'dask==2025.5.1']}", +adal,Dependency Package,EY,1.2.7,"PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)",,"PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)",1.2.7,No,,No,None,1.2.7,"{'base_package': 'adal==1.2.7', 'dependencies': ['requests==2.32.3', 'python-dateutil==2.9.0.post0']}", +aiofiles,Dependency Package,EY,24.1.0,,,,24.1.0,No,,No,None,24.1.0,"{'base_package': 'aiofiles==24.1.0', 'dependencies': []}", +aiohappyeyeballs,Dependency Package,EY,2.4.6,,"2.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.1",,2.6.1,No,,No,None,2.6.1,"{'base_package': 'aiohappyeyeballs==2.6.1', 'dependencies': []}", +absl-py,Dependency Package,I&S,2.1.0,,"2.2.0, 2.2.1, 2.2.2, 2.3.0",,2.3.0,No,,No,None,2.3.0,"{'base_package': 'absl-py==2.3.0', 'dependencies': []}", diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.html b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.html new file mode 100644 index 0000000..713d5ee --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.html @@ -0,0 +1,502 @@ + + + + + Weekly Python Package Report +

Report generated at 2025-06-02 16:58:52 +08

+ + + + + + + +

Dependency Upgrade Report

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Package NamePackage TypeCustodianCurrent VersionDependencies for CurrentNewer VersionsDependencies for LatestLatest VersionCurrent Version Vulnerable?Current Version Vulnerability DetailsUpgrade Version Vulnerable?Upgrade Vulnerability DetailsSuggested UpgradeUpgrade InstructionRemarks
Package NamePackage TypeCustodianCurrent VersionDependencies for CurrentNewer VersionsDependencies for LatestLatest VersionCurrent Version Vulnerable?Current Version Vulnerability DetailsUpgrade Version Vulnerable?Upgrade Vulnerability DetailsSuggested UpgradeUpgrade InstructionRemarks
adlfsBase PackageEY2024.4.1azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == "docs"; myst-parser; extra == "docs"; furo; extra == "docs"; numpydoc; extra == "docs"; pytest; extra == "tests"; docker; extra == "tests"; pytest-mock; extra == "tests"; arrow; extra == "tests"; dask[dataframe]; extra == "tests"2024.7.0, 2024.12.0azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == "docs"; myst-parser; extra == "docs"; furo; extra == "docs"; numpydoc; extra == "docs"; pytest; extra == "tests"; docker; extra == "tests"; pytest-mock; extra == "tests"; arrow; extra == "tests"; dask[dataframe]; extra == "tests"2024.12.0NoNoNone2024.12.0{'base_package': 'adlfs==2024.12.0', 'dependencies': ['azure-core==1.34.0', 'azure-datalake-store==0.0.53', 'azure-identity==1.23.0', 'azure-storage-blob==12.26.0b1', 'fsspec==2023.12.2', 'aiohttp==3.12.6', 'sphinx==8.3.0', 'myst-parser==4.0.1', 'furo==2024.8.6', 'numpydoc==1.8.0', 'pytest==8.3.5', 'docker==7.1.0', 'pytest-mock==3.14.1', 'arrow==1.3.0', 'dask==2025.5.1']}
adalDependency PackageEY1.2.7PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)1.2.7NoNoNone1.2.7{'base_package': 'adal==1.2.7', 'dependencies': ['requests==2.32.3', 'python-dateutil==2.9.0.post0']}
aiofilesDependency PackageEY24.1.024.1.0NoNoNone24.1.0{'base_package': 'aiofiles==24.1.0', 'dependencies': []}
aiohappyeyeballsDependency PackageEY2.4.62.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.12.6.1NoNoNone2.6.1{'base_package': 'aiohappyeyeballs==2.6.1', 'dependencies': []}
absl-pyDependency PackageI&S2.1.02.2.0, 2.2.1, 2.2.2, 2.3.02.3.0NoNoNone2.3.0{'base_package': 'absl-py==2.3.0', 'dependencies': []}
+ + + + \ No newline at end of file diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.json b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.json new file mode 100644 index 0000000..38902ae --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_165807.json @@ -0,0 +1,121 @@ +[ + { + "Package Name": "adlfs", + "Package Type": "Base Package", + "Custodian": "EY", + "Current Version": "2024.4.1", + "Dependencies for Current": "azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == \"docs\"; myst-parser; extra == \"docs\"; furo; extra == \"docs\"; numpydoc; extra == \"docs\"; pytest; extra == \"tests\"; docker; extra == \"tests\"; pytest-mock; extra == \"tests\"; arrow; extra == \"tests\"; dask[dataframe]; extra == \"tests\"", + "Newer Versions": "2024.7.0, 2024.12.0", + "Dependencies for Latest": "azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == \"docs\"; myst-parser; extra == \"docs\"; furo; extra == \"docs\"; numpydoc; extra == \"docs\"; pytest; extra == \"tests\"; docker; extra == \"tests\"; pytest-mock; extra == \"tests\"; arrow; extra == \"tests\"; dask[dataframe]; extra == \"tests\"", + "Latest Version": "2024.12.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2024.12.0", + "Upgrade Instruction": { + "base_package": "adlfs==2024.12.0", + "dependencies": [ + "azure-core==1.34.0", + "azure-datalake-store==0.0.53", + "azure-identity==1.23.0", + "azure-storage-blob==12.26.0b1", + "fsspec==2023.12.2", + "aiohttp==3.12.6", + "sphinx==8.3.0", + "myst-parser==4.0.1", + "furo==2024.8.6", + "numpydoc==1.8.0", + "pytest==8.3.5", + "docker==7.1.0", + "pytest-mock==3.14.1", + "arrow==1.3.0", + "dask==2025.5.1" + ] + }, + "Remarks": "" + }, + { + "Package Name": "adal", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "1.2.7", + "Dependencies for Current": "PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)", + "Newer Versions": "", + "Dependencies for Latest": "PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)", + "Latest Version": "1.2.7", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "1.2.7", + "Upgrade Instruction": { + "base_package": "adal==1.2.7", + "dependencies": [ + "requests==2.32.3", + "python-dateutil==2.9.0.post0" + ] + }, + "Remarks": "" + }, + { + "Package Name": "aiofiles", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "24.1.0", + "Dependencies for Current": "", + "Newer Versions": "", + "Dependencies for Latest": "", + "Latest Version": "24.1.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "24.1.0", + "Upgrade Instruction": { + "base_package": "aiofiles==24.1.0", + "dependencies": [] + }, + "Remarks": "" + }, + { + "Package Name": "aiohappyeyeballs", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "2.4.6", + "Dependencies for Current": "", + "Newer Versions": "2.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.1", + "Dependencies for Latest": "", + "Latest Version": "2.6.1", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2.6.1", + "Upgrade Instruction": { + "base_package": "aiohappyeyeballs==2.6.1", + "dependencies": [] + }, + "Remarks": "" + }, + { + "Package Name": "absl-py", + "Package Type": "Dependency Package", + "Custodian": "I&S", + "Current Version": "2.1.0", + "Dependencies for Current": "", + "Newer Versions": "2.2.0, 2.2.1, 2.2.2, 2.3.0", + "Dependencies for Latest": "", + "Latest Version": "2.3.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2.3.0", + "Upgrade Instruction": { + "base_package": "absl-py==2.3.0", + "dependencies": [] + }, + "Remarks": "" + } +] \ No newline at end of file diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.csv b/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.csv new file mode 100644 index 0000000..01485a2 --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.csv @@ -0,0 +1,6 @@ +Package Name,Package Type,Custodian,Current Version,Dependencies for Current,Newer Versions,Dependencies for Latest,Latest Version,Current Version Vulnerable?,Current Version Vulnerability Details,Upgrade Version Vulnerable?,Upgrade Vulnerability Details,Suggested Upgrade,Upgrade Instruction,Remarks +adlfs,Base Package,EY,2024.4.1,"azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == ""docs""; myst-parser; extra == ""docs""; furo; extra == ""docs""; numpydoc; extra == ""docs""; pytest; extra == ""tests""; docker; extra == ""tests""; pytest-mock; extra == ""tests""; arrow; extra == ""tests""; dask[dataframe]; extra == ""tests""","2024.7.0, 2024.12.0","azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == ""docs""; myst-parser; extra == ""docs""; furo; extra == ""docs""; numpydoc; extra == ""docs""; pytest; extra == ""tests""; docker; extra == ""tests""; pytest-mock; extra == ""tests""; arrow; extra == ""tests""; dask[dataframe]; extra == ""tests""",2024.12.0,No,,No,None,2024.12.0,"{'base_package': 'adlfs==2024.12.0', 'dependencies': ['azure-core==1.34.0', 'azure-datalake-store==0.0.53', 'azure-identity==1.23.0', 'azure-storage-blob==12.26.0b1', 'fsspec==2023.12.2', 'aiohttp==3.12.6', 'sphinx==8.3.0', 'myst-parser==4.0.1', 'furo==2024.8.6', 'numpydoc==1.8.0', 'pytest==8.3.5', 'docker==7.1.0', 'pytest-mock==3.14.1', 'arrow==1.3.0', 'dask==2025.5.1']}", +adal,Dependency Package,EY,1.2.7,"PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)",,"PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)",1.2.7,No,,No,None,1.2.7,"{'base_package': 'adal==1.2.7', 'dependencies': ['requests==2.32.3', 'python-dateutil==2.9.0.post0']}", +aiofiles,Dependency Package,EY,24.1.0,,,,24.1.0,No,,No,None,24.1.0,"{'base_package': 'aiofiles==24.1.0', 'dependencies': []}", +aiohappyeyeballs,Dependency Package,EY,2.4.6,,"2.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.1",,2.6.1,No,,No,None,2.6.1,"{'base_package': 'aiohappyeyeballs==2.6.1', 'dependencies': []}", +absl-py,Dependency Package,I&S,2.1.0,,"2.2.0, 2.2.1, 2.2.2, 2.3.0",,2.3.0,No,,No,None,2.3.0,"{'base_package': 'absl-py==2.3.0', 'dependencies': []}", diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.html b/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.html new file mode 100644 index 0000000..9147804 --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.html @@ -0,0 +1,502 @@ + + + + + Weekly Python Package Report +

Report generated at 2025-06-02 17:07:43 +08

+ + + + + + + +

Dependency Upgrade Report

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Package NamePackage TypeCustodianCurrent VersionDependencies for CurrentNewer VersionsDependencies for LatestLatest VersionCurrent Version Vulnerable?Current Version Vulnerability DetailsUpgrade Version Vulnerable?Upgrade Vulnerability DetailsSuggested UpgradeUpgrade InstructionRemarks
Package NamePackage TypeCustodianCurrent VersionDependencies for CurrentNewer VersionsDependencies for LatestLatest VersionCurrent Version Vulnerable?Current Version Vulnerability DetailsUpgrade Version Vulnerable?Upgrade Vulnerability DetailsSuggested UpgradeUpgrade InstructionRemarks
adlfsBase PackageEY2024.4.1azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == "docs"; myst-parser; extra == "docs"; furo; extra == "docs"; numpydoc; extra == "docs"; pytest; extra == "tests"; docker; extra == "tests"; pytest-mock; extra == "tests"; arrow; extra == "tests"; dask[dataframe]; extra == "tests"2024.7.0, 2024.12.0azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == "docs"; myst-parser; extra == "docs"; furo; extra == "docs"; numpydoc; extra == "docs"; pytest; extra == "tests"; docker; extra == "tests"; pytest-mock; extra == "tests"; arrow; extra == "tests"; dask[dataframe]; extra == "tests"2024.12.0NoNoNone2024.12.0{'base_package': 'adlfs==2024.12.0', 'dependencies': ['azure-core==1.34.0', 'azure-datalake-store==0.0.53', 'azure-identity==1.23.0', 'azure-storage-blob==12.26.0b1', 'fsspec==2023.12.2', 'aiohttp==3.12.6', 'sphinx==8.3.0', 'myst-parser==4.0.1', 'furo==2024.8.6', 'numpydoc==1.8.0', 'pytest==8.3.5', 'docker==7.1.0', 'pytest-mock==3.14.1', 'arrow==1.3.0', 'dask==2025.5.1']}
adalDependency PackageEY1.2.7PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)1.2.7NoNoNone1.2.7{'base_package': 'adal==1.2.7', 'dependencies': ['requests==2.32.3', 'python-dateutil==2.9.0.post0']}
aiofilesDependency PackageEY24.1.024.1.0NoNoNone24.1.0{'base_package': 'aiofiles==24.1.0', 'dependencies': []}
aiohappyeyeballsDependency PackageEY2.4.62.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.12.6.1NoNoNone2.6.1{'base_package': 'aiohappyeyeballs==2.6.1', 'dependencies': []}
absl-pyDependency PackageI&S2.1.02.2.0, 2.2.1, 2.2.2, 2.3.02.3.0NoNoNone2.3.0{'base_package': 'absl-py==2.3.0', 'dependencies': []}
+ + + + \ No newline at end of file diff --git a/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.json b/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.json new file mode 100644 index 0000000..38902ae --- /dev/null +++ b/WeeklyReport/2025-06-02/WeeklyReport_20250602_170657.json @@ -0,0 +1,121 @@ +[ + { + "Package Name": "adlfs", + "Package Type": "Base Package", + "Custodian": "EY", + "Current Version": "2024.4.1", + "Dependencies for Current": "azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == \"docs\"; myst-parser; extra == \"docs\"; furo; extra == \"docs\"; numpydoc; extra == \"docs\"; pytest; extra == \"tests\"; docker; extra == \"tests\"; pytest-mock; extra == \"tests\"; arrow; extra == \"tests\"; dask[dataframe]; extra == \"tests\"", + "Newer Versions": "2024.7.0, 2024.12.0", + "Dependencies for Latest": "azure-core<2.0.0,>=1.28.0; azure-datalake-store<0.1,>=0.0.53; azure-identity; azure-storage-blob>=12.17.0; fsspec>=2023.12.0; aiohttp>=3.7.0; sphinx; extra == \"docs\"; myst-parser; extra == \"docs\"; furo; extra == \"docs\"; numpydoc; extra == \"docs\"; pytest; extra == \"tests\"; docker; extra == \"tests\"; pytest-mock; extra == \"tests\"; arrow; extra == \"tests\"; dask[dataframe]; extra == \"tests\"", + "Latest Version": "2024.12.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2024.12.0", + "Upgrade Instruction": { + "base_package": "adlfs==2024.12.0", + "dependencies": [ + "azure-core==1.34.0", + "azure-datalake-store==0.0.53", + "azure-identity==1.23.0", + "azure-storage-blob==12.26.0b1", + "fsspec==2023.12.2", + "aiohttp==3.12.6", + "sphinx==8.3.0", + "myst-parser==4.0.1", + "furo==2024.8.6", + "numpydoc==1.8.0", + "pytest==8.3.5", + "docker==7.1.0", + "pytest-mock==3.14.1", + "arrow==1.3.0", + "dask==2025.5.1" + ] + }, + "Remarks": "" + }, + { + "Package Name": "adal", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "1.2.7", + "Dependencies for Current": "PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)", + "Newer Versions": "", + "Dependencies for Latest": "PyJWT (<3,>=1.0.0); requests (<3,>=2.0.0); python-dateutil (<3,>=2.1.0); cryptography (>=1.1.0)", + "Latest Version": "1.2.7", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "1.2.7", + "Upgrade Instruction": { + "base_package": "adal==1.2.7", + "dependencies": [ + "requests==2.32.3", + "python-dateutil==2.9.0.post0" + ] + }, + "Remarks": "" + }, + { + "Package Name": "aiofiles", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "24.1.0", + "Dependencies for Current": "", + "Newer Versions": "", + "Dependencies for Latest": "", + "Latest Version": "24.1.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "24.1.0", + "Upgrade Instruction": { + "base_package": "aiofiles==24.1.0", + "dependencies": [] + }, + "Remarks": "" + }, + { + "Package Name": "aiohappyeyeballs", + "Package Type": "Dependency Package", + "Custodian": "EY", + "Current Version": "2.4.6", + "Dependencies for Current": "", + "Newer Versions": "2.4.7, 2.4.8, 2.5.0, 2.6.0, 2.6.1", + "Dependencies for Latest": "", + "Latest Version": "2.6.1", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2.6.1", + "Upgrade Instruction": { + "base_package": "aiohappyeyeballs==2.6.1", + "dependencies": [] + }, + "Remarks": "" + }, + { + "Package Name": "absl-py", + "Package Type": "Dependency Package", + "Custodian": "I&S", + "Current Version": "2.1.0", + "Dependencies for Current": "", + "Newer Versions": "2.2.0, 2.2.1, 2.2.2, 2.3.0", + "Dependencies for Latest": "", + "Latest Version": "2.3.0", + "Current Version Vulnerable?": "No", + "Current Version Vulnerability Details": "", + "Upgrade Version Vulnerable?": "No", + "Upgrade Vulnerability Details": "None", + "Suggested Upgrade": "2.3.0", + "Upgrade Instruction": { + "base_package": "absl-py==2.3.0", + "dependencies": [] + }, + "Remarks": "" + } +] \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index a036232..ead3689 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,3 +7,4 @@ python-dotenv pandas pipdeptree setuptools +xlsxwriter