svy 0.0.1__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 svy might be problematic. Click here for more details.

@@ -0,0 +1,2 @@
1
+ # SCM syntax highlighting & preventing 3-way merges
2
+ pixi.lock merge=binary linguist-language=YAML linguist-generated=true
svy-0.0.1/.gitignore ADDED
@@ -0,0 +1,155 @@
1
+
2
+ # Created by https://www.gitignore.io/api/python
3
+ # Edit at https://www.gitignore.io/?templates=python
4
+
5
+ ### Python ###
6
+ # Byte-compiled / optimized / DLL files
7
+ __pycache__/
8
+ *.py[cod]
9
+ *$py.class
10
+
11
+ # C extensions and executables
12
+ *.so
13
+ *.sh
14
+ run
15
+
16
+ # Distribution / packaging
17
+ .Python
18
+ build/
19
+ develop-eggs/
20
+ dist/
21
+ downloads/
22
+ eggs/
23
+ .eggs/
24
+ lib/
25
+ lib64/
26
+ parts/
27
+ sdist/
28
+ var/
29
+ wheels/
30
+ pip-wheel-metadata/
31
+ share/python-wheels/
32
+ *.egg-info/
33
+ .installed.cfg
34
+ *.egg
35
+ MANIFEST
36
+
37
+ # PyInstaller
38
+ # Usually these files are written by a python script from a template
39
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
40
+ *.manifest
41
+ *.spec
42
+
43
+ # Installer logs
44
+ pip-log.txt
45
+ pip-delete-this-directory.txt
46
+
47
+ # Unit test / coverage reports / linting
48
+ htmlcov/
49
+ .tox/
50
+ .nox/
51
+ .coverage
52
+ .coverage.*
53
+ .cache
54
+ nosetests.xml
55
+ coverage.xml
56
+ *.cover
57
+ .hypothesis/
58
+ .pytest_cache/
59
+ *.xml
60
+
61
+ # Translations
62
+ *.mo
63
+ *.pot
64
+
65
+ # Scrapy stuff:
66
+ .scrapy
67
+
68
+ # Sphinx documentation
69
+ docs/src/
70
+ docs/_build/
71
+ docs/_static/
72
+ docs/.quarto/
73
+ _docs/
74
+ ._readthedocs.yaml
75
+
76
+ # PyBuilder
77
+ target/
78
+
79
+ # pyenv
80
+ .python-version
81
+ .venv
82
+
83
+ # celery beat schedule file
84
+ celerybeat-schedule
85
+
86
+ # SageMath parsed files
87
+ *.sage.py
88
+
89
+ # Spyder project settings
90
+ .spyderproject
91
+ .spyproject
92
+
93
+ # Rope project settings
94
+ .ropeproject
95
+
96
+ # Mr Developer
97
+ .mr.developer.cfg
98
+ .project
99
+ .pydevproject
100
+
101
+ # mkdocs documentation
102
+ /site
103
+ .virtual_documents/
104
+
105
+ # mypy and other type checkers
106
+ .mypy_cache/
107
+ .dmypy.json
108
+ dmypy.json
109
+ .pyre
110
+ .pytype
111
+
112
+ # IDE and Editors
113
+ .idea
114
+ .vscode
115
+ *.code-workspace
116
+ .vim
117
+
118
+ #MacOS
119
+ .DS_Store
120
+
121
+ # Github
122
+ # .github
123
+
124
+ #Extra
125
+ issues/
126
+ data/
127
+ metadata/
128
+ extra_data/
129
+ reference_material/
130
+ notebooks/*
131
+ presentations/*/
132
+ *.ipynb_checkpoints/
133
+ roadmap/
134
+ roadmap.md
135
+ specs/
136
+ benchmarks/
137
+
138
+ # uv, ruff and others
139
+ *.lock
140
+ *.ruff*
141
+
142
+ # Temporary exclusions
143
+ **/pkgs/
144
+
145
+ # R
146
+ .Rproj.user
147
+ *.Rhistory
148
+
149
+ # pixi environments
150
+ .pixi
151
+ *.egg-info
152
+
153
+ # Other
154
+ /.luarc.json
155
+ *.docx
svy-0.0.1/PKG-INFO ADDED
@@ -0,0 +1,20 @@
1
+ Metadata-Version: 2.4
2
+ Name: svy
3
+ Version: 0.0.1
4
+ Summary: Design and analysis of complex sample data
5
+ Author-email: Mamadou S Diallo <me@msdiallo.io>
6
+ Keywords: estimation,sample,sampling,survey,weighting
7
+ Classifier: Development Status :: 4 - Beta
8
+ Classifier: Operating System :: OS Independent
9
+ Classifier: Programming Language :: Python :: 3.11
10
+ Classifier: Programming Language :: Python :: 3.12
11
+ Classifier: Programming Language :: Python :: 3.13
12
+ Classifier: Programming Language :: Python :: Implementation :: CPython
13
+ Classifier: Topic :: Scientific/Engineering
14
+ Requires-Python: >=3.11
15
+ Requires-Dist: msgspec>=0.19.0
16
+ Requires-Dist: numpy>=2.1
17
+ Requires-Dist: polars>=1.25.0
18
+ Requires-Dist: pyarrow>=19.0
19
+ Requires-Dist: scipy>=1.16.0
20
+ Requires-Dist: statsmodels>=0.14
svy-0.0.1/README.md ADDED
File without changes
svy-0.0.1/py.typed ADDED
@@ -0,0 +1 @@
1
+ # Marker file for PEP 561. The samplics package uses inline types.
@@ -0,0 +1,182 @@
1
+ [project]
2
+ name = "svy"
3
+ version = "0.0.1"
4
+ description = "Design and analysis of complex sample data"
5
+ readme = "README.md"
6
+ authors = [{ name = "Mamadou S Diallo", email = "me@msdiallo.io" }]
7
+ keywords = ["sampling", "sample", "weighting", "estimation", "survey"]
8
+ classifiers = [
9
+ "Programming Language :: Python :: Implementation :: CPython",
10
+ "Programming Language :: Python :: 3.11",
11
+ "Programming Language :: Python :: 3.12",
12
+ "Programming Language :: Python :: 3.13",
13
+ "Development Status :: 4 - Beta",
14
+ "Operating System :: OS Independent",
15
+ "Topic :: Scientific/Engineering",
16
+ ]
17
+
18
+
19
+ requires-python = ">=3.11"
20
+ dependencies = [
21
+ "msgspec>=0.19.0",
22
+ "numpy>=2.1",
23
+ "polars>=1.25.0",
24
+ "pyarrow>=19.0",
25
+ "scipy>=1.16.0",
26
+ "statsmodels >=0.14",
27
+ ]
28
+
29
+ [dependency-groups]
30
+ dev = [
31
+ "codecov",
32
+ "httpx",
33
+ "jupyterlab",
34
+ "pytest",
35
+ "pytest-cov",
36
+ "tqdm",
37
+ "ty>=0.0.1a7",
38
+ ]
39
+
40
+ # [project.scripts]
41
+ # svy = "svy:main"
42
+
43
+
44
+ [tool.black]
45
+ exclude = '''
46
+ /(
47
+ \.eggs
48
+ | \.git
49
+ | \.hg
50
+ | \.mypy_cache
51
+ | \.tox
52
+ | \.venv
53
+ | _build
54
+ | buck-out
55
+ | build
56
+ | dist
57
+ )/
58
+ '''
59
+ # line-length = 99
60
+ # target-version = ["py312", "py313"]
61
+
62
+ [tool.pytest.ini_options]
63
+ addopts = "--ignore=tests/apis --ignore=tests/sae --ignore=tests/types"
64
+
65
+ # testpaths = ["tests"]
66
+
67
+
68
+ [tool.ruff]
69
+ line-length = 99
70
+ target-version = "py313"
71
+ src = ["src", "tests"]
72
+ exclude = [".venv", "build", "dist"]
73
+
74
+ [tool.ruff.lint]
75
+ select = ["D", "E", "F", "W", "I001"]
76
+ ignore = ["D", "E501"] # for development we can ignore the docs
77
+
78
+ # Exclude a variety of commonly ignored directories.
79
+ exclude = [".venv", "tests"]
80
+
81
+
82
+ [tool.ruff.lint.pycodestyle]
83
+ ignore-overlong-task-comments = true
84
+ [tool.ruff.lint.mccabe]
85
+ # Unlike Flake8, default to a complexity level of 10.
86
+ max-complexity = 10
87
+
88
+ [tool.ruff.lint.isort]
89
+ known-first-party = ["svy"]
90
+ known-third-party = [
91
+ "matplotlib",
92
+ "numpy",
93
+ "pandas",
94
+ "polars",
95
+ "pydantic",
96
+ "scipy",
97
+ "statsmodels",
98
+ ]
99
+ lines-after-imports = 2
100
+ lines-between-types = 1
101
+
102
+ [tool.ty.src]
103
+ root = "./src"
104
+
105
+ [tool.ty.rules]
106
+ unused-ignore-comment = "ignore"
107
+
108
+ [tool.ty.environment]
109
+ python = "./.venv"
110
+
111
+ [tool.mypy]
112
+ ignore_missing_imports = true
113
+ follow_imports = "silent"
114
+ strict_optional = true
115
+ allow_redefinition = true
116
+ show_error_context = false
117
+ show_column_numbers = true
118
+ # Ensure full coverage
119
+ disallow_untyped_calls = true
120
+ disallow_untyped_defs = true
121
+ disallow_incomplete_defs = true
122
+ disallow_untyped_decorators = true
123
+ # Restrict dynamic typing
124
+ disallow_any_generics = false
125
+ warn_no_return = true
126
+ warn_return_any = true
127
+ no_implicit_optional = true
128
+ # Know what you are doing
129
+ warn_unreachable = true
130
+ warn_redundant_casts = true
131
+ warn_unused_ignores = true
132
+ warn_unused_configs = true
133
+ exclude = [".venv", "tests"]
134
+
135
+ [build-system]
136
+ requires = ["hatchling"]
137
+ build-backend = "hatchling.build"
138
+
139
+ [tool.hatch.build.targets.sdist]
140
+ sources = ["src"]
141
+ exclude = [
142
+ "tests",
143
+ "tests/*",
144
+ "svy-rust",
145
+ "svy-mojo",
146
+ "src/svy/core/*",
147
+ "src/svy/modules/*",
148
+ "src/svy/utils/*",
149
+ ]
150
+
151
+ [tool.hatch.build.targets.wheel]
152
+ sources = ["src"]
153
+ exclude = [
154
+ "tests",
155
+ "tests/*",
156
+ "svy-rust",
157
+ "svy-mojo",
158
+ "src/svy/core/*",
159
+ "src/svy/modules/*",
160
+ "src/svy/utils/*",
161
+ ]
162
+
163
+ # Pixi section for Mojo, hoepefully will be able to remove it one day
164
+ # [tool.pixi.workspace]
165
+ # channels = [
166
+ # "https://conda.modular.com/max",
167
+ # "https://repo.prefix.dev/modular-community",
168
+ # "conda-forge",
169
+ # ]
170
+ # platforms = ["osx-arm64"]
171
+
172
+ # [tool.pixi.pypi-dependencies]
173
+ # svy = { path = ".", editable = true }
174
+
175
+ # [tool.pixi.environments]
176
+ # default = { solve-group = "default" }
177
+ # dev = { features = ["dev"], solve-group = "default" }
178
+
179
+ # [tool.pixi.tasks]
180
+
181
+ # [tool.pixi.dependencies]
182
+ # max = ">=25.4"
@@ -0,0 +1,3 @@
1
+ __version__ = "0.0.1"
2
+
3
+ print("A PLACEHOLDER FOR AN UPCOMING SURVEY ANALYSIS PACKAGE!!!")