Что такое ERC-4337 и почему это стало важным обновлением?
Обзор
-
Введение
-
Как работает ERC-4337?
-
Преимущества ERC-4337
-
Что такое Paymaster-контракт?
-
Умные кошельки
-
Как работает альтернативный мемпул?
-
Заключение
Что такое ERC-4337 и почему это стало важным обновлением?
Введение
Как работает ERC-4337?
Преимущества ERC-4337
Что такое Paymaster-контракт?
Умные кошельки
Как работает альтернативный мемпул?
Заключение
Rollup — это сборщик javascript приложений и библиотек нового поколения. Многим он давно знаком как перспективный сборщик, который хорошо подходит для сборки библиотек, но плохо подходит для сборки приложений. Однако время идет, продукт активно развивается.
Я впервые попробовал его в начале 2017 года. Он сразу понравился мне за поддержку компиляции в ES2015, treeshaking, отсутствием модулей в сборке и конечно простым конфигом. Но тогда это был сырой продукт, с небольшим числом плагинов и очень ограниченной функциональностью, и я решил оставить его на потом и продолжил собирать через browserify. Вторая попытка была в 2018 году, тогда он уже значительно оброс комьюнити, плагинами и функционалом, но все еще не хватало качества в некоторых функциях, включая watcher. И вот наконец в начале 2019 года можно смело сказать — с помощью Rollup можно просто и удобно собирать современные приложения.
Читать полностью »
Parcel — маленький и быстрый бандлер, позиционируется как решение для маленьких проектов. С момента первого релиза (7 дней назад) уже собрал 8725 звездочек на гитхабе. Согласно официальной документации имеет следующие плюсы:
Быстрая сборка
Parcel использует worker process для многопоточной сборки, а так же имеет свой файловый кэш для быстрой пересборки при последующих изменениях.
Собирает все ваши ассеты
Из коробки имеется поддержка ES6, TypeScript, CoffeeScript, HTML, SCSS, Stylus, raw-файлов. Плагины не требуются.
Автоматические преобразования
Весь код автоматически проходит через Babel, PostCSS, PostHTML — подхватываются при необходимости из node_modules.
Разделение кода без лишней конфигурации
Используя динамический import(), Parcel разделяет бандл для возможности быстрой начальной загрузки точки входа в приложение
Горячая перезагрузка
Типичный хот-релоад без конфигурации — сохраняете изменения и они автоматически применяются в браузере.
Дружелюбный вывод ошибок
При ошибке подсвечивается кусок кода, в котором она произошла.
Последнее время все чаще и чаще на ряду с другими сборщиками javascript стал встречать rollupJS. И даже стал использовать его для написания модулей, используемых в основном проекте компании. Поэтому хочу поделиться с вами переводом стать об этом компактном и удобном сборщике.
Стиль — авторский.
Узнаете, об использовании Rollup как более компактную и эффективную альтернативу webpack и Browserify для объединения файлов JavaScript.
В конце этого руководства мы сконфигурируем Rollup для:
Пару раз проскочив в условном Ruby Weekly, сайт инициативы Ruby Together не зацепил моего внимания, хотя должен был. Давайте разберемся, на что нам предлагают потратить свой трудовой доллар.
Ruby Together — некоммерческая организация, занятая привлечением и распределением денег на развитие инфраструктуры языка Ruby. Уже сейчас под крылом организации находятся столпы экосистемы Ruby: гем bundler, репозиторий rubygems.org и сам проект rubygems. Организация управляется советом директоров, который состоит из хорошо знакомых всем рубистам имен: André Arko, Aaron Patterson (интервью для хабра), Steve Klabnik (интервью для хабра, «Как я нахожу время?»), Sarah Mei, Terence Lee, Ines Sombra, Joel Watson.
Индивидуальное членство в организации стоит $40 в месяц, корпоративное членство – $800. Взносы дают право голоса и ряд бонусов, о которых под катом. Для тех, кто просто хочет помочь проекту деньгами, существует статус «друга», без доступа к внутренним ресурсам и права голоса, с ежемесячным взносом $10, либо разовым взносом произвольной суммы. На текущий момент к проекту присоединились компании Stripe и Engine Yard, а также более 30 индивидуальных участников.
Почему существует столько много различных пакетных менеджеров? Их можно встретить как во многих операционных системах (apt, yum, pacman, Homebrew), так и работая со многими языками программирования (Bundler, Cabal, Composer, CPAN, CRAN, CTAN, EasyInstall, Go Get, Maven, npm, NuGet, OPAM, PEAR, pip, RubyGems, и т.д. и т.п.). «Каждый язык программирования нуждается в собственном пакетном менеджере, это уже стало общепризнанной истиной». Что за необъяснимое притяжение заставляет языки программирования, один за другим, скатываться в этот обрыв? Почему бы нам просто не использовать уже существующие пакетные менеджеры?
Читать полностью »
Начну с пиара другого проекта, который мне очень нравится использовать — pyenv. Это порт rbenv для python, который служит для установки нужных версий python в папку пользователя в недра ~/.pyenv, и активации нужной версии руками или, что более грамотно, через файл .pyenv-version в папке проекта.
Следуя этой старой доброй традиции обмениваться здравыми идеями с ruby сообществом, я решил портировать идею Bundler (http://bundler.io/), и назвал его Pundle. Это вторая часть рабочего процесса связанного с версиями интерпретаторов и пакетов в руби, и как и первая, достаточно разумна.
Главная идея pundle в том, чтобы не создавать отдельную директорию на каждую комбинацию версий пакетов как в virtualenv, а вместо этого поставить все пакеты в директории типа .pundlerdir/python-version-variant/package-name-2.3.4, и при старте проекта, взяв информацию из frozen.txt, активировать нужные версии пакетов
Доброго времени суток читатель !
15 июня в севастопольская команда Kodo организовывает двухдневные курсы railskickstart, посвященные, как не сложно догадаться, экосистеме Ruby on Rails и связанные с ней технологиями. Наша цель – не демонстрировать 15-минутный блог и после этого говорить, как все замечательно. Такого материала в просторах интернета огромные кучи. Мы же хотим рассказать о вещах, которые остаются за кадром, о реальном опыте использования и даже случаях, когда лучше не использовать RoR. Да, вам это не показалось – есть очень много случаев, когда использовать рельсы не самый лучший вариант. Однако, стоит понимать, что 2 дня — это очень малый промежуток времени, за который можно только прикоснуться к чему-то, но не понять. Поэтому мы запускаем курс материалов, направленных на знакомство с Rails. Надеемся, что прочитав их, будущий участник будет говорить с нами на одном языке, и обрастет многочисленными вопросами, на который мы с радостью ответим. Если же вы не живете в г. Севастополе или не можете прийти к нам 15 и 16 числа, то это совсем не повод не читать их(статьи) и не задавать возникшие вопросы и пожелания в комментариях.
Первый материал будет посвящен работе в терминале. Овладев набором команд, Вы с легкостью сможете создавать различные компоненты системы, выполнять команды и узнавать различную информацию. Все примеры будут приведены для версии 3.х.х
Читать полностью »
Бандлер оказался замечательным средством установки и отслеживания джемов, которое так нужно каждому руби проекту настолько, что почти каждый проект использует его. Однако, несмотря на его повсеместность, большинство пользователей не знают о встроенных средствах и помощниках бандлера. В попытке повысить осведомленность (и производительность Руби разработчиков), я собираюсь рассказать вам о них.
http://ruby.rpod.ru/284727.html