Skip to content

Commit 99133bc

Browse files
committed
📚 update project meta data
1 parent 003174a commit 99133bc

17 files changed

+349
-131
lines changed

.github/PULL_REQUEST_TEMPLATE.md

+4-6
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
With your PR, here is a check list:
22

3-
- [ ] Has Test cases written
4-
- [ ] Has all code lines tested
5-
- [ ] Passes all Travis CI builds
3+
- [ ] Has test cases written?
4+
- [ ] Has all code lines tested?
5+
- [ ] Has `make format` been run?
6+
- [ ] Please update CHANGELOG.yml(not CHANGELOG.rst)
67
- [ ] Has fair amount of documentation if your change is complex
7-
- [ ] run 'make format' so as to confirm the pyexcel organisation's coding style
8-
- [ ] Please update CHANGELOG.rst
9-
- [ ] Please add yourself to CONTRIBUTORS.rst
108
- [ ] Agree on NEW BSD License for your contribution

.github/workflows/lint.yml

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: lint
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
lint:
7+
runs-on: ubuntu-latest
8+
name: lint code
9+
steps:
10+
- uses: actions/checkout@v2
11+
- name: Set up Python
12+
uses: actions/setup-python@v1
13+
with:
14+
python-version: 3.11
15+
- name: lint
16+
run: |
17+
pip --use-deprecated=legacy-resolver install flake8
18+
pip --use-deprecated=legacy-resolver install -r tests/requirements.txt
19+
flake8 --exclude=.moban.d,docs,setup.py --builtins=unicode,xrange,long .
20+
python setup.py checkdocs

.github/workflows/moban-update.yml

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
on: [push]
2+
3+
jobs:
4+
run_moban:
5+
runs-on: ubuntu-latest
6+
name: synchronize templates via moban
7+
steps:
8+
- uses: actions/checkout@v2
9+
with:
10+
ref: ${{ github.head_ref }}
11+
token: ${{ secrets.PAT }}
12+
- name: Set up Python
13+
uses: actions/setup-python@v1
14+
with:
15+
python-version: '3.11'
16+
- name: check changes
17+
run: |
18+
pip install markupsafe==2.0.1
19+
pip install ruamel.yaml moban gitfs2 pypifs moban-jinja2-github moban-ansible
20+
moban
21+
git status
22+
git diff --exit-code
23+
- name: Auto-commit
24+
if: failure()
25+
uses: stefanzweifel/git-auto-commit-action@v4
26+
with:
27+
commit_message: >-
28+
This is an auto-commit, updating project meta data,
29+
such as changelog.rst, contributors.rst

.github/workflows/pythonpublish.yml

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Upload Python Package
2+
3+
on:
4+
release:
5+
types: [created]
6+
7+
jobs:
8+
pypi-publish:
9+
name: upload release to PyPI
10+
runs-on: ubuntu-latest
11+
# Specifying a GitHub environment is optional, but strongly encouraged
12+
environment: pypi
13+
permissions:
14+
# IMPORTANT: this permission is mandatory for trusted publishing
15+
id-token: write
16+
steps:
17+
# retrieve your distributions here
18+
- uses: actions/checkout@v1
19+
- name: Set up Python
20+
uses: actions/setup-python@v1
21+
with:
22+
python-version: '3.x'
23+
- name: Install dependencies
24+
run: |
25+
python -m pip install --upgrade pip
26+
pip install setuptools wheel
27+
- name: Build
28+
run: |
29+
python setup.py sdist bdist_wheel
30+
- name: Publish package distributions to PyPI
31+
uses: pypa/gh-action-pypi-publish@release/v1

.github/workflows/tests.yml

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Run unit tests on Windows, Ubuntu and Mac
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
7+
test:
8+
name: ${{ matrix.os }} / ${{ matrix.python_version }}
9+
runs-on: ${{ matrix.os }}-latest
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
os: [Ubuntu]
14+
python_version: ["3.9.16"]
15+
16+
steps:
17+
- uses: actions/checkout@v2
18+
- name: Set up Python
19+
uses: actions/setup-python@v5
20+
with:
21+
python-version: ${{ matrix.python_version }}
22+
architecture: x64
23+
24+
- name: install
25+
run: |
26+
pip --use-deprecated=legacy-resolver install -r requirements.txt
27+
pip --use-deprecated=legacy-resolver install -r tests/requirements.txt
28+
pip --use-deprecated=legacy-resolver install -r rnd_requirements.txt
29+
- name: test
30+
run: |
31+
pip freeze
32+
nosetests --verbosity=3 --with-coverage --cover-package pyexcel_cli --cover-package tests tests --with-doctest --doctest-extension=.rst README.rst docs/source pyexcel_cli
33+
- name: Upload coverage
34+
uses: codecov/codecov-action@v1
35+
with:
36+
name: ${{ matrix.os }} Python ${{ matrix.python-version }}

.gitignore

+45-5
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ parts/
2525
sdist/
2626
var/
2727
wheels/
28-
pip-wheel-metadata/
2928
share/python-wheels/
3029
*.egg-info/
3130
.installed.cfg
@@ -52,8 +51,10 @@ htmlcov/
5251
nosetests.xml
5352
coverage.xml
5453
*.cover
54+
*.py,cover
5555
.hypothesis/
5656
.pytest_cache/
57+
cover/
5758

5859
# Translations
5960
*.mo
@@ -63,6 +64,7 @@ coverage.xml
6364
*.log
6465
local_settings.py
6566
db.sqlite3
67+
db.sqlite3-journal
6668

6769
# Flask stuff:
6870
instance/
@@ -75,6 +77,7 @@ instance/
7577
docs/_build/
7678

7779
# PyBuilder
80+
.pybuilder/
7881
target/
7982

8083
# Jupyter Notebook
@@ -85,17 +88,23 @@ profile_default/
8588
ipython_config.py
8689

8790
# pyenv
88-
.python-version
91+
# For a library or package, you might want to ignore these files since the code is
92+
# intended to run in multiple environments; otherwise, check them in:
93+
# .python-version
8994

9095
# pipenv
9196
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
9297
# However, in case of collaboration, if having platform-specific dependencies or dependencies
93-
# having no cross-platform support, pipenv may install dependencies that dont work, or not
98+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
9499
# install all needed dependencies.
95100
#Pipfile.lock
96101

97-
# celery beat schedule file
102+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
103+
__pypackages__/
104+
105+
# Celery stuff
98106
celerybeat-schedule
107+
celerybeat.pid
99108

100109
# SageMath parsed files
101110
*.sage.py
@@ -127,6 +136,12 @@ dmypy.json
127136
# Pyre type checker
128137
.pyre/
129138

139+
# pytype static type analyzer
140+
.pytype/
141+
142+
# Cython debug symbols
143+
cython_debug/
144+
130145
# VirtualEnv rules
131146
# Virtualenv
132147
# http://iamzed.com/2009/05/07/a-primer-on-virtualenv/
@@ -159,6 +174,7 @@ pip-selfcheck.json
159174
# Windows rules
160175
# Windows thumbnail cache files
161176
Thumbs.db
177+
Thumbs.db:encryptable
162178
ehthumbs.db
163179
ehthumbs_vista.db
164180

@@ -264,13 +280,15 @@ flycheck_*.el
264280
# Vim rules
265281
# Swap
266282
[._]*.s[a-v][a-z]
283+
!*.svg # comment out if you don't need vector files
267284
[._]*.sw[a-p]
268285
[._]s[a-rt-v][a-z]
269286
[._]ss[a-gi-z]
270287
[._]sw[a-p]
271288

272289
# Session
273290
Session.vim
291+
Sessionx.vim
274292

275293
# Temporary
276294
.netrwhist
@@ -281,7 +299,7 @@ tags
281299
[._]*.un~
282300

283301
# JetBrains rules
284-
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
302+
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
285303
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
286304

287305
# User-specific stuff
@@ -311,9 +329,14 @@ tags
311329
# When using Gradle or Maven with auto-import, you should exclude module files,
312330
# since they will be recreated, and may cause churn. Uncomment if using
313331
# auto-import.
332+
# .idea/artifacts
333+
# .idea/compiler.xml
334+
# .idea/jarRepositories.xml
314335
# .idea/modules.xml
315336
# .idea/*.iml
316337
# .idea/modules
338+
# *.iml
339+
# *.ipr
317340

318341
# CMake
319342
cmake-build-*/
@@ -363,6 +386,7 @@ fabric.properties
363386

364387
# SFTP configuration file
365388
sftp-config.json
389+
sftp-config-alt*.json
366390

367391
# Package control specific files
368392
Package Control.last-run
@@ -400,6 +424,10 @@ tmtags
400424
!.vscode/tasks.json
401425
!.vscode/launch.json
402426
!.vscode/extensions.json
427+
*.code-workspace
428+
429+
# Local History for Visual Studio Code
430+
.history/
403431

404432
# Xcode rules
405433
# Xcode
@@ -426,6 +454,9 @@ DerivedData/
426454
*.perspectivev3
427455
!default.perspectivev3
428456

457+
## Gcc Patch
458+
/*.gcno
459+
429460
# Eclipse rules
430461
.metadata
431462
bin/
@@ -477,12 +508,17 @@ local.properties
477508

478509
# Annotation Processing
479510
.apt_generated/
511+
.apt_generated_test/
480512

481513
# Scala IDE specific (Scala & Java development for Eclipse)
482514
.cache-main
483515
.scala_dependencies
484516
.worksheet
485517

518+
# Uncomment this line if you wish to ignore the project description file.
519+
# Typically, this file would be tracked if it contains build/dependency configurations:
520+
#.project
521+
486522
# TortoiseGit rules
487523
# Project-level settings
488524
/.tgitconfig
@@ -504,3 +540,7 @@ cscope.files
504540
cscope.out
505541
cscope.in.out
506542
cscope.po.out
543+
544+
545+
# remove moban hash dictionary
546+
.moban.hashes

.readthedocs.yml

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# .readthedocs.yml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
# Required
6+
version: 2
7+
8+
build:
9+
os: ubuntu-22.04
10+
tools:
11+
python: "3.12"
12+
13+
# Build documentation in the docs/ directory with Sphinx
14+
sphinx:
15+
configuration: docs/source/conf.py
16+
17+
# Optionally build your docs in additional formats such as PDF
18+
formats:
19+
- pdf

.travis.yml

+6-17
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ notifications:
66
python:
77
- &pypy2 pypy2.7-6.0
88
- &pypy3 pypy3.5-6.0
9-
- 3.8-dev
9+
- 3.8
1010
- 3.7
1111
- 3.6
1212
- 3.5
@@ -17,33 +17,22 @@ stages:
1717
- moban
1818
- test
1919

20-
.disable_global: &disable_global
21-
addons: false
22-
cache: false
23-
env: {}
24-
python: false
25-
before_install: false
26-
install: false
27-
before_script: false
28-
script: false
29-
after_success: false
30-
after_failure: false
31-
before_deploy: false
32-
deploy: false
3320

3421
.lint: &lint
35-
<<: *disable_global
3622
git:
3723
submodules: false
3824
python: 3.6
25+
env:
26+
- MINREQ=0
3927
stage: lint
4028
script: make lint
4129

4230
.moban: &moban
43-
<<: *disable_global
4431
python: 3.6
32+
env:
33+
- MINREQ=0
4534
stage: moban
46-
install: pip install moban>=0.0.4
35+
install: pip install moban gitfs2 pypifs moban-jinja2-github moban-ansible
4736
script:
4837
- moban
4938
- git diff --exit-code

CONTRIBUTORS.rst

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
2+
3+
No contributors yet
4+
=======================
5+
6+
* Your github link will be listed here after your PR is merged

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2015-2019 by Onni Software Ltd. and its contributors
1+
Copyright (c) 2015-2025 by Onni Software Ltd. and its contributors
22
All rights reserved.
33

44
Redistribution and use in source and binary forms of the software as well

0 commit comments

Comments
 (0)