This file is indexed.

/usr/share/doc/python-hypothesis/html/packaging.html is in python-hypothesis-doc 3.44.1-2ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>Packaging Guidelines &mdash; Hypothesis 3.44.1 documentation</title>
  

  
  
  
  

  

  
  
    

  

  
  
    <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  

  

  
        <link rel="index" title="Index"
              href="genindex.html"/>
        <link rel="search" title="Search" href="search.html"/>
    <link rel="top" title="Hypothesis 3.44.1 documentation" href="index.html"/>
        <link rel="next" title="Reproducing Failures" href="reproducing.html"/>
        <link rel="prev" title="Help and Support" href="support.html"/> 

  
  <script src="_static/js/modernizr.min.js"></script>

</head>

<body class="wy-body-for-nav" role="document">

   
  <div class="wy-grid-for-nav">

    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search">
          

          
            <a href="index.html" class="icon icon-home"> Hypothesis
          

          
          </a>

          
            
            
              <div class="version">
                3.44.1
              </div>
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="quickstart.html">Quick start guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="details.html">Details and advanced features</a></li>
<li class="toctree-l1"><a class="reference internal" href="settings.html">Settings</a></li>
<li class="toctree-l1"><a class="reference internal" href="data.html">What you can generate and how</a></li>
<li class="toctree-l1"><a class="reference internal" href="extras.html">Additional packages</a></li>
<li class="toctree-l1"><a class="reference internal" href="django.html">Hypothesis for Django users</a></li>
<li class="toctree-l1"><a class="reference internal" href="numpy.html">Hypothesis for the Scientific Stack</a></li>
<li class="toctree-l1"><a class="reference internal" href="healthchecks.html">Health checks</a></li>
<li class="toctree-l1"><a class="reference internal" href="database.html">The Hypothesis Example Database</a></li>
<li class="toctree-l1"><a class="reference internal" href="stateful.html">Stateful testing</a></li>
<li class="toctree-l1"><a class="reference internal" href="supported.html">Compatibility</a></li>
<li class="toctree-l1"><a class="reference internal" href="examples.html">Some more examples</a></li>
<li class="toctree-l1"><a class="reference internal" href="community.html">Community</a></li>
<li class="toctree-l1"><a class="reference internal" href="manifesto.html">The Purpose of Hypothesis</a></li>
<li class="toctree-l1"><a class="reference internal" href="endorsements.html">Testimonials</a></li>
<li class="toctree-l1"><a class="reference internal" href="usage.html">Open Source Projects using Hypothesis</a></li>
<li class="toctree-l1"><a class="reference internal" href="strategies.html">Projects extending Hypothesis</a></li>
<li class="toctree-l1"><a class="reference internal" href="changes.html">Changelog</a></li>
<li class="toctree-l1"><a class="reference internal" href="development.html">Ongoing Hypothesis Development</a></li>
<li class="toctree-l1"><a class="reference internal" href="support.html">Help and Support</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Packaging Guidelines</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#release-tarballs">Release tarballs</a></li>
<li class="toctree-l2"><a class="reference internal" href="#dependencies">Dependencies</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#python-versions">Python versions</a></li>
<li class="toctree-l3"><a class="reference internal" href="#other-python-libraries">Other Python libraries</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="#testing-hypothesis">Testing Hypothesis</a></li>
<li class="toctree-l2"><a class="reference internal" href="#examples">Examples</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="reproducing.html">Reproducing Failures</a></li>
</ul>

            
          
        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="index.html">Hypothesis</a>
        
      </nav>


      
      <div class="wy-nav-content">
        <div class="rst-content">
          















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="index.html">Docs</a> &raquo;</li>
        
      <li>Packaging Guidelines</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="_sources/packaging.rst.txt" rel="nofollow"> View page source</a>
          
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="packaging-guidelines">
<h1>Packaging Guidelines<a class="headerlink" href="#packaging-guidelines" title="Permalink to this headline"></a></h1>
<p>Downstream packagers often want to package Hypothesis. Here are some guidelines.</p>
<p>The primary guideline is this: If you are not prepared to keep up with the Hypothesis release schedule,
don’t. You will annoy me and are doing your users a disservice.</p>
<p>Hypothesis has a very frequent release schedule. It’s rare that it goes a week without a release,
and there are often multiple releases in a given week.</p>
<p>If you <em>are</em> prepared to keep up with this schedule, you might find the rest of this document useful.</p>
<div class="section" id="release-tarballs">
<h2>Release tarballs<a class="headerlink" href="#release-tarballs" title="Permalink to this headline"></a></h2>
<p>These are available from <a class="reference external" href="https://github.com/HypothesisWorks/hypothesis-python/releases">the GitHub releases page</a>. The
tarballs on pypi are intended for installation from a Python tool such as pip and should not
be considered complete releases. Requests to include additional files in them will not be granted. Their absence
is not a bug.</p>
</div>
<div class="section" id="dependencies">
<h2>Dependencies<a class="headerlink" href="#dependencies" title="Permalink to this headline"></a></h2>
<div class="section" id="python-versions">
<h3>Python versions<a class="headerlink" href="#python-versions" title="Permalink to this headline"></a></h3>
<p>Hypothesis is designed to work with a range of Python versions. Currently supported are:</p>
<ul class="simple">
<li>pypy-2.6.1 (earlier versions of pypy <em>may</em> work)</li>
<li>CPython 2.7.x</li>
<li>CPython 3.4.x</li>
<li>CPython 3.5.x</li>
<li>CPython 3.6.x</li>
</ul>
<p>If you feel the need to have separate Python 3 and Python 2 packages you can, but Hypothesis works unmodified
on either.</p>
</div>
<div class="section" id="other-python-libraries">
<h3>Other Python libraries<a class="headerlink" href="#other-python-libraries" title="Permalink to this headline"></a></h3>
<p>Hypothesis has <em>mandatory</em> dependencies on the following libraries:</p>
<ul class="simple">
<li><a class="reference external" href="https://pypi.python.org/pypi/attrs">attrs</a></li>
<li><a class="reference external" href="https://pypi.python.org/pypi/coverage">coverage</a></li>
<li><a class="reference external" href="https://pypi.python.org/pypi/enum34">enum34</a> is required on Python 2.7</li>
</ul>
<p>Hypothesis has <em>optional</em> dependencies on the following libraries:</p>
<ul class="simple">
<li><a class="reference external" href="https://pypi.python.org/pypi/pytz">pytz</a> (almost any version should work)</li>
<li><a class="reference external" href="https://pypi.python.org/pypi/Faker">Faker</a>, version 0.7 or later</li>
<li><a class="reference external" href="https://www.djangoproject.com">Django</a>, all supported versions</li>
<li><a class="reference external" href="https://pypi.python.org/pypi/numpy">numpy</a>, 1.10 or later (earlier versions will probably work fine)</li>
<li><a class="reference external" href="https://pypi.python.org/pypi/pandas">pandas</a>, 1.8 or later</li>
<li><a class="reference external" href="https://pypi.python.org/pypi/pytest">py.test</a> (2.8.0 or greater). This is a mandatory dependency for testing Hypothesis itself but optional for users.</li>
</ul>
<p>The way this works when installing Hypothesis normally is that these features become available if the relevant
library is installed.</p>
</div>
</div>
<div class="section" id="testing-hypothesis">
<h2>Testing Hypothesis<a class="headerlink" href="#testing-hypothesis" title="Permalink to this headline"></a></h2>
<p>If you want to test Hypothesis as part of your packaging you will probably not want to use the mechanisms
Hypothesis itself uses for running its tests, because it has a lot of logic for installing and testing against
different versions of Python.</p>
<p>The tests must be run with py.test. A version more recent than 2.8.0 is strongly encouraged, but it may work
with earlier versions (however py.test specific logic is disabled before 2.8.0).</p>
<p>Tests are organised into a number of top level subdirectories of the tests/ directory.</p>
<ul class="simple">
<li>cover: This is a small, reasonably fast, collection of tests designed to give 100% coverage of all but a select
subset of the files when run under Python 3.</li>
<li>nocover: This is a much slower collection of tests that should not be run under coverage for performance reasons.</li>
<li>py2: Tests that can only be run under Python 2</li>
<li>py3: Tests that can only be run under Python 3</li>
<li>datetime: This tests the subset of Hypothesis that depends on pytz</li>
<li>fakefactory: This tests the subset of Hypothesis that depends on fakefactory.</li>
<li>django: This tests the subset of Hypothesis that depends on django (this also depends on fakefactory).</li>
</ul>
<p>An example invocation for running the coverage subset of these tests:</p>
<div class="highlight-bash"><div class="highlight"><pre><span></span>pip install -e .
pip install pytest <span class="c1"># you will probably want to use your own packaging here</span>
python -m pytest tests/cover
</pre></div>
</div>
</div>
<div class="section" id="examples">
<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline"></a></h2>
<ul class="simple">
<li><a class="reference external" href="https://www.archlinux.org/packages/community/any/python-hypothesis/">arch linux</a></li>
<li><a class="reference external" href="https://src.fedoraproject.org/rpms/python-hypothesis">fedora</a></li>
<li><a class="reference external" href="https://packages.gentoo.org/packages/dev-python/hypothesis">gentoo</a></li>
</ul>
</div>
</div>


           </div>
           <div class="articleComments">
            
           </div>
          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="reproducing.html" class="btn btn-neutral float-right" title="Reproducing Failures" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="support.html" class="btn btn-neutral" title="Help and Support" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright 2013-2018, David R. MacIver.

    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  


  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'./',
            VERSION:'3.44.1',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            SOURCELINK_SUFFIX: '.txt'
        };
    </script>
      <script type="text/javascript" src="_static/jquery.js"></script>
      <script type="text/javascript" src="_static/underscore.js"></script>
      <script type="text/javascript" src="_static/doctools.js"></script>

  

  
  
    <script type="text/javascript" src="_static/js/theme.js"></script>
  

  
  
  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.StickyNav.enable();
      });
  </script>
   

</body>
</html>