helpscout-mailbox 1.0.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.
@@ -0,0 +1,62 @@
1
+ # Python
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+ *.so
6
+ .Python
7
+ build/
8
+ develop-eggs/
9
+ dist/
10
+ downloads/
11
+ eggs/
12
+ .eggs/
13
+ lib/
14
+ lib64/
15
+ parts/
16
+ sdist/
17
+ var/
18
+ wheels/
19
+ pip-wheel-metadata/
20
+ share/python-wheels/
21
+ *.egg-info/
22
+ .installed.cfg
23
+ *.egg
24
+ MANIFEST
25
+
26
+ # Virtual environments
27
+ venv/
28
+ ENV/
29
+ env/
30
+ .venv
31
+
32
+ # Testing
33
+ .pytest_cache/
34
+ .coverage
35
+ htmlcov/
36
+ .tox/
37
+ .nox/
38
+
39
+ # Type checking
40
+ .mypy_cache/
41
+ .dmypy.json
42
+ dmypy.json
43
+ .pytype/
44
+
45
+ # IDEs
46
+ .vscode/
47
+ .idea/
48
+ *.swp
49
+ *.swo
50
+ *~
51
+ .DS_Store
52
+
53
+ # OMC state
54
+ .omc/
55
+
56
+ # Documentation
57
+ docs/
58
+ site/
59
+
60
+ # Distribution
61
+ *.tar.gz
62
+ *.whl
@@ -0,0 +1,57 @@
1
+ # Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and leaders pledge to make participation in our
6
+ community a harassment-free experience for everyone, regardless of age, body
7
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
8
+ identity and expression, level of experience, education, socio-economic status,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ We pledge to act and interact in ways that contribute to an open, welcoming,
13
+ diverse, inclusive, and healthy community.
14
+
15
+ ## Our Standards
16
+
17
+ Examples of behavior that contributes to a positive environment:
18
+
19
+ - Using welcoming and inclusive language
20
+ - Being respectful of differing viewpoints and experiences
21
+ - Gracefully accepting constructive criticism
22
+ - Focusing on what is best for the community
23
+ - Showing empathy towards other community members
24
+
25
+ Examples of unacceptable behavior:
26
+
27
+ - The use of sexualized language or imagery and unwelcome sexual attention
28
+ - Trolling, insulting/derogatory comments, and personal or political attacks
29
+ - Public or private harassment
30
+ - Publishing others' private information without explicit permission
31
+ - Other conduct which could reasonably be considered inappropriate
32
+
33
+ ## Enforcement Responsibilities
34
+
35
+ Project maintainers are responsible for clarifying and enforcing our standards
36
+ of acceptable behavior and will take appropriate and fair corrective action in
37
+ response to any behavior that they deem inappropriate, threatening, offensive,
38
+ or harmful.
39
+
40
+ ## Scope
41
+
42
+ This Code of Conduct applies within all community spaces, and also applies when
43
+ an individual is officially representing the community in public spaces.
44
+
45
+ ## Enforcement
46
+
47
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
48
+ reported to the project maintainers at devops@connectify.com. All complaints
49
+ will be reviewed and investigated promptly and fairly.
50
+
51
+ All project maintainers are obligated to respect the privacy and security of
52
+ the reporter of any incident.
53
+
54
+ ## Attribution
55
+
56
+ This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org),
57
+ version 2.0, available at https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
@@ -0,0 +1,125 @@
1
+ # Contributing to helpscout-mailbox
2
+
3
+ Thank you for your interest in contributing to helpscout-mailbox!
4
+
5
+ ## Code of Conduct
6
+
7
+ This project adheres to a Code of Conduct that all contributors are expected to follow. See [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md).
8
+
9
+ ## How to Contribute
10
+
11
+ ### Reporting Issues
12
+
13
+ - Check existing [issues](https://github.com/Connectify/helpscout-mailbox/issues) first
14
+ - Provide reproduction steps, expected vs actual behavior
15
+ - Include Python version, library version, and environment details
16
+
17
+ ### Submitting Pull Requests
18
+
19
+ 1. **Fork** the repository
20
+ 2. **Create a feature branch**: `git checkout -b feature/your-feature-name`
21
+ 3. **Make your changes**:
22
+ - Follow existing code style (Black, isort, flake8)
23
+ - Add tests for new functionality
24
+ - Update docstrings (NumPy style)
25
+ - Run `pre-commit run --all-files` before committing
26
+ 4. **Commit**: Use clear, descriptive commit messages
27
+ 5. **Push**: `git push origin feature/your-feature-name`
28
+ 6. **Open a Pull Request** with:
29
+ - Description of what changed and why
30
+ - Link to related issues
31
+ - Test results
32
+
33
+ ### Development Setup
34
+
35
+ ```bash
36
+ # Clone your fork
37
+ git clone https://github.com/YOUR-USERNAME/helpscout-mailbox.git
38
+ cd helpscout-mailbox
39
+
40
+ # Install with dev dependencies
41
+ pip install -e ".[dev]"
42
+
43
+ # Install pre-commit hooks
44
+ pre-commit install
45
+
46
+ # Run tests
47
+ pytest
48
+
49
+ # Run all linters
50
+ pre-commit run --all-files
51
+ ```
52
+
53
+ ### Testing
54
+
55
+ - Add tests for all new features and bug fixes
56
+ - Maintain or improve code coverage
57
+ - Use `responses` library to mock HTTP calls
58
+ - Run `pytest` to verify tests pass
59
+
60
+ ```bash
61
+ # Run tests with coverage
62
+ pytest --cov=helpscout_mailbox --cov-report=term-missing
63
+
64
+ # Run specific test
65
+ pytest tests/test_client.py::test_parse_created_at
66
+ ```
67
+
68
+ ### Code Style
69
+
70
+ This project uses:
71
+ - **Black** (line length 120) for formatting
72
+ - **isort** for import sorting
73
+ - **flake8** for linting
74
+ - **mypy** for type checking (strict mode)
75
+ - **bandit** for security checks
76
+
77
+ Pre-commit hooks enforce these automatically.
78
+
79
+ ### Docstring Style
80
+
81
+ Use NumPy-style docstrings:
82
+
83
+ ```python
84
+ def example_function(param1: str, param2: int) -> bool:
85
+ """
86
+ Brief description of what the function does.
87
+
88
+ Longer description if needed, explaining behavior,
89
+ edge cases, or important details.
90
+
91
+ Parameters
92
+ ----------
93
+ param1 : str
94
+ Description of param1.
95
+ param2 : int
96
+ Description of param2.
97
+
98
+ Returns
99
+ -------
100
+ bool
101
+ Description of return value.
102
+
103
+ Raises
104
+ ------
105
+ ValueError
106
+ When param2 is negative.
107
+ """
108
+ pass
109
+ ```
110
+
111
+ ### Documentation
112
+
113
+ - Update README.md for user-facing changes
114
+ - Docstrings generate API docs automatically via pdoc
115
+ - Build docs locally: `pdoc -o docs/ helpscout_mailbox`
116
+
117
+ ## License
118
+
119
+ By contributing, you agree that your contributions will be licensed under the GPL-3.0-or-later license.
120
+
121
+ No Contributor License Agreement (CLA) is required.
122
+
123
+ ## Questions?
124
+
125
+ Open an issue or start a discussion in [GitHub Issues](https://github.com/Connectify/helpscout-mailbox/issues).