Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/dds driver #549

Closed
wants to merge 76 commits into from
Closed

Conversation

maij
Copy link

@maij maij commented Mar 30, 2017

Changes proposed in this pull request:

  • Implement the SpinCore PulseBlaster DDS
  • Test the driver in full
  • Develop convenient methods to program instructions

@nulinspiratie

lgnjanssen and others added 30 commits March 2, 2017 15:55
Also removed unnecessary wrapper functions in the base class.
Add a correct get_cmd, since it previously was not a function, rather an evaluated function.
…ers to private attributes with set and get functions.
…ot class variables. This should be convention for all future variables.
Add missing test for testing open/close and chassis/slot related functions.
Also created internal variable storage to aid get/set commands with first time execution.
change the order of positional arguments of several channel-related set functions so they can be used in 'partial'
add test functions for channel-related set-commands like frequency, phase, amplitude, offset and wave chape
Fixed some missing parentheses.
previously only the get-cmd was available. This commit adds the set-cmd and also add a test function for this parameter.
Add waveform and awg related functions to the M3201A driver. Also add clock and trigger related functions.
Changed library location to be ~/site_packages/signadyne.py to agree with SD AWG driver.
…e used instead of class funcs.

Small corrections to some validator declarations.
Add waveform related functions to the M3201A driver and also fix waveform writing convention
maij and others added 28 commits March 14, 2017 12:20
…ssification

Feature/signadyne driver classification
Merge pull request #4 from nulinspiratie/feature/SD_DIG_functions
Edit waveform-creating functions to actually return SD_Wave instances. Previously they returned only the available onboard RAM and no new SD_Wave object was ever created.
Add a default value for `name` i.e. `result`. Previously it needed to be specified in each call of `result_parser`
Move pxi-read/write functions to SD_Module level. Previously they were in SD_AWG, but they are shared by all SD_Modules.
…re is no real reason to use a get_cmd rather than get_latest for a purely settable device parameter
Add PCport-read and -write functions at SD_Module level. These are used for communicating with the FPGA PCports.
…integration

Feature/signadyne digitizer integration
…ified spinapi to include DDS functions in the C lib.
@maij maij closed this Mar 30, 2017
bors bot added a commit that referenced this pull request Sep 29, 2022
4662: Update pytest-mock requirement from ~=3.8.2 to ~=3.9.0 r=jenshnielsen a=dependabot[bot]

Updates the requirements on [pytest-mock](https://github.com/pytest-dev/pytest-mock) to permit the latest version.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/releases">pytest-mock's releases</a>.</em></p>
<blockquote>
<h2>v3.9.0</h2>
<h1>Releases</h1>
<h2>3.9.0 (2022-09-28)</h2>
<ul>
<li>Expose <code>NonCallableMagicMock</code> via the <code>mocker</code> fixture (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/318">#318</a>).</li>
</ul>
<h2>3.8.2 (2022-07-05)</h2>
<ul>
<li>Fixed <code>AsyncMock</code> support for Python 3.7+ in <code>mocker.async_stub</code> (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/302">#302</a>).</li>
</ul>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fixed regression caused by an explicit <code>mock</code> dependency in the code (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>).</li>
</ul>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">#296</a>).</li>
</ul>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using <code>mocker.spy()</code> (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>). Thanks <a href="https://github.com/blaxter"><code>`@​blaxter</code></a>` for the report and <a href="https://github.com/shadycuz"><code>`@​shadycuz</code></a>` for the PR.</li>
</ul>
<h2>3.6.0 (2021-04-24)</h2>
<ul>
<li>pytest-mock no longer supports Python 3.5.</li>
<li>Correct type annotations for <code>mocker.patch.object</code> to also include the string form.
Thanks <a href="https://github.com/plannigan"><code>`@​plannigan</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/235">#235</a>).</li>
<li><code>reset_all</code> now supports <code>return_value</code> and <code>side_effect</code> keyword arguments. Thanks <a href="https://github.com/alex-marty"><code>`@​alex-marty</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/214">#214</a>).</li>
</ul>
<h2>3.5.1 (2021-01-10)</h2>
<ul>
<li>Use <code>inspect.getattr_static</code> instead of resorting to <code>object.__getattribute__</code>
magic. This should better comply with objects which implement a custom descriptor
protocol. Thanks <a href="https://github.com/yesthesoup"><code>`@​yesthesoup</code></a>` for the PR (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/224">#224</a>).</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst">pytest-mock's changelog</a>.</em></p>
<blockquote>
<h2>3.9.0 (2022-09-28)</h2>
<ul>
<li>Expose <code>NonCallableMagicMock</code> via the <code>mocker</code> fixture (<code>[#318](https://github.com/pytest-dev/pytest-mock/issues/318)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/318">#318</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/318">pytest-dev/pytest-mock#318</a></p>
<h2>3.8.2 (2022-07-05)</h2>
<ul>
<li>Fixed <code>AsyncMock</code> support for Python 3.7+ in <code>mocker.async_stub</code> (<code>[#302](https://github.com/pytest-dev/pytest-mock/issues/302)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/302">#302</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/302">pytest-dev/pytest-mock#302</a></p>
<h2>3.8.1 (2022-06-24)</h2>
<ul>
<li>Fixed regression caused by an explicit <code>mock</code> dependency in the code (<code>[#298](https://github.com/pytest-dev/pytest-mock/issues/298)</code>_).</li>
</ul>
<p>.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">#298</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/298">pytest-dev/pytest-mock#298</a></p>
<h2>3.8.0 (2022-06-24)</h2>
<ul>
<li>Add <code>MockerFixture.async_mock</code> method. Thanks <code>`@PerchunPak</code>_` for the PR (<code>[#296](https://github.com/pytest-dev/pytest-mock/issues/296)</code>_).</li>
</ul>
<p>.. _<a href="https://github.com/PerchunPak"><code>`@​PerchunPak</code></a>:` <a href="https://github.com/PerchunPak">https://github.com/PerchunPak</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/296">#296</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/pull/296">pytest-dev/pytest-mock#296</a></p>
<h2>3.7.0 (2022-01-28)</h2>
<ul>
<li>Python 3.10 now officially supported.</li>
<li>Dropped support for Python 3.6.</li>
</ul>
<h2>3.6.1 (2021-05-06)</h2>
<ul>
<li>Fix <code>mocker.resetall()</code> when using <code>mocker.spy()</code> (<code>[#237](https://github.com/pytest-dev/pytest-mock/issues/237)</code><em>). Thanks <code>`@blaxter</code></em>` for the report and <code>`@shadycuz</code>_` for the PR.</li>
</ul>
<p>.. _<a href="https://github.com/blaxter"><code>`@​blaxter</code></a>:` <a href="https://github.com/blaxter">https://github.com/blaxter</a>
.. _<a href="https://github.com/shadycuz"><code>`@​shadycuz</code></a>:` <a href="https://github.com/shadycuz">https://github.com/shadycuz</a>
.. _<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">#237</a>: <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/237">pytest-dev/pytest-mock#237</a></p>
<h2>3.6.0 (2021-04-24)</h2>
<ul>
<li>
<p>pytest-mock no longer supports Python 3.5.</p>
</li>
<li>
<p>Correct type annotations for <code>mocker.patch.object</code> to also include the string form.</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/64a34f64215d779dc0384acc3cdd5a164544a60a"><code>64a34f6</code></a> Update CHANGELOG for 3.9.0</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/4e31630aad7dca66258f232e6b62754dadd79f2b"><code>4e31630</code></a> Add test for NonCallableMagicMock</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/247b9d46e6fdfc696257c4daade9c08a195c45aa"><code>247b9d4</code></a> Expose NonCallableMagicMock in MockerFixture</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/0fd7fea3eece2e2dd09affeed39f0e3a50295f0d"><code>0fd7fea</code></a> Update link to notes about usage as context manager (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/313">#313</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/903b97283d1c8271596d748a9a8eef5038f96bb6"><code>903b972</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/311">#311</a> from pytest-dev/pre-commit-ci-update-config</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/a5a33ac9461e469736ed0d2ceae135f2cfb3fad0"><code>a5a33ac</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/d01b267622b8ae21f977115edc624638da0f2508"><code>d01b267</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/309">#309</a> from pytest-dev/pre-commit-ci-update-config</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/736f2ab0caa4a51544627773818d1ef4822ab31c"><code>736f2ab</code></a> [pre-commit.ci] pre-commit autoupdate</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/59b60cb85116016e2e5e458d00b8ca3c5b267178"><code>59b60cb</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/pytest-dev/pytest-mock/issues/308">#308</a> from juliangilbey/add-static-dir</li>
<li><a href="https://github.com/pytest-dev/pytest-mock/commit/305e0829c4100d1316dd30e91d978e56602cf893"><code>305e082</code></a> Add docs/_static directory to allow sphinx-build to work without warnings</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-mock/compare/v3.8.2...v3.9.0">compare view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

4663: Update pytest-cov requirement from ~=3.0.0 to ~=4.0.0 r=jenshnielsen a=dependabot[bot]

Updates the requirements on [pytest-cov](https://github.com/pytest-dev/pytest-cov) to permit the latest version.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst">pytest-cov's changelog</a>.</em></p>
<blockquote>
<h2>4.0.0 (2022-09-28)</h2>
<p><strong>Note that this release drops support for multiprocessing.</strong></p>
<ul>
<li>
<p><code>--cov-fail-under</code> no longer causes <code>pytest --collect-only</code> to fail
Contributed by Zac Hatfield-Dodds in <code>[#511](pytest-dev/pytest-cov#511) &lt;https://github.com/pytest-dev/pytest-cov/pull/511&gt;</code>_.</p>
</li>
<li>
<p>Dropped support for multiprocessing (mostly because <code>issue 82408 &lt;https://github.com/python/cpython/issues/82408&gt;</code>_). This feature was
mostly working but very broken in certain scenarios and made the test suite very flaky and slow.</p>
<p>There is builtin multiprocessing support in coverage and you can migrate to that. All you need is this in your
<code>.coveragerc</code>::</p>
<p>[run]
concurrency = multiprocessing
parallel = true
sigterm = true</p>
</li>
<li>
<p>Fixed deprecation in <code>setup.py</code> by trying to import setuptools before distutils.
Contributed by Ben Greiner in <code>[#545](pytest-dev/pytest-cov#545) &lt;https://github.com/pytest-dev/pytest-cov/pull/545&gt;</code>_.</p>
</li>
<li>
<p>Removed undesirable new lines that were displayed while reporting was disabled.
Contributed by Delgan in <code>[#540](pytest-dev/pytest-cov#540) &lt;https://github.com/pytest-dev/pytest-cov/pull/540&gt;</code>_.</p>
</li>
<li>
<p>Documentation fixes.
Contributed by Andre Brisco in <code>[#543](pytest-dev/pytest-cov#543) &lt;https://github.com/pytest-dev/pytest-cov/pull/543&gt;</code>_
and Colin O'Dell in <code>[#525](pytest-dev/pytest-cov#525) &lt;https://github.com/pytest-dev/pytest-cov/pull/525&gt;</code>_.</p>
</li>
<li>
<p>Added support for LCOV output format via <code>--cov-report=lcov</code>. Only works with coverage 6.3+.
Contributed by Christian Fetzer in <code>[#536](pytest-dev/pytest-cov#536) &lt;https://github.com/pytest-dev/pytest-cov/issues/536&gt;</code>_.</p>
</li>
<li>
<p>Modernized pytest hook implementation.
Contributed by Bruno Oliveira in <code>[#549](pytest-dev/pytest-cov#549) &lt;https://github.com/pytest-dev/pytest-cov/pull/549&gt;</code>_
and Ronny Pfannschmidt in <code>[#550](pytest-dev/pytest-cov#550) &lt;https://github.com/pytest-dev/pytest-cov/pull/550&gt;</code>_.</p>
</li>
</ul>
<h2>3.0.0 (2021-10-04)</h2>
<p><strong>Note that this release drops support for Python 2.7 and Python 3.5.</strong></p>
<ul>
<li>Added support for Python 3.10 and updated various test dependencies.
Contributed by Hugo van Kemenade in
<code>[#500](pytest-dev/pytest-cov#500) &lt;https://github.com/pytest-dev/pytest-cov/pull/500&gt;</code>_.</li>
<li>Switched from Travis CI to GitHub Actions. Contributed by Hugo van Kemenade in
<code>[#494](pytest-dev/pytest-cov#494) &lt;https://github.com/pytest-dev/pytest-cov/pull/494&gt;</code>_ and
<code>[#495](pytest-dev/pytest-cov#495) &lt;https://github.com/pytest-dev/pytest-cov/pull/495&gt;</code>_.</li>
<li>Add a <code>--cov-reset</code> CLI option.
Contributed by Danilo Šegan in
<code>[#459](pytest-dev/pytest-cov#459) &lt;https://github.com/pytest-dev/pytest-cov/pull/459&gt;</code>_.</li>
<li>Improved validation of <code>--cov-fail-under</code> CLI option.
Contributed by ... Ronny Pfannschmidt's desire for skark in
<code>[#480](pytest-dev/pytest-cov#480) &lt;https://github.com/pytest-dev/pytest-cov/pull/480&gt;</code>_.</li>
<li>Dropped Python 2.7 support.</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/28db055bebbf3ee016a2144c8b69dd7b80b48cc5"><code>28db055</code></a> Bump version: 3.0.0 → 4.0.0</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/57e9354a86f658556fe6f15f07625c4b9a9ddf53"><code>57e9354</code></a> Really update the changelog.</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/56b810b91c9ae15d1462633c6a8a1b522ebf8e65"><code>56b810b</code></a> Update chagelog.</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/f7fced579e36b72b57e14768026467e4c4511a40"><code>f7fced5</code></a> Add support for LCOV output</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/1211d3134bb74abb7b00c3c2209091aaab440417"><code>1211d31</code></a> Fix flake8 error</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/b077753f5d9d200815fe500d0ef23e306784e65b"><code>b077753</code></a> Use modern approach to specify hook options</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/00713b3fec90cb8c98a9e4bfb3212e574c08e67b"><code>00713b3</code></a> removed incorrect docs on <code>data_file</code>.</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/b3dda36fddd3ca75689bb3645cd320aa8392aaf3"><code>b3dda36</code></a> Improve workflow with a collecting status check. (<a href="https://github-redirect.dependabot.com/pytest-dev/pytest-cov/issues/548">#548</a>)</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/218419f665229d61356f1eea3ddc8e18aa21f87c"><code>218419f</code></a> Prevent undesirable new lines to be displayed when report is disabled</li>
<li><a href="https://github.com/pytest-dev/pytest-cov/commit/60b73ec673c60942a3cf052ee8a1fdc442840558"><code>60b73ec</code></a> migrate build command from distutils to setuptools</li>
<li>Additional commits viewable in <a href="https://github.com/pytest-dev/pytest-cov/compare/v3.0.0...v4.0.0">compare view</a></li>
</ul>
</details>
<br />


You can trigger a rebase of this PR by commenting ``@dependabot` rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- ``@dependabot` rebase` will rebase this PR
- ``@dependabot` recreate` will recreate this PR, overwriting any edits that have been made to it
- ``@dependabot` merge` will merge this PR after your CI passes on it
- ``@dependabot` squash and merge` will squash and merge this PR after your CI passes on it
- ``@dependabot` cancel merge` will cancel a previously requested merge and block automerging
- ``@dependabot` reopen` will reopen this PR if it is closed
- ``@dependabot` close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- ``@dependabot` ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- ``@dependabot` ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant