Рубрика «github» - 40

2,8 млн репозиториев, 3 ТБ исходного кода и метаданных

База свободных репозиториев Github доступна через интерфейс BigQuery - 1

Google в сотрудничестве с Github выложила для общественного пользования полную актуальную базу всех open-source репозиториев через интерфейс BigQuery. (Проверка свободной лицензии осуществляется через API.)

Наборы данных Google BigQuery Public Datasets содержат информацию о более чем 2,8 млн свободных репозиториев, о более чем 2 млрд файлов (исходный код последних версий 163 млн файлов), 145 млн коммитов и т.д. Общий размер базы — около 3 терабайт.

Раньше архивы Github выкладывались на Github Archive. Теперь всё это богатство доступно для полнотекстового поиска и анализа через простые SQL-запросы. Github обещает обновлять наборы данных еженедельно.
Читать полностью »

Device Lab от Google: маячки с технологией Eddystone / Хабрахабр

Читать полностью »

Думаю, нет нужды рассказывать хабрапользователю что такое Git / GitHub, pre-commit и как наносить ему hook справа. Перейдем сразу к делу.

В сети много примеров хуков, большинство из них на shell'ах, но ни один автор не уделил внимание одному важному моменту — хук приходится таскать из проекта в проект. На первый взгляд — ничего страшного. Но вдруг появляется необходимость внести изменения в хук, который уже живет в 20 проектах… Или внезапно нужно переносить разработку с Windows на Linux, а хук на PowerShell'е… Что делать? ??????? PROFIT

«Лучше так: 8 пирогов и одна свечка!»

Примеры, конечно, сильно утрированы, но с их помощью выявлены неудобства, которых хотелось бы избежать. Хочется, чтобы хук не требовалось таскать по всем проектам, не приходилось часто «допиливать», но чтобы при этом он умел:

  • выполнять проверку отправляемого в репозиторий кода на валидность (например: соответствие требованиям PEP8, наличие документации итд);
  • выполнять комплексную проверку проекта (юнит-тесты итд);
  • прерывать операцию commit'а в случае обнаружения ошибок и отображать подробный журнал для разбора полетов.

И выглядел приблизительно так:

python pre-commit.py --check pep8.py --test tests.py

Понятно, что сам хук — всего лишь стартер, а всю особую уличную магию выполняет запускаемый им скрипт. Попробуем написать такой скрипт. Заинтересовавшимся — добро пожаловать под кат.
Читать полностью »

Device Lab от Google: Android TV / Хабрахабр

Читать полностью »

Device Lab от Google: Chromecast 2.0 и Chromecast Audio / Хабрахабр

Читать полностью »

Исходный код CryEngine 5.1 опубликован на Github - 1

Немецкая компания Crytek решила опубликовать на Github исходный код игрового движка CryEngine (последняя версия 5.1). Перенести репозиторий на Github решили недавно. Разработчики говорят, что с помощью системы контроля версий Git гораздо удобнее сравнивать ревизии и отслеживать изменения.

CryEngine написан на языке C++. Раньше новые версии движка с исходниками выпускались в zip-архивах. Чтобы определить, какие сделаны изменения, нужно было распаковать архивы предыдущей и новой версий и сравнить файлы. В системе Git всё делается проще. К тому же, публикация на Github, по мнению некоторых экспертов, мотивирует сообщество open-source разработчиков оптимизировать движок под Linux/OpenGL/Vulkan.
Читать полностью »

Немного истории

В самом начале 2010 года Vincent Driessen пишет отличную статью A successful Git branching model. Для понимания того, о чем пойдет речь дальше, со статьей нужно, конечно же, познакомиться. А для тех, кому сложен язык оригинальной статьи, на хабре есть её отличный перевод.

С этого момента описанная модель ветвления GitFlow, начинает, что называется, расходиться по миру. Её берут на вооружение многие команды. Авторы пишут много статей об успешном её использовании. Она получает поддержку в большинстве инструментов, которые используют разработчики:

Git

Кажется, что модель идеальна. Быть может так оно и есть, если у вас небольшая команда, неизменяемый скоуп релизов, высокая культура работы с VCS. Тогда, действительно, GitFlow может и удовлетворит все ваши потребности. Но, к сожалению, описанные условия подходят не всем командам и не всем проектам. К слову, найти статьи, в которых бы авторы описывали проблемы этой модели не так уж и просто даже в 2016 году. Но как мы все знаем, серебряной пули нет, а, значит, и в этой модели всё хорошо далеко не для всех.

Читать полностью »

Теперь платить нужно за число пользователей, а не приватные репозитории

GitHub поменял тарифы - 1Сервис для хостинга проектов GitHub поменял методы ценообразования. Сайт предоставляет неограниченное пространство для создания публичных репозиториев кода и свободных проектов. В каждом из публичных проектов может быть неограниченное количество участников. Эти правила были раньше, эти принципы остаются в силе и поныне.

GitHub монетизируется приватными репозиториями. В прошлом организациям и частным разработчикам предлагалось оплачивать количество репозиториев. Подобное вызывало критику, заставляло хранить старые проекты локально. Теперь на платных тарифах количество приватных репозиториев никак не ограничено. В дополнение к базовому тарифу платить нужно за размер команды.
Читать полностью »

Security Week 18: VirusTotal за справедливость, уязвимость в Android, утечка токенов Slack - 1Начнем выпуск с совсем свежей новости, которая, впрочем, имеет лишь косвенное отношение к ландшафту угроз. 4 мая в блоге сервиса VirusTotal, ныне принадлежащего Google, появилась внешне неприметная запись. Сервис, позволяющий агрегировать информацию о вердиктах различных антивирусных движков, теперь будет по-другому «отдавать» информацию о детектах. Теперь для того, чтобы получать данные о задетектированных файлах автоматически, с помощью API, требуется в обязательном порядке подключать свой собственный продукт к системе VirusTotal.

Почему это важно? Изначально VirusTotal был проектом для исследователей: определить, детектируют ли защитные решения определенный файл — означало сэкономить время и потратить его на более интересные вещи. По мере роста сервиса появились и новые возможности: информация о том, когда был загружен файла иногда также могла многое подсказать о его предназначении и происхождении (особенно, если файл загружался пострадавшим пользователем, а то и самим автором вредоносной программы). Сейчас через VirusTotal проходят миллионы файлов: за последние семь дней 1,2 млн, из которых 400 тысяч задетектированы одним или несколькими антивирусными движками.

Короче, если есть доступ к этой информации, то только на ее основе можно создать свое, достаточно неплохо работающее типа защитное решение. Или, как минимум, получить несправедливое преимущество, получая от индустрии данные, но не отдавая ничего обратно. Not anymore. В посте VT приводится интересный набор правил использования сервиса, где его создателями критикуется пара устоявшихся мифов. Подробнее о них — под катом.
Все выпуски дайджеста доступны по тегу.
Читать полностью »

Efficient Rails — новая книга по оптимизации процесса разработки Rails-приложений - 1

Эффективные Рельсы — более точного названия для книги придумать было бы сложно. Всё содержание описывается этими двумя словами и раскрывается для нас в сотне рецептов на 380+ страницах. В ожидании выхода финальной версии Rails 5, данное чтиво — то, на что стоит потратить время, благо потребуется его не так много. Но данное вложение вернётся колоссальной прибылью знаний и позволит, как говорится на обложке, «создавать Rails-приложения с нечеловеческой скоростью». Да и не только Rails, да и не только Ruby. Первые две главы включают в себя обилие информации по работе с терминалом и СКВ. Подробности под катом.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js