ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm
, '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

ARROW-984: [GLib] Add Go examples - #661

Closed
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go
Closed

ARROW-984: [GLib] Add Go examples#661
kou wants to merge 1 commit into
apache:masterfrom
kou:glib-example-go

Conversation

@kou

@koukou commented May 9, 2017

Copy link
Copy Markdown
Member

No description provided.

@kou
kouforce-pushed the glib-example-go branch from 5d5ff87 to 22e35cbCompareMay 9, 2017 06:25
}

recordBatch := arrow.NewRecordBatch(schema, 4, columns)
writer.WriteRecordBatch(recordBatch)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this return an error?

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added error checks for them by #666.

wesm
wesm approved these changes May 9, 2017

@wesmwesm left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, very cool

@wesm

wesm commented May 9, 2017

Copy link
Copy Markdown
Member

I'm interested to start a native Go implementation, since this will only run on Linux, right?

@asfgitasfgit closed this in 74ad4a8May 9, 2017
@kou
kou deleted the glib-example-go branch May 10, 2017 05:07
@kou

kou commented May 10, 2017

Copy link
Copy Markdown
MemberAuthor

I'm interested to start a native Go implementation,

It'll be useful because it'll be faster and provide more Go style API than GLib bindings based bindings. Maintaining the implementation may be a problem.

since this will only run on Linux, right?

It's not right. The GLib bindings and bindings based on the GLib bindings can work on Linux, macOS and Windows. At least Ruby bindings can work on them. I'm developing GTK+ bindings with GObject Introspection. (gtk3 gem) The bindings can work on Linux, macOS and Windows.

But installing from source will be difficult for users. We need to provide packages for easy to use.

For macOS, it's better that we send a pull request to Homebrew.

For Windows, it's better that we build binary and make it downloadable. I'm doing it by cross-compiling on my Debian GNU/Linux machine for gtk3 gem.

@wesm

wesm commented May 10, 2017

Copy link
Copy Markdown
Member

Ah that's good to know about GLib. I would like to make a minimal implementation for Go that can read and write the streaming format and provide access to the raw buffers. I am not sure when I will have the time though =) Probably not until 2018...

It will also need to provide binaries for integration testing. Quite a bit of work; if we can recruit some developres from the Go community (like users or developers of InfluxDB or another database written in Go) that might be a good place to start

jeffknupp pushed a commit to jeffknupp/arrow that referenced this pull request Jun 3, 2017
Author: Kouhei Sutou <kou@clear-code.com>
Closesapache#661 from kou/glib-example-go and squashes the following commits:
22e35cb [Kouhei Sutou] [GLib] Add Go examples
pribor pushed a commit to GlobalWebIndex/arrow that referenced this pull request Oct 24, 2025
## What's Changed
Instead of repeatedly trying to access locations which have failed
before, cache them and move them to the end of the list of locations to
attempt on subsequent accesses. This provides a better user experience
for Flight SQL services that return multiple locations in the
expectation that the user may not be able to access some of them (but
would have a better experience if they are).
Requires apache#494.
Closesapache#661.
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.

2 participants

@kou@wesm