Skip to content

Commit 97590cf

Browse files
Merge pull request #64 from OpenSPP/cleanup-build-errors
Cleanup build errors Update documents from reviewing during call
2 parents cb04353 + 80c8f13 commit 97590cf

Some content is hidden

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

58 files changed

+219
-825
lines changed

docs/community/contributing.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ We expect all contributors to the OpenSPP project to adhere to our [Code of Cond
1616
This document outlines the standards of behavior that we expect from all members of the community, and
1717
provides guidance on how to report any incidents of misconduct.
1818

19-
## **Did you find a bug?**
19+
## Did you find a bug?
2020

2121
- **Do not open up a GitHub issue if the bug is a security vulnerability in OpenSPP**, and instead follow the
2222
[security disclosure policy](security_report).

docs/developer_guide/architecture.md

Lines changed: 0 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -250,93 +250,4 @@ Furthermore, as OpenSPP is based on the ERP Odoo and use the standard models pro
250250
to the thousands of applications available in the [Odoo App Store](https://apps.odoo.com/apps) or build your
251251
[own](https://www.odoo.com/documentation/17.0/developer.html).
252252

253-
### Example components for a mid-size project
254253

255-
![](images/architecture_ecosystem_1.png)
256-
257-
### Example components for a large project
258-
259-
![](images/openspp_architecture_large_project.png)
260-
261-
262-
---
263-
264-
## Merged Content
265-
266-
267-
268-
### Content from docs/technical_reference/programs/concepts.md
269-
270-
# Manager Overview
271-
272-
![OpenSPP Overview](images/openspp_overview.png)
273-
274-
## Programs
275-
276-
Programs, sometimes also called a campaign, define a social program. A program is defining when, what and how
277-
{term}`beneficiaries` receive {term}`entitlements`. In itself, a program does not do much. The power comes through the use of
278-
"managers", which define the journey of beneficiaries in a program.
279-
280-
Currently, few types of programs are supported:
281-
282-
- Cash transfer
283-
- Mobile money
284-
- Voucher
285-
- Voucher for restricted cash
286-
287-
## Cycle
288-
289-
Cycles represent a distribution cycle.
290-
291-
## beneficiary
292-
293-
A beneficiary is a {term}`registrant` that is part of a program/cycle.
294-
295-
## Managers
296-
297-
There are different types of managers that define how programs and cycles work. Each manager type has a
298-
defined programming API that needs to be implemented in order to define how the system will work.
299-
300-
For all the managers, a default implementation is designed to support the most common use cases. You can
301-
easily add your managers if those do not fit your needs.
302-
303-
The available managers are:
304-
305-
- [Eligibility Manager](eligibility_manager.rst)
306-
- [Entitlement Manager](entitlement_manager.rst)
307-
- [Deduplication Manager](deduplication_manager.md)
308-
- [Notification Manager](notification_manager.rst)
309-
- [Program Manager](program_manager.rst)
310-
- [Cycle Manager](cycle_manager.rst)
311-
312-
## Type of payment instruments
313-
314-
### Cash Transfer
315-
316-
**STATUS**: Work In Progress.
317-
318-
OpenSPP can generate payment lists that can be shared with a bank to verify or execute transfers.
319-
320-
### Mobile money
321-
322-
TBD
323-
324-
### Voucher program
325-
326-
OpenSPP can generate nominative vouchers in batches ready to be printed.
327-
328-
The design of the vouchers can be customized by updating the voucher template.
329-
330-
::::{important}
331-
332-
If you plan to accept vouchers and do not plan to verify them with the server at the time of accepting then
333-
you should think about what security features you need to implement to avoid having them being duplicated.
334-
335-
We recommend the use of online verification when the voucher is received or the use of secure paper.
336-
337-
::::
338-
339-
### Voucher for restricted cash programs
340-
341-
Vouchers can be used in conjunction with Odoo POS to provide restricted cash solutions. A merchant can use the
342-
Odoo POS to record what is distributed against a given voucher.

docs/developer_guide/best_practices.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ migration-notes: "Added during 2025 documentation reorganization"
99

1010
OpenSPP follows the coding standards of the [Odoo Community Association (OCA)](https://github.com/OCA/odoo-community.org/blob/master/website/Contribution/CONTRIBUTING.rst), which are designed to ensure high-quality, maintainable, and consistent code. While the full guidelines are extensive, here are some of the most important best practices to follow:
1111

12-
**Enforce Coding Standards with Pre-Commit:**
12+
## Enforce Coding Standards with Pre-Commit
1313
- OpenSPP uses `pre-commit` to automatically enforce **PEP8** and other coding standards. This is the recommended way to ensure your code is compliant before committing.
1414
- The configuration runs tools like `black` (formatting), `isort` (import sorting), and `flake8` (linting).
1515
- To set it up, run these commands once in your repository:
@@ -19,21 +19,21 @@ OpenSPP follows the coding standards of the [Odoo Community Association (OCA)](h
1919
```
2020
- After setup, these checks will run automatically on every `git commit`. If an issue is found, the commit will be stopped, and some tools may automatically fix the files for you.
2121

22-
**Embrace Test-Driven Development (TDD):**
22+
## Embrace Test-Driven Development (TDD)
2323
- All new features and bug fixes must follow a Test-Driven Development approach. Write tests that define and validate the functionality *before* writing the implementation.
2424
- Every module must include a comprehensive test suite to ensure its correctness and prevent future regressions.
2525
- Tests should be placed in a `tests/` subdirectory within your module and will be automatically discovered by Odoo's test runner.
2626
- This practice is critical for maintaining a high-quality, stable, and maintainable codebase.
2727

28-
**Write Clean and Readable XML:**
28+
## Write Clean and Readable XML
2929
- Use a consistent naming convention for record IDs. For example: `view_model_name_form`, `action_model_name_window`.
3030
- Logically order fields in views to create an intuitive user experience.
3131

32-
**Prioritize Security and Extensibility:**
32+
## Prioritize Security and Extensibility
3333
- Always define access rights in `security/ir.model.access.csv`. Never grant universal access (`group_id:id,"",...`) without a strong reason.
3434
- Avoid using raw SQL queries. Use the Odoo ORM to ensure security rules are respected.
3535
- Always use `_inherit` and `xpath` to extend existing functionality. Never modify core OpenSPP or Odoo files directly.
3636

37-
**Adhere to Licensing Requirements:**
37+
## Adhere to Licensing Requirements
3838
- All custom modules for OpenSPP must be licensed under **LGPL-3**.
3939
- Ensure that any third-party Python libraries or other dependencies you add are compatible with the LGPL-3 license.

docs/developer_guide/module_development/audit.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ For parent/child rules (requires `spp_audit_post`), also pass `parent_rule_name`
163163

164164
## Best Practices
165165

166-
- **Use Targeted Field Lists**: Keep `field_to_log_ids` focused on business-critical fields.
166+
**Use Targeted Field Lists**: Keep `field_to_log_ids` focused on business-critical fields.
167167

168168
## References
169169

docs/developer_guide/module_development/change_requests.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ access_spp_change_request_add_children_user,spp.change.request.add.children.user
377377

378378
## Best Practices
379379

380-
- Always start with a clear definition of the data you need to collect and the system changes that need to occur upon approval.
380+
Always start with a clear definition of the data you need to collect and the system changes that need to occur upon approval.
381381

382382
## References
383383

docs/developer_guide/module_development/index.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ This modular approach is the foundation for all advanced customizations. From he
3535
- Adding more complex field types (Selection, Many2one, etc.).
3636
- Creating entirely new models and menus.
3737
- Adding business logic with Python methods.
38-
- Building more advanced features documented in the {doc}`Module Development Guides <index>`.
3938

4039
By mastering this pattern, you can tailor OpenSPP to meet any specific program requirement while ensuring your implementation remains clean, stable, and easy to maintain.
4140

docs/developer_guide/troubleshooting.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -9,30 +9,30 @@ migration-notes: "Added during 2025 documentation reorganization"
99

1010
This guide offers insights and solutions for common errors encountered in Odoo application development. Understanding these errors and knowing how to address them efficiently is crucial for maintaining a smooth development process.
1111

12-
1. Error: Field “x” does not exist in model “y”
12+
**Error: Field “x” does not exist in model “y”**
1313

14-
- Confirm the field's presence in the model.
15-
- Ensure the Python file is listed in `models/__init__.py`.
16-
- Verify the existence of from . import models in the `__init__.py` file.
17-
- Consider upgrading the module.
18-
- Double-check the field name for any spelling errors.
14+
1. Confirm the field's presence in the model.
15+
2. Ensure the Python file is listed in `models/__init__.py`.
16+
3. Verify the existence of from . import models in the `__init__.py` file.
17+
4. Consider upgrading the module.
18+
5. Double-check the field name for any spelling errors.
1919

20-
2. Error: Unable to install module “x” due to an unmet external dependency: Missing Python library “y”, “z”
20+
**Error: Unable to install module “x” due to an unmet external dependency: Missing Python library “y”, “z”**
2121

22-
- Execute pip install -r requirements.txt to install the module's required Python libraries.
23-
- If specific libraries are mentioned in the error, install them individually using pip.
22+
1. Execute pip install -r requirements.txt to install the module's required Python libraries.
23+
2. If specific libraries are mentioned in the error, install them individually using pip.
2424

25-
3. Error: Invalid field “x” on model “y”
25+
**Error: Invalid field “x” on model “y”**
2626

27-
- Ensure the field exists within the model.
28-
- Restart the Odoo server and then upgrade the module.
27+
1. Ensure the field exists within the model.
28+
2. Restart the Odoo server and then upgrade the module.
2929

30-
4. Error: Some modules are not loaded, potentially due to missing dependencies or manifests: [“x”]
30+
**Error: Some modules are not loaded, potentially due to missing dependencies or manifests: [“x”]**
3131

32-
- Check if the module is located in the custom/ or custom/src/ folder. If absent, add the module, restart the Odoo server, and attempt reinstallation.
33-
- Confirm the existence of the dependency module of the missing module in either the custom/ or custom/src/ folder.
32+
1. Check if the module is located in the custom/ or custom/src/ folder. If absent, add the module, restart the Odoo server, and attempt reinstallation.
33+
2. Confirm the existence of the dependency module of the missing module in either the custom/ or custom/src/ folder.
3434

35-
5. Error: Inconsistent module states, possibly due to missing dependencies: [“x”]
35+
**Error: Inconsistent module states, possibly due to missing dependencies: [“x”]**
3636

37-
- This issue often arises when a dependency of the “x” module encounters an error.
38-
- Explore and rectify errors in other related modules.
37+
1. This issue often arises when a dependency of the “x” module encounters an error.
38+
2. Explore and rectify errors in other related modules.

docs/overview/features/integrations_apis.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,6 @@ OpenSPP is versatile regarding API communication, supporting various methods suc
2727

2828
With respect to API versioning management, OpenSPP currently manages this aspect manually. This approach ensures backward compatibility, allowing older API versions to continue functioning alongside newer ones. It also fosters forward innovation, facilitating the development of new API features. However, to further streamline this process, OpenSPP plans to deploy an API Manager.
2929

30-
OpenSPP supports sandboxing for API testing, ensuring APIs perform optimally in real-world scenarios. Invitation-only access is provided to demo.openspp.org, allowing prospective integrations to be thoroughly tested and tweaked in a controlled environment before they are deployed in production.
30+
OpenSPP supports sandboxing for API testing, ensuring APIs perform optimally in real-world scenarios. Invitation-only access is provided to our demo instance, allowing prospective integrations to be thoroughly tested and tweaked in a controlled environment before they are deployed in production.
3131

3232
[More Infomation](/technical_reference/external_api.html)

docs/overview/index.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@ Welcome to the OpenSPP overview section. This section provides high-level inform
1111

1212
- {doc}`features/index`
1313
- {doc}`use_cases/index`
14-
- {doc}`concepts/index`
15-
<!-- - {doc}`case_studies/index` -->
14+
- {doc}`case_studies/index`
15+
- {doc}`poc_and_pilot`
16+
1617

1718

1819
```{toctree}
@@ -22,6 +23,6 @@ Welcome to the OpenSPP overview section. This section provides high-level inform
2223
2324
features/index
2425
use_cases/index
25-
concepts/index
26-
<!-- case_studies/index -->
26+
case_studies/index
27+
poc_and_pilot
2728
```
File renamed without changes.

0 commit comments

Comments
 (0)