Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Distribution-Metadata
Search
Shoichi Kaji
April 17, 2015
Technology
0
70
Distribution-Metadata
kichijoji.pm #3 LT 2015.04.17
Shoichi Kaji
April 17, 2015
Tweet
Share
More Decks by Shoichi Kaji
See All by Shoichi Kaji
Parallel::Pipesの紹介
skaji
2
1k
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
4k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
260
Perl Quiz
skaji
0
160
cpm at PerlCon 2019
skaji
0
140
Perl5 Package Manager
skaji
0
750
Internal of cpm
skaji
0
640
How to execute external programs in Perl
skaji
3
700
Writing Perl with w0rp/ale
skaji
0
2.3k
Other Decks in Technology
See All in Technology
AI駆動開発における設計思想 認知負荷を下げるフロントエンドアーキテクチャ/ 20251211 Teppei Hanai
shift_evolve
PRO
2
340
AWS Trainium3 をちょっと身近に感じたい
bigmuramura
1
140
AI 駆動開発勉強会 フロントエンド支部 #1 w/あずもば
1ftseabass
PRO
0
320
Sansanが実践する Platform EngineeringとSREの協創
sansantech
PRO
2
780
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
700
5分で知るMicrosoft Ignite
taiponrock
PRO
0
330
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
670
第4回 「メタデータ通り」 リアル開催
datayokocho
0
120
年間40件以上の登壇を続けて見えた「本当の発信力」/ 20251213 Masaki Okuda
shift_evolve
PRO
1
100
乗りこなせAI駆動開発の波
eltociear
1
1.1k
打 造 A I 驅 動 的 G i t H u b ⾃ 動 化 ⼯ 作 流 程
appleboy
0
280
グレートファイアウォールを自宅に建てよう
ctes091x
0
140
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Side Projects
sachag
455
43k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.7k
Mobile First: as difficult as doing things right
swwweet
225
10k
Scaling GitHub
holman
464
140k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Context Engineering - Making Every Token Count
addyosmani
9
500
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
A Tale of Four Properties
chriscoyier
162
23k
Designing for humans not robots
tammielis
254
26k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
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!