feat: support generic GitHub orgs and per-repo branch override#12
Merged
feat: support generic GitHub orgs and per-repo branch override#12
Conversation
Remove the oca-specific block and treat it like any other GitHub org, using the config key verbatim in the URL and clone path. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9760409 to
6e5fecf
Compare
- RepoConfig: add extra="allow" so arbitrary org keys in [repos] are preserved; validate via model_validator - Repo entries can be a plain string (uses all configured versions) or ["name", ["branch", ...]] (uses only those branches) - Add _iter_org_entries helper to expand entries into (repo_name, branch) pairs; simplify _get_tasks accordingly - Add InvalidRepoEntryError for malformed inline entries - Update tests for new _get_tasks signature; add test for inline branch override syntax Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
With many repos, all progress bars were added upfront and the terminal would overflow showing hundreds of 100% rows. Now tasks are hidden until they start running (max_workers visible at a time), then printed as a static line on completion. A single summary row shows X/N done. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
6e5fecf to
70da7d2
Compare
Exhaustive config to contribute to OCA covering all OCA repositories. Repos without Odoo version branches use inline branch override syntax: ["oca-port", ["main"]], ["oca-ci", ["master"]], etc. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
70da7d2 to
31d1254
Compare
Add missing Ubuntu and Arch packages needed for common Odoo dependencies (pycups, shapely, pysaml2, pyzbar, pdf2image, cairosvg) and general tools (graphviz, ghostscript, fontconfig, poppler, cups). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9cd092c to
e8b47fe
Compare
trisdoan
approved these changes
Mar 3, 2026
Collaborator
trisdoan
left a comment
There was a problem hiding this comment.
Thanks anh, it works perfectly 👍
Tested on macOs, no need to update MacOs packages when install these extra libraries --extra-requirement="pycups,shapely,pysaml2,pyzbar,cairosvg, pdf2image"
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
[repos](previously onlyocawas recognized alongsideodoo)["repo-name", ["branch", ...]]— repos that don't follow Odoo version branches can be configured inline, without a separate sectionpull-reposdisplay overflow when pulling many reposassets/oca_contributor.tomlas a comprehensive example config for OCA contributorsChanges
feat: support generic GitHub orgs and per-repo branch override in configRepoConfig: addextra="allow"+model_validatorso arbitrary org keys in[repos]are kept and validated"repo-name"— cloned at all configuredversions["repo-name", ["branch", ...]]— cloned only at the specified branches_iter_org_entrieshelper to expand entries into(repo_name, branch)pairsInvalidRepoEntryErrorfor malformed inline entriesfix: hide completed progress tasks to avoid terminal overflowmax_workersbars visible at a time)X/N donesummary row tracks overall progresschore: add oca_contributor.toml example configExhaustive config for OCA contributors. Repos that don't follow Odoo version branches use the inline override syntax:
chore: enrich system package lists with missing dependenciesThe system package lists (Ubuntu and Arch) now go beyond what Odoo itself requires. The goal is to pre-install all system-level dependencies needed to compile and run any OCA module out of the box — so that
pip installnever fails due to a missing C library, regardless of which OCA modules are being used.Notable additions:
libcups2-dev(pycups),libgeos-dev(shapely),libxmlsec1-dev+libxmlsec1-openssl(pysaml2),libzbar-dev(pyzbar),libcairo2(cairosvg),poppler-utils(pdf2image),graphviz,ghostscript,gsfonts.🤖 Generated with Claude Code