Skip to content

Commit b24a208

Browse files
committed
reinit the repository. release of 0.2.0.
On 0.2.0, we got prepared for open-sourcing this project by following. - The project is renamed from "meow2" to "mahos", in order to avoid potential trademark infringement. - The git repository has been re-initialized to avoid exposing internal information of the company. We had 789 commits since 2022-01-19, almost all of which is by Kosuke Tahara.
0 parents  commit b24a208

File tree

425 files changed

+69817
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

425 files changed

+69817
-0
lines changed

.editorconfig

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
root = true
2+
3+
[*]
4+
trim_trailing_whitespace = true
5+
6+
[Makefile]
7+
indent_style = tab

.github/workflows/python-package.yaml

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: Python package
2+
3+
on: [push]
4+
5+
jobs:
6+
build:
7+
runs-on: ${{ matrix.os }}
8+
strategy:
9+
matrix:
10+
os: [ubuntu-20.04]
11+
python-version: ["3.8", "3.9", "3.10"]
12+
steps:
13+
- uses: actions/checkout@v2
14+
- name: Set up Python ${{ matrix.python-version }}
15+
uses: actions/setup-python@v2
16+
with:
17+
python-version: ${{ matrix.python-version }}
18+
- name: Install dependencies
19+
run: |
20+
sudo apt-get install -y libgraphviz-dev
21+
python -m pip install --upgrade pip
22+
pip install pytest pytest-timeout
23+
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
24+
pip install .
25+
- name: Lint with flake8
26+
run: |
27+
flake8 . --statistics
28+
- name: Formatting check with black
29+
run: |
30+
black . --check
31+
- name: Test with pytest
32+
run: |
33+
pytest --timeout=30

.gitignore

+174
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,174 @@
1+
# editors
2+
!/.editorconfig
3+
.vscode
4+
*~
5+
6+
# generated docs
7+
docs/source/*/generated
8+
9+
# binaries / caches / generated data
10+
*.h5
11+
*.pkl
12+
*.dat
13+
*.png
14+
*.pdf
15+
*.dll
16+
*.svg
17+
.DS_Store
18+
Thumbs.db
19+
Share.lnk
20+
21+
## Below is copied from github/gitignore/Python.gitignore
22+
23+
# Byte-compiled / optimized / DLL files
24+
__pycache__/
25+
*.py[cod]
26+
*$py.class
27+
28+
# C extensions
29+
*.so
30+
31+
# Distribution / packaging
32+
.Python
33+
build/
34+
develop-eggs/
35+
dist/
36+
downloads/
37+
eggs/
38+
.eggs/
39+
lib/
40+
lib64/
41+
parts/
42+
sdist/
43+
var/
44+
wheels/
45+
share/python-wheels/
46+
*.egg-info/
47+
.installed.cfg
48+
*.egg
49+
MANIFEST
50+
51+
# PyInstaller
52+
# Usually these files are written by a python script from a template
53+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
54+
*.manifest
55+
*.spec
56+
57+
# Installer logs
58+
pip-log.txt
59+
pip-delete-this-directory.txt
60+
61+
# Unit test / coverage reports
62+
htmlcov/
63+
.tox/
64+
.nox/
65+
.coverage
66+
.coverage.*
67+
.cache
68+
nosetests.xml
69+
coverage.xml
70+
*.cover
71+
*.py,cover
72+
.hypothesis/
73+
.pytest_cache/
74+
cover/
75+
76+
# Translations
77+
*.mo
78+
*.pot
79+
80+
# Django stuff:
81+
*.log
82+
local_settings.py
83+
db.sqlite3
84+
db.sqlite3-journal
85+
86+
# Flask stuff:
87+
instance/
88+
.webassets-cache
89+
90+
# Scrapy stuff:
91+
.scrapy
92+
93+
# Sphinx documentation
94+
docs/_build/
95+
96+
# PyBuilder
97+
.pybuilder/
98+
target/
99+
100+
# Jupyter Notebook
101+
.ipynb_checkpoints
102+
103+
# IPython
104+
profile_default/
105+
ipython_config.py
106+
107+
# pyenv
108+
# For a library or package, you might want to ignore these files since the code is
109+
# intended to run in multiple environments; otherwise, check them in:
110+
# .python-version
111+
112+
# pipenv
113+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
114+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
115+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
116+
# install all needed dependencies.
117+
#Pipfile.lock
118+
119+
# poetry
120+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
121+
# This is especially recommended for binary packages to ensure reproducibility, and is more
122+
# commonly ignored for libraries.
123+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
124+
#poetry.lock
125+
126+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
127+
__pypackages__/
128+
129+
# Celery stuff
130+
celerybeat-schedule
131+
celerybeat.pid
132+
133+
# SageMath parsed files
134+
*.sage.py
135+
136+
# Environments
137+
.env
138+
.venv
139+
env/
140+
venv/
141+
ENV/
142+
env.bak/
143+
venv.bak/
144+
145+
# Spyder project settings
146+
.spyderproject
147+
.spyproject
148+
149+
# Rope project settings
150+
.ropeproject
151+
152+
# mkdocs documentation
153+
/site
154+
155+
# mypy
156+
.mypy_cache/
157+
.dmypy.json
158+
dmypy.json
159+
160+
# Pyre type checker
161+
.pyre/
162+
163+
# pytype static type analyzer
164+
.pytype/
165+
166+
# Cython debug symbols
167+
cython_debug/
168+
169+
# PyCharm
170+
# JetBrains specific template is maintainted in a separate JetBrains.gitignore that can
171+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
172+
# and can be added to the global gitignore or merged into this file. For a more nuclear
173+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
174+
#.idea/

CHANGELOG.rst

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
=========
2+
Changelog
3+
=========
4+
5+
[0.2.0] - 2023-07-10
6+
--------------------
7+
8+
On 0.2.0, we have got prepared for open-sourcing this project by following.
9+
10+
- The project is renamed from "meow2" to "mahos", in order to avoid potential trademark infringement.
11+
- The git repository has been re-initialized to avoid exposing internal information of the company.
12+
13+
Added
14+
^^^^^
15+
16+
- ParamDict type: provides functions like unwrap, flattened view, isclose comparison
17+
- gui/basic_meas, gui/fit_widget based on it
18+
- gui/pulse_monitor
19+
- Buffer and Fit functions for BasicMeasNode (podmr, odmr, spectroscopy, hbt)
20+
- Block/Blocks types for pulse generators
21+
- odmr: background (differential) measurement
22+
- file io: HDF5 (h5) file format
23+
- settings of dev. tools: lint (flake8) and formatter (black)
24+
25+
Changed
26+
^^^^^^^
27+
28+
- project name: meow2 to mahos
29+
- gui: Switched from PyQt5 to PyQt6
30+
- gui: Switched from QDarkStyle to BreezeStyleSheet
31+
- podmr: almost rewrite the pulse generator and gui
32+
33+
Fixed
34+
^^^^^
35+
36+
- inst/tdc: bug of set_sweep_preset
37+
- inst/tdc: load_ctl is now load_config
38+
- meas/odmr_fitter: avoid zero division
39+
- gui/hbt,podmr: bug of disrupting UI
40+
41+
[0.1.0] - 2023-03-01
42+
--------------------
43+
44+
Initial release

CONTRIBUTING.rst

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
Contributing to mahos
2+
=====================
3+
4+
Thank you so much for investing your time in contributing to our project.
5+
Any contributions including bug reports and patches are always welcomed.
6+
7+
Bug reports
8+
-----------
9+
10+
Please submit a new issue for a bug report.
11+
12+
Patches
13+
-------
14+
15+
Please submit a pull request for your patch after reviewing the notes below.
16+
17+
Testing
18+
^^^^^^^
19+
20+
Please use following commands in the project's root directory in order to check your patch can be merged.
21+
You can also hit ``make`` to do all.
22+
23+
- ``black .`` to format the codes.
24+
- ``flake8 .`` for code linting.
25+
- ``pytest`` to check whether all the unit tests are passing.
26+
27+
Contributor License Agreement
28+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
29+
30+
To avoid possible legal (copyright, patent, etc.) issues, we ask you to sign
31+
the Contributor License Agreement (CLA) before merging your contribution.
32+
The signing process can be done on the GitHub pull request page.
33+
Please follow the instructions by "CLA Assistant Lite bot" there.

LICENSE

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
Copyright (c) 2022, Toyota Central R&D Labs., Inc.
2+
3+
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
4+
5+
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
6+
7+
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8+
9+
3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
10+
11+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

MANIFEST.in

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
include mahos/gui/breeze_resources/dark/*.svg
2+
include mahos/gui/breeze_resources/dark/*.qss

Makefile

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
.PHONY: all test lint format docs browse clean
2+
3+
ifeq ($(OS),Windows_NT)
4+
OPEN := "start"
5+
else
6+
UNAME := $(shell uname -s)
7+
ifeq ($(UNAME),Linux)
8+
OPEN := xdg-open
9+
else
10+
OPEN := open
11+
endif
12+
endif
13+
14+
all: format lint test
15+
16+
test:
17+
pytest --timeout=10
18+
19+
lint:
20+
flake8 . --show-source --statistics
21+
22+
format:
23+
black .
24+
25+
docs:
26+
cd docs && make html
27+
28+
browse: docs
29+
$(OPEN) docs/build/html/index.html
30+
31+
clean:
32+
$(RM) -r docs/build
33+
$(RM) -r docs/source/*/generated

0 commit comments

Comments
 (0)