Other
English
Shanci commited on
Commit
3cfae36
·
verified ·
1 Parent(s): 26225c5

Upload folder using huggingface_hub

Browse files
.env.example ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ # example of file for storing private and user specific environment variables, like keys or system paths
2
+ # rename it to ".env" (excluded from version control by default)
3
+ # .env is loaded by train.py automatically
4
+ # hydra allows you to reference variables in .yaml configs with special syntax: ${oc.env:MY_VAR}
5
+
6
+ MY_VAR="/home/user/my/system/path"
.github/ISSUE_TEMPLATE/0-bug-report.yaml ADDED
@@ -0,0 +1,105 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: "🐛 Bug Report"
2
+ description: Submit a report to help us reproduce and fix the bug
3
+ title: Title of your bug report
4
+ labels: ["bug"]
5
+
6
+ body:
7
+
8
+ - type: markdown
9
+ attributes:
10
+ value: Thanks for taking the time to fill out this bug report 🙏 !
11
+
12
+ - type: checkboxes
13
+ attributes:
14
+ label: ✅ Code of conduct checklist
15
+ description: >
16
+ Before submitting a bug, please make sure you went through the following
17
+ steps.
18
+ options:
19
+ - label: "🌱 I am using the **_latest version_** of the [code](https://github.com/drprojects/superpoint_transformer/tree/master)."
20
+ required: true
21
+ - label: "👩‍💻 I made sure the bug concerns the official [project's codebase](https://github.com/drprojects/superpoint_transformer/tree/master) and not something I coded myself on top of it. (We only provide support for code we wrote and released ourselves)."
22
+ required: true
23
+ - label: "🔎 I took appropriate **_time_** to investigate the problem before filing an issue, but am unable to solve it myself."
24
+ required: true
25
+ - label: "📙 I **_thoroughly_** went through the [README](https://github.com/drprojects/superpoint_transformer/blob/master/README.md), but could not find the solution there."
26
+ required: true
27
+ - label: "📘 I **_thoroughly_** went through the tutorial [slides](media/superpoint_transformer_tutorial.pdf), [notebook](notebooks/superpoint_transformer_tutorial.ipynb), and [video](https://www.youtube.com/watch?v=2qKhpQs9gJw), but could not find the solution there."
28
+ required: true
29
+ - label: "📗 I **_thoroughly_** went through the [documentation](https://github.com/drprojects/superpoint_transformer/tree/master/docs), but could not find the solution there."
30
+ required: true
31
+ - label: "📜 I went through the **_docstrings_** and **_comments_** in the [source code](https://github.com/drprojects/superpoint_transformer/tree/master) parts relevant to my problem, but could not find the solution there."
32
+ required: true
33
+ - label: "👩‍🔧 I searched for [**_similar issues_**](https://github.com/drprojects/superpoint_transformer/issues), but could not find the solution there."
34
+ required: true
35
+ - label: "🔎 I made sure my bug is related to the [project's codebase](https://github.com/drprojects/superpoint_transformer/tree/master) and is not in fact a sub-dependency issue (e.g.: FRNN installation issue, PyTorch installation issue, PyTorch Geometric not installed with GPU support, ...)."
36
+ required: true
37
+ - label: "⭐ Since I am showing interest in the project, I took the time to give the [repo](https://github.com/drprojects/superpoint_transformer/tree/master) a ⭐ to show support. **Please do, it means a lot to us !**"
38
+ required: true
39
+
40
+ - type: textarea
41
+ attributes:
42
+ label: 🐛 Describe the bug
43
+ description: >
44
+ Please provide a _**clear and concise**_ description of the issue you
45
+ are facing. If the code does not behave as anticipated, please describe
46
+ the expected behavior. Include references to any relevant documentation
47
+ or related issues.
48
+ validations:
49
+ required: true
50
+
51
+ - type: textarea
52
+ id: logs
53
+ attributes:
54
+ label: 📜 Log output
55
+ description: >
56
+ If relevant, please copy and paste any useful log output. If copying an
57
+ error message, make sure you provide the _**full traceback**_. This will
58
+ be automatically rendered as shell code, so no need for backticks.
59
+ placeholder: |
60
+ << Full error message >>
61
+ render: shell
62
+
63
+ - type: textarea
64
+ attributes:
65
+ label: 🤖 Steps to reproduce the bug
66
+ description: >
67
+ Please provide a _**minimal reproducible example**_ to help us
68
+ investigate the bug.
69
+ placeholder: |
70
+ A step-by-step recipe for reproducing your bug. Use backticks as shown
71
+ below to write and render code snippets.
72
+
73
+ ```python
74
+ # Some python code to reproduce the problem
75
+ ```
76
+
77
+ ```
78
+ Some error message you got, with the full traceback.
79
+ ```
80
+ validations:
81
+ required: true
82
+
83
+ - type: textarea
84
+ attributes:
85
+ label: 📚 Additional information
86
+ description: >
87
+ Please add any additional information that could help us diagnose the
88
+ problem better. Provide screenshots if applicable. You may attach
89
+ log files, generated wheel, or any other file that could be helpful.
90
+
91
+ - type: textarea
92
+ attributes:
93
+ label: 🖥️ Environment
94
+ description: |
95
+ Please run the following and paste the output here. This will let us know more about your environment.
96
+ ```sh
97
+ curl -OL https://raw.githubusercontent.com/pytorch/pytorch/main/torch/utils/collect_env.py
98
+ # For security purposes, please check the contents of collect_env.py before running it.
99
+ python3 collect_env.py
100
+ ```
101
+ render: shell
102
+ placeholder: |
103
+ << Copy the output of `collect_env.py` here >>
104
+ validations:
105
+ required: true
.github/ISSUE_TEMPLATE/1-feature-request.yaml ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: "🚀 Feature Request"
2
+ description: Propose a new feature
3
+ title: Title of your feature request
4
+ labels: ["feature"]
5
+
6
+ body:
7
+
8
+ - type: markdown
9
+ attributes:
10
+ value: Thanks for taking the time to fill out this feature request report 🙏 !
11
+
12
+ - type: checkboxes
13
+ attributes:
14
+ label: ✅ Code of conduct checklist
15
+ description: >
16
+ Before submitting a feature request, please make sure you went through
17
+ the following steps.
18
+ options:
19
+ - label: "🌱 I am using the **_latest version_** of the [code](https://github.com/drprojects/superpoint_transformer/tree/master)."
20
+ required: true
21
+ - label: "📙 I **_thoroughly_** went through the [README](https://github.com/drprojects/superpoint_transformer/blob/master/README.md), but could not find the feature I need there."
22
+ required: true
23
+ - label: "📘 I **_thoroughly_** went through the tutorial [slides](media/superpoint_transformer_tutorial.pdf), [notebook](notebooks/superpoint_transformer_tutorial.ipynb), and [video](https://www.youtube.com/watch?v=2qKhpQs9gJw), but could not find the feature I need there."
24
+ required: true
25
+ - label: "📗 I **_thoroughly_** went through the [documentation](https://github.com/drprojects/superpoint_transformer/tree/master/docs), but could not find the feature I need there."
26
+ required: true
27
+ - label: "📜 I went through the **_docstrings_** and **_comments_** in the [source code](https://github.com/drprojects/superpoint_transformer/tree/master) parts relevant to my problem, but could not find the feature I need there."
28
+ required: true
29
+ - label: "👩‍🔧 I searched for [**_similar issues_**](https://github.com/drprojects/superpoint_transformer/issues), but could not find the feature I need there."
30
+ required: true
31
+ - label: "⭐ Since I am showing interest in the project, I took the time to give the [repo](https://github.com/drprojects/superpoint_transformer/tree/master) a ⭐ to show support. **Please do, it means a lot to us !**"
32
+ required: true
33
+
34
+ - type: textarea
35
+ attributes:
36
+ label: 🚀 The feature, motivation and pitch
37
+ description: >
38
+ A clear and concise description of the feature proposal. Please outline
39
+ the motivation for the proposal. Is your feature request related to a
40
+ specific problem ? e.g., *"I'm working on X and would like Y to be
41
+ possible"*. If this is related to another GitHub issue, please link here
42
+ too.
43
+ validations:
44
+ required: true
45
+
46
+ - type: textarea
47
+ attributes:
48
+ label: 🔀 Alternatives
49
+ description: >
50
+ A description of any alternative solutions or features you've
51
+ considered, if any.
52
+
53
+ - type: textarea
54
+ attributes:
55
+ label: 📚 Additional context
56
+ description: >
57
+ Add any other context or screenshots about the feature request.
.github/ISSUE_TEMPLATE/2-documentation.yaml ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: "📚 Typos and Documentation Fixes"
2
+ description: Tell us about how we can improve our documentation
3
+ title: Title of your documentation/typo fix/request
4
+ labels: ["documentation"]
5
+
6
+ body:
7
+
8
+ - type: markdown
9
+ attributes:
10
+ value: Thanks for taking the time to fill out this documentation report 🙏 !
11
+
12
+ - type: checkboxes
13
+ attributes:
14
+ label: ✅ Code of conduct checklist
15
+ description: >
16
+ Before submitting a bug, please make sure you went through the following
17
+ steps.
18
+ options:
19
+ - label: "🌱 I am using the **_latest version_** of the [code](https://github.com/drprojects/superpoint_transformer/tree/master)."
20
+ required: true
21
+ - label: "📙 I went through the [README](https://github.com/drprojects/superpoint_transformer/blob/master/README.md), but could not find the appropriate documentation there."
22
+ required: true
23
+ - label: "📘 I went through the tutorial [slides](media/superpoint_transformer_tutorial.pdf), [notebook](notebooks/superpoint_transformer_tutorial.ipynb), and [video](https://www.youtube.com/watch?v=2qKhpQs9gJw), but could not find the appropriate documentation there."
24
+ required: true
25
+ - label: "📗 I went through the [documentation](https://github.com/drprojects/superpoint_transformer/tree/master/docs), but could not find the appropriate documentation there."
26
+ required: true
27
+ - label: "📜 I went through the **_docstrings_** and **_comments_** in the [source code](https://github.com/drprojects/superpoint_transformer/tree/master) parts relevant to my problem, but could not find the appropriate documentation there."
28
+ required: true
29
+ - label: "👩‍🔧 I searched for [**_similar issues_**](https://github.com/drprojects/superpoint_transformer/issues), but could not find the appropriate documentation there."
30
+ required: true
31
+ - label: "⭐ Since I am showing interest in the project, I took the time to give the [repo](https://github.com/drprojects/superpoint_transformer/tree/master) a ⭐ to show support. **Please do, it means a lot to us !**"
32
+ required: true
33
+
34
+ - type: textarea
35
+ attributes:
36
+ label: 📚 Describe the documentation issue
37
+ description: |
38
+ A clear and concise description of the issue.
39
+ validations:
40
+ required: true
41
+
42
+ - type: textarea
43
+ attributes:
44
+ label: Suggest a potential alternative/fix
45
+ description: |
46
+ Tell us how we could improve the documentation in this regard.
.github/ISSUE_TEMPLATE/3-refactor.yaml ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: "🛠 Refactor"
2
+ description: Suggest a code refactor or deprecation
3
+ title: Title of your refactor/deprecation report
4
+ labels: refactor
5
+
6
+ body:
7
+
8
+ - type: markdown
9
+ attributes:
10
+ value: Thanks for taking the time to fill out this refactor report 🙏 !
11
+
12
+ - type: textarea
13
+ attributes:
14
+ label: 🛠 Proposed Refactor
15
+ description: |
16
+ A clear and concise description of the refactor proposal. Please outline
17
+ the motivation for the proposal. If this is related to another GitHub
18
+ issue, please link here too.
19
+ validations:
20
+ required: true
21
+
22
+ - type: textarea
23
+ attributes:
24
+ label: Suggest a potential alternative/fix
25
+ description: |
26
+ Tell us how we could improve the code in this regard.
27
+ validations:
28
+ required: true
.github/ISSUE_TEMPLATE/config.yaml ADDED
@@ -0,0 +1 @@
 
 
1
+ blank_issues_enabled: false
.github/PULL_REQUEST_TEMPLATE.md ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ## What does this PR do?
2
+
3
+ <!--
4
+ Please include a summary of the change and which issue is fixed.
5
+ Please also include relevant motivation and context.
6
+ List any dependencies that are required for this change.
7
+ List all the breaking changes introduced by this pull request.
8
+ -->
9
+
10
+ Fixes #\<issue_number>
11
+
12
+ ## Before submitting
13
+
14
+ - [ ] Did you make sure **title is self-explanatory** and **the description concisely explains the PR**?
15
+ - [ ] Did you make sure your **PR does only one thing**, instead of bundling different changes together?
16
+ - [ ] Did you list all the **breaking changes** introduced by this pull request?
17
+ - [ ] Did you **test your PR locally** with `pytest` command?
18
+ - [ ] Did you **run pre-commit hooks** with `pre-commit run -a` command?
19
+
20
+ ## Did you have fun?
21
+
22
+ Make sure you had fun coding 🙃
.github/dependabot.yml ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "pip" # See documentation for possible values
9
+ directory: "/" # Location of package manifests
10
+ schedule:
11
+ interval: "daily"
12
+ ignore:
13
+ - dependency-name: "pytorch-lightning"
14
+ update-types: ["version-update:semver-patch"]
15
+ - dependency-name: "torchmetrics"
16
+ update-types: ["version-update:semver-patch"]
.github/workflows/code-quality-main.yaml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Same as `code-quality-pr.yaml` but triggered on commit to main branch
2
+ # and runs on all files (instead of only the changed ones)
3
+
4
+ name: Code Quality Main
5
+
6
+ on:
7
+ push:
8
+ branches: [main]
9
+
10
+ jobs:
11
+ code-quality:
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - name: Checkout
16
+ uses: actions/checkout@v2
17
+
18
+ - name: Set up Python
19
+ uses: actions/setup-python@v2
20
+
21
+ - name: Run pre-commits
22
+ uses: pre-commit/action@v2.0.3
.github/workflows/code-quality-pr.yaml ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This workflow finds which files were changed, prints them,
2
+ # and runs `pre-commit` on those files.
3
+
4
+ # Inspired by the sktime library:
5
+ # https://github.com/alan-turing-institute/sktime/blob/main/.github/workflows/test.yml
6
+
7
+ name: Code Quality PR
8
+
9
+ on:
10
+ pull_request:
11
+ branches: [main, "release/*"]
12
+
13
+ jobs:
14
+ code-quality:
15
+ runs-on: ubuntu-latest
16
+
17
+ steps:
18
+ - name: Checkout
19
+ uses: actions/checkout@v2
20
+
21
+ - name: Set up Python
22
+ uses: actions/setup-python@v2
23
+
24
+ - name: Find modified files
25
+ id: file_changes
26
+ uses: trilom/file-changes-action@v1.2.4
27
+ with:
28
+ output: " "
29
+
30
+ - name: List modified files
31
+ run: echo '${{ steps.file_changes.outputs.files}}'
32
+
33
+ - name: Run pre-commits
34
+ uses: pre-commit/action@v2.0.3
35
+ with:
36
+ extra_args: --files ${{ steps.file_changes.outputs.files}}
.github/workflows/test.yml ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: Tests
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main, "release/*"]
8
+
9
+ jobs:
10
+ run_tests:
11
+ runs-on: ${{ matrix.os }}
12
+
13
+ strategy:
14
+ fail-fast: false
15
+ matrix:
16
+ os: ["ubuntu-latest", "macos-latest"]
17
+ python-version: ["3.7", "3.8", "3.9", "3.10"]
18
+
19
+ timeout-minutes: 10
20
+
21
+ steps:
22
+ - name: Checkout
23
+ uses: actions/checkout@v3
24
+
25
+ - name: Set up Python ${{ matrix.python-version }}
26
+ uses: actions/setup-python@v3
27
+ with:
28
+ python-version: ${{ matrix.python-version }}
29
+
30
+ - name: Install dependencies
31
+ run: |
32
+ python -m pip install --upgrade pip
33
+ pip install -r requirements.txt
34
+ pip install pytest
35
+ pip install sh
36
+
37
+ - name: List dependencies
38
+ run: |
39
+ python -m pip list
40
+
41
+ - name: Run pytest
42
+ run: |
43
+ pytest -v
44
+
45
+ run_tests_windows:
46
+ runs-on: ${{ matrix.os }}
47
+
48
+ strategy:
49
+ fail-fast: false
50
+ matrix:
51
+ os: ["windows-latest"]
52
+ python-version: ["3.7", "3.8", "3.9", "3.10"]
53
+
54
+ timeout-minutes: 10
55
+
56
+ steps:
57
+ - name: Checkout
58
+ uses: actions/checkout@v3
59
+
60
+ - name: Set up Python ${{ matrix.python-version }}
61
+ uses: actions/setup-python@v3
62
+ with:
63
+ python-version: ${{ matrix.python-version }}
64
+
65
+ - name: Install dependencies
66
+ run: |
67
+ python -m pip install --upgrade pip
68
+ pip install -r requirements.txt
69
+ pip install pytest
70
+
71
+ - name: List dependencies
72
+ run: |
73
+ python -m pip list
74
+
75
+ - name: Run pytest
76
+ run: |
77
+ pytest -v
78
+
79
+ # upload code coverage report
80
+ code-coverage:
81
+ runs-on: ubuntu-latest
82
+
83
+ steps:
84
+ - name: Checkout
85
+ uses: actions/checkout@v2
86
+
87
+ - name: Set up Python 3.10
88
+ uses: actions/setup-python@v2
89
+ with:
90
+ python-version: "3.10"
91
+
92
+ - name: Install dependencies
93
+ run: |
94
+ python -m pip install --upgrade pip
95
+ pip install -r requirements.txt
96
+ pip install pytest
97
+ pip install pytest-cov[toml]
98
+ pip install sh
99
+
100
+ - name: Run tests and collect coverage
101
+ run: pytest --cov src # NEEDS TO BE UPDATED WHEN CHANGING THE NAME OF "src" FOLDER
102
+
103
+ - name: Upload coverage to Codecov
104
+ uses: codecov/codecov-action@v3
.gitignore ADDED
@@ -0,0 +1,169 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ pip-wheel-metadata/
24
+ share/python-wheels/
25
+ *.egg-info/
26
+ .installed.cfg
27
+ *.egg
28
+ MANIFEST
29
+
30
+ # PyInstaller
31
+ # Usually these files are written by a python script from a template
32
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
33
+ *.manifest
34
+ *.spec
35
+
36
+ # Installer logs
37
+ pip-log.txt
38
+ pip-delete-this-directory.txt
39
+
40
+ # Unit test / coverage reports
41
+ htmlcov/
42
+ .tox/
43
+ .nox/
44
+ .coverage
45
+ .coverage.*
46
+ .cache
47
+ nosetests.xml
48
+ coverage.xml
49
+ *.cover
50
+ *.py,cover
51
+ .hypothesis/
52
+ .pytest_cache/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ local_settings.py
61
+ db.sqlite3
62
+ db.sqlite3-journal
63
+
64
+ # Flask stuff:
65
+ instance/
66
+ .webassets-cache
67
+
68
+ # Scrapy stuff:
69
+ .scrapy
70
+
71
+ # Sphinx documentation
72
+ docs/_build/
73
+
74
+ # PyBuilder
75
+ target/
76
+
77
+ # Jupyter Notebook
78
+ .ipynb_checkpoints
79
+
80
+ # IPython
81
+ profile_default/
82
+ ipython_config.py
83
+
84
+ # pyenv
85
+ .python-version
86
+
87
+ # pipenv
88
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
90
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
91
+ # install all needed dependencies.
92
+ #Pipfile.lock
93
+
94
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
95
+ __pypackages__/
96
+
97
+ # Celery stuff
98
+ celerybeat-schedule
99
+ celerybeat.pid
100
+
101
+ # SageMath parsed files
102
+ *.sage.py
103
+
104
+ # Environments
105
+ .venv
106
+ env/
107
+ venv/
108
+ ENV/
109
+ env.bak/
110
+ venv.bak/
111
+
112
+ # Spyder project settings
113
+ .spyderproject
114
+ .spyproject
115
+
116
+ # Rope project settings
117
+ .ropeproject
118
+
119
+ # mkdocs documentation
120
+ /site
121
+
122
+ # mypy
123
+ .mypy_cache/
124
+ .dmypy.json
125
+ dmypy.json
126
+
127
+ # Pyre type checker
128
+ .pyre/
129
+
130
+ ### VisualStudioCode
131
+ .vscode/*
132
+ !.vscode/settings.json
133
+ !.vscode/tasks.json
134
+ !.vscode/launch.json
135
+ !.vscode/extensions.json
136
+ *.code-workspace
137
+ **/.vscode
138
+
139
+ # JetBrains
140
+ .idea/
141
+
142
+ # Data & Models
143
+ *.h5
144
+ *.tar
145
+ *.tar.gz
146
+
147
+ # Lightning-Hydra-Template
148
+ configs/local/default.yaml
149
+ data/
150
+ logs/
151
+ .env
152
+ .autoenv
153
+
154
+
155
+ # Superpoint Transformer project
156
+ .idea
157
+ src/dependencies/parallel_cut_pursuit
158
+ src/dependencies/grid_graph
159
+ src/dependencies/FRNN
160
+ src/dependencies/point_geometric_features
161
+ src/dependencies/
162
+ *.pyc
163
+ *DS_Store*
164
+ *.vscode
165
+ *.so
166
+ *.cmake
167
+ *__pycache__*
168
+ *.ipynb*
169
+ notebooks/*
.pre-commit-config.yaml ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ default_language_version:
2
+ python: python3
3
+
4
+ repos:
5
+ - repo: https://github.com/pre-commit/pre-commit-hooks
6
+ rev: v4.3.0
7
+ hooks:
8
+ # list of supported hooks: https://pre-commit.com/hooks.html
9
+ - id: trailing-whitespace
10
+ - id: end-of-file-fixer
11
+ - id: check-docstring-first
12
+ - id: check-yaml
13
+ - id: debug-statements
14
+ - id: detect-private-key
15
+ - id: check-executables-have-shebangs
16
+ - id: check-toml
17
+ - id: check-case-conflict
18
+ - id: check-added-large-files
19
+
20
+ # python code formatting
21
+ - repo: https://github.com/psf/black
22
+ rev: 22.6.0
23
+ hooks:
24
+ - id: black
25
+ args: [--line-length, "99"]
26
+
27
+ # python import sorting
28
+ - repo: https://github.com/PyCQA/isort
29
+ rev: 5.10.1
30
+ hooks:
31
+ - id: isort
32
+ args: ["--profile", "black", "--filter-files"]
33
+
34
+ # python upgrading syntax to newer version
35
+ - repo: https://github.com/asottile/pyupgrade
36
+ rev: v2.32.1
37
+ hooks:
38
+ - id: pyupgrade
39
+ args: [--py38-plus]
40
+
41
+ # python docstring formatting
42
+ - repo: https://github.com/myint/docformatter
43
+ rev: v1.4
44
+ hooks:
45
+ - id: docformatter
46
+ args: [--in-place, --wrap-summaries=99, --wrap-descriptions=99]
47
+
48
+ # python check (PEP8), programming errors and code complexity
49
+ - repo: https://github.com/PyCQA/flake8
50
+ rev: 4.0.1
51
+ hooks:
52
+ - id: flake8
53
+ args:
54
+ [
55
+ "--extend-ignore",
56
+ "E203,E402,E501,F401,F841",
57
+ "--exclude",
58
+ "logs/*,data/*",
59
+ ]
60
+
61
+ # python security linter
62
+ - repo: https://github.com/PyCQA/bandit
63
+ rev: "1.7.1"
64
+ hooks:
65
+ - id: bandit
66
+ args: ["-s", "B101"]
67
+
68
+ # yaml formatting
69
+ - repo: https://github.com/pre-commit/mirrors-prettier
70
+ rev: v2.7.1
71
+ hooks:
72
+ - id: prettier
73
+ types: [yaml]
74
+
75
+ # shell scripts linter
76
+ - repo: https://github.com/shellcheck-py/shellcheck-py
77
+ rev: v0.8.0.4
78
+ hooks:
79
+ - id: shellcheck
80
+
81
+ # md formatting
82
+ - repo: https://github.com/executablebooks/mdformat
83
+ rev: 0.7.14
84
+ hooks:
85
+ - id: mdformat
86
+ args: ["--number"]
87
+ additional_dependencies:
88
+ - mdformat-gfm
89
+ - mdformat-tables
90
+ - mdformat_frontmatter
91
+ # - mdformat-toc
92
+ # - mdformat-black
93
+
94
+ # word spelling linter
95
+ - repo: https://github.com/codespell-project/codespell
96
+ rev: v2.1.0
97
+ hooks:
98
+ - id: codespell
99
+ args:
100
+ - --skip=logs/**,data/**,*.ipynb
101
+ # - --ignore-words-list=abc,def
102
+
103
+ # jupyter notebook cell output clearing
104
+ - repo: https://github.com/kynan/nbstripout
105
+ rev: 0.5.0
106
+ hooks:
107
+ - id: nbstripout
108
+
109
+ # jupyter notebook linting
110
+ - repo: https://github.com/nbQA-dev/nbQA
111
+ rev: 1.4.0
112
+ hooks:
113
+ - id: nbqa-black
114
+ args: ["--line-length=99"]
115
+ - id: nbqa-isort
116
+ args: ["--profile=black"]
117
+ - id: nbqa-flake8
118
+ args:
119
+ [
120
+ "--extend-ignore=E203,E402,E501,F401,F841",
121
+ "--exclude=logs/*,data/*",
122
+ ]
.project-root ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ # this file is required for inferring the project root directory
2
+ # do not delete