Skip to content

Commit a721073

Browse files
committed
Going online (first public version)
1 parent ab0e277 commit a721073

37 files changed

+3064
-139
lines changed

.bandit.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
skips:
2+
- B101
3+
- B311
4+
- B320
5+
- B410

.flake8

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[flake8]
2+
ignore = E501 # line too long
3+
exclude = .git,__pycache__,docs,.github,build,dist

.github/FUNDING.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
github: D4Vinci
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
name: Bug report
2+
description: Create a bug report to help us address errors in the repository
3+
labels: [bug]
4+
body:
5+
- type: checkboxes
6+
attributes:
7+
label: Have you searched if there an existing issue for this?
8+
description: Please search [existing issues](https://github.com/D4Vinci/Scrapling/labels/bug).
9+
options:
10+
- label: I have searched the existing issues
11+
required: true
12+
13+
- type: input
14+
attributes:
15+
label: "Python version (python --version)"
16+
placeholder: "Python 3.8"
17+
validations:
18+
required: true
19+
20+
- type: input
21+
attributes:
22+
label: "Scrapling version (scrapling.__version__)"
23+
placeholder: "0.1"
24+
validations:
25+
required: true
26+
27+
- type: textarea
28+
attributes:
29+
label: "Dependencies version (pip3 freeze)"
30+
description: >
31+
This is the output of the command `pip3 freeze --all`. Note that the
32+
actual output might be different as compared to the placeholder text.
33+
placeholder: |
34+
cssselect==1.2.0
35+
lxml==5.3.0
36+
orjson==3.10.7
37+
...
38+
validations:
39+
required: true
40+
41+
- type: input
42+
attributes:
43+
label: "What's your operating system?"
44+
placeholder: "Windows 10"
45+
validations:
46+
required: true
47+
48+
- type: dropdown
49+
attributes:
50+
label: 'Are you using a separate virtual environment?'
51+
description: "Please pay attention to this question"
52+
options:
53+
- No
54+
- Yes
55+
default: 0
56+
validations:
57+
required: true
58+
59+
- type: textarea
60+
attributes:
61+
label: "Expected behavior"
62+
description: "Describe the behavior you expect. May include images or videos."
63+
validations:
64+
required: true
65+
66+
- type: textarea
67+
attributes:
68+
label: "Actual behavior (Remember to use `debug` parameter)"
69+
validations:
70+
required: true
71+
72+
- type: textarea
73+
attributes:
74+
label: Steps To Reproduce
75+
description: Steps to reproduce the behavior.
76+
placeholder: |
77+
1. In this environment...
78+
2. With this config...
79+
3. Run '...'
80+
4. See error...
81+
validations:
82+
required: false
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Feature request
2+
description: Suggest features, propose improvements, discuss new ideas.
3+
labels: [enhancement]
4+
body:
5+
- type: checkboxes
6+
attributes:
7+
label: Have you searched if there an existing feature request for this?
8+
description: Please search [existing requests](https://github.com/D4Vinci/Scrapling/labels/enhancement).
9+
options:
10+
- label: I have searched the existing requests
11+
required: true
12+
13+
- type: textarea
14+
attributes:
15+
label: "Feature description"
16+
description: >
17+
This could include new topics or improving any existing features/implementations.
18+
validations:
19+
required: true
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Other
2+
description: Use this for any other issues. PLEASE do not create blank issues
3+
labels: ["awaiting triage"]
4+
body:
5+
- type: textarea
6+
id: issuedescription
7+
attributes:
8+
label: What would you like to share?
9+
description: Provide a clear and concise explanation of your issue.
10+
validations:
11+
required: true
12+
13+
- type: textarea
14+
id: extrainfo
15+
attributes:
16+
label: Additional information
17+
description: Is there anything else we should know about this issue?
18+
validations:
19+
required: false

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
blank_issues_enabled: false

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<!--
2+
You are amazing! Thanks for contributing to Scrapling!
3+
Please, DO NOT DELETE ANY TEXT from this template! (unless instructed).
4+
-->
5+
6+
## Proposed change
7+
<!--
8+
Describe the big picture of your changes here to communicate to the
9+
maintainers why we should accept this pull request. If it fixes a bug
10+
or resolves a feature request, be sure to link to that issue in the
11+
additional information section.
12+
-->
13+
14+
15+
### Type of change:
16+
<!--
17+
What type of change does your PR introduce to Scrapling?
18+
NOTE: Please, check at least 1 box!
19+
If your PR requires multiple boxes to be checked, you'll most likely need to
20+
split it into multiple PRs. This makes things easier and faster to code review.
21+
-->
22+
23+
24+
25+
- [ ] Dependency upgrade
26+
- [ ] Bugfix (non-breaking change which fixes an issue)
27+
- [ ] New integration (thank you!)
28+
- [ ] New feature (which adds functionality to an existing integration)
29+
- [ ] Deprecation (breaking change to happen in the future)
30+
- [ ] Breaking change (fix/feature causing existing functionality to break)
31+
- [ ] Code quality improvements to existing code or addition of tests
32+
- [ ] Add or change doctests? -- Note: Please avoid changing both code and tests in a single pull request.
33+
- [ ] Documentation change?
34+
35+
### Additional information
36+
<!--
37+
Details are important, and help maintainers processing your PR.
38+
Please be sure to fill out additional details, if applicable.
39+
-->
40+
41+
- This PR fixes or closes issue: fixes #
42+
- This PR is related to issue:
43+
- Link to documentation pull request: **
44+
45+
### Checklist:
46+
* [ ] I have read [CONTRIBUTING.md](/CONTRIBUTING.md).
47+
* [ ] This pull request is all my own work -- I have not plagiarized.
48+
* [ ] I know that pull requests will not be merged if they fail the automated tests.
49+
* [ ] All new Python files are placed inside an existing directory.
50+
* [ ] All filenames are in all lowercase characters with no spaces or dashes.
51+
* [ ] All functions and variable names follow Python naming conventions.
52+
* [ ] All function parameters and return values are annotated with Python [type hints](https://docs.python.org/3/library/typing.html).
53+
* [ ] All functions have doc-strings.

.github/workflows/publish.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Publish Python 🐍 distributions 📦 to PyPI
2+
3+
on:
4+
release:
5+
types: [created]
6+
7+
jobs:
8+
build-n-publish:
9+
name: Build and publish Python 🐍 distributions 📦 to PyPI
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v4
13+
- name: Set up Python
14+
uses: actions/setup-python@v5
15+
with:
16+
python-version: "3.x" # Latest available Python version
17+
18+
- name: Upgrade pip
19+
run: python3 -m pip install --upgrade pip
20+
21+
- name: Install build
22+
run: python3 -m pip install --upgrade build twine setuptools
23+
24+
- name: Build a binary wheel and a source tarball
25+
run: python3 -m build --sdist --wheel --outdir dist/
26+
27+
- name: Publish distribution 📦 to PyPI
28+
uses: pypa/gh-action-pypi-publish@release/v1.10.3
29+
with:
30+
user: __token__
31+
password: ${{ secrets.PYPI_API_TOKEN }}

.github/workflows/tests.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Tests
2+
on: [push, pull_request]
3+
4+
concurrency:
5+
group: ${{github.workflow}}-${{ github.ref }}
6+
cancel-in-progress: true
7+
8+
jobs:
9+
tests:
10+
runs-on: ubuntu-latest
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
include:
15+
- python-version: "3.6"
16+
env:
17+
TOXENV: py
18+
- python-version: "3.7"
19+
env:
20+
TOXENV: py
21+
- python-version: "3.8"
22+
env:
23+
TOXENV: py
24+
- python-version: "3.9"
25+
env:
26+
TOXENV: py
27+
- python-version: "3.10"
28+
env:
29+
TOXENV: py
30+
- python-version: "3.11"
31+
env:
32+
TOXENV: py
33+
- python-version: "3.12"
34+
env:
35+
TOXENV: py
36+
37+
steps:
38+
- uses: actions/checkout@v4
39+
- name: Set up Python ${{ matrix.python-version }}
40+
uses: actions/setup-python@v5
41+
with:
42+
python-version: ${{ matrix.python-version }}
43+
44+
- name: Run tests
45+
env: ${{ matrix.env }}
46+
run: |
47+
pip install -U tox
48+
tox

0 commit comments

Comments
 (0)