SlideShare a Scribd company logo
1 of 28
Download to read offline
When	GitHub	meets	CRAN	:	
An	Analysis	of	Inter-Repository	
Package	Dependency	Problems	
Alexandre	Decan 		Tom	Mens	
Maelick	Claes 	Philippe	Grosjean	
So5ware	Engineering	Lab	
University	of	Mons,	Belgium	
h<p://informa@que.umons.ac.be/genlog/projects/ecos
SANER	–	Osaka,	Japan,		March	2016	
• A	so5ware	ecosystem	is:	
•  “a	collec@on	of	so5ware	products	that	have	some	given	degree	of	
symbio@c	rela@onships.”	[Messerschmi<	&	Szyperski	2003]	
•  “a	collec@on	of	so5ware	projects	that	are	developed	and	evolve	
together	in	the	same	environment.”	[Lungu	2008]	
• A	package-based	ecosystem	
•  is	composed	of	interdependent	so5ware	packages	…	
•  …	that	can	be	installed	and	distributed	using	a	package	manager	
• Examples	
Package-based	
So5ware	Ecosystems
SANER	–	Osaka,	Japan,		March	2016	
The	R	ecosystem	
•  R	=	popular	open	source	language	and	so5ware	
environment	for	sta@s@cal	compu@ng	
www.r-project.org	
•  Language	popularity	
(IEEE	Spectrum)	
2015	 2014
SANER	–	Osaka,	Japan,		March	2016	
The	R	ecosystem	
Where	can	we	find	R	packages?	
cran.r-project.org		
www.bioconductor.org		
r-forge.r-project.org		
www.github.org	
Number	of	packages	
(March	2015)	
6,411	
997	
1,883	
5,150
SANER	–	Osaka,	Japan,		March	2016	
CRAN	
distribu@on	plakorm	
•  But…	
–  “It	used	to	be	that	puDng	your	package	on	CRAN	also	
gave	it	some	exposure,	but	with	>6000	packages,	
that’s	no	longer	quite	true.”		[Broman	2015]	
–  “The	non-transparent	nature	of	the	CRAN	submission	/	
rejecUon	process	is	parUcularly	at	issue.	
	h<ps://github.com/stnava/ANTsR/issues/8		
The	main	advantage	to	geDng	your	package	on	CRAN	
is	that	it	will	be	easier	for	users	to	install.	
Your	package	will	also	be	tested	daily	on	mulUple	systems.	
“R	package	primer:	a	minimal	tutorial”,2015.	Karl	Broman
SANER	–	Osaka,	Japan,		March	2016	
CRAN	
distribu@on	plakorm	
Credits:	h<p://www.designandanaly@cs.com/cran-gephi/	
Package	dependency	graph	of	CRAN	
6,706	unarchived	packages	
on	June	1,	2015
SANER	–	Osaka,	Japan,		March	2016	
CRAN	
distribu@on	plakorm	
•  Con@nuous	integra@on	process	based	on	
R	CMD	Check	to	ensure	overall	consistency	
– Daily	check,	on	mul@ple	OS,	of	all	CRAN	packages	
– Looks	for	common	problems	in	package	structure,	
metadata,	code,	documenta@on,	data,	…	
– Packages	not	passing	the	check	need	to	be	
updated	to	avoid	gepng	archived	
– Packages	can	only	depend	on	the	latest	version	of	
another	package	è	if	they	depend	on	a	failed	
package	they	may	also	fail	the	check
SANER	–	Osaka,	Japan,		March	2016	
CRAN	
distribu@on	plakorm	
Automated	daily	CRAN	package	Check	(2016-02-23):	Summary	of	results
SANER	–	Osaka,	Japan,		March	2016	
CRAN	
distribu@on	plakorm	
Automated	daily	CRAN	package	Check	(2016-02-23):	Results	by	package
SANER	–	Osaka,	Japan,		March	2016	
R	on	GitHub	
githut.info	 Q4,	2014
SANER	–	Osaka,	Japan,		March	2016	
How	important	is	GitHub	
for	R	packages?	
•  CRAN	used	to	be	the	main	distribu@on	
plakorm	for	R	packages	
•  With	the	appearance	of	GitHub,	this	is	no	
longer	the	case	
Is	GitHub	star@ng	to	replace	or	complement	
CRAN	as	package	distribu@on	medium?
SANER	–	Osaka,	Japan,		March	2016	
How	important	is	GitHub	
for	R	packages?	
•  GitHub	hosts	many	R	packages	
•  Increasing	number	of	new	R	packages	on	GitHub	
June	1,	2015	
monthly	number	of	new	packages
SANER	–	Osaka,	Japan,		March	2016	
How	important	is	GitHub	
for	R	packages?	
Is	GitHub	being	used	as	a	distribu(on	pla/orm	
for	R	packages?	
	
•  GitHub	hosts	thousands	of	R	packages	
•  >40%	of	GitHub	R	packages	are	intended	to	be	distributed	
as	they	contain	instruc@ons	to	install	them	from	GitHub.	
•  An	increasing	number	of	R	packages	on	GitHub	is	not	
distributed	elsewhere	
•  Packages	like	devtools	facilitate	distribu@on	from	GitHub
SANER	–	Osaka,	Japan,		March	2016	
Managing	R	
package	dependencies	
Jeff	Leek	
Jeroen	
Ooms	
The	number	of	packages	on	CRAN	and	other	repositories	has	
increased	beyond	what	might	have	been	foreseen,	and	is	revealing	
some	limitaUons	of	the	current	design.	One	such	problem	is	the	
general	lack	of	dependency	versioning	in	the	infrastructure.		
“Possible	direc@ons	for	improving	dependency	versioning	in	R,”	
R	Journal	5(1):	197–206,	June	2013	
One	of	the	best	things	about	the	R	ecosystem	is	being	able	to	
rely	on	other	packages	so	that	you	don’t	have	to	write	
everything	from	scratch.	But	there	is	a	hard	balance	to	strike	
with	keeping	the	dependency	list	small.	
“How	I	decide	when	to	trust	an	R	package,”	
simplysta@s@cs.org/?p=4409,	November	2015.
SANER	–	Osaka,	Japan,		March	2016	
Managing	R	
package	dependencies	
In	which	repository	are	package	dependencies	saUsfied?	
ES SUFFER
OBLEMS?
around R’s
allation of R
repositories
available R
ojects filled
uages. Even
with the R
R package.
nts devtools
Additionally,
repositories
dependency
s hosted on
cy problems
of packages
by GitHub
t frequently.
er-repository
on GitHub depend on at least one package in CRAN, while
85.3% of all declared dependencies in R packages on GitHub
are satisfied by CRAN packages. Note that, if a package is
hosted by both CRAN and GitHub, we count it as a CRAN
package, because for dependency satisfaction we privilege
the officially distributed package over its development ver-
sion.
Other repositories
CRAN GitHub
0.5
1.598.0
85.3
10.7
4.00.8
1.8
61.5
70.6
11.8
8.6
Figure 5. Inter-repository package dependencies for CRAN and GitHub.
In blue: percentage of packages. In red: percentage of dependencies.
Because of the constraints imposed by CRAN’s daily
R CMD check, CRAN is self-contained. 98.0% of its
Blue	=	%	of	packages	in	repository	A	that	
have	a	dependency	sa@sfied	by	a	package	
in	repository	B		
Red	=	%	of	dependencies	of	packages	in	
repository	A	that	are	sa@sfied	by	a	package	
in	repository	B		
(BioConductor,	OmegaHat,	…)	
CRAN	is	self-contained,	so	it	does	
not	suffer	from	inter-repository	
dependency	problems.	
But	what	about	GitHub?
SANER	–	Osaka,	Japan,		March	2016	
Managing	R	
package	dependencies	
In	which	repository	are	package	dependencies	saUsfied?	
ES SUFFER
OBLEMS?
around R’s
allation of R
repositories
available R
ojects filled
uages. Even
with the R
R package.
nts devtools
Additionally,
repositories
dependency
s hosted on
cy problems
of packages
by GitHub
t frequently.
er-repository
on GitHub depend on at least one package in CRAN, while
85.3% of all declared dependencies in R packages on GitHub
are satisfied by CRAN packages. Note that, if a package is
hosted by both CRAN and GitHub, we count it as a CRAN
package, because for dependency satisfaction we privilege
the officially distributed package over its development ver-
sion.
Other repositories
CRAN GitHub
0.5
1.598.0
85.3
10.7
4.00.8
1.8
61.5
70.6
11.8
8.6
Figure 5. Inter-repository package dependencies for CRAN and GitHub.
In blue: percentage of packages. In red: percentage of dependencies.
Because of the constraints imposed by CRAN’s daily
R CMD check, CRAN is self-contained. 98.0% of its
Blue	=	%	of	packages	in	repository	A	that	
have	a	dependency	sa@sfied	by	a	package	
in	repository	B		
Red	=	%	of	dependencies	of	packages	in	
repository	A	that	are	sa@sfied	by	a	package	
in	repository	B		
(BioConductor,	OmegaHat,	…)
SANER	–	Osaka,	Japan,		March	2016	
Managing	R	
package	dependencies	
Conclusions	:	
	
•  Most	packages	on	GitHub	rely	on	packages	in	CRAN	…	
•  …	but	the	number	of	packages	on	GitHub	that	rely	on	
packages	outside	of	CRAN	is	increasing	
Do	R	packages	on	GitHub	suffer	from	
inter-repository	dependency	problems?
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
Observa@ons	
•  CRAN’s	policy	requires	to	depend	on	the	most	recent	
package	version	
•  GitHub	packages	frequently	depend	on	CRAN	packages	
•  They	cannot	benefit	from	CRAN’s	daily	check	
•  But	can	use	other	con@nuous	integra@on	processes	
such	as	Travis	CI	
•  Although	less	than	25%	actually	do	this…	
I	personally	think	it’s	REALLY	relevant	to	at	least	be	ABLE	to	be	
very	specific	and	rigid	with	regard	to	your	dependencies.	
And	I	think	the	R	universe	could	provide	beaer	tools	to	fit	the	
needs	of	developers	and	professionals	out	there	in	a	beaer	way.
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
Observa@ons	
•  CRAN’s	policy	requires	to	depend	on	the	most	recent	
package	version	
•  GitHub	packages	frequently	depend	on	CRAN	packages	
•  They	cannot	benefit	from	CRAN’s	daily	check	
•  But	can	use	other	con@nuous	integra@on	processes	
such	as	Travis	CI	
•  Although	less	than	25%	actually	do	this…	
I	personally	think	it’s	REALLY	relevant	to	at	least	be	ABLE	to	be	
very	specific	and	rigid	with	regard	to	your	dependencies.	
And	I	think	the	R	universe	could	provide	beaer	tools	to	fit	the	
needs	of	developers	and	professionals	out	there	in	a	beaer	way.		
è	CRAN	package	updates	more	likely	to	lead	
to	problems	for	GitHub	than	for	CRAN	
packages
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
CRAN	package	updates	more	likely	to	lead	to	problems	
for	GitHub	than	for	CRAN	packages	
Survival	Analysis:	
Probability	that	a	CRAN	
package	is	NOT	updated	
	
	
period	12/2014	–	6/2015	
3,740	considered	packages	
If	a	CRAN	package	is	required	
by	a	GitHub	package,	it	is	more	
likely	to	be	updated.
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
How	ocen	do	package	updates	cause	
backward	incompaUble	changes	on	CRAN?
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
How	ocen	do	package	updates	cause	
backward	incompaUble	changes	on	CRAN?	
•  41%	of	the	errors	in	CRAN	packages	are	caused	by	
backward	incompa@ble	changes	
(analysis	based	on	daily	R	CMD	Check	results	over	2-year	period)	
•  We	observed	backward	incompa@ble	changes	
on	average	once	every	20	updates	
(period	december	2014	à	June	2015)
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
How	ocen	do	package	updates	cause	
backward	incompaUble	changes?	
R	package	maintainers	share	this	concern:	
	
It	is	more	and	more	of	a	pain	if	the	
package	I’m	depending	on	breaks	
If	I	have	to	load	a	Depends	package,	it	adds	a	significant	burden:	
I	have	to	check	for	conflicts	every	Ume	I	take	a	dependency	
on	a	new	package.
SANER	–	Osaka,	Japan,		March	2016	
Inter-repository	
dependency	problems	
How	ocen	do	package	updates	cause	
backward	incompaUble	changes?	
R	package	maintainers	share	this	concern:	
	
The	risk	of	things	breaking	at	some	point	due	to	the	
fact	that	a	version	of	a	dependency	has	changed	
without	you	knowing	about	it	is	immense.	
I	had	one	case	where	my	package	heavily	depended	
on	another	package	and	acer	a	while	that	package	
was	removed	from	CRAN	and	stopped	being	maintained.
SANER	–	Osaka,	Japan,		March	2016	
Wrap-up	
•  GitHub	is	becoming	increasingly	used	to	
develop	and	distribute	R	packages	
•  Package	updates	o5en	lead	to	incompa@bili@es	
in	depending	packages	
•  GitHub	packages	cannot	benefit	from	CRAN’s	
con@nuous	integra@on	process	
Jeroen	
Ooms	
One	recent	example	was	the	forced	roll-back	of	the	ggplot2	update	to	version	
0.9.0,	because	the	introduced	changes	caused	several	other	packages	to	break.	
“Possible	direc@ons	for	improving	dependency	versioning	in	R,”	
R	Journal	5(1):	197–206,	June	2013
SANER	–	Osaka,	Japan,		March	2016	
Wrap-up	
•  R	community	needs	be<er	tool	support	for	
managing	dependencies	and	dealing	with	package	
versions.	
•  Such	tools	are	star@ng	to	emerge:	
–  devtools,	drat,	packrat,	miniCRAN,	checkpoint,	…	
–  R-Hub:	ongoing	project	accepted	by	R	consor@um	
•  Infrastructure	for	developing,	building,	tes@ng,	valida@on,	
distribu@on,	con@nuous	integra@on	of	R	packages.		
•  A	service	that	is	complementary	to	CRAN	and	R-Forge
SANER	–	Osaka,	Japan,		March	2016	
•  On	the	maintainability	of	CRAN	packages	
	[CSMR-WCRE	2014]	
•  maintaineR,	a	web-based	dashboard	for	maintainers	of	CRAN	
packages	
	[ICSME	2015]	
•  An	empirical	study	of	idenUcal	funcUon	clones	in	CRAN	
	[IWSC	2015	@	SANER]	
•  Anonymized	e-mail	interviews	with	R	package	maintainers	
acUve	on	CRAN	and	GitHub	
	[Technical	Report]	
Website:	
	informa@que.umons.ac.be/genlog/projects/ecos/		
27	
References
SANER	–	Osaka,	Japan,		March	2016	
References	
/var/folders/lm/
qbg6frqd6435jxm9w70y7h480000gn/T/
com.apple.Preview/
com.apple.Preview.PasteboardItems/
csmr13-140314140935-phpapp02	
(dragged).pdf	
/var/folders/lm/
qbg6frqd6435jxm9w70y7h480000gn/T/
com.apple.Preview/
com.apple.Preview.PasteboardItems/
csmr13-140314140935-phpapp02	
(dragged).pdf	
The Evolution of the R Software Ecosystem
Daniel M. German
University ofVictoria
Bram Adams
École Polytechnique
de Montréal
Ahmed E. Hassan
Queen's University
CSMR	2013

More Related Content

What's hot

Supporting Parallel Component Debugging Using the GDB Python Interface
Supporting Parallel Component Debugging Using the GDB Python InterfaceSupporting Parallel Component Debugging Using the GDB Python Interface
Supporting Parallel Component Debugging Using the GDB Python Interface
wazari972
 
Big(ger) Data in Software Engineering
Big(ger) Data in Software EngineeringBig(ger) Data in Software Engineering
Big(ger) Data in Software Engineering
Mehdi Mirakhorli
 
OCCIware project and OCCI standard presented at China Cloud Computing Confere...
OCCIware project and OCCI standard presented at China Cloud Computing Confere...OCCIware project and OCCI standard presented at China Cloud Computing Confere...
OCCIware project and OCCI standard presented at China Cloud Computing Confere...
OCCIware
 
Open Source Visualization of Scientific Data
Open Source Visualization of Scientific DataOpen Source Visualization of Scientific Data
Open Source Visualization of Scientific Data
Marcus Hanwell
 

What's hot (20)

Software Ecosystem Evolution. It's complex!
Software Ecosystem Evolution. It's complex!Software Ecosystem Evolution. It's complex!
Software Ecosystem Evolution. It's complex!
 
'Scikit-project': How open source is empowering open science – and vice versa
'Scikit-project': How open source is empowering open science – and vice versa'Scikit-project': How open source is empowering open science – and vice versa
'Scikit-project': How open source is empowering open science – and vice versa
 
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software EcosystemSocial and Technical Evolution of the Ruby on Rails Software Ecosystem
Social and Technical Evolution of the Ruby on Rails Software Ecosystem
 
HotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William Enck
HotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William EnckHotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William Enck
HotSoS16 Tutorial "Text Analytics for Security" by Tao Xie and William Enck
 
Software Analytics - Achievements and Challenges
Software Analytics - Achievements and ChallengesSoftware Analytics - Achievements and Challenges
Software Analytics - Achievements and Challenges
 
Supporting Parallel Component Debugging Using the GDB Python Interface
Supporting Parallel Component Debugging Using the GDB Python InterfaceSupporting Parallel Component Debugging Using the GDB Python Interface
Supporting Parallel Component Debugging Using the GDB Python Interface
 
Software Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software EngineeringSoftware Analytics: Data Analytics for Software Engineering
Software Analytics: Data Analytics for Software Engineering
 
Advanced support for executable statechart modelling
Advanced support for executable statechart modellingAdvanced support for executable statechart modelling
Advanced support for executable statechart modelling
 
Software Mining and Software Datasets
Software Mining and Software DatasetsSoftware Mining and Software Datasets
Software Mining and Software Datasets
 
Transferring Software Testing Tools to Practice
Transferring Software Testing Tools to PracticeTransferring Software Testing Tools to Practice
Transferring Software Testing Tools to Practice
 
Big(ger) Data in Software Engineering
Big(ger) Data in Software EngineeringBig(ger) Data in Software Engineering
Big(ger) Data in Software Engineering
 
On Impact in Software Engineering Research (Dagstuhl 2020)
On Impact in Software Engineering Research (Dagstuhl 2020)On Impact in Software Engineering Research (Dagstuhl 2020)
On Impact in Software Engineering Research (Dagstuhl 2020)
 
On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)
On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)
On impact in Software Engineering Research (ICSE 2018 New Faculty Symposium)
 
DRESD Project Presentation - December 2006
DRESD Project Presentation - December 2006DRESD Project Presentation - December 2006
DRESD Project Presentation - December 2006
 
On Impact in Software Engineering Research (HU Berlin 2021)
On Impact in Software Engineering Research (HU Berlin 2021)On Impact in Software Engineering Research (HU Berlin 2021)
On Impact in Software Engineering Research (HU Berlin 2021)
 
Duc le CV
Duc le CVDuc le CV
Duc le CV
 
Why We Refactor? Confessions of GitHub Contributors
Why We Refactor? Confessions of GitHub ContributorsWhy We Refactor? Confessions of GitHub Contributors
Why We Refactor? Confessions of GitHub Contributors
 
OCCIware project and OCCI standard presented at China Cloud Computing Confere...
OCCIware project and OCCI standard presented at China Cloud Computing Confere...OCCIware project and OCCI standard presented at China Cloud Computing Confere...
OCCIware project and OCCI standard presented at China Cloud Computing Confere...
 
User Expectations in Mobile App Security
User Expectations in Mobile App SecurityUser Expectations in Mobile App Security
User Expectations in Mobile App Security
 
Open Source Visualization of Scientific Data
Open Source Visualization of Scientific DataOpen Source Visualization of Scientific Data
Open Source Visualization of Scientific Data
 

Similar to When GitHub meets CRAN: An Analysis of Inter-Repository Package Dependency Problems

Workshop on design and development of institutional repositories using d space
Workshop on design and development of institutional repositories using d spaceWorkshop on design and development of institutional repositories using d space
Workshop on design and development of institutional repositories using d space
Mahesh Palamuttath
 
How I Contribute to OpenStack: Hastexo’s Florian Haas
How I Contribute to OpenStack: Hastexo’s Florian HaasHow I Contribute to OpenStack: Hastexo’s Florian Haas
How I Contribute to OpenStack: Hastexo’s Florian Haas
Rackspace
 
Scientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & SociologyScientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & Sociology
Neil Chue Hong
 
4 steps to great xplat apps (M
4 steps to great xplat apps (M4 steps to great xplat apps (M
4 steps to great xplat apps (M
Alexey Strakh
 

Similar to When GitHub meets CRAN: An Analysis of Inter-Repository Package Dependency Problems (20)

Open Babel project overview
Open Babel project overviewOpen Babel project overview
Open Babel project overview
 
Analyzing the Evolution of Testing Library Usage in Open Source Java Projects
Analyzing the Evolution of Testing Library Usage in Open Source Java ProjectsAnalyzing the Evolution of Testing Library Usage in Open Source Java Projects
Analyzing the Evolution of Testing Library Usage in Open Source Java Projects
 
Cosug for jiang su lug dec 2011
Cosug  for jiang su lug dec 2011Cosug  for jiang su lug dec 2011
Cosug for jiang su lug dec 2011
 
Scala Overview INFX 1616
Scala Overview INFX 1616Scala Overview INFX 1616
Scala Overview INFX 1616
 
Frontend War: Angular vs React vs Vue
Frontend War: Angular vs React vs VueFrontend War: Angular vs React vs Vue
Frontend War: Angular vs React vs Vue
 
Introduction to r
Introduction to rIntroduction to r
Introduction to r
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
 
Workshop on design and development of institutional repositories using d space
Workshop on design and development of institutional repositories using d spaceWorkshop on design and development of institutional repositories using d space
Workshop on design and development of institutional repositories using d space
 
Guidance, Code and Education: ScalaCenter and the Scala Community, Heather Mi...
Guidance, Code and Education: ScalaCenter and the Scala Community, Heather Mi...Guidance, Code and Education: ScalaCenter and the Scala Community, Heather Mi...
Guidance, Code and Education: ScalaCenter and the Scala Community, Heather Mi...
 
OER Rapid Innovation
OER Rapid InnovationOER Rapid Innovation
OER Rapid Innovation
 
sample-resume
sample-resumesample-resume
sample-resume
 
Demystifying Containerization Principles for Data Scientists
Demystifying Containerization Principles for Data ScientistsDemystifying Containerization Principles for Data Scientists
Demystifying Containerization Principles for Data Scientists
 
How I Contribute to OpenStack: Hastexo’s Florian Haas
How I Contribute to OpenStack: Hastexo’s Florian HaasHow I Contribute to OpenStack: Hastexo’s Florian Haas
How I Contribute to OpenStack: Hastexo’s Florian Haas
 
Amersfoort 2016 koch_wg_v02
Amersfoort 2016 koch_wg_v02Amersfoort 2016 koch_wg_v02
Amersfoort 2016 koch_wg_v02
 
Architecting iOS Project
Architecting iOS ProjectArchitecting iOS Project
Architecting iOS Project
 
Scientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & SociologyScientific Software: Sustainability, Skills & Sociology
Scientific Software: Sustainability, Skills & Sociology
 
Automating the Generation of Benchmark Suites
Automating the Generation of Benchmark SuitesAutomating the Generation of Benchmark Suites
Automating the Generation of Benchmark Suites
 
4 steps to great xplat apps (M
4 steps to great xplat apps (M4 steps to great xplat apps (M
4 steps to great xplat apps (M
 
WSO2Con EU 2015: PaaS for Educational Environments – Almaviva
WSO2Con EU 2015: PaaS for Educational Environments – AlmavivaWSO2Con EU 2015: PaaS for Educational Environments – Almaviva
WSO2Con EU 2015: PaaS for Educational Environments – Almaviva
 

More from Tom Mens

Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Tom Mens
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)
Tom Mens
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package Managers
Tom Mens
 

More from Tom Mens (20)

How to be(come) a successful PhD student
How to be(come) a successful PhD studentHow to be(come) a successful PhD student
How to be(come) a successful PhD student
 
Recognising bot activity in collaborative software development
Recognising bot activity in collaborative software developmentRecognising bot activity in collaborative software development
Recognising bot activity in collaborative software development
 
A Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHubA Dataset of Bot and Human Activities in GitHub
A Dataset of Bot and Human Activities in GitHub
 
The (r)evolution of CI/CD on GitHub
 The (r)evolution of CI/CD on GitHub The (r)evolution of CI/CD on GitHub
The (r)evolution of CI/CD on GitHub
 
Nurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the FutureNurturing the Software Ecosystems of the Future
Nurturing the Software Ecosystems of the Future
 
Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?Comment programmer un robot en 30 minutes?
Comment programmer un robot en 30 minutes?
 
On the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHubOn the rise and fall of CI services in GitHub
On the rise and fall of CI services in GitHub
 
On backporting practices in package dependency networks
On backporting practices in package dependency networksOn backporting practices in package dependency networks
On backporting practices in package dependency networks
 
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and RubygemsComparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
Comparing semantic versioning practices in Cargo, npm, Packagist and Rubygems
 
Lost in Zero Space
Lost in Zero SpaceLost in Zero Space
Lost in Zero Space
 
Evaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messagesEvaluating a bot detection model on git commit messages
Evaluating a bot detection model on git commit messages
 
Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!Is my software ecosystem healthy? It depends!
Is my software ecosystem healthy? It depends!
 
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...Bot or not? Detecting bots in GitHub pull request activity based on comment s...
Bot or not? Detecting bots in GitHub pull request activity based on comment s...
 
On the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystemsOn the fragility of open source software packaging ecosystems
On the fragility of open source software packaging ecosystems
 
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...How magic is zero? An Empirical Analysis of Initial Development Releases in S...
How magic is zero? An Empirical Analysis of Initial Development Releases in S...
 
Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)Comparing dependency issues across software package distributions (FOSDEM 2020)
Comparing dependency issues across software package distributions (FOSDEM 2020)
 
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
Measuring Technical Lag in Software Deployments (CHAOSScon 2020)
 
SecoHealth 2019 Research Achievements
SecoHealth 2019 Research AchievementsSecoHealth 2019 Research Achievements
SecoHealth 2019 Research Achievements
 
SECO-Assist 2019 research seminar
SECO-Assist 2019 research seminarSECO-Assist 2019 research seminar
SECO-Assist 2019 research seminar
 
Empirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package ManagersEmpirically Analysing the Socio-Technical Health of Software Package Managers
Empirically Analysing the Socio-Technical Health of Software Package Managers
 

Recently uploaded

Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Sérgio Sacani
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
MohamedFarag457087
 
Bacterial Identification and Classifications
Bacterial Identification and ClassificationsBacterial Identification and Classifications
Bacterial Identification and Classifications
Areesha Ahmad
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
PirithiRaju
 

Recently uploaded (20)

GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learning
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
Sector 62, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 62, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 62, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 62, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdf
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
 
Bacterial Identification and Classifications
Bacterial Identification and ClassificationsBacterial Identification and Classifications
Bacterial Identification and Classifications
 
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate ProfessorThyroid Physiology_Dr.E. Muralinath_ Associate Professor
Thyroid Physiology_Dr.E. Muralinath_ Associate Professor
 
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
 
High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑
High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑
High Profile 🔝 8250077686 📞 Call Girls Service in GTB Nagar🍑
 
chemical bonding Essentials of Physical Chemistry2.pdf
chemical bonding Essentials of Physical Chemistry2.pdfchemical bonding Essentials of Physical Chemistry2.pdf
chemical bonding Essentials of Physical Chemistry2.pdf
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdf
 
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdfPests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
Pests of cotton_Borer_Pests_Binomics_Dr.UPR.pdf
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Factory Acceptance Test( FAT).pptx .
Factory Acceptance Test( FAT).pptx       .Factory Acceptance Test( FAT).pptx       .
Factory Acceptance Test( FAT).pptx .
 
Site Acceptance Test .
Site Acceptance Test                    .Site Acceptance Test                    .
Site Acceptance Test .
 
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRLKochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
 

When GitHub meets CRAN: An Analysis of Inter-Repository Package Dependency Problems