Pull to refresh
47
0
Максим Земсков @Nodge

Lead Frontend Engineer

Send message

У нас все то же самое в проекте :)

Пришли к вот такому:

  • в редакторах кода сборка не требуется, language server собирает в памяти на лету

  • для tsc настроили outDir в node_modules/.cache. Проверка типов выполняется чуть дольше из-за записи файлов на диск, но не критично.

  • еще могут возникнуть проблемы с typescript-eslint, из коробки он тоже требует сборку. Решается включением параметра EXPERIMENTAL_useProjectService.

TypeScript умеет изолировать алиасы на уровне пакета в монорепе, если настроить Project References. Из минусов – приходится дублировать монорепные зависимости и в package.json, и в tsconfig.json.

С расширением интересно получилось у Вас =)
Жаль, конечно, что приходится для выгрузки данных делать такие костыли. До публичного api все как-то руки не доходят, но не исключено что оно таки появится.
Функции escape и unescape обозначены как deprecated. Стоит ли их использовать в новых проектах?
Обновил статью и код примера, заменил base64 на экранирование unicode символов. Получилось действительно намного эффективнее. Спасибо за подсказку.

Сам алгоритм обработки ключевиков выходит за рамки данной статьи. Возможно напишу о нем позже.
Имеется ввиду сколько осталось от первоначального объема, как пишут в архиваторах.
Обновил статью и код примера. Экранировать unicode оказалось эффективнее, чем hex. И, тем более, чем base64. Спасибо за подсказку.
Для php не ставил, а рабочей реализации на браузерном javascript не видел. По ссылкам выше: первая для node.js, вторую можно запустить в браузере, но она не работает: lz4.uncompress(lz4.compress('test')) выдаст ошибку.
Спасибо за наводку, не знал.
В таком случае, если есть подписанный ssl сертификат, то действительно выгоднее использовать сжатие на уровне протокола. Работать должно быстрее и эффективнее.
Как верно ответил Fesor, нужно передавать как бинарные данные. Вот небольшой пример для canvas.
15% Рунета могут загружать несжатые данные. В нашем проекте старые браузеры все равно пролетают из-за скорости работы, поэтому вопрос совместимости не стоял.
Нет проблемы увеличить максимальный размер запроса. Сжимая мы экономим трафик и ускоряем загрузку данных, особенно для пользователей с медленным соединением.

А приведенная цитата про алгоритм относится к обработке ключевых слов в нашем проекте. Само сжатие вносит относительно незаметный overhead.
redirect_uri передается для всех OAuth 2.0 провайдеров.
Выдержка с gitbub:
EOAuth2Service.php#L100
...'&redirect_uri='.urlencode($this->getState('redirect_uri'));
Суда по всему, вы скачали устаревшую версию. Последнюю всегда можно найти на github.com.
Запилить — дело не хитрое. Вопрос только в уместности данной функции в простом сервисе заметок и, конечно, производительности. Если такая функция когда-нибудь и появится, то точно в виде скрытой «пасхалки», чтобы не мешать остальным пользователям.
По поводу коротких тестовых заметок:
… не надо задумываться об их организации, не надо придумывать названия ...

Листик этим и отличается — приклеил стикер на свободное место и не надо задумываться куда его сохранять, как перетаскивать на другой компьютер, название тоже не надо придумывать. При этом вы всегда помните, где приклеили тот или иной стикер. А поиск, в общем-то, у нас тоже скоро появится.

PS Для кода редактор, конечно, лучше подходит. Или специализированный сервис.
Спасибо за идею, добавим ссылки при создании заметок из дополнения.
Как MariaDB в работе?

Честно говоря, поставил будучи вдохновленным статьями на хабре. Никаких проблем пока не возникало, но и разницы на текущих объемах данных не заметно. =)

При удалении из корзинки анимация дёргается.

Нужно переходить от js анимации к css. Уже в планах.

— Хочу создание заметок по дабл-клику.

Сделаем.

Хочу просмотр PDF.

В каком виде? Открывать pdf в браузере вместо скачивания? Или показывать содержимое pdf в стикере?
Однако, первого варианта не будет из-за уязвимостей, а второго варианта нет в планах.
Поправили, спасибо за отзыв.
Большое спасибо за найденную проблему. Вообще все значимые действия делаем через post-запросы, а logout как-то выпал из поля зрения. Сейчас исправим =)
На данный момент мы намеренно чистим весь html код, оставляя только ссылки и абзацы. Связанно это с особенностями работы contenteditable в разных браузерах. Например, вставив html код на работе через Google Chrome, вы не сможете его редактировать дома через Opera. Оказалось, что добавить кроссбраузерную поддержку даже самых простых тегов в contenteditable не так то просто…
Мы планируем расширить функциональность редактора (самый первый пункт в «Будущее проекта»).

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Frontend Developer, Fullstack Developer
Lead