Metadata-Version: 2.1
Name: devpi-web
Version: 4.0.4
Summary: devpi-web: a web view for devpi-server
Home-page: http://doc.devpi.net
Maintainer: Holger Krekel, Florian Schulze
Maintainer-email: holger@merlinux.eu
License: MIT
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Application
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.4
Requires-Dist: Whoosh (<3)
Requires-Dist: beautifulsoup4 (>=4.3.2)
Requires-Dist: defusedxml
Requires-Dist: devpi-server (>=5.2.0)
Requires-Dist: devpi-common (>=3.2.0)
Requires-Dist: docutils (>=0.11)
Requires-Dist: pygments (>=1.6)
Requires-Dist: pyramid (!=1.10a1)
Requires-Dist: pyramid-chameleon
Requires-Dist: readme-renderer[md] (>=23.0)

================================================
devpi-web: web interface plugin for devpi-server
================================================

This plugin adds a web interface with search for `devpi-server`_.

.. _devpi-server: https://pypi.org/project/devpi-server/

See https://doc.devpi.net for quickstart and more documentation.


Installation
============

``devpi-web`` needs to be installed alongside ``devpi-server``.

You can install it with::

    pip install devpi-web

There is no configuration needed as ``devpi-server`` will automatically discover the plugin through calling hooks using the setuptools entry points mechanism.


Support
=======

If you find a bug, use the `issue tracker at Github`_.

For general questions use the #devpi IRC channel on `freenode.net`_ or the `devpi-dev@python.org mailing list`_.

For support contracts and paid help contact `merlinux.eu`_.

.. _issue tracker at Github: https://github.com/devpi/devpi/issues/
.. _freenode.net: https://freenode.net/
.. _devpi-dev@python.org mailing list: https://mail.python.org/mailman3/lists/devpi-dev.python.org/
.. _merlinux.eu: https://merlinux.eu


=========
Changelog
=========



.. towncrier release notes start

4.0.4 (2020-05-11)
==================

Bug Fixes
---------

- Fix avoiding re-index of existing indexed projects on startup.


4.0.3 (2020-05-04)
==================

Bug Fixes
---------

- Fix some problems with deletion from index when project was deleted after indexing changes in 4.0.0.

- Fix replication error list on +status when there are more than 10 failures.


4.0.2 (2020-01-31)
==================

Bug Fixes
---------

- Fix project view if project doesn't exist on the index, but in an inherited index.


4.0.1 (2019-12-18)
==================

Bug Fixes
---------

- Fix #756: correct URL to toxresults when using ``latest`` or ``stable`` as version in URL.

- Fix caching of Whoosh indexer, so memory is properly freed.

- Add warnings and errors for indexing to status page/badge.


4.0.0 (2019-10-19)
==================

Deprecations and Removals
-------------------------

- The ``--recreate-search-index`` option was replaced with the ``devpi-clear-search-index`` command.

- Dropped support for Python 2.7.


Features
--------

- project.pt: implement #319 - add link to latest version and summary of latest version to project view

- doc.pt: implement #339: when viewing older documentation, show link to latest and stable documentation.

- implement #346: add support for 'latest' and 'stable' versions for project version URLs

- version.pt, style.css: implement #347 - show navigation link when newer version is available

- status.pt: Fix #500 - the outside url in ``+status`` is now clickable.

- Fix 564: set response headers to not cache anything for "latest" and "stable" documentation URLs.

- index.pt, toxresult.pt, version.pt, style.css: Fix #632 - show warning symbol when no tests were run in tox results.

- The search indexing is now performed in a separate thread. Indexing prioritizes private indexes, then projects downloaded from mirrors and lastly never downloaded projects from mirrors.

- On server start a refresh run for the search index is started automatically. In addition to that the indexing is done in smaller batches, which allows resuming of indexing the large pypi project lists.

- In many cases re-indexing is now avoided.

- The master url in the ``+status`` view is now clickable.

- Add new ``--documentation-path`` option to set the path where documentation is unzipped to.

- version.pt, common.js: all list like metadata is now collapsed to ~3 lines instead of only classifiers.

- The ``--recreate-search-index`` option now just removes the whole index. Upon server restart the index is rebuilt automatically in the background.

- Indexing of mirrors will not trigger a refresh of the simple links for projects which have downloaded releases. This allows quicker indexing for new replicas and in case the search index is rebuilt using ``--recreate-search-index``.

- root.pt: added new view for user

- The path for Whoosh index files can now be specified as an option like this: ``--indexer-backend whoosh:path=/...``

- Indexer backend options can now be specified as a dict in yaml config files.


Bug Fixes
---------

- Fix #567: the ``pip search`` view is no longer proxied to the master.

- Pass query string on to documentation iframe, this fixes Sphinx search among other things.


Other Changes
-------------

- macros.pt, version.pt, style.css: moved separators to css.

- The minimum supported version of devpi-server is now 5.2.0.

- The interface of ``update_projects`` for search indexers has changed. The list of projects is now a list of ``ProjectIndexingInfo`` objects instead of ``dict``. To get the dictionary as before, call ``preprocess_project`` on the object.



