

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Release 3.2.12</title>
    <meta name="description" content="details of the third release of Rya (Incubating)">
    <meta name="author" content="">

    <!-- Enable responsive viewport -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
    <!--[if lt IE 9]>
      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->

    <!-- Le styles -->
    <link href="/assets/themes/apache/bootstrap/css/bootstrap.css" rel="stylesheet">
    <link href="/assets/themes/apache/css/style.css?body=1" rel="stylesheet" type="text/css">
    <link href="/assets/themes/apache/css/syntax.css" rel="stylesheet"  type="text/css" media="screen" />
    <link href="/assets/themes/apache/css/rya.css" rel="stylesheet"  type="text/css" media="screen" />
    <!-- Le fav and touch icons -->
    <!-- Update these with your own images
    <link rel="shortcut icon" href="images/favicon.ico">
    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
    <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
    <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
  -->

  </head>

  <body>

        <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="/">
		  <img src="/assets/themes/apache/img/logo.png"  height ="30" alt = "logo">
              Apache Rya
          </a>
        </div>
        <nav class="navbar-collapse collapse" role="navigation">
          <ul class="nav navbar-nav navbar-right">
            <li id="community">
              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Community<b class="caret"></b></a>
               <ul class="dropdown-menu dropdown-left">
                <li><a href="/community">Get Involved</a></li>
                <li><a href="/community-members">Who we are</a></li>
               </ul>
            </li>
            <li><a href="/download">Downloads</a></li>
            <li><a href="/documentation">Documentation</a></li>
             <li id="apache">
              <a href="#" data-toggle="dropdown" class="dropdown-toggle">Apache<b class="caret"></b></a>
               <ul class="dropdown-menu">
                <li><a href="https://www.apache.org/foundation/how-it-works.html">Apache Software Foundation</a></li>
                <li><a href="https://www.apache.org/licenses/">Apache License</a></li>
                <li><a href="https://www.apache.org/security/">Security</a></li>
                <li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
                <li><a href="https://www.apache.org/foundation/thanks.html">Thanks</a></li>
                </ul>
            </li>
          </ul>
        </nav><!--/.navbar-collapse -->
      </div>
    </div>




    <div class="container">
      

<div class="page-header">
  <h1>Release 3.2.12 </h1>
</div>

<div class="row-fluid post-full">
  <div class="span12">
    <div class="date">
      <span>04 March 2018</span>
    </div>
    <div class="content">
      
<p>This is Rya’s third Apache release, version 3.2.12.  It is available as a source code download:</p>

<ul>
  <li><a href="https://www.apache.org/dyn/closer.lua/incubator/rya/rya-incubating-3.2.12/rya-project-3.2.12-incubating-source-release.zip">Source download from Apache</a></li>
  <li>Verify:  <a href="https://www.apache.org/dist/incubator/rya/rya-incubating-3.2.12/rya-project-3.2.12-incubating-source-release.zip.asc">pgp</a> <a href="https://www.apache.org/dist/incubator/rya/rya-incubating-3.2.12/rya-project-3.2.12-incubating-source-release.zip.md5">md5</a> <a href="https://www.apache.org/dist/incubator/rya/rya-incubating-3.2.12/rya-project-3.2.12-incubating-source-release.zip.sha1">sha1</a> <a href="https://www.apache.org/dist/incubator/rya/rya-incubating-3.2.12/rya-project-3.2.12-incubating-source-release.zip.sha512">sha512</a></li>
  <li><a href="/news/2018/03/04/relnotes-3.2.12/">Release notes</a></li>
  <li><a href="https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.rya%22">Central repository for Maven and other dependency managers</a></li>
</ul>

<p><a href="https://www.apache.org/dyn/closer.cgi#verify">Verify</a>
using the corresponding <em>pgp</em> signature (using the committer file in
<a href="https://www.apache.org/dist/rya/KEYS">KEYS</a>).
If you cannot do that, the <em>md5</em> or <em>sha1</em> hash file may be used to check that the
download has completed okay.</p>

<p>For fast downloads, current source distributions are hosted on mirror servers;
older source distributions are in the
<a href="https://archive.apache.org/dist/incubator/rya/">archive</a>.
If a download from a mirror fails, retry, and the second download will likely
succeed.</p>

<p>For security, hash and signature files are always hosted at
<a href="https://www.apache.org/dist/incubator/rya">Apache</a>.</p>

<p>Next steps:</p>
<ul>
  <li><a href="https://github.com/apache/incubator-rya/blob/rel/rya-incubating-3.2.12/extras/rya.manual/src/site/markdown/build-source.md">Building from Source</a></li>
  <li><a href="https://github.com/apache/incubator-rya/blob/rel/rya-incubating-3.2.12/extras/rya.manual/src/site/markdown/quickstart.md">Quick Start</a></li>
  <li><a href="https://github.com/apache/incubator-rya/blob/rel/rya-incubating-3.2.12/extras/rya.manual/src/site/markdown/sm-firststeps.md">Typical First Steps</a></li>
  <li><a href="https://github.com/apache/incubator-rya/blob/rel/rya-incubating-3.2.12/extras/rya.manual/src/site/markdown/index.md">Manual – includes documents above</a></li>
</ul>

    </div>

  
    <ul class="tag_box inline">
      <li><i class="icon-folder-open"></i></li>
      
      


  
     
    	<li><a href="#release-ref">
    		release <span>5</span>
    	</a></li>
    
  


    </ul>
    

    

    <hr>
    <div class="pagination">
      <ul>
      
        <li class="prev"><a href="/news/2017/10/10/relnotes-3.2.11/" title="Release Notes v3.2.11">&larr; Previous</a></li>
      
        <li><a href="">Archive</a></li>
      
        <li class="next"><a href="/news/2018/03/04/relnotes-3.2.12/" title="Release Notes v3.2.12">Next &rarr;</a></li>
      
      </ul>
    </div>
    <hr>
    
  </div>
</div>


      <hr>
      <footer>
        <!-- <p>&copy; 2021 </p>-->
        <footer class="site-footer">
    <div class="wrapper">
        <div class="footer-col-wrapper">
            
            <div style="text-align:center;">
                
                <div>
                    Copyright &copy; 2021 <a href="https://www.apache.org">The Apache Software Foundation</a>.
                    Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version
                    2.0</a>.
                    <br>
                    
                    Apache and the Apache Feather logo are trademarks of The Apache Software Foundation.
                    
                </div>
            </div>
        </div>
    </div>
</footer>

      </footer>
    </div>

    
    <script src="/assets/themes/apache/jquery/jquery-2.1.1.min.js"></script>

    <script src="/assets/themes/apache/bootstrap/js/bootstrap.min.js"></script>


  </body>
</html>

