') + ')', '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('^' + ".*" + ', '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" + ', '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('^' + ".*" + ', '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); } })(); })(); cipher v0.3.0 by tarcieri · Pull Request #621 · RustCrypto/traits · GitHub
Skip to content

cipher v0.3.0 - #621

Closed
tarcieri wants to merge 1 commit into
masterfrom
cipher/v0.3.0
Closed

cipher v0.3.0#621
tarcieri wants to merge 1 commit into
masterfrom
cipher/v0.3.0

Conversation

@tarcieri

@tarcieritarcieri commented Apr 28, 2021

Copy link
Copy Markdown
Member

Added

  • Encrypt/decrypt-only block cipher traits (#352)
  • Re-export blobby from root (#435)
  • Block cipher trait blanket impls for refs (#441)

Changed

  • Consolidate error types (#373)
  • Change SeekNum impls to fit with the new BlockBuffer (#435)
  • Reorganize modules (#435)
  • Renamed new_var to new_from_slice(s) (#442)

@tarcieri

Copy link
Copy Markdown
MemberAuthor

Merged / released, but out-of-date with current master.

Will incorporate this commit in a rollup merge.

@tarcieri
tarcieri deleted the cipher/v0.3.0 branch April 28, 2021 22:15
tarcieri added a commit to RustCrypto/block-ciphers that referenced this pull request Apr 29, 2021
Releases new versions of all crates in this repository which incorporate
the `cipher` v0.3 release changes (RustCrypto/traits#621)
tarcieri added a commit to RustCrypto/block-ciphers that referenced this pull request Apr 29, 2021
Releases new versions of all crates in this repository which incorporate
the `cipher` v0.3 release changes (RustCrypto/traits#621)
tarcieri added a commit to RustCrypto/stream-ciphers that referenced this pull request Apr 29, 2021
Releases new versions of all crates in this repository which incorporate
the `cipher` v0.3 release changes (RustCrypto/traits#621)
tarcieri added a commit to RustCrypto/stream-ciphers that referenced this pull request Apr 29, 2021
Releases new versions of all crates in this repository which incorporate
the `cipher` v0.3 release changes (RustCrypto/traits#621)
dfvgbh added a commit to dfvgbh/stream-siphers that referenced this pull request Oct 4, 2025
Releases new versions of all crates in this repository which incorporate
the `cipher` v0.3 release changes (RustCrypto/traits#621)
zk-wraithbg67 added a commit to zk-wraithbg67/stream-ciphers that referenced this pull request Jan 11, 2026
Releases new versions of all crates in this repository which incorporate
the `cipher` v0.3 release changes (RustCrypto/traits#621)
Sign up for freeto 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

@tarcieri