- add download API, closes #529
- fix missing home page title (@rockdai)
- Fix typo in view/web/package.html (@LoicMahieu)
- fix xss on title
- feat(badge): support badge image url with tag
- hotfix package.html typo. Closes #521
- Add editorconfig
- fix(web/package): package name to long cause style problem fix
- fix(css): use github-markdown-css for markdown body
- feat(mock): use koa-mock for front end dev
- fix(registry): add missing /-/short api
- zoom sync link
- new design for package page
- image max width, fixed #505
- feat(middleware): block Ruby user-agent
- fix(sync): should not sync package when maintainers sort change
- fix(package): detect package is private or not
- fix(maintainer): fix missing maintainers
- fix(sync): add missing syncUpstreamFirst argument
- refactor(sync_worker): only sync request need to sync upstream first
- fix(sync_worker): make sure end event will emit
- fix: mv readme.md script to public/js/readme.js
- fix(sync): hotfix co uncaughtException
- feat(sync): sync python dist
- pin autod@1
- remove useless comment
- refactor models/_module_maintainer_class_methods.js
- ungrade koa-markdown to use remarkable, close #482
- fix(module_log): limit module sync log size to 1MB
- refactor(config): remove adaptScope config key
- chore(Makefile): $ make install-production
- fix(sequelize): show warnning message when using old config.js
- docs(readme): Migrating from 1.x to 2.x
- feat(sync): add min sync interval time detect
- refactor(dispatch): remove unused codes
- use sequelize to connect database
- fix typo in sync popular, fix #477
- Merge pull request #475 from KidkArolis/configurable-short-registry-url
- If sourceNpmRegistry is cnpm - use it in getShort
- Merge pull request #472 from cnpm/issue468-upon
- fix test label
- add sync popular modules, close #468
- add sendmail test script
- make test on travis faster
- ensure not sync user also has his own package names
- add v1.6.x-upgrade.sql
- save npm original package maintainers to npm_module_maintainer table. fixed #464
- use simple 404
- list user all packages api. fixed #462
- add node-dev: $ make dev
- always start sync worker
- update node mailer
- update autod
- fix sync in web
- sync upstream only the first package. make sync devDependencies optionsal, default is false
- add some comment, default sourceNpmRegistryIsCNpm to true
- format sync log
- support sync upstream first. fixed #451
- support im url on user profile page; update bootstrap to 3.2.0
- search support case insensitive, close #450
- add config._syncInWeb, close #448
- show maintainers when publish 403. fixed #430
- no attachment for html
- dist sync document too. fixed #420
- badge version support 1.0.0-beta1. fixed #440
- alias /:name/-/:file to /:name/download/:file. fixed #439
- change default source registry to taobao's registry
- Merge pull request #435 from cnpm/bluebird
- add bluebird
- bump fs-cnpm
- Merge pull request #434 from cnpm/agent-stat
- show agent sockets stat. fixed #433
- update readme
- remove pic in readme
- fix login error status
- different version, different color badge, add version badge. fixed #427
- add download and node version badge
- remove unused eventproxy
- add custom config in tools/sync_not_exist.js
- add sync not exist tools, close #424
- use gittip instand of alipay. close #425
- update registry api doc
- ignore config/config.js
- Merge pull request #421 from cnpm/qn-cnpm
- fix test case
- use fs-cnpm
- fix test
- use qn-cnpm
- bump cfork
- bump koa
- deprecated bug fix and support undeprecate
- show deprecated message
- Sync deprecated field if it missing
- Support $ cnpm deprecate [pkgname]@[version] "message". fixed #415
- Add user to maintainers when publish. fixed #395
- List all npm registry api. close #413
- limit list since
- change deps by "~"
- use cfork to make sure worker fork and restart
- handle master uncaughtException. fixed #403
- WTF [email protected] missing
- unpublish pkg@version bug hotfix. fixed #400
- hotfix #399 use not exists
- add maintaining packages in user page
_fix auth error response message
- Merge pull request #398 from cnpm/fix-auth
- hot fix auth error
- add private package list
- hotfix save custom user bug
- Handle user service auth throw custom error message
- add test for config private packages
- add config.privatePackages
- add more comments in config/index.js
- scopes init mv to services/user.js
- show user more profile
- registry show user support custom user service
- support custom user service for user auth
- remove session middleware
- add DefaultUserService
- check scopes in module.getAdapt
- test public mode, fix some logic, close #382
- move scope.js into publishable.js, add forcePublishWithScope
- config.scopes not exist, means do not support scope
- add assert scope middleware
- fix unpublished info missing maintainers cause TypeError
- show unpublished info on web package page. fixes #381
- Only private package support default scoped. fixed #378
- adapt default scpoe in /@:scope/:name/:version
- hot fix download
- fix default scope detect
- add more test cases
- support default @org. close #376
- hotfix redis init error
- support "scoped" packages. close #352
- use safe jsonp
- Stop support old publish flow. fix #368
- update SQLs
- use sync_info and sync_error categories
- add categories to loggers. fix #370
- fix get latest tag always not exists bug
- support
npm publish --tag beta
. fix #366 - use mini-logger and error-formater
- use module_maintainers on GET /pakcage/:name page
- use new module_maintainers on GET /:name
- admin user should never publish to other user's packages. fix #363
- Add a new table for module-maintainers.
- gravatar use https
- support https
- hot fix removeTagsByNames()
- fix _rev not exists
- sync unpublished on GET /sync/:name
- fix sync response 204
- add links in History.md
- bump koa
- fix test-cov
- bump koa and should
- fix attack on /-/all/since?stale=update_after&startkey=2 close #336
- bump thunkify-wrap
- bump koa-middlewares
- remove outputError
- bump dependencies
- use svg badge
- add package/notfound page
- add dist mirror link to home page
- fix sync listdiff and add more test cases
- filter /nightlies/*
- use koa setter instead of set()
- add more info on error email
- add sync dist to sync/index.js
- show dist page
- sync dist file and save it to database
- disable gzip before #335 has fix
- Merge pull request #334 from cnpm/fix-permission
- add permission check to /:name/:tag
- Merge pull request #333 from cnpm/issue332-tag
- fix space
- add put /:name/:tag, close #332
- sync interval config
- fix fav ico and show pkg size on pkg info page. fix #318
- sync work sync one done must wait for a defer.setImmediate. fix #328
- bump dep versions
- if download tarball 404, throw err better than ignore it. fixed #325
- refator sync
- hotfix, close #321
- hotfix, close #319
- support custom web home page
- npm get short only can read from cnpm now
- if using reverted proxy like nginx, only binding on local host
- fix redis detect logic
- fix sync status code error
- fix test cases to run on local machine
- add contribute guidelines
- use local mysql for dev env. fix #308
- use copy to
- use koa-compress and koa-conditional-get
- maintainers is string, fix #301
- fix npm adduser update 409 bug
- fix multiline coverage
- show package engines. fixed #280
- dont sync local package field. fix #295
- fix result.successes not exist error
- fix search list
- add simple request for listall
- only return package name in /-/all and /-/all/since, fixed #291
- refine docs foloder
- use module gmt_modified as etag. fix #288
- fix typo, remove unused config in package.json
- web page only list cnpm registry related info
- use generator in qnfs
- use common.isMaintainer, fixed #283
- update dependencies
- use co-mocha for test, fixed #279
- update thunkify-wrap, breaking change in thunkify-wrap
- refactor SQLs by using multiline
- use multiline to refactor sqls
- ignore contributors
- Only /_session request send the authSession. fixed #223
- sync npm user info when maintainers and contributors not exists. fixed #82
- save npm user to mysql
- password salt always be randoms
- remove session access in /name and /name/version, fixed #274
- fix update maintainer session error
- update koa-middlewares
- fix test, fix sync_by_install
- use defer session
- Support npm owner|author add [name] [pkg]. fixed #271
- custom user-agent
- use co-urllib instead of thunkify urllib; fix mock http.request test cases
- request limit custom message
- add config.redis check
- add koa-limit, fixed #267
- update middlewares, fixed missing charset bug #264
- show worker die date time
- update to [email protected]
- hotfix for star user
- fix yield gather, sync missing deps even no missing versions
- fix return versions
- fix makefile, remove eventproxy
- refactor sync_module_worker
- add make test-dev, fixed #259
- change npm.js to generator
- update urllib, proxy/npm.js use generator
- sync_all and sync_exist to generator
- change function to generator
- need node >= v0.11.9
- install missing package should sync it from source npm. fixed #252
- npm publish dont contains .jshint*
- npm test run jshint
- Add jshint check: $ make jshint
- use
yield* next
instead ofyield next
- replace dist.u.qiniudn.com with cnpmjs.org/dist
- redirect /dist/xxx.tgz => http://dist.u.qiniudn.com/xxx.tgz fixed #249
- redirect /name to /package/name when /name is 404. fixed #245
- Add missing properies and sync missing star users. fixed #235
- add cov
- use istanbul run test coverage
- gzip support. fix #241
- readme spelling patch (@stanzheng)
- default readme to null, fixed #233
- remove readme in versions
- Merge pull request #232 from cnpm/host-hotfix
- get request host from request.headers
- Merge pull request #231 from cnpm/bug-fix
- fix deps display bug#230 and nsf.url TypeError#229
- update koa-sess and koa-redis
- fix sync all test
- remove nfs.downloadStream first, fix tmppath error
- fix fengmk2/giturl#1 bug
- add etag fixed #224
- travis ci install on source npm
- fix typo and dont sync not exists pkgs
- use koa-middlewares
- fix signed cookie not work on [email protected]; node --harmony-generators
- fix opensearch test case
- update koa bodyparser
- logger.error(err) should send err stack email notice
- json body parse limit and bug fix.
- fix sync 404 reason not clear
- all controllers to koa
- controller/web/user.js to koa
- change web connect to koa
- use outputError
- use yield exports.addPackageAndDist.call(this, next);
- add end() when ws write end
- fix yield coWrite
- fix all the test of registry module.test.js
- convert registry/module.js to koa type
- fix auth middleware
- finish registry user controller koa and update mm to support thunkify. fixed #196
- change controllers/user.js to koa
- thunkify all proxy
- convert all middlewares to koa type
- change regsitry sync to koa
- addd koa-jsonp, koa-bodyparser, fix / controller
- first koa run registry home page /
- Merge pull request #212 from cnpm/fix-sync-404
- return friendly 404 reason
- Merge pull request #211 from cnpm/bug-fix
- override json limit to default 10mb. fixed #209
- fix #210 addPackageAndDist package version detect bug
- support json result in search, fixed #189
- npm publish also need to add deps
- max handle number of package.json
dependencies
property - Dependents support. fixed #190
- fix if delete all the versions
- refactor remove module, fixed #186
- system admin can add, publish, remove the packages. fixed #176
- add keyword and search support keyword. #181
- refactor code styles on package.html
- nav-tabs e.preventDefault
- Show registry server error response. fixed #178
- nav-tabs for package.html (@4simple)
- hotfix sync missing dependencies and readmes
- fix sync readme error, fixed #174
- add updateReadme in module
- npm install no need to check authorization header. fixed #171
- Support gitlab git url to display and click. fixed #160
- fix redis crash
- custom logo url
- hotfix layout bug
- fix publish-time bug
- add publish_time to debug
- add make autod
- update publish_time, fixed #163
- markdown tmpl not support footer, need to wrap on app start
- add footer and npm client name customable
- package page contributor link to search, default is true
- fix #155 Content-Disposition wrong.
- support startkey=c and startkey="c"
- support couch db search api. fixed #153
- fix fork me image link
- support sync by query.name
- dont show err stack on test env
- add download link for package page
- add shasum when nfs.upload and hfs.uploadBuffer, fixed #148
- support custom session store, fixed #146
- add download timeout and unit test
- use downloadStream() first
- nfs download to a writeable stream.
- set main script to index.js, fixed #142
- Dont show sync button on private package
- Sync package as publish with no deps. fixed #138
- keep compatibility
- qnfs upload only callback a url
- compat remove package
- set tarball url
- new npm publish in one request, add _publish_in_cnpm
- support unsure name ufs
- contributors maybe a object
- Object # has no method 'forEach' fixed #134
- support custom config as a module, fixed issue #132
- support npm new publish flow. fixed #129
- add toString and constructor to test admin
- fix #119 hasOwnProperty check admin bug.
- remove to lower case
- fix #127 execSync and execsync.
- add contributors list on package page
- mv blanket to config
- sync typeerror fix #statusCode
- add disturl
- fix #122 admin security bug
- fixed #121, let pkg 404 as success
- fix sql insert error
- fix typos
- add favicon
- Fix auth middleware bug (@alsotang)
- make sure all packages name are lower case
- select ids from tag
- fix nodejsctl
- fix #112 missing versions and time no sync
- remove restart command
- fix sync missing packages error
- fix web/readme.md, add install
- fix #109 pkg no times and no versions bug.
- fix times not exists canot sync bug. fixed #101
- support npm run command
- remove before_install and install in travis, fixed #102
- split all sub queries, fixed #104
- fix doc, fixed #103
- fix search too slow.
- dont email sync log level info
- only sync missing packages at first time
- update dependencies
- sync all will sync all the missing packages, fixed #97
- add sync title
- add favicon. fixed #69
- refine sync page, fiexd #70
- add app version
- add test for sync
- refine sync page
- registry and web all use controllers/sync.js
- sync from web, fixed #58
- saving missing descriptions
- add package download info. fixed #63
- add avatar
- use dependecies, fixed #issue62
- support open search, fixed #60
- make sure publish_time and author is same to source npm registry. fixed #56
- add test for search
- add a simple search by mysql like
- fix This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery. fixed #54
- update install doc, use nodejsctl to start
- must add limit on list by author sql
- fix sql, change test to fit my local database, fixed #46
- use registry.cnpmjs.org
- add install document and total package info on home page. fix #42
- add module_id to tag table. #46
- skip error version. fixed #43
- sync may make a user do not exist in database, but have modules in registry
- add user page
- fix set license
- ignore 404 on sync. fixed #39
- fix module page, add test
- update urllib to 0.5.5
- version and tag
- add module page
- fix download url
- first get tag, then try version
- support sync triggle by install, finish #31
- addTag error return 500
- just one download field
- add download total info on home page
- add download count
- versions empty and also check missing tags
- remove tags on unpublish
- add module tag. fix #6
- add [done] flag to check sync done on client
- get sync log #29
- fix test in module
- rm tmp file on down request error
- add time for debug str
- fix pkg not exists null bug
- use sync module woker to handle sync process. fixed #19
- if private mode enable, only admin can publish module
- add alias in readme
- fix sql, add sort by name
- fix sql
- add api to support npm search and auto completion
- add npm and cnpm image
- add registry total info on home page
- fix mods bug in module.removeAll, change module.update => module.removeWithVersions
- add test, fix bug. fixed #18
- spoort unpublish
- add web page index readme
- switchable nfs #21
- change file path to match npm file path
- use qn cdn to store tarball file fixed #16
- add GET /:name/:version, fixed #3
- add module controller test cases; fix next module not exists logic bug.
- publish module flow finish #11
- add test for controllers/registry/user.js
- add test for middleware/auth
- add test for proxy/user
- remove index.js
- fix typo
- add redis as session store
- fix nodejsctl mod
- add start time
- add home page
- remove session controller
- adduser() finish fixed #5
- rm app.js and routes.js
- Mock npm adduser server response, fixing #5
- adjust project dir, separate registry and web server
- Init rest frame for cnpmjs.org
- init