Alex Kocharin
48825a2e46
change intervals formatting to match nginx
...
see http://wiki.nginx.org/ConfigNotation
2014-03-08 04:37:16 +00:00
Alex Kocharin
6a2a463b76
count each failed request only once
2014-03-08 04:00:07 +00:00
Alex Kocharin
f1ec18dc4b
implement nginx-like logic to avoid hitting upstream when it's down
2014-03-08 03:54:28 +00:00
Alex Kocharin
6b9001ef6c
change interval formatting in config
...
All intervals are now in milliseconds. But you can add
multiples ("ms", "s", "m", "h", "d", "M", "y") to set
value using different units.
For example, value "1.5h" would mean 1.5 hours.
2014-03-08 03:49:59 +00:00
Alex Kocharin
9ff1203688
throw away incomplete downloads
2014-03-07 19:48:24 +00:00
Alex Kocharin
a891354a32
always return content-length for tarballs
2014-03-07 19:39:20 +00:00
Alex Kocharin
9c4c93695b
fix crash in #52
2014-03-07 18:20:41 +00:00
Sam Day
58e98c7263
Support maxage for uplinks
2014-03-02 20:47:09 +11:00
Alex Kocharin
691d62f403
eslint update + style fixes
2014-02-23 21:20:50 +04:00
Alex Kocharin
a5d0094669
remove npmsslkeys
...
See commit in npmconf:
e0b4a4e5cc
2014-02-23 20:55:41 +04:00
Alex Kocharin
b65cf7afe3
move eslint config to yaml
2014-02-07 00:56:46 +04:00
Alex Kocharin
8840ac4c1f
removing bad statement
2014-02-03 00:50:38 +04:00
Alex Kocharin
9f662a69e1
validate all url parameters better
2014-02-01 12:08:48 +04:00
Alex Kocharin
616ec7626a
process.getuid doesn't always exist ( fixes #41 )
2014-01-24 06:36:03 +03:00
Alex Kocharin
2add883370
adding config param to specify upload limits, fixes #39
2014-01-18 23:04:12 +04:00
Alex Kocharin
e522347667
making loose semver versions work, ref #38
2014-01-18 22:57:44 +04:00
Alex Kocharin
6c258758c8
support setting different storage paths for different packages
...
fixes #35
2014-01-13 22:56:36 +04:00
Alex Kocharin
68d3cc7295
fs interface refactoring
2014-01-13 20:48:51 +04:00
Alex Kocharin
5422de642e
tag support, closes #8
2013-12-29 10:41:31 +04:00
Alex Kocharin
3c7ae2f37d
a few bugfixes
2013-12-29 04:58:48 +04:00
Alex Kocharin
6075034521
proxy_access -> proxy (since we're removing proxy_publish)
2013-12-29 04:54:46 +04:00
Alex Kocharin
d1a1a8f4cd
bugfix
2013-12-29 04:54:39 +04:00
Alex Kocharin
54535893ab
adding support for new npm behaviour, closes #31
2013-12-29 04:53:31 +04:00
Alex Kocharin
8c05cfe6a2
require heapdump if present on the system
2013-12-29 04:52:23 +04:00
Alex Kocharin
6c838c7947
remove all replication-like functionality
...
apparently it was a bad idea, it's simpler to just run a single
sinopia instance as a master
TODO: write some help in readme about it
2013-12-27 17:23:14 +04:00
Alex Kocharin
985d705ad2
working on tags / incomplete
2013-12-27 17:06:30 +04:00
Alex Kocharin
6234f8cba9
Merge branch 'master' of github.com:rlidwka/sinopia
2013-12-27 17:05:05 +04:00
Alex Kocharin
c0e34890e4
req.user -> req.remoteUser
2013-12-27 15:29:23 +04:00
Alex Kocharin
b42687d230
Merge tag 'v0.5.9' of github.com:rlidwka/sinopia
...
0.5.9
2013-12-26 23:46:08 +04:00
Alex Kocharin
b44255de3c
set right Accept header for tarballs, closes #32
2013-12-26 23:25:19 +04:00
Alex Kocharin
b0fa7ee2d1
using eslint to check the code
2013-12-23 04:14:57 +04:00
Alex Kocharin
3b2bd161b7
logging bad versions
2013-12-21 16:09:29 +04:00
Alex Kocharin
3a31064ded
deal with js-yaml warning
2013-12-19 18:50:31 +04:00
Alex Kocharin
151136381e
style fix
2013-12-19 07:18:45 +04:00
Alex Kocharin
503b60a45b
catch bind errors
2013-12-19 07:17:52 +04:00
Alex Kocharin
225c2bb65f
added a warning to not run it under root
2013-12-17 20:25:17 +04:00
Alex Kocharin
8ea985ff6b
don't color multiline strings in logs output
...
stack traces should be easily recognizable
2013-12-16 03:07:19 +04:00
Alex Kocharin
0cec69ee1d
Merge branch 'master' of github.com:rlidwka/sinopia
2013-12-16 00:58:09 +04:00
Alex Kocharin
693aa576b4
safeguard against bad tarball names
2013-12-16 00:54:29 +04:00
Alex Kocharin
3abce5e2b6
better error message when publishing with bad auth header
2013-12-16 00:38:16 +04:00
Alex Kocharin
f43ec71ccb
0.5.7
2013-12-15 04:05:58 +04:00
Alex Kocharin
ef61515f28
try to fetch package from uplinks if user requested a tarball we don't know about
...
closes #29 + tests fix
2013-12-15 03:15:58 +04:00
Alex Kocharin
9094d0742f
better error message for incorrect package names
2013-12-15 03:09:55 +04:00
Alex Kocharin
ede09b5c77
refactoring: move uplink.get_package() calls to it's own function
2013-12-13 20:50:41 +04:00
Alex Kocharin
380ec1e917
always end response with a newline
2013-12-13 19:12:24 +04:00
Alex Kocharin
8149f883b0
default express.js to production mode, not development
2013-12-12 03:19:40 +04:00
Alex Kocharin
96b336acc3
if uplink doesn't answer, stop sending requests to it for a while (2 min default)
2013-12-12 02:00:26 +04:00
Alex Kocharin
520a3b0220
cleanup
2013-12-12 01:55:40 +04:00
Alex Kocharin
230750ff88
adding sinopia version to logs
2013-12-12 01:55:17 +04:00
Alex Kocharin
203f0300e3
Merge branch '0.5.x' of github.com:rlidwka/sinopia
...
Conflicts:
lib/storage.js
test/start.sh
2013-12-12 01:44:29 +04:00
Alex Kocharin
7ee2361700
better tests for various tags (including bad ones), ref #21
2013-12-12 01:22:35 +04:00
Alex Kocharin
47a92ff273
fail-safe semver parsing + tests, ref #25
2013-12-12 00:51:48 +04:00
Brett Trotter
fc99692219
Update semver.compare to semver.compareLoose to tolerate grunt and other packages
2013-12-12 00:35:07 +04:00
Alex Kocharin
bd7dde229a
Merge branch 'master' of github.com:rlidwka/sinopia
2013-12-11 21:40:41 +04:00
Alex Kocharin
d149252a3b
fixing crash on bad tags
2013-12-11 17:04:08 +04:00
Brett Trotter
ed3386f044
Update semver.compare to semver.compareLoose to tolerate grunt and other packages
2013-12-10 13:04:47 -06:00
Alex Kocharin
36fa1ba655
log fatal errors
2013-12-10 14:29:46 +04:00
Alex Kocharin
77182a755d
expose sinopia's version in Server header for debugging purposes
2013-12-10 14:12:34 +04:00
Alex Kocharin
f05a4784fd
fixing crash on bad tags
2013-12-10 13:55:35 +04:00
Alex Kocharin
7f7c056ecd
various bugfixes, camelcase for http headers
2013-12-09 08:00:16 +04:00
Alex Kocharin
bbb402f762
detecting http loops
2013-12-09 07:59:31 +04:00
Alex Kocharin
4d70d8065e
add via tag to prevent loops
2013-12-09 07:58:25 +04:00
Alex Kocharin
2f45649a2c
improving tags support, ref #8
2013-12-08 02:55:50 +04:00
Alex Kocharin
08d1011433
use standard \033 escape sequence for vt esc codes
2013-12-08 02:54:26 +04:00
Alex Kocharin
6e71913c46
setting default timeout to 30 seconds, #18
2013-12-08 02:37:27 +04:00
Alex Kocharin
cc7165dd3c
Merge branch 'master' of github.com:rlidwka/sinopia
2013-12-06 21:49:31 +04:00
Alex Kocharin
a257fc3962
swallow bad auth errors, fixes #17
2013-12-06 21:46:51 +04:00
Alex Kocharin
6a295ac196
don't send etags with errors
2013-12-06 21:46:11 +04:00
Alex Kocharin
9ee8d484db
dealing with internal errors in express.js
2013-12-05 16:31:21 +04:00
Alex Kocharin
7b0ab14d4c
dealing with express.js errors
2013-12-05 16:27:23 +04:00
Brandon Nicholls
1d109f8071
Adding a configurable timeout for each uplink
2013-12-04 12:39:29 -07:00
Alex Kocharin
8f05e141c3
retrieving proxy values from environment if present
2013-11-24 21:08:20 +04:00
Alex Kocharin
1df6d53612
config examples for proxy
2013-11-24 21:07:54 +04:00
Alex Kocharin
13242c8237
add proxy support, fix #13
2013-11-24 21:07:18 +04:00
Alex Kocharin
fecffa2a39
return an appropriate X-Status-Cat header
2013-11-24 21:06:01 +04:00
Alex Kocharin
15d46e3280
log 'new packages directory' message at a warn level
2013-10-26 16:20:42 +04:00
Alex Kocharin
b2f6128e9c
style fix
2013-10-26 16:18:36 +04:00
Alex Kocharin
5da3c8ba58
transaction stub
2013-10-26 15:43:42 +04:00
Alex Kocharin
dafcf8647c
basic support for unpublishing individual versions (local only)
2013-10-23 10:15:17 +04:00
Alex Kocharin
6ae26226eb
removing all tarballs on unpublish --force
2013-10-22 17:33:39 +04:00
Alex Kocharin
3a407396b8
better error logging
2013-10-22 13:37:28 +04:00
Alex Kocharin
782abbb86d
honor etags when making requests
2013-10-22 13:31:48 +04:00
Alex Kocharin
ec26083e81
added a maxage option for uplinks
2013-10-22 12:34:07 +04:00
Alex Kocharin
fea98dfa59
unlink directory when package is unpublished
2013-10-22 11:53:59 +04:00
Alex Kocharin
78f856cf81
shasum check for uploaded tarballs
2013-10-22 11:45:19 +04:00
Alex Kocharin
61658cfbdc
added utils.is_object function for convenience
2013-10-22 11:29:57 +04:00
Alex Kocharin
4c2c4b87c2
calculating sha1sum of uploaded tarballs
2013-10-22 11:12:06 +04:00
Alex Kocharin
5622b2283d
added couchdb-like revisions
2013-10-22 11:00:04 +04:00
Alex Kocharin
8b314040d9
fixing race conditions when updating package data
2013-10-22 09:10:25 +04:00
Alex Kocharin
acc2e571ff
logging didn't work on chunked output
2013-10-19 01:53:27 +04:00
Alex Kocharin
fa51797602
return 500 instead of 404 if local storage is corrupted
2013-10-19 01:35:41 +04:00
Alex Kocharin
3ca3ac2dae
logging fs errors
2013-10-19 01:17:53 +04:00
Alex Kocharin
012892600b
handing JSON.parse errors
2013-10-19 00:46:13 +04:00
Alex Kocharin
674f944942
tweaking fs logger color
2013-10-19 00:45:36 +04:00
Alex Kocharin
1a58a0f8d8
hide authorization header in logs
2013-10-12 18:37:47 +04:00
Alex Kocharin
fcebeea3ee
don't print colors if output stream is not tty
2013-10-12 11:57:59 +04:00
Alex Kocharin
015623f9ae
making various test cases work
2013-10-11 13:50:41 +04:00
Alex Kocharin
957f915d42
fixing a next(err) function called twice
2013-10-11 13:49:00 +04:00
Alex Kocharin
70f717a295
using undefined instead of anonymous for non-logged in users
2013-10-11 09:53:54 +04:00
Alex Kocharin
3596a12eb7
logging caused failure in case of errors
2013-10-11 09:46:37 +04:00