Skip to content

Commit dc7e9a8

Browse files
committed
feat: tools integration
1 parent 9949fd5 commit dc7e9a8

23 files changed

+1153
-0
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

+109
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
name: 🐛 Bug report
2+
description: Submit a bug report to help us improve LangChain ScrapeGraph.
3+
labels: ["type:bug", "status:needs-triage"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
Thanks for taking the time to report this problem!
9+
We really appreciate the community's efforts to improve LangChain ScrapeGraph.
10+
11+
- type: checkboxes
12+
attributes:
13+
label: Checklist
14+
description: Please confirm and check all the following options.
15+
options:
16+
- label: I have searched the [existing issues](https://github.com/scrapegraphai/langchain-scrapegraph/issues) for similar issues.
17+
required: true
18+
- label: I added a very descriptive title to this issue.
19+
required: true
20+
- label: I have provided sufficient information below to help reproduce this issue.
21+
required: true
22+
- type: textarea
23+
attributes:
24+
label: Summary
25+
description: Type here a clear and concise description of the problem. Aim for 2-3 sentences.
26+
validations:
27+
required: true
28+
- type: textarea
29+
attributes:
30+
label: Reproducible Code Example
31+
render: Python
32+
description: |
33+
If applicable, please provide a [self-contained minimal code example](https://stackoverflow.com/help/minimal-reproducible-example) that reproduces the problem you ran into.
34+
If we can copy it, run it, and see it right away, there's a much higher chance we will be able to help you.
35+
placeholder: |
36+
import langchain_scrapegraph
37+
38+
# Your code here
39+
validations:
40+
required: false
41+
- type: textarea
42+
attributes:
43+
label: Steps To Reproduce
44+
description: Please provide the steps we should take to reproduce the bug.
45+
placeholder: |
46+
1. Go to '...'
47+
2. Click on '....'
48+
3. Scroll down to '....'
49+
4. See error
50+
validations:
51+
required: false
52+
- type: textarea
53+
attributes:
54+
label: Expected Behavior
55+
description: Explain what you expect to happen when you go through the steps above, assuming there were no bugs.
56+
validations:
57+
required: false
58+
- type: textarea
59+
attributes:
60+
label: Current Behavior
61+
placeholder: |
62+
Error message:
63+
```
64+
Traceback (most recent call last):
65+
File "example.py", line 1, in <module>
66+
import langchain_scrapegraph
67+
```
68+
description: |
69+
Explain the buggy behavior you experience when you go through the steps above.
70+
If you have error messages or stack traces please provide them here as well.
71+
If applicable, add screenshots to help explain your problem.
72+
73+
_Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in._
74+
validations:
75+
required: false
76+
- type: checkboxes
77+
attributes:
78+
label: Is this a regression?
79+
description: Did this use to work the way you expected in the past?
80+
options:
81+
- label: Yes, this used to work in a previous version.
82+
required: false
83+
- type: textarea
84+
attributes:
85+
label: Debug info
86+
description: |
87+
Please share some system information related to the environment your app is running in.
88+
89+
Example:
90+
- **LangChain ScrapeGraph version**: 0.1.0 _(get it with `$ pip show langchain-scrapegraph`)_
91+
- **Python version**: 3.9 _(get it with `$ python --version`)_
92+
- **Operating System**: MacOs 12.6
93+
- **Browser**: Chrome
94+
value: |
95+
- LangChain ScrapeGraph version:
96+
- Python version:
97+
- Operating System:
98+
- Browser:
99+
validations:
100+
required: false
101+
- type: textarea
102+
attributes:
103+
label: Additional Information
104+
description: |
105+
Links? References? Anything that will give us more context about the issue you are encountering!
106+
107+
_Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in._
108+
validations:
109+
required: false
+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: ✨ Feature request
2+
description: Suggest a feature or enhancement for LangChain ScrapeGraph.
3+
labels: ["type:enhancement"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
Thanks for taking the time to suggest a feature or enhancement for LangChain ScrapeGraph!
9+
We really appreciate the community's efforts to improve LangChain ScrapeGraph ❤️
10+
- type: checkboxes
11+
attributes:
12+
label: Checklist
13+
description: Please confirm and check all the following options.
14+
options:
15+
- label: I have searched the [existing issues](https://github.com/scrapegraphai/langchain-scrapegraph/issues) for similar feature requests.
16+
required: true
17+
- label: I added a descriptive title and summary to this issue.
18+
required: true
19+
- type: textarea
20+
attributes:
21+
label: Summary
22+
description: Type here a clear and concise description of the feature or enhancement request. Aim for 2-3 sentences.
23+
validations:
24+
required: true
25+
- type: textarea
26+
attributes:
27+
label: Why?
28+
description: Please outline the problem, motivation, or use case related to this feature request.
29+
placeholder: |
30+
I'm always frustrated when ...
31+
validations:
32+
required: false
33+
- type: textarea
34+
attributes:
35+
label: How?
36+
description: |
37+
Please describe the solution or implementation you'd like to see. This might include suggestions for new parameters, UI mockups etc.
38+
Don't worry if you don't have a clear solution in mind; any input helps!
39+
placeholder: |
40+
Introduce a new command called `langchain-scrapegraph new_feature` that ...
41+
validations:
42+
required: false
43+
- type: textarea
44+
attributes:
45+
label: Additional Context
46+
description: |
47+
Links? References? Anything that will give us more context about the feature request here!
48+
49+
_Tip: You can attach images by clicking this area to highlight it and then dragging files in._
50+
validations:
51+
required: false

.github/workflows/ci-cd.yml

+122
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- pre/*
8+
9+
jobs:
10+
build:
11+
name: Build
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout repository
15+
uses: actions/checkout@v3
16+
with:
17+
fetch-depth: 0
18+
19+
- name: Set up Python
20+
uses: actions/setup-python@v5
21+
with:
22+
python-version: '3.10'
23+
24+
- name: Install Poetry
25+
run: pip install poetry
26+
27+
- name: Install dependencies
28+
run: poetry install --no-interaction --no-ansi
29+
30+
- name: Build the package
31+
run: poetry build
32+
33+
test:
34+
name: Test
35+
runs-on: ubuntu-latest
36+
needs: build
37+
steps:
38+
- name: Checkout repository
39+
uses: actions/checkout@v3
40+
41+
- name: Set up Python
42+
uses: actions/setup-python@v5
43+
with:
44+
python-version: '3.10'
45+
46+
- name: Install Poetry
47+
run: pip install poetry
48+
49+
- name: Install dependencies
50+
run: poetry install --no-interaction --no-ansi
51+
52+
- name: Run Linting and Formatting Checks
53+
run: |
54+
poetry run ruff check langchain_scrapegraph tests
55+
poetry run black --check langchain_scrapegraph tests
56+
poetry run isort --check-only langchain_scrapegraph tests
57+
58+
# - name: Run Type Checking
59+
# run: poetry run mypy langchain_scrapegraph tests
60+
61+
- name: Run Tests
62+
run: |
63+
poetry run pytest --disable-socket --allow-unix-socket --asyncio-mode=auto tests/unit_tests
64+
poetry run pytest --asyncio-mode=auto tests/integration_tests
65+
66+
# - name: Upload Coverage to Codecov
67+
# uses: codecov/codecov-action@v3
68+
# with:
69+
# files: coverage.xml
70+
# fail_ci_if_error: false
71+
# token: ${{ secrets.CODECOV_TOKEN }}
72+
73+
release:
74+
name: Release
75+
runs-on: ubuntu-latest
76+
needs: [build, test]
77+
if: |
78+
github.event_name == 'push' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/pre/')) ||
79+
github.event_name == 'pull_request' && github.event.action == 'closed' && github.event.pull_request.merged &&
80+
(github.event.pull_request.base.ref == 'main' || startsWith(github.event.pull_request.base.ref, 'pre/'))
81+
permissions:
82+
contents: write
83+
issues: write
84+
pull-requests: write
85+
id-token: write
86+
steps:
87+
- name: Checkout repository
88+
uses: actions/checkout@v3
89+
with:
90+
fetch-depth: 0
91+
92+
- name: Set up Node.js
93+
uses: actions/setup-node@v4
94+
with:
95+
node-version: '20'
96+
97+
- name: Set up Python
98+
uses: actions/setup-python@v5
99+
with:
100+
python-version: '3.10'
101+
102+
- name: Install Poetry
103+
run: pip install poetry
104+
105+
- name: Install dependencies
106+
run: poetry install --no-interaction --no-ansi
107+
108+
- name: Semantic Release
109+
uses: cycjimmy/[email protected]
110+
with:
111+
semantic_version: 23
112+
extra_plugins: |
113+
semantic-release-pypi@3
114+
@semantic-release/git
115+
@semantic-release/commit-analyzer@12
116+
@semantic-release/release-notes-generator@13
117+
@semantic-release/github@10
118+
@semantic-release/changelog@6
119+
conventional-changelog-conventionalcommits@7
120+
env:
121+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
122+
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}

0 commit comments

Comments
 (0)