From 5a862362b32bbfb58774f2d5826f2a82eaf1da91 Mon Sep 17 00:00:00 2001 From: Akshay S Dinesh Date: Sun, 22 Oct 2023 14:21:50 +0530 Subject: [PATCH] chore: modern build infrastructure --- .github/workflows/test.yml | 36 +++++++++++++++++++++++++++++ .testr.conf | 4 ---- .travis.yml | 12 ---------- README.md | 5 ----- pyproject.toml | 46 ++++++++++++++++++++++++++++++++++++++ requirements.txt | 1 - setup.cfg | 35 ----------------------------- setup.py | 10 --------- 8 files changed, 82 insertions(+), 67 deletions(-) create mode 100644 .github/workflows/test.yml delete mode 100644 .testr.conf delete mode 100644 .travis.yml create mode 100644 pyproject.toml delete mode 100644 requirements.txt delete mode 100644 setup.cfg delete mode 100644 setup.py diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..7a8dede --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,36 @@ +# This workflow will install Python dependencies, run tests and lint with a single version of Python +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python + +name: Python application + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +permissions: + contents: read + +jobs: + test: + + runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.7", "3.11"] + + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + cache: 'pip' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r test-requirements.txt + - name: Run tests + run: | + make test diff --git a/.testr.conf b/.testr.conf deleted file mode 100644 index ad7e923..0000000 --- a/.testr.conf +++ /dev/null @@ -1,4 +0,0 @@ -[DEFAULT] -test_command=make test $LISTOPT $IDOPTION -test_id_option=--load-list $IDFILE -test_list_option=--list diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index bdfafdd..0000000 --- a/.travis.yml +++ /dev/null @@ -1,12 +0,0 @@ -language: python -python: - - "2.7" - - "3.5" - - "3.6" - - "3.7" - - "3.8" -install: - - pip install -r requirements.txt - - pip install -r test-requirements.txt -script: make travis -after_success: coveralls \ No newline at end of file diff --git a/README.md b/README.md index 7291a6c..3038824 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,5 @@ # LibIndic Payyans - -[![Build Status](https://travis-ci.org/libindic/payyans.svg?branch=master)](https://travis-ci.org/libindic/payyans) -[![Coverage Status](https://coveralls.io/repos/github/libindic/payyans/badge.svg?branch=master)](https://coveralls.io/github/libindic/payyans?branch=master) - - LibIndic's Payyans module may be used to convert texts encoded in ASCII format to Unicode and vice-versa. More fonts can be added by placing their maps in `libindic/payyans/maps` folder. diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..f09d07c --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,46 @@ +[project] +name = "libindic-payyans" +authors = [ + { name = "Santhosh Thottingal", email = "santhosh.thottingal@gmail.com" }, + { name = "Nishan Naseer", email = "nishan.naseer@gmail.com" }, + { name = "Manu S Madhav", email = "manusmad@gmail.com" }, + { name = "Rajeesh K Nambiar", email = "rajeeshknambiar@gmail.com" }, + { name = "Akshay S Dinesh", email = "asdofindia@gmail.com" }, + { name = "Balasankar C", email = "balasankarc@autistici.org" }, + { name = "Jishnu Mohan", email = "jishnu7@gmail.com" }, +] +description = "ASCII to Unicode converter" +requires-python = ">=3.7" +license = { text = "LGPL-3.0" } +version = "2.0" +readme = "README.md" +classifiers = [ + "Development Status :: 5 - Production/Stable", + "License :: DFSG approved", + "License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)", + "Operating System :: OS Independent", + "Intended Audience :: Developers", + "Intended Audience :: Information Technology", + "Programming Language :: Python", +] +dependencies = [ + "libindic-normalizer@git+https://github.com/libindic/normalizer.git" +] + +[project.urls] +Homepage = "https://libindic.org/payyans" + +[build-system] +requires = ["setuptools", "setuptools-scm"] +build-backend = "setuptools.build_meta" + + +[tool.setuptools.package-data] +"*" = ["templates/libindic.payyans.html", "maps/*.map"] + +[project.entry-points."libindic.api.rest"] +unicode2ascii = "payyans.expose:unicode2ascii" +ascii2unicode = "payyans.expose:ascii2unicode" + +[tool.distutils.bdist_wheel] +universal = true diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 2976df8..0000000 --- a/requirements.txt +++ /dev/null @@ -1 +0,0 @@ --e git+https://github.com/libindic/normalizer.git#egg=libindic_normalizer \ No newline at end of file diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index d8dfc06..0000000 --- a/setup.cfg +++ /dev/null @@ -1,35 +0,0 @@ -[metadata] -name = libindic-payyans -author = Santhosh Thottingal -author-email = santhosh.thottingal@gmail.com -summary = ASCII to Unicode converter -license = LGPL-3.0 -description-file = - README.md -home-page = https://libindic.org/payyans -requires-python = >=3.0 -classifier = - Development Status :: 5 - Production/Stable - License :: DFSG approved - License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+) - Operating System :: OS Independent - Intended Audience :: Developers - Intended Audience :: Information Technology - Programming Language :: Python - -[files] -namespace_packages = libindic -packages = libindic - -[entry_points] -libindic.api.rest = - unicode2ascii = payyans.expose:unicode2ascii - ascii2unicode = payyans.expose:ascii2unicode - -[options.package_data] -* = - templates/libindic.payyans.html - maps/*.map - -[wheel] -universal=1 diff --git a/setup.py b/setup.py deleted file mode 100644 index f2ccb2a..0000000 --- a/setup.py +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/env python - -from setuptools import setup - -setup( - version="1.0.2", - zip_safe=False, - packages=['libindic.payyans'], - namespace_packages=['libindic'] -)