pgiscluster 0.2.0__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.
- pgiscluster-0.2.0/.copier-answers.yml +13 -0
- pgiscluster-0.2.0/.gitattributes +1 -0
- pgiscluster-0.2.0/.github/ISSUE_TEMPLATE/bug_report.yml +92 -0
- pgiscluster-0.2.0/.github/ISSUE_TEMPLATE/config.yml +1 -0
- pgiscluster-0.2.0/.github/ISSUE_TEMPLATE/documentation-update.yml +46 -0
- pgiscluster-0.2.0/.github/ISSUE_TEMPLATE/feature-proposal.yml +65 -0
- pgiscluster-0.2.0/.github/ISSUE_TEMPLATE/technical-debt-resolution.yml +47 -0
- pgiscluster-0.2.0/.github/workflows/lint.yml +27 -0
- pgiscluster-0.2.0/.github/workflows/publish.yml +35 -0
- pgiscluster-0.2.0/.github/workflows/release.yml +61 -0
- pgiscluster-0.2.0/.github/workflows/tests.yml +34 -0
- pgiscluster-0.2.0/.gitignore +193 -0
- pgiscluster-0.2.0/.pre-commit-config.yaml +24 -0
- pgiscluster-0.2.0/.python-version +1 -0
- pgiscluster-0.2.0/.release-please-manifest.json +3 -0
- pgiscluster-0.2.0/CHANGELOG.md +19 -0
- pgiscluster-0.2.0/LICENSE +21 -0
- pgiscluster-0.2.0/PKG-INFO +119 -0
- pgiscluster-0.2.0/README.md +82 -0
- pgiscluster-0.2.0/cliff.toml +32 -0
- pgiscluster-0.2.0/justfile +25 -0
- pgiscluster-0.2.0/pyproject.toml +95 -0
- pgiscluster-0.2.0/release-please-config.json +9 -0
- pgiscluster-0.2.0/src/pgiscluster/__init__.py +7 -0
- pgiscluster-0.2.0/src/pgiscluster/connector.py +160 -0
- pgiscluster-0.2.0/src/pgiscluster/features/__init__.py +1 -0
- pgiscluster-0.2.0/tests/__init__.py +1 -0
- pgiscluster-0.2.0/tests/conftest.py +1 -0
- pgiscluster-0.2.0/tests/test_connector.py +91 -0
- pgiscluster-0.2.0/tests/test_example.py +8 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Changes here will be overwritten by Copier
|
|
2
|
+
_commit: v1.5.0
|
|
3
|
+
_src_path: https://github.com/DragonBishop/python-copier-template-ds.git
|
|
4
|
+
github_actions: true
|
|
5
|
+
include_module: true
|
|
6
|
+
include_notebooks: false
|
|
7
|
+
include_reports: false
|
|
8
|
+
module_name: pgiscluster
|
|
9
|
+
project_name: pgiscluster
|
|
10
|
+
project_type: data_science
|
|
11
|
+
publish_to_pypi: true
|
|
12
|
+
python_version: 3.14.7
|
|
13
|
+
use_rumdl: true
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
uv.lock linguist-generated=true
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
name: Bug report
|
|
2
|
+
description: Report a defect or error with the project
|
|
3
|
+
title: 'Bug: '
|
|
4
|
+
labels: ["bug"]
|
|
5
|
+
body:
|
|
6
|
+
# Description of issue template
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: >
|
|
10
|
+
Thank you for reporting a bug! Please provide as much detail as possible in the fields provided.
|
|
11
|
+
# Expected behavior
|
|
12
|
+
- type: textarea
|
|
13
|
+
id: exp-behave
|
|
14
|
+
attributes:
|
|
15
|
+
label: Expected Behavior
|
|
16
|
+
description: A concise description of what you expected to happen.
|
|
17
|
+
validations:
|
|
18
|
+
required: true
|
|
19
|
+
# Describe the bug
|
|
20
|
+
- type: textarea
|
|
21
|
+
id: bug-describe
|
|
22
|
+
attributes:
|
|
23
|
+
label: Describe the Bug
|
|
24
|
+
description: A clear description of what is actually happening.
|
|
25
|
+
validations:
|
|
26
|
+
required: true
|
|
27
|
+
# To Reproduce
|
|
28
|
+
- type: textarea
|
|
29
|
+
id: reproduce
|
|
30
|
+
attributes:
|
|
31
|
+
label: To Reproduce
|
|
32
|
+
description: List the exact steps to reproduce the bug.
|
|
33
|
+
value: |
|
|
34
|
+
1.
|
|
35
|
+
2.
|
|
36
|
+
3.
|
|
37
|
+
validations:
|
|
38
|
+
required: true
|
|
39
|
+
- type: checkboxes
|
|
40
|
+
id: tooling
|
|
41
|
+
attributes:
|
|
42
|
+
label: Relevant Tools
|
|
43
|
+
description: What tools were you using when the bug occurred? Check everything relevant to this report.
|
|
44
|
+
options:
|
|
45
|
+
- label: Python script
|
|
46
|
+
- label: Notebook (Jupyter, JupyterLab, Colab)
|
|
47
|
+
- label: R environment (RStudio, Rscript, R Markdown)
|
|
48
|
+
- label: Distributed compute (Spark, Dask, Ray)
|
|
49
|
+
- label: PostgreSQL
|
|
50
|
+
- label: SQLite
|
|
51
|
+
- label: DuckDB
|
|
52
|
+
- label: MySQL / MariaDB
|
|
53
|
+
- label: Cloud warehouse (BigQuery, Snowflake, Redshift)
|
|
54
|
+
- type: input
|
|
55
|
+
id: tools-other
|
|
56
|
+
attributes:
|
|
57
|
+
label: Other Tools
|
|
58
|
+
description: Add any relevant tools that were not listed above.
|
|
59
|
+
placeholder: "e.g. dbt, Airflow, Databricks"
|
|
60
|
+
validations:
|
|
61
|
+
required: false
|
|
62
|
+
# Type of OS
|
|
63
|
+
- type: dropdown
|
|
64
|
+
id: os
|
|
65
|
+
attributes:
|
|
66
|
+
label: Operating System
|
|
67
|
+
options:
|
|
68
|
+
- Windows
|
|
69
|
+
- macOS
|
|
70
|
+
- Linux
|
|
71
|
+
- Android
|
|
72
|
+
- iOS
|
|
73
|
+
- Other
|
|
74
|
+
validations:
|
|
75
|
+
required: true
|
|
76
|
+
# OS Version
|
|
77
|
+
- type: input
|
|
78
|
+
id: os-vers
|
|
79
|
+
attributes:
|
|
80
|
+
label: OS Version
|
|
81
|
+
description: >
|
|
82
|
+
What version of this operating system did you use? (If you chose other, specify your OS here)
|
|
83
|
+
validations:
|
|
84
|
+
required: true
|
|
85
|
+
# Dependencies / Additional Context
|
|
86
|
+
- type: textarea
|
|
87
|
+
id: dependencies
|
|
88
|
+
attributes:
|
|
89
|
+
label: Dependencies and Additional Context
|
|
90
|
+
description: >
|
|
91
|
+
Provide any additional context here, such as the dependencies used in a Python project. Paste uv pip list, pip freeze,
|
|
92
|
+
conda list, etc. Remember, the most common reason for Python bug reports is dependency management!
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
blank_issues_enabled: false
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
name: Documentation Update
|
|
2
|
+
description: Report missing, unclear, outdated, or incorrect documentation
|
|
3
|
+
title: 'Docs: '
|
|
4
|
+
labels: ["documentation"]
|
|
5
|
+
body:
|
|
6
|
+
# Page Location
|
|
7
|
+
- type: input
|
|
8
|
+
id: page-location
|
|
9
|
+
attributes:
|
|
10
|
+
label: Page Location
|
|
11
|
+
description: Provide a URL or file path to the page needing update (e.g. `README.md`)
|
|
12
|
+
validations:
|
|
13
|
+
required: true
|
|
14
|
+
# Current Problem Types
|
|
15
|
+
- type: checkboxes
|
|
16
|
+
id: problem-type
|
|
17
|
+
attributes:
|
|
18
|
+
label: Problem Type
|
|
19
|
+
description: 'Please check all that apply:'
|
|
20
|
+
options:
|
|
21
|
+
- label: Outdated info
|
|
22
|
+
- label: Incorrect info
|
|
23
|
+
- label: Missing info
|
|
24
|
+
- label: Broken link / formatting
|
|
25
|
+
- label: Typo / Grammatical error
|
|
26
|
+
# Describe the Problem
|
|
27
|
+
- type: textarea
|
|
28
|
+
id: problem-describe
|
|
29
|
+
attributes:
|
|
30
|
+
label: Problem Description
|
|
31
|
+
description: Explain what's wrong, confusing or missing to you. Copy-paste text if applicable
|
|
32
|
+
validations:
|
|
33
|
+
required: true
|
|
34
|
+
# Proposed Changes
|
|
35
|
+
- type: textarea
|
|
36
|
+
id: changes
|
|
37
|
+
attributes:
|
|
38
|
+
label: Proposed Changes
|
|
39
|
+
description: >
|
|
40
|
+
What should the documentation say instead? Make your suggestions here.
|
|
41
|
+
# Additional Context
|
|
42
|
+
- type: textarea
|
|
43
|
+
id: context
|
|
44
|
+
attributes:
|
|
45
|
+
label: Additional Context
|
|
46
|
+
description: Provide any additional context about the issue below.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
name: Feature Proposal
|
|
2
|
+
description: Propose an enhancement or new feature for the project
|
|
3
|
+
title: 'Proposal: '
|
|
4
|
+
labels: ["enhancement"]
|
|
5
|
+
body:
|
|
6
|
+
# Because
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: >
|
|
10
|
+
Use this to propose the project do something it currently does not. Use a bug report for broken features. Please be concise!
|
|
11
|
+
- type: textarea
|
|
12
|
+
id: rationale
|
|
13
|
+
attributes:
|
|
14
|
+
label: Because...
|
|
15
|
+
description: |
|
|
16
|
+
What is the problem you are trying to solve?
|
|
17
|
+
Describe the context of the problem.
|
|
18
|
+
placeholder: "The same setup steps get repeated by hand in every new project..."
|
|
19
|
+
validations:
|
|
20
|
+
required: true
|
|
21
|
+
# I Propose
|
|
22
|
+
- type: textarea
|
|
23
|
+
id: proposal
|
|
24
|
+
attributes:
|
|
25
|
+
label: I Propose...
|
|
26
|
+
description: |
|
|
27
|
+
Describe the change in operational terms.
|
|
28
|
+
What specifically needs to happen?
|
|
29
|
+
placeholder: "A single command that runs the whole setup sequence..."
|
|
30
|
+
validations:
|
|
31
|
+
required: true
|
|
32
|
+
# So That
|
|
33
|
+
- type: textarea
|
|
34
|
+
id: outcome
|
|
35
|
+
attributes:
|
|
36
|
+
label: So That...
|
|
37
|
+
description: |
|
|
38
|
+
Who benefits from this proposal?
|
|
39
|
+
What would show that it worked?
|
|
40
|
+
placeholder: "A new contributor can get moving on a project without being slowed down by..."
|
|
41
|
+
validations:
|
|
42
|
+
required: true
|
|
43
|
+
# Alternatives
|
|
44
|
+
- type: textarea
|
|
45
|
+
id: alternative
|
|
46
|
+
attributes:
|
|
47
|
+
label: Alternatives
|
|
48
|
+
description: Describe workarounds or alternatives you've tried, if any.
|
|
49
|
+
# Implementing
|
|
50
|
+
- type: dropdown
|
|
51
|
+
id: implement
|
|
52
|
+
attributes:
|
|
53
|
+
label: Are you willing to work on implementing this change?
|
|
54
|
+
options:
|
|
55
|
+
- "Yes"
|
|
56
|
+
- "No"
|
|
57
|
+
validations:
|
|
58
|
+
required: true
|
|
59
|
+
# Additional Notes
|
|
60
|
+
- type: textarea
|
|
61
|
+
id: notes
|
|
62
|
+
attributes:
|
|
63
|
+
label: Additional Notes
|
|
64
|
+
description: >
|
|
65
|
+
Provide relevant file paths, scripts, documentation, or any other additional notes about this proposal.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
name: Technical Debt Resolution
|
|
2
|
+
description: Flag code that works but will cost the project later
|
|
3
|
+
title: 'Debt: '
|
|
4
|
+
labels: ["enhancement"]
|
|
5
|
+
body:
|
|
6
|
+
# Context
|
|
7
|
+
- type: textarea
|
|
8
|
+
id: context
|
|
9
|
+
attributes:
|
|
10
|
+
label: Context
|
|
11
|
+
description: Explain the source of tech debt in operational terms. What happens?
|
|
12
|
+
validations:
|
|
13
|
+
required: true
|
|
14
|
+
# Risk
|
|
15
|
+
- type: textarea
|
|
16
|
+
id: risk
|
|
17
|
+
attributes:
|
|
18
|
+
label: Risk
|
|
19
|
+
description: Explain how and why this creates a liability for the project.
|
|
20
|
+
validations:
|
|
21
|
+
required: true
|
|
22
|
+
# Urgency
|
|
23
|
+
- type: dropdown
|
|
24
|
+
id: urgency
|
|
25
|
+
attributes:
|
|
26
|
+
label: When will this become a problem?
|
|
27
|
+
options:
|
|
28
|
+
- It Already Has
|
|
29
|
+
- Soon
|
|
30
|
+
- Eventually
|
|
31
|
+
validations:
|
|
32
|
+
required: true
|
|
33
|
+
# Resolution
|
|
34
|
+
- type: textarea
|
|
35
|
+
id: resolution
|
|
36
|
+
attributes:
|
|
37
|
+
label: Resolution Proposal
|
|
38
|
+
description: Explain what specific changes will eliminate this technical debt
|
|
39
|
+
validations:
|
|
40
|
+
required: true
|
|
41
|
+
# Additional Notes
|
|
42
|
+
- type: textarea
|
|
43
|
+
id: notes
|
|
44
|
+
attributes:
|
|
45
|
+
label: Additional Notes
|
|
46
|
+
description: >
|
|
47
|
+
Provide relevant file paths, scripts, documentation, or any other additional notes about this issue.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
name: lint
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
pull_request:
|
|
6
|
+
# push:
|
|
7
|
+
# branches: [main]
|
|
8
|
+
permissions:
|
|
9
|
+
contents: read
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
lint:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v6
|
|
16
|
+
- name: Install uv
|
|
17
|
+
uses: astral-sh/setup-uv@v7
|
|
18
|
+
- name: "Set up Python"
|
|
19
|
+
uses: actions/setup-python@v6
|
|
20
|
+
with:
|
|
21
|
+
python-version-file: ".python-version"
|
|
22
|
+
- name: Install the project
|
|
23
|
+
run: uv sync --only-group lint --frozen
|
|
24
|
+
- name: check format
|
|
25
|
+
run: uv run ruff format --check --diff .
|
|
26
|
+
- name: check lints
|
|
27
|
+
run: uv run ruff check --output-format=github .
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
name: publish
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
|
|
7
|
+
permissions:
|
|
8
|
+
contents: read
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
publish:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
permissions:
|
|
14
|
+
id-token: write
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@v6
|
|
17
|
+
- name: Install uv
|
|
18
|
+
uses: astral-sh/setup-uv@v7
|
|
19
|
+
- name: "Set up Python"
|
|
20
|
+
uses: actions/setup-python@v6
|
|
21
|
+
with:
|
|
22
|
+
python-version-file: ".python-version"
|
|
23
|
+
- name: Add repository URLs to package metadata
|
|
24
|
+
run: |
|
|
25
|
+
cat >> pyproject.toml << EOF
|
|
26
|
+
|
|
27
|
+
[project.urls]
|
|
28
|
+
Homepage = "${{ github.server_url }}/${{ github.repository }}"
|
|
29
|
+
Repository = "${{ github.server_url }}/${{ github.repository }}"
|
|
30
|
+
Issues = "${{ github.server_url }}/${{ github.repository }}/issues"
|
|
31
|
+
EOF
|
|
32
|
+
- name: Build package
|
|
33
|
+
run: uv build
|
|
34
|
+
- name: Publish to PyPI
|
|
35
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
name: release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
pull_request_target:
|
|
7
|
+
types: [opened, reopened, edited, synchronize]
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: write
|
|
11
|
+
issues: write
|
|
12
|
+
pull-requests: write
|
|
13
|
+
|
|
14
|
+
concurrency:
|
|
15
|
+
group: release-${{ github.head_ref || github.ref }}
|
|
16
|
+
cancel-in-progress: false
|
|
17
|
+
|
|
18
|
+
jobs:
|
|
19
|
+
lint-pr-title:
|
|
20
|
+
if: ${{ github.event_name == 'pull_request_target' }}
|
|
21
|
+
runs-on: ubuntu-latest
|
|
22
|
+
steps:
|
|
23
|
+
- uses: amannn/action-semantic-pull-request@v6
|
|
24
|
+
env:
|
|
25
|
+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
26
|
+
|
|
27
|
+
release-please:
|
|
28
|
+
if: ${{ github.event_name == 'push' }}
|
|
29
|
+
runs-on: ubuntu-latest
|
|
30
|
+
outputs:
|
|
31
|
+
release_created: ${{ steps.release.outputs.release_created }}
|
|
32
|
+
tag_name: ${{ steps.release.outputs.tag_name }}
|
|
33
|
+
steps:
|
|
34
|
+
- uses: actions/create-github-app-token@v2
|
|
35
|
+
id: app-token
|
|
36
|
+
with:
|
|
37
|
+
app-id: ${{ secrets.RELEASE_PLEASE_APP_ID }}
|
|
38
|
+
private-key: ${{ secrets.RELEASE_PLEASE_APP_PRIVATE_KEY }}
|
|
39
|
+
- uses: googleapis/release-please-action@v5
|
|
40
|
+
id: release
|
|
41
|
+
with:
|
|
42
|
+
token: ${{ steps.app-token.outputs.token }}
|
|
43
|
+
|
|
44
|
+
regenerate-changelog:
|
|
45
|
+
needs: release-please
|
|
46
|
+
if: ${{ needs.release-please.outputs.release_created }}
|
|
47
|
+
runs-on: ubuntu-latest
|
|
48
|
+
steps:
|
|
49
|
+
- uses: actions/checkout@v6
|
|
50
|
+
with:
|
|
51
|
+
ref: main
|
|
52
|
+
fetch-depth: 0
|
|
53
|
+
- uses: orhun/git-cliff-action@v4
|
|
54
|
+
with:
|
|
55
|
+
args: -o CHANGELOG.md
|
|
56
|
+
- run: |
|
|
57
|
+
git config user.name "github-actions[bot]"
|
|
58
|
+
git config user.email "github-actions[bot]@users.noreply.github.com"
|
|
59
|
+
git add CHANGELOG.md
|
|
60
|
+
git commit -m "docs: regenerate changelog for ${{ needs.release-please.outputs.tag_name }}" || exit 0
|
|
61
|
+
git push
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
name: tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
pull_request:
|
|
6
|
+
# push:
|
|
7
|
+
# branches: [main]
|
|
8
|
+
permissions:
|
|
9
|
+
contents: read
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
tests:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v6
|
|
16
|
+
- name: Install uv
|
|
17
|
+
uses: astral-sh/setup-uv@v7
|
|
18
|
+
- name: "Set up Python"
|
|
19
|
+
uses: actions/setup-python@v6
|
|
20
|
+
with:
|
|
21
|
+
python-version-file: ".python-version"
|
|
22
|
+
- name: Install the project
|
|
23
|
+
run: uv sync --all-extras --all-groups --frozen
|
|
24
|
+
- name: unit tests
|
|
25
|
+
run: |
|
|
26
|
+
set -o pipefail && \
|
|
27
|
+
uv run pytest --cov=src/pgiscluster --cov-report=term-missing:skip-covered --junitxml=pytest.xml \
|
|
28
|
+
| tee pytest-coverage.txt
|
|
29
|
+
- name: Pytest coverage comment
|
|
30
|
+
uses: MishaKav/pytest-coverage-comment@main
|
|
31
|
+
continue-on-error: true
|
|
32
|
+
with:
|
|
33
|
+
pytest-coverage-path: ./pytest-coverage.txt
|
|
34
|
+
junitxml-path: ./pytest.xml
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
[Uu]ntitled*
|
|
2
|
+
scratch*
|
|
3
|
+
|
|
4
|
+
# Windows thumbnail cache files
|
|
5
|
+
Thumbs.db
|
|
6
|
+
Thumbs.db:encryptable
|
|
7
|
+
ehthumbs.db
|
|
8
|
+
ehthumbs_vista.db
|
|
9
|
+
|
|
10
|
+
# Dump file
|
|
11
|
+
*.stackdump
|
|
12
|
+
|
|
13
|
+
# Folder config file
|
|
14
|
+
[Dd]esktop.ini
|
|
15
|
+
|
|
16
|
+
# Recycle Bin used on file shares
|
|
17
|
+
$RECYCLE.BIN/
|
|
18
|
+
|
|
19
|
+
# Windows Installer files
|
|
20
|
+
*.cab
|
|
21
|
+
*.msi
|
|
22
|
+
*.msix
|
|
23
|
+
*.msm
|
|
24
|
+
*.msp
|
|
25
|
+
|
|
26
|
+
# Windows shortcuts
|
|
27
|
+
*.lnk
|
|
28
|
+
|
|
29
|
+
# Byte-compiled / optimized / DLL files
|
|
30
|
+
__pycache__/
|
|
31
|
+
*.py[cod]
|
|
32
|
+
*$py.class
|
|
33
|
+
|
|
34
|
+
# C extensions
|
|
35
|
+
*.so
|
|
36
|
+
|
|
37
|
+
# Distribution / packaging
|
|
38
|
+
.Python
|
|
39
|
+
build/
|
|
40
|
+
develop-eggs/
|
|
41
|
+
dist/
|
|
42
|
+
downloads/
|
|
43
|
+
eggs/
|
|
44
|
+
.eggs/
|
|
45
|
+
lib/
|
|
46
|
+
lib64/
|
|
47
|
+
parts/
|
|
48
|
+
sdist/
|
|
49
|
+
var/
|
|
50
|
+
wheels/
|
|
51
|
+
share/python-wheels/
|
|
52
|
+
*.egg-info/
|
|
53
|
+
.installed.cfg
|
|
54
|
+
*.egg
|
|
55
|
+
MANIFEST
|
|
56
|
+
|
|
57
|
+
# PyInstaller
|
|
58
|
+
# Usually these files are written by a python script from a template
|
|
59
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
60
|
+
*.manifest
|
|
61
|
+
*.spec
|
|
62
|
+
|
|
63
|
+
# Installer logs
|
|
64
|
+
pip-log.txt
|
|
65
|
+
pip-delete-this-directory.txt
|
|
66
|
+
|
|
67
|
+
# Unit test / coverage reports
|
|
68
|
+
lcov.info
|
|
69
|
+
htmlcov/
|
|
70
|
+
.tox/
|
|
71
|
+
.nox/
|
|
72
|
+
.coverage
|
|
73
|
+
.coverage.*
|
|
74
|
+
.cache
|
|
75
|
+
nosetests.xml
|
|
76
|
+
coverage.xml
|
|
77
|
+
*.cover
|
|
78
|
+
*.py,cover
|
|
79
|
+
.hypothesis/
|
|
80
|
+
.pytest_cache/
|
|
81
|
+
.ruff_cache/
|
|
82
|
+
.rumdl_cache/
|
|
83
|
+
cover/
|
|
84
|
+
|
|
85
|
+
# Translations
|
|
86
|
+
*.mo
|
|
87
|
+
*.pot
|
|
88
|
+
|
|
89
|
+
# Django stuff:
|
|
90
|
+
*.log
|
|
91
|
+
local_settings.py
|
|
92
|
+
db.sqlite3
|
|
93
|
+
db.sqlite3-journal
|
|
94
|
+
|
|
95
|
+
# Flask stuff:
|
|
96
|
+
instance/
|
|
97
|
+
.webassets-cache
|
|
98
|
+
|
|
99
|
+
# Scrapy stuff:
|
|
100
|
+
.scrapy
|
|
101
|
+
|
|
102
|
+
# Sphinx documentation
|
|
103
|
+
docs/_build/
|
|
104
|
+
|
|
105
|
+
# PyBuilder
|
|
106
|
+
.pybuilder/
|
|
107
|
+
target/
|
|
108
|
+
|
|
109
|
+
# Jupyter Notebook
|
|
110
|
+
.ipynb_checkpoints
|
|
111
|
+
|
|
112
|
+
# IPython
|
|
113
|
+
profile_default/
|
|
114
|
+
ipython_config.py
|
|
115
|
+
|
|
116
|
+
# pyenv
|
|
117
|
+
# For a library or package, you might want to ignore these files since the code is
|
|
118
|
+
# intended to run in multiple environments; otherwise, check them in:
|
|
119
|
+
# .python-version
|
|
120
|
+
|
|
121
|
+
# pipenv
|
|
122
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
123
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
124
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
125
|
+
# install all needed dependencies.
|
|
126
|
+
#Pipfile.lock
|
|
127
|
+
|
|
128
|
+
# poetry
|
|
129
|
+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
|
130
|
+
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
|
131
|
+
# commonly ignored for libraries.
|
|
132
|
+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
|
133
|
+
#poetry.lock
|
|
134
|
+
|
|
135
|
+
# pdm
|
|
136
|
+
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
|
137
|
+
#pdm.lock
|
|
138
|
+
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
|
|
139
|
+
# in version control.
|
|
140
|
+
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
|
|
141
|
+
.pdm.toml
|
|
142
|
+
.pdm-python
|
|
143
|
+
.pdm-build/
|
|
144
|
+
|
|
145
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
|
146
|
+
__pypackages__/
|
|
147
|
+
|
|
148
|
+
# Celery stuff
|
|
149
|
+
celerybeat-schedule
|
|
150
|
+
celerybeat.pid
|
|
151
|
+
|
|
152
|
+
# SageMath parsed files
|
|
153
|
+
*.sage.py
|
|
154
|
+
|
|
155
|
+
# Environments
|
|
156
|
+
.env
|
|
157
|
+
.venv
|
|
158
|
+
env/
|
|
159
|
+
venv/
|
|
160
|
+
ENV/
|
|
161
|
+
env.bak/
|
|
162
|
+
venv.bak/
|
|
163
|
+
|
|
164
|
+
# Spyder project settings
|
|
165
|
+
.spyderproject
|
|
166
|
+
.spyproject
|
|
167
|
+
|
|
168
|
+
# Rope project settings
|
|
169
|
+
.ropeproject
|
|
170
|
+
|
|
171
|
+
# mkdocs documentation
|
|
172
|
+
/site
|
|
173
|
+
|
|
174
|
+
# mypy
|
|
175
|
+
.mypy_cache/
|
|
176
|
+
.dmypy.json
|
|
177
|
+
dmypy.json
|
|
178
|
+
|
|
179
|
+
# Pyre type checker
|
|
180
|
+
.pyre/
|
|
181
|
+
|
|
182
|
+
# pytype static type analyzer
|
|
183
|
+
.pytype/
|
|
184
|
+
|
|
185
|
+
# Cython debug symbols
|
|
186
|
+
cython_debug/
|
|
187
|
+
|
|
188
|
+
# PyCharm
|
|
189
|
+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
|
190
|
+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
|
191
|
+
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
|
192
|
+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
|
193
|
+
#.idea/
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
repos:
|
|
2
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
+
rev: v6.0.0
|
|
4
|
+
hooks:
|
|
5
|
+
- id: trailing-whitespace
|
|
6
|
+
- id: end-of-file-fixer
|
|
7
|
+
- id: check-yaml
|
|
8
|
+
args: [--allow-multiple-documents]
|
|
9
|
+
- id: check-merge-conflict
|
|
10
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
11
|
+
# Ruff version.
|
|
12
|
+
rev: v0.16.5
|
|
13
|
+
hooks:
|
|
14
|
+
# Run the linter.
|
|
15
|
+
- id: ruff-check
|
|
16
|
+
types_or: [python, pyi]
|
|
17
|
+
# Run the formatter.
|
|
18
|
+
- id: ruff-format
|
|
19
|
+
types_or: [python, pyi]
|
|
20
|
+
- repo: https://github.com/rvben/rumdl-pre-commit
|
|
21
|
+
rev: v0.2.62
|
|
22
|
+
hooks:
|
|
23
|
+
- id: rumdl # Lint only (fails on issues)
|
|
24
|
+
- id: rumdl-fmt # Auto-format and fail if issues remain
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.14.7
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [0.2.0](https://github.com/DragonBishop/pgiscluster/compare/v0.1.0...v0.2.0) (2026-09-17)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add dependencies and pyproject.toml metadata ([a06394c](https://github.com/DragonBishop/pgiscluster/commit/a06394c0ac37325e77b3a6dae1cb518e92c9617d))
|
|
9
|
+
* **connector:** add HostDBConnector and HostAdminDBConnector, file-based db_query, pluggable target resolver ([2556cd4](https://github.com/DragonBishop/pgiscluster/commit/2556cd450ce50e745953ca57032b7e8d4c82ab50))
|
|
10
|
+
* **connector:** implement DBConnector._get_target CiliumLocalRedirectPolicy lookup ([5c51b46](https://github.com/DragonBishop/pgiscluster/commit/5c51b46ad49b2630e34991a597f9cf090e0c0722))
|
|
11
|
+
* initialize project via copier template (uv, pytest, CI, notebooks) ([af5469c](https://github.com/DragonBishop/pgiscluster/commit/af5469c8d63cfd6e77fdf920d3800a1da2b280f4))
|
|
12
|
+
* prepare pgiscluster for publication ([cc2e1b9](https://github.com/DragonBishop/pgiscluster/commit/cc2e1b9593042afcb230f74f1c4e11ee4eade194))
|
|
13
|
+
* Update dependencies and configurations across multiple components ([51e42d9](https://github.com/DragonBishop/pgiscluster/commit/51e42d91908444ae48fcb50fee4f088bf629827f))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### Documentation
|
|
17
|
+
|
|
18
|
+
* move package README to repo root, fix repo links ([6c2420c](https://github.com/DragonBishop/pgiscluster/commit/6c2420c034aa5eb8a4623bd8cf8a6c282aacdff7))
|
|
19
|
+
* regenerate changelog for v1.0.0 ([9e258b1](https://github.com/DragonBishop/pgiscluster/commit/9e258b1a27594c8ed8ccb9815cd987ff3578f947))
|