
Никита
14.09.2016
19:31:12
Ревью должны дописывать ревьюевров в текст мердж коммита.
Или каждого коммита.
К слову, до сих пор нет мерджа ребейсом, без мердж коммита.

Nikita
14.09.2016
19:35:07
ну ты прям все сразу хочешь)

Google

Nikita
14.09.2016
19:35:18
выкатили кучу всего, теперь дорабатывать будут

Denis
14.09.2016
20:47:34
Да каждый вечер так
успокойтесь

Vladimir
14.09.2016
20:52:46
Добрый вечер
Что можно с этим сделать?`"(node:13055) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
fs.js:922
return binding.mkdir(pathModule._makeLong(path),
^"`
Хоть fs юзаешь, хоть graceful-fs
Мне оно нужно только в одном месте, для считывания конфигов
А вообще пытаюсь запустить spy-js for nodejs

Никита
15.09.2016
01:35:16
варнинга на graceful-fs@4 быть не должно

Vitaly
15.09.2016
01:43:54
Глобальные пакеты попробуйте переустановить. У меня такой варнинг был, когда я между версиями ноды переключался

Ilya
15.09.2016
02:30:40
https://github.com/AntiZapret/antizapret

マイク
15.09.2016
02:32:48
Офф-топик

Google

Ilya
15.09.2016
02:49:08
не совсем

マイク
15.09.2016
02:51:27
Вот прямо совсем

Suika
15.09.2016
03:09:29
есть кому интересно покопаться с dht?

Никита
15.09.2016
06:57:37
Всем привет) помогите организовать асинхронную работу.
const myVar = windows.map((window) => {
let url = ...;
request(url, function (error, response, body) {
return {...
}
});
});
return res.render('index', {user: req.user, myVar: myVar});
Как дождаться выполнения map и request

Suika
15.09.2016
06:58:28
посмотри промисы
промис в переводе - обещание
что они и делают, обещают, что все выполнится перед следующим этапом

Никита
15.09.2016
06:59:35
я использую промисы при запорсе к монге :)
Window
.find()
.populate('creator')
.exec()
.then((windows) => {

Suika
15.09.2016
06:59:59
Promise.all копни

Юрий
15.09.2016
07:01:03
Или bluebird'овский Promise.map. При выполнении множества запросов может быть полезным ограничить их concurrency.

Suika
15.09.2016
07:02:37
у нас знаменательное кол-во участников в конфе собралось

Юрий
15.09.2016
07:03:00
Дык еще вчера. Кто-то даже пентаграмму выкладывал )

Suika
15.09.2016
07:03:19
>Golodnyi joined the group
кто-то ушел, видимо

Никита
15.09.2016
07:09:39
Пробую c Promise.map
Window
.find()
.populate('creator')
.exec()
.then((windows) => {
Promise.map(windows, window => {
console.log('map');
let url = ...;
request(let, function (error, response, body) {
console.log('REQUEST');
return {
...
}
});
}).then(results => {
console.log("done", results);
return res.render('index', {user: req.user, myVar: results});
});
})
.catch((err) => console.log('Error: ', err));
порядок вывода такой:
map
done [ undefined ]
REQUEST


Юрий
15.09.2016
07:11:28
В теле map'а нужно вернуть промис. Либо сделай const request = Promise.promisifyAll(require'request'));, либо return new Promise(function (resolve, reject) { // тут дёргаешь resolve() в коллбэке реквеста }.
Window
.find()
.populate('creator')
.exec()
.then((windows) => {
Promise.map(windows, window => {
console.log('map');
let url = ...;
return new Promise(function (resolve, reject) {
request(let, function (error, response, body) {
console.log('REQUEST');
if (error) { return reject(error); }
return resolve({
...
});
});
});
})
.then(results => {
console.log("done", results);
return res.render('index', {user: req.user, myVar: results});
});
})
.catch((err) => console.log('Error: ', err));

Никита
15.09.2016
07:16:14
Спасибо большое :)

Юрий
15.09.2016
07:17:57
Пожалуйста.

Google

Никита
15.09.2016
08:22:18
так что имхо пусть
он тухлый, правда.

Никита
15.09.2016
08:56:12
ещё вот такой вопросик немного не по теме. Как в массиве объектов найти объекты с одинаковым полем?

Evgeny
15.09.2016
08:56:46
Для этого должен быть плагин jquery, определенно

Damir
15.09.2016
08:58:25

Roman
15.09.2016
08:58:58
:)

Alexandr
15.09.2016
09:00:12

hamper ?
15.09.2016
09:16:42
arr.reduce((r, x) => {r[x.field] ? r[x.field] = [x] : r[x.field].push(x); return r},{})
вот так например, на выходе будет объект по ключам и в каждом ключе массив с этим ключом

Danila
15.09.2016
09:26:14
гайз, а не подскажите, чем мигрировали с mysql на postgres? желательно на ubuntu или macos

Никита
15.09.2016
09:49:28
Может я неправильно объяснил :)
Есть масив объектов:
[
{
a: {
b: 1,
c: 2,
d: [{
e: 4
}]
}
},
{
a: {
b: 1,
c: 7,
d: [{
e: 4
}]
}
},
{
a: {
b: 1,
c: 2,
d: [{
e: 14
}]
}
}]
например одинаковое поле 'e'
и хочется поулчить вот такой массив:
[
{
a: {
b: 1,
c: 2,
d: [{
e: 4
},
{
e: 4
}]
}
},
{
a: {
b: 1,
c: 7,
d: [{
e: 4
}]
}
}]

Aleksej
15.09.2016
09:52:37
Может я неправильно объяснил :)
Есть масив объектов:
[
{
a: {
b: 1,
c: 2,
d: [{
e: 4
}]
}
},
{
a: {
b: 1,
c: 7,
d: [{
e: 4
}]
}
},
{
a: {
b: 1,
c: 2,
d: [{
e: 14
}]
}
}]
например одинаковое поле 'e'
и хочется поулчить вот такой массив:
[
{
a: {
b: 1,
c: 2,
d: [{
e: 4
},
{
e: 4
}]
}
},
{
a: {
b: 1,
c: 7,
d: [{
e: 4
}]
}
}]
это достаточно нетривиально
попробуй редюсом

hamper ?
15.09.2016
09:54:02
тут проблема что он вложенные структуры мержить хочет

Aleksej
15.09.2016
09:54:23
ну как вариант - редюс, сравнивать структуры

hamper ?
15.09.2016
09:54:25
первое что в голову приходит это рекурсия

Aleksej
15.09.2016
09:54:37
если похожие - то мерджить, если нет, то пушить в аккумулятор
но как сравнивать - это да, без рекурсии никак

Никита
15.09.2016
09:58:29
я чего-то не могу придумать сюда рекурсию

Google

Admin
ERROR: S client not available

Aleksej
15.09.2016
09:58:52

Никита
15.09.2016
09:58:57
известна

Aleksej
15.09.2016
09:59:03
тогда не нужна рекурсия

Никита
15.09.2016
10:00:34
https://i.gyazo.com/3b964856968493cfe495f5eb29fbd244.png
вот так генерируются объекты
я их на яндех мапах рисую
и так как координаты могут совпадать
объекты надо мерджить
вот

Aleksej
15.09.2016
10:01:40
о, это получится не просто редюс
а мап редюс

Dreamerinnoise
15.09.2016
10:28:35

Никита
15.09.2016
10:28:51
я уже через редьюс сделал :)

Kanat
15.09.2016
11:01:39
Привет всем
Можете помочь?
Сегодня положил себе на кошелёк, не учедэл комиссию, можете скинуть 20 руб?

V
15.09.2016
11:03:41
Конечно же нет!

Vladimir
15.09.2016
11:14:49
лол

Никита
15.09.2016
13:34:54

Google

Никита
15.09.2016
13:35:21
не надо заворачивать реквест ручками в неу промис везде
не надо писать длииииные строчки
ну и async/await можно добавить

Dmitry
15.09.2016
13:43:20
и нужно быть толерантным к чужому коду и перфекционистом к своему)

Dreamerinnoise
15.09.2016
14:17:27
хто нить работал с texturepacker?

Никита
15.09.2016
14:27:46
А как лучше?

Никита
15.09.2016
14:39:19

Vladimir
15.09.2016
14:40:53
а еще не надо использовать геокодинг яндекса

Никита
15.09.2016
14:41:05
?
а какой лучше? гугловый?