<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><generator uri="https://jekyllrb.com/" version="4.2.2">Jekyll</generator><link href="https://ruby-team.pages.debian.net/feed.xml" rel="self" type="application/atom+xml" /><link href="https://ruby-team.pages.debian.net/" rel="alternate" type="text/html" hreflang="en" /><updated>2022-04-05T15:22:14+00:00</updated><id>https://ruby-team.pages.debian.net/feed.xml</id><title type="html">The Ruby Team Pages</title><subtitle>The Debian Ruby team is a team of users, Debian developers and supporters, who maintain Ruby software in Debian. This includes interpreters, libraries and applications.
</subtitle><author><name>The Ruby Team</name></author><entry><title type="html">Ruby transition and packaging hints #2 - Gemfile.lock created by bundler/setup with Ruby 2.7 preventing successful test with Ruby 3.0</title><link href="https://ruby-team.pages.debian.net/2021/11/08/ruby-transition-and-packaging-hints-2-gemfile-lock.html" rel="alternate" type="text/html" title="Ruby transition and packaging hints #2 - Gemfile.lock created by bundler/setup with Ruby 2.7 preventing successful test with Ruby 3.0" /><published>2021-11-08T22:31:00+00:00</published><updated>2021-11-14T03:25:06+00:00</updated><id>https://ruby-team.pages.debian.net/2021/11/08/ruby-transition-and-packaging-hints-2-gemfile-lock</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2021/11/08/ruby-transition-and-packaging-hints-2-gemfile-lock.html"><![CDATA[<p>We currently face an issue in all packages requiring <code class="language-plaintext highlighter-rouge">bunlder/setup</code> and trying
to run the tests for Ruby 2.7 and 3.0. The problem is that the first tests will
create <code class="language-plaintext highlighter-rouge">Gemfile.lock</code> (or <code class="language-plaintext highlighter-rouge">gemfile/gemfile-*.lock</code>) using Ruby 2.7 and the next
run for Ruby 3 will report e.g.:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Failure/Error: require 'bundler/setup' # Set up gems listed in the Gemfile.

Bundler::GemNotFound:
  Could not find racc-1.4.16 in any of the sources
</code></pre></div></div>

<p>or</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>/usr/share/rubygems-integration/all/gems/bundler-2.2.27/lib/bundler/definition.rb:496:in `materialize':
  Could not find rexml-3.2.3.1 in any of the sources (Bundler::GemNotFound)
</code></pre></div></div>

<p>Both bugs <a href="https://bugs.debian.org/996207">#996207</a> and
<a href="https://bugs.debian.org/996302">#996302</a> are incarnations of this issue. The
fix is as easy as making sure that the <code class="language-plaintext highlighter-rouge">.lock</code> files are removed before each
run. This can be done in e.g. <code class="language-plaintext highlighter-rouge">debian/ruby-tests.rake</code> as very first task:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>File.delete("Gemfile.lock") if File.exist?("Gemfile.lock")
</code></pre></div></div>

<p>In <a href="https://bugs.debian.org/996299">another</a> case the <code class="language-plaintext highlighter-rouge">.lock</code> file is created
by the tests in <code class="language-plaintext highlighter-rouge">gemfiles/</code>. While the first examples could actually be solved
by <code class="language-plaintext highlighter-rouge">gem2deb</code> removing <code class="language-plaintext highlighter-rouge">Gemfile.lock</code> on its own, I’m not quite sure how to
handle the last case using packaging tools.</p>

<p>The interesting part is that we will unlikely be confronted with this issue
anytime soon again. It seems very specific to the Ruby 3.0 transition.</p>

<h2 id="update">Update</h2>

<p>After talking to Antonio he added some code to <code class="language-plaintext highlighter-rouge">gem2deb-test-runner</code> to moving
<code class="language-plaintext highlighter-rouge">Gemfile.lock</code> files out of the way. The tool already did this in an
<code class="language-plaintext highlighter-rouge">autopkgtest</code> environment. In the upcoming 1.7 release it will do it in general
and this will fix some more FTBFSes, e.g. #998497 and #996141 - originally
reported against <code class="language-plaintext highlighter-rouge">ruby-voight-kampff</code> and <code class="language-plaintext highlighter-rouge">ruby-bootsnap</code>.</p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="ftbfs" /><category term="bundler" /><category term="gemfile.lock" /><category term="ruby3.0" /><category term="packaging" /><summary type="html"><![CDATA[Packages using 'bundler/setup' create a Gemfile.lock file. However, this file contains references not available for Ruby 3 (e.g. racc-1.4.16) and therefor bundler fails with Bundler::GemNotFound. The fix is to remove the lock files during the test runs.]]></summary></entry><entry><title type="html">Ruby transition and packaging hints #1 - Adjusting Ruby version in commands</title><link href="https://ruby-team.pages.debian.net/2021/11/08/ruby-transition-and-packaging-hints-1-rbconfig-ruby.html" rel="alternate" type="text/html" title="Ruby transition and packaging hints #1 - Adjusting Ruby version in commands" /><published>2021-11-08T11:56:00+00:00</published><updated>2021-11-13T20:24:27+00:00</updated><id>https://ruby-team.pages.debian.net/2021/11/08/ruby-transition-and-packaging-hints-1-rbconfig-ruby</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2021/11/08/ruby-transition-and-packaging-hints-1-rbconfig-ruby.html"><![CDATA[<p>This is the first part of a series of short posts about issues that came up
during the Ruby 3.0 transition and how to fix them. Hopefully more team members
will join in and add their input.</p>

<p>During the Ruby 3.0 transition there are essentially two different Ruby
versions with two different binaries available, <code class="language-plaintext highlighter-rouge">/usr/bin/ruby2.7</code> and
<code class="language-plaintext highlighter-rouge">/usr/bin/ruby3.0</code>, while <code class="language-plaintext highlighter-rouge">/usr/bin/ruby</code> points to the current default
version, which is Ruby 2.7.</p>

<p>In some cases the tests shipped by the source packages will use shell commands
to run scripts or Ruby code. It is imparative that in these cases the Ruby
executable is not invoked by <code class="language-plaintext highlighter-rouge">/usr/bin/ruby</code> or <code class="language-plaintext highlighter-rouge">ruby</code>, because this will point
to Ruby 2.7 only and fail if the tests are invoked with Ruby version 3.</p>

<p>The fix is to rely on <code class="language-plaintext highlighter-rouge">RbConfig.ruby</code> which will point to the absolute pathname
of the ruby command for the current Ruby environment, e.g.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cmd = "#{RbConfig.ruby} ..."
</code></pre></div></div>

<p>This issue appeard for example in <a href="https://salsa.debian.org/ruby-team/ruby-byebug/-/blob/debian/11.1.3-2/debian/patches/996145-fix-tests-with-ruby3.patch"><code class="language-plaintext highlighter-rouge">ruby-byebug</code></a> and
<a href="https://salsa.debian.org/ruby-team/ruby-backports/-/blob/debian/3.21.0-1/debian/patches/use-system-library-paths-when-running-under-autopkgtest#L82-83" data-proofer-ignore="yes"><code class="language-plaintext highlighter-rouge">ruby-backports</code></a>.</p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="ftbfs" /><category term="rbconfig" /><category term="ruby3.0" /><category term="packaging" /><summary type="html"><![CDATA[This is the start of a series of hints to help speed up the Ruby 3.0 transition. The first part is about fixing the ruby version to run scripts during tests.]]></summary></entry><entry><title type="html">Ruby Team Sprint 2020 in Paris - Day Five - We’ve brok^done it</title><link href="https://ruby-team.pages.debian.net/2020/02/10/ruby-team-sprint-2020-in-paris-day-five.html" rel="alternate" type="text/html" title="Ruby Team Sprint 2020 in Paris - Day Five - We’ve brok^done it" /><published>2020-02-10T19:00:00+00:00</published><updated>2020-02-10T19:00:00+00:00</updated><id>https://ruby-team.pages.debian.net/2020/02/10/ruby-team-sprint-2020-in-paris-day-five</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2020/02/10/ruby-team-sprint-2020-in-paris-day-five.html"><![CDATA[<p>On our last day we met like every day before, working on our packages, fixing
and uploading them. The transitions went on. Antonio, Utkarsh, Lucas, Deivid,
and Cédric took some time to examine the <code class="language-plaintext highlighter-rouge">gem2deb</code> bug reports. We uploaded the
last missing Kali Ruby package. And we had our last discussion, covering the
future of the team and an evaluation of the <a href="https://wiki.debian.org/Teams/Ruby/Meeting/Paris2020">sprint</a>:</p>

<figure>
  <img style="width: 100%;" src="/assets/images/ruby-sprint-2020-day-5_1920.jpeg" alt="Last discussion of the Ruby Team Sprint 2020 in Paris" />
  <figcaption>Last discussion round of the Ruby Team Sprint 2020 in Paris</figcaption>
</figure>

<p>As a result:</p>

<ul>
  <li>We will examine ways to find leaf packages.</li>
  <li>We plan to organize another sprint next year right before the release
freeze, probably again about <em>FOSDEM</em> time. We tend to have it in Berlin
but will explore the locations available and the costs.</li>
  <li>We will have monthly <abbr title="Internet Relay Chat">IRC</abbr> meetings.</li>
</ul>

<p>We think the sprint was a success. Some stuff got (intentionally and less
intentionally) broken on the way. And also a lot of stuff got fixed.
Eventually we made our step towards a successful Ruby 2.7 transition.</p>

<p>So we want to <strong>thank</strong></p>

<ul>
  <li>the <a href="https://www.debian.org/">Debian project</a> and our <abbr title="Debian Project Leader">DPL</abbr> Sam for sponsoring the event,</li>
  <li><a href="https://www.offensive-security.com/">Offensive Security</a> for sponsoring the event too,</li>
  <li>Sorbonne Université and <a href="https://www.lpsm.paris/"><abbr title="Laboratoire de Probabilités, Statistique et Modélisation">LPSM</abbr></a> for hosting us,</li>
  <li>Cédric Boutillier for organizing the sprint and kindly hosting us,</li>
  <li>and really everyone who attended, making this a success: Antonio, Abhijith,
Georg, Utkarsh, Balu, Praveen, Sruthi, Marc, Lucas, Cédric, Sebastien,
Deivid, Daniel.</li>
</ul>

<figure>
  <img style="width: 100%;" src="/assets/images/ruby-sprint-2020-group.jpeg" alt="Group photo of the attendees of the Ruby Team Sprint 2020 in Paris" />
  <figcaption>Group photo; from the left in the Back: Antonio, Abhijith, Georg, Utkarsh,
  Balu, Praveen, Sruthi, Josy. And in the Front: Marc, Lucas, Cédric, Sebastien,
  Deivid, Daniel.</figcaption>
</figure>

<p>In the evening we finally closed the venue which hosted us for 5 days, cleaned
up, and went for a last beer together (at least for now). Some of us will stay
in Paris a few days longer and finally get to see the city.</p>

<figure>
  <img style="width: 100%;" src="/assets/images/paris-eiffeltower_1280.jpg" alt="Eiffel tower in Paris" />
  <figcaption>Eiffel Tower Paris (February 2020)</figcaption>
</figure>

<p><strong>Goodbye Paris and save travels to everyone. It was a pleasure.</strong></p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="sprint" /><category term="paris" /><category term="ruby-paris" /><category term="ruby2020" /><category term="ruby-team" /><category term="ruby2.7" /><category term="gettogether" /><summary type="html"><![CDATA[The Ruby Team Sprint 2020 in Paris is over. Work progressed further, reaching our goal to upload the Kali Ruby packages and making a large step towards the Ruby&nbsp;2.7 transition. Some things got broken on the way but we also fixed them. We thank the sponsors: Debian and our DPL, Offensive Security, Sorbonne Université in Paris, and of course Cédric Boutillier.]]></summary></entry><entry><title type="html">Ruby Team Sprint 2020 in Paris - Day Four</title><link href="https://ruby-team.pages.debian.net/2020/02/07/ruby-team-sprint-2020-in-paris-day-four.html" rel="alternate" type="text/html" title="Ruby Team Sprint 2020 in Paris - Day Four" /><published>2020-02-07T13:47:21+00:00</published><updated>2020-02-07T13:47:21+00:00</updated><id>https://ruby-team.pages.debian.net/2020/02/07/ruby-team-sprint-2020-in-paris-day-four</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2020/02/07/ruby-team-sprint-2020-in-paris-day-four.html"><![CDATA[<p>On day four the transition to Ruby 2.7 and Rails 6 went on. Minor
transitions took place too, for example the upload of <code class="language-plaintext highlighter-rouge">ruby-faraday 1.0</code> or the
upload of <code class="language-plaintext highlighter-rouge">bundler 2.1</code> featuring the (first) contributions by bundler’s
upstream Deivid (yeah!). Further Red Hat’s (and Debian’s)
Marc Dequènes (Duck) joined us.</p>

<p>We are proud to report, that updating and/or uploading the Kali packages is
almost done. Most are in NEW or have already been accepted.</p>

<p>The Release team was contacted to start the Ruby 2.7 transition and we
already have a <a href="https://bugs.debian.org/950716">transition page</a>. However, the Python 3.8
one is ongoing (almost finished) and the Release team does not want overlaps.
So hopefully we can upload <code class="language-plaintext highlighter-rouge">ruby-defaults</code> to Debian Unstable soon.</p>

<p>In the evening we got together for a well earned collective drink at Brewberry
Bar and dinner, joined by local Debian colleague Nicolas Dandrimont (olasd).</p>

<figure>
  <img style="width: 100%;" src="/assets/images/ruby-sprint-2020-day-4.jpeg" alt="Group photo of the Ruby Team in Brewbarry Bar, Paris" />
  <figcaption>Group photo of the Ruby Team in Brewberry Bar (Paris 2020)</figcaption>
</figure>

<p>The evening ended at Paris’ famous (but heavily damaged) Notre-Dame cathedral.</p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="sprint" /><category term="paris" /><category term="ruby-paris" /><category term="ruby2020" /><category term="ruby-team" /><category term="ruby2.7" /><category term="gettogether" /><category term="faraday" /><category term="bundler" /><summary type="html"><![CDATA[Work progressed with the Ruby&nbs;p2.7 and Rails&nbsp;6 transitions. We also managed to almost finish the upload of Kali Ruby packages into the Debian repository.]]></summary></entry><entry><title type="html">Ruby Team Sprint 2020 in Paris - Day Three</title><link href="https://ruby-team.pages.debian.net/2020/02/07/ruby-team-sprint-2020-in-paris-day-three.html" rel="alternate" type="text/html" title="Ruby Team Sprint 2020 in Paris - Day Three" /><published>2020-02-07T10:19:39+00:00</published><updated>2020-02-07T10:19:39+00:00</updated><id>https://ruby-team.pages.debian.net/2020/02/07/ruby-team-sprint-2020-in-paris-day-three</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2020/02/07/ruby-team-sprint-2020-in-paris-day-three.html"><![CDATA[<p>Day three of our sprint was dominated by hacking. In the morning an archive
wide rebuild against Ruby 2.7 had finished. So the list of packages in need
of a fix for the upcoming transition got longer. Still we found/made some time
for a key exchange in the afternoon, in which even some local university
attendees participated. Further Georg gave a short talk how keysigning works
using <code class="language-plaintext highlighter-rouge">caff</code> and the current situation of keyservers, specifically
<a href="https://keys.openpgp.org/"><code class="language-plaintext highlighter-rouge">keys.openpgp.org</code></a> and <a href="https://github.com/hockeypuck/hockeypuck"><code class="language-plaintext highlighter-rouge">hockeypuck</code></a>. (The traditional
SKS network plans to migrate to this software within this year.)</p>

<p>Regarding Salsa, Antonio was able to <a href="https://salsa.debian.org/ruby-team/gem2deb/commit/8ea72d507f704b068640f67f37b3f1fc35ca4d98">fix</a> <code class="language-plaintext highlighter-rouge">gem2deb</code> so our
extension packages finally build reprodicibly (Yeah!). The decision to disable
the <code class="language-plaintext highlighter-rouge">piuparts</code> job on Salsa was discussed again. The tool provides a major
functionality in question of preventing “toxic” uploads. But these issues
usually occur on quite rare occasions. We think the decision to enable the
<code class="language-plaintext highlighter-rouge">piuparts</code> job only for critical packages or on a case-by-case base is a
sensible approach. But we would of course prefer to not have to make this
decision just to go easy on Salsa’s resources.</p>

<p>Regarding the complex packaging situation of gitlab and the high likability to
break it by uploading new major releases we decided to upload new major
versions to <code class="language-plaintext highlighter-rouge">Experimental</code> only and enable a subset of <code class="language-plaintext highlighter-rouge">gitlab</code>’s tests to
discover breakages more easily.</p>

<p>Some leaf packages have been found during our Sprint days. This led to the
question how to identify candidates for an archive removal. It seems there is
no tool to check the whole archive for packages without any
reverse-dependencies (<code class="language-plaintext highlighter-rouge">Depends</code>, <code class="language-plaintext highlighter-rouge">Suggests</code>, <code class="language-plaintext highlighter-rouge">Recommends</code>, and <code class="language-plaintext highlighter-rouge">Build-Depends</code>).
The <code class="language-plaintext highlighter-rouge">reverse-depends</code> tool can do this for one package and would need to be run
against all team packages. Also we would like to identify packages, which have
low popcon values, few reverse dependencies, and could be replaced by more
recent packages, actively maintained by an upstream. We decided to pick up this
question again on our last days’ discussion.</p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="sprint" /><category term="paris" /><category term="ruby-paris" /><category term="ruby2020" /><category term="ruby-team" /><category term="ruby2.7" /><category term="gitlab" /><category term="salsa-ci" /><category term="keysigning" /><category term="piuparts" /><category term="leaf package" /><summary type="html"><![CDATA[Day three is over. Again a lot of packages have been updated and fixed. Still there was time to exchange key fingerprints for a key signing. Even some local university employees used the opportunity. Some more major topics have been solved as well.]]></summary></entry><entry><title type="html">Ruby Team Sprint 2020 in Paris - Day Two</title><link href="https://ruby-team.pages.debian.net/2020/02/05/ruby-team-sprint-2020-in-paris-day-two.html" rel="alternate" type="text/html" title="Ruby Team Sprint 2020 in Paris - Day Two" /><published>2020-02-05T09:31:09+00:00</published><updated>2020-02-05T09:31:09+00:00</updated><id>https://ruby-team.pages.debian.net/2020/02/05/ruby-team-sprint-2020-in-paris-day-two</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2020/02/05/ruby-team-sprint-2020-in-paris-day-two.html"><![CDATA[<p>Day Two of the Ruby Team Sprint 2020 in Paris is over. Again we were able to
tackle our main goals.  There was a lot of silence as everybody was focused on
their tasks. At the end we took an hour to discuss our open topics.</p>

<p>As a result of Day Two we achieved the following:</p>

<h2 id="ruby27-transition">Ruby 2.7 transition</h2>

<p>Most key <code class="language-plaintext highlighter-rouge">arch:any</code> packages are now fixed or being worked on. The next step
will be to rebuild all <code class="language-plaintext highlighter-rouge">arch:all</code> packages to find build failures.</p>

<h2 id="rails6-transition">Rails 6 transition</h2>

<p>The latest version has been <a href="https://packages.qa.debian.org/r/rails/news/20200204T220012Z.html">uploaded to Debian Experimental</a>. The
<a href="https://salsa.debian.org/ruby-team/rails/-/wikis/Transition-to-Rails-6-for-Debian-Bullseye">wiki</a> informs about the packages required to be updated and/or
fixed.</p>

<h2 id="improvingoptimizing-our-usage-of-the-salsa-ci-pipeline">Improving/optimizing our usage of the Salsa CI pipeline</h2>

<p>We tend to disable the <code class="language-plaintext highlighter-rouge">blhc</code>, <code class="language-plaintext highlighter-rouge">reprotest</code>, and <code class="language-plaintext highlighter-rouge">piuparts</code> jobs of the Salsa CI
pipeline by default for all group projects. For C-extension packages <code class="language-plaintext highlighter-rouge">bhlc</code> and
<code class="language-plaintext highlighter-rouge">reprotest</code> will be re-enabled by default. <code class="language-plaintext highlighter-rouge">piuparts</code> could be enabled for some
critical packages.</p>

<p>We first thought about setting the relevant pipeline variables
(<code class="language-plaintext highlighter-rouge">SALSA_CI_DISABLE_*</code>) to zero via group variables and let maintainers decide
on a case-by-case base to re-enable them via project variables. But it seems
more convenient and apparent to instead create our own pipeline file (include
the Salsa CI pipeline and set variables there) and include it from all our
projects.</p>

<p>Maintainers can still temporarily enable or disable jobs by running a pipeline
using the web-interface or API passing the variables along.</p>

<h2 id="new-items-on-our-todo-list-for-next-days">New items on our TODO list for next days</h2>

<ul>
  <li>Start bug triage and fixing for gem2deb.</li>
  <li>Productize team tools.</li>
  <li>Fix reprotest failing for all our C-extensions (culprit found).</li>
  <li>Finish the Kali Ruby packages.</li>
  <li>Complete source-only uploads for all accepted packages from NEW.</li>
</ul>

<h2 id="package-uploads-and-bugs-fixed">Package uploads and bugs fixed</h2>

<p>The number is hard to track as members of the group worked all day and even
late in the evening. It is safe to say that it is again a two digit number.</p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="sprint" /><category term="paris" /><category term="ruby-paris" /><category term="ruby2020" /><category term="ruby-team" /><category term="ruby2.7" /><category term="rails6" /><category term="salsa-ci" /><summary type="html"><![CDATA[Day Two of Debian's Ruby Team Sprint 2020 is over, a day of focus and uploads. Besides fixing almost all arch:any packages for the Ruby 2.7 transition, we were able to find a solution to reduce the Salsa CI pipeline resources for our group.]]></summary></entry><entry><title type="html">Ruby Team Sprint 2020 in Paris - Day One</title><link href="https://ruby-team.pages.debian.net/2020/02/04/ruby-team-sprint-2020-in-paris-day-one.html" rel="alternate" type="text/html" title="Ruby Team Sprint 2020 in Paris - Day One" /><published>2020-02-04T14:44:36+00:00</published><updated>2020-02-04T14:44:36+00:00</updated><id>https://ruby-team.pages.debian.net/2020/02/04/ruby-team-sprint-2020-in-paris-day-one</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2020/02/04/ruby-team-sprint-2020-in-paris-day-one.html"><![CDATA[<p>The <a href="https://wiki.debian.org/Teams/Ruby/Meeting/Paris2020">Ruby Team Sprint 2020 in Paris</a> started. A dozen of us joined,
some of them arriving just after attending <a href="https://wiki.debian.org/DebianEvents/be/2020/MiniDebCamp">MiniDebCamp</a> right
before <a href="https://fosdem.org/2020/">FOSDEM</a> and FOSDEM itself.</p>

<figure>
  <img style="width: 100%;" src="/assets/images/ruby-sprint-2020-day-1.jpeg" alt="Group photo of the Ruby Team Sprint 2020 in Paris" />
  <figcaption>Group photo of the Ruby Team Sprint 2020 in Paris</figcaption>
</figure>

<p>Day One consisted of setting up at the venue, Campus 4 of the Sorbonne
University, as well as collecting and discussing our tasks for the next days, and
starting the work. The main goals so far for the sprint are:</p>

<ul>
  <li>Update packages in preparation for the Ruby 2.7 transition</li>
  <li>Update packages for the <a href="https://salsa.debian.org/ruby-team/rails/-/wikis/Transition-to-Rails-6-for-Debian-Bullseye">Rails 6 transition</a></li>
  <li>Fix several testing migration issues</li>
  <li>Improve the team’s tools and workflow
    <ul>
      <li>Optimize usage of Salsa CI and reduce workload for Salsa service</li>
      <li>Prevent breakages by minor transitions</li>
    </ul>
  </li>
  <li>Fix team specific issues
    <ul>
      <li>Remove the interpreter dependency from libraries</li>
      <li>Handle rubygems integration warnings (working together with
<a href="https://github.com/deivid-rodriguez">Deivid Rodríguez</a>, upstream rubygems maintainer, who
kindly agreed to join the sprint).</li>
      <li>Optimize and improve installed gemspecs</li>
    </ul>
  </li>
  <li>Reduce the differences for Ruby packages on Kali Linux</li>
</ul>

<p>There are more items on the list which will be discussed during the following
days.</p>

<p>At the end of Day One there is already a two digit number of both packages
uploaded and bugs approached and fixed, and we managed to go through half of
the topics that required discussion.</p>

<p>We hope to be able to keep up the good work and finish on Friday with a lot of
our goals to be reached, taking a big step ahead.</p>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="sprint" /><category term="paris" /><category term="ruby-paris" /><category term="ruby2020" /><category term="ruby-team" /><summary type="html"><![CDATA[Day One of the Ruby Team Sprint in Paris is over. Topics covered have been discussing the Ruby 2.7 transition, dropping the Ruby interpreter dependency from libraries, optimization of the Salsa CI service, helping Kali Linux to reduce the differences between their and Debian's Ruby packages and much, much more ...]]></summary></entry><entry><title type="html">Update to packaging the Jekyll import tool</title><link href="https://ruby-team.pages.debian.net/2019/12/07/working-on-jekyll-import.html" rel="alternate" type="text/html" title="Update to packaging the Jekyll import tool" /><published>2019-12-07T22:15:56+00:00</published><updated>2019-12-08T00:34:13+00:00</updated><id>https://ruby-team.pages.debian.net/2019/12/07/working-on-jekyll-import</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2019/12/07/working-on-jekyll-import.html"><![CDATA[<p>For moving my personal blog away from blogger I’ve put a lot of work into
packaging and/or updating (the most common) <a href="https://salsa.debian.org/explore/projects?tag=jekyll-plugin">Jekyll plugins</a> for Debian. To
ease the work further I began to <a href="https://salsa.debian.org/ruby-team/ruby-jekyll-import">package</a> the <a href="https://import.jekyllrb.com/">Jekyll importers</a>. But they
need some (yet) unpackaged gems. So I’ve created an issue to track the progress
and put my work on this package on hold. Yesterday @utkarsh2102-guest contacted
me and <a href="https://salsa.debian.org/ruby-team/ruby-jekyll-import/issues/1">asked me for more details</a>. So I’ve spent the last hours to track down
what actually needs to be done. And the news are a lot better than expected.</p>

<p>Only <code class="language-plaintext highlighter-rouge">fastercsv</code>, <code class="language-plaintext highlighter-rouge">reverse_markup</code>, <code class="language-plaintext highlighter-rouge">behance</code> and <code class="language-plaintext highlighter-rouge">unidecode</code> must be packaged
as (runtime dependencies).</p>

<h2 id="using-jekyll-import-right-now-with-bundler">Using jekyll-import right now with bundler</h2>

<p>If you are in need of these importers you can use this Gemfile:</p>

<pre title="Gemfile"><code class="language-YAML">source "https://rubygems.org"
ruby RUBY_VERSION

gem "jekyll-import"
</code></pre>

<p>then set <code class="language-plaintext highlighter-rouge">GEM_HOME</code> to somewhere you are allowed to write to (e.g.
<code class="language-plaintext highlighter-rouge">$HOME/.gem/</code>) and run <code class="language-plaintext highlighter-rouge">bundle install</code> on the <code class="language-plaintext highlighter-rouge">Gemfile</code>:</p>

<div class="language-console highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="gp">$</span><span class="w"> </span><span class="nb">export </span><span class="nv">GEM_HOME</span><span class="o">=</span><span class="nv">$HOME</span>/.gem/
<span class="gp">$</span><span class="w"> </span>bundle <span class="nb">install</span>
</code></pre></div></div>

<p>Then write your importer (<a href="https://github.com/dleidert/www.wgdd.de/blob/master/tools/import_from_blogger.rb">mine</a>) and run it with <code class="language-plaintext highlighter-rouge">ruby</code>.</p>

<h2 id="using-jekyll-import-right-now-mixing-debian-packages-and-bundler">Using jekyll-import right now mixing Debian packages and bundler</h2>

<p>If you want to minimize the installation of non-Debian provided gems you
probably want to run this on <strong>Debian Sid</strong>:</p>

<div title="Install required packages for ruby-jekyll-import" class="language-console highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="gp">$</span><span class="w"> </span>apt-get <span class="nb">install </span>ruby-public-suffix ruby-concurrent ruby-eventmachine <span class="se">\</span>
<span class="go">                  ruby-ffi ruby-rb-inotify ruby-listen ruby-nokogiri \
                  ruby-bundler ruby-concurrent ruby-http-parser.rb ruby-sass \
                  ruby-forwardable-extended jekyll
</span></code></pre></div></div>

<p>This installs all the necessary ruby packages. Then run <code class="language-plaintext highlighter-rouge">bundle install</code> on the
following <code class="language-plaintext highlighter-rouge">Gemfile</code>:</p>

<div title="Gemfile for Debian users" class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>source "https://rubygems.org"
ruby RUBY_VERSION

# This will help ensure the proper Jekyll version is running.
gem "jekyll", "~&gt; 3.8.3.0"

# This will ensure we use the ruby packages in Sid.
gem "concurrent-ruby", "~&gt; 1.0.5.0"
gem "eventmachine", "~&gt; 1.0.7.0"
gem "ffi", "~&gt; 1.9.10.0"
gem "listen", "~&gt; 3.1.5.0"
gem "nokogiri", "~&gt; 1.10.4.0"
gem "pathutil", "~&gt; 0.16.1.0"
gem "public_suffix", "~&gt; 3.0.3.0"
gem "rb-inotify", "~&gt; 0.9.10.0"

# This will install jekyll-import.
gem "jekyll-import"
</code></pre></div></div>

<!-- # vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="packaging" /><category term="jekyll" /><category term="bundler" /><summary type="html"><![CDATA[For moving a personal blog away from blogger a lot of work has been put into packaging the current versions of a lot of Jekyll plugins. To import all existing posts Jekyll provides a tool to read the blog backup and create post markup files.]]></summary></entry><entry><title type="html">Hello World</title><link href="https://ruby-team.pages.debian.net/2019/08/16/Hello-world.html" rel="alternate" type="text/html" title="Hello World" /><published>2019-08-16T00:00:00+00:00</published><updated>2019-12-08T16:57:28+00:00</updated><id>https://ruby-team.pages.debian.net/2019/08/16/Hello-world</id><content type="html" xml:base="https://ruby-team.pages.debian.net/2019/08/16/Hello-world.html"><![CDATA[<p>The <a href="https://ruby-team.pages.debian.net/" title="Homepage of the Debian Ruby team">Debian Ruby pages are online</a>. This place can collect any information
about the Debian Ruby team and even offers blogging functionality.  It has been
built using <a href="https://salsa.debian.org/help/user/project/pages/index.md">Gitlab Pages</a> and Jekyll. The source can be found on
<a href="https://salsa.debian.org/ruby-team/ruby-team.pages.debian.net" title="Project sources on salsa.debian.org">salsa.d.o</a>.</p>

<!-- vim: set tw=79 ts=2 sw=2 ai si et: -->]]></content><author><name>Daniel Leidert</name><email>dleidert@debian.org</email><uri>https://www.wgdd.de</uri></author><category term="misc" /><category term="ruby-team" /><summary type="html"><![CDATA[The Debian Ruby pages are online. This place can collect any information about the Debian Ruby team and even offers blogging functionality. It has been built using Gitlab Pages and Jekyll. The source can be found on salsa.d.o.]]></summary></entry></feed>