From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00, RCVD_IN_SORBS_WEB,SPF_PASS autolearn=no version=3.2.5 Date: Sat, 29 Jun 2013 01:16:18 +0300 From: Igor Vlasenko To: ALT Linux Team development discussions Message-ID: <20130628221618.GA8511@dad.imath.kiev.ua> References: <51CA8415.4050802@gmail.com> <51CABCDC.9000401@gmail.com> <51CB3551.5020800@gmail.com> <51CC45ED.5030800@gmail.com> <20130627164739.GA871@dad.imath.kiev.ua> <20130627165137.GA2020@dad.imath.kiev.ua> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-imath-kiev-ua-MailScanner-Information: Please contact the ISP for more information X-imath-kiev-ua-MailScanner-ID: B9EA36C9ABB.A2BC6 X-imath-kiev-ua-MailScanner: Found to be clean X-imath-kiev-ua-MailScanner-From: vlasenko@imath.kiev.ua Subject: Re: [devel] [cyber] I: Autoimports/Sisyphus 20130625 packages: +138! (3153) X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Jun 2013 22:17:09 -0000 Archived-At: List-Archive: List-Post: Спасибо большое! мне сейчас опять придется прерваться - конференция, через неделю вернусь к теме. 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.