• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

thomwiggers / onebot
72%

Build:
DEFAULT BRANCH: develop
Repo Added 21 May 2014 10:23PM UTC
Files 17
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH develop
branch: develop
CHANGE BRANCH
x
Reset
  • develop
  • HEAD
  • add-claude-github-actions-1775067615443
  • add-devcontainer
  • cache_pip
  • chore/group-dependabot-actions
  • claude/fix-instagram-previews-rryOY
  • cleanup-tests
  • container
  • dependabot/github_actions/actions/cache-3
  • dependabot/github_actions/actions/checkout-4
  • dependabot/github_actions/actions/checkout-5
  • dependabot/github_actions/actions/checkout-6
  • dependabot/github_actions/actions/checkout-7
  • dependabot/github_actions/actions/create-github-app-token-2.2.1
  • dependabot/github_actions/actions/create-github-app-token-3.0.0
  • dependabot/github_actions/actions/github-script-8.0.0
  • dependabot/github_actions/actions/setup-python-3
  • dependabot/github_actions/actions/setup-python-4
  • dependabot/github_actions/actions/setup-python-6
  • dependabot/github_actions/actions/setup-python-7
  • dependabot/github_actions/astral-sh/setup-uv-7
  • dependabot/github_actions/coverallsapp/github-action-1.2.3
  • dependabot/github_actions/coverallsapp/github-action-1.2.4
  • dependabot/github_actions/coverallsapp/github-action-2.0.0
  • dependabot/github_actions/coverallsapp/github-action-2.1.2
  • dependabot/github_actions/coverallsapp/github-action-2.2.0
  • dependabot/github_actions/coverallsapp/github-action-2.2.1
  • dependabot/github_actions/coverallsapp/github-action-2.2.3
  • dependabot/github_actions/coverallsapp/github-action-2.3.0
  • dependabot/github_actions/coverallsapp/github-action-2.3.4
  • dependabot/github_actions/coverallsapp/github-action-2.3.6
  • dependabot/github_actions/coverallsapp/github-action-2.3.8
  • dependabot/github_actions/docker/build-push-action-7
  • dependabot/github_actions/docker/login-action-4
  • dependabot/github_actions/docker/metadata-action-6
  • dependabot/github_actions/docker/setup-buildx-action-4
  • dependabot/github_actions/github-actions-39eae9928b
  • dependabot/github_actions/github-actions-a63e66b24a
  • dependabot/github_actions/github/codeql-action-4.37.3
  • dependabot/pip/beautifulsoup4-4.12.0
  • dependabot/pip/beautifulsoup4-4.12.2
  • dependabot/pip/black-22.12.0
  • dependabot/pip/black-22.6.0
  • dependabot/pip/black-22.8.0
  • dependabot/pip/black-23.3.0
  • dependabot/pip/black-24.3.0
  • dependabot/pip/certifi-2024.7.4
  • dependabot/pip/cryptography-37.0.1
  • dependabot/pip/cryptography-37.0.2
  • dependabot/pip/cryptography-37.0.4
  • dependabot/pip/cryptography-38.0.1
  • dependabot/pip/cryptography-39.0.0
  • dependabot/pip/cryptography-39.0.1
  • dependabot/pip/cryptography-40.0.1
  • dependabot/pip/cryptography-40.0.2
  • dependabot/pip/cryptography-41.0.0
  • dependabot/pip/cryptography-41.0.2
  • dependabot/pip/cryptography-41.0.3
  • dependabot/pip/cryptography-41.0.4
  • dependabot/pip/cryptography-41.0.6
  • dependabot/pip/cryptography-43.0.1
  • dependabot/pip/dateparser-1.1.4
  • dependabot/pip/dateparser-1.1.5
  • dependabot/pip/dateparser-1.1.6
  • dependabot/pip/dateparser-1.1.8
  • dependabot/pip/h11-0.16.0
  • dependabot/pip/httpx-0.23.0
  • dependabot/pip/idna-3.7
  • dependabot/pip/irc3-1.1.9
  • dependabot/pip/markdown-it-py-2.2.0
  • dependabot/pip/pytest-7.1.3
  • dependabot/pip/pytest-7.2.1
  • dependabot/pip/pytest-7.4.0
  • dependabot/pip/pytest-xdist-3.2.0
  • dependabot/pip/pytest-xdist-3.2.1
  • dependabot/pip/pytest-xdist-3.3.1
  • dependabot/pip/python-packages-02049c3b19
  • dependabot/pip/python-packages-1376a3368c
  • dependabot/pip/python-packages-1c3632b8d2
  • dependabot/pip/python-packages-2f3ebc589d
  • dependabot/pip/python-packages-3052ccef88
  • dependabot/pip/python-packages-31e9cacfc0
  • dependabot/pip/python-packages-3ee6c96b19
  • dependabot/pip/python-packages-46351560b6
  • dependabot/pip/python-packages-5415d6a1e6
  • dependabot/pip/python-packages-5f8274597b
  • dependabot/pip/python-packages-65a7ed46cf
  • dependabot/pip/python-packages-78cd57b6c0
  • dependabot/pip/python-packages-84161b1f35
  • dependabot/pip/python-packages-88965e6dc3
  • dependabot/pip/python-packages-905027f96c
  • dependabot/pip/python-packages-99ad721250
  • dependabot/pip/python-packages-a8b62a4006
  • dependabot/pip/python-packages-b29055faa2
  • dependabot/pip/python-packages-b844345f5f
  • dependabot/pip/python-packages-ba4e52d682
  • dependabot/pip/python-packages-baa91b6655
  • dependabot/pip/python-packages-c0ac591652
  • dependabot/pip/python-packages-cdffe36bb8
  • dependabot/pip/python-packages-ce50206b4f
  • dependabot/pip/python-packages-d8685a2b5f
  • dependabot/pip/python-packages-d8a0fff1b4
  • dependabot/pip/python-packages-db87d14444
  • dependabot/pip/python-packages-def0012b21
  • dependabot/pip/python-packages-e168a4c348
  • dependabot/pip/python-packages-f352bb1b2d
  • dependabot/pip/python-packages-fd525483c0
  • dependabot/pip/redis-4.3.0
  • dependabot/pip/redis-4.3.1
  • dependabot/pip/redis-4.3.4
  • dependabot/pip/redis-4.5.1
  • dependabot/pip/redis-4.5.3
  • dependabot/pip/redis-4.5.4
  • dependabot/pip/redis-4.6.0
  • dependabot/pip/requests-2.28.1
  • dependabot/pip/requests-2.28.2
  • dependabot/pip/requests-2.31.0
  • dependabot/pip/requests-2.32.0
  • dependabot/pip/requests-2.32.4
  • dependabot/pip/tekore-4.4.0
  • dependabot/pip/twine-4.0.1
  • dependabot/pip/urllib3-2.0.6
  • dependabot/pip/urllib3-2.0.7
  • dependabot/pip/urllib3-2.2.2
  • dependabot/pip/urllib3-2.5.0
  • dependabot/pip/zipp-3.19.1
  • dependabot/uv/anyio-4.14.2
  • dependabot/uv/cryptography-46.0.5
  • dependabot/uv/cryptography-46.0.6
  • dependabot/uv/cryptography-46.0.7
  • dependabot/uv/cryptography-48.0.1
  • dependabot/uv/cryptography-50.0.0
  • dependabot/uv/filelock-3.20.3
  • dependabot/uv/idna-3.15
  • dependabot/uv/pygments-2.20.0
  • dependabot/uv/pytest-9.0.3
  • dependabot/uv/requests-2.33.0
  • dependabot/uv/soupsieve-2.8.4
  • dependabot/uv/soupsieve-2.9
  • dependabot/uv/urllib3-2.7.0
  • dependabot/uv/urllib3-2.8.0
  • dependabot/uv/uv-0.11.15
  • dependabot/uv/uv-0.11.6
  • dependabot/uv/virtualenv-20.36.1
  • dependabot/uv/virtualenv-21.7.13
  • dependencies
  • docs/add-gemini-md
  • feature/mediawiki-support
  • feature/python-sandbox-ci
  • feature/python-sandbox-server
  • fix-pysandbox
  • fix-tests
  • fix/async-settings-and-serialization
  • fix/issue-216-redis-serialization
  • fix/redact-nicks-issue-43
  • fix/spotify-callback-unknown-user
  • format
  • get-rid-of-docopt
  • github-actions
  • grip
  • master
  • onebot-fixtests
  • reddit-api
  • renovate/configure
  • retire-grip
  • rip-wcd
  • rm-gemini
  • skip-twitter
  • suppress-warning
  • switch-to-ruff
  • switch-to-uv
  • thomwiggers-fix-coveralls
  • twitter-api
  • update-gemini
  • update-gemini-cli
  • updates
  • use_poetry
  • uv-build-system
  • v1.2.0
  • v1.2.1
  • v1.3.1
  • v1.3.2
  • v1.3.3
  • wikipedia

11 Sep 2026 01:53PM UTC coverage: 71.595% (+1.9%) from 69.703%
34606921941

push

github

web-flow
Fix Spotify OAuth callback crash for untracked users, add .whoami (#264)

* fix(spotify): don't crash callback when user isn't tracked

Users who only ever talk to the bot in a query were never added to
active_users, because on_privmsg bails out on any target that isn't a
channel the bot is in. get_user() then returns None, and the Spotify
OAuth callback called set_setting() on it, raising AttributeError in the
HTTP handler thread -- after it had already told the browser "Stored
your token".

- users: track users seen in a query (no channel attached), so commands
  and identification work for PM-only users.
- users: only part users from channels they were actually seen in, so a
  query-tracked user isn't dropped when the bot leaves a channel.
- users: the nickserv id function no longer looks itself up via
  get_user(), which had the same None dereference.
- spotify: bail out with a 404 when the user is unknown, wait for the
  store to complete before reporting success, only mark a code as seen
  once it worked, and log+500 on unexpected errors instead of leaking a
  traceback to the socket server.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SmGNUYmuLWVF7ptiHtdobe

* fix(users): don't track services talking to us in NOTICEs

Query tracking is for people, not for NickServ. Also exercise the real
User.set_setting path (async identification included) from the Spotify
callback test.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SmGNUYmuLWVF7ptiHtdobe

* feat(users): add a whoami command

Replies with the identity the bot resolved for you (the nickserv
account, what.cd name or hostmask, depending on identify_by) plus the
mask it has on file, so it's obvious whether the bot knows who you are
before a command silently misbehaves.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SmGNUYmuLWV... (continued)

43 of 45 new or added lines in 3 files covered. (95.56%)

1104 of 1542 relevant lines covered (71.6%)

3.58 hits per line

Relevant lines Covered
Build:
Build:
1542 RELEVANT LINES 1104 COVERED LINES
3.58 HITS PER LINE
Source Files on develop
  • Tree
  • List 17
  • Changed 3
  • Source Changed 3
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
34606921941 develop Fix Spotify OAuth callback crash for untracked users, add .whoami (#264) * fix(spotify): don't crash callback when user isn't tracked Users who only ever talk to the bot in a query were never added to active_users, because on_privmsg bails out o... push 11 Sep 2026 01:54PM UTC web-flow github
71.6
33601700712 develop chore(deps): bump the python-packages group with 4 updates (#262) Updates the requirements on [cryptography](https://github.com/pyca/cryptography), [dateparser](https://github.com/scrapinghub/dateparser), [redis](https://github.com/redis/redis-py... push 02 Sep 2026 07:04AM UTC web-flow github
69.7
33601664973 develop chore(deps): bump github/codeql-action in the github-actions group (#263) Bumps the github-actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action). Updates `github/codeql-action` from 4.37.3 to 4.37.9 - [Rel... push 02 Sep 2026 07:03AM UTC web-flow github
69.7
30697486350 develop chore(deps): bump github/codeql-action from 4 to 4.37.3 (#256) Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4 to 4.37.3. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://githu... push 01 Aug 2026 11:21AM UTC web-flow github
69.7
30697435123 develop Fix updates push 01 Aug 2026 11:19AM UTC thomwiggers github
69.7
30697379858 develop chore(deps): group github-actions dependabot updates (#260) Bundle all GitHub Actions bumps into a single monthly PR, matching the existing python-packages grouping. Claude-Session: https://claude.ai/code/session_01CnCGnao1eKr5d73shj5JcR Co-au... push 01 Aug 2026 11:17AM UTC web-flow github
69.7
30697276146 develop chore(deps): bump actions/setup-python from 6 to 7 (#257) Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6 to 7. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](https://github.com/action... push 01 Aug 2026 11:14AM UTC web-flow github
69.7
30697173929 develop chore(deps): update tekore requirement (#255) Updates the requirements on [tekore](https://github.com/felix-hilden/tekore) to permit the latest version. Updates `tekore` to 6.2.0 - [Release notes](https://github.com/felix-hilden/tekore/releases)... push 01 Aug 2026 11:11AM UTC web-flow github
69.7
30697065852 develop chore(deps): bump soupsieve from 2.8.1 to 2.8.4 (#254) Bumps [soupsieve](https://github.com/facelessuser/soupsieve) from 2.8.1 to 2.8.4. - [Release notes](https://github.com/facelessuser/soupsieve/releases) - [Commits](https://github.com/faceless... push 01 Aug 2026 11:08AM UTC web-flow github
69.7
30696960245 develop chore(deps): bump coverallsapp/github-action from 2.3.6 to 2.3.8 (#258) Bumps [coverallsapp/github-action](https://github.com/coverallsapp/github-action) from 2.3.6 to 2.3.8. - [Release notes](https://github.com/coverallsapp/github-action/release... push 01 Aug 2026 11:05AM UTC web-flow github
69.7
See All Builds (842)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc