Показ дописів із міткою news. Показати всі дописи
Показ дописів із міткою news. Показати всі дописи

неділя, 24 лютого 2013 р.

Реліз Ruby 2.0.0-p0


У нас свято!
Точно за оперативним планом 24 лютого анонсовано реліз Ruby 2.0.0-p0. Були включені нові можливості, які роблять розробку на Ruby ще приємнішою.

Анонсовані можливості:
  • Уточнення (Refinements) [1]
  • Іменовані аргументи в методах [2]
  • Enumerator#lazy [3]
  • Module#prepend [4]
  • #to_h
  • %i для масивів символів
  • Двигун регулярних виразів змінений на Onigmo [5]
  • Підтримка DTrace [6]

Всі програми, які написані на ruby 1.9 будуть працювати на ruby 2.0, якщо в них не буде особливої магії.

Несумісності:
  • Кодування за замовчуванням для скриптів Ruby стало UTF-8.
  • String#lines, #chars, #codepoints і #bytes тепер повертають Array замість Enumerator.
  • Iconv був остаточно видалений. Він був оголошений застарілим ще для Ruby 1.9.x. Тепер Ви повинні використовувати можливості M17N, такі як String#encode.



В 2.0.0 preview1 був включений чарівних патч, який прискорює роботу Rails в 2.2 рази

понеділок, 31 грудня 2012 р.

Ретроспектива 2012



2012 рік добігає кінця. І за хорошою традицією в останньому записі я згадую найбільш значущі події в світі Ruby, що відбулися у цьому році.

Цього року формат статті зазнав деяких змін. Події розбиті по місяцях.

Січень
  • Випуск KidsRuby 1.0, редактора Ruby розробленого в освітніх цілях для дітей дошкільного й молодшого шкільного віку (але не менш корисного для дорослих). Він включає в себе навчальні посібники та графічну систему в стилі мови програмування Logo для більш наочного типу навчання.

Лютий

Березень
  • FXRuby - Ruby bindings для FOX (крос-платформної бібліотеки з відкритим вихідним кодом для побудови графічного інтерфейсу) повернувся з довгого періоду застою.
  •  Юкіхіро Мацумото (Yukihiro Matsumoto), автору мови програмування Ruby, присуджена премія "Free Software Awards 2011" номінації, що вручається за просування і розвиток вільного ПЗ.
  • Ruby став стандартом ISO.
    Після чотирьох років розробки, 31 березня цього року за результатами голосування Ruby версії 1.8 був прийнятий як стандарт ISO/IEC 30170. Будемо сподіватися, що наступну версію стандарту підготують швидше.
Квітень
  • mruby - полегшена реалізації мови Ruby, виконана за ISO стандартом для виконання різних середовищах. Може були як виконана інтерпретатором так і бути скомпільованою і виконаною віртуальною машиною,  відповідно до його модульної конструкції.
  • MobiRuby - інструментарій для створеня IOS додатків за допомогою мови Ruby. В майбутньому планується підтримка Android.
Травень
  • Компанія Red Hat запустила нову хмарну платформу OpenShift з підтримкою Java, Ruby, Node, Python, PHP і Perl.
  • Два ключових розробника команди JRuby(Thomas Enebo і Charles Nutter) переходять на роботу в Red Hat.
  • Перший попередній реліз JRuby 1.7. Цікавий тим, що це перший реліз з підтримкою  InvokeDynamic - рішення, що дозволяє взаємодіяти з динамічними мовами практично без втрати продуктивності.
  • Реліз RubyMotion - набір інструментів для IOS, який дозволяє швидко розробляти і тестувати власні програми для iPhone або iPad, за допомогою Ruby.
Червень
  • Вийшла ювілейна версія 1.0 бібліотеки R18n, яка дозволяє додати в додаток на Rails/Ruby підтримку декількох мов (i18n).
  • Реліз Sublime Text 2.0
Вересень

Жовтень
Листопад
Грудень
  • Heroku додали офіційну підтримку для JRuby

2013 рік обіцяє також бути багатим на нові релізи. Зокрема Ruby 2.0 і Rails 4.0.

Щиро вітаю Вас з наступаючим Новим Роком!
Нехай він принесе нам довгождане щастя, спокій, добробут, палке кохання, міцне здоров'я та здійснення наших самих заповітних мрій!

    пʼятниця, 26 жовтня 2012 р.

    Оголошено 'Feature Freeze' для Ruby 2.0

    Точно за розкладом, основна команда Ruby оголосила про заморожування коду нових можливостей('feature freeze') майбутнього Ruby 2.0. Це означає, що з цього моменту розробники лише будуть виправляти баги, не додаючи нових фіч в дану версію.

    Нижче я збираюся представити переклад статті "Things to Look Forward to in Ruby 2.0" у якій автор перерахував декілька нових можливостей Ruby 2.0.

    вівторок, 23 жовтня 2012 р.

    Реліз JRuby 1.7.0


    Спільноті JRuby рада оголосити про випуск JRuby 1.7.0, починаючи з якої заявлена офіційна підтримка Ruby 1.9.x.

    Після півтора років розробки вийшов мажорний реліз відкритої багатоплатформної реалізації інтерпретатора мови програмування Ruby, написаної цілком на Java.

    В JRuby 1.7  проведений величезний обсяг робіт, десятки учасників, і покращення у кожній підсистемі. І тепер за замовчуванням JRuby працює у режимі сумісності Ruby 1.9.3. Втім, не означає, що реалізація не буде більше вдосконалюватися. Це означає лише, що в майбутньому будуть вирішуватися проблеми з якими зіткнуться користувачі. На даний момент, розробники планують випускати нові версії 1.7.x кожні 2-3 тижні.

    1.7 є першим стабільним JRuby з підтримкою нової можливості JVM - invokedynamic. Ви можете включити використання invokedynamic для Java 7, але вона по замовчуванню відключена, через проблему в JVM. На Java 8 , вона включений за умовчанням: http://wiki.jruby.org/PerformanceTuning.

    Що нового:
    • Режим сумісності з 1.9.3 тепер використовується по замовчуванню(1.8 необхідний для підтримки 1.8.7)
    • Стандартна бібліотека оновлена до 1.9.3p286
    • Багато виправлень сумісності з 1.9.x
    • Підтримка invokedynamic
    • Численні покращення продуктивності
    • Припинена підтримка Java 5(тепер обов'язкова Java 6+).
    • Вирішені всі відомі проблеми з кодуваннями у 1.9
    • Покращення і виправлення для Java інтеграції
    • Краща підтримка для Solaris, ARM Linux.
    • Оновлення до Rubygems 1.8.24
    • Оновлення до Rake 0.9.2.2

    четвер, 29 березня 2012 р.

    FSF оголосив лауреатів премії Free Software Awards 2011

    Річард Столмен (Richard Stallman) офіційно оголосив на конференції LibrePlanet 2012 лауреатів щорічної премії "Free Software Awards 2011", заснованої Фондом вільного ПЗ (FSF). Ця премія присуджується людям, які зробили найбільш значний внесок у розвиток вільного ПЗ, а також соціально значущим вільним проектам.

    У першій номінації, що вручається за просування і розвиток вільного ПЗ, премія присуджена Юкіхіро Мацумото (Yukihiro Matsumoto), автору мови програмування Ruby. Matz вже протягом 20 років бере участь у розвитку проектів GNU, Ruby та інших відкритих проектів. У своїй своїй промові Юкіхіро розповів про свій перший досвіді роботи з вільним ПЗ і підкреслив вплив GNU Emacs на Ruby.

    Цікаво, що переможцями цієї премії вже ставали у 1998 автор мови Perl Ларрі Уолл (Larry Wall) та у 2001 автор мови Python Ґвідо ван Россум (Guido van Rossum).

    >> Докладніше

    неділя, 25 березня 2012 р.

    Ruby 2.0 Enumerator::Lazy

    Продовжимо знайомитися із нововведеннями, які увійдуть у випуск Ruby 2.0.

    Нещодавно патч Enumerator::Lazy був прийнятий в ruby trunk. А це значить що в Ruby 2.0 ми зможемо:
    a = [1,2,3,4,2,5].lazy.map { |x| x * 10 }.select { |x| x > 30 } #=> обчислення не відбувається
    a.to_a #=> [40, 50], об'єкт обчислюється за один прохід
    

    Зараз Enumerator::Lazy має в своєму арсеналі select, map, reject, grep, flat_map, zip, take, take_while, drop, drop_while, cycle. Розробка активно продовжується. Якщо хочете використовувати його прямо зараз - досить скомпілювати Ruby з trunk і насолоджуватися.

    Докладніше про Enumerator::Lazy: англійською і російською.

    понеділок, 24 жовтня 2011 р.

    Ruby 2.0

    19 жовтня 2011 Matz, відомий як розробник мови програмування Ruby, оголосив про початок робіт над версією 2.0.


    Також з'явився попередній графік випусків для Ruby 2.0.0. Як і очікувалось,  фінальну версію варто чекати 2 лютого 2013 року на 20-у річницю від дня народження Ruby.

    середа, 19 жовтня 2011 р.

    RubyMonk - ще один браузерний самовчитель Ruby

    RubyMonk — це інтерактивна платформа, яка допоможе вам освоїти основи мови програмування Ruby. Вона поєднує в собі переваги навчання з книгою і наставником. І дає навички практичного програмування в ігровій формі.
    RubyMonk можна рекомендувати початківцям, які тільки відкривають для себе мову Ruby.

    Навчання проходить у двох формах:
    • Уроки. Користувач знайомиться з основами мови Ruby (масиви, ітерації, стрічки тощо). Всі уроки забезпечені докладним описом з прикладами коду, а також доповнені прекрасною можливістю самостійно виконати код.
    • Проблеми. Користувачу дається можливість самостійно написати код для вирішення певної проблеми, використовуючи знання, отримані на уроках.

    четвер, 6 жовтня 2011 р.

    Mechanize 2.0 довідник

    Mechanize - це бібліотека для сканування веб-сайтів для будь-якої автоматизації або з метою тестування. Довідник по Mechanize 2.0 являє собою докладний посібник для отримання речей які можна зробити в Mechanize. Це більше ніж документація, але менше ніж книга. Робота над нею вже йде, і вона буде опублікована тут безкоштовно дуже скоро!

    >>> Анонс на ruby.about.com

    понеділок, 3 жовтня 2011 р.

    Реліз Sinatra 1.3.0

    Світ побачила версія 1.3.0 фреймворка Sinatra. Найбільш помітне нововведення в цьому релізі - додавання streaming API. Цікавим моментом є те, що використовувати цю можливість можна незалежно від того, на якому сервері запущено додаток.
    Приклад коду:
    get '/' do
      stream do |out|
        out << "It's gonna be legen -\n"
        sleep 0.5
        out << " (wait for it) \n"
        sleep 1
        out << "- dary!\n"
      end
    end
    

    Крім того додали підтримку HTTP-методу PATCH:
    patch '/' do
      # ...
    end
    

    Про інші зміни читайте в офіційному прес-релізі New feature release, Contrib and Recipes

    четвер, 8 вересня 2011 р.

    Реліз RailsInstaller 2.0

    Запуск Ruby і Rails в середовищі ОС Windows не найпростіша річ у світі. Навіть з такими речами як RubyInstaller/, можна часто зіткнутися з проблемами при установці певних gem-ів, які вимагають компіляції. Що вже казати про інструменти сторонніх розробників. А як щодо Git? OpenSSH? Вам потрібно багато речей, щоб отримати "повноцінне" Rails середовище для розробки. І RailsInstaller робить це все для вас в один клік.

    Хочу представити вашій увазі реліз RailsInstaller версії 2.0. У попередніх версіях RailsInstaller використовув 1.8.7. Тепер доступна і версія Ruby 1.9.2. Крім того доступний реліз-кандидат Rails 3.1. А також включені наступні пакети:
    • Git
    • Bundler
    • SQLite
    • gem-и для взаємодії з Microsoft SQL Server
    • DevKit - компілятор для ОС Windows, що дозволить встановити gem-и, яким потрібно скомпілювати C код.

    Інтерв'ю з Юкіхіро Мацумото

    Юкіхіро Мацумото (Yukihiro Matsumoto), автор мови програмування Ruby, в інтерв'ю виданню InfoWorld згадав про те, що він в даний час займається розробкою альтернативного підмножини або діалекту мови Ruby, спеціально адаптованої для створення програм для портативних пристроїв. Перший публічний випуск мобільного Ruby планується представити на початку наступного року. Крім того, в інтерв'ю згадується те, що після випуску релізу Ruby 1.9.3, який зараз знаходиться на етапі тестування, розробники переключаться на підготовку версії Ruby 2.0.

    пʼятниця, 2 вересня 2011 р.

    will_paginate 3.0: Sinatra і DataMapper

    Після більше року розробки вийшла фінальна версія will_paginate 3.0. Основні зміни:
    • Підтримка Rails 3.0 і 3.1
    • Підтримка Sinatra і Merb
    • Інтеграція з DataMapper і Sequel
    • Переклад із бібліотекою i18n
    • Припинена підтримка Rails версій 1.2 - 2.3
    Встановлення:
    gem install will_paginate
    
    Sinatra додаток потребує наступні бібліотеки:
    require 'will_paginate'
    require 'will_paginate/data_mapper'  # або active_record/sequel
    
    Вносимо зміни до дії index, щоб виводити по 5 записів на сторінку. Номер сторінки передаватиметься у рядку запиту (наприклад, http://localhost:4567/posts?page=3)
    # index
    get "/posts" do
      @posts = Post.paginate :page => params[:page], :per_page => 5
      haml :"posts/index"
    end
    
    Додаємо помічник will_paginate для виведення посилань на сторінки:
    #header
      %h1 Мій блог
    
    %a{:href => "posts/new"}> New Post
    #content
      - @posts.each do |post|
        .container
          %h3= post.title
          %p= post.body
          %p= post.created_at
    
      #pagination
        = will_paginate @posts
    

    четвер, 18 серпня 2011 р.

    Compilr - онлайн-IDE для C#, PHP, C/C++, Ruby, VB, Java

    Натрапив на досить цікавий проект – Compilr. Сервіс являє собою онлайн-IDE, що дозволяє писати і компілювати код для різних платформ під будь-яким сучасним веб-браузером. Compilr постійно розвивається в ногу зі змінами у світі розробки, інтегрує новітні і найбільш актуальні платформ і мови програмування. На даний момент заявлена підтримка наступні мови: C#, PHP, C/C++, Ruby, VB, Java. Після безкоштовної реєстрації вам буде доступно 250 мегабайт вільного простору для трьох публічних проектів.

    пʼятниця, 5 серпня 2011 р.

    #rbxday

    5 серпня 2011 команда Rubinius проводить масштабне тестування своєї альтернативної реалізація мови програмування Ruby.
    Ну ось, ще один привід спробувати в дії Rubinius.

    Подробиці тут: http://rbxday.rubini.us

    Для тестування досить встановити Rubinius з допомогою RVM і спробувати запустити ваш код.
    $ sudo rvm get head
    $ sudo rvm reload
    $ sudo rvm install rbx
    $ rbx-master --version
    rubinius 1.2.5dev (1.8.7 560efecd yyyy-mm-dd JI) [i686-pc-linux-gnu]
    
    

    вівторок, 2 серпня 2011 р.

    Ruby 1.9.3 preview1

    Вийшла у світ Ruby 1.9.3 preview1.
    Попередні версії Ruby були під ліцензією GPLv2 та Ruby. У цій версії вона замінена ліцензією типу BSD з 2 пунктів і Ruby.

    Для отримання додаткової інформації дивіться офіційний анонс.

    Спробувати 1.9.3 можна вже сьогодні. З RVM це просто:
    rvm get head
    rvm reload
    rvm install 1.9.3
    

    субота, 16 липня 2011 р.

    Реліз Ruby 1.9.2-p290 і план 1.9.3

    В офіційному блозі Ruby Shota Fukumori оголосив про випуск 1.9.2-p290, останнього "patchlevel" випуску поточної версії мови Ruby MRI. Цей реліз не містить жодних виправлень безпеки, але виправлено багато помилок.

    Дивіться ChangeLog для деталей.

    Якщо ви користуєтеся RVM, виконайте наступні команди для оновлення:
    rvm get head
    rvm reload
    rvm upgrade ruby-1.9.2-p180 ruby-1.9.2-p290
    rvm ruby-1.9.2-p290 --default
    

    1.9.3 вже майже тут!
    Розклад:
    • 2011-07-10: створення гілки ruby_1_9_3
    • 2011-07-17 або 18: ruby-1.9.3-preview1
    • 2011-08-01: ruby-1.9.3-preview2
    • 2011-08-26: ruby-1.9.3

    середа, 29 червня 2011 р.

    Mechanize 2.0

    Після більше року активної розробки вийшла нова версія Mechanize - Ruby-бібліотеки для автоматизації взаємодії з веб-сайтами. У новій версії проведена велика робота з усунення помилок, а також додані нові можливості. Дивіться офіційний анонс для більш докладної інформації.

    понеділок, 20 червня 2011 р.

    Sinatra - Up and Running


    Alan Harris і Konstantin Haase працюють над книгою Sinatra – Up and Running від O'Reilly, вихід якої запланований на серпень 2011 року. Приємно, що нарешті спільнота розробників Sinatra і Padrino матиме власну книгу. Попередньо замовити її можна тут.

    Ось короткий опис книги:
    Sinatra дає розробникам маленький але потужний і масштабований фреймворк для розробки веб-додатків на Ruby. Ця вступна книга дасть читачеві старт, допомагаючи йому створити, встановити і відшліфувати свій перший веб-додаток з Sinatra. Також вона досліджує, як Sinatra вписується в екосистему веб-додатків, головним чином у порівнянні з його більшим братом, Ruby On Rails.

    неділя, 20 лютого 2011 р.

    Дві вразливості безпеки в Ruby



    Цього тижня виявлено дві досить небезпечних вразливості, які присутні в усіх поточних версіях Ruby. Перша, вразливість в FileUtils.remove_entry_secure впливає як на 1.8,так і на 1.9 гілку, а друга, в режимі $SAFE, впливає тільки на 1.8.

    Urabe Shyouhei з основної команди Ruby оголосив, що Fileutils вразливий для symlink race атак. Вразливість присутня у наступних версіях Ruby:

    • 1.8.6-p420 і попередні
    • 1.8.7-p330 і попередні
    • розроблювана версія 1.8 (1.8.8dev)
    • 1.9-p430 і попередні
    • 1.9.2-p136 і попередні
    • розроблювана версія 1.9 (1.9.3dev)

    Вразливість з $SAFE присутня у наступних версіях Ruby:
    • 1.8.6-p420 і попередні
    • 1.8.7-p330 і попередні
    • розроблювана версія 1.8 (1.8.8dev)

    Свята простота: краще оновити швидше!
    Безсумнівно у вас є власні способи і засоби виконання оновлень (з використанням RVM, наприклад), проте завжди є можливість завантажити і скомпілювати останню версію Ruby з офіційного сайту:
    Ruby 1.8.7-p334: http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p334.tar.gz
    Ruby 1.9.1-p431: http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p431.tar.gz
    Ruby 1.9.2-p180: http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p180.tar.gz

    >>> Подробиці