Commit Graph

8323 Commits

Author SHA1 Message Date
Sebastien Bourdeauducq 6483361e6a Merge branch 'master' into nac3 2022-07-02 19:20:15 +08:00
Sebastien Bourdeauducq 5261375301 update dependencies 2022-07-02 19:19:07 +08:00
Sebastien Bourdeauducq d17675e9b5 moninj: make receive_task private again 2022-07-02 17:58:24 +08:00
Sebastien Bourdeauducq 388b81af19 moninj,corelog: fix/cleanup exception handling (#1897) 2022-07-02 17:48:18 +08:00
Deepskyhunter 02b086c9e5
aqctl_corelog: enable keepalive, terminate on connection failure 2022-07-02 17:33:58 +08:00
Deepskyhunter b4f24dd326 Modify log for matching the style 2022-06-23 19:16:36 +08:00
Deepskyhunter da6d35e7c6 Add log message when dashboard connected to proxy 2022-06-23 19:16:36 +08:00
Deepskyhunter 745f440597 Public receive_task for the use in proxy
Notify proxy and terminate after receive_task end
2022-06-23 19:16:36 +08:00
David Nadlinger e1f9feae8b applets.simple: Actually forward dataset_prefixes when using IPC
Turns out I had inadvertently only tested 2d6fc154d using the
socket interface.
2022-06-19 18:08:25 +01:00
David Nadlinger dd928fc014 master: Fixup 32db6ff978 (argument_ui support)
This was lost in the ndscan diff upstreaming process
due to other Oxford-local changes in artiq.master.worker.
2022-06-19 11:33:40 +01:00
Sebastien Bourdeauducq 48cb111035 Revert "add pull.yml (#1918)"
This reverts commit d8597e9dc8.
2022-06-19 11:57:46 +08:00
hartytp d8597e9dc8
add pull.yml (#1918) 2022-06-18 12:37:23 +01:00
David Nadlinger 32db6ff978
Allow experiments to specify a custom argument editor UI (#1916)
On the master/EnvExperiment side, the only addition is an optional
property `argument_ui` that is made accessible to the dashboard, e.g.

    class Example(EnvExperiment):
        argument_ui = "ndscan"
        def build(self):
           …

Clients – primarily artiq_dashboard, but in principle e.g. a
command-line UI could do the same – can then compare the value to a
list of well-known names and prefer any matching custom UI handlers.

On the dashboard side, this commit adds the mechanism to register
a custom argument editor for a given argument_ui string, i.e. the
widget that displays the parameter values within the wider
experiment UI shell with the submit button, pipeline parameters, and
so on. The registry remains empty by default and would be filled by
out-of-tree plugins such as ndscan.

The UI state readback is implemented somewhat defensively to avoid
needless disruptions to users when upgrading.
2022-06-18 15:55:13 +08:00
David Nadlinger dbc87f08ff dashboard: Add submit/close hooks for custom argument editors
These are used by ndscan, as re-serialising the entire ndscan
parameter metadata tree, which can grow to be quite extensive,
on every single Qt change event is a bit excessive (and would
probably cause a bit of lag while typing for big experiments
on low-end machines).
2022-06-18 15:51:39 +08:00
David Nadlinger c4068e6896 dashboard: Plumb through datasets client to ExperimentManager
This is analogous to the explist/schedule subscribers, and allows
custom argument editors (such as ndscan) to provide hints/defaults/…
from datasets once available.
2022-06-18 15:50:05 +08:00
David Nadlinger 85895ab89b dashboard: Add cmdline option to load plugins on startup
Together with m-labs/artiq#1916, this allows the user to integrate
multiple argument UIs implemented in external libraries.
2022-06-18 15:48:32 +08:00
kk1050 46fb8916bb
update SEEN_ASYNC_ERRORS in destination_survey 2022-06-18 15:46:49 +08:00
David Nadlinger 2d6fc154db applets: Allow wildcard subscription to all datasets matching prefix via IPC
This allows ndscan v0.3+ to use the IPC interface for efficiency;
previously, the non-upstreamed RID dataset namespace feature allowed
the applets to somewhat efficient subscribe directly to the master
process via the socket interface.
2022-06-18 15:45:57 +08:00
David Nadlinger 4c42f65909 applets: Add ${server}, ${port_control}, ${port_notify} command substitutions
This facilitates applets that connect back to the master
(e.g. to update datasets on user request, as used by ndscan).
2022-06-18 15:19:35 +08:00
David Nadlinger f4d639242d units: Add nW (nanowatts)
We found this quite useful/common for laser beams.
2022-06-18 15:11:05 +08:00
Sebastien Bourdeauducq bf3b155a31 flake: update dependencies 2022-06-17 16:07:31 +08:00
Michael Birtwell 69c4026d2b Fix returning tuples of lists of arrays from RPCs
When serialising a list of objects `_send_rpc_value` makes a copy of the
upcoming tags to pass repeatedly to the recursive call. Then uses
`_skip_rpc_value` to skip over the tags that should have been processed.
This didn't handle numpy arrays so, after processing a list of arrays it
got out of sync and failed.

Signed-off-by: Michael Birtwell <michael.birtwell@oxionics.com>
2022-06-15 00:08:49 +08:00
Deepskyhunter e47834d82e Bugfix: Add missing item inside state to solve KeyError
KeyError raised when trying to load default_state()
due to missing Key "seed" in "RangeScan" and "CenterScan" in
state. Add {"seed": None} to resolve the bug.
2022-06-14 11:41:55 +08:00
Spaqin 4ede14b14d
dashboard: add DDS quick set-frequency feature 2022-06-09 12:01:06 +08:00
Sebastien Bourdeauducq 8e206e92f5 test_pulse_rate: port to NAC3 2022-06-07 00:15:51 +08:00
Sebastien Bourdeauducq 85693e45e7 fix coredevice comm serve 2022-06-06 23:57:01 +08:00
Sebastien Bourdeauducq d15d922236 test_compile: port to NAC3 2022-06-06 23:56:14 +08:00
Sebastien Bourdeauducq cc3d86ff12 test_cache: port to NAC3 2022-06-06 23:43:43 +08:00
Sebastien Bourdeauducq dc006b1a40 test_analyzer: port to NAC3 2022-06-06 23:36:27 +08:00
Sebastien Bourdeauducq ba30705fa5 core: allow re-creation of Core object, do not use _allow_registration global variable 2022-06-06 23:13:46 +08:00
Sebastien Bourdeauducq b77f6886be test_i2c: port to NAC3 2022-06-06 22:55:34 +08:00
Sebastien Bourdeauducq cb68ed9f1d test: remove lit tests 2022-06-06 22:45:36 +08:00
Sebastien Bourdeauducq 0607743669 flake: update NAC3, move to LLVM 14, remove LLD 2022-06-06 18:49:49 +08:00
Sebastien Bourdeauducq 77fd47b1fb flake: remove libartiq-support 2022-06-06 18:49:23 +08:00
kk1050 4ddd2739ee
add log_tuples function (#1896)
Co-authored-by: kk105 <kkl@m-kabs.hk>
2022-06-06 18:41:46 +08:00
Sebastien Bourdeauducq ce027d9c51 Merge branch 'master' into nac3 2022-06-06 18:18:05 +08:00
Sebastien Bourdeauducq e702624720 flake: do not use __impure (breaks hydra) 2022-06-04 10:32:02 +08:00
Sebastien Bourdeauducq 68ef0073ea doc: mock sipyco.keepalive. Closes #1900 2022-06-01 20:46:16 +08:00
Sebastien Bourdeauducq 71a37bb408 doc: switch to wavedrompy 2022-06-01 20:45:49 +08:00
occheung f79f7db3a2 dyld: handle rebind on symbols relocated by CALL_PLT 2022-06-01 12:44:33 +08:00
occheung 872f8f039f dyld: support additional RV32 reloc types
The support of LO12 type requires the runtime linker to find the corresponding HI20 symbol. resolve_rela needs the entire relocation section for that.
2022-06-01 12:44:33 +08:00
occheung 50495097e5 dyld: rename pltrel to jmprel
nac3ld will not generate PLT & its relocation section. There might not be a pltrel in that case.
On the other hand, rebinding will not be limited to the symbols in the PLT when linked with nac3ld.
Thus the renaming.
2022-06-01 12:44:33 +08:00
occheung d924bfc958 dyld: handle rebind on symbols relocated by CALL_PLT 2022-06-01 12:42:54 +08:00
occheung 2cd43bf4f7 dyld: support additional RV32 reloc types
The support of LO12 type requires the runtime linker to find the corresponding HI20 symbol. resolve_rela needs the entire relocation section for that.
2022-06-01 12:42:54 +08:00
occheung 5d7b01bd3f dyld: rename pltrel to jmprel
nac3ld will not generate PLT & its relocation section. There might not be a pltrel in that case.
On the other hand, rebinding will not be limited to the symbols in the PLT when linked with nac3ld.
Thus the renaming.
2022-06-01 12:42:54 +08:00
Sebastien Bourdeauducq ca614a3eea use asyncio get/new_event_loop as recommended 2022-05-31 23:06:54 +08:00
Sebastien Bourdeauducq 8bf6bc4d1f flake: update dependencies 2022-05-31 20:59:21 +08:00
occheung 6d46c886d7 ld.lld: translate TARGET2 reloc to relative 2022-05-31 18:26:06 +08:00
Sebastien Bourdeauducq a5b7e958f8 flake: update dependencies 2022-05-31 18:25:08 +08:00
Sebastien Bourdeauducq 667f36a2e7 gui: fix Python 3.10 PyQt float/int issues. Closes #1887 2022-05-29 08:43:25 +08:00