Katsaus NPM-pakettivaraston metatietoihin ja pakettien riippuvuussuhteisiin

Pakettivarastot ovat nykyajan ohjelmoinnissa hyvin yleisiä sovelluskehityksen välineitä, ja NPM (Node Package Manager) on yksi merkittävimmistä pakettivarastoista. Tässä tutkielmassa tehdään poikittainen katsaus NPM:n metadatasisältöön loppuvuonna 2019. Tutkielmassa esitellään keräystapa tarvittavil...

Full description

Bibliographic Details
Main Author: Ylä-Sahra, Arttu
Other Authors: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Format: Master's thesis
Language:fin
Published: 2020
Subjects:
Online Access: https://jyx.jyu.fi/handle/123456789/69811
Description
Summary:Pakettivarastot ovat nykyajan ohjelmoinnissa hyvin yleisiä sovelluskehityksen välineitä, ja NPM (Node Package Manager) on yksi merkittävimmistä pakettivarastoista. Tässä tutkielmassa tehdään poikittainen katsaus NPM:n metadatasisältöön loppuvuonna 2019. Tutkielmassa esitellään keräystapa tarvittaville metatiedoille, ja koostetaan tilastoja yleisellä tasolla sekä tutkitaan pakettien keskinäisiä riippuvuussuhteita. Tutkimuksen yhteydessä havaittiin pakettien riippuvuuksien merkittävää jakautumista suosion mukaan. Tutkimuksessa havaittiin myös kehittyvien pakettien nopeaa päivittymistä, kuitenkin huomioiden että enemmistöllä paketeista on vain muutama versio. Package repositories are one of the most common tools of software development today, and NPM is one of the most significant package repositories. In this thesis, a cross-sectional study of the NPM metadata at the end of year 2019 is completed. A method for collecting data is presented, and statistics collated on both a general level and interpackage dependency relationships are studied. It was found that, among other findings, the dependencies used are sharply divided between popular and less popular packages. It was also observed that developing packages tend to update quickly, with the caveat that a majority of packages do not have more than few versions.