numpy2 2.1.0__tar.gz → 2.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.
Files changed (28) hide show
  1. {numpy2-2.1.0 → numpy2-2.2.0}/CONTRIBUTING.md +113 -113
  2. {numpy2-2.1.0 → numpy2-2.2.0}/LICENSE +21 -21
  3. {numpy2-2.1.0 → numpy2-2.2.0}/MANIFEST.in +4 -4
  4. {numpy2-2.1.0/numpy2.egg-info → numpy2-2.2.0}/PKG-INFO +44 -5
  5. {numpy2-2.1.0 → numpy2-2.2.0}/README.md +529 -490
  6. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/__init__.py +476 -475
  7. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/advanced.py +572 -572
  8. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/array.py +1718 -1718
  9. numpy2-2.2.0/numpy2/compat.py +195 -0
  10. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/converters.py +213 -213
  11. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/core.py +324 -324
  12. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/dtypes.py +219 -219
  13. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/fft.py +226 -226
  14. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/integrations.py +204 -204
  15. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/linalg.py +418 -418
  16. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/math_ops.py +690 -690
  17. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2/random.py +425 -425
  18. {numpy2-2.1.0 → numpy2-2.2.0/numpy2.egg-info}/PKG-INFO +44 -5
  19. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2.egg-info/SOURCES.txt +2 -0
  20. {numpy2-2.1.0 → numpy2-2.2.0}/pyproject.toml +102 -102
  21. {numpy2-2.1.0 → numpy2-2.2.0}/setup.py +103 -103
  22. numpy2-2.2.0/tests/test_compat.py +18 -0
  23. {numpy2-2.1.0 → numpy2-2.2.0}/tests/test_core.py +379 -379
  24. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2.egg-info/dependency_links.txt +0 -0
  25. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2.egg-info/not-zip-safe +0 -0
  26. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2.egg-info/requires.txt +0 -0
  27. {numpy2-2.1.0 → numpy2-2.2.0}/numpy2.egg-info/top_level.txt +0 -0
  28. {numpy2-2.1.0 → numpy2-2.2.0}/setup.cfg +0 -0
@@ -1,113 +1,113 @@
1
- # Contributing to numpy2
2
-
3
- Thank you for your interest in contributing to **numpy2**! We welcome all contributions, from bug reports to feature requests to code changes.
4
-
5
- ## Getting Started
6
-
7
- ### 1. Fork and Clone
8
-
9
- ```bash
10
- git clone https://github.com/maheshmakvana/numpy2.git
11
- cd numpy2
12
- ```
13
-
14
- ### 2. Create Development Environment
15
-
16
- ```bash
17
- python -m venv venv
18
- source venv/bin/activate # On Windows: venv\Scripts\activate
19
-
20
- pip install -e ".[dev]"
21
- ```
22
-
23
- ### 3. Create Feature Branch
24
-
25
- ```bash
26
- git checkout -b feature/your-feature-name
27
- ```
28
-
29
- ## Development Guidelines
30
-
31
- ### Code Style
32
-
33
- - Follow PEP 8 guidelines
34
- - Use 4 spaces for indentation
35
- - Maximum line length: 100 characters
36
- - Use type hints where appropriate
37
-
38
- ### Testing
39
-
40
- All new features must include tests:
41
-
42
- ```bash
43
- pytest tests/ -v
44
- pytest tests/ --cov=numpy2 # Check coverage
45
- ```
46
-
47
- ### Documentation
48
-
49
- - Update README.md for user-facing features
50
- - Add docstrings to all functions
51
- - Include examples in docstrings
52
-
53
- ### Commit Messages
54
-
55
- Write clear, descriptive commit messages:
56
-
57
- ```
58
- [TYPE] Brief description
59
-
60
- Longer explanation of the change and why it was made.
61
-
62
- Fixes #123
63
- ```
64
-
65
- Types: `feat`, `fix`, `docs`, `style`, `refactor`, `test`, `chore`
66
-
67
- ## Reporting Issues
68
-
69
- When reporting bugs, include:
70
-
71
- 1. Python version
72
- 2. numpy2 version
73
- 3. Minimal code example that reproduces the bug
74
- 4. Expected vs. actual behavior
75
- 5. Error traceback (if applicable)
76
-
77
- ## Feature Requests
78
-
79
- When suggesting features:
80
-
81
- 1. Explain the use case
82
- 2. Provide example code
83
- 3. Explain how it solves a problem
84
- 4. Consider potential edge cases
85
-
86
- ## Pull Request Process
87
-
88
- 1. Update tests and documentation
89
- 2. Ensure all tests pass: `pytest tests/ -v`
90
- 3. Check code style: `flake8 numpy2/`
91
- 4. Run type checker: `mypy numpy2/`
92
- 5. Create pull request with clear description
93
-
94
- ## Code Review Process
95
-
96
- - Maintainers will review your PR
97
- - May ask for changes or clarifications
98
- - Once approved, we'll merge your contribution
99
-
100
- ## Questions?
101
-
102
- Feel free to:
103
- - Open an issue on GitHub
104
- - Start a discussion
105
- - Contact: mahesh.makvana@example.com
106
-
107
- ## License
108
-
109
- By contributing, you agree that your contributions will be licensed under the MIT License.
110
-
111
- ---
112
-
113
- **Thank you for contributing to numpy2! 🙏**
1
+ # Contributing to numpy2
2
+
3
+ Thank you for your interest in contributing to **numpy2**! We welcome all contributions, from bug reports to feature requests to code changes.
4
+
5
+ ## Getting Started
6
+
7
+ ### 1. Fork and Clone
8
+
9
+ ```bash
10
+ git clone https://github.com/maheshmakvana/numpy2.git
11
+ cd numpy2
12
+ ```
13
+
14
+ ### 2. Create Development Environment
15
+
16
+ ```bash
17
+ python -m venv venv
18
+ source venv/bin/activate # On Windows: venv\Scripts\activate
19
+
20
+ pip install -e ".[dev]"
21
+ ```
22
+
23
+ ### 3. Create Feature Branch
24
+
25
+ ```bash
26
+ git checkout -b feature/your-feature-name
27
+ ```
28
+
29
+ ## Development Guidelines
30
+
31
+ ### Code Style
32
+
33
+ - Follow PEP 8 guidelines
34
+ - Use 4 spaces for indentation
35
+ - Maximum line length: 100 characters
36
+ - Use type hints where appropriate
37
+
38
+ ### Testing
39
+
40
+ All new features must include tests:
41
+
42
+ ```bash
43
+ pytest tests/ -v
44
+ pytest tests/ --cov=numpy2 # Check coverage
45
+ ```
46
+
47
+ ### Documentation
48
+
49
+ - Update README.md for user-facing features
50
+ - Add docstrings to all functions
51
+ - Include examples in docstrings
52
+
53
+ ### Commit Messages
54
+
55
+ Write clear, descriptive commit messages:
56
+
57
+ ```
58
+ [TYPE] Brief description
59
+
60
+ Longer explanation of the change and why it was made.
61
+
62
+ Fixes #123
63
+ ```
64
+
65
+ Types: `feat`, `fix`, `docs`, `style`, `refactor`, `test`, `chore`
66
+
67
+ ## Reporting Issues
68
+
69
+ When reporting bugs, include:
70
+
71
+ 1. Python version
72
+ 2. numpy2 version
73
+ 3. Minimal code example that reproduces the bug
74
+ 4. Expected vs. actual behavior
75
+ 5. Error traceback (if applicable)
76
+
77
+ ## Feature Requests
78
+
79
+ When suggesting features:
80
+
81
+ 1. Explain the use case
82
+ 2. Provide example code
83
+ 3. Explain how it solves a problem
84
+ 4. Consider potential edge cases
85
+
86
+ ## Pull Request Process
87
+
88
+ 1. Update tests and documentation
89
+ 2. Ensure all tests pass: `pytest tests/ -v`
90
+ 3. Check code style: `flake8 numpy2/`
91
+ 4. Run type checker: `mypy numpy2/`
92
+ 5. Create pull request with clear description
93
+
94
+ ## Code Review Process
95
+
96
+ - Maintainers will review your PR
97
+ - May ask for changes or clarifications
98
+ - Once approved, we'll merge your contribution
99
+
100
+ ## Questions?
101
+
102
+ Feel free to:
103
+ - Open an issue on GitHub
104
+ - Start a discussion
105
+ - Contact: mahesh.makvana@example.com
106
+
107
+ ## License
108
+
109
+ By contributing, you agree that your contributions will be licensed under the MIT License.
110
+
111
+ ---
112
+
113
+ **Thank you for contributing to numpy2! 🙏**
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2024 Mahesh Makvana
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Mahesh Makvana
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1,4 +1,4 @@
1
- include README.md
2
- include LICENSE
3
- include CONTRIBUTING.md
4
- recursive-include numpy2 *.py
1
+ include README.md
2
+ include LICENSE
3
+ include CONTRIBUTING.md
4
+ recursive-include numpy2 *.py
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: numpy2
3
- Version: 2.1.0
3
+ Version: 2.2.0
4
4
  Summary: Pure-Python NumPy drop-in: full NumPy API + JSON serialization, array compression, pipeline transforms, schema validation, zero dependencies
5
5
  Home-page: https://github.com/maheshmakvana/numpy2
6
6
  Author: Mahesh Makvana
@@ -50,8 +50,6 @@ Dynamic: requires-python
50
50
 
51
51
  # numpy2 - Advanced NumPy for Web Applications
52
52
 
53
- **Built by [Mahesh Makvana](https://github.com/maheshmakvana)**
54
-
55
53
  [![PyPI version](https://img.shields.io/pypi/v/numpy2.svg)](https://pypi.org/project/numpy2/)
56
54
  [![Python Version](https://img.shields.io/pypi/pyversions/numpy2.svg)](https://pypi.org/project/numpy2/)
57
55
  [![Downloads](https://img.shields.io/pypi/dm/numpy2.svg)](https://pypi.org/project/numpy2/)
@@ -106,6 +104,20 @@ That's it. One line. Problem solved.
106
104
 
107
105
  ---
108
106
 
107
+ ## Compatibility (Supported Subset)
108
+
109
+ `numpy2` aims to be a practical, pure-Python **subset** of NumPy. Some APIs are intentionally stubbed or only partially supported.
110
+
111
+ Use `numpy2.compat.report()` to disclose what’s currently stubbed/high-risk:
112
+
113
+ ```python
114
+ import numpy2 as np2
115
+
116
+ report = np2.compat.report()
117
+ print(report["subset"]["mgrid"])
118
+ print(report["summary"])
119
+ ```
120
+
109
121
  ## 📊 How numpy2 Compares to Alternatives
110
122
 
111
123
  ### vs. Standard `json.dumps()` with Custom Encoders
@@ -542,6 +554,33 @@ Thanks to the NumPy and pandas communities for amazing libraries that numpy2 bui
542
554
 
543
555
  ---
544
556
 
545
- **Made with ❤️ by Mahesh Makvana**
557
+ ## Changelog
558
+
559
+ ### v2.1.0 (2026-04-10)
560
+ - Added Changelog section to README for release traceability
561
+ - Added ArrayCache, ArrayPipeline, ArrayValidator, compression helpers, sliding_window_view, batch_apply, describe
562
+ - SEO improvements: numpy json serialization, numpy web api, numpy fastapi
563
+
564
+ ### v2.0.1
565
+ - SEO improvements, zero-dep fix
566
+
567
+ ### v2.0.0
568
+ - Initial release: pure-Python NumPy drop-in with JSON serialization, FastAPI/Flask/Django integration
569
+
570
+ ## Contributing
571
+
572
+ Contributions are welcome! Here's how to get started:
573
+
574
+ 1. Fork the repository on [GitHub](https://github.com/maheshmakvana/numpy2)
575
+ 2. Create a feature branch: `git checkout -b feature/your-feature`
576
+ 3. Make your changes and add tests
577
+ 4. Run the test suite: `pytest tests/ -v`
578
+ 5. Submit a pull request
579
+
580
+ Please open an issue first for major changes to discuss the approach.
581
+
582
+ ## Author
583
+
584
+ **Mahesh Makvana** — [GitHub](https://github.com/maheshmakvana) · [PyPI](https://pypi.org/user/maheshmakvana/)
546
585
 
547
- *Simplifying NumPy for the web, one line of code at a time.*
586
+ MIT License