This repository was archived by the owner on Jan 10, 2021. It is now read-only.

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n 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;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
This repository was archived by the owner on Jan 10, 2021. It is now read-only.

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 10, 2021. It is now read-only.

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

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

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
This repository was archived by the owner on Jan 10, 2021. It is now read-only.

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 10, 2021. It is now read-only.

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Jan 10, 2021. It is now read-only.

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

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

Repository files navigation

DataObjects README

DataObjects.rb is an attempt to rewrite existing Ruby database drivers to conform to one, standard interface.

At present the following drivers are available:

Database VendorMRI (1.8.6/7) / 1.9JRuby
MySQLxx
Oraclexx
PostgreSQLxx
SQLite3xx
Derby-x
H2-x
HSQLDB-x
SQL Serverpendingx

There is experimental support for Rubinius.

More drivers are currently under development. If you feel like living on the edge, install and test drivers directly from this repository.

Introduction

To connect to and query the database, DataObjects relies on native extensions. Native extensions have been written in both C (for Ruby 1.8.6/7 (MRI), Ruby 1.9.x (YARV) and Rubinius platform) and Java (for the JRuby platform). Individual drivers may include extensions for both Ruby MRI and JRuby, or one or the other.

C extensions have been written using according to each vendor API. Java drivers use the standard JDBC API. Although there are dialectical differences between the Java drivers, the JDBC API ensures a reasonable amount of commonality. As such, the Java extensions rely on a common do_jdbc gem, which wraps code that is common to all of the Java extensions.

Installation

To install a driver from the repository cd into the driver directory and use the provided rake install task to install for the default platform.

Copyright and Licensing

Please see the copyright notices in each individual driver README.markdown or LICENSE file. Java-based drivers bundle JDBC driver JAR files, which may be provided under a license that is more restrictive than the MIT License used by the data_objects gem itself.

About

DataObjects

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages