Skip to content

Conversation

@ppmina
Copy link
Owner

@ppmina ppmina commented Oct 18, 2025

No description provided.

min added 6 commits October 14, 2025 22:40
  - quiet BaseDownloader retries and document ownership of error logging
  - add structured per-symbol logs plus integrity reports in metrics downloads
  - tie VisionDownloader session pools to requested concurrency and expand run stats
  - bump project version to 1.14.2 in uv.lock
…ocs structure

- Fix changelog extraction to support date suffix format (## vX.X.X (YYYY-MM-DD))
- Reorganize documentation into guides/, api/, and advanced/ subdirectories
- Switch to awesome-pages plugin for automatic navigation discovery
- Automatically create GitHub Release when publishing to PyPI
- Upload wheel and source distribution files to the release
- Include changelog content in release notes
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the final PR Bugbot will review for you during this billing cycle

Your free Bugbot reviews will reset on November 27

Details

You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

if request_delay > 0:
await asyncio.sleep(request_delay)
if request_delay > 0:
await asyncio.sleep(request_delay)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: Unsynchronized Dictionary Access Causes Race Condition

A race condition exists in the _perf_stats dictionary. The _concurrent_lock was removed, but concurrent_count and max_concurrent are still updated concurrently by multiple tasks. This can lead to inaccurate performance statistics due to unsynchronized reads and writes.

Fix in Cursor Fix in Web

except ClientConnectionError as exc:
logger.debug(f"关闭aiohttp会话时出现连接问题: {exc}")
except Exception as exc: # noqa: BLE001
logger.debug(f"关闭aiohttp会话时出现异常: {exc}")
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: Race Condition in Lock Initialization

A race condition exists in _close_session() during self._session_lock initialization. The non-atomic check-then-set pattern allows concurrent calls to create multiple asyncio.Lock instances, defeating the synchronization and potentially leading to unsynchronized access to self._session.

Fix in Cursor Fix in Web

@ppmina ppmina merged commit 1d07d43 into main Oct 18, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants