René's URL Explorer Experiment


Title: The _remaining_capacity > _bytes_in_buffer check in bufsocket.py is unnecessary · Issue #300 · python-hyper/hyper · GitHub

Open Graph Title: The _remaining_capacity > _bytes_in_buffer check in bufsocket.py is unnecessary · Issue #300 · python-hyper/hyper

X Title: The _remaining_capacity > _bytes_in_buffer check in bufsocket.py is unnecessary · Issue #300 · python-hyper/hyper

Description: This is not an actual issue, but a possible tiny improvement. TL;DR I think this check self._remaining_capacity > self._bytes_in_buffer in bufsocket.py#L141 is unnecessary. Here's why. From the definitions we know: self._remaing_capacity...

Open Graph Description: This is not an actual issue, but a possible tiny improvement. TL;DR I think this check self._remaining_capacity > self._bytes_in_buffer in bufsocket.py#L141 is unnecessary. Here's why. From the def...

X Description: This is not an actual issue, but a possible tiny improvement. TL;DR I think this check self._remaining_capacity > self._bytes_in_buffer in bufsocket.py#L141 is unnecessary. Here's why. From ...

Opengraph URL: https://github.com/python-hyper/hyper/issues/300

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"The _remaining_capacity \u003e _bytes_in_buffer check in bufsocket.py is unnecessary","articleBody":"This is not an actual issue, but a possible tiny improvement.\r\n\r\n**TL;DR**\r\nI think this check `self._remaining_capacity \u003e self._bytes_in_buffer` in [bufsocket.py#L141](https://github.com/Lukasa/hyper/blob/development/hyper/common/bufsocket.py#L141) is unnecessary.\r\n\r\nHere's why.\r\nFrom the definitions we know:\r\n```python\r\n  self._remaing_capacity - self._bytes_in_buffer\r\n= (self._buffer_size - self._index) - self._bytes_in_buffer\r\n= self._buffer_size - (self._index + self._bytes_in_buffer)\r\n= self._buffer_size - self._buffer_end    \r\n```\r\n\r\nWe also know that each time `self._bytes_in_buffer` increases, the increment is less than \r\n  `_buffer_size - _buffer_end`. An example:\r\n```python\r\nif (self._remaining_capacity \u003e self._bytes_in_buffer and should_read):\r\n    count = self._sck.recv_into(self._buffer_view[self._buffer_end:])\r\n    if not count and amt \u003e self._bytes_in_buffer:\r\n        raise ConnectionResetError()\r\n    self._bytes_in_buffer += count   # count cannot be greater than _buffer_size - _buffer_end\r\n```\r\n\r\nNow we have two formulas:\r\n```\r\n_buffer_size - _buffer_end = _remaing_capacity - _bytes_in_buffer    ①\r\ncount \u003c _buffer_size - _buffer_end                                   ②   \r\n```\r\n\r\nThus `_bytes_in_buffer \u003c _remaing_capacity` is always `True`.\r\n```\r\n  _bytes_in_buffer(new) \r\n= _bytes_in_buffer(old) + count \r\n\u003c _bytes_in_buffer + _buffer_size - _buffer_end \r\n= _remaing_capacity\r\n```\r\n\r\nI intended to remove the check and run tests, but unfortunately I was not able to finish them(I have all the test deps installed and run `make test`, don't know why it takes so long). So I'm not 100% sure it can be removed.","author":{"url":"https://github.com/laike9m","@type":"Person","name":"laike9m"},"datePublished":"2017-01-12T15:13:33.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":6},"url":"https://github.com/300/hyper/issues/300"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:7d2f52a0-7dd5-78ba-02da-be50ecb0e405
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idDCC6:164E7F:1267836:188DEC5:696AD60F
html-safe-nonce81141c32b2bb0708b54474d1c1c51fbeb474d4900c025847ea4e637fb21159df
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEQ0M2OjE2NEU3RjoxMjY3ODM2OjE4OERFQzU6Njk2QUQ2MEYiLCJ2aXNpdG9yX2lkIjoiMjEwMzc1MDI0NDA2MTMzNzEwMyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac0eb778627b375f842cc1932431b04b54b9bff2e48256b55e4d819b8009fc2fbf
hovercard-subject-tagissue:200392555
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python-hyper/hyper/300/issue_layout
twitter:imagehttps://opengraph.githubassets.com/f3998c43db2e2a8aa9dedd28637256d57c25f22c2499bf3131b5b60b1c4ac929/python-hyper/hyper/issues/300
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/f3998c43db2e2a8aa9dedd28637256d57c25f22c2499bf3131b5b60b1c4ac929/python-hyper/hyper/issues/300
og:image:altThis is not an actual issue, but a possible tiny improvement. TL;DR I think this check self._remaining_capacity > self._bytes_in_buffer in bufsocket.py#L141 is unnecessary. Here's why. From the def...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamelaike9m
hostnamegithub.com
expected-hostnamegithub.com
Nonec785f4ce187e9e7331257791b36ddee01625bb8e292a9b4fe2c16d4c006abf5d
turbo-cache-controlno-preview
go-importgithub.com/python-hyper/hyper git https://github.com/python-hyper/hyper.git
octolytics-dimension-user_id13035907
octolytics-dimension-user_loginpython-hyper
octolytics-dimension-repository_id16165969
octolytics-dimension-repository_nwopython-hyper/hyper
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id16165969
octolytics-dimension-repository_network_root_nwopython-hyper/hyper
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasec718a376fcf780eb22089171adb84a543f660bf7
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/python-hyper/hyper/issues/300#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-hyper%2Fhyper%2Fissues%2F300
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-hyper%2Fhyper%2Fissues%2F300
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=python-hyper%2Fhyper
Reloadhttps://github.com/python-hyper/hyper/issues/300
Reloadhttps://github.com/python-hyper/hyper/issues/300
Reloadhttps://github.com/python-hyper/hyper/issues/300
python-hyper https://github.com/python-hyper
hyperhttps://github.com/python-hyper/hyper
Notifications https://github.com/login?return_to=%2Fpython-hyper%2Fhyper
Fork 197 https://github.com/login?return_to=%2Fpython-hyper%2Fhyper
Star 1k https://github.com/login?return_to=%2Fpython-hyper%2Fhyper
Code https://github.com/python-hyper/hyper
Issues 78 https://github.com/python-hyper/hyper/issues
Pull requests 23 https://github.com/python-hyper/hyper/pulls
Actions https://github.com/python-hyper/hyper/actions
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/python-hyper/hyper/security
Please reload this pagehttps://github.com/python-hyper/hyper/issues/300
Insights https://github.com/python-hyper/hyper/pulse
Code https://github.com/python-hyper/hyper
Issues https://github.com/python-hyper/hyper/issues
Pull requests https://github.com/python-hyper/hyper/pulls
Actions https://github.com/python-hyper/hyper/actions
Security https://github.com/python-hyper/hyper/security
Insights https://github.com/python-hyper/hyper/pulse
The _remaining_capacity > _bytes_in_buffer check in bufsocket.py is unnecessaryhttps://github.com/python-hyper/hyper/issues/300#top
https://github.com/laike9m
https://github.com/laike9m
laike9mhttps://github.com/laike9m
on Jan 12, 2017https://github.com/python-hyper/hyper/issues/300#issue-200392555
bufsocket.py#L141https://github.com/Lukasa/hyper/blob/development/hyper/common/bufsocket.py#L141
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.