[devel] [cyber] I: Autoimports/Sisyphus 20130625 packages: +138! (3153)
Igor Vlasenko
vlasenko на imath.kiev.ua
Сб Июн 29 02:16:18 MSK 2013
Спасибо большое!
мне сейчас опять придется прерваться - конференция,
через неделю вернусь к теме.
On Thu, Jun 27, 2013 at 11:53:11PM +0300, Дмитрий Кулик wrote:
> Может помогу немного...на примере того же express.
>
> Я надеюсь робот умеет брать с интернета то что ему нужно.
>
> для начала https://registry.npmjs.org/express получаем описание пакета в
> package.
>
> разбираем package.versions
>
> "versions":{
>
> - "0.14.0":{},
> - "0.14.1":{},
> - "1.0.0beta":{},
> - "1.0.0beta2":{},
> - "1.0.0rc":{},
> - "1.0.0rc2":{},
> - "1.0.0rc3":{},
> - ...
>
> }
>
> сортируем в порядке убывания версии. для сортировки родной механизм -
> https://github.com/isaacs/node-semver в ридми все по человечески написано
>
> если не указана версия - то берем максимальную иначе через semver идем от
> максимальной и вниз.
>
> если подходит - запоминаем version
>
> если эта версия уже есть в репозитории - то припускаем,
>
> далее работаем с package.versions[version]
> {
> "name": "express",
> "description": "Sinatra inspired web development framework",
> "version": "3.3.1",
> "author": {
> "name": "TJ Holowaychuk",
> "email": "tj на vision-media.ca"
> },
> "contributors": [
> {
> "name": "TJ Holowaychuk",
> "email": "tj на vision-media.ca"
> },
> {
> "name": "Aaron Heckmann",
> "email": "aaron.heckmann+github на gmail.com"
> },
> {
> "name": "Ciaran Jessup",
> "email": "ciaranj на gmail.com"
> },
> {
> "name": "Guillermo Rauch",
> "email": "rauchg на gmail.com"
> }
> ],
> "dependencies": { //Их снова скармливаем роботу, робот должен по идее
> вернуть собраную версию для наших Reqs
> "connect": "2.8.1",
> "commander": "0.6.1",
> "range-parser": "0.0.4",
> ...
> },
> "devDependencies": { // Эти зависимости не ставятся по умолчанию.
> Только если мы разрабатываем модуль, для тестирования, прочее
> "ejs": "*",
> "mocha": "*",
> "jade": "0.30.0",
> ...
> },
> "keywords": [
> "express",
> "framework",
> ...
> ],
> "repository": {
> "type": "git",
> "url": "git://github.com/visionmedia/express"
> },
> "main": "index",
> "bin": { // это то что должно линковаться в /usr/bin и как называться
> "express": "./bin/express"
> },
> "scripts": { //здесь описываются команды для сборки
> "prepublish": "npm prune",
> "test": "make test"
> },
> "engines": { //некоторые модули могут указывать на старые версии, но
> работают и на более новых
> "node": "*"
> },
> // Это у нас markdown. иногда присутствует файлом
> "readme": "![express logo](
> http://f.cl.ly/items/0V2S1n0K1i3y1c122g04/Screen%20Shot%202012-04-11%20at%209.59.42%20AM.png)\n\n
> Fast, unopinionated, minimalist web framework for [node](http://nodejs.org).
> ",
> "readmeFilename": "Readme.md",
> "_id": "express на 3.3.1",
> "dist": {
> "shasum": "4bb79fb3548313d9e1a49ffdc5aa369a936127d7",
> "tarball": "http://registry.npmjs.org/express/-/express-3.3.1.tgz"
> },
> "_from": ".",
> "_npmVersion": "1.2.14",
> "_npmUser": {
> "name": "tjholowaychuk",
> "email": "tj на vision-media.ca"
> },
> "maintainers": [
> {
> "name": "tjholowaychuk",
> "email": "tj на vision-media.ca"
> }
> ],
> "directories": {
> },
> }
>
> Более подробно читаем https://npmjs.org/doc/json.html
>
> Надеюсь информация будет полезной
>
> З.Ы есть в версиях package.versions[version].license
>
> -
>
> --
> Dmitry Kulik
> ALTLinux Team
> e-mail: lnkvisitor.ts[at]gmail.com
> jabber: lnkvisitor.ts[at]gmail.com
> _______________________________________________
> Devel mailing list
> Devel на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel
--
Dr. Igor Vlasenko
--------------------
Topology Department
Institute of Math
Kiev, Ukraine
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Подробная информация о списке рассылки Devel