Обновить
107
0
Кирилл Коншин@dfuse

Principal Software Developer

Отправить сообщение
Уберите наконец bower assets :) 2017 год на дворе…
Но это же ужас дикий ))) и запись у вас не полная — пути до istanbul и mocha потерялись. Это затыкание дырок, а не способ, увы. А вот нормальная запись:

./node_modules/.bin/istanbul \
    cover \
    -x tests.js \
    --dir=./build/coverage \
    --report=lcov \
    --hook-run-in-context \
    ./node_modules/mocha/bin/_mocha \
    -- \
    --reporter spec \
    tests.js
Вот этим вопросом и стоило бы задаться. Все сложные скрипты удобнее делать через Makefile, банально синтаксис лучше, чем shell команды экранированные в JSON, например какой-нибудь хитрый запуск тестов:

./node_modules/.bin/istanbul cover -x tests.js --dir=./build/coverage --report=lcov --hook-run-in-context ./node_modules/mocha/bin/_mocha -- --reporter spec tests.js

Согласитесь, длинно… В Makefile хотя бы на новые строки можно перенести.

Я лично использую NPM скрипты только если команды очень простые и короткие или если достоверно известно, что будут юзеры на винде.
Чтоб не перерисовывать часто есть различные обертки, делающие проверку аргументов и пропускающие рендер, если аргументы не менялись. Бонус immutable state.
А как насчет валидации (клиентской и серверной), а также распихивания ошибок по полям? Вы поймите, прошли те времена, когда юзеры брали скрипт и впендюривали его на страницу, сейчас все живут в некой экосистеме, будь то Angular, React, Knockout, Ember или любая другая, где есть уже шаблоны, есть событийная модель и тд и тп.
jQuery еще подключить надо. А вышеописанное — стандартная библиотека, которая есть везде, совместимая с любым React/Angular/PlainVanilla.

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

Прошли те годы, когда подобное было актуально, лет 5 назад вы бы получили море звезд и хвалебных отзывов, но времена поменялись.
Смотрите

var f = new FormData(), d = document, byId = d.getElementById;
f.append('text', byId('text').value); // текстовые значения
f.append('file', byId('file').files[0]); // файлы из формы
f.append('file2', new File([JSON.stringify(...whatever...)], 'request.json', {type: 'application/json'})); // произвольное барахло
fetch('url', {method: 'post', body: f}).then(...).catch(...);

Вот и все, и работает почти везде.

Про стилизацию я вообще молчу — она у всех разная, на реальном сайте я быстрее напишу CSS с нуля, чем буду накручивать любой коробочный. А любые визуальные фидбеки отправки я навешу в одно действие в .then и .catch.
Потому что года три назад никто ничего не знал про Angular, React и прочие, а также про HTML5 File Api, WhatWG Fetch и тд. Зачем в 2016 году библиотека по работе с формами — не ясно.
Сравнить с Clojure-Script можно? А то статья вообще ни о чем получается, ну пакеты, ну REPL, а дальше-то что?
Есть еще такой момент, что это все было особо популярно для UI спецификаций, мол, кликни туда, увидь это, напечатай то. И вот их как раз генерировать вполне можно. Для суровых юнит тестов это несколько меньше подходит, вряд ли кто-то потом с распечатанной спекой будет смотреть на класс и думать, работает ли он как написано )
Сахар нужен чтоб потом со спеки можно было чуть ли не текстовое описание сгенерировать.
Насколько я понял, старые тарифы пока не удаляют. Ну а в случае чего в компании уже есть Gitlab для совсем внутренних проектов, перенесем все туда.
Гитлаб можно сравнивать с Atlassian Stash и тд, а не с облачными сервисами по подписке. Они тоже конкуренты, но это совсем другой сегмент и принцип. Это как облачный блог со стенделоун сравнить. Гитхаб и Битбакет — это прямые конкуренты.

Я прекрасно понимаю ваши тезисы про возможности, охват, диктование условий — согласен. Но все же различия в цене почти на порядок — это явно перебор. Думаю это очевидно.
Хорошо если так. Но я все равно не понимаю, чем обкурились маркетологи, раз предлагают план в 8 (!!!) раз дороже, чем конкурент.
Фигня какая-то. Сейчас 22 репозитория и ~91 юзер (81 members, 6 pending invitations, 4 outside collaborators) — голд план за $100 в месяц. С новым тарифом — $799.00/month. У BitBucket план на 100 человек стоит те же самые $100.
Promise-based actions например, и работу с формами. Ну и вообще рекомендации по всему зоопарку плагинов.
Babel отличный пример почему монорепо — не зло, если использовать с умом. Там все очень взаимосвязано, а отдельные пакеты очень маленькие. Менеджить такое в отдельных репозиториях была бы такая боль, что лучше об этом вовсе не думать даже.
Если их миллион — раз не жалуются и не заводят баги, то велика вероятность, что все окей. Миллионы мух не могут ошибаться ;)
Да, но бонус в том, что если в этой библиотеке починят и оптимизируют — вы тоже будете в выигрыше, если обновитесь.
Зафиксируйте версию и обновляйтесь только по мере надобности. Зависимости вида * или 1.* или ^1.2 — это все дурной тон.

Информация

В рейтинге
Не участвует
Откуда
San Francisco, California, США
Дата рождения
Зарегистрирован
Активность