README.rst

kotti_software

Setting up kotti_software

This Addon adds two new Content Types to your Kotti site.
To set up the content types add kotti_software.kotti_configure
to the kotti.configurators setting in your ini file:

kotti.configurators = kotti_software.kotti_configure

Now you can create a software collection and add software projects.

There are different settings to adjust the behavior of the
software.

You can select if the software projects in the collection overview
should be batched. If you set
kotti_software.collection_settings.use_batching to true
(the default value) the software projects will be shown on separate
pages. If you set it to false all software projects are shown
all together on one page:

kotti_software.collection_settings.use_batching = false

If you use batching you can choose how many software projects are
shown on one page. The default value for
kotti_software.collection_settings.pagesize is 5:

kotti_software.collection_settings.pagesize = 10

You can use auto batching where the next page of the software projects
is automatically loaded when scrolling down the overview page instead
of showing links to switch the pages. The default for
kotti_software.collection_settings.use_auto_batching is true:

kotti_software.collection_settings.use_auto_batching = false

With kotti_software.collection_settings.link_headline_overview you
can control whether the headline of a software project in the
collection overview is linked to the software project or not. This
setting defaults to true:

Using kotti_software

Add a software collection to your site, then to that add software projects.
Here are ways to enter software projects:

Enter the PyPI JSON URL only

Enter the PyPI JSON URL, along with the GitHub repo info for fetching
the GitHub repo information, such as most recent push date and time, or
do the same for a Bitbucket repo (You could do both, for a project with
both GitHub and Bitbucket repos.

Enter only the GitHub repo info, or the Bitbucket info, for a repo-only
software project.

Enter the title, description, date and any of: home_page, docs_url,
package_url, bugtrack_url (manual entry), and specify that these values
are not to be overwritten from values on PyPI, if they exist.

Enter the date only (bare-bones entry, with just date and
title, description, and whatever you wish in body -- useful for defunct
projects). Set the date-handling choice to use the entered value.

The date-handling and description-handling select properties should be set
according to the usage above, and whether the entered values are to be used, or
if values are to be fetched from PyPI or GitHub or Bitbucket.

There are also boolean override properties for using a combination of manually
entered values for home_page, docs_url, package_url, and bugtrack_url and the
fetching of these values from PyPI.

Bitbucket

Work in progress

kotti_software is considered alpha software, not yet suitable for use in
production environments. The current state of the project is in no way feature
complete nor API stable. If you really want to use it in your project(s), make
sure to pin the exact version in your requirements. Not doing so will likely
break your project when future releases become available.

Development

Contributions to kotti_software are very welcome.
Just clone its GitHub repository and submit your contributions as pull requests.

Note that all development is done on the develop branch. master is reserved
for "production-ready state". Therefore, make sure to always base development work
on the current state of the develop branch.

Testing

kotti_software has 100% test coverage.
Please make sure that you add tests for new features and that all tests pass before
submitting pull requests. Running the test suite is as easy as running py.test
from the source directory (you might need to run python setup.py dev to have all
the test requirements installed in your virtualenv).