apify 2.3.0b3__tar.gz → 2.3.1b1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of apify might be problematic. Click here for more details.
- apify-2.3.1b1/.editorconfig +15 -0
- apify-2.3.1b1/.github/CODEOWNERS +4 -0
- apify-2.3.1b1/.github/workflows/build_and_deploy_docs.yaml +85 -0
- apify-2.3.1b1/.github/workflows/check_pr_title.yaml +14 -0
- apify-2.3.1b1/.github/workflows/pre_release.yaml +78 -0
- apify-2.3.1b1/.github/workflows/release.yaml +119 -0
- apify-2.3.1b1/.github/workflows/run_code_checks.yaml +30 -0
- apify-2.3.1b1/.github/workflows/update_new_issue.yaml +25 -0
- apify-2.3.1b1/.gitignore +49 -0
- apify-2.3.1b1/.markdownlint.yaml +5 -0
- apify-2.3.1b1/.pre-commit-config.yaml +14 -0
- apify-2.3.1b1/CHANGELOG.md +156 -0
- apify-2.3.1b1/CONTRIBUTING.md +160 -0
- apify-2.3.1b1/Makefile +52 -0
- apify-2.3.1b1/PKG-INFO +411 -0
- apify-2.3.1b1/docs/01_overview/01_introduction.mdx +59 -0
- apify-2.3.1b1/docs/01_overview/02_running_actors_locally.mdx +66 -0
- apify-2.3.1b1/docs/01_overview/03_actor_structure.mdx +35 -0
- apify-2.3.1b1/docs/01_overview/code/01_introduction.py +17 -0
- apify-2.3.1b1/docs/01_overview/code/actor_structure/__main__.py +6 -0
- apify-2.3.1b1/docs/01_overview/code/actor_structure/main.py +8 -0
- apify-2.3.1b1/docs/02_guides/01_beautifulsoup_httpx.mdx +30 -0
- apify-2.3.1b1/docs/02_guides/02_crawlee.mdx +37 -0
- apify-2.3.1b1/docs/02_guides/03_playwright.mdx +56 -0
- apify-2.3.1b1/docs/02_guides/04_selenium.mdx +46 -0
- apify-2.3.1b1/docs/02_guides/05_scrapy.mdx +107 -0
- apify-2.3.1b1/docs/02_guides/code/01_beautifulsoup_httpx.py +85 -0
- apify-2.3.1b1/docs/02_guides/code/02_crawlee_beautifulsoup.py +55 -0
- apify-2.3.1b1/docs/02_guides/code/02_crawlee_playwright.py +68 -0
- apify-2.3.1b1/docs/02_guides/code/03_playwright.py +94 -0
- apify-2.3.1b1/docs/02_guides/code/04_selenium.py +104 -0
- apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/__main__.py +22 -0
- apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/items.py +10 -0
- apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/main.py +32 -0
- apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/settings.py +9 -0
- apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/spiders/__init__.py +3 -0
- apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/spiders/title.py +68 -0
- apify-2.3.1b1/docs/03_concepts/01_actor_lifecycle.mdx +55 -0
- apify-2.3.1b1/docs/03_concepts/02_actor_input.mdx +18 -0
- apify-2.3.1b1/docs/03_concepts/03_storages.mdx +167 -0
- apify-2.3.1b1/docs/03_concepts/04_actor_events.mdx +81 -0
- apify-2.3.1b1/docs/03_concepts/05_proxy_management.mdx +108 -0
- apify-2.3.1b1/docs/03_concepts/06_interacting_with_other_actors.mdx +51 -0
- apify-2.3.1b1/docs/03_concepts/07_webhooks.mdx +31 -0
- apify-2.3.1b1/docs/03_concepts/08_access_apify_api.mdx +31 -0
- apify-2.3.1b1/docs/03_concepts/09_running_webserver.mdx +26 -0
- apify-2.3.1b1/docs/03_concepts/10_logging.mdx +84 -0
- apify-2.3.1b1/docs/03_concepts/11_configuration.mdx +34 -0
- apify-2.3.1b1/docs/03_concepts/code/01_context_manager.py +9 -0
- apify-2.3.1b1/docs/03_concepts/code/01_init_exit.py +16 -0
- apify-2.3.1b1/docs/03_concepts/code/01_reboot.py +7 -0
- apify-2.3.1b1/docs/03_concepts/code/01_status_message.py +14 -0
- apify-2.3.1b1/docs/03_concepts/code/02_input.py +9 -0
- apify-2.3.1b1/docs/03_concepts/code/03_dataset_exports.py +31 -0
- apify-2.3.1b1/docs/03_concepts/code/03_dataset_read_write.py +16 -0
- apify-2.3.1b1/docs/03_concepts/code/03_deleting_storages.py +13 -0
- apify-2.3.1b1/docs/03_concepts/code/03_kvs_iterating.py +18 -0
- apify-2.3.1b1/docs/03_concepts/code/03_kvs_public_url.py +11 -0
- apify-2.3.1b1/docs/03_concepts/code/03_kvs_read_write.py +25 -0
- apify-2.3.1b1/docs/03_concepts/code/03_opening_storages.py +16 -0
- apify-2.3.1b1/docs/03_concepts/code/03_rq.py +53 -0
- apify-2.3.1b1/docs/03_concepts/code/04_actor_events.py +38 -0
- apify-2.3.1b1/docs/03_concepts/code/05_apify_proxy.py +12 -0
- apify-2.3.1b1/docs/03_concepts/code/05_apify_proxy_config.py +15 -0
- apify-2.3.1b1/docs/03_concepts/code/05_custom_proxy.py +17 -0
- apify-2.3.1b1/docs/03_concepts/code/05_custom_proxy_function.py +28 -0
- apify-2.3.1b1/docs/03_concepts/code/05_proxy_actor_input.py +16 -0
- apify-2.3.1b1/docs/03_concepts/code/05_proxy_httpx.py +22 -0
- apify-2.3.1b1/docs/03_concepts/code/05_proxy_rotation.py +31 -0
- apify-2.3.1b1/docs/03_concepts/code/06_interacting_call.py +22 -0
- apify-2.3.1b1/docs/03_concepts/code/06_interacting_call_task.py +19 -0
- apify-2.3.1b1/docs/03_concepts/code/06_interacting_metamorph.py +24 -0
- apify-2.3.1b1/docs/03_concepts/code/06_interacting_start.py +13 -0
- apify-2.3.1b1/docs/03_concepts/code/07_webhook.py +16 -0
- apify-2.3.1b1/docs/03_concepts/code/07_webhook_preventing.py +17 -0
- apify-2.3.1b1/docs/03_concepts/code/08_actor_client.py +11 -0
- apify-2.3.1b1/docs/03_concepts/code/08_actor_new_client.py +14 -0
- apify-2.3.1b1/docs/03_concepts/code/09_webserver.py +49 -0
- apify-2.3.1b1/docs/03_concepts/code/10_log_config.py +12 -0
- apify-2.3.1b1/docs/03_concepts/code/10_logger_usage.py +23 -0
- apify-2.3.1b1/docs/03_concepts/code/11_config.py +16 -0
- apify-2.3.1b1/docs/04_upgrading/upgrading_to_v2.md +48 -0
- apify-2.3.1b1/docs/pyproject.toml +9 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/pyproject.toml +52 -52
- apify-2.3.1b1/renovate.json +25 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_actor.py +55 -3
- apify-2.3.1b1/src/apify/_charging.py +318 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_configuration.py +10 -1
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_models.py +59 -2
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_utils.py +1 -1
- apify-2.3.1b1/src/apify/py.typed +0 -0
- apify-2.3.1b1/src/apify/scrapy/middlewares/py.typed +0 -0
- apify-2.3.1b1/src/apify/scrapy/pipelines/py.typed +0 -0
- apify-2.3.1b1/src/apify/scrapy/py.typed +0 -0
- apify-2.3.1b1/src/apify/storages/py.typed +0 -0
- apify-2.3.1b1/tests/integration/README.md +128 -0
- apify-2.3.1b1/tests/integration/__init__.py +0 -0
- apify-2.3.1b1/tests/integration/_utils.py +9 -0
- apify-2.3.1b1/tests/integration/actor_source_base/Dockerfile +15 -0
- apify-2.3.1b1/tests/integration/actor_source_base/requirements.txt +2 -0
- apify-2.3.1b1/tests/integration/actor_source_base/src/__init__.py +0 -0
- apify-2.3.1b1/tests/integration/actor_source_base/src/__main__.py +20 -0
- apify-2.3.1b1/tests/integration/actor_source_base/src/main.py +8 -0
- apify-2.3.1b1/tests/integration/conftest.py +415 -0
- apify-2.3.1b1/tests/integration/test_actor_api_helpers.py +470 -0
- apify-2.3.1b1/tests/integration/test_actor_charge.py +116 -0
- apify-2.3.1b1/tests/integration/test_actor_create_proxy_configuration.py +70 -0
- apify-2.3.1b1/tests/integration/test_actor_dataset.py +146 -0
- apify-2.3.1b1/tests/integration/test_actor_events.py +106 -0
- apify-2.3.1b1/tests/integration/test_actor_key_value_store.py +221 -0
- apify-2.3.1b1/tests/integration/test_actor_lifecycle.py +119 -0
- apify-2.3.1b1/tests/integration/test_actor_log.py +87 -0
- apify-2.3.1b1/tests/integration/test_actor_request_queue.py +88 -0
- apify-2.3.1b1/tests/integration/test_actor_scrapy.py +48 -0
- apify-2.3.1b1/tests/integration/test_fixtures.py +100 -0
- apify-2.3.1b1/tests/integration/test_request_queue.py +113 -0
- apify-2.3.1b1/tests/unit/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/actor/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_create_proxy_configuration.py +143 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_dataset.py +64 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_env_helpers.py +157 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_helpers.py +176 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_key_value_store.py +94 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_lifecycle.py +207 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_log.py +93 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_non_default_instance.py +19 -0
- apify-2.3.1b1/tests/unit/actor/test_actor_request_queue.py +29 -0
- apify-2.3.1b1/tests/unit/actor/test_request_list.py +228 -0
- apify-2.3.1b1/tests/unit/conftest.py +207 -0
- apify-2.3.1b1/tests/unit/scrapy/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/scrapy/middlewares/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/scrapy/middlewares/test_apify_proxy.py +154 -0
- apify-2.3.1b1/tests/unit/scrapy/pipelines/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/scrapy/pipelines/test_actor_dataset_push.py +87 -0
- apify-2.3.1b1/tests/unit/scrapy/requests/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/scrapy/requests/test_to_apify_request.py +94 -0
- apify-2.3.1b1/tests/unit/scrapy/requests/test_to_scrapy_request.py +130 -0
- apify-2.3.1b1/tests/unit/scrapy/utils/__init__.py +0 -0
- apify-2.3.1b1/tests/unit/scrapy/utils/test_apply_apify_settings.py +59 -0
- apify-2.3.1b1/tests/unit/scrapy/utils/test_get_basic_auth_header.py +27 -0
- apify-2.3.1b1/tests/unit/test_crypto.py +107 -0
- apify-2.3.1b1/tests/unit/test_platform_event_manager.py +204 -0
- apify-2.3.1b1/tests/unit/test_proxy_configuration.py +545 -0
- apify-2.3.1b1/uv.lock +2950 -0
- apify-2.3.1b1/website/.eslintrc.json +27 -0
- apify-2.3.1b1/website/babel.config.js +3 -0
- apify-2.3.1b1/website/build_api_reference.sh +4 -0
- apify-2.3.1b1/website/docusaurus.config.js +141 -0
- apify-2.3.1b1/website/generate_module_shortcuts.py +59 -0
- apify-2.3.1b1/website/package-lock.json +23741 -0
- apify-2.3.1b1/website/package.json +53 -0
- apify-2.3.1b1/website/sidebars.js +52 -0
- apify-2.3.1b1/website/src/css/custom.css +12 -0
- apify-2.3.1b1/website/src/pages/home_page_example.py +14 -0
- apify-2.3.1b1/website/src/pages/index.js +81 -0
- apify-2.3.1b1/website/src/pages/index.module.css +226 -0
- apify-2.3.1b1/website/static/.nojekyll +0 -0
- apify-2.3.1b1/website/static/img/docs-og.png +0 -0
- apify-2.3.1b1/website/tools/docs-prettier.config.js +12 -0
- apify-2.3.1b1/website/tools/utils/externalLink.js +40 -0
- apify-2.3.0b3/PKG-INFO +0 -213
- {apify-2.3.0b3 → apify-2.3.1b1}/LICENSE +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/README.md +0 -0
- /apify-2.3.0b3/src/apify/apify_storage_client/py.typed → /apify-2.3.1b1/docs/01_overview/code/actor_structure/__init__.py +0 -0
- {apify-2.3.0b3/src/apify → apify-2.3.1b1/docs/01_overview/code/actor_structure}/py.typed +0 -0
- /apify-2.3.0b3/src/apify/scrapy/middlewares/py.typed → /apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/__init__.py +0 -0
- {apify-2.3.0b3/src/apify/scrapy/pipelines → apify-2.3.1b1/docs/02_guides/code/scrapy_project/src}/py.typed +0 -0
- {apify-2.3.0b3/src/apify/scrapy → apify-2.3.1b1/docs/02_guides/code/scrapy_project/src/spiders}/py.typed +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/__init__.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_consts.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_crypto.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_platform_event_manager.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/_proxy_configuration.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/__init__.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_apify_storage_client.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_dataset_client.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_dataset_collection_client.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_key_value_store_client.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_key_value_store_collection_client.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_request_queue_client.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/apify_storage_client/_request_queue_collection_client.py +0 -0
- {apify-2.3.0b3/src/apify/storages → apify-2.3.1b1/src/apify/apify_storage_client}/py.typed +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/log.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/__init__.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/_actor_runner.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/_async_thread.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/_logging_config.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/middlewares/__init__.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/middlewares/apify_proxy.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/pipelines/__init__.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/pipelines/actor_dataset_push.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/requests.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/scheduler.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/scrapy/utils.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/storages/__init__.py +0 -0
- {apify-2.3.0b3 → apify-2.3.1b1}/src/apify/storages/_request_list.py +0 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
name: Build and deploy docs
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- master
|
|
7
|
+
workflow_dispatch:
|
|
8
|
+
|
|
9
|
+
env:
|
|
10
|
+
NODE_VERSION: 22
|
|
11
|
+
PYTHON_VERSION: 3.13
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
build_and_deploy_docs:
|
|
15
|
+
environment:
|
|
16
|
+
name: github-pages
|
|
17
|
+
permissions:
|
|
18
|
+
contents: write
|
|
19
|
+
pages: write
|
|
20
|
+
id-token: write
|
|
21
|
+
runs-on: ubuntu-latest
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- name: Checkout repository
|
|
25
|
+
uses: actions/checkout@v4
|
|
26
|
+
with:
|
|
27
|
+
token: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
|
|
28
|
+
|
|
29
|
+
- name: Set up Node
|
|
30
|
+
uses: actions/setup-node@v4
|
|
31
|
+
with:
|
|
32
|
+
node-version: ${{ env.NODE_VERSION }}
|
|
33
|
+
cache: npm
|
|
34
|
+
cache-dependency-path: website/package-lock.json
|
|
35
|
+
|
|
36
|
+
- name: Install Node dependencies
|
|
37
|
+
run: |
|
|
38
|
+
npm install
|
|
39
|
+
npm update @apify/docs-theme
|
|
40
|
+
working-directory: ./website
|
|
41
|
+
|
|
42
|
+
# We do this as early as possible to prevent conflicts if someone else would push something in the meantime
|
|
43
|
+
- name: Commit the updated package.json and lockfile
|
|
44
|
+
run: |
|
|
45
|
+
git config user.name 'GitHub Actions'
|
|
46
|
+
git config user.email 'github-actions[bot]@users.noreply.github.com'
|
|
47
|
+
git add website/package.json
|
|
48
|
+
git add website/package-lock.json
|
|
49
|
+
git diff-index --quiet HEAD || git commit -m 'chore: Automatic docs theme update [skip ci]' || true
|
|
50
|
+
git push
|
|
51
|
+
|
|
52
|
+
- name: Set up Python
|
|
53
|
+
uses: actions/setup-python@v5
|
|
54
|
+
with:
|
|
55
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
56
|
+
|
|
57
|
+
- name: Set up uv package manager
|
|
58
|
+
uses: astral-sh/setup-uv@v5
|
|
59
|
+
with:
|
|
60
|
+
python-version: ${{ env.PYTHON_VERSION }}
|
|
61
|
+
|
|
62
|
+
- name: Install Python dependencies
|
|
63
|
+
run: make install-dev
|
|
64
|
+
|
|
65
|
+
- name: Build generated API reference
|
|
66
|
+
run: make build-api-reference
|
|
67
|
+
|
|
68
|
+
- name: Build Docusaurus docs
|
|
69
|
+
run: make build-docs
|
|
70
|
+
|
|
71
|
+
- name: Set up GitHub Pages
|
|
72
|
+
uses: actions/configure-pages@v5
|
|
73
|
+
|
|
74
|
+
- name: Upload GitHub Pages artifact
|
|
75
|
+
uses: actions/upload-pages-artifact@v3
|
|
76
|
+
with:
|
|
77
|
+
path: ./website/build
|
|
78
|
+
|
|
79
|
+
- name: Deploy artifact to GitHub Pages
|
|
80
|
+
uses: actions/deploy-pages@v4
|
|
81
|
+
|
|
82
|
+
- name: Invalidate CloudFront cache
|
|
83
|
+
run: gh workflow run invalidate.yaml --repo apify/apify-docs-private
|
|
84
|
+
env:
|
|
85
|
+
GITHUB_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
name: Check PR title
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request_target:
|
|
5
|
+
types: [opened, edited, synchronize]
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
check_pr_title:
|
|
9
|
+
name: Check PR title
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: amannn/action-semantic-pull-request@v5.5.3
|
|
13
|
+
env:
|
|
14
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
name: Create a pre-release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
# Trigger a beta version release (pre-release) on push to the master branch.
|
|
5
|
+
push:
|
|
6
|
+
branches:
|
|
7
|
+
- master
|
|
8
|
+
tags-ignore:
|
|
9
|
+
- "**" # Ignore all tags to prevent duplicate builds when tags are pushed.
|
|
10
|
+
|
|
11
|
+
# Or it can be triggered manually.
|
|
12
|
+
workflow_dispatch:
|
|
13
|
+
|
|
14
|
+
jobs:
|
|
15
|
+
release_metadata:
|
|
16
|
+
if: "!startsWith(github.event.head_commit.message, 'docs') && !startsWith(github.event.head_commit.message, 'ci') && startsWith(github.repository, 'apify/')"
|
|
17
|
+
name: Prepare release metadata
|
|
18
|
+
runs-on: ubuntu-latest
|
|
19
|
+
outputs:
|
|
20
|
+
version_number: ${{ steps.release_metadata.outputs.version_number }}
|
|
21
|
+
tag_name: ${{ steps.release_metadata.outputs.tag_name }}
|
|
22
|
+
changelog: ${{ steps.release_metadata.outputs.changelog }}
|
|
23
|
+
existing_changelog_path: CHANGELOG.md
|
|
24
|
+
steps:
|
|
25
|
+
- uses: apify/workflows/git-cliff-release@main
|
|
26
|
+
id: release_metadata
|
|
27
|
+
name: Prepare release metadata
|
|
28
|
+
with:
|
|
29
|
+
release_type: prerelease
|
|
30
|
+
|
|
31
|
+
lint_check:
|
|
32
|
+
name: Lint check
|
|
33
|
+
uses: apify/workflows/.github/workflows/python_lint_check.yaml@main
|
|
34
|
+
|
|
35
|
+
type_check:
|
|
36
|
+
name: Type check
|
|
37
|
+
uses: apify/workflows/.github/workflows/python_type_check.yaml@main
|
|
38
|
+
|
|
39
|
+
unit_tests:
|
|
40
|
+
name: Unit tests
|
|
41
|
+
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@main
|
|
42
|
+
|
|
43
|
+
integration_tests:
|
|
44
|
+
name: Integration tests
|
|
45
|
+
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@main
|
|
46
|
+
secrets: inherit
|
|
47
|
+
|
|
48
|
+
update_changelog:
|
|
49
|
+
name: Update changelog
|
|
50
|
+
needs: [release_metadata, lint_check, type_check, unit_tests, integration_tests]
|
|
51
|
+
uses: apify/workflows/.github/workflows/python_bump_and_update_changelog.yaml@main
|
|
52
|
+
with:
|
|
53
|
+
version_number: ${{ needs.release_metadata.outputs.version_number }}
|
|
54
|
+
changelog: ${{ needs.release_metadata.outputs.changelog }}
|
|
55
|
+
secrets:
|
|
56
|
+
APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
|
|
57
|
+
|
|
58
|
+
publish_to_pypi:
|
|
59
|
+
name: Publish to PyPI
|
|
60
|
+
needs: [release_metadata, update_changelog]
|
|
61
|
+
runs-on: ubuntu-latest
|
|
62
|
+
permissions:
|
|
63
|
+
contents: write
|
|
64
|
+
id-token: write # Required for OIDC authentication.
|
|
65
|
+
environment:
|
|
66
|
+
name: pypi
|
|
67
|
+
url: https://pypi.org/project/apify
|
|
68
|
+
steps:
|
|
69
|
+
- name: Prepare distribution
|
|
70
|
+
uses: apify/workflows/prepare-pypi-distribution@main
|
|
71
|
+
with:
|
|
72
|
+
package_name: apify
|
|
73
|
+
is_prerelease: "yes"
|
|
74
|
+
version_number: ${{ needs.release_metadata.outputs.version_number }}
|
|
75
|
+
ref: ${{ needs.update_changelog.changelog_commitish }}
|
|
76
|
+
# Publishes the package to PyPI using PyPA official GitHub action with OIDC authentication.
|
|
77
|
+
- name: Publish package to PyPI
|
|
78
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
name: Create a release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
# Trigger a stable version release via GitHub's UI, with the ability to specify the type of release.
|
|
5
|
+
workflow_dispatch:
|
|
6
|
+
inputs:
|
|
7
|
+
release_type:
|
|
8
|
+
description: Release type
|
|
9
|
+
required: true
|
|
10
|
+
type: choice
|
|
11
|
+
default: auto
|
|
12
|
+
options:
|
|
13
|
+
- auto
|
|
14
|
+
- custom
|
|
15
|
+
- patch
|
|
16
|
+
- minor
|
|
17
|
+
- major
|
|
18
|
+
custom_version:
|
|
19
|
+
description: The custom version to bump to (only for "custom" type)
|
|
20
|
+
required: false
|
|
21
|
+
type: string
|
|
22
|
+
default: ""
|
|
23
|
+
|
|
24
|
+
jobs:
|
|
25
|
+
release_metadata:
|
|
26
|
+
name: Prepare release metadata
|
|
27
|
+
runs-on: ubuntu-latest
|
|
28
|
+
outputs:
|
|
29
|
+
version_number: ${{ steps.release_metadata.outputs.version_number }}
|
|
30
|
+
tag_name: ${{ steps.release_metadata.outputs.tag_name }}
|
|
31
|
+
changelog: ${{ steps.release_metadata.outputs.changelog }}
|
|
32
|
+
release_notes: ${{ steps.release_metadata.outputs.release_notes }}
|
|
33
|
+
steps:
|
|
34
|
+
- uses: apify/workflows/git-cliff-release@main
|
|
35
|
+
name: Prepare release metadata
|
|
36
|
+
id: release_metadata
|
|
37
|
+
with:
|
|
38
|
+
release_type: ${{ inputs.release_type }}
|
|
39
|
+
custom_version: ${{ inputs.custom_version }}
|
|
40
|
+
existing_changelog_path: CHANGELOG.md
|
|
41
|
+
|
|
42
|
+
lint_check:
|
|
43
|
+
name: Lint check
|
|
44
|
+
uses: apify/workflows/.github/workflows/python_lint_check.yaml@main
|
|
45
|
+
|
|
46
|
+
type_check:
|
|
47
|
+
name: Type check
|
|
48
|
+
uses: apify/workflows/.github/workflows/python_type_check.yaml@main
|
|
49
|
+
|
|
50
|
+
unit_tests:
|
|
51
|
+
name: Unit tests
|
|
52
|
+
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@main
|
|
53
|
+
|
|
54
|
+
integration_tests:
|
|
55
|
+
name: Integration tests
|
|
56
|
+
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@main
|
|
57
|
+
secrets: inherit
|
|
58
|
+
|
|
59
|
+
update_changelog:
|
|
60
|
+
name: Update changelog
|
|
61
|
+
needs: [release_metadata, lint_check, type_check, unit_tests, integration_tests]
|
|
62
|
+
uses: apify/workflows/.github/workflows/python_bump_and_update_changelog.yaml@main
|
|
63
|
+
with:
|
|
64
|
+
version_number: ${{ needs.release_metadata.outputs.version_number }}
|
|
65
|
+
changelog: ${{ needs.release_metadata.outputs.changelog }}
|
|
66
|
+
secrets:
|
|
67
|
+
APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
|
|
68
|
+
|
|
69
|
+
create_github_release:
|
|
70
|
+
name: Create github release
|
|
71
|
+
needs: [release_metadata, update_changelog]
|
|
72
|
+
runs-on: ubuntu-latest
|
|
73
|
+
env:
|
|
74
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
75
|
+
steps:
|
|
76
|
+
- name: Create release
|
|
77
|
+
uses: softprops/action-gh-release@v2
|
|
78
|
+
with:
|
|
79
|
+
tag_name: ${{ needs.release_metadata.outputs.tag_name }}
|
|
80
|
+
name: ${{ needs.release_metadata.outputs.version_number }}
|
|
81
|
+
target_commitish: ${{ needs.update_changelog.outputs.changelog_commitish }}
|
|
82
|
+
body: ${{ needs.release_metadata.outputs.release_notes }}
|
|
83
|
+
|
|
84
|
+
publish_to_pypi:
|
|
85
|
+
name: Publish to PyPI
|
|
86
|
+
needs: [release_metadata, update_changelog]
|
|
87
|
+
runs-on: ubuntu-latest
|
|
88
|
+
permissions:
|
|
89
|
+
contents: write
|
|
90
|
+
id-token: write # Required for OIDC authentication.
|
|
91
|
+
environment:
|
|
92
|
+
name: pypi
|
|
93
|
+
url: https://pypi.org/project/apify
|
|
94
|
+
steps:
|
|
95
|
+
- name: Prepare distribution
|
|
96
|
+
uses: apify/workflows/prepare-pypi-distribution@main
|
|
97
|
+
with:
|
|
98
|
+
package_name: apify
|
|
99
|
+
is_prerelease: ""
|
|
100
|
+
version_number: ${{ needs.release_metadata.outputs.version_number }}
|
|
101
|
+
ref: ${{ needs.update_changelog.outputs.changelog_commitish }}
|
|
102
|
+
# Publishes the package to PyPI using PyPA official GitHub action with OIDC authentication.
|
|
103
|
+
- name: Publish package to PyPI
|
|
104
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
105
|
+
|
|
106
|
+
trigger_docker_build:
|
|
107
|
+
name: Trigger Docker image build
|
|
108
|
+
needs: [release_metadata, update_changelog]
|
|
109
|
+
runs-on: ubuntu-latest
|
|
110
|
+
steps:
|
|
111
|
+
- # Trigger building the Python Docker images in apify/apify-actor-docker repo
|
|
112
|
+
name: Trigger Docker image build
|
|
113
|
+
run: |
|
|
114
|
+
gh api -X POST "/repos/apify/apify-actor-docker/dispatches" \
|
|
115
|
+
-F event_type=build-python-images \
|
|
116
|
+
-F client_payload[release_tag]=latest \
|
|
117
|
+
-F client_payload[apify_version]=${{ needs.release_metadata.outputs.version_number }}
|
|
118
|
+
env:
|
|
119
|
+
GH_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
name: Run code checks
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
# Trigger code checks on opening a new pull request.
|
|
5
|
+
# Secrets are only made available to the integration tests job, with a manual approval
|
|
6
|
+
# step required for PRs from forks. This prevents their potential exposure.
|
|
7
|
+
pull_request:
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
lint_check:
|
|
11
|
+
name: Lint check
|
|
12
|
+
uses: apify/workflows/.github/workflows/python_lint_check.yaml@main
|
|
13
|
+
|
|
14
|
+
type_check:
|
|
15
|
+
name: Type check
|
|
16
|
+
uses: apify/workflows/.github/workflows/python_type_check.yaml@main
|
|
17
|
+
|
|
18
|
+
unit_tests:
|
|
19
|
+
name: Unit tests
|
|
20
|
+
uses: apify/workflows/.github/workflows/python_unit_tests.yaml@main
|
|
21
|
+
|
|
22
|
+
docs_check:
|
|
23
|
+
name: Docs check
|
|
24
|
+
uses: apify/workflows/.github/workflows/python_docs_check.yaml@main
|
|
25
|
+
|
|
26
|
+
integration_tests:
|
|
27
|
+
name: Integration tests
|
|
28
|
+
needs: [lint_check, type_check, unit_tests]
|
|
29
|
+
uses: apify/workflows/.github/workflows/python_integration_tests.yaml@main
|
|
30
|
+
secrets: inherit
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
name: Update new issue
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
issues:
|
|
5
|
+
types:
|
|
6
|
+
- opened
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
label_issues:
|
|
10
|
+
name: Label issues
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
permissions:
|
|
13
|
+
issues: write
|
|
14
|
+
|
|
15
|
+
steps:
|
|
16
|
+
# Add the "t-tooling" label to all new issues
|
|
17
|
+
- uses: actions/github-script@v7
|
|
18
|
+
with:
|
|
19
|
+
script: |
|
|
20
|
+
github.rest.issues.addLabels({
|
|
21
|
+
issue_number: context.issue.number,
|
|
22
|
+
owner: context.repo.owner,
|
|
23
|
+
repo: context.repo.repo,
|
|
24
|
+
labels: ["t-tooling"]
|
|
25
|
+
})
|
apify-2.3.1b1/.gitignore
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Cache
|
|
2
|
+
__pycache__
|
|
3
|
+
.mypy_cache
|
|
4
|
+
.pytest_cache
|
|
5
|
+
.ruff_cache
|
|
6
|
+
|
|
7
|
+
# Virtual envs
|
|
8
|
+
.venv
|
|
9
|
+
.direnv
|
|
10
|
+
.envrc
|
|
11
|
+
.python-version
|
|
12
|
+
|
|
13
|
+
# Mise
|
|
14
|
+
mise.toml
|
|
15
|
+
.mise.toml
|
|
16
|
+
|
|
17
|
+
# Egg and build artifacts
|
|
18
|
+
*.egg-info/
|
|
19
|
+
*.egg
|
|
20
|
+
dist/
|
|
21
|
+
build/
|
|
22
|
+
|
|
23
|
+
# Coverage reports
|
|
24
|
+
.coverage*
|
|
25
|
+
htmlcov
|
|
26
|
+
|
|
27
|
+
# IDE, editors
|
|
28
|
+
.vscode
|
|
29
|
+
.idea
|
|
30
|
+
.DS_Store
|
|
31
|
+
.nvim.lua
|
|
32
|
+
Session.vim
|
|
33
|
+
|
|
34
|
+
# Docs
|
|
35
|
+
docs/changelog.md
|
|
36
|
+
|
|
37
|
+
# Website build artifacts, node dependencies
|
|
38
|
+
website/build
|
|
39
|
+
website/node_modules
|
|
40
|
+
website/.yarn
|
|
41
|
+
website/.docusaurus
|
|
42
|
+
website/api-typedoc-generated.json
|
|
43
|
+
website/apify-shared-docspec-dump.jsonl
|
|
44
|
+
website/docspec-dump.jsonl
|
|
45
|
+
website/module_shortcuts.json
|
|
46
|
+
website/typedoc-types*
|
|
47
|
+
|
|
48
|
+
# Default directory for memory storage
|
|
49
|
+
storage/
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [2.3.0](https://github.com/apify/apify-sdk-python/releases/tag/v2.3.0) (2025-02-19)
|
|
6
|
+
|
|
7
|
+
### 🚀 Features
|
|
8
|
+
|
|
9
|
+
- Add `rate_limit_errors` property for `ApifyStorageClient` ([#387](https://github.com/apify/apify-sdk-python/pull/387)) ([89c230a](https://github.com/apify/apify-sdk-python/commit/89c230a21a1a8698159975f97c73a724b9063278)) by [@Mantisus](https://github.com/Mantisus), closes [#318](https://github.com/apify/apify-sdk-python/issues/318)
|
|
10
|
+
- Unify Apify and Scrapy to use single event loop & remove `nest-asyncio` ([#390](https://github.com/apify/apify-sdk-python/pull/390)) ([96949be](https://github.com/apify/apify-sdk-python/commit/96949be4f7687ac9285992d1fb02ac6172307bdb)) by [@vdusek](https://github.com/vdusek), closes [#148](https://github.com/apify/apify-sdk-python/issues/148), [#176](https://github.com/apify/apify-sdk-python/issues/176), [#392](https://github.com/apify/apify-sdk-python/issues/392)
|
|
11
|
+
- Support pay-per-event via `Actor.charge` ([#393](https://github.com/apify/apify-sdk-python/pull/393)) ([78888c4](https://github.com/apify/apify-sdk-python/commit/78888c4d6258211cdbc5fd5b5cbadbf23c39d818)) by [@janbuchar](https://github.com/janbuchar), closes [#374](https://github.com/apify/apify-sdk-python/issues/374)
|
|
12
|
+
|
|
13
|
+
### 🐛 Bug Fixes
|
|
14
|
+
|
|
15
|
+
- Fix RQ usage in Scrapy scheduler ([#385](https://github.com/apify/apify-sdk-python/pull/385)) ([3363478](https://github.com/apify/apify-sdk-python/commit/3363478dbf6eb35e45c237546fe0df5c104166f6)) by [@vdusek](https://github.com/vdusek)
|
|
16
|
+
- Make sure that Actor instances with non-default configurations are also accessible through the global Actor proxy after initialization ([#402](https://github.com/apify/apify-sdk-python/pull/402)) ([b956a02](https://github.com/apify/apify-sdk-python/commit/b956a02d0ba59e0cfde489cc13ca92d7f8f8c84f)) by [@janbuchar](https://github.com/janbuchar), closes [#397](https://github.com/apify/apify-sdk-python/issues/397)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
## [2.2.1](https://github.com/apify/apify-sdk-python/releases/tag/v2.2.1) (2025-01-17)
|
|
20
|
+
|
|
21
|
+
### 🐛 Bug Fixes
|
|
22
|
+
|
|
23
|
+
- Better event listener type definitions ([#354](https://github.com/apify/apify-sdk-python/pull/354)) ([52a6dee](https://github.com/apify/apify-sdk-python/commit/52a6dee92cc0cc4fa032dfc8c312545bc5e07206)) by [@janbuchar](https://github.com/janbuchar), closes [#344](https://github.com/apify/apify-sdk-python/issues/344)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
## [2.2.0](https://github.com/apify/apify-sdk-python/releases/tag/v2.2.0) (2025-01-10)
|
|
27
|
+
|
|
28
|
+
### 🚀 Features
|
|
29
|
+
|
|
30
|
+
- Add new config variables to `Actor.config` ([#351](https://github.com/apify/apify-sdk-python/pull/351)) ([7b6478c](https://github.com/apify/apify-sdk-python/commit/7b6478c3fc239b454f733fbd98348dab7b3a1766)) by [@fnesveda](https://github.com/fnesveda)
|
|
31
|
+
- Upgrade to Crawlee v0.5 ([#355](https://github.com/apify/apify-sdk-python/pull/355)) ([826f4db](https://github.com/apify/apify-sdk-python/commit/826f4dbcc8cfd693d97e40c17faf91d225d7ffaf)) by [@vdusek](https://github.com/vdusek)
|
|
32
|
+
|
|
33
|
+
### 🐛 Bug Fixes
|
|
34
|
+
|
|
35
|
+
- Better error message when attempting to use force_cloud without an Apify token ([#356](https://github.com/apify/apify-sdk-python/pull/356)) ([33245ce](https://github.com/apify/apify-sdk-python/commit/33245ceddb1fa0ed39548181fb57fb3e6b98f954)) by [@janbuchar](https://github.com/janbuchar)
|
|
36
|
+
- Allow calling `Actor.reboot()` from migrating handler, align reboot behavior with JS SDK ([#361](https://github.com/apify/apify-sdk-python/pull/361)) ([7ba0221](https://github.com/apify/apify-sdk-python/commit/7ba022121fe7b65470fec901295f74cebce72610)) by [@fnesveda](https://github.com/fnesveda)
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
## [2.1.0](https://github.com/apify/apify-sdk-python/releases/tag/v2.1.0) (2024-12-03)
|
|
40
|
+
|
|
41
|
+
### 🚀 Features
|
|
42
|
+
|
|
43
|
+
- Handle request list user input ([#326](https://github.com/apify/apify-sdk-python/pull/326)) ([c14fb9a](https://github.com/apify/apify-sdk-python/commit/c14fb9a9527c8b699e32ed49d39ce0a69447f87c)) by [@Pijukatel](https://github.com/Pijukatel), closes [#310](https://github.com/apify/apify-sdk-python/issues/310)
|
|
44
|
+
|
|
45
|
+
### 🐛 Bug Fixes
|
|
46
|
+
|
|
47
|
+
- Add upper bound of HTTPX version ([#347](https://github.com/apify/apify-sdk-python/pull/347)) ([e86dbce](https://github.com/apify/apify-sdk-python/commit/e86dbce69f6978cf2c15910213655e5d80f62a23)) by [@vdusek](https://github.com/vdusek)
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
## [2.0.2](https://github.com/apify/apify-sdk-python/releases/tag/v2.0.2) (2024-11-12)
|
|
51
|
+
|
|
52
|
+
### 🐛 Bug Fixes
|
|
53
|
+
|
|
54
|
+
- Fix CPU usage calculation ([#315](https://github.com/apify/apify-sdk-python/pull/315)) ([0521d91](https://github.com/apify/apify-sdk-python/commit/0521d911afbb8029ad29949f69c4f19166a01fc0)) by [@janbuchar](https://github.com/janbuchar)
|
|
55
|
+
- Set version constraint of the `websockets` dependency to <14.0.0 ([#322](https://github.com/apify/apify-sdk-python/pull/322)) ([15ad055](https://github.com/apify/apify-sdk-python/commit/15ad0550e7a5508adff3eb35511248c611a0f595)) by [@Pijukatel](https://github.com/Pijukatel)
|
|
56
|
+
- Fix Dataset.iter_items for apify_storage ([#321](https://github.com/apify/apify-sdk-python/pull/321)) ([2db1beb](https://github.com/apify/apify-sdk-python/commit/2db1beb2d56a7e7954cd76023d1273c7546d7cbf)) by [@Pijukatel](https://github.com/Pijukatel), closes [#320](https://github.com/apify/apify-sdk-python/issues/320)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
## [2.0.1](https://github.com/apify/apify-sdk-python/releases/tag/v2.0.1) (2024-10-25)
|
|
60
|
+
|
|
61
|
+
### 🚀 Features
|
|
62
|
+
|
|
63
|
+
- Add standby URL, change default standby port ([#287](https://github.com/apify/apify-sdk-python/pull/287)) ([8cd2f2c](https://github.com/apify/apify-sdk-python/commit/8cd2f2cb9d1191dbc93bf1b8a2d70189881c64ad)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
64
|
+
- Add crawlee version to system info print ([#304](https://github.com/apify/apify-sdk-python/pull/304)) ([c28f38f](https://github.com/apify/apify-sdk-python/commit/c28f38f4e205515e1b5d1ce97a2072be3a09d338)) by [@vdusek](https://github.com/vdusek)
|
|
65
|
+
|
|
66
|
+
### 🐛 Bug Fixes
|
|
67
|
+
|
|
68
|
+
- Adjust tests of scrapy user data ([#284](https://github.com/apify/apify-sdk-python/pull/284)) ([26ffb15](https://github.com/apify/apify-sdk-python/commit/26ffb15797effcfad1a25c840dd3d17663e26ea3)) by [@janbuchar](https://github.com/janbuchar)
|
|
69
|
+
- Use HttpHeaders type in Scrapy integration ([#289](https://github.com/apify/apify-sdk-python/pull/289)) ([3e33e91](https://github.com/apify/apify-sdk-python/commit/3e33e9147bfd60554b9da41b032c0451f91ba27b)) by [@vdusek](https://github.com/vdusek)
|
|
70
|
+
- Allow empty timeout_at env variable ([#303](https://github.com/apify/apify-sdk-python/pull/303)) ([b67ec98](https://github.com/apify/apify-sdk-python/commit/b67ec989dfcc21756cc976c52edc25735a3f0501)) by [@janbuchar](https://github.com/janbuchar), closes [#596](https://github.com/apify/apify-sdk-python/issues/596)
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
## [2.0.0](https://github.com/apify/apify-sdk-python/releases/tag/v2.0.0) (2024-09-10)
|
|
74
|
+
|
|
75
|
+
### 🚀 Features
|
|
76
|
+
|
|
77
|
+
- Better Actor API typing ([#256](https://github.com/apify/apify-sdk-python/pull/256)) ([abb87e7](https://github.com/apify/apify-sdk-python/commit/abb87e7f3c272f88a9a76292d8394fe93b98428a)) by [@janbuchar](https://github.com/janbuchar), closes [#243](https://github.com/apify/apify-sdk-python/issues/243)
|
|
78
|
+
- Expose Request from Crawlee ([#266](https://github.com/apify/apify-sdk-python/pull/266)) ([1f01278](https://github.com/apify/apify-sdk-python/commit/1f01278c77f261500bc74efd700c0583ac45fd82)) by [@vdusek](https://github.com/vdusek)
|
|
79
|
+
- Automatically configure logging ([#271](https://github.com/apify/apify-sdk-python/pull/271)) ([1906bb2](https://github.com/apify/apify-sdk-python/commit/1906bb216b8a3f1c2ad740c551ee019c2ba0696f)) by [@janbuchar](https://github.com/janbuchar)
|
|
80
|
+
|
|
81
|
+
### 🐛 Bug Fixes
|
|
82
|
+
|
|
83
|
+
- Make apify.log public again ([#249](https://github.com/apify/apify-sdk-python/pull/249)) ([22677f5](https://github.com/apify/apify-sdk-python/commit/22677f57b2aff6c9bddbee305e5a62e39bbf5915)) by [@janbuchar](https://github.com/janbuchar)
|
|
84
|
+
- Dataset list response handling ([#257](https://github.com/apify/apify-sdk-python/pull/257)) ([0ea57d7](https://github.com/apify/apify-sdk-python/commit/0ea57d7c4788bff31f215c447c1881e56d6508bb)) by [@janbuchar](https://github.com/janbuchar)
|
|
85
|
+
- Ignore deprecated platform events ([#258](https://github.com/apify/apify-sdk-python/pull/258)) ([ed5ab3b](https://github.com/apify/apify-sdk-python/commit/ed5ab3b80c851a817aa87806c39cd8ef3e86fde5)) by [@janbuchar](https://github.com/janbuchar)
|
|
86
|
+
- Possible infinity loop in Apify-Scrapy proxy middleware ([#259](https://github.com/apify/apify-sdk-python/pull/259)) ([8647a94](https://github.com/apify/apify-sdk-python/commit/8647a94289423528f2940d9f7174f81682fbb407)) by [@vdusek](https://github.com/vdusek)
|
|
87
|
+
- Hotfix for batch_add_requests batch size limit ([#261](https://github.com/apify/apify-sdk-python/pull/261)) ([61d7a39](https://github.com/apify/apify-sdk-python/commit/61d7a392d182a752c91193170dca351f4cb0fbf3)) by [@janbuchar](https://github.com/janbuchar)
|
|
88
|
+
|
|
89
|
+
### Refactor
|
|
90
|
+
|
|
91
|
+
- [**breaking**] Preparation for v2 release ([#210](https://github.com/apify/apify-sdk-python/pull/210)) ([2f9dcc5](https://github.com/apify/apify-sdk-python/commit/2f9dcc559414f31e3f4fc87e72417a36494b9c84)) by [@janbuchar](https://github.com/janbuchar), closes [#135](https://github.com/apify/apify-sdk-python/issues/135), [#137](https://github.com/apify/apify-sdk-python/issues/137), [#138](https://github.com/apify/apify-sdk-python/issues/138), [#147](https://github.com/apify/apify-sdk-python/issues/147), [#149](https://github.com/apify/apify-sdk-python/issues/149), [#237](https://github.com/apify/apify-sdk-python/issues/237)
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
## [1.7.2](https://github.com/apify/apify-sdk-python/releases/tag/v1.7.2) (2024-07-08)
|
|
95
|
+
|
|
96
|
+
### 🚀 Features
|
|
97
|
+
|
|
98
|
+
- Add actor standby port ([#220](https://github.com/apify/apify-sdk-python/pull/220)) ([6d0d87d](https://github.com/apify/apify-sdk-python/commit/6d0d87dcaedaf42d8eeb7d23c56f6b102434cbcb)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
## [1.7.1](https://github.com/apify/apify-sdk-python/releases/tag/v1.7.1) (2024-05-23)
|
|
102
|
+
|
|
103
|
+
### 🐛 Bug Fixes
|
|
104
|
+
|
|
105
|
+
- Set a timeout for Actor cleanup ([#206](https://github.com/apify/apify-sdk-python/pull/206)) ([cfed57d](https://github.com/apify/apify-sdk-python/commit/cfed57d6cff4fd15fe4b25578573190d53b9942c)) by [@janbuchar](https://github.com/janbuchar), closes [#200](https://github.com/apify/apify-sdk-python/issues/200)
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
## [1.1.2](https://github.com/apify/apify-sdk-python/releases/tag/v1.1.2) (2023-08-02)
|
|
109
|
+
|
|
110
|
+
### 🚀 Features
|
|
111
|
+
|
|
112
|
+
- Use Actor env vars ([#105](https://github.com/apify/apify-sdk-python/pull/105)) ([f0ba351](https://github.com/apify/apify-sdk-python/commit/f0ba35103eb9efbf39ea394d390430c849bf127c)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
## [1.1.0](https://github.com/apify/apify-sdk-python/releases/tag/v1.1.0) (2023-05-23)
|
|
116
|
+
|
|
117
|
+
### 🚀 Features
|
|
118
|
+
|
|
119
|
+
- Use test user token from organisation secrets ([#90](https://github.com/apify/apify-sdk-python/pull/90)) ([7826a38](https://github.com/apify/apify-sdk-python/commit/7826a382d7a3c0a1531b3a7bb73369e2801e6fa0)) by [@drobnikj](https://github.com/drobnikj)
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
## [0.2.0](https://github.com/apify/apify-sdk-python/releases/tag/v0.2.0) (2023-03-06)
|
|
123
|
+
|
|
124
|
+
### 🚀 Features
|
|
125
|
+
|
|
126
|
+
- Add chunking mechanism to push_data, cleanup TODOs ([#67](https://github.com/apify/apify-sdk-python/pull/67)) ([5f38d51](https://github.com/apify/apify-sdk-python/commit/5f38d51a57912071439ac88405311d2cb7044190)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
## [0.1.0](https://github.com/apify/apify-sdk-python/releases/tag/v0.1.0) (2023-02-09)
|
|
130
|
+
|
|
131
|
+
### 🚀 Features
|
|
132
|
+
|
|
133
|
+
- Implement MemoryStorage and local storage clients ([#15](https://github.com/apify/apify-sdk-python/pull/15)) ([b7c9886](https://github.com/apify/apify-sdk-python/commit/b7c98869bdc749feadc7b5a0d105fce041506011)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
134
|
+
- Implement Dataset, KeyValueStore classes, create storage management logic ([#21](https://github.com/apify/apify-sdk-python/pull/21)) ([d1b357c](https://github.com/apify/apify-sdk-python/commit/d1b357cd02f7357137fd9413b105a8ac48b1796b)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
135
|
+
- Implement RequestQueue class ([#25](https://github.com/apify/apify-sdk-python/pull/25)) ([c6cad34](https://github.com/apify/apify-sdk-python/commit/c6cad3442d1a9a37c3eb3991cf45daed03e74ff5)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
136
|
+
- Add test for get_env and is_at_home ([#29](https://github.com/apify/apify-sdk-python/pull/29)) ([cc45afb](https://github.com/apify/apify-sdk-python/commit/cc45afbf848db3626054c599cb3a5a2972a48748)) by [@drobnikj](https://github.com/drobnikj)
|
|
137
|
+
- Updating pull request toolkit config [INTERNAL] ([387143c](https://github.com/apify/apify-sdk-python/commit/387143ccf2c32a99c95e9931e5649e558d35daeb)) by [@mtrunkat](https://github.com/mtrunkat)
|
|
138
|
+
- Add documentation for `StorageManager` and `StorageClientManager`, open_* methods in `Actor` ([#34](https://github.com/apify/apify-sdk-python/pull/34)) ([3f6b942](https://github.com/apify/apify-sdk-python/commit/3f6b9426dc03fea40d80af2e4c8f04ecf2620e8a)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
139
|
+
- Add tests for actor lifecycle ([#35](https://github.com/apify/apify-sdk-python/pull/35)) ([4674728](https://github.com/apify/apify-sdk-python/commit/4674728905be5076283ff3795332866e8bef6ee8)) by [@drobnikj](https://github.com/drobnikj)
|
|
140
|
+
- Add docs for `Dataset`, `KeyValueStore`, and `RequestQueue` ([#37](https://github.com/apify/apify-sdk-python/pull/37)) ([174548e](https://github.com/apify/apify-sdk-python/commit/174548e952b47ee519d1a05c0821a2c42c2fddf6)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
141
|
+
- Docs string for memory storage clients ([#31](https://github.com/apify/apify-sdk-python/pull/31)) ([8f55d46](https://github.com/apify/apify-sdk-python/commit/8f55d463394307b004193efc43b67b44d030f6de)) by [@drobnikj](https://github.com/drobnikj)
|
|
142
|
+
- Add test for storage actor methods ([#39](https://github.com/apify/apify-sdk-python/pull/39)) ([b89bbcf](https://github.com/apify/apify-sdk-python/commit/b89bbcfdcae4f436a68e92f1f60628aea1036dde)) by [@drobnikj](https://github.com/drobnikj)
|
|
143
|
+
- Various fixes and improvements ([#41](https://github.com/apify/apify-sdk-python/pull/41)) ([5bae238](https://github.com/apify/apify-sdk-python/commit/5bae238821b3b63c73d0cbadf4b478511cb045d2)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
144
|
+
- Add the rest unit tests for actor ([#40](https://github.com/apify/apify-sdk-python/pull/40)) ([72d92ea](https://github.com/apify/apify-sdk-python/commit/72d92ea080670ceecc234c149058d2ebe763e3a8)) by [@drobnikj](https://github.com/drobnikj)
|
|
145
|
+
- Decrypt input secrets if there are some ([#45](https://github.com/apify/apify-sdk-python/pull/45)) ([6eb1630](https://github.com/apify/apify-sdk-python/commit/6eb163077341218a3f9dcf566986d7464f6ab09e)) by [@drobnikj](https://github.com/drobnikj)
|
|
146
|
+
- Add a few integration tests ([#48](https://github.com/apify/apify-sdk-python/pull/48)) ([1843f48](https://github.com/apify/apify-sdk-python/commit/1843f48845e724e1c2682b8d09a6b5c48c57d9ec)) by [@drobnikj](https://github.com/drobnikj)
|
|
147
|
+
- Add integration tests for storages, proxy configuration ([#49](https://github.com/apify/apify-sdk-python/pull/49)) ([fd0566e](https://github.com/apify/apify-sdk-python/commit/fd0566ed3b8c85c7884f8bba3cf7394215fabed0)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
148
|
+
- Unify datetime handling, remove utcnow() ([#52](https://github.com/apify/apify-sdk-python/pull/52)) ([09dd8ac](https://github.com/apify/apify-sdk-python/commit/09dd8ac9dc26afee777f497ed1d2733af1eef848)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
149
|
+
- Separate ID and name params for `Actor.open_xxx` ([#56](https://github.com/apify/apify-sdk-python/pull/56)) ([a1e962e](https://github.com/apify/apify-sdk-python/commit/a1e962ebe74384baabb96fdbb4f0e0ed2f92e454)) by [@jirimoravcik](https://github.com/jirimoravcik)
|
|
150
|
+
|
|
151
|
+
### 🐛 Bug Fixes
|
|
152
|
+
|
|
153
|
+
- Key error for storage name ([#28](https://github.com/apify/apify-sdk-python/pull/28)) ([83b30a9](https://github.com/apify/apify-sdk-python/commit/83b30a90df4d3b173302f1c6006b346091fced60)) by [@drobnikj](https://github.com/drobnikj)
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
<!-- generated by git-cliff -->
|