Skip to content

Commit

Permalink
Cookie (#179)
Browse files Browse the repository at this point in the history
* copy .github directory

* nest inside .github

* update for pdfgui

* test tests (#131)

* pin numpy to 1.x for now

* add environment.yml

* test tests

* trigger

* try again with requirements

* try again with requirements

* now update test reqs

* try and handle xwindow display issue

* try using xfvb action

* refactor xvfb action commands

* source activate?

* different tack, generate error and work on test?

* again

* again

* chatgpt method

* supress running qc of meta.yaml in conda-forge by renaming

* try new pyproject.toml

* again2

* forgot to install diffpy.pdfgui!

* back to setup.py

* copyright fixes (#134)

* Flake8v1 (#137)

* move modules to top

* remove extra #s

* line length and extra #s

* extra #s

* modules to top

* replace lambda function and line length

* add # noqa: E501

* modules to top

* fix lambda func

* Flake8v2 (#138)

* fix not in

* fix lambda functions

* remove #

* remove lambda func

* modules to top

* mod to top

* line length and import and #s

* fix line length and #s

* comment unused var, fix imports and #s

* modules to top and inline comment fix

* def functions within function to pass tests

* move functions outside of class

* Flake8v4 (#140)

* capitalize Trustees

* Exception on errorwrapper

* wx.PyObjectError in except

* ValueError and Exception

* Exception

* remove import

* pre-commit errors in comments (#141)

* wx12 and bonlengthdialog (#142)

* wx12 and bonlengthdialog

* devutils/makedist import order

* news (#143)

* cookiecutter: untracked files (#149)

* untracked files

* [pre-commit.ci] auto fixes from pre-commit hooks

* update LICENSE.rst

* update AUTHORS.rst and remove AUTHORS.txt

* tipping our hat

* Remove BSD 3-Clause, leaving Columbia copyright

* remove README from requirements

* replace requirements

* adding wxpython back

* adding back freezegun

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Simon Billinge <sbillinge@users.noreply.github.com>

* Files in doc directory (#157)

* move images to _static

* move files in .../doc/manual into doc/source

* move .gitignore file

* move rest of files to doc/

* move makefile from doc/source to doc/

* remove Makefile from doc/source

* update Makefile in doc

* add rest of cookiecutter files into doc/source

* add make.bat file

* moving .py files into doc/manual

* move files into manual

* moving images into manual

* add TUTORIAL.rst

* convert .txt to .rst in TUTORIAL

* fix formating

* formating

* formating

* reference formating

* move TUTORIAL.rst to manual

* move tutorial.rst from manual to source

* rm extra tutorial.rst

* add tutorial section to index.rst

* index.rst formating

* files (#158)

* Replace Caden's PR (#160)

Minor copyright fixes and news update

* try workflow for testing (#161)

* workflow for testing

* test unittest

* try Xvfb

* try to remove no test ran line

* [pre-commit.ci] auto fixes from pre-commit hooks

* try to remove no test ran line

* try pytest

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

* remove unused files (#166)

* update requirements/run.txt (#165)

* update requirements/run.txt, include right package

* use matplotlib-base

* remove dependency tests (#169)

* fix deprecation warning when test (#170)

* fix pkg_resources deprecation warning

* use __name__

* daemon deprecation

* rst file changes (#171)

* Use the original license

* other file changes

* add a bit more in readme

* remove epydoc (#173)

* build doc (#174)

* build doc

* pre commit

* Apply the new workflow (#168)

* Apply the new workflow

* remove prerelease from docs workflow

* rename to main

---------

Co-authored-by: Caden Myers <cjm2304@columbia.edu>
Co-authored-by: Caden Myers <158210249+cadenmyers13@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Tieqiong <123656525+Tieqiong@users.noreply.github.com>
  • Loading branch information
5 people authored Aug 20, 2024
1 parent a45149c commit ee8dd92
Show file tree
Hide file tree
Showing 201 changed files with 2,470 additions and 1,094 deletions.
36 changes: 34 additions & 2 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,34 @@
fixes:
- ".*/site-packages/::src/"
# codecov can find this file anywhere in the repo, so we don't need to clutter
# the root folder.
#comment: false

codecov:
notify:
require_ci_to_pass: no

coverage:
status:
patch:
default:
target: '70'
if_no_uploads: error
if_not_found: success
if_ci_failed: failure
project:
default: false
library:
target: auto
if_no_uploads: error
if_not_found: success
if_ci_failed: error
paths: '!*/tests/.*'

tests:
target: 97.9%
paths: '*/tests/.*'
if_not_found: success

flags:
tests:
paths:
- tests/
31 changes: 11 additions & 20 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -1,22 +1,13 @@
# Configuration of the coverage.py tool for reporting test coverage.

[report]
# RE patterns for lines to be excluded from consideration.
exclude_lines =
## Have to re-enable the standard pragma
pragma: no cover
## Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
^[ ]*assert False

## Don't complain if non-runnable code isn't run:
^[ ]*@unittest.skip\b
^[ ]{4}unittest.main()
if __name__ == .__main__.:


[run]
source =
diffpy.pdfgui
[report]
omit =
## exclude debug.py from codecov report
*/tests/debug.py
*/python?.?/*
*/site-packages/nose/*
# ignore _version.py and versioneer.py
.*version.*
*_version.py

exclude_lines =
if __name__ == '__main__':
8 changes: 1 addition & 7 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,7 +1 @@
/.gitattributes export-ignore
/.gitignore export-ignore
/.travis.yml export-ignore
/conda-recipe/ export-ignore
/devutils export-ignore
.gitarchive.cfg export-subst
*.bat text eol=crlf
diffpy.pdfgui/_version.py export-subst
62 changes: 62 additions & 0 deletions .github/workflows/codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Gather coverage report and upload to codecov

on:
push:
branches:
- main
release:
types:
- prereleased
- published
workflow_dispatch:

defaults:
run:
shell: bash -l {0}

jobs:
coverage:
runs-on: ubuntu-latest
steps:
- name: Check out diffpy.pdfgui
uses: actions/checkout@v4

- name: Initialize miniconda
uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: test
auto-update-conda: true
environment-file: environment.yml
auto-activate-base: false

- name: Conda config
run: >-
conda config --set always_yes yes
--set changeps1 no
- name: Install diffpy.pdfgui and requirements
run: |
conda install --file requirements/run.txt
conda install --file requirements/test.txt
python -m pip install -r requirements/pip.txt
python -m pip install . --no-deps
- name: Install Xvfb
run: sudo apt-get install -y xvfb

- name: Start Xvfb
run: |
export DISPLAY=:99
Xvfb :99 -screen 0 1024x768x16 &
- name: Validate diffpy.pdfgui
run: |
export DISPLAY=:99
coverage run -m pytest -vv -s
coverage report -m
codecov
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
48 changes: 48 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Build and Deploy Documentation

on:
release:
types:
- published
workflow_dispatch:

defaults:
run:
shell: bash -l {0}

jobs:
docs:
runs-on: ubuntu-latest
steps:
- name: Check out diffpy.pdfgui
uses: actions/checkout@v4

- name: Initialize miniconda
uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: build
auto-update-conda: true
environment-file: environment.yml
auto-activate-base: false

- name: Conda config
run: >-
conda config --set always_yes yes
--set changeps1 no
- name: Install diffpy.pdfgui and build requirements
run: |
conda install --file requirements/build.txt
conda install --file requirements/run.txt
conda install --file requirements/docs.txt
python -m pip install -r requirements/pip.txt
python -m pip install . --no-deps
- name: build documents
run: make -C doc html

- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./doc/build/html
52 changes: 52 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Test

on:
push:
branches:
- main
pull_request:
workflow_dispatch:

defaults:
run:
shell: bash -l {0}

jobs:
validate:
runs-on: ubuntu-latest
steps:
- name: Check out diffpy.pdfgui
uses: actions/checkout@v4

- name: Initialize miniconda
uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: test
auto-update-conda: true
environment-file: environment.yml
auto-activate-base: false

- name: Conda config
run: >-
conda config --set always_yes yes
--set changeps1 no
- name: Install diffpy.pdfgui and requirements
run: |
conda install --file requirements/run.txt
conda install --file requirements/test.txt
python -m pip install -r requirements/pip.txt
python -m pip install . --no-deps
- name: Install Xvfb
run: sudo apt-get install -y xvfb

- name: Start Xvfb
run: |
export DISPLAY=:99
Xvfb :99 -screen 0 1024x768x16 &
- name: Validate diffpy.pdfgui
run: |
export DISPLAY=:99
python -m pytest
89 changes: 72 additions & 17 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,44 +1,99 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Packages
*.egg
*.egg-info
dist
build
eggs
parts
bin
var
sdist
temp
develop-eggs
# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
venv/
*.egg-info/
.installed.cfg
lib
lib64
tags
*.egg
bin/
temp/
tags/
errors.err
.idea

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt
MANIFEST

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.tox
.coverage.*
.cache
nosetests.xml
coverage.xml
*,cover
.hypothesis/

# Translations
*.mo
*.pot

# Mr Developer
.mr.developer.cfg
.project
.pydevproject

# Django stuff:
*.log

# Sphinx documentation
docs/build/
docs/source/generated/

# pytest
.pytest_cache/

# PyBuilder
target/

# Editor files
# mac
.DS_Store
*~

# vim
*.swp
*.swo

# pycharm
.idea/

# VSCode
.vscode/

# Ipython Notebook
.ipynb_checkpoints

# version information
setup.cfg
/src/diffpy/*/version.cfg

# Rever
rever/
4 changes: 4 additions & 0 deletions .isort.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[settings]
line_length = 115
multi_line_output = 3
include_trailing_comma = True
Loading

0 comments on commit ee8dd92

Please sign in to comment.