wkt/land_flake_update #94
Open
goodboy
wants to merge 20 commits from
wkt/land_flake_update into main
pull from: wkt/land_flake_update
merge into: pikers:main
pikers:wkt/federated_project_stores
pikers:wkt/live_chart_qtractor
pikers:wkt/land_broadcast_consumers
pikers:wkt/land_ib_method_proxy
pikers:main
pikers:trend_calc_on_jev
pikers:wkt/typed_clearing_protocol
pikers:wkt/ib_history_request_bounds
pikers:wkt/fsp_backfill_sync
pikers:moar_ai_skillz
pikers:wkt/replay_provider_e2e
pikers:wkt/typed_ems_messaging
pikers:wkt/fix_binance_usdm_feed
pikers:wkt/tractor_tagged_addrs_compat
pikers:chart_local_gapper
pikers:wkt/fix_broadcast_consumers
pikers:ib_methproxy_refinery
pikers:wkt/backfiller_deep_fixes
pikers:backfiller_deep_fixes
pikers:flake_update
pikers:datad_service
pikers:maddr_endpoints
pikers:py_codestyling
pikers:kraken_stale_ws_token
pikers:multihomed_w_multiaddrs
pikers:nested_order_mode_block
pikers:fix_kraken_account_alias_mismatch_reporting
pikers:repair_tests
pikers:ngi0_submission
pikers:claudy_writes_ruff_conf
pikers:axes_w_zoom_refinery
pikers:gap_annotator
pikers:service_mng_to_tractor
pikers:symcache_polishin
pikers:dpi-font-auto-calc_goodboy_refinery
pikers:shm_from_tractor
pikers:to_asyncio_api_update
pikers:dpi-font-auto-calc_goodboy_test
pikers:dpi-font-auto-calc
pikers:ib_async
pikers:macos_dnks_vibed_fixes
pikers:macos_support
pikers:symcache_null_cleaner
pikers:ib_async_CONT
pikers:macmini_testing
pikers:macos_hackarounds
pikers:ib_venue_closures
pikers:fix_tractor_logging
pikers:hist_backfill_fixes
pikers:refresh_annots
pikers:multiaddrs
pikers:tpt_closed_and_finally_footguns
pikers:tractor_struct_and_godw_mod
pikers:tpt_closed_and_finally_footguns_CONT
pikers:CONT_fix_tractor_logging
pikers:CONT2_hist_fixes
pikers:cont_hist_fixes
pikers:order_line_cancel_nowork_debugging
pikers:macos_fixed_with_readme
pikers:binance_nq_hotfix
pikers:pdbp_bump
pikers:macos_fixes_2025
pikers:add_visidata
pikers:how_to_show_ur_pp
pikers:ib_2025_updates
pikers:providers_sync
pikers:port_to_latest_tractor
pikers:decimal_prices_thru_ems
pikers:rando_data_subsys_styling
pikers:subsys_refinery
pikers:bump_polars
pikers:brokers_refinery
pikers:simpler_gitea_merge_template
pikers:gitea_merge_template
pikers:nixround2_n_sway_testing
pikers:alt_tpts_for_perf
pikers:binance_api_3.1
pikers:accounting_refinery
pikers:no_symcache_no_problem
pikers:wayland_nix_py313
pikers:dpi_font_autocalc_fomo_bits
pikers:qt_w_graceful_SIGINT
pikers:stop_is_eoc
pikers:mp_fomo_polish
pikers:dpi_scaling_round2
pikers:max_pain_storage
pikers:macos_fixes_with_readme_premain_BACKUP
pikers:testing_utils
pikers:max_pain_chart
pikers:max_pain_deribit
pikers:deribit_fix
pikers:gitea_feats
pikers:jsonrpc_err_in_rent
pikers:tsp_gaps
pikers:max_pain_chart_backup
pikers:subsys_refinery_BACKUP
pikers:max_pain_deribit_backup
pikers:add_ruff_linter
pikers:deribit_fix_backup
pikers:kucoin_and_binance_fix
pikers:uv_migration
pikers:kucoin_and_binance_BACKUP
pikers:go_httpx_no_unrelated_binance_stuff
pikers:go_httpx
pikers:go_httpx_orig_BACKUP
pikers:ib_refinements
pikers:fix_deribit_hist_queries_NEW
pikers:fix_deribit_hist_queries
pikers:prev_deribit_fix
pikers:nix_shell_env_fix
pikers:cherry_to_storage_pr
pikers:fix_deribit_hist_queries_BACKUP
pikers:kucoin_and_binance_fix_goodboyBACKUP
pikers:nix-headless-fix
pikers:go_httpx_binance
pikers:fix-binance-venues
pikers:pyqt6
pikers:distribute_dis
pikers:runtime_to_msgspec
pikers:nix-monkeys-fix
pikers:ib_py311_fixes
pikers:poetry2nix
pikers:account_tests
pikers:py311_ib_fix
pikers:master
pikers:basic_buy_bot
pikers:marketstore_disable_snappy
pikers:rekt_pps
pikers:py311
pikers:kucoin_backend
pikers:small_kucoin_fixes
pikers:pre_overruns_ctxcancelled
pikers:emit_clear_ticks_only_on_ts_change
pikers:binance_ws_ep_update
pikers:log_linearized_curve_overlays
pikers:xdotool_fixes
pikers:deribit_updates
pikers:storage_middleware_layer
pikers:service_subpkg
pikers:pps_precision_hotfixes
pikers:service_subpkg_backup
pikers:storage_cli
pikers:xdo_and_you
pikers:decimalization_take_2
pikers:backward_compat_trans_with_symbolinfo
pikers:explicit_write_pps_on_exit
pikers:backend_spec
pikers:paper_trade_improvements_rebase
pikers:loglevel_to_testpikerd
pikers:overlays_interaction_latency_tuning
pikers:kraken_deposits_fixes
pikers:l1_compaction
pikers:epoch_indexing_and_dataviz_layer
pikers:multichartz
pikers:axis_sticky_api
pikers:multi_symbol_input
pikers:update_qt_screen_info_script
pikers:fsps_and_flumes
pikers:epoch_index
pikers:pregraphics_formatters
pikers:multichartz_backup
pikers:samplerd_service
pikers:misc_brokerd_backend_repairs
pikers:pre_viz_calls
pikers:dark_clearing_improvements
pikers:dark_clearing_repairs
pikers:epoch_index_backup
pikers:agg_feedz
pikers:kraken_limits_fields
pikers:cz_post_ftx
pikers:kraken_pair_status
pikers:ib_contract_updates
pikers:pre_multifeed_hotfix
pikers:kraken_pair_updates
pikers:daemon_sockaddr_config
pikers:no_signal_pi_overlays
pikers:pre_multi_feedz
pikers:pg_exts_fork
pikers:ib_1m_hist
pikers:even_moar_kraken_order_fixes
pikers:ci_fix_tractor_testing
pikers:clears_table_events
pikers:offline_dark_clearing
pikers:multi_client_order_mgt
pikers:pin_tractor_main
pikers:history_view
pikers:tractor_core_port
pikers:kraken_fill_bugs
pikers:paper_clear_logics_fix
pikers:kraken_nameerr_fix
pikers:livenpaper
pikers:size_in_shm_token
pikers:deribit
pikers:asycvnc_pin_bump
pikers:live_n_paper
pikers:open_order_loading
pikers:doin_the_splits
pikers:dict_differ
pikers:msgpack_zombie
pikers:the_ems_flattening
pikers:kraken_ws_orders
pikers:kraken_userref_hackzin
pikers:pydantic_zombie
pikers:ib_pps_upgrade
pikers:multisympaper
pikers:ppu_history
pikers:basic_pp_audit
pikers:historical_breakeven_pp_price
pikers:ib_native_data_hack
pikers:pptables
pikers:ahab_you_bad_boi
pikers:fix_forex
pikers:fsp_shm_caching
pikers:paper_eng_msg_fixes
pikers:drop_pydantic
pikers:krakenwsbackup
pikers:dpbackup
pikers:null_last_quote_fix
pikers:ahab_hardkill
pikers:tractor_typed_msg_hackin
pikers:kraken_ledger_pps
pikers:ib_rt_pp_update_hotfix
pikers:notokeninwswrapper
pikers:pps_postmortem
pikers:lifo_pps_ib
pikers:310_plus
pikers:mxmn_from_m4
pikers:contain_mkts
pikers:slic_fix_v2
pikers:uppx_slice_fix
pikers:update_last_datums_in_view
pikers:ib_subpkg
pikers:flexxin
pikers:ib_checker_hackz
pikers:incremental_update_paths
pikers:ib_dedicated_data_client
pikers:dockerize_ib_gw
pikers:pre_flow
pikers:drop_pandas
pikers:no_ib_pps
pikers:trimeter_dep
pikers:l1_precision_fix
pikers:marketstore
pikers:no_orderid_in_error
pikers:incr_update_backup
pikers:big_data_lines
pikers:m4_corrections
pikers:offline_history_loading
pikers:drop_arrow_add_predulum
pikers:marketstore_backup
pikers:broker_bumpz
pikers:no_git_prot_w_pip
pikers:kraken_editorder
pikers:fqsns
pikers:kraken_cleaning
pikers:kraken_orders
pikers:only_draw_iv_for_ohlc
pikers:mkts_backup
pikers:pp_bar_fixes
pikers:async_hist_loading
pikers:kraken_gb
pikers:windows_fixes_yo
pikers:ib_mkt_closed
pikers:py3.10_support
pikers:gb_kraken_orders
pikers:dark_vlm
pikers:overlayed_dvlm
pikers:fsp_ui_mod
pikers:vlm_plotz
pikers:plotitem_overlays
pikers:misc_backend_fixes
pikers:dolla_vlm
pikers:fspd_cluster
pikers:misc_ib_updates
pikers:single_display_update_loop
pikers:basic_vlm_display
pikers:pane_sizing_fixes
pikers:tractor_clustering
pikers:msgpack_no_sets_allowed
pikers:tinas_unite
pikers:simpler_quote_throttle_logic
pikers:fast_step_curve
pikers:win_fixes
pikers:fsp_hotfixes
pikers:teardown_guesmost_via_cs
pikers:windows_testing_volume
pikers:fsp_drunken_alignment
pikers:vlm_plotz_backup
pikers:fsp_feeds
pikers:chart_mod_breakup
pikers:pause_feeds_on_sym_switch
pikers:brokers_config
pikers:ordermodepps_backup
pikers:readme_bump_zone
pikers:ci_on_forks
pikers:asyncify_input_modes
pikers:minimal_brokerd_trade_dialogues
pikers:wait_on_daemon_portals
pikers:backup_asyncify_input_modes
pikers:naive_feed_throttling
pikers:window_cuckery
pikers:msgspec_fixes
pikers:status_bar
pikers:ems_hotfixes
pikers:ems_to_bidir_streaming
pikers:web_utils
pikers:symbol_search
pikers:binance_syminfo_and_mintick
pikers:update_throttling
pikers:syseng_tweaks
pikers:ems_tweaks
pikers:py3.9
pikers:binance_aggtrades_and_ohlc_parsing
pikers:binance_backend
pikers:tractor_open_stream_from
pikers:feed_fixes
pikers:order_mode_finesse
pikers:cached_feeds
pikers:readme_bumpz
pikers:supervise
pikers:basic_orders
pikers:kraken_trades_data
pikers:basic_alerts
pikers:kraken_history
pikers:y_zoom
pikers:chart_trader
pikers:graphics_pixel_buffer
pikers:vwap_fsp
pikers:to_qpainterpath_and_beyond
pikers:tina_free_vwap
pikers:vwap_backup
pikers:bar_select
pikers:ib_backend
pikers:unleash_the_kraken
pikers:facepalm
pikers:marketstore_integration
pikers:its_happening
pikers:relicense_as_agplv3
pikers:questrade_candles
pikers:use_tractor_logging
pikers:questrade_conns
pikers:kivy_mainline_and_py3.8
20 Commits (main)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
bde2457bdd |
Bump `tractor` and `msgspec` for Python 3.13
- require Python 3.13 across package metadata and the lock - advance `tractor` from `e77198bb` to `piker_pin@0d95a9e6` - raise `msgspec` from 0.19.0 to 0.21.1 - lock current multi-address transport deps - retain `xonsh` 0.24.2 from the flake-update stack Prompt-IO: ai/prompt-io/opencode/20260901T230043Z_e91f41a6_prompt_io.md (this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
1ba9bdbac0 |
Preserve exact `piker` logger namespaces
Use `str.removeprefix()` instead of character-set stripping so subloggers such as `piker.paper` retain their requested namespace. Also, - drop stale parent-logger assertions from daemon startup paths - keep logger setup calls without assigning assertion-only locals - cover both logger factories and prefix-sensitive module names Prompt-IO: ai/prompt-io/opencode/20260821T042058Z_b7aca4c0_prompt_io.md (this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
d86f29d416 |
Update feed test fqmes to use `.<venue>` format
Switch all `test_feeds.py` parametrized fqmes from legacy `<pair>.<broker>` to the current `<pair>.<venue>.<broker>` schema (e.g. `btcusdt.spot.binance`). Deats, - update binance fqmes: `btcusdt.binance` -> `btcusdt.spot.binance`, same for `ethusdt`. - update kraken fqmes: `ethusdt.kraken` -> `ethusdt.spot.kraken`, `xbtusd.kraken` -> `xbtusd.spot.kraken`. - update cross-broker set similarly. - comment out old fqmes with `!TODO` to later validate raising on bad/legacy formats. Also, - reformat `if ci_env and not run_in_ci` to multiline style. - reformat `pytest.skip()` msg to multiline. - add `?TODO` for symbology helper fn. - drop stray `await tractor.pause()` in `conftest.py`. (this commit msg was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
69a6edd6f8 |
Normalize registrar addrs with `wrap_address()`
Canonicalize legacy socket pairs and tagged tuples before storing or comparing `Registry.addrs`, keeping existing config readable when tractor emits protocol-tagged forms. Also, - broaden registry/runtime addr annotations for both wire shapes - compare service fixture addrs through tractor's address codec - use tractor's shared `--ll` pytest option instead of registering it twice - cover mixed legacy/tagged registry state and `pikerd` startup Prompt-IO: ai/prompt-io/opencode/20260820T163519Z_5f631e19_prompt_io.md (this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
bbe9deaa62 |
Port service+tests to latest `tractor` APIs
Continue the `repair_tests`-branch mission (already merged in this stack's ancestry, see |
|
|
|
70e8d60326 |
Fix `pytest` config-dir isolation in subactors
The old (commented-out) `get_app_dir()` override gated on `'pytest' in sys.modules` which can NEVER work in spawned subactors (fresh procs, no pytest import); as a result test `paperboi`/daemon actors were writing into the user's REAL `~/.config/piker/accounting/` files.. friggin yikes. Deats, - add `config._maybe_use_test_dir()` which lazily (at conf-path access time, NOT import time) reads the `piker_test_dir` entry from `tractor.runtime._state._runtime_vars['piker_vars']` as pre-loaded by `open_piker_runtime()` from the `tests.conftest._open_test_pikerd()` overrides. - hook it in `get_conf_dir()` and route `get_conf_path()` + `load()`'s mkdir through `get_conf_dir()`. - route `.accounting._ledger` / `._pos` dir derivation through `config.get_conf_dir()` (was reading the `_config_dir` global directly, bypassing the override); also `mkdir(parents=True, exist_ok=True)` for nested tmp-dir creation. (this patch was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Prompt-IO: ai/prompt-io/claude/20260610T170859Z_75cefe10_prompt_io.md |
|
|
|
2c007d3ada |
Add `tpt_bind_addrs` and separate registry eps
Thread a `tpt_bind_addrs` param through `open_piker_runtime()` and `open_pikerd()` so pikerd's bind addrs can differ from the registry endpoint (support a dedicated `regd` service). Simplify `load_trans_eps()` to delegate entirely to `tractor.discovery.parse_endpoints()`. Deats, - `conf.toml`: fix maddr prefixes to proper `/ip4/` and `/unix/`, add `chart` endpoints section, add commented `regd` example. - `cli/__init__.py`: replace `parse_maddr` with `parse_endpoints`, rename `--maddr` -> `--maddrs`, parse `regd` key from eps falling back to `pikerd` addrs. - `_actor_runtime.py`: thread `tpt_bind_addrs` through runtime open fns to `open_root_actor`. - `ui/cli.py`: activate `network` config parsing for chart CLI, extract `chart` eps for bind and `regd`/`pikerd` for registry, pass `tpt_bind_addrs` through runtime config. (this commit msg was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
1fde12d3fd |
Use `tractor.Address` for endpoint resolution
Replace manual `layers['ipv4']['addr']` / `layers['tcp']['port']` tuple extraction with direct `tractor.Address` objects returned from `load_trans_eps()`. In `open_pikerd()` call `addr.unwrap()` for the raw-tuple comparison against `root_actor.accept_addrs`. Deats, - `conf.toml`: update maddr prefix `/ipv4/` -> `/ipv/`, add commented UDS socket path example. - `cli/__init__.py`: wrap endpoint loading in `maybe_open_crash_handler`, append `addr` objects directly to `regaddrs`. - `ui/cli.py`: restructure `chart()` body into `maybe_open_crash_handler` scope, switch to `registry_addrs` from config, comment out the `network`-based `load_trans_eps` path (WIP `multiaddr` transition). - `_actor_runtime.py`: use `addr.unwrap()` for accept-addr membership check. - `uv.lock`: add `multiaddr >= 0.2.0` and its transitive deps. (this commit msg was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
c347ab08ea |
Drop `.cancel_actor()` from `maybe_spawn_daemon()`
Since `tractor`'s new and improved inter-actor cancellation semantics are much more pedantic, AND bc we use the `ServiceMngr` for spawning service actors on-demand, the caller of `maybe_spawn_daemon()` should NEVER conduct a so called "out of band" `Actor`-runtime cancel request since this is precisely the job of our `ServiceMngr` XD Add a super in depth note explaining the underlying issue and adding a todo list of how we should prolly augment `tractor` to make such cases easier to grok and fix in the future! |
|
|
|
c5155ce814 |
Swap `open_channel_from()` yield-pair order
Port deribit and IB `asyncio` bridge callables to the new `to_asyncio.open_channel_from()` signature where the `LinkedTaskChannel` is the first param and `started_nowait()` replaces the old `to_trio.send_nowait()` sync handshake. Deats, - deribit `api.py`: update `aio_price_feed_relay()` and `aio_order_feed_relay()` signatures to take `chan: LinkedTaskChannel` as first arg; drop `from_trio`/`to_trio` params; replace `to_trio.send_nowait()` with `chan.send_nowait()` and `chan.started_nowait()`. - drop `functools.partial()` wrapping in both `open_price_feed()` and `open_order_feed()`; pass `fh=`/`instrument=` as kwargs directly. - IB `broker.py`: same `chan` + `started_nowait()` port for `recv_trade_updates()`. Other styling, - rewrap `recv_trade_updates()` docstring to 67 chars. (this patch was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
d7cefa71f3 |
Update `tractor` private-API refs across codebase
Port internal `tractor._<mod>` references to their new public or reorganized paths after `tractor` refactored its subpkg layout. Deats, - `tractor._portal.Portal` -> `tractor.Portal`. - `tractor._supervise.ActorNursery` -> `tractor.ActorNursery`. - `tractor._multiaddr` -> `tractor.discovery._multiaddr`. - `tractor._addr` -> `tractor.discovery._addr`. - `tractor._state._runtime_vars` -> `tractor.runtime._state._runtime_vars`. - `tractor._state.is_debug_mode()` -> `tractor.runtime._state.is_debug_mode()`. Files touched: `brokers/data.py`, `cli/__init__.py`, `data/feed.py`, `service/_actor_runtime.py`, `service/_mngr.py`, `storage/cli.py`, `tsp/_annotate.py`, `ui/kivy/monitor.py`, `ui/kivy/option_chain.py`. (this commit msg was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
20bfbc2380 |
Use pre-set reg addrs in `maybe_spawn_daemon()`
Pull actor-runtime `registry_addrs` from (the new)
`tractor.get_runtime_vars()` (over the previous hardcoding of
`('127.0.0.1', 6116)`..)) so that underlying `find_service()` and
`maybe_open_pikerd()` calls use the local actor's assigned registrar
endpoints.
Note, this is particularly necessary to get the `pytest` harness workin
again alongside any local running `pikerd` instance(s).
(this commit msg was generated in some part by [`claude-code`][claude-code-gh])
[claude-code-gh]: https://github.com/anthropics/claude-code
|
|
|
|
d7f956a566 |
Register all custom excs with `tractor` IPC
Call `reg_err_types()` for every piker-defined exception so they can be marshalled and re-raised across actor boundaries. Deats, - `brokers/_util.py`: auto-register `BrokerError` + all `__subclasses__()` (6 types). - `config.py`: `ConfigurationError` + `__subclasses__()` (`NoSignature`). - `data/validate.py`: `FeedInitializationError`. - `service/_ahab.py`: `DockerNotStarted`, `ApplicationLogError`. - `service/marketstore.py`: `MarketStoreError`. - `storage/__init__.py`: `TimeseriesNotFound`, `StorageConnectionError`. - `brokers/kraken/api.py`: `InvalidKey`. - `brokers/kraken/broker.py`: `TooFastEdit`. - `brokers/questrade.py`: `QuestradeError`. Also, - uncomment `execution_venue` field on kraken `Pair`. (this patch was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
d26286f6cc |
Factor `Pair` schema-mismatch handling to `_util`
Add `get_or_raise_on_pair_schema_mismatch()` helper and `SchemaMismatch` error type in `brokers._util` to standardize the "provider changed their API" error reporting across backends. Deats, - add `SchemaMismatch(BrokerError)` exc type. - `get_or_raise_on_pair_schema_mismatch()`: catch `TypeError` on `Pair` ctor, build `ppfmt()`-ed report with provider name, fall back to `pair_type._api_url` if no explicit URL passed, then raise `SchemaMismatch`. - binance `api.py`: replace inline `try/except` + `e.add_note()` with the new helper. - kraken `api.py`: replace bare `Pair(...)` ctor with the new helper inside crash handler. Also, - add `_api_url: ClassVar[str]` to binance `FutesPair` and kraken `Pair` structs. - binance `feed.py`: warn on missing `.<provider>` in fqme; raise `SymbolNotFound` on empty venue. - reformat `start_dt`/`end_dt` unions to `datetime|None` style in binance `Client`. - wrap binance `_pairs` lookup in `maybe_open_crash_handler()`. (this commit msg was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
22f166a5c6 |
Update `conftest.py` for `tractor` runtime API changes
Port test fixtures to match `tractor`'s updated registry and channel APIs. Deats, - use `registry_addrs=[reg_addr]` (list) instead of `registry_addr=reg_addr` in `maybe_open_pikerd()`. - `wait_for_actor()` now takes `registry_addr=` kwarg instead of `arbiter_sockaddr=`. - access `portal.chan` (not `.channel`) and unwrap remote addr via `raddr.unwrap()`. - yield `raddr._host`/`raddr._port` instead of tuple-indexing. - drop random port generation; accept `reg_addr` fixture from `tractor`'s builtin pytest plugin. Also, - add `reg_addr: tuple` param to `open_test_pikerd()` fixture (sourced from `tractor._testing.pytest`). - type-narrow `reg_addr` to `tuple[str, int|str]`. - drop unused `import random`. (this commit msg was generated in some part by [`claude-code`][claude-code-gh]) [claude-code-gh]: https://github.com/anthropics/claude-code |
|
|
|
6c8709d309 |
Bump `xonsh` to 0.24.2
Use the current xonsh release in the Nix-managed REPL environment. Deats, - require xonsh 0.24.2 for Python 3.13 and Nix fixes; - refresh only xonsh's source and wheel lock metadata; - retain dotrc compatibility for shells outside this project; - record Prompt-IO provenance for the dependency update. Prompt-IO: ai/prompt-io/opencode/20260828T200352Z_dd676857_prompt_io.md (this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
23632d2153 |
Bump `flake.lock` after dev-shell fixes
Advance `nixpkgs` to `241313f4`; the refreshed closure passes Qt, `pyqtgraph` and wksmod-path import checks. (this commit msg was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
d85e57334c |
Rebuild stale `uv` envs after flake updates
`uv sync` accepts an existing same-minor Python even when its Nix store path belongs to an older closure. That can leave a glibc 2.40 interpreter loading Qt built against glibc 2.42. - derive the Python package once from `cpython` - clear `py313` when its interpreter target differs from the flake - ignore inherited `VIRTUAL_ENV` before syncing (this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
6c8d17da75 |
Fix `flake.nix` dev-shell install
The refreshed Nix closure no longer supplies `libz.so.1` to the `uv` NumPy wheel, and leaves the synced `py313` env off `PATH`. - add Nix `zlib` to `LD_LIBRARY_PATH` for native Python deps - activate `py313` after `uv sync` so `pyqtgraph`, `piker` and `xonsh` resolve from the locked env (this patch was generated in some part by `opencode` using `gpt-5.6-sol` (`openai`)) |
|
|
|
1976f6a5de |
Bump `flake.lock` to avoid nix warnings..
However this breaks `pyqtgraph` due to missing `PyQtX` libs?? |