blob: ff943b0a24843955abf584a5feafd0f4b2c475ab (
plain) (
tree)
|
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="Loïc Hoguin based on a design from (Soft10) Pol Cámara">
<meta name="generator" content="Hugo 0.17" />
<title>Nine Nines: Ranch 1.3</title>
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700,400italic' rel='stylesheet' type='text/css'>
<link href="/css/bootstrap.min.css" rel="stylesheet">
<link href="/css/99s.css" rel="stylesheet">
<link rel="shortcut icon" href="/img/ico/favicon.ico">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/img/ico/apple-touch-icon-114.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/ico/apple-touch-icon-72.png">
<link rel="apple-touch-icon-precomposed" href="/img/ico/apple-touch-icon-57.png">
</head>
<body class="">
<header id="page-head">
<div id="topbar" class="container">
<div class="row">
<div class="span2">
<h1 id="logo"><a href="/" title="99s">99s</a></h1>
</div>
<div class="span10">
<div id="side-header">
<nav>
<ul>
<li class="active"><a title="Hear my thoughts" href="/articles">Articles</a></li>
<li><a title="Watch my talks" href="/talks">Talks</a></li>
<li><a title="Read the docs" href="/docs">Documentation</a></li>
<li><a title="Request my services" href="/services">Consulting & Training</a></li>
</ul>
</nav>
<ul id="social">
<li>
<a href="https://github.com/ninenines" title="Check my Github repositories"><img src="/img/ico_github.png" data-hover="/img/ico_github_alt.png" alt="Github"></a>
</li>
<li>
<a title="Keep in touch!" href="http://twitter.com/lhoguin"><img src="/img/ico_microblog.png" data-hover="/img/ico_microblog_alt.png"></a>
</li>
<li>
<a title="Contact me" href="mailto:[email protected]"><img src="/img/ico_mail.png" data-hover="/img/ico_mail_alt.png"></a>
</li>
</ul>
</div>
</div>
</div>
</div>
</header>
<div id="contents">
<div class="container">
<div class="row">
<div class="span9 maincol">
<article class="blog_item">
<header>
<h1 class="lined-header"><span>Ranch 1.3</span></h1>
<p class="date">
<span class="day">28</span>
<span class="month">Nov</span>
</p>
</header>
<div class="paragraph"><p>Ranch <code>1.3.0</code> has been released!</p></div>
<div class="paragraph"><p>This release fixes a number of long standing issues and adds
a small number of features:</p></div>
<div class="paragraph"><p>The <code>ssl</code> application has been added to the list of dependencies.
If you don’t need it, you can remove it automatically when fetching
Ranch or when building the release. If you do need it, you will no
longer have issues shutting down a node because of Ranch.</p></div>
<div class="paragraph"><p>The <code>ranch:info/0</code> and <code>ranch:procs/2</code> can be used to retrieve
information about Ranch’s state. Use it for diagnostic and
discovery purposes.</p></div>
<div class="paragraph"><p>SSL listeners can now be configured without a certificate, for setups
that make use of the SNI extension.</p></div>
<div class="paragraph"><p>Transport options are now a blacklist, meaning all unknown options
will be accepted. However Dialyzer will warn if said option is not
defined in Ranch’s type specifications. Please send a patch when that
happens!</p></div>
<div class="paragraph"><p>Various bugs have been fixed, including the bug where the
number of active connections could become negative. Common
errors at listener startup should be easier to read (for
example when the port is already in use).</p></div>
<div class="paragraph"><p>See the <a href="https://git.ninenines.eu/ranch.git/plain/CHANGELOG.asciidoc">CHANGELOG</a>
for more details.</p></div>
<div class="paragraph"><p>Ranch is now tested and supported with Erlang/OTP R16B or above
on Arch Linux, FreeBSD, OSX, Ubuntu and Windows 7. Contact me
if you can provide permanent access to another platform for the
purposes of testing.</p></div>
<div class="paragraph"><p>Ranch is now available from four locations:</p></div>
<div class="ulist"><ul>
<li>
<p>
<a href="https://git.ninenines.eu/ranch.git">https://git.ninenines.eu/ranch.git</a>
</p>
</li>
<li>
<p>
<a href="https://github.com/ninenines/ranch.git">https://github.com/ninenines/ranch.git</a>
</p>
</li>
<li>
<p>
<a href="https://bitbucket.org/ninenines/ranch.git">https://bitbucket.org/ninenines/ranch.git</a>
</p>
</li>
<li>
<p>
<a href="https://gitlab.com/ninenines/ranch.git">https://gitlab.com/ninenines/ranch.git</a>
</p>
</li>
</ul></div>
<div class="paragraph"><p>They are updated at the same time so there is no real difference.</p></div>
<div class="paragraph"><p>The most recent Ranch commit is now always signed. You can import the
<a href="https://pgp.mit.edu/pks/lookup?op=vindex&fingerprint=on&exact=on&search=0xF19F189CECC7439699CEDD7A6EF7A77066CCCC8A">signing key for Loïc Hoguin</a> with:</p></div>
<div class="listingblock">
<div class="content"><!-- Generator: GNU source-highlight 3.1.8
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt>$ gpg --keyserver hkp<span style="color: #990000">:</span>//keys<span style="color: #990000">.</span>gnupg<span style="color: #990000">.</span>net --recv-key 66CCCC8A</tt></pre></div></div>
<div class="paragraph"><p>The primary key fingerprint is <code>F19F 189C ECC7 4396 99CE DD7A 6EF7 A770 66CC CC8A</code>.</p></div>
<div class="paragraph"><p>When verifying signatures in git, the following should appear:</p></div>
<div class="listingblock">
<div class="content"><!-- Generator: GNU source-highlight 3.1.8
by Lorenzo Bettini
http://www.lorenzobettini.it
http://www.gnu.org/software/src-highlite -->
<pre><tt>gpg<span style="color: #990000">:</span> Signature made Sat <span style="color: #993399">26</span> Nov <span style="color: #993399">2016</span> <span style="color: #993399">12</span><span style="color: #990000">:</span><span style="color: #993399">58</span><span style="color: #990000">:</span><span style="color: #993399">35</span> PM CET
gpg<span style="color: #990000">:</span> using RSA key 71366FF21851DF03
gpg<span style="color: #990000">:</span> Good signature from <span style="color: #FF0000">"Loïc Hoguin <[email protected]>"</span> <span style="color: #990000">[</span>unknown<span style="color: #990000">]</span>
gpg<span style="color: #990000">:</span> WARNING<span style="color: #990000">:</span> This key is not certified with a trusted signature<span style="color: #990000">!</span>
gpg<span style="color: #990000">:</span> There is no indication that the signature belongs to the owner<span style="color: #990000">.</span>
Primary key fingerprint<span style="color: #990000">:</span> F19F 189C ECC7 <span style="color: #993399">4396</span> 99CE DD7A 6EF7 A770 66CC CC8A
Subkey fingerprint<span style="color: #990000">:</span> FEDA <span style="color: #993399">6E41</span> B390 F745 A385 5CDC <span style="color: #993399">7136</span> 6FF2 <span style="color: #993399">1851</span> DF03</tt></pre></div></div>
<div class="paragraph"><p>You can safely ignore the warning if you don’t know what it
means, as long as everything else is correct.</p></div>
<div class="paragraph"><p>Mirrors and signature verification will soon be implemented
directly in Erlang.mk. In the meantime, you will need to
set them up manually.</p></div>
<div class="paragraph"><p>Most of this work was done to fix issues in RabbitMQ. Paid
customers get priority; contact me if you have some issues
that need fixing sooner rather than later.</p></div>
<div class="paragraph"><p>Expect future releases to be announced in this space.</p></div>
<div class="paragraph"><p>Thanks for reading!</p></div>
</article>
</div>
<div class="span3 sidecol">
<h3>More articles</h3>
<ul id="articles-nav" class="extra_margin">
<li><a href="https://ninenines.eu/articles/the-elephant-in-the-room/">The elephant in the room</a></li>
<li><a href="https://ninenines.eu/articles/dont-let-it-crash/">Don't let it crash</a></li>
<li><a href="https://ninenines.eu/articles/cowboy-2.0.0-pre.4/">Cowboy 2.0 pre-release 4</a></li>
<li><a href="https://ninenines.eu/articles/ranch-1.3/">Ranch 1.3</a></li>
<li><a href="https://ninenines.eu/articles/ml-archives/">Mailing list archived</a></li>
<li><a href="https://ninenines.eu/articles/website-update/">Website update</a></li>
<li><a href="https://ninenines.eu/articles/erlanger-playbook-september-2015-update/">The Erlanger Playbook September 2015 Update</a></li>
<li><a href="https://ninenines.eu/articles/erlanger-playbook/">The Erlanger Playbook</a></li>
<li><a href="https://ninenines.eu/articles/erlang-validate-utf8/">Validating UTF-8 binaries with Erlang</a></li>
<li><a href="https://ninenines.eu/articles/on-open-source/">On open source</a></li>
<li><a href="https://ninenines.eu/articles/the-story-so-far/">The story so far</a></li>
<li><a href="https://ninenines.eu/articles/cowboy2-qs/">Cowboy 2.0 and query strings</a></li>
<li><a href="https://ninenines.eu/articles/january-2014-status/">January 2014 status</a></li>
<li><a href="https://ninenines.eu/articles/farwest-funded/">Farwest got funded!</a></li>
<li><a href="https://ninenines.eu/articles/erlang.mk-and-relx/">Build Erlang releases with Erlang.mk and Relx</a></li>
<li><a href="https://ninenines.eu/articles/xerl-0.5-intermediate-module/">Xerl: intermediate module</a></li>
<li><a href="https://ninenines.eu/articles/xerl-0.4-expression-separator/">Xerl: expression separator</a></li>
<li><a href="https://ninenines.eu/articles/erlang-scalability/">Erlang Scalability</a></li>
<li><a href="https://ninenines.eu/articles/xerl-0.3-atomic-expressions/">Xerl: atomic expressions</a></li>
<li><a href="https://ninenines.eu/articles/xerl-0.2-two-modules/">Xerl: two modules</a></li>
<li><a href="https://ninenines.eu/articles/xerl-0.1-empty-modules/">Xerl: empty modules</a></li>
<li><a href="https://ninenines.eu/articles/ranch-ftp/">Build an FTP Server with Ranch in 30 Minutes</a></li>
<li><a href="https://ninenines.eu/articles/tictactoe/">Erlang Tic Tac Toe</a></li>
</ul>
<h3>Feedback</h3>
<p>Feel free to <a href="mailto:[email protected]">email us</a>
if you found any mistake or need clarification on any of the
articles.</p>
</div>
</div>
</div>
</div>
<footer>
<div class="container">
<div class="row">
<div class="span6">
<p id="scroll-top"><a href="#">↑ Scroll to top</a></p>
<nav>
<ul>
<li><a href="mailto:[email protected]" title="Contact us">Contact us</a></li><li><a href="https://github.com/ninenines/ninenines.github.io" title="Github repository">Contribute to this site</a></li>
</ul>
</nav>
</div>
<div class="span6 credits">
<p><img src="/img/footer_logo.png"></p>
<p>Copyright © Loïc Hoguin 2012-2016</p>
</div>
</div>
</div>
</footer>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script src="/js/bootstrap-dropdown.js"></script>
<script src="/js/custom.js"></script>
</body>
</html>
|