Skip to content

Commit

Permalink
Merge pull request #244 from DiffSK/merge-5.0.x
Browse files Browse the repository at this point in the history
Merge 5.0.x into master
  • Loading branch information
jelmer committed Sep 17, 2024
2 parents e2ba445 + 2bb5a5c commit 8be5462
Show file tree
Hide file tree
Showing 19 changed files with 245 additions and 3,545 deletions.
56 changes: 56 additions & 0 deletions .github/workflows/python-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Python package

on: [push]

jobs:
build-on-latest:

runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest coverage pytest-cov mock
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install -e .
- name: Test with pytest
run: |
python src/tests/configobj_doctests.py
python -m configobj.validate
py.test -c setup.cfg --color=yes --cov=configobj --cov-report=term --cov-report=html --cov-report=xml
build-on-legacy:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
python-version: [ "3.6" ]

steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest coverage pytest-cov mock
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
pip install -e .
- name: Test with pytest
run: |
python src/tests/configobj_doctests.py
python -m configobj.validate
py.test -c setup.cfg --color=yes --cov=configobj --cov-report=term --cov-report=html --cov-report=xml
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,6 @@ MANIFEST

# Other stuff
.cache/

# Backup files
*~
23 changes: 0 additions & 23 deletions .travis.yml

This file was deleted.

13 changes: 13 additions & 0 deletions CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,19 @@ Release 5.1.0
* docs: Explicit mention of ``force_list`` and its pitfalls (#112)


=======
Release 5.0.8
"""""""""""""

* fixing/test for a regression introduced in 5.0.7 that prevented ``import validate`` from working


Release 5.0.7
"""""""""""""

* update testing to validate against python version 2.7 and 3.5-3.11
* update broken links / non-existent services and references

Older Releases
""""""""""""""

Expand Down
9 changes: 5 additions & 4 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
Copyright (c):
2003-2010, Michael Foord
2014, Eli Courtwright, Rob Dennis
2003-2010, Michael Foord, Nicola Larosa
2014-2023, Eli Courtwright, Rob Dennis
All rights reserved.
E-mails :
fuzzyman AT voidspace DOT org DOT uk
michael AT python DOT org
nico AT tekNico DOT net
eli AT courtwright DOT org
rdennis AT gmail DOT com

Expand All @@ -12,7 +13,7 @@ Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:


2014
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.

Expand Down
75 changes: 23 additions & 52 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,67 +1,38 @@
# configobj
[![Build Status](https://travis-ci.org/DiffSK/configobj.svg?branch=master)](https://travis-ci.org/DiffSK/configobj)
[![Coverage Status](https://img.shields.io/coveralls/DiffSK/configobj.svg)](https://coveralls.io/r/DiffSK/configobj?branch=master)
[![PyPI version](http://img.shields.io/pypi/v/configobj.svg)](https://pypi.python.org/pypi/configobj)
[![License](https://img.shields.io/badge/license-BSD_3--clause-red.svg)](https://github.com/DiffSK/configobj/blob/master/LICENSE)


Python 3+ compatible port of the [configobj](https://pypi.python.org/pypi/configobj/) library.

The Github CI/CD Pipeline runs tests on python versions:
- 3.6
- 3.7
- 3.8
- 3.9
- 3.10
- 3.11


## Documentation

You can find a full manual on how to use ConfigObj at [readthedocs](http://configobj.readthedocs.io/).
If you want to *work on the project*, please see the [Contributing](#contributing) section below.


## Status

This project is now maintained by [Eli Courtwright](https://github.com/EliAndrewC) and [Rob Dennis](https://github.com/robdennis) with the blessing of original creator [Michael Foord](http://www.voidspace.org.uk/).

For long time ConfigObj users, the biggest change is in the officially supported Python versions (it *was* 2.3 … 2.6):

* 2.7
* 3.4 … 3.7

Other Python3 versions may work, but this is what *Travis* and ``tox`` use to run the tests on commit.


## Roadmap

- Fixing any issues introduced as a result of the added Python 3 support
- Moving tests away from doctests in favor of pytest (reasonable now that versions older than 2.6 are dropped)
- Considering new features that work in a backwards-compatible way (feel free to open an issue with your suggestion)
- Also see the [milestones](https://github.com/DiffSK/configobj/milestones)


## Contributing

Contributing to this project is easy, and reporting an issue or
adding to the documentation also improves things for every user.
You don’t need to be a developer to contribute.
See [CONTRIBUTING](https://github.com/DiffSK/configobj/blob/master/CONTRIBUTING.md) for more.

As a documentation author or developer,
to **create a working directory** for this project,
call these commands:

```sh
git clone "https://github.com/DiffSK/configobj.git"
cd "configobj"
command . .env --yes --develop # add '--virtualenv /usr/bin/virtualenv' for Python2
invoke build --docs test doctest check
```

For this to work, you might also need to follow some
[setup procedures](https://py-generic-project.readthedocs.io/en/latest/installing.html#quick-setup)
to make the necessary basic commands available on *Linux*, *Mac OS X*, and *Windows*.

**Running the test suite** can be done several ways, just call ``invoke test`` for a quick check.
Run ``invoke test.tox`` for testing with *all* supported Python versions
(if you [have them available](https://github.com/jhermann/priscilla/tree/master/pyenv)),
or be more selective by e.g. calling ``invoke test.tox -e py27,py34``.

Use ``invoke check`` to **run a code-quality scan**.

To **start a watchdog that auto-rebuilds documentation** and reloads the opened browser tab on any change,
call ``invoke docs -w -b`` (stop the watchdog using the ``-k`` option).
This is a mature project that is not actively maintained at this time.

## Past Contributors:

- [Michael Foord](https://agileabstractions.com/)
- original creator of ``configobj`` and ``validate`` and maintainer through version 4
- [Rob Dennis](https://github.com/robdennis)
- released version 5 (first python 3-compatible release) in 2014, bringing the project to github
- released the last maintenance release (until new maintainership is established) in 2023
- [Eli Courtwright](https://github.com/EliAndrewC)
- released version 5 (first python 3-compatible release) in 2014
- [Nicola Larosa](https://pypi.org/user/tekNico/)
- Contributions to the pre-version 5 codebase
- [Jürgen Hermann](https://github.com/jhermann)
- day-to-day maintenance of the repo
Loading

0 comments on commit 8be5462

Please sign in to comment.