ククログ

https://www.clear-code.com/blog/

ククログはクリアコードのブログです。開発に関わる技術情報や、会社での出来事を記録しています。

フィード

記事のアイキャッチ画像
LTS版 Fluent Package v5.0.7をリリース
ククログ
2025年5月16日にFluent PackageのLTSの最新版となるv5.0.7をリリースしました。本リリースでは、パッケージでいくつかの改善が行われています。本記事ではFluent Packageの変更内容について紹介します。Fluent Package v5.0.72025年5月16日にFluent PackageのLTSの最新版となるv5.0.7をリリースしました。Fluent Package v5.0.7では以下の改善が行われています。Rubyのバージョンを3.2.8にアップデート同梱のFluentdをv1.16.7からv1.16.9に更新同梱のopenssl gemをv3.3.0に更新fluent-plugin-elasticsearchのメモリリークを解消この記事では、Fluent Package v5.0.7の主な変更点を詳しく解説します。変更内容の詳細Rubyのバージョンを3.2.8にアップデートRuby 3.2.8には複数のバグ修正が含まれています。詳細はRuby 3.2.8 リリースノート をご覧ください。同梱のFluentdをv1.16.7からv1.16.9に更新v1.16.8とv1.16.9の変更点を説明します。Fluentd v1.16.8 の変更点Windows: Supervisorプロセスが停止したときに、サービスが停止しない不具合を修正設定エラーなどでSupervisorプロセスが停止した際に、 サービスが実行され続ける不具合を修正しました。サービスが正しく停止するようになり、設定エラー時の異常検知が容易になりました。formatter_csvプラグイン: メモリリークを修正パフォーマンス改善のためにformatter_csvプラグインでキャッシュが導入されていましたが、不適切にスレッドをキャッシュしていました。in_execプラグインではログを取り込むたびにスレッドを生成しているのですが、formatter_csvプラグインと組み合わせて利用すると、すべてのスレッドがformatter_csvプラグインでキャッシュされ、メモリリークを引き起こしていました。Fluentd v1.16.9 の変更点Windows: サービスが誤って停止する不具合を修正Fluentd v1.16.8で「Supervisorプロセスが停止したときに、
20時間前
記事のアイキャッチ画像
PGConf.dev 2025に「COPY FORMATを拡張可能にするパッチ」用ポスターを提供した
ククログ
PGConf.dev 2025が開催中だということをすっかり忘れていた須藤です。私はPGConf.dev 2025に参加していないのですが、1ヶ月ほど前に「ポスターセッションに参加しない?」とメールで連絡をもらったのでポスターデータだけ送っていたのでした。実際に使われたのかどうかはわかりませんが、せっかく作ったのでここに置いておきます。1ヶ月ほど前に、PGConf.dev 2025でポスターセッションを企画しているという方からメールで連絡が来ました。Commitfest(2ヶ月に1回くらいのペースで開催されているPostgreSQLにコミットしていこうぜ!という企画、という感じかな)でなんども次のCommitfestに延期されている人たち(ようはがんばっているけどまだコミットされていない人たち)に声をかけているようでした。そういう人たちがポスターセッションでPGConf.dev 2025に参加しているPostgreSQL開発者にアピールして、早くコミットまでいけるようにすることを狙っているのだと私は理解しました。私は一般的な学会のポスターセッションというものに参加したことがないのですが、普通はポスターの前に作成者が立って興味ある人にポスターの内容をもとに説明したり議論したりするはずです。しかし、私はPGConf.dev 2025には参加しません。それでもよければポスターデータだけ用意するよ、とお返事したところ、PGConf.dev 2025に参加して、かつ、ポスターを用意してくれる人が多ければ、使えないけど、そうではなかったら使うから用意してくれるとうれしいなという感じのお返事でした。ということで、こんな感じのポスターデータを用意しました。私がこの1,2年提案しているCOPY FORMATを拡張可能にするパッチの概要と実現方法となにを手伝って欲しいかをまとめてみたつもりです。ポスターデータを送ってからお返事が返ってこなくなった上にPGConf.dev 2025に参加していないので、私はこのポスターが使われたのかどうかはわかりません。ただ、このパッチはまだしばらくコミットされる気配はない(コミットされるかなーと思っていたけど、やっぱり実装方法を考え直さない?という感じになっている)ことはわかっています。この機能に興味がある人はpgsql-hackers@postgre
4日前
記事のアイキャッチ画像
RubyKaigi 2025 - Close Encounters of the dRuby #rubykaigi
はてなブックマークアイコン 2
ククログ
RubyKaigi 2025に参加して、dRubyに出会った児玉です。この記事では、次の2つのことについて話します!dRubyとの遭遇RubyKaigi 2025で印象に残ったトークdRubyとの遭遇いきなりですが、dRubyを触ったことがありますか?私は、気にはなってはいたのですが、今回のRubyKaigiまで触ったことがありませんでした。ひょんなことから、コード懇親会でdRubyのサポートをされていた塩井さんに、同イベントで咳さんが利用されていたdRubyのテキストを譲っていただきました。これがきっかけで、実際に手を動かして触れる機会を得ました!実際に読んでみると1ページ目から不思議な世界が広がっており、私は引き込まれました。ぜひ、この感動を皆さんにも味わっていただきたいので、紹介します!(1ページ目だけ紹介します。)自分で手を動かして触ってみたい方は、テキストであるdRuby hands-on workshopが配布されているので、ぜひ実際に動かしてみてください!(配布していただきありがとうございます。)では、実際にテキストの1ページ目に書いてある内容を見ていきましょう。次のような、hello_server.rbとhello_client.rbがあります。# hello_server.rbrequire "drb"class Hello def greeting puts("Hello World.") endenduri = "druby://localhost:54000"DRb.start_service(uri, Hello.new)sleep# hello_client.rbrequire "drb"DRb.start_serviceuri = "druby://localhost:54000"it = DRbObject.new_with_uri(uri)it.greeting次のように実行すると何が起きるでしょうか?// terminal 1$ ruby hello_server.rb// terminal 2$ ruby hello_client.rb私の感覚では、hello_client.rbを実行した瞬間に、it.greetingの部分でNoMethodErrorが起きて、エラー終了すると思っていました。ただそうはならないのが不思議なポイン
5日前
記事のアイキャッチ画像
コード懇親会2025自慢大会を開催するよ! #rubykaigi #codeparty
ククログ
RubyKaigi 2025でアンドパッドさんが開催したコード懇親会をお手伝いした須藤です。2025年5月12日(月)(来週の月曜日)の夜にコード懇親会自慢大会を開催するので紹介します。まだ参加登録できるのでコード懇親会に参加した人もそうでない人も興味がある人は参加してね!内容このイベントはコード懇親会で楽しかったことを自慢するイベントです。コード懇親会ではグループにわかれて懇親するのですが、自分が参加しているグループ以外の様子はわからないので、他のグループの人たちや今回参加しなかった人たちにどんな感じで楽しんだかを自慢しよう!というのがねらいの1つです。もう1つのねらいはコード懇親会当日は聞けなかった感想を聞いて来年のコード懇親会に活かすことです。オープニングでは、コード懇親会のコンセプトを紹介したり今回はどうしてこんな内容にしたかを説明する予定です。このような説明をする理由は、このイベントに参加者以外も参加するというのもあるのですが、今回はほぼ説明なしで始めたので参加者した人たちもコンセプトを知らない人もいそうだなぁというのもあります。ちょっとdRubyフリークっぷりが溢れてしまっている感じがありますが、好きなんだからしょうがないんです。 Boast Code Party 2025 / コード懇親会2025自慢大会 関連リンク:スライド(Rabbit Slide Show)リポジトリーまとめ2025年5月12日(月)(来週の月曜日)の夜にコード懇親会自慢大会を開催するので紹介しました。まだ参加登録できるのでコード懇親会に参加した人もそうでない人も興味がある人は参加してね!待っているよ!
11日前
記事のアイキャッチ画像
Fluentdの日本コミュニティ向けのXアカウント開設のお知らせ
ククログ
こんにちは。Fluentdの開発やメンテナンスに参加している藤田です。Fluentd公式のブログでの情報発信やGitHubのIssuesでのやりとりなどは、主に英語を使用しています。この度、もっと日本のユーザーの皆さんと直接繋がり、開発の現場からタイムリーな情報をお届けしたいと考え、日本コミュニティ向けのXアカウントを開設し、日本語での情報発信を始めることにしました!Xアカウントのご紹介アカウント名: @fluentd_jpこのアカウントでは、Fluentdの最新情報や不具合とその回避方法など、Fluentdをより良く利用するのに役立つ情報を発信していきます。Fluentdをご利用の方や、ログ収集などに興味がある方はぜひフォローしてください!具体的には、以下のような情報を発信していく予定です。最新情報 & リリース解説リリースノートの速報はもちろん、変更の背景や開発者としての注目ポイントをプラスαでお届けします。プラグインの情報各プラグインの更新情報などをお届けします。ハマりやすい設定の解説Fluentdは歴史的な経緯などにより多様な設定ができます。間違えやすい設定情報についてお届けします。コミュニティーに報告された事例の解説GitHubのIssues/Discussionsなど、コミュニティーにはユーザーが困った事例などが日々報告されています。みなさんにも有益な事例をピックアップして、解決方法を共有します。Fluentdを深く理解したいエンジニアの方、日々の運用で困っている方、そしてFluentdの開発に興味がある方にとって、価値ある情報源となることを目指します。Fluentdは、ユーザーと開発者が一体となった活発なコミュニティによって支えられ、進化してきました。皆さんからのフィードバック、バグレポート、そしてコントリビューションは、開発を進める上で不可欠な原動力です。このXアカウントが、皆さんと私たち開発者の距離を縮め、よりオープンで建設的なコミュニケーションを生み出す場となれば幸いです。おわりにFluentdに関する情報に興味のある方は、ぜひ @fluentd_jp をフォローしてください!皆さんのフォローやリプライが、情報発信の大きなモチベーションになります。どうぞよろしくお願いします!
12日前
記事のアイキャッチ画像
RubyKaigi 2025 - Goodbye fat gem 2025 #rubykaigi
ククログ
RubyKaigi 2025でGoodbye fat gem 2025というfat gemをやめない?という話をしてきた須藤です。なお、クリアコードはシルバースポンサーとしてRubyKaigi 2025を応援しました。 Goodbye fat gem 2025 関連リンク:スライド(Rabbit Slide Show)リポジトリー内容内容は2025年、fat gemをやめるを(gemメンテナーじゃなくて)ユーザーにも伝わるようにユーザー視点でまとめなおしたつもりです。gemメンテナーかどうかで伝わりやすさが違う気がしますが、まずはスライドで私の主張が伝わるか確認してみてください。伝わらなかったら前述のブログ記事も呼んでみてください。ユーザー視点のまとめかたではあまり深刻さが伝わらない気がしたので、発表ではキャッチーな感じで伝えたつもりですが、伝わったでしょうか?要点はこうです。ユーザーが心地よいと感じるfat gem体験を維持するためのメンテナンスコストが高いこのままユーザーがfat gemのメンテナンスコストが高い状態を求め続けるとgemメンテナーが減ってしまってRubyエコシステムに負の影響があるのではないかユーザーの利便性とgemメンテナーのメンテナンスコストのバランスを考えたRubyエコシステムを考えられないか私の提案とは真逆のGoals for Binary Gems ("Wheels")という話もあったりして今後どうなるかはわからないのですが、RubyGemsの人たちとはお話しないといけないなーという気持ちになりました。ということで、RubyKaigi 2025中になけなしの英語でリンク先の記事を書いていたSamuelさんにちょっとお話にいったり(たぶんほとんど伝わっていない)、BundlerのSlackとかWhere is "Wheels" proposal discussed · rubygems · Discussion #8575とかで方向性を相談できない?とか声をかけることは始めました。この件について、今、ユーザーのみなさんができることはほとんどないと思うんですが、どうにもならなくなる前には知っておいて欲しいなぁと思ったのでした。RubyKaigiで共有できて助かりました。持ち時間が30分で詳しい話はできなかったのですが、この件についてなにか取
1ヶ月前
記事のアイキャッチ画像
Thunderbird 136の起動時に「設定ファイルを正常に読み込めませんでした。システム管理者に問い合わせてください。」と言われる原因と対処の事例
ククログ
FirefoxやThunderbirdには、古い集中管理の仕組みとしてMCD(Mission Control Desktop)という機能があります。元々はシステム管理者が決めた設定値を各端末のソフトウェアに強制適用するための物でしたが、現在その役割はポリシー設定機能が担うようになってきており、この用途においてMCDは、ポリシー設定機能では制御できない部分を補うために使われる程度となっています。このMCDの設定ファイルを使用している環境では、FirefoxやThunderbirdの更新後に、起動時に「設定ファイルを正常に読み込めませんでした。システム管理者に問い合わせてください。」というメッセージが表示されるようになることがあります。最近も、Thunderbrird 136への更新でこの現象が起こるようになったとのご相談をお客様から頂きました。詳しく調査したところ、Thunderbird 136において、確かに同様のトラブルが起こりやすくなるような変更があったことと、多くの場合はモジュールの読み込みを行っている箇所を修正するだけで問題を解消できることが分かりました。本記事では、この問題の背景事情と回避方法をご紹介します。cu.import()があればchromeutils.importesmodule()に書き換えてみる">結論:Cu.import()があればChromeUtils.importESModule()に書き換えてみる先に結論から述べると、const { ~ } = Components.utils.import('~.jsm', {});あるいはconst { ~ } = Cu.import('~.jsm', {});このようなモジュール読み込みの指定がMCD用設定ファイルに含まれているのであれば、const { ~ } = ChromeUtils.importESModule('~.sys.mjs');と書き換えてみてください。それ以前は動いていたのにThunderbird 136に更新したら動かなくなった、というケースの大半は、この変更で解消されると考えられます。問題が起こる背景1:高度なカスタマイズ先に、MCDはポリシー設定を補完する物と述べましたが、もう一つの使い方として、Firefox 57およびThunderbird 78以降で廃止されたXU
1ヶ月前
記事のアイキャッチ画像
Apache Arrow東京ミートアップ2025を開催したよ!
ククログ
Apache Arrowの開発に参加している須藤です。Apache Arrow東京ミートアップを6年ぶりに開催しました!内容今回はApache ArrowのPMCメンバーが3人、コミッターが1人、コントリビューターが2人(3人?)とApache Arrowの開発に深く関わっている人がたくさんいたので、だれかの話を聞いて帰る「勉強会」スタイル(?)じゃなくて、もっと、詳しい人にいろいろ聞ける時間として設計しました。具体的には、前半で参加者が持っている話題を出して、後半は話題をもとにフリースタイルで詳しい人に詳しく話を聞く、という構成にしました。15人くらいのこじんまりとしたオフラインイベントだったこともあって、おおむね狙い通りの時間にできたのではないかと思います。いくつか感想をもらったので記録しておきます。参加してました。人数が少ない分色々と込み入った話ができて最高のミートアップでした。 https://t.co/0UIGFbkrkW— Akihiro Okuno (@choplin) April 11, 2025 参加してました、ありがとうございました🙇‍♂️Arrowはまだまだ初心者ですがRokさんなど色々な方と直接お話しできてよかったです。— yyossy (@nphenite) April 11, 2025 (@npheniteさんはその後Apache Arrowへのコントリビュートを再開し始めていました!)開催ありがとうございました。やりたいと思っていることを、次にどう進めればいいかが相談できて、理解が深まりました! https://t.co/cCY6rrmq5w— K. Ishizaki (@kiszk) April 12, 2025 当日発表に使われた資料はイベントページにもありますが、ここにもリンクを残しておきます。Rokさん:Apache Arrow Tensor Arrays@lidavidmさん:Taking Arrow Flight Supersonic@kkaigaiさん:Apache Arrow in PostgreSQL with GPU acceleration@abetomoさん:Groonga and Apache Arrow感謝こじんまりとしたイベントでも開催するのって大変なんですよね。。。今回もいろんな人に助けてもらいました。...
1ヶ月前
記事のアイキャッチ画像
nginxでフォワード先を制限する際に気をつけるべきこと
ククログ
こんにちは。データ収集ツールFluentdやWebサーバーnginxなどのサポートサービスを担当している福田です。この記事では、nginxでフォワード先を制限する際の注意点を紹介します。nginxをフォワードプロキシとして使うケースを考えます。その際、セキュリティー等の目的でフォワードする宛先を制限したい、ということがあります。これは一見簡単な設定で実現できそうかもしれませんが、実は注意するべき点が多くあります。例えば、Hostヘッダー偽装(Hostヘッダーフォージェリ)に対処するため、$http_hostではなく$hostを使う、という話は有名かもしれません。しかし、$hostはポート番号を含まないため、ポート番号も含めてフォワードするには工夫が必要です。このように宛先制限には注意点があります。本記事ではそれらを解説します。はじめにフォワードプロキシとしてのnginxでフォワード先を制限する際は、次の点に注意が必要です。default_serverを正しく設定するHostヘッダー偽装の対策をする(Hostヘッダー偽装の対策として)$http_hostではなく$hostを使うと、ポート番号をフォワードできなくなる以下では、シンプルな設定例から順番に注意点を確認していきます。シンプルな設定例(Hostヘッダー偽装の影響あり)まずはシンプルな設定例として、次のような仮想サーバー設定を考えてみます。# 拒否用仮想サーバーserver { listen 8080 default_server; server_name _; deny all;}# 許可用仮想サーバーserver { server_name foo; server_name bar; server_name baz; listen 8080; allow all; location / { proxy_pass $scheme://$http_host$request_uri; }}この設定では、許可用と拒否用の2つの仮想サーバーを設定しています。フォワード先のホスト名がfoo, bar, bazのいずれかであれば、許可用の仮想サーバーにルーティングされてフォワードされます。そうでなければ、拒否用の仮想サーバーにルーティングされて拒否されます。拒否用仮想サーバー設定にポイントが2つあります。server_na
1ヶ月前
記事のアイキャッチ画像
Groonga用のMariaDBのutf8mb4_uca1400照合順序互換ノーマライザー
ククログ
Mroongaの開発をしている須藤です。MroongaはMySQL/MariaDB/Percona Serverからいい感じにGroongaを使えるようにするストレージエンジンです。Groongaは全文検索エンジンなので、MySQL/MariaDB/Percona Serverだけで(ゼロETLで!っていうとナウいんでしょ!?)Elasticsearchとかなしにいい感じに高速高機能全文検索機能を実現できます。そんなMroongaは10年くらい前からMariaDBにバンドルされています。MySQL・MariaDB作者のMontyさんがなんかの日本のイベントに来ていたときになんか話して「バンドルするか!」みたいな流れになったような気もするし、それとは別のところでなんやかんやしたような気もして、よく覚えていないのですが、バンドルされています。なんだろう、思い出せないーと思ってインターネットを漁ってみたら、2014年のMyNA会で使った「MariaDBにバンドルされていないMroonga」になんか関連情報がありますね。歴史に興味がある人は眺めてみてね。まぁ、そんなMroongaですが、MariaDBにバンドルされているMroongaの更新が大変で全然更新できていません。でも、それはまずいよねぇということでまた数年ぶりにチャレンジしています。で、今回はMroongaのコピーをMariaDBに入れるんじゃなくて、git submoduleでMroongaを入れようとしています。コピーだと、MariaDBが持っているMroongaの方にだけ最新MariaDBの対応が入って、本家のMroongaでは気づかずに「あれー新しいMariaDBでビルドできなくなってるー」みたいなことになるからです。だいぶ前置きが長くなりましたが、MariaDBにバンドルするMroongaを更新するために、最新のMariaDBでも動くようにする作業をしています。2025年4月のリリース自慢会の後半でもこのあたりのことを説明しているので、テキストだけだとピンとこない方は動画もどうぞ。 最新のMariaDB最新のMariaDBというのはPreviewとかRCとかでリリースされているMariaDBではなくて、MariaDBのリポジトリーのmainブランチのMariaDBのことです。LTS以降に入った変更もありま
2ヶ月前
記事のアイキャッチ画像
Termuxに新たにパッケージを追加する方法
ククログ
本記事を書いている2025年3月、Google PixelでLinuxターミナルが動作するようになり、話題となりました。今回は、従来からあるAndroid向けターミナルエミュレーターアプリであるTermuxに、それまで利用できなかったパッケージを新規で追加する方法について紹介します。LinuxターミナルとTermuxの違いそもそも、Google Pixelで利用できるようになったLinuxターミナルと、Termuxはどのように違うのでしょうか。まだ提供されてから間もないことから、Google Pixel以外での動向については未知数ですが、次のような違いがあります。Google Pixelで利用できるようになったLinuxターミナルはAndroid Virtualization Frameworkを利用した仮想環境で動作するAVFに依存しているため、ハードウェア的にAVFをサポートしていても、Android端末のベンダーによっては無効化されて必ずしも使えない可能性があるTermuxは、Termux向けに移植(クロスコンパイル)されたパッケージを利用できるネイティブなバイナリなので、Androidとの親和性が高い移植されていない機能やパッケージの制約を受ける特性が違うので、Linuxターミナルが提供されることになったからといって、即座にTermuxはもういらないというわけでは現時点ではありません。今後はある程度住み分けしていくことになるのではないでしょうか。Termuxのパッケージを新規に追加する話題となったLinuxターミナルとTermuxの違いをおさえたところで、それでもTermuxにまだないパッケージを移植したい人のために、追加する手順を紹介します。Ubuntu 24.04の環境でdockerを利用できるようにするtermux-packages リポジトリをcloneするTermuxパッケージのレシピを作成するコンテナを利用してパッケージをビルドするビルドしたパッケージをAndroid端末に導入するなお、本記事では、Build Environmentで推奨されているDocker Containerを利用したパッケージのビルド方法に基づいて紹介します。Ubuntu 24.04の環境でdockerを利用できるようにする$ sudo apt install -y doc
2ヶ月前
記事のアイキャッチ画像
GroongaでApache Arrowフォーマットを使ってみるよ!
ククログ
Apache Arrow東京ミートアップ2025に参加予定の阿部です。GroongaはApache Arrowフォーマットでのデータロードと検索結果の取得に対応しています。今回は実際にそれを使ってみる企画です。Apache Arrowフォーマットのデータを作るところからやってみます。次の流れで進めていきます。Apache Arrowフォーマットのデータを作るGroongaにApache ArrowフォーマットでデータをロードするGroongaで検索してApache Arrowフォーマットでデータを得るはじめにGroongaでApache Arrowフォーマットを使うには、HTTPインターフェイスを使わないといけない です。なので、本記事ではGroongaに対する操作はHTTPでリクエストする方法を使っています。参考:Apache Arrowフォーマットでデータロードするときの注意などHTTPでリクエストする方法また、もろもろの処理をJavaScriptで実装しました。JavaScriptが好き、以外に選択した理由はないので、他の言語の実装例も見たい方はお問い合わせよりご連絡ください。とりあえず使ってみることが目的の企画なので、各関数で何をやっているかなどの詳細は割愛しています。要所要所に関連する公式ドキュメントへのリンクを記載しましたので、詳細はそちらでご確認ください。1. Apache Arrowフォーマットのデータを作る公式ドキュメント: Apache Arrow in JS にある例を使わせてもらいます。Groonga用にちょっと変えてます。const LENGTH = 2000;// Apache Arrowは列指向なので列ごとにデータを作ります。// (コードからはどのようなデータなのかわかりにくいので、// 後述の"実行結果例"もご確認ください。)const keys = Array.from( { length: LENGTH }, (_, i) => i);const rainAmounts = Float32Array.from( { length: LENGTH }, () => Number((Math.random() * 20).toFixed(1)));const rainDates = Array.from( { length: LEN
2ヶ月前
記事のアイキャッチ画像
Apache Arrow 20.0.0からAPT/Yumリポジトリーが変わるよ!
ククログ
Apache Arrowの開発に参加している須藤です。そろそろApache Arrow 20.0.0がフィーチャーフリーズされて、4月の中旬から下旬くらいには20.0.0がリリースされます。そんな20.0.0で予定されている変更の1つであるAPT/Yumリポジトリーに関する変更を紹介します。互換性があるように変更するのでいきなり動かなくなることはないはずですが、長い目で見ると変更に追従しておいて欲しい、といった変更になります。Apache ArrowのAPT/YumリポジトリーApache Arrowが提供しているライブラリーの中にはC++で実装されているライブラリーがあります。C++実装のライブラリーのパッケージは、LinuxではdebやRPMで提供されていることが多いです。aptやdnfで簡単にインストールできるからです。aptやdnfでインストールできると依存関係も含めてインストールしたり、sudo apt upgrade/sudo dnf upgradeでまとめて最新バージョンにしたりできます。Apache Arrowはインメモリーデータ分析ソフトウェアの基盤コンポーネントとして広く使って欲しいので、様々な方法で簡単にインストールできるようにしてあります。今回説明するようにaptやdnfでインストールできるようにしたり、vcpkgやConanのようなC++用のパッケージマネージャーでインストールできるようにしたりといった具合です。どのパッケージマネージャーもだいたい「リポジトリー」のようなパッケージの集合を指す概念があります。基本的に、デフォルトのリポジトリーに登録してある状態にするのが一番簡単にインストールできます。サードパーティーのリポジトリーを登録する必要がないからです。vcpkgやConanではパッケージマネージャーの開発者と協力してデフォルトのリポジトリーを更新しています。しかし、APT/Yumリポジトリーは各ディストリビューションのデフォルトのAPT/Yumリポジトリーでパッケージを更新するのではなく、サードパーティーのAPT/Yumリポジトリーを提供しています。どうしてかというと。。。大変だからです。あとは、リリースタイミングが合わないという理由があります。たとえば、Debianのデフォルトのリポジトリーに入れるにはDebian開発者やDebi
2ヶ月前
記事のアイキャッチ画像
Apache Arrow東京ミートアップ2025を開催するよ!
ククログ
Apache Arrowの開発に参加している須藤です。Apache Arrow東京ミートアップを6年ぶりに開催します!概要Apache Arrow東京ミートアップは7年前と6年前にSpeeeさんに協力してもらって開催していました。Apache Arrow東京ミートアップ2019Apache Arrow東京ミートアップ2018今回、6年ぶりにApache Arrow東京ミートアップ2025を開催します!会場はReazonSpeechやOpenArmなどに取り組んでいるレアゾンHI研究所さんに提供してもらいます。後述の通り、日英が混在するミートアップになる予定なのでReazonSpeechベースの同時通訳システムも提供してもらいます。助かる!そんなに参加者を募れないので、今回はすでにApache Arrowを使っている人限定(Apache Arrowに興味があって使ってみたいんだよねーな人は対象外)で、少し突っ込んだ話をできる機会にできるといいなぁと思っています。こんな感じで使っているんだけど、もっといい使い方ある?とか、こういう機能があると良さそうだから提案したいんだけど、どう思う?とか。今回のミートアップにはApache Arrowの開発者が何人か参加する予定です。最近PMCメンバーになったRokさん、ADBCとかFlight SQLとかを開発しているDavidさん、ビッグエンディアンまわりとかをやっていた石崎さん、なんかいろいろやっている私が参加します。開発者と話をしたいことがある人はぜひ来てね。他にもApache Arrowの利用事例をいくつか紹介します。今のところ、海外さんがPG-Stromでの利用事例を紹介してくれて、あべくんがGroongaでの利用事例を紹介してくれる予定です。他にも利用事例を待っているので、紹介できる人はぜひ。なお、私は英語を聞いたり話したりできません。また、Rokさんは日本語を聞いたり話したりできません。そのため、ReazonSpeechベースの同時通訳システムが活躍するはずです!開催理由実は急遽開催することになったんですが、理由はいくつかあります。最近、Apache Arrowのメーリングリストでヨーロッパでミートアップ開催しちゃう?という話があって、私は「いいなぁ」と思って眺めていました。それとはまったく関係なく、Rokさんから観光
2ヶ月前
記事のアイキャッチ画像
RubyKaigi 2025 3日目にアンドパッドさんとコード懇親会を開催するよ! #rubykaigi #codeparty
ククログ
RubyKaigi 2025の3日目の夜にアンドパッドさんが開催するコード懇親会のお手伝いをする須藤です。2025年3月19日の10:00から参加登録できるので、「コードで懇親?楽しそう!」と思うRubyKaigi 2025参加者は登録してね。コード懇親会とはコード懇親会は7年前に私が思いついた懇親会のスタイルです。普通の懇親会とはちょっと違うコンセプトの懇親会です。普通の懇親会は飲食物が用意された状態で各参加者がそれぞれ違う参加者と話をして懇親します。ちょっとしたトークや催し物が用意されることもあります。コード懇親会はその名の通りコードを軸に懇親します。一緒にコードを書いたり、一緒にコードを読んだり、どうしてこんなコードになっているのかみんなで考えたり作者に聞いたり。そんな感じで懇親します。そんなことをして楽しい時間になるの?って思いますよね。楽しい時間になるはず!特にRubyistなら!Rubyは楽しくプログラミングできるように設計されたプログラミング言語です。だったら一緒にRubyでコードを読み書きする時間も楽しい時間になるはずだよね。そういうコンセプトです。とは言っても、やっぱり人によると思います。「一緒にコードを読み書きする」と聞いて「楽しそう!」と感じる人はコード懇親会を楽しめるでしょう。一方、「?」と思う人はそうでもない可能性が高そうです。そんな人は、自分が楽しめそうな他のイベントを選んで参加してください。おそらく https://rubykaigi.org/2025/events/ にイベントリストが公開されるはずなので、そこで自分が楽しめそうなイベントがきっと見つかるはずです。(でも、言葉では理解できなかったけど体験したら理解できた!となる人もいる気はするので体験して自分は楽しめるかどうか確認して欲しいとは思っています。)なお、他のドリンクアップ系イベントと違ってお酒はない予定です。RubyKaigi 2025では毎晩お酒を飲みたい!という人は別のイベントの方が向いています。あるいは、コード懇親会が終わった後に一杯やりに行ってください。21:30に終了予定です。過去のコード懇親会情報言葉での説明だけではイメージがつかない人向けに過去のコード懇親会の様子がわかる情報をおいておきます。参考にしてください。コード懇親会は過去にRubyKaigi 2018
2ヶ月前