Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Distribution-Metadata
Search
Shoichi Kaji
April 17, 2015
Technology
73
0
Share
Distribution-Metadata
kichijoji.pm #3 LT 2015.04.17
Shoichi Kaji
April 17, 2015
More Decks by Shoichi Kaji
See All by Shoichi Kaji
go-exhaustruct linterのすすめ
skaji
0
120
Parallel::Pipesの紹介
skaji
2
1.1k
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
4.1k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
290
Perl Quiz
skaji
0
170
cpm at PerlCon 2019
skaji
0
150
Perl5 Package Manager
skaji
0
790
Internal of cpm
skaji
0
650
How to execute external programs in Perl
skaji
3
740
Other Decks in Technology
See All in Technology
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
3
300
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
640
10サービス以上のメール到達率改善を地道に継続的に進めている話 / Continue to improve email delivery rates across multiple services
yamaguchitk333
5
1.4k
エージェント時代の UIとAPI、CLI戦略
coincheck_recruit
0
170
要件定義の精度を高めるための型と生成AIの活用 / Using Types and Generative AI to Improve the Accuracy of Requirements Definition
haru860
0
320
AIが自律的に働く時代へ Amazon Quick で実現するAIエージェント紹介
koheiyoshikawa
0
200
20260513_生成AIを専属DSに_AI分析結果の検品テクニック_ハンズオン_交通事故データ
doradora09
PRO
0
220
ESP32 IoTを動かしながらメモリ使用量を観測してみた話
zozotech
PRO
0
110
AI時代に、 データアナリストがデータエンジニアに異動して
jackojacko_
0
710
エンタープライズの厳格な制約を開発者に意識させない:クラウドネイティブ開発基盤設計/cloudnative-kaigi-golden-path
mhrtech
0
390
世界の中心でApp Runnerを叫ぶ FINAL
tsukuboshi
0
260
Gaussian Splattingの実用化 - 映像制作への展開
gpuunite_official
0
150
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
From π to Pie charts
rasagy
0
180
How to Think Like a Performance Engineer
csswizardry
28
2.6k
We Are The Robots
honzajavorek
0
220
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
910
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
54k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
230
Transcript
Distribution- Metadata Shoichi Kaji
What’s this? • **local** Ͱ distribution ͷ metadata ΛूΊΔͷ
Background • package (module) VS distribution (release) • eg: •
package: LWP::UserAgent • distribution: libwww-perl
Background • package <-> distribution ͷରԠΛΓ͍ͨ • Remote • MetaCPAN
API, CPAN MetaDB (using by cpanminus) • Local • cpanm 1.5+ ͔Β cpan module Πϯετʔϧ࣌ʹ distribution ͷ metadata (MYMETA.json, install.json) Λอଘ • Distribution::Metadata helps you find dist metadata in local
SYNOPSIS use Distribution::Metadata my $d = Distribution::Metadata->new_from_module(‘LWP::UserAgent’); $d->name; # libwww-perl
$d->version; # 6.13 $d->pathname; # E/ET/ETHER/libwww-perl-6.13.tar.gz $d->main_module; # LWP $d->main_module_version; # 6.13 $d->packlist; # path to .packlist file
When do we use D::M? • distribution ͷΞϯΠϯετʔϧ (like cpanm)
• App::FatPacker::Simple ͋Δ distribution Λ exclude ͢Δͱ͖ʹ D::M Λ͍ͬͯΔ
When do we use D::M? • module ͷґଘؔͷߏங (like carton)
• Perl::PrereqDistributionGatherer https://github.com/shoichikaji/Perl- PrereqDistributionGatherer
None
Wrap up • package <-> distribution ͷରԠ͕Γ͍ͨ • cpanm
cpan module Πϯετʔϧ࣌ʹ distribution ͷ metadata Λอଘ • Αͬͯ local Ͱ package ͱ distribution ͷ ରԠ͕Θ͔Δ • Distribution::Metadata helps that!