
Dmitrii
08.12.2017
07:02:22

Вишневый чай
08.12.2017
07:02:48

Dmitrii
08.12.2017
07:04:00
пиво приносить умеет

Вишневый чай
08.12.2017
07:04:40
ну понятно

Google

Алексей
08.12.2017
07:13:12

Вишневый чай
08.12.2017
07:13:58
речь наверное о прекомит хуке ?

Алексей
08.12.2017
07:14:40
Нет, его можно и для eslint поставить незамысловато)

Вишневый чай
08.12.2017
07:15:49
буду примного благодарен, к сожалению беглый осмотр доки создает впечатление что еслинт умеет тоже самое

Леха
08.12.2017
07:18:26

Алексей
08.12.2017
07:19:12

Вишневый чай
08.12.2017
07:20:21
судя по дискуссиям на гитхабе раньше prettier умел из
foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne(), noWayYouGottaBeKiddingMe());
делать
foo(
reallyLongArg(),
omgSoManyParameters(),
IShouldRefactorThis(),
isThereSeriouslyAnotherOne(),
noWayYouGottaBeKiddingMe()
);

Алексей
08.12.2017
07:20:55

Вишневый чай
08.12.2017
07:21:06
да, это уже не фича
больше примеров найти не удалось
есть подозрения что prettier не нужен

Ivan
08.12.2017
07:44:00
Привет!
Не приходилось никому делать стрим mp3 в браузер ? т.е. приходят с определеного источника mp3 файлы (раз в секунду) - нужно отправить их в браузер, так что бы воспроизведение было неприрывным

1nd2rd3st
08.12.2017
07:50:14
Icecast радио штоле?

Google

Ivan
08.12.2017
08:02:37
Ну радио вариант конечно
но хотелось бы самописное, т.к. там много логики к mp3 файлам применяется
я так понимаю нужно смотреть в сторону rtsp сервера ?

Kolya
08.12.2017
08:03:19
Я как-то радио поднимал

1nd2rd3st
08.12.2017
08:04:53

Ivan
08.12.2017
08:05:35
Хм, хорошо. Спасибо!

Anton
08.12.2017
08:11:31

1nd2rd3st
08.12.2017
08:14:02
(ctx.user || ctx.session.user).roles.push(role)
Хотя сейшин наверно лишний
Ну массив с ролями объявить надо, лучше сразу при логине где-то в паспорте

Dmitry
08.12.2017
08:21:12

Anton
08.12.2017
08:21:40

Dmitry
08.12.2017
08:24:47

Anton
08.12.2017
08:25:08

Dmitry
08.12.2017
08:27:52
У тебя с клиента приходит action
- 1 десериализуем стейт из хранилища
- 2 выполняем action - он не модифицирует состояние, а возвращает новый стейт
- 3 смотрим на разницу (diff) стейтов и записываем ее в БД
Отправка сообщений и бизнес логика на этапе 2

Edward
08.12.2017
08:52:26
@steppefox здравствуйте, Эльдар

Eldar
08.12.2017
09:03:58
@edemtech здравствуйте Эдуард оО

Anton
08.12.2017
09:05:28
Народ, есть такой код в config/bot.js
const { BOT_TOKEN, BOT_ADMINS = '', BOT_USERS = '' } = process.env
module.exports = {
BOT_TOKEN,
ADMINS: BOT_ADMINS.split(','),
USERS: BOT_USERS.split(',')
}
В тесте хочу его замокать. Делаю так:
import * as BotConfig from './../../config/bot'
BotConfig.ADMINS = ['1']
Но в тестируемом классе значение все равно из .env. Забираю так:
import { ADMINS, USERS } from './../../config/bot'
Что я делаю не так?

Dmitrii
08.12.2017
09:07:40
насколько я помню импорты иммутабельны, + попробуй вот так import BotConfig from './../../config/bot'

Google

Anton
08.12.2017
09:08:11
как правильно делать? Как подменять конфигурационные значения?

Manntis
08.12.2017
09:11:42
Есть два сервера на Node и Python, можно считать как микросервисы.
Хочу осуществить обмен данными между ними, оба находятся в одной локальной сети.
Данные в пакете от 4МБ и выше. Socket.io справится с этой задачей? Не прибегая к использованию slice() для нарезки пакетов и постепенным сбором кусков на принимающей стороне?

Michael ?
08.12.2017
09:17:56
Зависит от нагруженности, думаю

Michael
08.12.2017
09:18:17
Помнится, у socket.io нет лимита на размер данных.

Michael ?
08.12.2017
09:19:39
Да, главное канал не забить

Dmitry
08.12.2017
09:20:20

Manntis
08.12.2017
09:20:35

Michael
08.12.2017
09:21:28
Ситуация другая, пробуй.

Manntis
08.12.2017
09:21:47

Илья
08.12.2017
09:22:13

Gleb
08.12.2017
09:22:33

Илья
08.12.2017
09:22:43
Как отправить переменную из index.html на server.js?

Manntis
08.12.2017
09:23:48

Roman
08.12.2017
09:24:19

Dmitry
08.12.2017
09:24:24

Manntis
08.12.2017
09:24:59

Roman
08.12.2017
09:25:08

Michael
08.12.2017
09:25:17
Объясните друг другу по очереди)

Илья
08.12.2017
09:25:59
Я был бы тоже не против примера про socket.io и передачу переменных

Google

Manntis
08.12.2017
09:28:00

Admin
ERROR: S client not available

Roman
08.12.2017
09:28:51

Buka
08.12.2017
09:29:10
Раньше были стековерфлоу девелоперы, а ща телеграм девы появились.

Mikhail
08.12.2017
09:29:41

Manntis
08.12.2017
09:37:40
через файл EnableServer производится запуск, а в папке server_modules прочие мелкие механики
делалось исключительно в рамках освоения платформы

енот
08.12.2017
09:37:41
Раз вы тут эту тему подняли, посоветуйте механизм передачи сообщений через нестабильную сеть?

Anton
08.12.2017
09:43:05

Manntis
08.12.2017
09:43:05

Eldar
08.12.2017
10:01:03

енот
08.12.2017
10:01:15

Eldar
08.12.2017
10:01:46
я не про это
Тебе нужен механизм досылки сообщений после поднятия сети?

енот
08.12.2017
10:02:11
мне нужен черный ящик которому я говорю сообщение, в очередь, а он их по возможности шлет и контролирует что всё дошло

Manntis
08.12.2017
10:02:54
Формировать md5 строку пакета данных на клиенте, и если сервер получил пакет то вернет такую же строку клиенту. И вот так чекать пока данные не будут 100% отправлены

Yaroslav
08.12.2017
10:03:28
привет всем! сервер на ноде зависает, когда загружают картинку больше 20 МБ, на сервере стоит 4ГБ оперативной памяти, проблема в этом или в чем-то другом?

Manntis
08.12.2017
10:03:42

Yaroslav
08.12.2017
10:04:44
ну там еще jimp их сжимает
как вообще правильно работать с большими картинками?

Evgeny
08.12.2017
10:07:14
синхрнная загрузка исображения?

Eldar
08.12.2017
10:07:15
А тебе вообще действительно нужны картинки такого размера?

Google

Manntis
08.12.2017
10:07:20

Yaroslav
08.12.2017
10:13:07
она скачивается с гугл драйва

Manntis
08.12.2017
10:13:27
?

енот
08.12.2017
10:13:28

Yaroslav
08.12.2017
10:13:33
const options = {
url: 'https://www.googleapis.com/drive/v3/files/' + fileId + '?alt=media',
headers: {
'Authorization': 'Bearer ' + token
}
};
let fileName = '';
if (isPost) {
fileName = uuid() + req.body.name;
const fullPath = path.join(__dirname, '../public/uploads/drive/') + fileName;
request(options).pipe(fs.createWriteStream(fullPath)).on('finish', function () {
Minifier(fullPath).then(function () {
res.status(200).send({
path: '/uploads/drive/' + fileName
});
}).catch(function (err) {
res.status(500).send(err);
});
clearDirectories.clearUploads();
});
}

Gleb
08.12.2017
10:13:34
ну там еще jimp их сжимает
Он не совсем-совсем зависает, он немного фризит, верно? Ты просто Jimp'ом блочишь EventLoop, так как Jimp на чистом JS все операции производит. Не понимаю, чё всё пошли Jimp юзать, у него ж даже в мане написанно, что сие - для браузера! Бери sharp или аналоги.

Yaroslav
08.12.2017
10:13:39
как-то так
один раз совсем отвалился)