Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 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
5 changes: 1 addition & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,14 +56,11 @@ jobs:
run: |
# Replace default path to CKAN core config file with the one on the container
sed -i -e 's/use = config:.*/use = config:\/srv\/app\/src\/ckan\/test-core.ini/' test.ini
pip install -r requirements.txt
pip install -r dev-requirements.txt
pip install -e .
pip install -e .[dev]

- name: Setup extension
run: |
ckan -c test.ini db init
ckan -c test.ini db pending-migrations --apply

- name: Run tests
run: pytest --ckan-ini=test.ini --cov=ckanext.subscribe --cov-report=term-missing --cov-append --disable-warnings ckanext/subscribe/tests
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
include README.rst
include LICENSE
include requirements.txt
include dev-requirements.txt
recursive-include ckanext/subscribe *.html *.json *.js *.less *.css *.mo *.yml
recursive-include ckanext/subscribe/migration *.ini *.py *.mako
3 changes: 1 addition & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -247,8 +247,7 @@ do::

git clone https://github.com/bellisk/ckanext-subscribe.git
cd ckanext-subscribe
python setup.py develop
pip install -r dev-requirements.txt
pip install -e .[dev]

Now continue Installation steps from step 3

Expand Down
44 changes: 44 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,2 +1,46 @@
[project]
name = "ckanext-subscribe"
version = "1.1.0"
dynamic = ["dependencies", "optional-dependencies"]
description = "CKAN extension that allows users to subscribe to updates WITHOUT requiring login"
authors = [
{name = "David Read", email = "[email protected]"}
]
maintainers = [
{name = "Liip AG", email = "[email protected]"}
]
license = {text = "AGPL"}
classifiers = [
"Intended Audience :: Developers",
"Development Status :: 4 - Beta",
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
]
keywords = [
"CKAN",
"email",
"subscription",
"notifications",
]

[project.urls]
Documentation = "https://github.com/opendata-swiss/ckanext-subscribe"
Repository = "https://github.com/opendata-swiss/ckanext-subscribe"
Issues = "https://github.com/opendata-swiss/ckanext-subscribe/issues"

[build-system]
requires = ["setuptools>=64"]
build-backend = "setuptools.build_meta"

[tool.setuptools.dynamic]
dependencies = {file = ["requirements.txt"]}
optional-dependencies = {dev = { file = ["dev-requirements.txt"] }}

[tool.isort]
profile = "black"

[project.entry-points."ckan.plugins"]
subscribe = "ckanext.subscribe.plugin:SubscribePlugin"
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
enum34
10 changes: 10 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
[options]
packages = find:
namespace_packages = ckanext
install_requires =
include_package_data = True

[options.entry_points]
babel.extractors =
ckan = ckan.lib.extract:extract_ckan

[extract_messages]
keywords = translate isPlural
add_comments = TRANSLATORS:
Expand Down
80 changes: 1 addition & 79 deletions setup.py
Original file line number Diff line number Diff line change
@@ -1,84 +1,6 @@
# -*- coding: utf-8 -*-
from codecs import open # To use a consistent encoding
from os import path

from setuptools import find_packages, setup # Always prefer setuptools over distutils

here = path.abspath(path.dirname(__file__))

# Get the long description from the relevant file
with open(path.join(here, "README.rst"), encoding="utf-8") as f:
long_description = f.read()
from setuptools import setup

setup(
name="""ckanext-subscribe""",
# Versions should comply with PEP440. For a discussion on single-sourcing
# the version across setup.py and the project code, see
# http://packaging.python.org/en/latest/tutorial.html#version
version="1.1.0",
description="""
CKAN extension that allows users to subscribe to updates WITHOUT requiring login""",
long_description=long_description,
long_description_content_type="text/x-rst",
# The project's main homepage.
url="https://github.com/bellisk/ckanext-subscribe",
# Author details
author="""David Read""",
author_email="""[email protected]""",
maintainer="""Liip AG""",
maintainer_email="""[email protected]""",
# Choose your license
license="AGPL",
# See https://pypi.python.org/pypi?%3Aaction=list_classifiers
classifiers=[
# How mature is this project? Common values are
# 3 - Alpha
# 4 - Beta
# 5 - Production/Stable
"Development Status :: 4 - Beta",
# Pick your license as you wish (should match "license" above)
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
# Specify the Python versions you support here. In particular, ensure
# that you indicate whether you support Python 2, Python 3 or both.
"Programming Language :: Python :: 3",
],
# What does your project relate to?
keywords="""CKAN email subscription notifications""",
# You can just specify the packages manually here if your project is
# simple. Or you can use find_packages().
packages=find_packages(exclude=["contrib", "docs", "tests*"]),
namespace_packages=["ckanext"],
install_requires=[
"enum34",
],
# If there are data files included in your packages that need to be
# installed, specify them here. If using Python 2.6 or less, then these
# have to be included in MANIFEST.in as well.
include_package_data=True,
package_data={},
# Although 'package_data' is the preferred approach, in some case you may
# need to place data files outside of your packages.
# see http://docs.python.org/3.4/distutils/setupscript.html#installing-additional-files
# In this case, 'data_file' will be installed into '<sys.prefix>/my_data'
data_files=[],
# To provide executable scripts, use entry points in preference to the
# "scripts" keyword. Entry points provide cross-platform support and allow
# pip to create the appropriate form of executable for the target platform.
entry_points="""
[ckan.plugins]
subscribe=ckanext.subscribe.plugin:SubscribePlugin

[babel.extractors]
ckan = ckan.lib.extract:extract_ckan

[paste.paster_command]
subscribe = ckanext.subscribe.cli:subscribeCommand

""",
# If you are changing from the default layout of your extension, you may
# have to change the message extractors, you can read more about babel
# message extraction at
# http://babel.pocoo.org/docs/messages/#extraction-method-mapping-and-configuration
message_extractors={
"ckanext": [
("**.py", "python", None),
Expand Down
Loading