Fork me on GitHub
#clojure-japan
<
2015-07-03
>
esehara06:07:13

あるライブラリが古いVersionのライブラリを使ってたんだけど、そのプロジェクトではその依存ライブラリの最新版を使っていたから、そのライブラリが最新版のほうを呼び出していて、最新版では消えたメソッドがないとか文句言われてる(;´Д`)

athos06:07:18

dependencyにexclusionかけるなどしてどちらかのバージョンに寄せるしかないかと

esehara06:07:10

そうですね、最新で使っているほうをそのライブラリの古いVerにしたら動くようにはなったんですけどねー

athos06:07:43

もしくは、そのライブラリのソースコードが公開されているなら、ダウンロードしてきたコードをいじってローカル環境にインストールする手もありますけど、メンテナンスのコストに見合うかですよねぇ

esehara06:07:31

それだと、そのライブラリにpull request送ったほうが生産的な感じはしますねー

athos06:07:04

そのライブラリの開発がそれなりに活発にされてるんなら、そういう手もありますね

athos06:07:28

すぐに次のバージョンがリリースされるかは分かりませんが

esehara06:07:23

ちなみに https://github.com/ptaoussanis/tower/blob/master/project.clj#L16 ちなみに、timbreの最新が4.0.2なんですけど、towerではまだ3.4.0が使われているというのが、具体的な問題なんですけどね 😉

athos06:07:00

これはまたLuminus絡みっぽい問題ですねw

esehara06:07:36

まあ、自分があとからデータベース設定を継ぎ足している影響もあるんですけどね

esehara06:07:56

普通にnewで作ると問題は発生しないので「?」です

athos06:07:32

うん?towerやtimbreのバージョンが違うわけでもないのに、newで作ると問題が発生しないんですか?

esehara07:07:04

ですね。自分のプロジェクトは、ちょっと古い(具体的には"Clojure-1.7RC"頃)でして、最新のやつ(Clojure-1.7にライブラリが置き換えられた)からproject.cljのdependeciesを移行したら、なぜか解決されないという。

esehara07:07:32

暴力的な解決なのでよくないのはわかってるんですけどね 👷

esehara07:07:20

exclusionsも聞かなかったので古いレガシーなVersionを指定して難を防ぐ毎にしました😞

ayato_p07:07:45

ライブラリの依存周りって僕もちょいちょいハマるのでつらいなーと思ったりしてます 😿

esehara07:07:39

一度、leiningenのdependenciesまわりのコードを読む必要を感じます 😇

ayato_p07:07:38

うちのプロジェクトだと Leiningen と Boot 共存させてるせいで度々ハマってて何故かそれぞれの優先順位違うというときがあります…

athos07:07:55

そのあたりって完全にMavenに任されてるのかと思ってましたけど、そういうわけじゃないんですかね

ayato_p07:07:52

依存性を解決するために使ってるライブラリとか同じはずなんですけどねぇ

ayato_p07:07:52

この前も midje の依存している slingshot のバージョンがちがったりとかしましたしね

ayato_p07:07:06

他のところから紛れ込んでて動かないみたいな

esehara07:07:11

依存性解決は、何処の言語も地獄っぽいからなあ 👻 (HaskellのCabal...)

ayato_p07:07:59

うまく解決出来てる言語がないからどこも似たりよったりみたいな感じですよね

esehara07:07:20

ですねえ

athos07:07:59

Haskellのcabalなのかstackなのか分かりませんけど、そのあたりのツールはsandbox作って云々って話を聞いたので、うまくいってもよさそうな気はするんですけどね

esehara08:07:24

leiningen勉強会必要そう

esehara08:07:35

bootも教えて欲しい

athos08:07:34

お、ちょうど来月あたりにClojure開発環境勉強会っていうのがHaLakeあたりであるらしいですよ

esehara08:07:49

おや〜これはタイミングがいいですね〜

ayato_p08:07:53

それどっちかっていうとエディタ周りじゃなかったです?w

ayato_p08:07:17

話題てんこ盛りになりますね

ayato_p08:07:30

Emacs 入門から始まり Leiningen, Boot に

ayato_p08:07:35

Cursive, Cider, inf-clojure みたいな

athos08:07:14

ビルドツール・パッケージ管理も開発環境といえなくもないですし

esehara08:07:16

どういう層を想定しているかによりますよねー

athos08:07:25

うーん、じゃあエディタ回とビルドツール回で分ける、とかですかね

ayato_p08:07:46

それか長丁場にしてしまうとか

esehara08:07:13

エディタ回とビルドツール回で分けるのがよそさそう

athos08:07:37

時間を長くする方向は、発表者にとっても聞いてる人にとっても大変になりそうかなぁと

ayato_p08:07:13

たしかに

esehara08:07:29

自分もつらいですねー

esehara08:07:40

(聞いている側として)

ayato_p08:07:51

( i know )

ayato_p08:07:31

(まぁ話す側もですがw)

athos08:07:50

じゃあまぁ、予定通り次回はClojure開発環境(エディタ)勉強会ってことで

ayato_p08:07:58

( ´∀`)bグッ!

ayato_p08:07:17

次次回のネタまで決まりましたね simple_smile

athos08:07:48

まだしばらくはネタに事欠かない感じしますね〜

icalo3509:07:19

エディタ回 hard-mode 楽しみです。

icalo3509:07:19

hard-mode という表記でコイツ→ hard-mode になるの笑う

esehara10:07:40

おっと間違えた

ayato_p10:07:19

そういえば次回のエディタ回、ビム使いがいないんですよね