Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 9 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,28 @@
name: Publish to PyPI
on:
on:
release:
types: [published]
workflow_dispatch:


jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v4
with:
python-version: 3.7
python-version: 3.11
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --upgrade pip build
pip install twine wheel
- name: Build the package
run: |
python setup.py sdist bdist_wheel --universal
python -m build
- name: Upload to PyPI
run: twine upload dist/*
env:
env:
TWINE_USERNAME: ${{ secrets.TWINE_USERNAME }}
TWINE_PASSWORD: ${{ secrets.TWINE_PASSWORD }}
31 changes: 14 additions & 17 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
python-version: "3.8"

- name: Install dependencies
run: |
Expand All @@ -32,23 +32,20 @@ jobs:
strategy:
matrix:
toxenv:
# Legacy versions
- py39-dj32-wag215

# Current and latest versions
- py310-dj32-wag30
- py310-dj40-wag30
- py310-dj40-waglatest
- py38-dj3-wag4
- py38-dj4-wag4
- py38-dj3-waglatest
- py38-dj4-waglatest

include:
- toxenv: py39-dj32-wag215
python-version: "3.9"
- toxenv: py310-dj32-wag30
python-version: "3.10"
- toxenv: py310-dj40-wag30
python-version: "3.10"
- toxenv: py310-dj40-waglatest
python-version: "3.10"
- toxenv: py38-dj3-wag4
python-version: 3.8
- toxenv: py38-dj4-wag4
python-version: 3.8
- toxenv: py38-dj3-waglatest
python-version: 3.8
- toxenv: py38-dj4-waglatest
python-version: 3.8

steps:
- uses: actions/checkout@v3
Expand Down Expand Up @@ -89,7 +86,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
python-version: "3.8"

- name: Install dependencies
run: |
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,4 @@ dist/

# IDEs
.idea/
*.db
7 changes: 3 additions & 4 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,10 @@ repos:
- id: black
args: ["wagtailflags", "setup.py", "--line-length=79"]
exclude: migrations
- repo: https://gitlab.com/pycqa/flake8
rev: 4.0.1
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: v0.0.188
hooks:
- id: flake8
additional_dependencies: [flake8-bugbear==22.1.11]
- id: ruff
- repo: https://github.com/pycqa/isort
rev: 5.10.1
hooks:
Expand Down
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
# Wagtail-Flags

[![Build Status](https://github.com/cfpb/wagtail-flags/workflows/test/badge.svg)](https://github.com/cfpb/wagtail-flags/actions?query=workflow%3Atest)
[![Coverage Status](https://coveralls.io/repos/github/cfpb/wagtail-flags/badge.svg?branch=main)](https://coveralls.io/github/cfpb/wagtail-flags?branch=main)
[![Ethical open source](https://img.shields.io/badge/open-ethical-%234baaaa)](https://ethicalsource.dev/definition/)

Feature flags allow you to toggle functionality based on configurable conditions.
Expand All @@ -22,10 +21,10 @@ Wagtail-Flags adds a Wagtail admin UI and Wagtail Site-based condition on top of

## Dependencies

- Python 3.6+
- Django 3.2 (LTS), 4.0 (current)
- Python 3.8+
- Django 3.2 (LTS)+
- Django-Flags 4.2
- Wagtail 2.15 (LTS), 3.0
- Wagtail 4.0+

It should be compatible at all intermediate versions, as well.
If you find that it is not, please [file an issue](https://github.com/cfpb/wagtail-flags/issues/new).
Expand Down
90 changes: 82 additions & 8 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,54 @@
[project]
name = "wagtail-flags"
version = "5.3.0"
description = "Feature flags for Wagtail sites"
readme = "README.md"
requires-python = ">=3.8"
license = {text = "CC0"}
authors = [
{name = "CFPB", email = "[email protected]" }
]
dependencies = [
"wagtail>=4",
"django-flags>4.2"
]
classifiers = [
"Framework :: Django",
"Framework :: Django :: 3.2",
"Framework :: Django :: 4",
"Framework :: Wagtail",
"Framework :: Wagtail :: 4",
"License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication",
"License :: Public Domain",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
]

[project.optional-dependencies]
testing = [
"coverage[toml]",
]

[project.urls]
"Homepage" = "https://github.com/cfpb/wagtail-flags"
"Bug Reports" = "https://github.com/cfpb/wagtail-flags/issues"
"Source" = "https://github.com/cfpb/wagtail-flags"

[build-system]
requires = ["setuptools>=43.0.0", "wheel"]
build-backend = "setuptools.build_meta"

[tool.setuptools.package-data]
wagtailflags = [
"templates/wagtailflags/*",
"templates/wagtailflags/flags/*",
"templates/wagtailflags/includes/*",
"static/wagtailflags/css/*",
]

[tool.black]
line-length = 79
target-version = ['py36', 'py38']
target-version = ["py38"]
include = '\.pyi?$'
exclude = '''
(
Expand All @@ -14,15 +62,41 @@ exclude = '''
| dist
| migrations
| site
| \*.json
| \*.csv
)/
)
'''

[build-system]
requires = [
"setuptools>=42",
"wheel"
[tool.isort]
profile = "black"
line_length = 79
lines_after_imports = 2
skip = [".tox", ".venv", "venv"]
known_django = ["django"]
known_wagtail = ["wagtail"]
default_section = "THIRDPARTY"
sections = [
"STDLIB",
"DJANGO",
"WAGTAIL",
"THIRDPARTY",
"FIRSTPARTY",
"LOCALFOLDER"
]

[tool.ruff]
exclude = [
".git",
".tox",
"__pycache__",
]
ignore = []
select = [
"E",
"F",
"W",
]

[tool.coverage.run]
omit = [
"wagtailflags/tests/*",
]
build-backend = "setuptools.build_meta"
Binary file modified screenshot_create.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
76 changes: 0 additions & 76 deletions setup.cfg

This file was deleted.

3 changes: 2 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
from setuptools import setup

if __name__ == '__main__':

if __name__ == "__main__":
setup()
42 changes: 29 additions & 13 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@
skipsdist=True
envlist=
lint,
py{39,310}-dj{32}-wag{215},
py{39,310}-dj{32,40}-wag{30,latest},
py{38,311}-dj{3,4}-wag{4,latest},
coverage

[testenv]
Expand All @@ -14,33 +13,50 @@ setenv=
DJANGO_SETTINGS_MODULE=wagtailflags.tests.settings

basepython=
py39: python3.9
py310: python3.10
py38: python3.8
py311: python3.11

deps=
dj32: Django>=3.2,<3.3
dj40: Django>=4.0,<4.1
wag215: wagtail>=2.15,<2.16
wag30: wagtail>=3.0,<3.1
waglatest: wagtail<4
dj3: Django>=3.2,<4
dj4: Django>=4.1,<5
wag4: wagtail>=4,<5
waglatest: wagtail>4

[testenv:lint]
basepython=python3.10
basepython=python3.8
deps=
black
flake8
ruff
isort
commands=
black --check wagtailflags
flake8 wagtailflags
ruff wagtailflags
isort --check-only --diff wagtailflags

[testenv:coverage]
basepython=python3.10
basepython=python3.8
deps=
coverage
diff_cover
commands=
coverage combine
coverage xml
diff-cover coverage.xml --compare-branch=origin/main --fail-under=100

[testenv:interactive]
basepython=python3.8

deps=
Django>=3.2,<3.3

commands_pre=
{envbindir}/django-admin makemigrations
{envbindir}/django-admin migrate
{envbindir}/django-admin shell -c "from django.contrib.auth.models import User;(not User.objects.filter(username='admin').exists()) and User.objects.create_superuser('admin', '[email protected]', 'changeme')"

commands=
{posargs:{envbindir}/django-admin runserver 0.0.0.0:8000}

setenv=
DJANGO_SETTINGS_MODULE=wagtailflags.tests.settings
INTERACTIVE=1
Binary file modified wagtailflags.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 0 additions & 3 deletions wagtailflags/static/wagtailflags/css/wagtailflags.css
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
.flags-breadcrumb {
margin-left: 0;
}
section.flag {
margin-top: 4em;
}
Loading