misc/CodeWhale: rename from DeepSeek-TUI, update to 0.8.53
Packaged in wip by Chavdar Ivanov and Claude Code.
Upstream (Hmbown) renamed the project from DeepSeek-TUI to CodeWhale.
The repository, distfile, and primary command are now codewhale; the
deepseek and deepseek-tui commands remain as legacy shims and are
scheduled for removal upstream in v0.9.0.
This is a git rename of wip/DeepSeek-TUI to wip/CodeWhale plus an update
from 0.8.39 to 0.8.53.
Notable changes since 0.8.39:
- Provider-agnostic: in addition to DeepSeek V4, supports OpenRouter,
NVIDIA NIM, Fireworks, SiliconFlow, Ollama and other OpenAI-compatible
endpoints.
- New primary binaries codewhale and codewhale-tui (plus the short codew
alias and codewhale-app-server); deepseek / deepseek-tui kept as shims.
[8 lines not shown]
Hide the Outbound NAT menu item if mode is either automatic or disabled, or no rules node exists anymore in it. Move migration assistant out of Rules [legacy] so it doesn't disappear if no legacy rules exist anymore, now that it is also used for NAT migration.
toxcore: update to 0.2.23
Bug Fixes
- limit number of saved group peers when loading from disk And add
`unpack_gc_saved_peers` bounds test
- DHT:
- refactor memory handling of loaded dht state Previous code could
double-free if more than one dht states per tox-file and a following
allocation fails
- Suppress the warning about IPv6 nodes when IPv6 is turned off
- av: Fix Use-After-Free when peer goes offline.
- gca: announce max sizes where 32bytes too large
- onion: Size GCA announce response buffer to actual content length.
- test: fix mypy failure
Features
- Add `Tox_Iterate_Options` for granular control over `tox_iterate`.
- Add a function to get the list of valid group chat numbers.
Restructure alert plugin to the lean typesafe layout
## Problem
The alert plugin passed mypy but didn't follow the typesafe convention the other converted plugins use: the eponymous `alert` service lived in `alert.py` as an 1100-line `Service` with all logic, models, and helpers inline, `__init__.py` was empty, and the two sibling services each combined their service class and service part in one off-convention file.
## Solution
- Move `AlertService` into a lean `__init__.py` that exposes only the endpoint stubs; each delegates to plain functions in `lifecycle.py` / `runtime.py` / `oneshot.py` / `queries.py` that take `(context, state)`.
- Lift all mutable runtime state into a dedicated `AlertState` object (`state.py`) built once in `__init__`. Concurrency is intentionally unchanged — it still relies on the asyncio event loop plus the existing `process_alerts` job lock, with no new lock introduced.
- Pull the standalone pieces into `state.py`, `alert_classes.py`, and `serialize.py`, and split the siblings into `alertservice.py` / `alertservice_crud.py` and `alertclasses.py` / `alertclasses_config.py` to match the `*_crud.py` / `*_config.py` convention.
- Move the inline `AlertOneshotDelete` models into the API package, and update `main.py` imports plus the setup-ordering key (`alert.alert` -> `alert`, since `setup()` now lives in the package `__init__`).
LinuxKPI: 802.11: set flag if frame should be part of an A-MPDU
In the output path where we are sending a frame to the driver mark it
if it should be part of an A-MPDU based on its tid, type, and whether
net80211 thinks that we are in the right state for this.
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
LinuxKPI: 802.11: make *addba* work better
Fill in more details for lkpi_ic_addba_request(), lkpi_ic_addba_response(),
and lkpi_ic_addba_response_timeout().
Migrate the ltxq flags seen_dequeue and stopped to a bitfield and add %b
support to log messages. This seemed the better approach after needing
an additional stop field for BA while we have to hold packets from being
transmitted.
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
LinuxKPI: 802.11: add note about rate control support under boot -v
We currently do not support rate control in LinuxKPI. As more drivers
and chipsets gain suppport for higher throughput add a note under
bootverbose if we hit one of these cases (currently only older iwlwifi
chipsets).
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
LinuxKPI: 802.11: adjust tracing for action/ampdu/addba functions
Adjust the pure debug tracing to no longer be under HT and add more
to the other functions we are interested in, so we can follow the
calls more easily.
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
LinuxKPI: 802.11: implement ieee80211_start_tx_ba_session()
Implement ieee80211_start_tx_ba_session() as a start for rtw8x (and
select mt76 chipsets) to support more throughput.
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
LinuxKPI: 802.11: add three more driver downcalls
Add (*link_sta_rc_update), (*set_bitrate_mask), and
(*sta_set_decap_offload) mac80211 driver downcalls in preparation
for further work.
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
18132 Let pbchk allow "Imported from:" among commit comments
Reviewed by: Toomas Soome <tsoome at me.com>
Approved by: Hans Rosenfeld <rosenfeld at grumpf.hope-2000.org>
18139 nightly build latest log symlink should be relative
Reviewed by: Dan McDonald <danmcd at edgecast.io>
Approved by: Hans Rosenfeld <rosenfeld at grumpf.hope-2000.org>
[DFAJumpThreading] Clone noalias scopes when duplicating a block (#200620)
cloneBlockAndUpdatePredecessor cloned the block but not its noalias scope
declarations, so duplicated paths shared the same scope MDNodes and AA could
treat aliasing accesses on different paths as noalias.
Give each clone fresh scopes, like JumpThreading/LoopUnroll/LoopPeel.
Remove stale ARC graph names from reporting API
## Problem
`reporting.get_data` accepted three graph names — `arcrate`, `arcactualrate`, `arcresult` — whose backing plugin classes were deleted during the ZFS netdata plugin rewrite. The Pydantic `Literal` and the in-memory `__graphs` dict drifted out of sync, so passing any of them crashed `netdata_get_data` with an uncaught `KeyError`.
## Solution
Removed the dead names from `GraphIdentifier.name`'s `Literal` and docstring in both `v26_0_0/reporting.py` and `v27_0_0/reporting.py`. Added a `ReportingNetdataGetDataArgs.from_previous` on each so legacy WS clients walking the adapter chain get the dead entries silently filtered instead of a hard rejection at the final v27 boundary. Hardened the dispatch site in `plugins/reporting/graphs.py` to raise `CallError(ENOENT)` for any unknown name — mirroring what `netdata_graph` already does — so future schema/implementation drift surfaces as a clean RPC error rather than an unhandled exception.
editors/fresh: Update to version 0.3.12
Packaged in wip by Chavdar Ivanov and Claude Code.
Fresh is a modern terminal-based IDE and text editor with zero configuration,
familiar keybindings, mouse support, and IDE-level features like LSP,
multi-cursor, and a command palette.
This update spans two upstream releases (0.3.11 and 0.3.12).
Changes in 0.3.11 / 0.3.12:
- Orchestrator Dock: persistent left-column session switcher (Alt+O) with
arrow navigation, working/idle status indicators, project/branch info,
and PR badges
- Create SSH sessions from the UI via the Orchestrator dialog, with full
remote support (filesystem, LSP running on the remote host, process
spawners, terminal)
- Kubernetes sessions (experimental): connect over kubectl exec with
keepalive heartbeat and reconnect
[26 lines not shown]
nuageinit: implement ssh_authkey_fingerprints support
Add support for the 'ssh_authkey_fingerprints' cloud-config key
which logs SSH host key fingerprints to the console via ssh-keygen.
nuageinit: implement mounts support
Add support for the 'mounts' cloud-config key which configures
mount points by appending entries to /etc/fstab and creating
the corresponding directories.