parse-git-log-action
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.6%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
·
Repository
Basic Info
- Host: GitHub
- Owner: qte77
- License: bsd-3-clause
- Language: Makefile
- Default Branch: main
- Size: 362 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 9
- Releases: 0
Created about 2 years ago
· Last pushed almost 2 years ago
Metadata Files
Readme
Changelog
License
Citation
Security
README.md
Parse git-log Output Github Action
Thanks claude-3-opus-20240229 and LMSYS ChatBot Arena for first draft.
App skeleton to be used as github template repo.
Status
[DRAFT] [WIP] --> not fully implemented
Quickstart
- Quickstart
TOC
Usage ↑
- TODO Usage
Install ↑
- TODO Install
Purpose ↑
- TODO Purpose
Reason ↑
- TODO Reason
Paradigms ↑
- Keep to low branching factor and single outcomes
- Export complex functions into modules
- Aims for coding approach
- Behavior Driven Design (What should it do?)
- Test Driven Design (Does it do?)
- Aims for code quality
- Works, i.e. passes tests which were written before
- Modular and cohesive
- Separation of concerns and appropriate coupling
- Abstraction and information hiding
- Aims for CI/CD
- Unit Testing
- Acceptance Testing
- Performance Testing
- Static Analysis
- Sign-offs
- Security Testing
- Scalability Testing
- Realeasable Outcome
App Structure ↑
sh
/
├─ sub1/
│ ├─ sub1sub1/
│ │ ├─
│ │ └─
│ └─ file
├─ sub2/
│ └─ file
├─ file
└─ file
App Details ↑
- Details
TODO ↑
- Structure
- [x] Test Pipfile
- Adopted as proposed successor of requirements.txt
- Several advantages like auto-venv and combined prod/dev in one TOML
- pipenv with Pipfile & Pipfile.lock
pipenv install -efor editable mode, i.e. 'dependency resolution can be performed with an up to date copy of the repository each time it is performed'- [x] Use
Makefileinstead of self-implemented imparativesetup.sh - Test successful and functional
- [ ] Dynamically create a hierarchical configuration with hydra
- [ ] Implement basic CI/CD-Skeleton
- [ ] Create /docs with
sphinxgh-action - [ ] Have a look at ReadTheDocs
- Coding
- [x] Try
dataclassandfieldfromdataclasses - Used to auto add special classes like
__init__,__str__,__repr__ - Suitable for more complex classes and projects
- [ ] Have a look at PyTest to prepare for TDD and BDD
- [ ] Consistent typing and type hinting
- [ ] Use
pydanticortraitletsfor type hinting or strong typing - [ ] Consistent usage of pydoc for /docs with
pandoc - [ ] Decouple concerns into separate containers, e.g. avoid big container because of
torch - Uses type hinting and decorators
- [ ] Consistent usage of
ifortryfor features and catches - [ ] Try
logginginstead ofprint()
- [x] Try
- API
- Dependency tracking and app sourcing
- [x] Test
__init__.pyfor packing - Only needed for regular packages Python 3.2 and earlier
- Python 3.3 and above uses namespace packages, see PEP 420 - Implicit Namespace Packages
- [ ] Test conda creating an environment from an environment.yml file
conda env create -f environment.yml- [ ] Provide package as single source app version with
setup.py - [ ] Experiment with
pyproject.tomlto build app wheel
- [x] Test
- Best Practices
- [x] Adopt SemVer
- Using MAJOR.MINOR.PATCH (Breaking.Feature.Patch)
- [x] Adopt
CHANGELOG.md - Using
Added,Removed,ChangedandUnreleased - Also recommended:
Deprecated,FixedandSecurity - [x] Adopt Semantic commit messages
- Purposful add human and machine readable meaning to commit messages
- [ ] Adhere to Docker BP
- [ ] Adhere to BP from The Hitchhiker's Guide to Python!
Inspirations ↑
- While-True-Do.io Repo template
- Arc-Project Pydantic
- Mala-Project Pydoc to Sphinx
- xformers Conda env file
- Jupyter Notebook structure
Resources ↑
- Development
- Dave Farley: Test Driven Development vs Behavior Driven Development
- Dave Farley: How to Build a DEPLOYMENT PIPELINE? (Continuous Delivery)
- Martin Fowler:
Owner
- Name: qte77
- Login: qte77
- Kind: user
- Website: https://qte77.github.io
- Repositories: 10
- Profile: https://github.com/qte77
<Be.Do.Have> [Business.Value]
Citation (CITATION.cff)
# YAML 1.2
cff-version: 1.1.0
message: "If you use this software, please cite it using these metadata."
authors:
- affiliation: ""
family-names: qte
given-names: 77
# orcid: https://orcid.org/0000-0001-9162-262X
date-released: 2022-07-12
keywords:
- ""
license: "BSD-3-Clause"
repository-code: "https://github.com/qte77/skeleton-app"
title: app skeleton
#doi: # This DOI represents all versions, and will always resolve to the latest one.
version: 1.0.0
GitHub Events
Total
Last Year
Dependencies
Dockerfile
docker
- ${BASEIMAGE_USECASE} latest build
- ${BASEIMAGE} latest build
Pipfile
pypi
- black * develop
- flake8 * develop
- isort * develop
- pre-commit * develop
- pytest * develop
- pytest-cov * develop
- tox * develop
Pipfile.lock
pypi
- atomicwrites ==1.4.1 develop
- attrs ==22.1.0 develop
- black ==24.3.0 develop
- cfgv ==3.3.1 develop
- click ==8.1.7 develop
- colorama ==0.4.5 develop
- coverage ==6.4.4 develop
- distlib ==0.3.5 develop
- filelock ==3.8.0 develop
- flake8 ==5.0.4 develop
- identify ==2.5.3 develop
- iniconfig ==1.1.1 develop
- isort ==5.10.1 develop
- mccabe ==0.7.0 develop
- mypy-extensions ==1.0.0 develop
- nodeenv ==1.7.0 develop
- packaging ==24.0 develop
- pathspec ==0.12.1 develop
- platformdirs ==4.2.2 develop
- pluggy ==1.0.0 develop
- pre-commit ==2.20.0 develop
- py ==1.11.0 develop
- pycodestyle ==2.9.1 develop
- pyflakes ==2.5.0 develop
- pyparsing ==3.0.9 develop
- pytest ==7.1.2 develop
- pytest-cov ==3.0.0 develop
- pyyaml ==6.0 develop
- setuptools ==65.5.1 develop
- six ==1.16.0 develop
- toml ==0.10.2 develop
- tomli ==2.0.1 develop
- tox ==3.25.1 develop
- typing-extensions ==4.12.2 develop
- virtualenv ==20.16.3 develop
pyproject.toml
pypi
setup.py
pypi