Commit graph

927 commits

Author SHA1 Message Date
e7ae3ccbf6 Merge branch 'dev_update_pip'
- security update odoo 18 poetry
2026-05-06 02:12:10 -04:00
5dd5ca10be [UPD] poetry odoo 18 security 2026-05-06 02:11:56 -04:00
c4f49f1b97 Merge branch 'develop'
- todo command sshfs and git path
- add mobile script run test
- fix todo upgrade get_odoo_version
2026-03-29 14:51:25 -04:00
4972add36f [FIX] todo upgrade wrong method get_odoo_version 2026-03-29 14:51:02 -04:00
9f2068133d [ADD] mobile test script 2026-03-23 02:59:38 -04:00
c8025eb2a0 [IMP] todo: add sshfs configuration command
Add interactive sshfs mount setup to the system configuration
menu. Users can enter SSH host details manually or select from
~/.ssh/config, then configure a persistent mount with fstab.
Includes i18n strings for all new UI text.

Generated by Claude Code 2.1.81 model claude-sonnet-4-6
2026-03-23 00:33:26 -04:00
340a55e685 [IMP] todo: git patch 2026-03-22 22:21:16 -04:00
664ba95a54 Merge branch 'develop'
- Support flanker for email validation
- Update pip odoo 18 for security
- Update Claude instruction
2026-03-22 01:53:13 -04:00
82ad4561cb [FIX] script generate_config force workers = 0 for developer 2026-03-22 01:50:25 -04:00
c09f336a8f [FIX] pip odoo 18 requirement flanker fix for python3 2026-03-22 01:37:59 -04:00
8f3e078a31 Merge branch 'update_odoo_18_pip'
- claude update command
- poetry update
2026-03-17 04:30:31 -04:00
7eab8ead76 [ADD] odoo 18 support STL file OpenCAD 2026-03-17 04:29:51 -04:00
8f0a5eb1ed [FIX] odoo 18 update poetry ignore mpl_toolkits 2026-03-17 04:26:14 -04:00
0cce4a2f4c [UPD] claude command instruction 2026-03-17 04:00:55 -04:00
542c5a6c78 [UPD] poetry update odoo 18 security 2026-03-17 03:58:21 -04:00
cf3d69b7b0 [ADD] requirement odoo 18: orjson for optimal json usage 2026-03-17 03:53:12 -04:00
09ccbd5f96 [ADD] requirement odoo 18: flanker for mail check 2026-03-17 03:36:29 -04:00
b1eeeb6053 Merge branch 'develop'
- fix todo for server without tk
- split claude.md into rules
- integrate rtk for optimisation agent IA
- todo to add command for claude
- todo i18n use english key
- more space when print command into execute.py
- todo integrate deploy local clone
- script format
2026-03-14 23:26:50 -04:00
36ae1d9beb [UPD] script Format 2026-03-14 23:26:31 -04:00
bee6d50018 [ADD] todo: add deploy menu with git clone
Allow users to deploy ERPLibre to a local directory
via git clone from the TODO interactive menu, making
onboarding simpler for new developers.

Generated by Claude Code 2.1.74 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-14 23:26:31 -04:00
4fc15c306b [REF] todo: use English text as i18n keys
Replace snake_case i18n keys with their English
translation so developers can read the code without
cross-referencing the translations dictionary.
Remove 5 obsolete duplicate entries.

Generated by Claude Code 2.1.74 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-14 23:26:31 -04:00
6fe2de73b2 [UPD] script execute with more space for command display 2026-03-14 23:26:31 -04:00
91c835d57e [IMP] todo: add Claude configs submenu and command listing
Refactor single commit setup into a generic deployment
mechanism for Claude commands, allowing easy addition of
new commands. Add todo_add_command template and an option
to list installed custom commands with their dates.

Generated by Claude Code 2.1.74 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-14 23:26:31 -04:00
c2e08f1de0 [IMP] todo: add git remote, vim config and automation
Add git remote add command with default name "localhost",
git editor vim configuration via todo.json, and a Claude
automation tool to dynamically add commands to todo.json.
Support new bash_command key in execute_from_configuration.

Generated by Claude Code 2.1.74 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-14 23:15:54 -04:00
230c55c432 [ADD] todo: add RTK management menu
Integrate RTK (Rust Token Killer) into the interactive CLI
to let users install, configure, and monitor token savings
directly from the ERPLibre todo interface.

Generated by Claude Code 2.1.74 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-14 23:15:54 -04:00
ac30054d07 [REF] claude: split CLAUDE.md into .claude/rules/
Keep CLAUDE.md lean (~44 lines) with project identity,
core principles, and Claude-specific instructions only.
Move detailed documentation into 9 thematic rule files
under .claude/rules/ for better context optimization.

Generated by Claude Code 2.1.74 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-14 23:15:54 -04:00
2569b3f0ba [FIX] todo.py remove tk, not used
- this broke server without gui for pyton 3.12.3
2026-03-14 23:15:54 -04:00
4762282796 Merge branch 'refactoring_script'
- update licence years TechnoLibre
- add unit test for script
- imp git_local_server
- todo support run test
- support claude command to commit from OCA style
- refactoring script to improve lisibility and quality
2026-03-11 23:19:12 -04:00
1e731114f5 [IMP] script: update copyright year to 2026
Reflect the current year in all TechnoLibre
license headers across script/, test/, and docker/.

Generated by Claude Code 2.1.74 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 23:16:05 -04:00
111583c77d [ADD] test: add bilingual test plan with mmg
Document all 13 test files, 262 tests, and coverage
matrix in EN/FR using multilingual markdown generator.

Generated by Claude Code 2.1.74 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 23:07:01 -04:00
eb42224df9 [ADD] test: add unit tests for uncovered components
Cover addons, code_generator, database, docker,
maintenance, poetry, and version scripts to bring
test count from 142 to 262.

Generated by Claude Code 2.1.74 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 23:06:53 -04:00
438edc3694 [IMP] script: sort execute menu alphabetically
Menu items were in arbitrary order making it hard to
find specific tools as the list grew to 14 entries.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 04:04:17 -04:00
4ea143dd36 [IMP] script: sort clone list alphabetically
The erplibre root repo was appended last and hard to
find among 141 entries. Sort the list so repos are
easy to locate by name.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:56:00 -04:00
d7d72db7bc [FIX] script: show erplibre clone path clearly
The root repo clone command showed "." as target path
which was confusing and easy to miss in the list.
Display "erplibre" instead for clarity.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:55:50 -04:00
84a021258e [IMP] script: shallow push by default in git server
Repos like odoo and OpenUpgrade blocked for 5+ minutes
trying to unshallow from GitHub (~3GB). Push shallow
by default with receive.shallowUpdate on bare repos.
Add --unshallow flag to opt into full history fetch.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:55:44 -04:00
24bcb3a7d3 [IMP] script: async init/remote/push in git server
Sequential processing of 100+ repos was slow. Use
asyncio with semaphore-bounded concurrency to run
init, remote and push actions in parallel. New -j flag
controls max parallel jobs (default: 8).

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:55:41 -04:00
291c9cf5e0 [IMP] script: add erplibre root repo to git server
The root repo (erplibre/erplibre) was missing from the
local git server because it is not in the Google Repo
manifest. Include it so a full clone of the platform
is possible from the local server across all 4 actions.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:55:36 -04:00
43fd5a17ae [REF] script: use Execute helper in git daemon
Replace raw subprocess.Popen and manual signal handling
with Execute.exec_command_live for consistency with
other refactored scripts.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:55:32 -04:00
8083c8010e [REF] script: improve variable naming conventions
Remove Hungarian notation prefixes (lst_, dct_) from variable
names in git_repo_manifest, git_repo_update_group, and their
tests for better readability and consistency with the codebase
refactoring effort.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:43 -04:00
d60caa3897 [REF] script: improve variable naming conventions
Replace Hungarian notation prefixes (lst_, dct_) with
descriptive English names for better readability across
git and todo modules.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:43 -04:00
095eaa1661 [REF] script: extract git helpers into modules
Reduce GitTool class size by moving URL transformation
and GitHub API logic into dedicated repo_url and
github_api modules for better separation of concerns.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:43 -04:00
4a46ebbf4c [REF] script: add type hints to execute and i18n
Improve code maintainability and IDE support by adding
type annotations to function signatures and instance
variables in execute.py and todo_i18n.py. Also let
Black simplify unnecessary parentheses.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:43 -04:00
2dde5467db [REF] script: add type hints and remove duplicate methods
Complete the manager extraction by removing methods from todo.py
that were already moved to database_manager.py (select_database,
restore_from_database, create_backup_from_database, open_file_image_db,
download_database_backup_cli). Add type annotations to manager
classes for better code clarity. Update tests to target the
manager instances directly.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:43 -04:00
ec134d9299 [REF] script: extract managers from todo into modules
Reduce complexity of todo.py by extracting database,
kdbx, and version logic into dedicated manager classes.
Update tests to reference new module paths.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:43 -04:00
666f285fca [REF] script: improve naming and translate to English
Continue variable renaming to remove Hungarian notation
prefixes (dct_, lst_) and adopt descriptive names. Translate
remaining French comments and user-facing strings to English
for consistency across the codebase.

Generated by Claude Code 2.1.72 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 03:25:27 -04:00
e27c544f02 [REF] script: rename variables to follow naming conventions
Replace Hungarian notation, French variable names, and
lowercase constants with clear English names across 5
scripts: config_file, execute, kill_process_by_port,
todo, and git_tool. Remove unused find_in_private
variable. All 142 tests pass.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 02:06:02 -04:00
054c12af6d [ADD] test: add unit tests for refactoring
Ensure safe refactoring by covering all 6 target scripts
with 121 tests: execute.py, todo_i18n.py,
kill_process_by_port.py, git_tool.py, and todo.py.

Generated by Claude Code 2.1.72 model claude-sonnet-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 02:06:02 -04:00
f78f578552 [ADD] test: add unit tests for ConfigFile
Ensure deep_merge_with_lists, get_config, and get_config_value
behave correctly with multi-layer config merging (base, override,
private) to prevent regressions in config resolution logic.

Generated by Claude Code 2.1.72 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 02:06:02 -04:00
c3684ee320 [IMP] conf: simplify Claude commit template
The previous template used a piped shell command to detect the
active model, which caused permission errors in sandboxed
environments. Replace with a simple Python script approach and
add disable-model-invocation for reliability.

Generated by Claude Code 2.1.72 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 02:06:02 -04:00
98d2ea890c [ADD] todo: add AI assistant tools menu with Claude Code commit setup
Provide developers with a streamlined way to configure Claude Code
commit templates directly from the TODO CLI, reducing manual setup
and ensuring consistent commit formatting across the team.

Generated by Claude Code 2.1.72 model claude-opus-4-6

Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2026-03-11 02:06:02 -04:00