Pull to refresh
  • by relevance
  • by date
  • by rating

Автозавершение для Rake

Ruby *


Автозавершение в bash’е по Tab’у — это невероятно удобная вещь. И оно точно нужно для rake, которым каждый программист на Ruby пользуется часто.

Особо ленивые программисты уже давно прописали самодельные скрипты в своих .bashrc. Но настоящий дзен-программист не должен любить велосипеды и чтит репозитории и пакеты. Поэтому я собрал скрипт в пакет и выложил в Ubuntu on Rails PPA.

Установка


Ubuntu
  1. Добавляем Ubuntu on Rails PPA:
    $ sudo add-apt-repository ppa:ubuntu-on-rails/ppa
  2. Устанавливаем пакет rake-completion:
    $ sudo apt-get install rake-completion
Другие UNIX
  1. Клонируем репозиторий:
    $ git clone git://github.com/ai/rake-completion.git
  2. Копируем скрипт в системную папку:
    $ sudo cp rake-completion/rake /etc/bash_completion.d/.
Читать дальше →
Total votes 33: ↑28 and ↓5 +23
Views 1.3K
Comments 24

Rake Tutorial

Lumber room
Sandbox
Rake — инструмент для автоматизации сборки программного кода, написаный на Ruby, подобен таким инструментам как make, Ant или Phing. Хотя между ними существует огромная разница. В отличие от других инструментов, Rake не обеспечивает внешний DSL (например, XML-файл сборки в Ant). Вместо этого, все задачи описываются на чистом Ruby. Таким образом вы получаете полную гибкость и можете пользоваться полезными фичами Ruby.

Читать дальше →
Total votes 25: ↑21 and ↓4 +17
Views 20K
Comments 4

Управляем версиями с помощью Bundler

Ruby *
Translation
Недавно вышло обновление rake с версии 0.8.7 до версии 0.9.0, которое наделало много шума в сообществе и в очередной раз выявило проблему управления версиями. Мне бы хотелось прояснить ситуацию и снова проговорить основные моменты, которые я уже упоминал во времена релиза Bundler 1.0. Вначале я расскажу о простых правилах работы, а затем слегка углублюсь в детали.
Читать дальше →
Total votes 42: ↑39 and ↓3 +36
Views 14K
Comments 4

Создание гемов — Руководство

Ruby *
Хотя на Хабре уже проскакивали статьи о создании гемов, они либо содержат устаревшую, либо неполную информацию.

Как же на самом деле надо создавать, развивать и публиковать свои гемы?

Современный подход заключается в использовании Bundler совместно с другими инструментами, такими, как Git, YARD и RSpec-2.
Читать дальше →
Total votes 32: ↑29 and ↓3 +26
Views 8.7K
Comments 12

Рельсы сошли с рельс: Почему я переписываю Archaeopteryx на CoffeeScript

Programming *Ruby on Rails *Node.JS *CoffeeScript *
Translation
Вы бывали на вечеринках, где друзья с работы и друзья из колледжа не разговаривают?

Я запостил видео на Tumblr, которое бы никогда не запостил на Facebook:


Это гитарист, отжигающий под «Bangarang» Skrillex'а.
Эй, при чём тут вообще Рельсы?!
Total votes 86: ↑66 and ↓20 +46
Views 4.7K
Comments 94

Rake + Albacore. Сборка .Net проекта с помощью Ruby

Ruby *.NET *
Sandbox
Когда речь заходит о сборке .Net проектов, первое, что приходит в голову, это утилита MSBuild + сопутствующие build-скрипты. Действительно, пока проект небольшой, ее возможностей вполне хватает. Но со временем количество кода растет, структура продукта становится все более сложной и запутанной, и начинаешь задумываться о поиске более гибкого решения.

В нашем случае, таким решением оказалась связка Rake+Albacore. Что же это такое? Rake — инструмент для автоматизации сборки програмного кода, написанный на Ruby. Про Rake на хабре уже была довольно детальная статья пользователя Lass_ua (за которую, кстати, ему большое человеческое спасибо), поэтому повторяться не буду. Скажу только, что мы выбрали его за исключительную гибкость, которую не могли получить от MSBuild скриптов. Она обусловлена тем, что весь процесс сборки описывается, по сути, программой на Ruby, что открывает перед нами море возможностей.
А вот про Albacore я, к своему удивлению, не нашел ни одной статьи, хотя это уже достаточно зрелый и известный проект
Читать дальше →
Total votes 8: ↑5 and ↓3 +2
Views 1K
Comments 14

rake setup: Конфигурация окружения для работы проекта на Ruby On Rails

Ruby *Programming *Ruby on Rails *
Tutorial
Доброго времени суток!

Перечитывая блог Signals Vs Noise я наткнулся на интересную статью

В ней рекомендовали создать rake задачу, которая полностью подготовит ваше приложение к разработке после клонирование из репозитория.

> `rake setup`

> All our apps has a rake setup task that’ll run bundler,
> create the databases, import seeds, and install any auxiliary
> software (little these days) or do any other setup. So when you git
> clone a new app, you know that “rake setup” will take care of you.

Я расскажу о том, как сделать подобную задачу в Ruby On Rails приложении.
Читать дальше →
Total votes 12: ↑9 and ↓3 +6
Views 8.1K
Comments 0

Когда гаснет звезда: интервью с Джимом Вейрихом

Ruby *Programming *
Translation
От переводчика: Джим Вейрих — легендарная личность в Ruby-сообществе. К сожалению, он, как и все мы, смертен. Не так давно он покинул нас. Этот перевод — дань уважения к этому человеку, который немного изменил мир.

Я наслышан о Джиме достаточно давно: ведь он — автор утилиты rake, ставшей фактически стандартом де-факто среди рубистов. К моей большой удаче, я был в числе слушателей его выступления на GoRuCo 2012, на котором было рассказано о продвинутых возможностях rake. Помню, как меня поразила та ловкость и легкость, с которой Джим говорил на сложные темы. Позже, в том же году на конференции RubyConf я наблюдал еще одно его замечательное выступление, в котором объяснялись некоторые базовые принципы Лямбда-исчисления. Джим не только доступно объяснил эту не самую простую тему, но также не потерял своих слушателей по дороге.

Думаю, теперь вы понимаете, почему я был так рад взять у Джима это интервью, ведь это уникальная возможность узнать о нем чуточку больше и чему-то научиться. Нам также удалось побеседовать о начале его пути в мире разработке, о его первых шагах в Руби, о функциональном программировании, модели потоков в Руби и даже о его фреймворке для тестов: RSpec-Given). Так что открывайте это интервью, не поленитесь узнать об одном из самых передовых и харизматичных разработчиков!


Читать дальше →
Total votes 60: ↑59 and ↓1 +58
Views 13K
Comments 6

Ruby 2.1 в деталях (Часть 2)

Ruby *
Translation

Refinements

Уточнения (refinements) больше не являются экспериментальной фичей и не выводят ворнинг, а также в их реализацию добавилось несколько деталей, делающих их использование более удобным.

Теперь к методу #using для активации уточнений на уровне файла добавился метод Module#using для активации в пределах модуля. Однако использование уточнений по-прежнему ограничено лексической областью видимости, т.е. они не будут активны при повторном открытии модуля.
Читать дальше →
Total votes 36: ↑36 and ↓0 +36
Views 11K
Comments 7