Skip to content

Commit a35fc68

Browse files
committed
Initial release of UtilityCode
Signed-off-by: Chin Yeung Li <tli@nexb.com>
1 parent 847eba9 commit a35fc68

File tree

283 files changed

+30484
-202
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

283 files changed

+30484
-202
lines changed

.bumpversion.cfg

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
[bumpversion]
2+
current_version = 1.0.0
3+
files = setup.py src/utilitycode/__init__.py
4+
commit = True
5+
tag = True
6+

.gitattributes

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Ignore all Git auto CR/LF line endings conversions
2+
* -text
3+
pyproject.toml export-subst
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: Roadmap item template
3+
about: Structure for Roadmap items
4+
title: Roadmap Item
5+
labels: enhancement, needs design
6+
assignees: ''
7+
8+
---
9+
10+
**Summary**
11+
A clear and concise description of the Roadmap requirements and objectives.
12+
13+
**Intended Outcome**
14+
A clear and concise description of the impact on the AboutCode stack.
15+
16+
**How will it work?**
17+
Details to explain what needs to be done.

.github/workflows/docs-ci.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: CI Documentation
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
build:
7+
runs-on: ubuntu-24.04
8+
9+
strategy:
10+
max-parallel: 4
11+
matrix:
12+
python-version: [3.12]
13+
14+
steps:
15+
- name: Checkout code
16+
uses: actions/checkout@v4
17+
18+
- name: Set up Python ${{ matrix.python-version }}
19+
uses: actions/setup-python@v5
20+
with:
21+
python-version: ${{ matrix.python-version }}
22+
23+
- name: Install Dependencies
24+
run: ./configure --dev
25+
26+
- name: Check documentation and HTML for errors and dead links
27+
run: make docs-check
28+
29+
- name: Check documentation for style errors
30+
run: make doc8
31+
32+

.github/workflows/main.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: run tests
2+
3+
on: [push]
4+
5+
jobs:
6+
build:
7+
runs-on: ubuntu-24.04
8+
9+
strategy:
10+
max-parallel: 4
11+
matrix:
12+
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
13+
14+
steps:
15+
- name: Checkout code
16+
uses: actions/checkout@v2
17+
18+
- name: Set up Python ${{ matrix.python-version }}
19+
uses: actions/setup-python@v2
20+
with:
21+
python-version: ${{ matrix.python-version }}
22+
23+
- name: Install dependencies
24+
run: make dev
25+
26+
# Disable codestyle checks until we have cleaned up the code
27+
# - name: Validate code format
28+
# run: make check
29+
30+
- name: Run tests
31+
run: make test

.gitignore

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# Python compiled files
2+
*.py[cod]
3+
4+
# virtualenv and other misc bits
5+
/src/*.egg-info
6+
*.egg-info
7+
/dist
8+
/build
9+
/bin
10+
/lib
11+
/scripts
12+
/Scripts
13+
/Lib
14+
/pip-selfcheck.json
15+
/tmp
16+
/venv
17+
.Python
18+
/include
19+
/Include
20+
/local
21+
*/local/*
22+
/local/
23+
/share/
24+
/tcl/
25+
/.eggs/
26+
.env
27+
28+
# Installer logs
29+
pip-log.txt
30+
31+
# Unit test / coverage reports
32+
.cache
33+
.coverage
34+
.coverage.*
35+
nosetests.xml
36+
htmlcov
37+
38+
# Translations
39+
*.mo
40+
41+
# IDEs
42+
.project
43+
.pydevproject
44+
.idea
45+
org.eclipse.core.resources.prefs
46+
.vscode
47+
.vs
48+
49+
# Sphinx
50+
docs/_build
51+
docs/bin
52+
docs/build
53+
docs/include
54+
docs/Lib
55+
doc/pyvenv.cfg
56+
pyvenv.cfg
57+
58+
# Various junk and temp files
59+
.DS_Store
60+
*~
61+
.*.sw[po]
62+
.build
63+
.ve
64+
*.bak
65+
/.cache/
66+
error.log
67+
68+
# pyenv
69+
/.python-version
70+
/man/
71+
/.pytest_cache/
72+
lib64
73+
tcl
74+
75+
# Ignore Jupyter Notebook related temp files
76+
.ipynb_checkpoints/
77+
/.ruff_cache/
78+
.env

.readthedocs.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
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 in latest ubuntu/python
9+
build:
10+
os: ubuntu-22.04
11+
tools:
12+
python: "3.11"
13+
14+
# Build PDF & ePub
15+
formats:
16+
- epub
17+
- pdf
18+
19+
# Where the Sphinx conf.py file is located
20+
sphinx:
21+
configuration: docs/source/conf.py
22+
23+
# Setting the python version and doc build requirements
24+
python:
25+
install:
26+
- method: pip
27+
path: .
28+
extra_requirements:
29+
- dev

AUTHORS.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
The following organizations or individuals have contributed to this repo:
2+
3+
-

CHANGELOG.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Changelog
2+
=========
3+
4+
v1.0.0 (2025-xx-xx)
5+
-------------------
6+
7+
* Initial release

CODE_OF_CONDUCT.rst

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
Contributor Covenant Code of Conduct
2+
====================================
3+
4+
Our Pledge
5+
----------
6+
7+
In the interest of fostering an open and welcoming environment, we as
8+
contributors and maintainers pledge to making participation in our
9+
project and our community a harassment-free experience for everyone,
10+
regardless of age, body size, disability, ethnicity, gender identity and
11+
expression, level of experience, education, socio-economic status,
12+
nationality, personal appearance, race, religion, or sexual identity and
13+
orientation.
14+
15+
Our Standards
16+
-------------
17+
18+
Examples of behavior that contributes to creating a positive environment
19+
include:
20+
21+
- Using welcoming and inclusive language
22+
- Being respectful of differing viewpoints and experiences
23+
- Gracefully accepting constructive criticism
24+
- Focusing on what is best for the community
25+
- Showing empathy towards other community members
26+
27+
Examples of unacceptable behavior by participants include:
28+
29+
- The use of sexualized language or imagery and unwelcome sexual
30+
attention or advances
31+
- Trolling, insulting/derogatory comments, and personal or political
32+
attacks
33+
- Public or private harassment
34+
- Publishing others’ private information, such as a physical or
35+
electronic address, without explicit permission
36+
- Other conduct which could reasonably be considered inappropriate in a
37+
professional setting
38+
39+
Our Responsibilities
40+
--------------------
41+
42+
Project maintainers are responsible for clarifying the standards of
43+
acceptable behavior and are expected to take appropriate and fair
44+
corrective action in response to any instances of unacceptable behavior.
45+
46+
Project maintainers have the right and responsibility to remove, edit,
47+
or reject comments, commits, code, wiki edits, issues, and other
48+
contributions that are not aligned to this Code of Conduct, or to ban
49+
temporarily or permanently any contributor for other behaviors that they
50+
deem inappropriate, threatening, offensive, or harmful.
51+
52+
Scope
53+
-----
54+
55+
This Code of Conduct applies both within project spaces and in public
56+
spaces when an individual is representing the project or its community.
57+
Examples of representing a project or community include using an
58+
official project e-mail address, posting via an official social media
59+
account, or acting as an appointed representative at an online or
60+
offline event. Representation of a project may be further defined and
61+
clarified by project maintainers.
62+
63+
Enforcement
64+
-----------
65+
66+
Instances of abusive, harassing, or otherwise unacceptable behavior may
67+
be reported by contacting the project team at pombredanne@gmail.com
68+
or on the Gitter chat channel at https://gitter.im/aboutcode-org/discuss .
69+
All complaints will be reviewed and investigated and will result in a
70+
response that is deemed necessary and appropriate to the circumstances.
71+
The project team is obligated to maintain confidentiality with regard to
72+
the reporter of an incident. Further details of specific enforcement
73+
policies may be posted separately.
74+
75+
Project maintainers who do not follow or enforce the Code of Conduct in
76+
good faith may face temporary or permanent repercussions as determined
77+
by other members of the project’s leadership.
78+
79+
Attribution
80+
-----------
81+
82+
This Code of Conduct is adapted from the `Contributor Covenant`_ ,
83+
version 1.4, available at
84+
https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
85+
86+
.. _Contributor Covenant: https://www.contributor-covenant.org

0 commit comments

Comments
 (0)