Commit 86e334e4 authored by halcyon's avatar halcyon

last bug?

parent c8d91884
...@@ -9,6 +9,7 @@ urlpatterns = patterns('', ...@@ -9,6 +9,7 @@ urlpatterns = patterns('',
url(r'^search/$', host_search), url(r'^search/$', host_search),
url(r"^host_detail/$", host_detail), url(r"^host_detail/$", host_detail),
url(r"^dept_host_ajax/$", dept_host_ajax), url(r"^dept_host_ajax/$", dept_host_ajax),
url(r"^show_all_ajax/$", show_all_ajax),
url(r'^idc_add/$', idc_add), url(r'^idc_add/$', idc_add),
url(r'^idc_list/$', idc_list), url(r'^idc_list/$', idc_list),
url(r'^idc_edit/$', idc_edit), url(r'^idc_edit/$', idc_edit),
......
...@@ -105,15 +105,23 @@ def batch_host_edit(host_info, j_user='', j_password=''): ...@@ -105,15 +105,23 @@ def batch_host_edit(host_info, j_user='', j_password=''):
groups, depts = [], [] groups, depts = [], []
is_active = {u'是': '1', u'否': '2'} is_active = {u'是': '1', u'否': '2'}
login_types = {'LDAP': 'L', 'MAP': 'M'} login_types = {'LDAP': 'L', 'MAP': 'M'}
for group in j_group[0].split(): a = Asset.objects.get(id=j_id)
c = BisGroup.objects.get(name=group.strip()) if '...' in j_group[0].split():
groups.append(c) groups = a.bis_group.all()
for d in j_dept[0].split(): else:
p = DEPT.objects.get(name=d.strip()) for group in j_group[0].split():
depts.append(p) c = BisGroup.objects.get(name=group.strip())
groups.append(c)
if '...' in j_dept[0].split():
depts = a.dept.all()
else:
for d in j_dept[0].split():
p = DEPT.objects.get(name=d.strip())
depts.append(p)
j_type = login_types[j_type] j_type = login_types[j_type]
j_idc = IDC.objects.get(name=j_idc) j_idc = IDC.objects.get(name=j_idc)
a = Asset.objects.get(id=j_id)
if j_type == 'M': if j_type == 'M':
if a.password != j_password: if a.password != j_password:
j_password = cryptor.decrypt(j_password) j_password = cryptor.decrypt(j_password)
...@@ -140,7 +148,6 @@ def batch_host_edit(host_info, j_user='', j_password=''): ...@@ -140,7 +148,6 @@ def batch_host_edit(host_info, j_user='', j_password=''):
def db_host_delete(request, host_id): def db_host_delete(request, host_id):
""" 删除主机操作 """ """ 删除主机操作 """
print host_id
if is_group_admin(request) and not validate(request, asset=[host_id]): if is_group_admin(request) and not validate(request, asset=[host_id]):
return httperror(request, '删除失败, 您无权删除!') return httperror(request, '删除失败, 您无权删除!')
...@@ -197,7 +204,6 @@ def host_add(request): ...@@ -197,7 +204,6 @@ def host_add(request):
host_info = [j_ip, j_port, j_idc, j_type, j_group, [j_dept], j_active, j_comment] host_info = [j_ip, j_port, j_idc, j_type, j_group, [j_dept], j_active, j_comment]
if is_group_admin(request) and not validate(request, asset_group=j_group, edept=[j_dept]): if is_group_admin(request) and not validate(request, asset_group=j_group, edept=[j_dept]):
print j_dept
return httperror(request, u'添加失败,您无权操作!') return httperror(request, u'添加失败,您无权操作!')
if Asset.objects.filter(ip=str(j_ip)): if Asset.objects.filter(ip=str(j_ip)):
...@@ -430,8 +436,7 @@ def host_del(request, offset): ...@@ -430,8 +436,7 @@ def host_del(request, offset):
host_id = request.POST.get(key) host_id = request.POST.get(key)
db_host_delete(request, host_id) db_host_delete(request, host_id)
else: else:
host_id = int(offset) db_host_delete(request, offset)
db_host_delete(request, host_id)
return HttpResponseRedirect('/jasset/host_list/') return HttpResponseRedirect('/jasset/host_list/')
...@@ -886,6 +891,16 @@ def dept_host_ajax(request): ...@@ -886,6 +891,16 @@ def dept_host_ajax(request):
return my_render('jasset/dept_host_ajax.html', locals(), request) return my_render('jasset/dept_host_ajax.html', locals(), request)
def show_all_ajax(request):
""" 批量修改主机时, 部门和组全部显示 """
env = request.GET.get('env', '')
get_id = request.GET.get('id', '')
host = Asset.objects.filter(id=get_id)
if host:
host = host[0]
return my_render('jasset/show_all_ajax.html', locals(), request)
@require_login @require_login
def host_search(request): def host_search(request):
""" 搜索主机 """ """ 搜索主机 """
......
...@@ -39,6 +39,7 @@ class SudoPerm(models.Model): ...@@ -39,6 +39,7 @@ class SudoPerm(models.Model):
class Apply(models.Model): class Apply(models.Model):
uuid = UUIDField(auto=True) uuid = UUIDField(auto=True)
applyer = models.CharField(max_length=20) applyer = models.CharField(max_length=20)
admin = models.CharField(max_length=20)
approver = models.CharField(max_length=20) approver = models.CharField(max_length=20)
dept = models.CharField(max_length=20) dept = models.CharField(max_length=20)
bisgroup = models.CharField(max_length=500) bisgroup = models.CharField(max_length=500)
...@@ -47,6 +48,7 @@ class Apply(models.Model): ...@@ -47,6 +48,7 @@ class Apply(models.Model):
status = models.IntegerField(max_length=2) status = models.IntegerField(max_length=2)
date_add = models.DateTimeField(null=True) date_add = models.DateTimeField(null=True)
date_end = models.DateTimeField(null=True) date_end = models.DateTimeField(null=True)
read = models.IntegerField(max_length=2)
def __unicode__(self): def __unicode__(self):
return self.applyer return self.applyer
...@@ -676,6 +676,7 @@ def perm_apply(request): ...@@ -676,6 +676,7 @@ def perm_apply(request):
""" 权限申请 """ """ 权限申请 """
header_title, path1, path2 = u'主机权限申请', u'权限管理', u'申请主机' header_title, path1, path2 = u'主机权限申请', u'权限管理', u'申请主机'
user_id, username = get_session_user_info(request)[0:2] user_id, username = get_session_user_info(request)[0:2]
name = User.objects.get(id=user_id).name
dept_id, deptname, dept = get_session_user_info(request)[3:6] dept_id, deptname, dept = get_session_user_info(request)[3:6]
perm_host = user_perm_asset_api(username) perm_host = user_perm_asset_api(username)
all_host = Asset.objects.filter(dept=dept) all_host = Asset.objects.filter(dept=dept)
...@@ -687,6 +688,7 @@ def perm_apply(request): ...@@ -687,6 +688,7 @@ def perm_apply(request):
egroup = [d for d in all_group if d not in perm_group] egroup = [d for d in all_group if d not in perm_group]
dept_da = User.objects.filter(dept_id=dept_id, role='DA') dept_da = User.objects.filter(dept_id=dept_id, role='DA')
admin = User.objects.get(name='admin')
if request.method == 'POST': if request.method == 'POST':
applyer = request.POST.get('applyer') applyer = request.POST.get('applyer')
...@@ -695,14 +697,16 @@ def perm_apply(request): ...@@ -695,14 +697,16 @@ def perm_apply(request):
group = request.POST.getlist('group') group = request.POST.getlist('group')
hosts = request.POST.getlist('hosts') hosts = request.POST.getlist('hosts')
comment = request.POST.get('comment') comment = request.POST.get('comment')
if not da:
return httperror(request, u'请选择管理员!')
da = User.objects.get(id=da) da = User.objects.get(id=da)
mail_address = da.email mail_address = da.email
mail_title = '%s - 权限申请' % username mail_title = '%s - 权限申请' % username
group_lis = ', '.join(group) group_lis = ', '.join(group)
hosts_lis = ', '.join(hosts) hosts_lis = ', '.join(hosts)
time_now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') time_now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
a = Apply.objects.create(applyer=applyer, dept=dept, bisgroup=group, date_add=datetime.datetime.now(), a = Apply.objects.create(applyer=applyer, admin=da, dept=dept, bisgroup=group, date_add=datetime.datetime.now(),
asset=hosts, status=0, comment=comment) asset=hosts, status=0, comment=comment, read=0)
uuid = a.uuid uuid = a.uuid
url = "http://%s:%s/jperm/apply_exec/?uuid=%s" % (SEND_IP, SEND_PORT, uuid) url = "http://%s:%s/jperm/apply_exec/?uuid=%s" % (SEND_IP, SEND_PORT, uuid)
mail_msg = """ mail_msg = """
...@@ -774,9 +778,9 @@ def get_apply_posts(request, status, username, dept_name, keyword=None): ...@@ -774,9 +778,9 @@ def get_apply_posts(request, status, username, dept_name, keyword=None):
posts = post_all.filter(dept=dept_name) posts = post_all.filter(dept=dept_name)
elif is_common_user(request): elif is_common_user(request):
if keyword: if keyword:
posts = post_keyword_all.filter(user=username) posts = post_keyword_all.filter(applyer=username)
else: else:
posts = post_all.filter(user=username) posts = post_all.filter(applyer=username)
return posts return posts
...@@ -786,7 +790,8 @@ def perm_apply_log(request, offset): ...@@ -786,7 +790,8 @@ def perm_apply_log(request, offset):
""" 申请记录 """ """ 申请记录 """
header_title, path1, path2 = u'权限申请记录', u'权限管理', u'申请记录' header_title, path1, path2 = u'权限申请记录', u'权限管理', u'申请记录'
keyword = request.GET.get('keyword', '') keyword = request.GET.get('keyword', '')
username = get_session_user_info(request)[1] user_id = get_session_user_info(request)[0]
username = User.objects.get(id=user_id).name
dept_name = get_session_user_info(request)[4] dept_name = get_session_user_info(request)[4]
status_dic = {'online': 0, 'offline': 1} status_dic = {'online': 0, 'offline': 1}
status = status_dic[offset] status = status_dic[offset]
...@@ -798,8 +803,17 @@ def perm_apply_log(request, offset): ...@@ -798,8 +803,17 @@ def perm_apply_log(request, offset):
@require_login @require_login
def perm_apply_info(request): def perm_apply_info(request):
""" 申请信息详情 """ """ 申请信息详情 """
uuid = request.GET.get('uuid') uuid = request.GET.get('uuid', '')
post = Apply.objects.get(uuid=uuid) post = Apply.objects.filter(uuid=uuid)
username = get_session_user_info(request)[1]
if post:
post = post[0]
if post.read == 0 and post.applyer != username:
post.read = 1
post.save()
else:
return httperror(request, u'没有这个申请记录!')
return render_to_response('jperm/perm_apply_info.html', locals(), context_instance=RequestContext(request)) return render_to_response('jperm/perm_apply_info.html', locals(), context_instance=RequestContext(request))
......
#coding: utf8 #coding: utf8
[base] [base]
ip = 192.168.0.129 ip = 192.168.199.180
port = 80 port = 80
key = 88aaaf7ffe3c6c04 key = 88aaaf7ffe3c6c04
...@@ -16,14 +16,14 @@ database = jumpserver ...@@ -16,14 +16,14 @@ database = jumpserver
[ldap] [ldap]
ldap_enable = 1 ldap_enable = 1
host_url = ldap://127.0.0.1:389 host_url = ldap://192.168.199.180:389
base_dn = dc=jumpserver, dc=org base_dn = dc=jumpserver, dc=org
root_dn = cn=admin,dc=jumpserver,dc=org root_dn = cn=admin,dc=jumpserver,dc=org
root_pw = secret234 root_pw = secret234
[websocket] [websocket]
web_socket_host = 192.168.20.209:3000 web_socket_host = 192.168.199.180:3000
[mail] [mail]
......
from juser.models import User from juser.models import User
from jasset.models import Asset from jasset.models import Asset
from jumpserver.api import * from jumpserver.api import *
from jperm.models import Apply
def name_proc(request): def name_proc(request):
...@@ -17,6 +18,9 @@ def name_proc(request): ...@@ -17,6 +18,9 @@ def name_proc(request):
user_active_num = dept.user_set.filter(is_active=True).count() user_active_num = dept.user_set.filter(is_active=True).count()
host_total_num = dept.asset_set.all().count() host_total_num = dept.asset_set.all().count()
host_active_num = dept.asset_set.all().filter(is_active=True).count() host_active_num = dept.asset_set.all().filter(is_active=True).count()
username = User.objects.get(id=user_id).name
apply_info = Apply.objects.filter(admin=username, status=0, read=0)
request.session.set_expiry(3600) request.session.set_expiry(3600)
info_dic = {'session_user_id': user_id, info_dic = {'session_user_id': user_id,
...@@ -24,7 +28,8 @@ def name_proc(request): ...@@ -24,7 +28,8 @@ def name_proc(request):
'user_total_num': user_total_num, 'user_total_num': user_total_num,
'user_active_num': user_active_num, 'user_active_num': user_active_num,
'host_total_num': host_total_num, 'host_total_num': host_total_num,
'host_active_num': host_active_num} 'host_active_num': host_active_num,
'apply_info': apply_info}
return info_dic return info_dic
...@@ -68,6 +68,15 @@ def group_str2_all(group_list): ...@@ -68,6 +68,15 @@ def group_str2_all(group_list):
return '%s ...' % ' '.join([group.name for group in group_lis[0:2]]) return '%s ...' % ' '.join([group.name for group in group_lis[0:2]])
@register.filter(name='group_dept_all')
def group_dept_all(group_list):
group_lis = []
for i in group_list:
if str(i) != 'ALL':
group_lis.append(i)
return ' '.join([group.name for group in group_lis])
@register.filter(name='group_manage_str') @register.filter(name='group_manage_str')
def group_manage_str(username): def group_manage_str(username):
user = User.objects.get(username=username) user = User.objects.get(username=username)
......
...@@ -16,7 +16,7 @@ from jlog.models import Log ...@@ -16,7 +16,7 @@ from jlog.models import Log
def log_hanler(id): def log_hanler(id):
log = Log.objects.get(id=id) log = Log.objects.get(id=id)
pattern = re.compile(r'([\[.*@.*\][\$#].* | mysql>.*])') pattern = re.compile(r'([\[.*@.*\][\$#].*)|(.*mysql>.*)')
if log: if log:
filename = log.log_path filename = log.log_path
if os.path.isfile(filename): if os.path.isfile(filename):
......
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
<td class="text-center"> {{ post.date_added|date:"Y-m-d H:i:s" }} </td> <td class="text-center"> {{ post.date_added|date:"Y-m-d H:i:s" }} </td>
<td class="text-center" name="j_comment"> {{ post.comment }} </td> <td class="text-center" name="j_comment"> {{ post.comment }} </td>
<td class="text-center" data-editable='false'> <td class="text-center" data-editable='false'>
<a value="/jasset/{{ post.ip }}/" class="iframe btn btn-xs btn-primary">详情</a> <a href="/jasset/host_detail/?id={{ post.id }}" class="iframe btn btn-xs btn-primary">详情</a>
<a href="/jasset/host_edit/?id={{ post.id }}" class="btn btn-xs btn-info">编辑</a> <a href="/jasset/host_edit/?id={{ post.id }}" class="btn btn-xs btn-info">编辑</a>
<a href="/jasset/group_del_host/?id={{ post.id }}&gid={{ group.id }}" class="btn btn-xs btn-danger">删除</a> <a href="/jasset/group_del_host/?id={{ post.id }}&gid={{ group.id }}" class="btn btn-xs btn-danger">删除</a>
</td> </td>
......
...@@ -69,7 +69,9 @@ ...@@ -69,7 +69,9 @@
<td class="text-center" name="j_type"> {{ post.login_type|get_login_type }} </td> <td class="text-center" name="j_type"> {{ post.login_type|get_login_type }} </td>
<td class="text-center" name="j_idc"> {{ post.idc.name }} </td> <td class="text-center" name="j_idc"> {{ post.idc.name }} </td>
<td class="text-center" name="j_dept">{{ post.dept.all | group_str2 }}</td> <td class="text-center" name="j_dept">{{ post.dept.all | group_str2 }}</td>
<!--<td class="text-center" id="j_dept_{{post.id}}" name="j_dept" onclick="show_all('dept', '{{post.id}}')">{{ post.dept.all | group_str2 }}</td>-->
<td class="text-center" name="j_group">{{ post.bis_group.all | group_str2_all }}</td> <td class="text-center" name="j_group">{{ post.bis_group.all | group_str2_all }}</td>
<!--<td class="text-center" id="j_group_{{post.id}}" name="j_group" onclick="show_all('group', '{{post.id}}')">{{ post.bis_group.all | group_str2_all }}</td>-->
<td class="text-center" name="j_active"> {{ post.is_active|bool2str }} </td> <td class="text-center" name="j_active"> {{ post.is_active|bool2str }} </td>
<td class="text-center" name="j_comment"> {{ post.comment }} </td> <td class="text-center" name="j_comment"> {{ post.comment }} </td>
<td class="text-center" data-editable='false'> <td class="text-center" data-editable='false'>
...@@ -98,13 +100,27 @@ ...@@ -98,13 +100,27 @@
</div> </div>
<script> <script>
$('table td').on('change', function(env, id){
var url = "/jasset/show_all_ajax/?env=" + env + "&id=" + id;
console.log(url);
$.ajax({
type: "GET",
url: url,
// data: $("#search_form").serialize(),
success: function (data) {
$("#j_dept_"+id).html(data);
}
});
})
$(document).ready(function(){ $(document).ready(function(){
$('#editable').editableTableWidget(); $('#editable').editableTableWidget({editor: $('<textarea>')});
}); });
function alter(form) { function alter(form) {
selectData = GetTableDataBox(); selectData = GetTableDataBox();
console.log(selectData[0])
if (selectData[1] != 0) { if (selectData[1] != 0) {
$.ajax({ $.ajax({
type: "post", type: "post",
...@@ -113,6 +129,7 @@ ...@@ -113,6 +129,7 @@
success: function (data) { success: function (data) {
alert("修改成功"); alert("修改成功");
window.open("/jasset/host_list/", "_self"); window.open("/jasset/host_list/", "_self");
error: window.open("/jasset/host_list/", "_self");
} }
}); });
} }
...@@ -157,7 +174,19 @@ ...@@ -157,7 +174,19 @@
} }
}) })
function show_all(env, id) {
var url = "/jasset/show_all_ajax/?env=" + env + "&id=" + id;
console.log(url);
$.ajax({
type: "GET",
url: url,
// data: $("#search_form").serialize(),
success: function (data) {
$("#j_group_" + id).html(data);
}
});
}
</script> </script>
{% endblock %} {% endblock %}
\ No newline at end of file
{% load mytags %}
{% ifequal env 'group' %}
{{ host.bis_group.all|group_dept_all }}
{% endifequal %}
{% ifequal env 'dept' %}
{{ host.dept.all|group_dept_all }}
{% endifequal %}
\ No newline at end of file
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
<form id="assetForm" method="post" class="form-horizontal"> <form id="assetForm" method="post" class="form-horizontal">
{% csrf_token %} {% csrf_token %}
<div class="form-group"><label class="col-sm-2 control-label"> 申请人 <span class="red-fonts">*</span></label> <div class="form-group"><label class="col-sm-2 control-label"> 申请人 <span class="red-fonts">*</span></label>
<div class="col-sm-8"><input type="text" name="applyer" value="{{ username }}" class="form-control" readonly="readonly"></div> <div class="col-sm-8"><input type="text" name="applyer" value="{{ name }}" class="form-control" readonly="readonly"></div>
</div> </div>
<div class="hr-line-dashed"></div> <div class="hr-line-dashed"></div>
...@@ -67,10 +67,11 @@ ...@@ -67,10 +67,11 @@
</div> </div>
<div class="hr-line-dashed"></div> <div class="hr-line-dashed"></div>
<div class="form-group" id="j_da"><label class="col-sm-2 control-label"> 部门管理员 <span class="red-fonts">*</span></label> <div class="form-group" id="j_da"><label class="col-sm-2 control-label"> 管理员 <span class="red-fonts">*</span></label>
<div class="radio"> <div class="radio">
<label><input type="radio" value="{{ admin.id }}" name="da"> {{ admin.name }}</label>
{% for da in dept_da %} {% for da in dept_da %}
<label><input type="radio" value="{{ da.id }}" name="da"> {{ da }}</label> <label><input type="radio" value="{{ da.id }}" name="da"> {{ da.name }}</label>
{% endfor %} {% endfor %}
</div> </div>
</div> </div>
......
{% load humanize %}
{% load mytags %}
<nav class="navbar navbar-static-top" role="navigation" style="margin-bottom: 0"> <nav class="navbar navbar-static-top" role="navigation" style="margin-bottom: 0">
<div class="navbar-header"> <div class="navbar-header">
<a class="navbar-minimalize minimalize-styl-2 btn btn-primary " href="#"><i class="fa fa-bars"></i> </a> <a class="navbar-minimalize minimalize-styl-2 btn btn-primary " href="#"><i class="fa fa-bars"></i> </a>
...@@ -13,55 +15,41 @@ ...@@ -13,55 +15,41 @@
</li> </li>
<li class="dropdown"> <li class="dropdown">
<a class="dropdown-toggle count-info" data-toggle="dropdown" href="#"> <a class="dropdown-toggle count-info" data-toggle="dropdown" href="#">
<i class="fa fa-envelope"></i> <span class="label label-warning">{{ message }}</span> <i class="fa fa-envelope"></i> <span class="label label-warning">{{ apply_info.count }}</span>
</a> </a>
<ul class="dropdown-menu dropdown-messages"> <ul class="dropdown-menu dropdown-messages">
<li> {% if apply_info %}
<div class="dropdown-messages-box"> {% for apply in apply_info %}
<a href="profile.html" class="pull-left"> <li>
<img alt="image" class="img-circle" src="/static/img/a7.jpg"> <div class="dropdown-messages-box">
</a> <a href="/jperm/apply_show/online/" class="pull-left">
<div class="media-body"> <img alt="image" class="img-circle" src="/static/img/a4.jpg">
<small class="pull-right">46h ago</small> </a>
<strong>Mike Loreipsum</strong> started following <strong>Monica Smith</strong>. <br> <div class="media-body">
<small class="text-muted">3 days ago at 7:58 pm - 10.06.2014</small> <small class="pull-right text-navy">{{ apply.date_add|naturaltime }}</small>
<strong>{{ apply.applyer }}</strong><br>
<small class="text-muted">主机组: {{ apply.bisgroup|ast_to_list }}</small><br/>
<small class="text-muted">主机: {{ apply.asset|ast_to_list }}</small><br/>
<small class="text-muted">申请时间: {{ apply.date_add|date:"Y-m-d H:i:s" }}</small>
</div>
</div>
</li>
<li class="divider"></li>
{% endfor %}
<li>
<div class="text-center link-block">
<a href="/jperm/apply_show/online/">
<i class="fa fa-envelope"></i> <strong>Read All Messages</strong>
</a>
</div>
</li>
{% else %}
<li>
<div class="text-center link-block">
<i class="fa fa-envelope"></i> <strong>(暂无通知)</strong>
</div> </div>
</div> </li>
</li> {% endif %}
<li class="divider"></li>
<li>
<div class="dropdown-messages-box">
<a href="profile.html" class="pull-left">
<img alt="image" class="img-circle" src="/static/img/a4.jpg">
</a>
<div class="media-body ">
<small class="pull-right text-navy">5h ago</small>
<strong>Chris Johnatan Overtunk</strong> started following <strong>Monica Smith</strong>. <br>
<small class="text-muted">Yesterday 1:21 pm - 11.06.2014</small>
</div>
</div>
</li>
<li class="divider"></li>
<li>
<div class="dropdown-messages-box">
<a href="profile.html" class="pull-left">
<img alt="image" class="img-circle" src="/static/img/profile.jpg">
</a>
<div class="media-body ">
<small class="pull-right">23h ago</small>
<strong>Monica Smith</strong> love <strong>Kim Smith</strong>. <br>
<small class="text-muted">2 days ago at 2:30 am - 11.06.2014</small>
</div>
</div>
</li>
<li class="divider"></li>
<li>
<div class="text-center link-block">
<a href="mailbox.html">
<i class="fa fa-envelope"></i> <strong>Read All Messages</strong>
</a>
</div>
</li>
</ul> </ul>
</li> </li>
<li> <li>
......
...@@ -37,22 +37,22 @@ ...@@ -37,22 +37,22 @@
15 verbose parsed url pathname: 'socket.io@~1.2.0', 15 verbose parsed url pathname: 'socket.io@~1.2.0',
15 verbose parsed url path: 'socket.io@~1.2.0', 15 verbose parsed url path: 'socket.io@~1.2.0',
15 verbose parsed url href: 'socket.io@~1.2.0' } 15 verbose parsed url href: 'socket.io@~1.2.0' }
16 verbose cache add name="express" spec="~4.10.1" args=["express","~4.10.1"] 16 verbose cache add [ 'node-tail@0.0.4', null ]
17 verbose parsed url { protocol: null, 17 verbose cache add name=undefined spec="node-tail@0.0.4" args=["node-tail@0.0.4",null]
17 verbose parsed url slashes: null, 18 verbose parsed url { protocol: null,
17 verbose parsed url auth: null, 18 verbose parsed url slashes: null,
17 verbose parsed url host: null, 18 verbose parsed url auth: null,
17 verbose parsed url port: null, 18 verbose parsed url host: null,
17 verbose parsed url hostname: null, 18 verbose parsed url port: null,
17 verbose parsed url hash: null, 18 verbose parsed url hostname: null,
17 verbose parsed url search: null, 18 verbose parsed url hash: null,
17 verbose parsed url query: null, 18 verbose parsed url search: null,
17 verbose parsed url pathname: '~4.10.1', 18 verbose parsed url query: null,
17 verbose parsed url path: '~4.10.1', 18 verbose parsed url pathname: 'node-tail@0.0.4',
17 verbose parsed url href: '~4.10.1' } 18 verbose parsed url path: 'node-tail@0.0.4',
18 verbose addNamed [ 'express', '~4.10.1' ] 18 verbose parsed url href: 'node-tail@0.0.4' }
19 verbose addNamed [ null, '>=4.10.1-0 <4.11.0-0' ] 19 verbose cache add [ 'tail@~0.4.0', null ]
20 verbose cache add name="socket.io" spec="~1.2.0" args=["socket.io","~1.2.0"] 20 verbose cache add name=undefined spec="tail@~0.4.0" args=["tail@~0.4.0",null]
21 verbose parsed url { protocol: null, 21 verbose parsed url { protocol: null,
21 verbose parsed url slashes: null, 21 verbose parsed url slashes: null,
21 verbose parsed url auth: null, 21 verbose parsed url auth: null,
...@@ -62,39 +62,39 @@ ...@@ -62,39 +62,39 @@
21 verbose parsed url hash: null, 21 verbose parsed url hash: null,
21 verbose parsed url search: null, 21 verbose parsed url search: null,
21 verbose parsed url query: null, 21 verbose parsed url query: null,
21 verbose parsed url pathname: '~1.2.0', 21 verbose parsed url pathname: 'tail@~0.4.0',
21 verbose parsed url path: '~1.2.0', 21 verbose parsed url path: 'tail@~0.4.0',
21 verbose parsed url href: '~1.2.0' } 21 verbose parsed url href: 'tail@~0.4.0' }
22 verbose addNamed [ 'socket.io', '~1.2.0' ] 22 verbose cache add name="express" spec="~4.10.1" args=["express","~4.10.1"]
23 verbose addNamed [ null, '>=1.2.0-0 <1.3.0-0' ] 23 verbose parsed url { protocol: null,
24 verbose cache add [ 'node-tail@0.0.4', null ] 23 verbose parsed url slashes: null,
25 verbose cache add name=undefined spec="node-tail@0.0.4" args=["node-tail@0.0.4",null] 23 verbose parsed url auth: null,
26 verbose parsed url { protocol: null, 23 verbose parsed url host: null,
26 verbose parsed url slashes: null, 23 verbose parsed url port: null,
26 verbose parsed url auth: null, 23 verbose parsed url hostname: null,
26 verbose parsed url host: null, 23 verbose parsed url hash: null,
26 verbose parsed url port: null, 23 verbose parsed url search: null,
26 verbose parsed url hostname: null, 23 verbose parsed url query: null,
26 verbose parsed url hash: null, 23 verbose parsed url pathname: '~4.10.1',
26 verbose parsed url search: null, 23 verbose parsed url path: '~4.10.1',
26 verbose parsed url query: null, 23 verbose parsed url href: '~4.10.1' }
26 verbose parsed url pathname: 'node-tail@0.0.4', 24 verbose addNamed [ 'express', '~4.10.1' ]
26 verbose parsed url path: 'node-tail@0.0.4', 25 verbose addNamed [ null, '>=4.10.1-0 <4.11.0-0' ]
26 verbose parsed url href: 'node-tail@0.0.4' } 26 verbose cache add name="socket.io" spec="~1.2.0" args=["socket.io","~1.2.0"]
27 verbose cache add [ 'tail@~0.4.0', null ] 27 verbose parsed url { protocol: null,
28 verbose cache add name=undefined spec="tail@~0.4.0" args=["tail@~0.4.0",null] 27 verbose parsed url slashes: null,
29 verbose parsed url { protocol: null, 27 verbose parsed url auth: null,
29 verbose parsed url slashes: null, 27 verbose parsed url host: null,
29 verbose parsed url auth: null, 27 verbose parsed url port: null,
29 verbose parsed url host: null, 27 verbose parsed url hostname: null,
29 verbose parsed url port: null, 27 verbose parsed url hash: null,
29 verbose parsed url hostname: null, 27 verbose parsed url search: null,
29 verbose parsed url hash: null, 27 verbose parsed url query: null,
29 verbose parsed url search: null, 27 verbose parsed url pathname: '~1.2.0',
29 verbose parsed url query: null, 27 verbose parsed url path: '~1.2.0',
29 verbose parsed url pathname: 'tail@~0.4.0', 27 verbose parsed url href: '~1.2.0' }
29 verbose parsed url path: 'tail@~0.4.0', 28 verbose addNamed [ 'socket.io', '~1.2.0' ]
29 verbose parsed url href: 'tail@~0.4.0' } 29 verbose addNamed [ null, '>=1.2.0-0 <1.3.0-0' ]
30 verbose cache add name="node-tail" spec="0.0.4" args=["node-tail","0.0.4"] 30 verbose cache add name="node-tail" spec="0.0.4" args=["node-tail","0.0.4"]
31 verbose parsed url { protocol: null, 31 verbose parsed url { protocol: null,
31 verbose parsed url slashes: null, 31 verbose parsed url slashes: null,
...@@ -125,30 +125,30 @@ ...@@ -125,30 +125,30 @@
35 verbose parsed url href: '~0.4.0' } 35 verbose parsed url href: '~0.4.0' }
36 verbose addNamed [ 'tail', '~0.4.0' ] 36 verbose addNamed [ 'tail', '~0.4.0' ]
37 verbose addNamed [ null, '>=0.4.0-0 <0.5.0-0' ] 37 verbose addNamed [ null, '>=0.4.0-0 <0.5.0-0' ]
38 silly makeCacheDir cache dir uid, gid [ 0, 0 ] 38 silly lockFile c572b5f8-express-4-10-1 express@~4.10.1
39 silly lockFile c572b5f8-express-4-10-1 express@~4.10.1 39 verbose lock express@~4.10.1 /root/.npm/c572b5f8-express-4-10-1.lock
40 verbose lock express@~4.10.1 /root/.npm/c572b5f8-express-4-10-1.lock 40 silly lockFile c0bd7c21-socket-io-1-2-0 socket.io@~1.2.0
41 silly lockFile c0bd7c21-socket-io-1-2-0 socket.io@~1.2.0 41 verbose lock socket.io@~1.2.0 /root/.npm/c0bd7c21-socket-io-1-2-0.lock
42 verbose lock socket.io@~1.2.0 /root/.npm/c0bd7c21-socket-io-1-2-0.lock 42 silly lockFile 7bc2e09d-node-tail-0-0-4 node-tail@0.0.4
43 silly lockFile 7bc2e09d-node-tail-0-0-4 node-tail@0.0.4 43 verbose lock node-tail@0.0.4 /root/.npm/7bc2e09d-node-tail-0-0-4.lock
44 verbose lock node-tail@0.0.4 /root/.npm/7bc2e09d-node-tail-0-0-4.lock 44 silly lockFile 81e86088-tail-0-4-0 tail@~0.4.0
45 silly lockFile 81e86088-tail-0-4-0 tail@~0.4.0 45 verbose lock tail@~0.4.0 /root/.npm/81e86088-tail-0-4-0.lock
46 verbose lock tail@~0.4.0 /root/.npm/81e86088-tail-0-4-0.lock 46 silly addNameRange { name: 'express',
47 silly addNameRange { name: 'express', 46 silly addNameRange range: '>=4.10.1-0 <4.11.0-0',
47 silly addNameRange range: '>=4.10.1-0 <4.11.0-0', 46 silly addNameRange hasData: false }
47 silly addNameRange { name: 'socket.io',
47 silly addNameRange range: '>=1.2.0-0 <1.3.0-0',
47 silly addNameRange hasData: false } 47 silly addNameRange hasData: false }
48 silly addNameRange { name: 'socket.io', 48 silly addNameRange { name: 'tail', range: '>=0.4.0-0 <0.5.0-0', hasData: false }
48 silly addNameRange range: '>=1.2.0-0 <1.3.0-0', 49 verbose request where is /express
48 silly addNameRange hasData: false } 50 verbose request registry https://registry.npmjs.org/
49 silly addNameRange { name: 'tail', range: '>=0.4.0-0 <0.5.0-0', hasData: false } 51 verbose request id 07f88b54c82e7f84
50 verbose request where is /express 52 verbose url raw /express
51 verbose request registry https://registry.npmjs.org/ 53 verbose url resolving [ 'https://registry.npmjs.org/', './express' ]
52 verbose request id b01793793819fcd9 54 verbose url resolved https://registry.npmjs.org/express
53 verbose url raw /express 55 verbose request where is https://registry.npmjs.org/express
54 verbose url resolving [ 'https://registry.npmjs.org/', './express' ] 56 info trying registry request attempt 1 at 14:35:44
55 verbose url resolved https://registry.npmjs.org/express 57 verbose etag "2DZR7VK706IS8TAIMH81YR4GQ"
56 verbose request where is https://registry.npmjs.org/express
57 info trying registry request attempt 1 at 14:25:44
58 http GET https://registry.npmjs.org/express 58 http GET https://registry.npmjs.org/express
59 verbose request where is /socket.io 59 verbose request where is /socket.io
60 verbose request registry https://registry.npmjs.org/ 60 verbose request registry https://registry.npmjs.org/
...@@ -156,765 +156,733 @@ ...@@ -156,765 +156,733 @@
62 verbose url resolving [ 'https://registry.npmjs.org/', './socket.io' ] 62 verbose url resolving [ 'https://registry.npmjs.org/', './socket.io' ]
63 verbose url resolved https://registry.npmjs.org/socket.io 63 verbose url resolved https://registry.npmjs.org/socket.io
64 verbose request where is https://registry.npmjs.org/socket.io 64 verbose request where is https://registry.npmjs.org/socket.io
65 info trying registry request attempt 1 at 14:25:44 65 info trying registry request attempt 1 at 14:35:44
66 http GET https://registry.npmjs.org/socket.io 66 verbose etag "U3NL5HWOTJJX5QMHFQLTB5Z1"
67 verbose request where is /node-tail 67 http GET https://registry.npmjs.org/socket.io
68 verbose request registry https://registry.npmjs.org/ 68 verbose request where is /node-tail
69 verbose url raw /node-tail 69 verbose request registry https://registry.npmjs.org/
70 verbose url resolving [ 'https://registry.npmjs.org/', './node-tail' ] 70 verbose url raw /node-tail
71 verbose url resolved https://registry.npmjs.org/node-tail 71 verbose url resolving [ 'https://registry.npmjs.org/', './node-tail' ]
72 verbose request where is https://registry.npmjs.org/node-tail 72 verbose url resolved https://registry.npmjs.org/node-tail
73 info trying registry request attempt 1 at 14:25:44 73 verbose request where is https://registry.npmjs.org/node-tail
74 http GET https://registry.npmjs.org/node-tail 74 info trying registry request attempt 1 at 14:35:44
75 verbose request where is /tail 75 verbose etag "3O3MG0O1PBD2NBRQMCK50UX0W"
76 verbose request registry https://registry.npmjs.org/ 76 http GET https://registry.npmjs.org/node-tail
77 verbose url raw /tail 77 verbose request where is /tail
78 verbose url resolving [ 'https://registry.npmjs.org/', './tail' ] 78 verbose request registry https://registry.npmjs.org/
79 verbose url resolved https://registry.npmjs.org/tail 79 verbose url raw /tail
80 verbose request where is https://registry.npmjs.org/tail 80 verbose url resolving [ 'https://registry.npmjs.org/', './tail' ]
81 info trying registry request attempt 1 at 14:25:44 81 verbose url resolved https://registry.npmjs.org/tail
82 http GET https://registry.npmjs.org/tail 82 verbose request where is https://registry.npmjs.org/tail
83 http 200 https://registry.npmjs.org/tail 83 info trying registry request attempt 1 at 14:35:44
84 silly registry.get cb [ 200, 84 verbose etag "92054A71KHLQVZ7G0DFM0WOD7"
84 silly registry.get { date: 'Thu, 09 Apr 2015 06:25:45 GMT', 85 http GET https://registry.npmjs.org/tail
84 silly registry.get server: 'CouchDB/1.5.0 (Erlang OTP/R16B03)', 86 http 304 https://registry.npmjs.org/express
84 silly registry.get etag: '"C9AIR53EVM8NBBGXJRBQ2E57K"', 87 silly registry.get cb [ 304,
84 silly registry.get 'content-type': 'application/json', 87 silly registry.get { date: 'Sun, 19 Apr 2015 06:35:45 GMT',
84 silly registry.get 'cache-control': 'max-age=60', 87 silly registry.get server: 'Apache',
84 silly registry.get 'content-length': '17175', 87 silly registry.get via: '1.1 varnish',
84 silly registry.get 'accept-ranges': 'bytes', 87 silly registry.get 'last-modified': 'Sun, 19 Apr 2015 06:35:45 GMT',
84 silly registry.get via: '1.1 varnish', 87 silly registry.get 'cache-control': 'max-age=60',
84 silly registry.get age: '0', 87 silly registry.get etag: '"2DZR7VK706IS8TAIMH81YR4GQ"',
84 silly registry.get 'x-served-by': 'cache-nrt6131-NRT', 87 silly registry.get age: '6',
84 silly registry.get 'x-cache': 'MISS', 87 silly registry.get 'x-served-by': 'cache-nrt6128-NRT',
84 silly registry.get 'x-cache-hits': '0', 87 silly registry.get 'x-cache': 'HIT',
84 silly registry.get 'x-timer': 'S1428560745.664080,VS0,VE330', 87 silly registry.get 'x-cache-hits': '1',
84 silly registry.get vary: 'Accept', 87 silly registry.get 'x-timer': 'S1429425345.256295,VS0,VE4',
84 silly registry.get 'keep-alive': 'timeout=10, max=50', 87 silly registry.get vary: 'Accept',
84 silly registry.get connection: 'Keep-Alive' } ] 87 silly registry.get 'content-length': '0',
85 silly addNameRange number 2 { name: 'tail', range: '>=0.4.0-0 <0.5.0-0', hasData: true } 87 silly registry.get 'keep-alive': 'timeout=10, max=50',
86 silly addNameRange versions [ 'tail', 87 silly registry.get connection: 'Keep-Alive' } ]
86 silly addNameRange [ '0.0.3', 88 verbose etag https://registry.npmjs.org/express from cache
86 silly addNameRange '0.0.4', 89 silly addNameRange number 2 { name: 'express', range: '>=4.10.1-0 <4.11.0-0', hasData: true }
86 silly addNameRange '0.1.0', 90 silly addNameRange versions [ 'express',
86 silly addNameRange '0.1.1', 90 silly addNameRange [ '0.14.0',
86 silly addNameRange '0.1.2', 90 silly addNameRange '0.14.1',
86 silly addNameRange '0.2.0', 90 silly addNameRange '1.0.0',
86 silly addNameRange '0.2.1', 90 silly addNameRange '1.0.1',
86 silly addNameRange '0.2.2', 90 silly addNameRange '1.0.2',
86 silly addNameRange '0.2.3', 90 silly addNameRange '1.0.3',
86 silly addNameRange '0.2.4', 90 silly addNameRange '1.0.4',
86 silly addNameRange '0.3.0', 90 silly addNameRange '1.0.5',
86 silly addNameRange '0.3.1', 90 silly addNameRange '1.0.6',
86 silly addNameRange '0.3.2', 90 silly addNameRange '1.0.7',
86 silly addNameRange '0.3.5', 90 silly addNameRange '1.0.8',
86 silly addNameRange '0.3.6', 90 silly addNameRange '2.0.0',
86 silly addNameRange '0.3.7', 90 silly addNameRange '2.1.0',
86 silly addNameRange '0.3.8', 90 silly addNameRange '2.1.1',
86 silly addNameRange '0.3.9', 90 silly addNameRange '2.2.0',
86 silly addNameRange '0.4.0' ] ] 90 silly addNameRange '2.2.1',
87 verbose addNamed [ 'tail', '0.4.0' ] 90 silly addNameRange '2.2.2',
88 verbose addNamed [ '0.4.0', '0.4.0' ] 90 silly addNameRange '2.3.0',
89 silly lockFile e7d4c0e4-tail-0-4-0 tail@0.4.0 90 silly addNameRange '2.3.1',
90 verbose lock tail@0.4.0 /root/.npm/e7d4c0e4-tail-0-4-0.lock 90 silly addNameRange '2.3.2',
91 silly lockFile 8067702d-ry-npmjs-org-tail-tail-0-4-0-tgz https://registry.npmjs.org/tail/-/tail-0.4.0.tgz 90 silly addNameRange '2.3.3',
92 verbose lock https://registry.npmjs.org/tail/-/tail-0.4.0.tgz /root/.npm/8067702d-ry-npmjs-org-tail-tail-0-4-0-tgz.lock 90 silly addNameRange '2.3.4',
93 verbose addRemoteTarball [ 'https://registry.npmjs.org/tail/-/tail-0.4.0.tgz', 90 silly addNameRange '2.3.5',
93 verbose addRemoteTarball 'd29de72750cc99db1e053aff13c359ecfb713002' ] 90 silly addNameRange '2.3.6',
94 info retry fetch attempt 1 at 14:25:46 90 silly addNameRange '2.3.7',
95 verbose fetch to= /tmp/npm-25723-hzRsuUDH/registry.npmjs.org/tail/-/tail-0.4.0.tgz 90 silly addNameRange '2.3.8',
96 http GET https://registry.npmjs.org/tail/-/tail-0.4.0.tgz 90 silly addNameRange '2.3.9',
97 http 200 https://registry.npmjs.org/node-tail 90 silly addNameRange '2.3.10',
98 silly registry.get cb [ 200, 90 silly addNameRange '2.3.11',
98 silly registry.get { date: 'Thu, 09 Apr 2015 06:25:46 GMT', 90 silly addNameRange '2.3.12',
98 silly registry.get server: 'CouchDB/1.5.0 (Erlang OTP/R16B03)', 90 silly addNameRange '2.4.0',
98 silly registry.get etag: '"3O3MG0O1PBD2NBRQMCK50UX0W"', 90 silly addNameRange '2.4.1',
98 silly registry.get 'content-type': 'application/json', 90 silly addNameRange '2.4.2',
98 silly registry.get 'cache-control': 'max-age=60', 90 silly addNameRange '2.4.3',
98 silly registry.get 'content-length': '4600', 90 silly addNameRange '2.4.4',
98 silly registry.get 'accept-ranges': 'bytes', 90 silly addNameRange '2.4.5',
98 silly registry.get via: '1.1 varnish', 90 silly addNameRange '2.4.6',
98 silly registry.get age: '0', 90 silly addNameRange '2.4.7',
98 silly registry.get 'x-served-by': 'cache-nrt6131-NRT', 90 silly addNameRange '2.5.0',
98 silly registry.get 'x-cache': 'MISS', 90 silly addNameRange '2.5.1',
98 silly registry.get 'x-cache-hits': '0', 90 silly addNameRange '2.5.2',
98 silly registry.get 'x-timer': 'S1428560745.575766,VS0,VE756', 90 silly addNameRange '2.5.3',
98 silly registry.get vary: 'Accept', 90 silly addNameRange '2.5.4',
98 silly registry.get 'keep-alive': 'timeout=10, max=50', 90 silly addNameRange '2.5.5',
98 silly registry.get connection: 'Keep-Alive' } ] 90 silly addNameRange '2.5.6',
99 silly lockFile 9e6ddce3-rg-node-tail-node-tail-0-0-4-tgz https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz 90 silly addNameRange '2.5.7',
100 verbose lock https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz /root/.npm/9e6ddce3-rg-node-tail-node-tail-0-0-4-tgz.lock 90 silly addNameRange '2.5.8',
101 verbose addRemoteTarball [ 'https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz', 90 silly addNameRange '2.5.9',
101 verbose addRemoteTarball '60d6456c71a22427ebe794565cb1954709978501' ] 90 silly addNameRange '2.5.10',
102 info retry fetch attempt 1 at 14:25:46 90 silly addNameRange '2.5.11',
103 verbose fetch to= /tmp/npm-25723-hzRsuUDH/registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz 90 silly addNameRange '3.0.0',
104 http GET https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz 90 silly addNameRange '3.0.1',
105 http 200 https://registry.npmjs.org/socket.io 90 silly addNameRange '3.0.2',
106 silly registry.get cb [ 200, 90 silly addNameRange '3.0.3',
106 silly registry.get { date: 'Thu, 09 Apr 2015 06:25:45 GMT', 90 silly addNameRange '3.0.4',
106 silly registry.get server: 'CouchDB/1.5.0 (Erlang OTP/R16B03)', 90 silly addNameRange '3.0.5',
106 silly registry.get etag: '"2DXCIXNLVU70Z8PJHO5V9XB6E"', 90 silly addNameRange '3.0.6',
106 silly registry.get 'content-type': 'application/json', 90 silly addNameRange '3.1.0',
106 silly registry.get 'cache-control': 'max-age=60', 90 silly addNameRange '3.1.1',
106 silly registry.get 'content-length': '111044', 90 silly addNameRange '3.1.2',
106 silly registry.get 'accept-ranges': 'bytes', 90 silly addNameRange '3.2.0',
106 silly registry.get via: '1.1 varnish', 90 silly addNameRange '3.2.1',
106 silly registry.get age: '7', 90 silly addNameRange '3.2.2',
106 silly registry.get 'x-served-by': 'cache-nrt6126-NRT', 90 silly addNameRange '3.2.3',
106 silly registry.get 'x-cache': 'HIT', 90 silly addNameRange '3.2.4',
106 silly registry.get 'x-cache-hits': '1', 90 silly addNameRange '3.2.5',
106 silly registry.get 'x-timer': 'S1428560745.573669,VS0,VE1', 90 silly addNameRange '3.2.6',
106 silly registry.get vary: 'Accept', 90 silly addNameRange '3.3.0',
106 silly registry.get 'keep-alive': 'timeout=10, max=50', 90 silly addNameRange '3.3.1',
106 silly registry.get connection: 'Keep-Alive' } ] 90 silly addNameRange '3.3.2',
107 silly addNameRange number 2 { name: 'socket.io', range: '>=1.2.0-0 <1.3.0-0', hasData: true } 90 silly addNameRange '3.3.3',
108 silly addNameRange versions [ 'socket.io', 90 silly addNameRange '3.3.4',
108 silly addNameRange [ '0.3.8', 90 silly addNameRange '3.3.5',
108 silly addNameRange '0.4.0', 90 silly addNameRange '3.3.6',
108 silly addNameRange '0.4.1', 90 silly addNameRange '1.0.0-beta',
108 silly addNameRange '0.5.1', 90 silly addNameRange '1.0.0-beta2',
108 silly addNameRange '0.5.3', 90 silly addNameRange '1.0.0-rc',
108 silly addNameRange '0.6.0', 90 silly addNameRange '1.0.0-rc2',
108 silly addNameRange '0.6.1', 90 silly addNameRange '1.0.0-rc3',
108 silly addNameRange '0.6.3', 90 silly addNameRange '1.0.0-rc4',
108 silly addNameRange '0.6.4', 90 silly addNameRange '2.0.0-beta',
108 silly addNameRange '0.6.5', 90 silly addNameRange '2.0.0-beta2',
108 silly addNameRange '0.6.6', 90 silly addNameRange '2.0.0-beta3',
108 silly addNameRange '0.6.7', 90 silly addNameRange '2.0.0-rc',
108 silly addNameRange '0.6.8', 90 silly addNameRange '2.0.0-rc2',
108 silly addNameRange '0.6.9', 90 silly addNameRange '2.0.0-rc3',
108 silly addNameRange '0.6.10', 90 silly addNameRange '3.0.0-alpha1',
108 silly addNameRange '0.6.11', 90 silly addNameRange '3.0.0-alpha2',
108 silly addNameRange '0.6.12', 90 silly addNameRange '3.0.0-alpha3',
108 silly addNameRange '0.6.14', 90 silly addNameRange '3.0.0-alpha4',
108 silly addNameRange '0.6.15', 90 silly addNameRange '3.0.0-alpha5',
108 silly addNameRange '0.6.16', 90 silly addNameRange '3.0.0-beta1',
108 silly addNameRange '0.6.17', 90 silly addNameRange '3.0.0-beta2',
108 silly addNameRange '0.6.18', 90 silly addNameRange '3.0.0-beta3',
108 silly addNameRange '0.7.0', 90 silly addNameRange '3.0.0-beta4',
108 silly addNameRange '0.7.1', 90 silly addNameRange '3.0.0-beta6',
108 silly addNameRange '0.7.2', 90 silly addNameRange '3.0.0-beta7',
108 silly addNameRange '0.7.3', 90 silly addNameRange '3.0.0-rc1',
108 silly addNameRange '0.7.4', 90 silly addNameRange '3.0.0-rc2',
108 silly addNameRange '0.7.5', 90 silly addNameRange '3.0.0-rc3',
108 silly addNameRange '0.7.6', 90 silly addNameRange '3.0.0-rc4',
108 silly addNameRange '0.7.7', 90 silly addNameRange '3.0.0-rc5',
108 silly addNameRange '0.7.8', 90 silly addNameRange '3.3.7',
108 silly addNameRange '0.7.9', 90 silly addNameRange '3.3.8',
108 silly addNameRange '0.7.10', 90 silly addNameRange '3.4.0',
108 silly addNameRange '0.7.11', 90 silly addNameRange '3.4.1',
108 silly addNameRange '0.8.0', 90 silly addNameRange '3.4.2',
108 silly addNameRange '0.8.1', 90 silly addNameRange '3.4.3',
108 silly addNameRange '0.8.2', 90 silly addNameRange '3.4.4',
108 silly addNameRange '0.8.3', 90 silly addNameRange '3.4.5',
108 silly addNameRange '0.8.4', 90 silly addNameRange '3.4.6',
108 silly addNameRange '0.8.5', 90 silly addNameRange '3.4.7',
108 silly addNameRange '0.8.6', 90 silly addNameRange '3.4.8',
108 silly addNameRange '0.8.7', 90 silly addNameRange '4.0.0-rc1',
108 silly addNameRange '0.9.0', 90 silly addNameRange '4.0.0-rc2',
108 silly addNameRange '0.9.1', 90 silly addNameRange '3.5.0',
108 silly addNameRange '0.9.1-1', 90 silly addNameRange '4.0.0-rc3',
108 silly addNameRange '0.9.2', 90 silly addNameRange '4.0.0-rc4',
108 silly addNameRange '0.9.3', 90 silly addNameRange '3.5.1',
108 silly addNameRange '0.9.4', 90 silly addNameRange '4.0.0',
108 silly addNameRange '0.9.5', 90 silly addNameRange '3.5.2',
108 silly addNameRange '0.9.6', 90 silly addNameRange '4.1.0',
108 silly addNameRange '0.9.7', 90 silly addNameRange '4.1.1',
108 silly addNameRange '0.9.8', 90 silly addNameRange '3.5.3',
108 silly addNameRange '0.9.9', 90 silly addNameRange '4.1.2',
108 silly addNameRange '0.9.10', 90 silly addNameRange '3.6.0',
108 silly addNameRange '0.9.11', 90 silly addNameRange '4.2.0',
108 silly addNameRange '0.9.12', 90 silly addNameRange '3.7.0',
108 silly addNameRange '0.9.13', 90 silly addNameRange '3.8.0',
108 silly addNameRange '0.9.14', 90 silly addNameRange '4.3.0',
108 silly addNameRange '0.9.15', 90 silly addNameRange '4.3.1',
108 silly addNameRange '0.9.16', 90 silly addNameRange '3.8.1',
108 silly addNameRange '1.0.0-pre', 90 silly addNameRange '4.3.2',
108 silly addNameRange '1.0.0-pre2', 90 silly addNameRange '3.9.0',
108 silly addNameRange '1.0.0-pre3', 90 silly addNameRange '4.4.0',
108 silly addNameRange '1.0.0-pre4', 90 silly addNameRange '4.4.1',
108 silly addNameRange '1.0.0-pre5', 90 silly addNameRange '3.10.0',
108 silly addNameRange '0.9.17', 90 silly addNameRange '3.10.1',
108 silly addNameRange '1.0.0', 90 silly addNameRange '3.10.2',
108 silly addNameRange '1.0.1', 90 silly addNameRange '3.10.3',
108 silly addNameRange '1.0.2', 90 silly addNameRange '3.10.4',
108 silly addNameRange '1.0.3', 90 silly addNameRange '4.4.2',
108 silly addNameRange '1.0.4', 90 silly addNameRange '3.10.5',
108 silly addNameRange '1.0.5', 90 silly addNameRange '4.4.3',
108 silly addNameRange '1.0.6', 90 silly addNameRange '3.11.0',
108 silly addNameRange '1.1.0', 90 silly addNameRange '4.4.4',
108 silly addNameRange '1.2.0', 90 silly addNameRange '3.12.0',
108 silly addNameRange '1.2.1', 90 silly addNameRange '3.12.1',
108 silly addNameRange '1.3.0', 90 silly addNameRange '4.4.5',
108 silly addNameRange '1.3.1', 90 silly addNameRange '3.13.0',
108 silly addNameRange '1.3.2', 90 silly addNameRange '4.5.0',
108 silly addNameRange '1.3.3', 90 silly addNameRange '4.5.1',
108 silly addNameRange '1.3.4', 90 silly addNameRange '3.14.0',
108 silly addNameRange '1.3.5' ] ] 90 silly addNameRange '4.6.0',
109 verbose addNamed [ 'socket.io', '1.2.1' ] 90 silly addNameRange '4.6.1',
110 verbose addNamed [ '1.2.1', '1.2.1' ] 90 silly addNameRange '3.15.0',
111 silly lockFile 77e414a6-socket-io-1-2-1 socket.io@1.2.1 90 silly addNameRange '4.7.0',
112 verbose lock socket.io@1.2.1 /root/.npm/77e414a6-socket-io-1-2-1.lock 90 silly addNameRange '3.15.1',
113 silly lockFile 03c4f5da-rg-socket-io-socket-io-1-2-1-tgz https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz 90 silly addNameRange '4.7.1',
114 verbose lock https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz /root/.npm/03c4f5da-rg-socket-io-socket-io-1-2-1-tgz.lock 90 silly addNameRange '3.15.2',
115 verbose addRemoteTarball [ 'https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz', 90 silly addNameRange '4.7.2',
115 verbose addRemoteTarball '84400af534c0d32baa9ac88937eedb5b8465ee92' ] 90 silly addNameRange '4.7.3',
116 info retry fetch attempt 1 at 14:25:46 90 silly addNameRange '3.15.3',
117 verbose fetch to= /tmp/npm-25723-hzRsuUDH/registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz 90 silly addNameRange '4.7.4',
118 http GET https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz 90 silly addNameRange '3.16.0',
119 http 200 https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz 90 silly addNameRange '4.8.0',
120 silly lockFile 9e6ddce3-rg-node-tail-node-tail-0-0-4-tgz https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz 90 silly addNameRange '3.16.1',
121 silly lockFile 9e6ddce3-rg-node-tail-node-tail-0-0-4-tgz https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz 90 silly addNameRange '4.8.1',
122 silly lockFile 7bc2e09d-node-tail-0-0-4 node-tail@0.0.4 90 silly addNameRange '3.16.2',
123 silly lockFile 7bc2e09d-node-tail-0-0-4 node-tail@0.0.4 90 silly addNameRange '4.8.2',
124 http 200 https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz 90 silly addNameRange '3.16.3',
125 http 200 https://registry.npmjs.org/tail/-/tail-0.4.0.tgz 90 silly addNameRange '3.16.4',
126 silly lockFile 8067702d-ry-npmjs-org-tail-tail-0-4-0-tgz https://registry.npmjs.org/tail/-/tail-0.4.0.tgz 90 silly addNameRange '4.8.3',
127 silly lockFile 8067702d-ry-npmjs-org-tail-tail-0-4-0-tgz https://registry.npmjs.org/tail/-/tail-0.4.0.tgz 90 silly addNameRange '3.16.5',
128 silly lockFile e7d4c0e4-tail-0-4-0 tail@0.4.0 90 silly addNameRange '3.16.6',
129 silly lockFile e7d4c0e4-tail-0-4-0 tail@0.4.0 90 silly addNameRange '4.8.4',
130 silly lockFile 81e86088-tail-0-4-0 tail@~0.4.0 90 silly addNameRange '3.16.7',
131 silly lockFile 81e86088-tail-0-4-0 tail@~0.4.0 90 silly addNameRange '4.8.5',
132 http 200 https://registry.npmjs.org/express 90 silly addNameRange '3.16.8',
133 silly registry.get cb [ 200, 90 silly addNameRange '4.8.6',
133 silly registry.get { date: 'Thu, 09 Apr 2015 06:25:45 GMT', 90 silly addNameRange '3.16.9',
133 silly registry.get server: 'CouchDB/1.5.0 (Erlang OTP/R16B03)', 90 silly addNameRange '4.8.7',
133 silly registry.get etag: '"9UQXXU09GJOSW3WO2L58ANAHK"', 90 silly addNameRange '3.16.10',
133 silly registry.get 'content-type': 'application/json', 90 silly addNameRange '4.8.8',
133 silly registry.get 'cache-control': 'max-age=60', 90 silly addNameRange '3.17.0',
133 silly registry.get 'content-length': '492110', 90 silly addNameRange '3.17.1',
133 silly registry.get 'accept-ranges': 'bytes', 90 silly addNameRange '4.9.0',
133 silly registry.get via: '1.1 varnish', 90 silly addNameRange '3.17.2',
133 silly registry.get age: '16', 90 silly addNameRange '4.9.1',
133 silly registry.get 'x-served-by': 'cache-nrt6126-NRT', 90 silly addNameRange '4.9.2',
133 silly registry.get 'x-cache': 'HIT', 90 silly addNameRange '3.17.3',
133 silly registry.get 'x-cache-hits': '2', 90 silly addNameRange '4.9.3',
133 silly registry.get 'x-timer': 'S1428560745.583395,VS0,VE0', 90 silly addNameRange '3.17.4',
133 silly registry.get vary: 'Accept', 90 silly addNameRange '4.9.4',
133 silly registry.get 'keep-alive': 'timeout=10, max=50', 90 silly addNameRange '3.17.5',
133 silly registry.get connection: 'Keep-Alive' } ] 90 silly addNameRange '4.9.5',
134 silly addNameRange number 2 { name: 'express', range: '>=4.10.1-0 <4.11.0-0', hasData: true } 90 silly addNameRange '3.17.6',
135 silly addNameRange versions [ 'express', 90 silly addNameRange '3.17.7',
135 silly addNameRange [ '0.14.0', 90 silly addNameRange '4.9.6',
135 silly addNameRange '0.14.1', 90 silly addNameRange '4.9.7',
135 silly addNameRange '1.0.0', 90 silly addNameRange '3.17.8',
135 silly addNameRange '1.0.1', 90 silly addNameRange '4.9.8',
135 silly addNameRange '1.0.2', 90 silly addNameRange '3.18.0',
135 silly addNameRange '1.0.3', 90 silly addNameRange '3.18.1',
135 silly addNameRange '1.0.4', 90 silly addNameRange '4.10.0',
135 silly addNameRange '1.0.5', 90 silly addNameRange '3.18.2',
135 silly addNameRange '1.0.6', 90 silly addNameRange '4.10.1',
135 silly addNameRange '1.0.7', 90 silly addNameRange '5.0.0-alpha.1',
135 silly addNameRange '1.0.8', 90 silly addNameRange '3.18.3',
135 silly addNameRange '2.0.0', 90 silly addNameRange '4.10.2',
135 silly addNameRange '2.1.0', 90 silly addNameRange '3.18.4',
135 silly addNameRange '2.1.1', 90 silly addNameRange '4.10.3',
135 silly addNameRange '2.2.0', 90 silly addNameRange '4.10.4',
135 silly addNameRange '2.2.1', 90 silly addNameRange '4.10.5',
135 silly addNameRange '2.2.2', 90 silly addNameRange '3.18.5',
135 silly addNameRange '2.3.0', 90 silly addNameRange '3.18.6',
135 silly addNameRange '2.3.1', 90 silly addNameRange '4.10.6',
135 silly addNameRange '2.3.2', 90 silly addNameRange '4.10.7',
135 silly addNameRange '2.3.3', 90 silly addNameRange '3.19.0',
135 silly addNameRange '2.3.4', 90 silly addNameRange '4.10.8',
135 silly addNameRange '2.3.5', 90 silly addNameRange '4.11.0',
135 silly addNameRange '2.3.6', 90 silly addNameRange '3.19.1',
135 silly addNameRange '2.3.7', 90 silly addNameRange '4.11.1',
135 silly addNameRange '2.3.8', 90 silly addNameRange '3.19.2',
135 silly addNameRange '2.3.9', 90 silly addNameRange '4.11.2',
135 silly addNameRange '2.3.10', 90 silly addNameRange '3.20.0',
135 silly addNameRange '2.3.11', 90 silly addNameRange '4.12.0',
135 silly addNameRange '2.3.12', 90 silly addNameRange '3.20.1',
135 silly addNameRange '2.4.0', 90 silly addNameRange '4.12.1',
135 silly addNameRange '2.4.1', 90 silly addNameRange '4.12.2',
135 silly addNameRange '2.4.2', 90 silly addNameRange '3.20.2',
135 silly addNameRange '2.4.3', 90 silly addNameRange '4.12.3' ] ]
135 silly addNameRange '2.4.4', 91 verbose addNamed [ 'express', '4.10.8' ]
135 silly addNameRange '2.4.5', 92 verbose addNamed [ '4.10.8', '4.10.8' ]
135 silly addNameRange '2.4.6', 93 silly lockFile 44558bf5-express-4-10-8 express@4.10.8
135 silly addNameRange '2.4.7', 94 verbose lock express@4.10.8 /root/.npm/44558bf5-express-4-10-8.lock
135 silly addNameRange '2.5.0', 95 silly lockFile 44558bf5-express-4-10-8 express@4.10.8
135 silly addNameRange '2.5.1', 96 silly lockFile 44558bf5-express-4-10-8 express@4.10.8
135 silly addNameRange '2.5.2', 97 silly lockFile c572b5f8-express-4-10-1 express@~4.10.1
135 silly addNameRange '2.5.3', 98 silly lockFile c572b5f8-express-4-10-1 express@~4.10.1
135 silly addNameRange '2.5.4', 99 http 304 https://registry.npmjs.org/socket.io
135 silly addNameRange '2.5.5', 100 silly registry.get cb [ 304,
135 silly addNameRange '2.5.6', 100 silly registry.get { date: 'Sun, 19 Apr 2015 06:35:45 GMT',
135 silly addNameRange '2.5.7', 100 silly registry.get server: 'Apache',
135 silly addNameRange '2.5.8', 100 silly registry.get via: '1.1 varnish',
135 silly addNameRange '2.5.9', 100 silly registry.get 'last-modified': 'Sun, 19 Apr 2015 06:35:45 GMT',
135 silly addNameRange '2.5.10', 100 silly registry.get 'cache-control': 'max-age=60',
135 silly addNameRange '2.5.11', 100 silly registry.get etag: '"U3NL5HWOTJJX5QMHFQLTB5Z1"',
135 silly addNameRange '3.0.0', 100 silly registry.get age: '0',
135 silly addNameRange '3.0.1', 100 silly registry.get 'x-served-by': 'cache-nrt6120-NRT',
135 silly addNameRange '3.0.2', 100 silly registry.get 'x-cache': 'HIT',
135 silly addNameRange '3.0.3', 100 silly registry.get 'x-cache-hits': '1',
135 silly addNameRange '3.0.4', 100 silly registry.get 'x-timer': 'S1429425345.256029,VS0,VE173',
135 silly addNameRange '3.0.5', 100 silly registry.get vary: 'Accept',
135 silly addNameRange '3.0.6', 100 silly registry.get 'content-length': '0',
135 silly addNameRange '3.1.0', 100 silly registry.get 'keep-alive': 'timeout=10, max=50',
135 silly addNameRange '3.1.1', 100 silly registry.get connection: 'Keep-Alive' } ]
135 silly addNameRange '3.1.2', 101 verbose etag https://registry.npmjs.org/socket.io from cache
135 silly addNameRange '3.2.0', 102 silly addNameRange number 2 { name: 'socket.io', range: '>=1.2.0-0 <1.3.0-0', hasData: true }
135 silly addNameRange '3.2.1', 103 silly addNameRange versions [ 'socket.io',
135 silly addNameRange '3.2.2', 103 silly addNameRange [ '0.3.8',
135 silly addNameRange '3.2.3', 103 silly addNameRange '0.4.0',
135 silly addNameRange '3.2.4', 103 silly addNameRange '0.4.1',
135 silly addNameRange '3.2.5', 103 silly addNameRange '0.5.1',
135 silly addNameRange '3.2.6', 103 silly addNameRange '0.5.3',
135 silly addNameRange '3.3.0', 103 silly addNameRange '0.6.0',
135 silly addNameRange '3.3.1', 103 silly addNameRange '0.6.1',
135 silly addNameRange '3.3.2', 103 silly addNameRange '0.6.3',
135 silly addNameRange '3.3.3', 103 silly addNameRange '0.6.4',
135 silly addNameRange '3.3.4', 103 silly addNameRange '0.6.5',
135 silly addNameRange '3.3.5', 103 silly addNameRange '0.6.6',
135 silly addNameRange '3.3.6', 103 silly addNameRange '0.6.7',
135 silly addNameRange '1.0.0-beta', 103 silly addNameRange '0.6.8',
135 silly addNameRange '1.0.0-beta2', 103 silly addNameRange '0.6.9',
135 silly addNameRange '1.0.0-rc', 103 silly addNameRange '0.6.10',
135 silly addNameRange '1.0.0-rc2', 103 silly addNameRange '0.6.11',
135 silly addNameRange '1.0.0-rc3', 103 silly addNameRange '0.6.12',
135 silly addNameRange '1.0.0-rc4', 103 silly addNameRange '0.6.14',
135 silly addNameRange '2.0.0-beta', 103 silly addNameRange '0.6.15',
135 silly addNameRange '2.0.0-beta2', 103 silly addNameRange '0.6.16',
135 silly addNameRange '2.0.0-beta3', 103 silly addNameRange '0.6.17',
135 silly addNameRange '2.0.0-rc', 103 silly addNameRange '0.6.18',
135 silly addNameRange '2.0.0-rc2', 103 silly addNameRange '0.7.0',
135 silly addNameRange '2.0.0-rc3', 103 silly addNameRange '0.7.1',
135 silly addNameRange '3.0.0-alpha1', 103 silly addNameRange '0.7.2',
135 silly addNameRange '3.0.0-alpha2', 103 silly addNameRange '0.7.3',
135 silly addNameRange '3.0.0-alpha3', 103 silly addNameRange '0.7.4',
135 silly addNameRange '3.0.0-alpha4', 103 silly addNameRange '0.7.5',
135 silly addNameRange '3.0.0-alpha5', 103 silly addNameRange '0.7.6',
135 silly addNameRange '3.0.0-beta1', 103 silly addNameRange '0.7.7',
135 silly addNameRange '3.0.0-beta2', 103 silly addNameRange '0.7.8',
135 silly addNameRange '3.0.0-beta3', 103 silly addNameRange '0.7.9',
135 silly addNameRange '3.0.0-beta4', 103 silly addNameRange '0.7.10',
135 silly addNameRange '3.0.0-beta6', 103 silly addNameRange '0.7.11',
135 silly addNameRange '3.0.0-beta7', 103 silly addNameRange '0.8.0',
135 silly addNameRange '3.0.0-rc1', 103 silly addNameRange '0.8.1',
135 silly addNameRange '3.0.0-rc2', 103 silly addNameRange '0.8.2',
135 silly addNameRange '3.0.0-rc3', 103 silly addNameRange '0.8.3',
135 silly addNameRange '3.0.0-rc4', 103 silly addNameRange '0.8.4',
135 silly addNameRange '3.0.0-rc5', 103 silly addNameRange '0.8.5',
135 silly addNameRange '3.3.7', 103 silly addNameRange '0.8.6',
135 silly addNameRange '3.3.8', 103 silly addNameRange '0.8.7',
135 silly addNameRange '3.4.0', 103 silly addNameRange '0.9.0',
135 silly addNameRange '3.4.1', 103 silly addNameRange '0.9.1',
135 silly addNameRange '3.4.2', 103 silly addNameRange '0.9.1-1',
135 silly addNameRange '3.4.3', 103 silly addNameRange '0.9.2',
135 silly addNameRange '3.4.4', 103 silly addNameRange '0.9.3',
135 silly addNameRange '3.4.5', 103 silly addNameRange '0.9.4',
135 silly addNameRange '3.4.6', 103 silly addNameRange '0.9.5',
135 silly addNameRange '3.4.7', 103 silly addNameRange '0.9.6',
135 silly addNameRange '3.4.8', 103 silly addNameRange '0.9.7',
135 silly addNameRange '4.0.0-rc1', 103 silly addNameRange '0.9.8',
135 silly addNameRange '4.0.0-rc2', 103 silly addNameRange '0.9.9',
135 silly addNameRange '3.5.0', 103 silly addNameRange '0.9.10',
135 silly addNameRange '4.0.0-rc3', 103 silly addNameRange '0.9.11',
135 silly addNameRange '4.0.0-rc4', 103 silly addNameRange '0.9.12',
135 silly addNameRange '3.5.1', 103 silly addNameRange '0.9.13',
135 silly addNameRange '4.0.0', 103 silly addNameRange '0.9.14',
135 silly addNameRange '3.5.2', 103 silly addNameRange '0.9.15',
135 silly addNameRange '4.1.0', 103 silly addNameRange '0.9.16',
135 silly addNameRange '4.1.1', 103 silly addNameRange '1.0.0-pre',
135 silly addNameRange '3.5.3', 103 silly addNameRange '1.0.0-pre2',
135 silly addNameRange '4.1.2', 103 silly addNameRange '1.0.0-pre3',
135 silly addNameRange '3.6.0', 103 silly addNameRange '1.0.0-pre4',
135 silly addNameRange '4.2.0', 103 silly addNameRange '1.0.0-pre5',
135 silly addNameRange '3.7.0', 103 silly addNameRange '0.9.17',
135 silly addNameRange '3.8.0', 103 silly addNameRange '1.0.0',
135 silly addNameRange '4.3.0', 103 silly addNameRange '1.0.1',
135 silly addNameRange '4.3.1', 103 silly addNameRange '1.0.2',
135 silly addNameRange '3.8.1', 103 silly addNameRange '1.0.3',
135 silly addNameRange '4.3.2', 103 silly addNameRange '1.0.4',
135 silly addNameRange '3.9.0', 103 silly addNameRange '1.0.5',
135 silly addNameRange '4.4.0', 103 silly addNameRange '1.0.6',
135 silly addNameRange '4.4.1', 103 silly addNameRange '1.1.0',
135 silly addNameRange '3.10.0', 103 silly addNameRange '1.2.0',
135 silly addNameRange '3.10.1', 103 silly addNameRange '1.2.1',
135 silly addNameRange '3.10.2', 103 silly addNameRange '1.3.0',
135 silly addNameRange '3.10.3', 103 silly addNameRange '1.3.1',
135 silly addNameRange '3.10.4', 103 silly addNameRange '1.3.2',
135 silly addNameRange '4.4.2', 103 silly addNameRange '1.3.3',
135 silly addNameRange '3.10.5', 103 silly addNameRange '1.3.4',
135 silly addNameRange '4.4.3', 103 silly addNameRange '1.3.5' ] ]
135 silly addNameRange '3.11.0', 104 verbose addNamed [ 'socket.io', '1.2.1' ]
135 silly addNameRange '4.4.4', 105 verbose addNamed [ '1.2.1', '1.2.1' ]
135 silly addNameRange '3.12.0', 106 silly lockFile 77e414a6-socket-io-1-2-1 socket.io@1.2.1
135 silly addNameRange '3.12.1', 107 verbose lock socket.io@1.2.1 /root/.npm/77e414a6-socket-io-1-2-1.lock
135 silly addNameRange '4.4.5', 108 silly lockFile 77e414a6-socket-io-1-2-1 socket.io@1.2.1
135 silly addNameRange '3.13.0', 109 silly lockFile 77e414a6-socket-io-1-2-1 socket.io@1.2.1
135 silly addNameRange '4.5.0', 110 silly lockFile c0bd7c21-socket-io-1-2-0 socket.io@~1.2.0
135 silly addNameRange '4.5.1', 111 silly lockFile c0bd7c21-socket-io-1-2-0 socket.io@~1.2.0
135 silly addNameRange '3.14.0', 112 http 304 https://registry.npmjs.org/node-tail
135 silly addNameRange '4.6.0', 113 silly registry.get cb [ 304,
135 silly addNameRange '4.6.1', 113 silly registry.get { date: 'Sun, 19 Apr 2015 06:35:45 GMT',
135 silly addNameRange '3.15.0', 113 silly registry.get server: 'Apache',
135 silly addNameRange '4.7.0', 113 silly registry.get via: '1.1 varnish',
135 silly addNameRange '3.15.1', 113 silly registry.get 'last-modified': 'Sun, 19 Apr 2015 06:35:45 GMT',
135 silly addNameRange '4.7.1', 113 silly registry.get 'cache-control': 'max-age=60',
135 silly addNameRange '3.15.2', 113 silly registry.get etag: '"3O3MG0O1PBD2NBRQMCK50UX0W"',
135 silly addNameRange '4.7.2', 113 silly registry.get age: '0',
135 silly addNameRange '4.7.3', 113 silly registry.get 'x-served-by': 'cache-nrt6128-NRT',
135 silly addNameRange '3.15.3', 113 silly registry.get 'x-cache': 'HIT',
135 silly addNameRange '4.7.4', 113 silly registry.get 'x-cache-hits': '1',
135 silly addNameRange '3.16.0', 113 silly registry.get 'x-timer': 'S1429425345.255202,VS0,VE706',
135 silly addNameRange '4.8.0', 113 silly registry.get vary: 'Accept',
135 silly addNameRange '3.16.1', 113 silly registry.get 'content-length': '0',
135 silly addNameRange '4.8.1', 113 silly registry.get 'keep-alive': 'timeout=10, max=50',
135 silly addNameRange '3.16.2', 113 silly registry.get connection: 'Keep-Alive' } ]
135 silly addNameRange '4.8.2', 114 verbose etag https://registry.npmjs.org/node-tail from cache
135 silly addNameRange '3.16.3', 115 silly lockFile 7bc2e09d-node-tail-0-0-4 node-tail@0.0.4
135 silly addNameRange '3.16.4', 116 silly lockFile 7bc2e09d-node-tail-0-0-4 node-tail@0.0.4
135 silly addNameRange '4.8.3', 117 http 304 https://registry.npmjs.org/tail
135 silly addNameRange '3.16.5', 118 silly registry.get cb [ 304,
135 silly addNameRange '3.16.6', 118 silly registry.get { date: 'Sun, 19 Apr 2015 06:35:45 GMT',
135 silly addNameRange '4.8.4', 118 silly registry.get server: 'Apache',
135 silly addNameRange '3.16.7', 118 silly registry.get via: '1.1 varnish',
135 silly addNameRange '4.8.5', 118 silly registry.get 'last-modified': 'Sun, 19 Apr 2015 06:35:46 GMT',
135 silly addNameRange '3.16.8', 118 silly registry.get 'cache-control': 'max-age=60',
135 silly addNameRange '4.8.6', 118 silly registry.get etag: '"92054A71KHLQVZ7G0DFM0WOD7"',
135 silly addNameRange '3.16.9', 118 silly registry.get age: '0',
135 silly addNameRange '4.8.7', 118 silly registry.get 'x-served-by': 'cache-nrt6124-NRT',
135 silly addNameRange '3.16.10', 118 silly registry.get 'x-cache': 'HIT',
135 silly addNameRange '4.8.8', 118 silly registry.get 'x-cache-hits': '1',
135 silly addNameRange '3.17.0', 118 silly registry.get 'x-timer': 'S1429425345.700815,VS0,VE732',
135 silly addNameRange '3.17.1', 118 silly registry.get vary: 'Accept',
135 silly addNameRange '4.9.0', 118 silly registry.get 'content-length': '0',
135 silly addNameRange '3.17.2', 118 silly registry.get 'keep-alive': 'timeout=10, max=50',
135 silly addNameRange '4.9.1', 118 silly registry.get connection: 'Keep-Alive' } ]
135 silly addNameRange '4.9.2', 119 verbose etag https://registry.npmjs.org/tail from cache
135 silly addNameRange '3.17.3', 120 silly addNameRange number 2 { name: 'tail', range: '>=0.4.0-0 <0.5.0-0', hasData: true }
135 silly addNameRange '4.9.3', 121 silly addNameRange versions [ 'tail',
135 silly addNameRange '3.17.4', 121 silly addNameRange [ '0.0.3',
135 silly addNameRange '4.9.4', 121 silly addNameRange '0.0.4',
135 silly addNameRange '3.17.5', 121 silly addNameRange '0.1.0',
135 silly addNameRange '4.9.5', 121 silly addNameRange '0.1.1',
135 silly addNameRange '3.17.6', 121 silly addNameRange '0.1.2',
135 silly addNameRange '3.17.7', 121 silly addNameRange '0.2.0',
135 silly addNameRange '4.9.6', 121 silly addNameRange '0.2.1',
135 silly addNameRange '4.9.7', 121 silly addNameRange '0.2.2',
135 silly addNameRange '3.17.8', 121 silly addNameRange '0.2.3',
135 silly addNameRange '4.9.8', 121 silly addNameRange '0.2.4',
135 silly addNameRange '3.18.0', 121 silly addNameRange '0.3.0',
135 silly addNameRange '3.18.1', 121 silly addNameRange '0.3.1',
135 silly addNameRange '4.10.0', 121 silly addNameRange '0.3.2',
135 silly addNameRange '3.18.2', 121 silly addNameRange '0.3.5',
135 silly addNameRange '4.10.1', 121 silly addNameRange '0.3.6',
135 silly addNameRange '5.0.0-alpha.1', 121 silly addNameRange '0.3.7',
135 silly addNameRange '3.18.3', 121 silly addNameRange '0.3.8',
135 silly addNameRange '4.10.2', 121 silly addNameRange '0.3.9',
135 silly addNameRange '3.18.4', 121 silly addNameRange '0.4.0' ] ]
135 silly addNameRange '4.10.3', 122 verbose addNamed [ 'tail', '0.4.0' ]
135 silly addNameRange '4.10.4', 123 verbose addNamed [ '0.4.0', '0.4.0' ]
135 silly addNameRange '4.10.5', 124 silly lockFile e7d4c0e4-tail-0-4-0 tail@0.4.0
135 silly addNameRange '3.18.5', 125 verbose lock tail@0.4.0 /root/.npm/e7d4c0e4-tail-0-4-0.lock
135 silly addNameRange '3.18.6', 126 silly lockFile e7d4c0e4-tail-0-4-0 tail@0.4.0
135 silly addNameRange '4.10.6', 127 silly lockFile e7d4c0e4-tail-0-4-0 tail@0.4.0
135 silly addNameRange '4.10.7', 128 silly lockFile 81e86088-tail-0-4-0 tail@~0.4.0
135 silly addNameRange '3.19.0', 129 silly lockFile 81e86088-tail-0-4-0 tail@~0.4.0
135 silly addNameRange '4.10.8', 130 silly resolved [ { name: 'express',
135 silly addNameRange '4.11.0', 130 silly resolved description: 'Fast, unopinionated, minimalist web framework',
135 silly addNameRange '3.19.1', 130 silly resolved version: '4.10.8',
135 silly addNameRange '4.11.1', 130 silly resolved author: { name: 'TJ Holowaychuk', email: 'tj@vision-media.ca' },
135 silly addNameRange '3.19.2', 130 silly resolved contributors:
135 silly addNameRange '4.11.2', 130 silly resolved [ [Object],
135 silly addNameRange '3.20.0', 130 silly resolved [Object],
135 silly addNameRange '4.12.0', 130 silly resolved [Object],
135 silly addNameRange '3.20.1', 130 silly resolved [Object],
135 silly addNameRange '4.12.1', 130 silly resolved [Object],
135 silly addNameRange '4.12.2', 130 silly resolved [Object],
135 silly addNameRange '3.20.2', 130 silly resolved [Object] ],
135 silly addNameRange '4.12.3' ] ] 130 silly resolved license: 'MIT',
136 verbose addNamed [ 'express', '4.10.8' ] 130 silly resolved repository: { type: 'git', url: 'https://github.com/strongloop/express' },
137 verbose addNamed [ '4.10.8', '4.10.8' ] 130 silly resolved homepage: 'http://expressjs.com/',
138 silly lockFile 44558bf5-express-4-10-8 express@4.10.8 130 silly resolved keywords:
139 verbose lock express@4.10.8 /root/.npm/44558bf5-express-4-10-8.lock 130 silly resolved [ 'express',
140 silly lockFile 03c4f5da-rg-socket-io-socket-io-1-2-1-tgz https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz 130 silly resolved 'framework',
141 silly lockFile 03c4f5da-rg-socket-io-socket-io-1-2-1-tgz https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz 130 silly resolved 'sinatra',
142 silly lockFile 77e414a6-socket-io-1-2-1 socket.io@1.2.1 130 silly resolved 'web',
143 silly lockFile 77e414a6-socket-io-1-2-1 socket.io@1.2.1 130 silly resolved 'rest',
144 silly lockFile 95f2bc2f-s-org-express-express-4-10-8-tgz https://registry.npmjs.org/express/-/express-4.10.8.tgz 130 silly resolved 'restful',
145 verbose lock https://registry.npmjs.org/express/-/express-4.10.8.tgz /root/.npm/95f2bc2f-s-org-express-express-4-10-8-tgz.lock 130 silly resolved 'router',
146 silly lockFile c0bd7c21-socket-io-1-2-0 socket.io@~1.2.0 130 silly resolved 'app',
147 silly lockFile c0bd7c21-socket-io-1-2-0 socket.io@~1.2.0 130 silly resolved 'api' ],
148 verbose addRemoteTarball [ 'https://registry.npmjs.org/express/-/express-4.10.8.tgz', 130 silly resolved dependencies:
148 verbose addRemoteTarball '2d83571e065c0efb2679c0a5f9ae66aeaa47024a' ] 130 silly resolved { accepts: '~1.1.4',
149 info retry fetch attempt 1 at 14:25:49 130 silly resolved 'content-disposition': '0.5.0',
150 verbose fetch to= /tmp/npm-25723-hzRsuUDH/registry.npmjs.org/express/-/express-4.10.8.tgz 130 silly resolved 'cookie-signature': '1.0.5',
151 http GET https://registry.npmjs.org/express/-/express-4.10.8.tgz 130 silly resolved debug: '~2.1.1',
152 http 200 https://registry.npmjs.org/express/-/express-4.10.8.tgz 130 silly resolved depd: '~1.0.0',
153 silly lockFile 95f2bc2f-s-org-express-express-4-10-8-tgz https://registry.npmjs.org/express/-/express-4.10.8.tgz 130 silly resolved 'escape-html': '1.0.1',
154 silly lockFile 95f2bc2f-s-org-express-express-4-10-8-tgz https://registry.npmjs.org/express/-/express-4.10.8.tgz 130 silly resolved etag: '~1.5.1',
155 silly lockFile 44558bf5-express-4-10-8 express@4.10.8 130 silly resolved finalhandler: '0.3.3',
156 silly lockFile 44558bf5-express-4-10-8 express@4.10.8 130 silly resolved fresh: '0.2.4',
157 silly lockFile c572b5f8-express-4-10-1 express@~4.10.1 130 silly resolved 'media-typer': '0.3.0',
158 silly lockFile c572b5f8-express-4-10-1 express@~4.10.1 130 silly resolved methods: '1.1.1',
159 silly resolved [ { name: 'node-tail', 130 silly resolved 'on-finished': '~2.2.0',
159 silly resolved version: '0.0.4', 130 silly resolved parseurl: '~1.3.0',
159 silly resolved author: { name: 'rhrn', email: 'me@rhrn.ru' }, 130 silly resolved 'path-to-regexp': '0.1.3',
159 silly resolved preferGlobal: 'false', 130 silly resolved 'proxy-addr': '~1.0.5',
159 silly resolved bin: { 'node-tail': './bin/node-tail' }, 130 silly resolved qs: '2.3.3',
159 silly resolved dependencies: { 'socket.io': 'latest', commander: '~1.1.1' }, 130 silly resolved 'range-parser': '~1.0.2',
159 silly resolved repository: { type: 'git', url: 'https://github.com/rhrn/node-tail.git' }, 130 silly resolved send: '0.10.1',
159 silly resolved engines: { node: 'latest' }, 130 silly resolved 'serve-static': '~1.7.2',
159 silly resolved readme: '#node-tail\n\n Web `tail` - display last part of a file\n\n##install\n\n```\nnpm install -g node-tail\n```\n\n##usage\n\n```\nnode-tail -p 3000 ~/file.log\n```\n\nopen in browser\n```\nhttp://localhost:3000/\n```\n', 130 silly resolved 'type-is': '~1.5.5',
159 silly resolved readmeFilename: 'README.md', 130 silly resolved vary: '~1.0.0',
159 silly resolved _id: 'node-tail@0.0.4', 130 silly resolved cookie: '0.1.2',
159 silly resolved description: 'Web `tail` - display last part of a file', 130 silly resolved 'merge-descriptors': '0.0.2',
159 silly resolved dist: 130 silly resolved 'utils-merge': '1.0.0' },
159 silly resolved { shasum: '60d6456c71a22427ebe794565cb1954709978501', 130 silly resolved devDependencies:
159 silly resolved tarball: 'http://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz' }, 130 silly resolved { after: '0.8.1',
159 silly resolved _from: 'node-tail@0.0.4', 130 silly resolved istanbul: '0.3.5',
159 silly resolved _npmVersion: '1.2.14', 130 silly resolved mocha: '~2.0.0',
159 silly resolved _npmUser: { name: 'rhrn', email: 'nester@bk.ru' }, 130 silly resolved should: '~4.3.1',
159 silly resolved maintainers: [ [Object] ], 130 silly resolved supertest: '~0.15.0',
159 silly resolved directories: {}, 130 silly resolved ejs: '~1.0.0',
159 silly resolved _shasum: '60d6456c71a22427ebe794565cb1954709978501', 130 silly resolved marked: '0.3.2',
159 silly resolved _resolved: 'https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz' }, 130 silly resolved hjs: '~0.0.6',
159 silly resolved { author: { name: 'Luca Grulla' }, 130 silly resolved 'body-parser': '~1.10.1',
159 silly resolved contributors: [ [Object], [Object], [Object] ], 130 silly resolved 'connect-redis': '~2.1.0',
159 silly resolved name: 'tail', 130 silly resolved 'cookie-parser': '~1.3.3',
159 silly resolved description: 'tail a file in node', 130 silly resolved 'express-session': '~1.9.2',
159 silly resolved version: '0.4.0', 130 silly resolved jade: '~1.8.2',
159 silly resolved repository: 130 silly resolved 'method-override': '~2.3.1',
159 silly resolved { type: 'git', 130 silly resolved morgan: '~1.5.1',
159 silly resolved url: 'git://github.com/lucagrulla/node-tail.git' }, 130 silly resolved multiparty: '~4.1.0',
159 silly resolved main: 'tail', 130 silly resolved vhost: '~3.0.0' },
159 silly resolved engines: { node: '>= 0.4.0' }, 130 silly resolved engines: { node: '>= 0.10.0' },
159 silly resolved dependencies: {}, 130 silly resolved files: [ 'LICENSE', 'History.md', 'Readme.md', 'index.js', 'lib/' ],
159 silly resolved devDependencies: { 'coffee-script': '1.7.1' }, 130 silly resolved scripts:
159 silly resolved bugs: { url: 'https://github.com/lucagrulla/node-tail/issues' }, 130 silly resolved { test: 'mocha --require test/support/env --reporter spec --bail --check-leaks test/ test/acceptance/',
159 silly resolved homepage: 'https://github.com/lucagrulla/node-tail', 130 silly resolved 'test-cov': 'istanbul cover node_modules/mocha/bin/_mocha -- --require test/support/env --reporter dot --check-leaks test/ test/acceptance/',
159 silly resolved _id: 'tail@0.4.0', 130 silly resolved 'test-tap': 'mocha --require test/support/env --reporter tap --check-leaks test/ test/acceptance/',
159 silly resolved scripts: {}, 130 silly resolved 'test-travis': 'istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --require test/support/env --reporter spec --check-leaks test/ test/acceptance/' },
159 silly resolved _shasum: 'd29de72750cc99db1e053aff13c359ecfb713002', 130 silly resolved gitHead: '08939683c7a2e5d7dc928d310ebab65878bffff3',
159 silly resolved _from: 'tail@~0.4.0', 130 silly resolved bugs: { url: 'https://github.com/strongloop/express/issues' },
159 silly resolved _npmVersion: '1.4.15', 130 silly resolved _id: 'express@4.10.8',
159 silly resolved _npmUser: { name: 'lucagrulla', email: 'luca.grulla@gmail.com' }, 130 silly resolved _shasum: '2d83571e065c0efb2679c0a5f9ae66aeaa47024a',
159 silly resolved maintainers: [ [Object] ], 130 silly resolved _from: 'express@~4.10.1',
159 silly resolved dist: 130 silly resolved _npmVersion: '1.4.28',
159 silly resolved { shasum: 'd29de72750cc99db1e053aff13c359ecfb713002', 130 silly resolved _npmUser: { name: 'dougwilson', email: 'doug@somethingdoug.com' },
159 silly resolved tarball: 'http://registry.npmjs.org/tail/-/tail-0.4.0.tgz' }, 130 silly resolved maintainers:
159 silly resolved directories: {}, 130 silly resolved [ [Object],
159 silly resolved _resolved: 'https://registry.npmjs.org/tail/-/tail-0.4.0.tgz' }, 130 silly resolved [Object],
159 silly resolved { name: 'socket.io', 130 silly resolved [Object],
159 silly resolved version: '1.2.1', 130 silly resolved [Object],
159 silly resolved description: 'node.js realtime framework server', 130 silly resolved [Object],
159 silly resolved keywords: 130 silly resolved [Object],
159 silly resolved [ 'realtime', 130 silly resolved [Object] ],
159 silly resolved 'framework', 130 silly resolved dist:
159 silly resolved 'websocket', 130 silly resolved { shasum: '2d83571e065c0efb2679c0a5f9ae66aeaa47024a',
159 silly resolved 'tcp', 130 silly resolved tarball: 'http://registry.npmjs.org/express/-/express-4.10.8.tgz' },
159 silly resolved 'events', 130 silly resolved directories: {},
159 silly resolved 'socket', 130 silly resolved _resolved: 'https://registry.npmjs.org/express/-/express-4.10.8.tgz',
159 silly resolved 'io' ], 130 silly resolved readme: 'ERROR: No README data found!' },
159 silly resolved repository: { type: 'git', url: 'git://github.com/Automattic/socket.io' }, 130 silly resolved { name: 'socket.io',
159 silly resolved scripts: { test: 'make test' }, 130 silly resolved version: '1.2.1',
159 silly resolved dependencies: 130 silly resolved description: 'node.js realtime framework server',
159 silly resolved { 'engine.io': '1.4.3', 130 silly resolved keywords:
159 silly resolved 'socket.io-parser': '2.2.2', 130 silly resolved [ 'realtime',
159 silly resolved 'socket.io-client': '1.2.1', 130 silly resolved 'framework',
159 silly resolved 'socket.io-adapter': '0.3.1', 130 silly resolved 'websocket',
159 silly resolved 'has-binary-data': '0.1.3', 130 silly resolved 'tcp',
159 silly resolved debug: '0.7.4' }, 130 silly resolved 'events',
159 silly resolved devDependencies: 130 silly resolved 'socket',
159 silly resolved { mocha: '1.16.2', 130 silly resolved 'io' ],
159 silly resolved 'expect.js': '0.3.1', 130 silly resolved repository: { type: 'git', url: 'git://github.com/Automattic/socket.io' },
159 silly resolved supertest: '0.8.2', 130 silly resolved scripts: { test: 'make test' },
159 silly resolved superagent: '0.17.0', 130 silly resolved dependencies:
159 silly resolved istanbul: '0.2.3' }, 130 silly resolved { 'engine.io': '1.4.3',
159 silly resolved contributors: [ [Object], [Object], [Object], [Object] ], 130 silly resolved 'socket.io-parser': '2.2.2',
159 silly resolved gitHead: '24d06d76ddf0808ac370e39fd57329d3048d73e4', 130 silly resolved 'socket.io-client': '1.2.1',
159 silly resolved bugs: { url: 'https://github.com/Automattic/socket.io/issues' }, 130 silly resolved 'socket.io-adapter': '0.3.1',
159 silly resolved homepage: 'https://github.com/Automattic/socket.io', 130 silly resolved 'has-binary-data': '0.1.3',
159 silly resolved _id: 'socket.io@1.2.1', 130 silly resolved debug: '0.7.4' },
159 silly resolved _shasum: '84400af534c0d32baa9ac88937eedb5b8465ee92', 130 silly resolved devDependencies:
159 silly resolved _from: 'socket.io@~1.2.0', 130 silly resolved { mocha: '1.16.2',
159 silly resolved _npmVersion: '1.4.21', 130 silly resolved 'expect.js': '0.3.1',
159 silly resolved _npmUser: { name: 'rauchg', email: 'rauchg@gmail.com' }, 130 silly resolved supertest: '0.8.2',
159 silly resolved maintainers: [ [Object] ], 130 silly resolved superagent: '0.17.0',
159 silly resolved dist: 130 silly resolved istanbul: '0.2.3' },
159 silly resolved { shasum: '84400af534c0d32baa9ac88937eedb5b8465ee92', 130 silly resolved contributors: [ [Object], [Object], [Object], [Object] ],
159 silly resolved tarball: 'http://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz' }, 130 silly resolved gitHead: '24d06d76ddf0808ac370e39fd57329d3048d73e4',
159 silly resolved directories: {}, 130 silly resolved bugs: { url: 'https://github.com/Automattic/socket.io/issues' },
159 silly resolved _resolved: 'https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz' }, 130 silly resolved homepage: 'https://github.com/Automattic/socket.io',
159 silly resolved { name: 'express', 130 silly resolved _id: 'socket.io@1.2.1',
159 silly resolved description: 'Fast, unopinionated, minimalist web framework', 130 silly resolved _shasum: '84400af534c0d32baa9ac88937eedb5b8465ee92',
159 silly resolved version: '4.10.8', 130 silly resolved _from: 'socket.io@~1.2.0',
159 silly resolved author: { name: 'TJ Holowaychuk', email: 'tj@vision-media.ca' }, 130 silly resolved _npmVersion: '1.4.21',
159 silly resolved contributors: 130 silly resolved _npmUser: { name: 'rauchg', email: 'rauchg@gmail.com' },
159 silly resolved [ [Object], 130 silly resolved maintainers: [ [Object] ],
159 silly resolved [Object], 130 silly resolved dist:
159 silly resolved [Object], 130 silly resolved { shasum: '84400af534c0d32baa9ac88937eedb5b8465ee92',
159 silly resolved [Object], 130 silly resolved tarball: 'http://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz' },
159 silly resolved [Object], 130 silly resolved directories: {},
159 silly resolved [Object], 130 silly resolved _resolved: 'https://registry.npmjs.org/socket.io/-/socket.io-1.2.1.tgz',
159 silly resolved [Object] ], 130 silly resolved readme: 'ERROR: No README data found!' },
159 silly resolved license: 'MIT', 130 silly resolved { name: 'node-tail',
159 silly resolved repository: { type: 'git', url: 'https://github.com/strongloop/express' }, 130 silly resolved version: '0.0.4',
159 silly resolved homepage: 'http://expressjs.com/', 130 silly resolved author: { name: 'rhrn', email: 'me@rhrn.ru' },
159 silly resolved keywords: 130 silly resolved preferGlobal: 'false',
159 silly resolved [ 'express', 130 silly resolved bin: { 'node-tail': './bin/node-tail' },
159 silly resolved 'framework', 130 silly resolved dependencies: { 'socket.io': 'latest', commander: '~1.1.1' },
159 silly resolved 'sinatra', 130 silly resolved repository: { type: 'git', url: 'https://github.com/rhrn/node-tail.git' },
159 silly resolved 'web', 130 silly resolved engines: { node: 'latest' },
159 silly resolved 'rest', 130 silly resolved readme: '#node-tail\n\n Web `tail` - display last part of a file\n\n##install\n\n```\nnpm install -g node-tail\n```\n\n##usage\n\n```\nnode-tail -p 3000 ~/file.log\n```\n\nopen in browser\n```\nhttp://localhost:3000/\n```\n',
159 silly resolved 'restful', 130 silly resolved readmeFilename: 'README.md',
159 silly resolved 'router', 130 silly resolved _id: 'node-tail@0.0.4',
159 silly resolved 'app', 130 silly resolved description: 'Web `tail` - display last part of a file',
159 silly resolved 'api' ], 130 silly resolved dist:
159 silly resolved dependencies: 130 silly resolved { shasum: '60d6456c71a22427ebe794565cb1954709978501',
159 silly resolved { accepts: '~1.1.4', 130 silly resolved tarball: 'http://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz' },
159 silly resolved 'content-disposition': '0.5.0', 130 silly resolved _from: 'node-tail@0.0.4',
159 silly resolved 'cookie-signature': '1.0.5', 130 silly resolved _npmVersion: '1.2.14',
159 silly resolved debug: '~2.1.1', 130 silly resolved _npmUser: { name: 'rhrn', email: 'nester@bk.ru' },
159 silly resolved depd: '~1.0.0', 130 silly resolved maintainers: [ [Object] ],
159 silly resolved 'escape-html': '1.0.1', 130 silly resolved directories: {},
159 silly resolved etag: '~1.5.1', 130 silly resolved _shasum: '60d6456c71a22427ebe794565cb1954709978501',
159 silly resolved finalhandler: '0.3.3', 130 silly resolved _resolved: 'https://registry.npmjs.org/node-tail/-/node-tail-0.0.4.tgz',
159 silly resolved fresh: '0.2.4', 130 silly resolved bugs: { url: 'https://github.com/rhrn/node-tail/issues' },
159 silly resolved 'media-typer': '0.3.0', 130 silly resolved homepage: 'https://github.com/rhrn/node-tail' },
159 silly resolved methods: '1.1.1', 130 silly resolved { author: { name: 'Luca Grulla' },
159 silly resolved 'on-finished': '~2.2.0', 130 silly resolved contributors: [ [Object], [Object], [Object] ],
159 silly resolved parseurl: '~1.3.0', 130 silly resolved name: 'tail',
159 silly resolved 'path-to-regexp': '0.1.3', 130 silly resolved description: 'tail a file in node',
159 silly resolved 'proxy-addr': '~1.0.5', 130 silly resolved version: '0.4.0',
159 silly resolved qs: '2.3.3', 130 silly resolved repository:
159 silly resolved 'range-parser': '~1.0.2', 130 silly resolved { type: 'git',
159 silly resolved send: '0.10.1', 130 silly resolved url: 'git://github.com/lucagrulla/node-tail.git' },
159 silly resolved 'serve-static': '~1.7.2', 130 silly resolved main: 'tail',
159 silly resolved 'type-is': '~1.5.5', 130 silly resolved engines: { node: '>= 0.4.0' },
159 silly resolved vary: '~1.0.0', 130 silly resolved dependencies: {},
159 silly resolved cookie: '0.1.2', 130 silly resolved devDependencies: { 'coffee-script': '1.7.1' },
159 silly resolved 'merge-descriptors': '0.0.2', 130 silly resolved bugs: { url: 'https://github.com/lucagrulla/node-tail/issues' },
159 silly resolved 'utils-merge': '1.0.0' }, 130 silly resolved homepage: 'https://github.com/lucagrulla/node-tail',
159 silly resolved devDependencies: 130 silly resolved _id: 'tail@0.4.0',
159 silly resolved { after: '0.8.1', 130 silly resolved scripts: {},
159 silly resolved istanbul: '0.3.5', 130 silly resolved _shasum: 'd29de72750cc99db1e053aff13c359ecfb713002',
159 silly resolved mocha: '~2.0.0', 130 silly resolved _from: 'tail@~0.4.0',
159 silly resolved should: '~4.3.1', 130 silly resolved _npmVersion: '1.4.15',
159 silly resolved supertest: '~0.15.0', 130 silly resolved _npmUser: { name: 'lucagrulla', email: 'luca.grulla@gmail.com' },
159 silly resolved ejs: '~1.0.0', 130 silly resolved maintainers: [ [Object] ],
159 silly resolved marked: '0.3.2', 130 silly resolved dist:
159 silly resolved hjs: '~0.0.6', 130 silly resolved { shasum: 'd29de72750cc99db1e053aff13c359ecfb713002',
159 silly resolved 'body-parser': '~1.10.1', 130 silly resolved tarball: 'http://registry.npmjs.org/tail/-/tail-0.4.0.tgz' },
159 silly resolved 'connect-redis': '~2.1.0', 130 silly resolved directories: {},
159 silly resolved 'cookie-parser': '~1.3.3', 130 silly resolved _resolved: 'https://registry.npmjs.org/tail/-/tail-0.4.0.tgz',
159 silly resolved 'express-session': '~1.9.2', 130 silly resolved readme: 'ERROR: No README data found!' } ]
159 silly resolved jade: '~1.8.2', 131 info install express@4.10.8 into /mnt/hgfs/jumpserver/websocket
159 silly resolved 'method-override': '~2.3.1', 132 info install socket.io@1.2.1 into /mnt/hgfs/jumpserver/websocket
159 silly resolved morgan: '~1.5.1', 133 info install node-tail@0.0.4 into /mnt/hgfs/jumpserver/websocket
159 silly resolved multiparty: '~4.1.0', 134 info install tail@0.4.0 into /mnt/hgfs/jumpserver/websocket
159 silly resolved vhost: '~3.0.0' }, 135 info installOne express@4.10.8
159 silly resolved engines: { node: '>= 0.10.0' }, 136 info installOne socket.io@1.2.1
159 silly resolved files: [ 'LICENSE', 'History.md', 'Readme.md', 'index.js', 'lib/' ], 137 info installOne node-tail@0.0.4
159 silly resolved scripts: 138 warn engine node-tail@0.0.4: wanted: {"node":"latest"} (current: {"node":"0.10.33","npm":"1.4.28"})
159 silly resolved { test: 'mocha --require test/support/env --reporter spec --bail --check-leaks test/ test/acceptance/', 139 info installOne tail@0.4.0
159 silly resolved 'test-cov': 'istanbul cover node_modules/mocha/bin/_mocha -- --require test/support/env --reporter dot --check-leaks test/ test/acceptance/', 140 verbose node_modules/express unbuild
159 silly resolved 'test-tap': 'mocha --require test/support/env --reporter tap --check-leaks test/ test/acceptance/', 141 verbose node_modules/socket.io unbuild
159 silly resolved 'test-travis': 'istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --require test/support/env --reporter spec --check-leaks test/ test/acceptance/' }, 142 verbose node_modules/node-tail unbuild
159 silly resolved gitHead: '08939683c7a2e5d7dc928d310ebab65878bffff3', 143 verbose node_modules/tail unbuild
159 silly resolved bugs: { url: 'https://github.com/strongloop/express/issues' }, 144 verbose tar unpack /root/.npm/express/4.10.8/package.tgz
159 silly resolved _id: 'express@4.10.8', 145 silly lockFile de0ac3f3-r-websocket-node-modules-express tar:///mnt/hgfs/jumpserver/websocket/node_modules/express
159 silly resolved _shasum: '2d83571e065c0efb2679c0a5f9ae66aeaa47024a', 146 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/express /root/.npm/de0ac3f3-r-websocket-node-modules-express.lock
159 silly resolved _from: 'express@~4.10.1', 147 silly lockFile da9ae1a7-t-npm-express-4-10-8-package-tgz tar:///root/.npm/express/4.10.8/package.tgz
159 silly resolved _npmVersion: '1.4.28', 148 verbose lock tar:///root/.npm/express/4.10.8/package.tgz /root/.npm/da9ae1a7-t-npm-express-4-10-8-package-tgz.lock
159 silly resolved _npmUser: { name: 'dougwilson', email: 'doug@somethingdoug.com' }, 149 verbose tar unpack /root/.npm/socket.io/1.2.1/package.tgz
159 silly resolved maintainers: 150 silly lockFile 380be7e1-websocket-node-modules-socket-io tar:///mnt/hgfs/jumpserver/websocket/node_modules/socket.io
159 silly resolved [ [Object], 151 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/socket.io /root/.npm/380be7e1-websocket-node-modules-socket-io.lock
159 silly resolved [Object], 152 silly lockFile d3c35dc3--npm-socket-io-1-2-1-package-tgz tar:///root/.npm/socket.io/1.2.1/package.tgz
159 silly resolved [Object], 153 verbose lock tar:///root/.npm/socket.io/1.2.1/package.tgz /root/.npm/d3c35dc3--npm-socket-io-1-2-1-package-tgz.lock
159 silly resolved [Object], 154 verbose tar unpack /root/.npm/node-tail/0.0.4/package.tgz
159 silly resolved [Object], 155 silly lockFile fe049280-websocket-node-modules-node-tail tar:///mnt/hgfs/jumpserver/websocket/node_modules/node-tail
159 silly resolved [Object], 156 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/node-tail /root/.npm/fe049280-websocket-node-modules-node-tail.lock
159 silly resolved [Object] ], 157 silly lockFile 053f900c--npm-node-tail-0-0-4-package-tgz tar:///root/.npm/node-tail/0.0.4/package.tgz
159 silly resolved dist: 158 verbose lock tar:///root/.npm/node-tail/0.0.4/package.tgz /root/.npm/053f900c--npm-node-tail-0-0-4-package-tgz.lock
159 silly resolved { shasum: '2d83571e065c0efb2679c0a5f9ae66aeaa47024a', 159 verbose tar unpack /root/.npm/tail/0.4.0/package.tgz
159 silly resolved tarball: 'http://registry.npmjs.org/express/-/express-4.10.8.tgz' }, 160 silly lockFile 62713ce4-rver-websocket-node-modules-tail tar:///mnt/hgfs/jumpserver/websocket/node_modules/tail
159 silly resolved directories: {}, 161 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/tail /root/.npm/62713ce4-rver-websocket-node-modules-tail.lock
159 silly resolved _resolved: 'https://registry.npmjs.org/express/-/express-4.10.8.tgz' } ] 162 silly lockFile 1ed23799--root-npm-tail-0-4-0-package-tgz tar:///root/.npm/tail/0.4.0/package.tgz
160 info install node-tail@0.0.4 into /mnt/hgfs/jumpserver/websocket 163 verbose lock tar:///root/.npm/tail/0.4.0/package.tgz /root/.npm/1ed23799--root-npm-tail-0-4-0-package-tgz.lock
161 info install tail@0.4.0 into /mnt/hgfs/jumpserver/websocket 164 silly gunzTarPerm modes [ '755', '644' ]
162 info install socket.io@1.2.1 into /mnt/hgfs/jumpserver/websocket 165 silly gunzTarPerm modes [ '755', '644' ]
163 info install express@4.10.8 into /mnt/hgfs/jumpserver/websocket 166 silly gunzTarPerm modes [ '755', '644' ]
164 info installOne node-tail@0.0.4 167 silly gunzTarPerm modes [ '755', '644' ]
165 warn engine node-tail@0.0.4: wanted: {"node":"latest"} (current: {"node":"0.10.33","npm":"1.4.28"}) 168 silly gunzTarPerm extractEntry package.json
166 info installOne tail@0.4.0 169 silly gunzTarPerm modified mode [ 'package.json', 438, 420 ]
167 info installOne socket.io@1.2.1 170 silly gunzTarPerm extractEntry package.json
168 info installOne express@4.10.8 171 silly gunzTarPerm extractEntry package.json
169 verbose node_modules/node-tail unbuild 172 silly gunzTarPerm extractEntry package.json
170 verbose node_modules/tail unbuild 173 silly gunzTarPerm extractEntry LICENSE
171 verbose node_modules/socket.io unbuild 174 silly gunzTarPerm modified mode [ 'LICENSE', 438, 420 ]
172 verbose node_modules/express unbuild 175 silly gunzTarPerm extractEntry index.js
173 verbose tar unpack /root/.npm/node-tail/0.0.4/package.tgz 176 silly gunzTarPerm modified mode [ 'index.js', 438, 420 ]
174 silly lockFile fe049280-websocket-node-modules-node-tail tar:///mnt/hgfs/jumpserver/websocket/node_modules/node-tail 177 silly gunzTarPerm extractEntry .npmignore
175 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/node-tail /root/.npm/fe049280-websocket-node-modules-node-tail.lock 178 silly gunzTarPerm extractEntry LICENSE
176 silly lockFile 053f900c--npm-node-tail-0-0-4-package-tgz tar:///root/.npm/node-tail/0.0.4/package.tgz 179 silly gunzTarPerm extractEntry .npmignore
177 verbose lock tar:///root/.npm/node-tail/0.0.4/package.tgz /root/.npm/053f900c--npm-node-tail-0-0-4-package-tgz.lock 180 silly gunzTarPerm extractEntry README.md
178 verbose tar unpack /root/.npm/tail/0.4.0/package.tgz 181 silly gunzTarPerm extractEntry README.md
179 silly lockFile 62713ce4-rver-websocket-node-modules-tail tar:///mnt/hgfs/jumpserver/websocket/node_modules/tail 182 silly gunzTarPerm extractEntry tail.js
180 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/tail /root/.npm/62713ce4-rver-websocket-node-modules-tail.lock 183 error Error: EPERM, chown '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json'
181 silly lockFile 1ed23799--root-npm-tail-0-4-0-package-tgz tar:///root/.npm/tail/0.4.0/package.tgz 183 error { [Error: EPERM, chown '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json']
182 verbose lock tar:///root/.npm/tail/0.4.0/package.tgz /root/.npm/1ed23799--root-npm-tail-0-4-0-package-tgz.lock 183 error errno: 50,
183 verbose tar unpack /root/.npm/socket.io/1.2.1/package.tgz 183 error code: 'EPERM',
184 silly lockFile 380be7e1-websocket-node-modules-socket-io tar:///mnt/hgfs/jumpserver/websocket/node_modules/socket.io 183 error path: '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json',
185 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/socket.io /root/.npm/380be7e1-websocket-node-modules-socket-io.lock 183 error fstream_finish_call: 'chown',
186 silly lockFile d3c35dc3--npm-socket-io-1-2-1-package-tgz tar:///root/.npm/socket.io/1.2.1/package.tgz 183 error fstream_type: 'File',
187 verbose lock tar:///root/.npm/socket.io/1.2.1/package.tgz /root/.npm/d3c35dc3--npm-socket-io-1-2-1-package-tgz.lock 183 error fstream_path: '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json',
188 verbose tar unpack /root/.npm/express/4.10.8/package.tgz 183 error fstream_class: 'FileWriter',
189 silly lockFile de0ac3f3-r-websocket-node-modules-express tar:///mnt/hgfs/jumpserver/websocket/node_modules/express 183 error fstream_stack:
190 verbose lock tar:///mnt/hgfs/jumpserver/websocket/node_modules/express /root/.npm/de0ac3f3-r-websocket-node-modules-express.lock 183 error [ '/opt/node/lib/node_modules/npm/node_modules/fstream/lib/writer.js:308:19',
191 silly lockFile da9ae1a7-t-npm-express-4-10-8-package-tgz tar:///root/.npm/express/4.10.8/package.tgz 183 error '/opt/node/lib/node_modules/npm/node_modules/graceful-fs/polyfills.js:143:7',
192 verbose lock tar:///root/.npm/express/4.10.8/package.tgz /root/.npm/da9ae1a7-t-npm-express-4-10-8-package-tgz.lock 183 error 'Object.oncomplete (evalmachine.<anonymous>:107:15)' ] }
193 silly gunzTarPerm modes [ '755', '644' ] 184 error Please try running this command again as root/Administrator.
194 silly gunzTarPerm modes [ '755', '644' ] 185 error System Linux 2.6.32-358.el6.x86_64
195 silly gunzTarPerm modes [ '755', '644' ] 186 error command "/opt/node/bin/node" "/opt/node/bin/npm" "install"
196 silly gunzTarPerm modes [ '755', '644' ] 187 error cwd /mnt/hgfs/jumpserver/websocket
197 silly gunzTarPerm extractEntry package.json 188 error node -v v0.10.33
198 silly gunzTarPerm extractEntry package.json 189 error npm -v 1.4.28
199 silly gunzTarPerm extractEntry package.json 190 error path /mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json
200 silly gunzTarPerm extractEntry package.json 191 error fstream_path /mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json
201 silly gunzTarPerm modified mode [ 'package.json', 438, 420 ] 192 error fstream_type File
202 silly gunzTarPerm extractEntry .npmignore 193 error fstream_class FileWriter
203 silly gunzTarPerm extractEntry README.md 194 error fstream_finish_call chown
204 silly gunzTarPerm extractEntry README.md 195 error code EPERM
205 silly gunzTarPerm extractEntry tail.js 196 error errno 50
206 silly gunzTarPerm extractEntry .npmignore 197 error stack Error: EPERM, chown '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json'
207 silly gunzTarPerm extractEntry LICENSE 198 error fstream_stack /opt/node/lib/node_modules/npm/node_modules/fstream/lib/writer.js:308:19
208 silly gunzTarPerm extractEntry LICENSE 198 error fstream_stack /opt/node/lib/node_modules/npm/node_modules/graceful-fs/polyfills.js:143:7
209 silly gunzTarPerm modified mode [ 'LICENSE', 438, 420 ] 198 error fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
210 silly gunzTarPerm extractEntry index.js 199 verbose exit [ 50, true ]
211 silly gunzTarPerm modified mode [ 'index.js', 438, 420 ]
212 error Error: EPERM, chown '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json'
212 error { [Error: EPERM, chown '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json']
212 error errno: 50,
212 error code: 'EPERM',
212 error path: '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json',
212 error fstream_finish_call: 'chown',
212 error fstream_type: 'File',
212 error fstream_path: '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json',
212 error fstream_class: 'FileWriter',
212 error fstream_stack:
212 error [ '/opt/node/lib/node_modules/npm/node_modules/fstream/lib/writer.js:308:19',
212 error '/opt/node/lib/node_modules/npm/node_modules/graceful-fs/polyfills.js:143:7',
212 error 'Object.oncomplete (evalmachine.<anonymous>:107:15)' ] }
213 error Please try running this command again as root/Administrator.
214 error System Linux 2.6.32-358.el6.x86_64
215 error command "/opt/node/bin/node" "/opt/node/bin/npm" "install"
216 error cwd /mnt/hgfs/jumpserver/websocket
217 error node -v v0.10.33
218 error npm -v 1.4.28
219 error path /mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json
220 error fstream_path /mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json
221 error fstream_type File
222 error fstream_class FileWriter
223 error fstream_finish_call chown
224 error code EPERM
225 error errno 50
226 error stack Error: EPERM, chown '/mnt/hgfs/jumpserver/websocket/node_modules/node-tail/package.json'
227 error fstream_stack /opt/node/lib/node_modules/npm/node_modules/fstream/lib/writer.js:308:19
227 error fstream_stack /opt/node/lib/node_modules/npm/node_modules/graceful-fs/polyfills.js:143:7
227 error fstream_stack Object.oncomplete (evalmachine.<anonymous>:107:15)
228 verbose exit [ 50, true ]
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment