607: Don't use tokio::spawn r=klochowicz a=klochowicz
see commit descriptions for more info
Co-authored-by: Mariusz Klochowicz <mariusz@klochowicz.com>
The fact that we're storing a Vec<RemoteHandle<()>) internally is an
implementation detail.
Calling `spawn_with_handle` is done internally now, guarded by a `debug_assert!`
macro discouraging from doing it twice.
Prevent accidentally spawning a task that could outlive the actor system
and become a zombie.
Any long-lived task should be tied to its owner by keeping RemoteHandle around.
570: Ban use of xtra functions that lead to hard-to-spot bugs r=thomaseizinger a=thomaseizinger
Read commit messages for details.
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
622: Add a footer with social media links r=klochowicz a=klochowicz
Add Telegram, Twitter and GitHub links to ItchySats.
The footer is styled in the similar way to the header and follows the theme changes.
Fixes#518
Co-authored-by: Mariusz Klochowicz <mariusz@klochowicz.com>
Handling the `Sync` message is quick because we internally use
concurrency to fetch attestations and announcement. This will not
actually block startup.
Running this test with `--nocapture` reveals that we have unmocked
handlers. Adding these mocks fixes those panics (which are being
captured by tokio and hence did not abort the test).
Additionally we specialize the `mock_common_handlers` function to just
deal with the two `Sync` messages to make it clear that no more mocks
should be added to this function.
618: Bump react-refresh from 0.10.0 to 0.11.0 in /maker-frontend r=bonomat a=dependabot[bot]
Bumps [react-refresh](https://github.com/facebook/react/tree/HEAD/packages/react) from 0.10.0 to 0.11.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/react/releases">react-refresh's releases</a>.</em></p>
<blockquote>
<h2>v0.11.0</h2>
<h3>React Core</h3>
<h4>Breaking Changes</h4>
<ul>
<li><code>getDefaultProps()</code> is now called once per class and shared across all instances</li>
<li><code>MyComponent()</code> now returns a descriptor, not an instance</li>
<li><code>React.isValidComponent</code> and <code>React.PropTypes.component</code> validate <em>descriptors</em>, not component instances</li>
<li>Custom <code>propType</code> validators should return an <code>Error</code> instead of logging directly</li>
</ul>
<h4>New Features</h4>
<ul>
<li>Rendering to <code>null</code></li>
<li>Keyboard events include normalized <code>e.key</code> and <code>e.getModifierState()</code> properties</li>
<li>New normalized <code>onBeforeInput</code> event</li>
<li><code>React.Children.count</code> has been added as a helper for counting the number of children</li>
</ul>
<h4>Bug Fixes</h4>
<ul>
<li>Re-renders are batched in more cases</li>
<li>Events: <code>e.view</code> properly normalized</li>
<li>Added Support for more HTML attributes (<code>coords</code>, <code>crossOrigin</code>, <code>download</code>, <code>hrefLang</code>, <code>mediaGroup</code>, <code>muted</code>, <code>scrolling</code>, <code>shape</code>, <code>srcSet</code>, <code>start</code>, <code>useMap</code>)</li>
<li>Improved SVG support
<ul>
<li>Changing <code>className</code> on a mounted SVG component now works correctly</li>
<li>Added support for elements <code>mask</code> and <code>tspan</code></li>
<li>Added support for attributes <code>dx</code>, <code>dy</code>, <code>fillOpacity</code>, <code>fontFamily</code>, <code>fontSize</code>, <code>markerEnd</code>, <code>markerMid</code>, <code>markerStart</code>, <code>opacity</code>, <code>patternContentUnits</code>, <code>patternUnits</code>, <code>preserveAspectRatio</code>, <code>strokeDasharray</code>, <code>strokeOpacity</code></li>
</ul>
</li>
<li>CSS property names with vendor prefixes (<code>Webkit</code>, <code>ms</code>, <code>Moz</code>, <code>O</code>) are now handled properly</li>
<li>Duplicate keys no longer cause a hard error; now a warning is logged (and only one of the children with the same key is shown)</li>
<li><code>img</code> event listeners are now unbound properly, preventing the error "Two valid but unequal nodes with the same <code>data-reactid</code>"</li>
<li>Added explicit warning when missing polyfills</li>
</ul>
<h3>React With Addons</h3>
<ul>
<li>PureRenderMixin: a mixin which helps optimize "pure" components</li>
<li>Perf: a new set of tools to help with performance analysis</li>
<li>Update: New <code>$apply</code> command to transform values</li>
<li>TransitionGroup bug fixes with null elements, Android</li>
</ul>
<h3>React NPM Module</h3>
<ul>
<li>Now includes the pre-built packages under <code>dist/</code>.</li>
<li><code>envify</code> is properly listed as a dependency instead of a peer dependency</li>
</ul>
<h3>JSX</h3>
<ul>
<li>Added support for namespaces, eg <code><Components.Checkbox /></code></li>
<li>JSXTransformer
<ul>
<li>Enable the same <code>harmony</code> features available in the command line with <code><script type="text/jsx;harmony=true"></code></li>
<li>Scripts are downloaded in parallel for more speed. They are still executed in order (as you would expect with normal script tags)</li>
<li>Fixed a bug preventing sourcemaps from working in Firefox</li>
</ul>
</li>
</ul>
<h3>React Tools Module</h3>
<ul>
<li>Improved readme with usage and API information</li>
<li>Improved ES6 transforms available with <code>--harmony</code> option</li>
<li>Added <code>--source-map-inline</code> option to the <code>jsx</code> executable</li>
<li>New <code>transformWithDetails</code> API which gives access to the raw sourcemap data</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/facebook/react/blob/main/CHANGELOG.md">react-refresh's changelog</a>.</em></p>
<blockquote>
<h2>0.11.0 (July 17, 2014)</h2>
<h3>React Core</h3>
<h4>Breaking Changes</h4>
<ul>
<li><code>getDefaultProps()</code> is now called once per class and shared across all instances</li>
<li><code>MyComponent()</code> now returns a descriptor, not an instance</li>
<li><code>React.isValidComponent</code> and <code>React.PropTypes.component</code> validate <em>descriptors</em>, not component instances</li>
<li>Custom <code>propType</code> validators should return an <code>Error</code> instead of logging directly</li>
</ul>
<h4>New Features</h4>
<ul>
<li>Rendering to <code>null</code></li>
<li>Keyboard events include normalized <code>e.key</code> and <code>e.getModifierState()</code> properties</li>
<li>New normalized <code>onBeforeInput</code> event</li>
<li><code>React.Children.count</code> has been added as a helper for counting the number of children</li>
</ul>
<h4>Bug Fixes</h4>
<ul>
<li>Re-renders are batched in more cases</li>
<li>Events: <code>e.view</code> properly normalized</li>
<li>Added Support for more HTML attributes (<code>coords</code>, <code>crossOrigin</code>, <code>download</code>, <code>hrefLang</code>, <code>mediaGroup</code>, <code>muted</code>, <code>scrolling</code>, <code>shape</code>, <code>srcSet</code>, <code>start</code>, <code>useMap</code>)</li>
<li>Improved SVG support
<ul>
<li>Changing <code>className</code> on a mounted SVG component now works correctly</li>
<li>Added support for elements <code>mask</code> and <code>tspan</code></li>
<li>Added support for attributes <code>dx</code>, <code>dy</code>, <code>fillOpacity</code>, <code>fontFamily</code>, <code>fontSize</code>, <code>markerEnd</code>, <code>markerMid</code>, <code>markerStart</code>, <code>opacity</code>, <code>patternContentUnits</code>, <code>patternUnits</code>, <code>preserveAspectRatio</code>, <code>strokeDasharray</code>, <code>strokeOpacity</code></li>
</ul>
</li>
<li>CSS property names with vendor prefixes (<code>Webkit</code>, <code>ms</code>, <code>Moz</code>, <code>O</code>) are now handled properly</li>
<li>Duplicate keys no longer cause a hard error; now a warning is logged (and only one of the children with the same key is shown)</li>
<li><code>img</code> event listeners are now unbound properly, preventing the error "Two valid but unequal nodes with the same <code>data-reactid</code>"</li>
<li>Added explicit warning when missing polyfills</li>
</ul>
<h3>React With Addons</h3>
<ul>
<li>PureRenderMixin: a mixin which helps optimize "pure" components</li>
<li>Perf: a new set of tools to help with performance analysis</li>
<li>Update: New <code>$apply</code> command to transform values</li>
<li>TransitionGroup bug fixes with null elements, Android</li>
</ul>
<h3>React NPM Module</h3>
<ul>
<li>Now includes the pre-built packages under <code>dist/</code>.</li>
<li><code>envify</code> is properly listed as a dependency instead of a peer dependency</li>
</ul>
<h3>JSX</h3>
<ul>
<li>Added support for namespaces, eg <code><Components.Checkbox /></code></li>
<li>JSXTransformer
<ul>
<li>Enable the same <code>harmony</code> features available in the command line with <code><script type="text/jsx;harmony=true"></code></li>
<li>Scripts are downloaded in parallel for more speed. They are still executed in order (as you would expect with normal script tags)</li>
<li>Fixed a bug preventing sourcemaps from working in Firefox</li>
</ul>
</li>
</ul>
<h3>React Tools Module</h3>
<ul>
<li>Improved readme with usage and API information</li>
<li>Improved ES6 transforms available with <code>--harmony</code> option</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/facebook/react/commits/v0.11.0/packages/react">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=react-refresh&package-manager=npm_and_yarn&previous-version=0.10.0&new-version=0.11.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually 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>
This is a backwards-incompatible change in regards to the database
because we previously serialized UUIDs and now expect to deserialize
public keys.
It is a first step towards #576.
606: Reduce heartbeat interval in test harness r=klochowicz a=klochowicz
As a rule of thumb, taker waits twice the amount of HEARTBEAT_INTERVAL until it
assumes that maker disappeared.
Co-authored-by: Mariusz Klochowicz <mariusz@klochowicz.com>
589: Test maker actor system shutdown r=klochowicz a=klochowicz
- maker actor system now stops all its async tasks when it gets destroyed
- taker notices absence of maker in a newly written test
Note: I did not include the roll-out on the taker side (it would be done the
same way), as I wanted to first get some feedback from the reviewers.
Co-authored-by: Mariusz Klochowicz <mariusz@klochowicz.com>
602: Bug hunting cleanups r=thomaseizinger a=thomaseizinger
Some changes I made whilst bug hunting.
Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
598: Bump eslint-plugin-flowtype from 5.9.2 to 5.10.0 in /maker-frontend r=bonomat a=dependabot[bot]
Bumps [eslint-plugin-flowtype](https://github.com/gajus/eslint-plugin-flowtype) from 5.9.2 to 5.10.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/gajus/eslint-plugin-flowtype/releases">eslint-plugin-flowtype's releases</a>.</em></p>
<blockquote>
<h2>v5.10.0</h2>
<h1><a href="https://github.com/gajus/eslint-plugin-flowtype/compare/v5.9.2...v5.10.0">5.10.0</a> (2021-09-14)</h1>
<h3>Features</h3>
<ul>
<li>add new rule sort-type-union-intersection-members (<a href="https://github-redirect.dependabot.com/gajus/eslint-plugin-flowtype/issues/501">#501</a>) (<a href="fa4207de7f">fa4207d</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="fa4207de7f"><code>fa4207d</code></a> feat: add new rule sort-type-union-intersection-members (<a href="https://github-redirect.dependabot.com/gajus/eslint-plugin-flowtype/issues/501">#501</a>)</li>
<li>See full diff in <a href="https://github.com/gajus/eslint-plugin-flowtype/compare/v5.9.2...v5.10.0">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint-plugin-flowtype&package-manager=npm_and_yarn&previous-version=5.9.2&new-version=5.10.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually 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>