Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); Async keystore + Authority-Discovery async/await by rakanalh · Pull Request #7000 · paritytech/substrate · GitHub
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Async keystore + Authority-Discovery async/await - #7000

Merged
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery
Oct 8, 2020
Merged

Async keystore + Authority-Discovery async/await#7000
139 commits merged into
paritytech:masterfrom
rakanalh:async-keystore-auth-discovery

Conversation

@rakanalh

@rakanalhrakanalh commented Sep 1, 2020

Copy link
Copy Markdown
Contributor

polkadot companion: paritytech/polkadot#1740

This PR introduces:

  • Currently, only a "local" keystore is supported but a remote one can be introduced.
  • All keystore methods are async
  • SyncCryptoStore wraps the asynchronous keystore to hide block_on from sync crates.
  • Authority discovery was converted to async/await with the use of the async version of the keystore.
  • All other crates are temporarily using SyncCryptoStore until converted to use async/await

@bkchr

bkchr commented Oct 2, 2020

Copy link
Copy Markdown
Member

@mxinden sounds like a great idea to me!

@rakanalh

rakanalh commented Oct 5, 2020

Copy link
Copy Markdown
ContributorAuthor

@mxinden@bkchr@gnunicorn I have implemented the suggestion above and reverted the change which imports async-std and replaces usage of futures::executor::block_on.

However, you guys didn't like introducing KeystoreContainer before, which was removed but then i had to restore that. This is because if i end up returning Arc<dyn SyncCryptoStore>, this type cannot be coerced to Arc<dyn CryptoStore>. Restoring KeystoreContainer allows me to coerce Arc<LocalKeystore> into both Arc<dyn SyncCryptoStore> and Arc<dyn CryptoStore>.

Would be nice if you can check out my latest changes so that if i get the go ahead, i'll change the polkadot companion PR.

Comment threadbin/node/rpc/Cargo.toml Outdated
Comment threadclient/consensus/babe/src/tests.rs Outdated
Comment threadclient/consensus/pow/Cargo.toml Outdated
Comment threadframe/example-offchain-worker/Cargo.toml Outdated
Comment threadprimitives/consensus/common/Cargo.toml Outdated
Comment threadprimitives/keystore/Cargo.toml Outdated
Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadclient/keystore/src/local.rs
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
@rakanalh
rakanalh requested a review from bkchrOctober 6, 2020 10:57
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

The PR should be good to merge if no further feedback is provided.

@rakanalh

Copy link
Copy Markdown
ContributorAuthor

@bkchr i have had some review feedback from @ordian on the companion PR but i also think it's good to merge as well.

Comment threadprimitives/keystore/src/testing.rs Outdated
Comment threadprimitives/keystore/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs Outdated
Comment threadprimitives/finality-grandpa/src/lib.rs
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/service/src/builder.rs Outdated
Comment threadclient/keystore/src/local.rs Outdated
Comment threadclient/consensus/babe/rpc/src/lib.rs Outdated
Comment threadclient/cli/src/runner.rs Outdated
Comment threadbin/node/cli/src/service.rs Outdated
@bkchr

bkchr commented Oct 8, 2020

Copy link
Copy Markdown
Member

Some last nitpicks, after that it should be good to merge.

@rakanalh
rakanalh requested review from bkchr and removed request for andresilva and kianenigmaOctober 8, 2020 18:10
@rakanalh

Copy link
Copy Markdown
ContributorAuthor

bot merge

@ghost

ghost commented Oct 8, 2020

Copy link
Copy Markdown

Trying merge.

@ghost
ghost merged commit a845ff3 into paritytech:masterOct 8, 2020
@rakanalh
rakanalh deleted the async-keystore-auth-discovery branch October 8, 2020 20:57
ordian added a commit that referenced this pull request Oct 9, 2020
…up-updates
* master:
Async keystore + Authority-Discovery async/await (#7000)
Fixes logging of target names with dashes (#7281)
seal: Add automated weights for contract API calls (#7017)
add ss58 id for nodle (#7279)
Refactor CurrencyToVote (#6896)
bump-allocator: document & poison (#7277)
Reset flaming fir network (#7274)
reschedule (#6860)
Drop system cache for trie benchmarks (#7242)
client: improve log formatting (#7272)
Rework `InspectState` (#7271)
SystemOrigin trait (#7226)
Update ss58 registry for Dock network (#7263)
.maintain/monitoring: Add alert when continuous task ends (#7250)
Rename `TRANSACTION_VERSION` to `EXTRINSIC_VERSION` (#7258)
Split block announce processing into two parts (#6958)
Fix offchain election to respect the weight (#7215)
@rakanalhrakanalh mentioned this pull request Nov 4, 2020
This pull request was closed.
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A1-needs_burninPull request needs to be tested on a live validator node before merge. DevOps is notified via matrixC1-lowPR touches the given topic and has a low impact on builders.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@rakanalh@tomaka@mxinden@bkchr@gnunicorn@danforbes@expenses@shawntabrizi