Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
193 commits
Select commit Hold shift + click to select a range
8ef4d22
Include additional Augur copyright holder names in the CREDITS.md file
MoralCode May 6, 2026
5a4c4f7
Merge pull request #300 from chaoss/fix/licensing
cdolfi May 6, 2026
81e824c
add a function in GitHubDataAccess to query pull request availability
MoralCode Mar 19, 2026
247777e
factor URL creation into a function in GithubDataAccess
MoralCode Mar 20, 2026
9878d80
perform pull requests lookup with the new endpoint url builder
MoralCode Mar 20, 2026
babd132
add some deprecation warnings to functions that should be replaced by…
MoralCode Mar 20, 2026
0496029
refactor to reuse an existing internal function, rather than rewritin…
MoralCode Mar 27, 2026
73f3b6c
mark a lib config fetcher as deprecated for future removal
MoralCode Mar 20, 2026
9a68982
mark GitHubRandomKeyAuth as deprecated
MoralCode Mar 20, 2026
7327356
find some deprecated things based on comments
MoralCode Mar 20, 2026
d1971e5
deprecate hit_api
MoralCode May 7, 2026
2a81225
Introduce new table definition for forge_instance operational table.
MoralCode May 7, 2026
52eacc0
create new alembic revision for forge_instance table
MoralCode May 7, 2026
69a123b
correct comment typo
MoralCode May 8, 2026
6b0c8be
Merge pull request #305 from chaoss/feat/instance-db
MoralCode May 8, 2026
8599fb0
Merge pull request #291 from chaoss/chore/deprecate
MoralCode May 9, 2026
74dadd1
Improve UrlNotFoundException logging context
Phanindra899 May 14, 2026
6463450
docs: update README metrics link
Lovlace777 May 16, 2026
001eaf5
Merge pull request #319 from Lovlace777/lovelace/fix-readme-metrics-link
MoralCode May 17, 2026
9592863
Merge pull request #306 from chaoss/fix/disabled_prs
MoralCode May 18, 2026
fb93d8d
Merge pull request #316 from Phanindra899/fix-random-number-logs
MoralCode May 18, 2026
ab2d2ac
return early with a log message if badges model data is not correctly…
MoralCode May 18, 2026
0de0912
inject application name into engine connection args
MoralCode Mar 16, 2026
6b23c40
tests: add unit tests for AugurUUID and subclasses
Inengs Mar 3, 2026
f87fda6
tests: add test_augur_uuid.py to pytest testpaths in pyproject.toml
Inengs Mar 4, 2026
a1ae7a5
tests: add edge case and boundary tests for AugurUUID
Inengs Mar 6, 2026
29ce958
Remove redundant UUID tests
Inengs Mar 17, 2026
e87983d
add some basic unit tests to assert that the URL generation works as …
MoralCode May 7, 2026
e6976be
fix merge conflict error
MoralCode May 8, 2026
c47b20b
move task imports to the one place they're actually needed
MoralCode May 7, 2026
309f852
rename the class
MoralCode May 8, 2026
a63d96a
fix remove database dependency from the worker util test
MoralCode May 8, 2026
1657cd2
Merge branch 'Inengs/unit-tests/augur-uuid' into unit_testing_improve…
MoralCode May 18, 2026
ecfa0d7
actually run all the configured tests in CI
MoralCode May 19, 2026
bc66238
rename duplicate test function
MoralCode May 19, 2026
5840b23
refactor most of the JSONConfig store tests into a class
MoralCode May 19, 2026
606024d
encapsulate contributor UUID into a class
MoralCode May 19, 2026
9199b85
rename unit test file
MoralCode May 19, 2026
1c23358
configure and apply test markers to separate unit and integration tests
MoralCode May 19, 2026
6e990c2
Merge pull request #321 from chaoss/fix/badges_model_nonetype
cdolfi May 19, 2026
19b20eb
provide new repo name when updating a repo URL in move detection
MoralCode May 19, 2026
3bf9696
Merge pull request #323 from chaoss/unit_testing_improvements
MoralCode May 20, 2026
ba04ba3
Merge pull request #329 from chaoss/bug/repo_name
MoralCode May 20, 2026
9c7c9f3
Merge pull request #322 from chaoss/qol/postgres_name
MoralCode May 20, 2026
b5ab88f
Document the types of testing being done and how to run them
MoralCode May 20, 2026
da2856b
Adjust headings so another top level heading can be added
MoralCode May 20, 2026
b4360e3
include slack in testing signoff
MoralCode May 20, 2026
a79b67b
add a testing standards section
MoralCode May 20, 2026
e46a6a9
docs(docker): remove reference to nonexistent database-compose.yml
May 26, 2026
eb1b831
Update CollectOSS documentation URLs
chrisx9z May 26, 2026
983aa82
Add unit tests for check_swapped_emails
Inengs Mar 17, 2026
c6e81ab
enable all tests within test_util
MoralCode May 19, 2026
2423f18
Correct the failing test
MoralCode May 26, 2026
bee5a30
Merge pull request #339 from Suraj-H675/docs/fix-docker-compose-refer…
MoralCode May 26, 2026
0c2024e
Merge pull request #342 from chaoss/Inengs/unit-tests/check-swapped-e…
MoralCode May 26, 2026
e5ece60
fix(tasks): remove debug print statements causing log spam
May 27, 2026
6dfb9f9
implement timestamp correction utilities and tests for git commit data
shlokgilda Jan 7, 2026
a32b2d0
improve exception handling and update logger usage in timestamp corre…
shlokgilda Jan 7, 2026
2a5f4f8
add new unit tests to list
MoralCode Feb 16, 2026
48b4e98
Move timestamp correction utilities from tasks layer to db layer
shlokgilda Feb 25, 2026
546307c
Merge pull request #348 from Suraj-H675/fix/remove-debug-print-statem…
MoralCode May 27, 2026
05f5eb6
update package name and correct an error with a previous import
MoralCode May 27, 2026
08c6388
remove rabbitmq default user tags
MoralCode May 27, 2026
2adc481
mark functions related to weight-based scheduling as deprecated
MoralCode May 26, 2026
24805b5
Merge pull request #346 from chaoss/shlokgilda/fix/issue-3472-validat…
MoralCode May 27, 2026
daefee8
Merge pull request #351 from chaoss/chore/remove_rabbit_tags
MoralCode May 27, 2026
b4a1289
Merge pull request #343 from chaoss/ntdn/deprecate_weight_scheduling
MoralCode May 27, 2026
313ca99
update bandit actions config to a more current version
MoralCode May 28, 2026
f47a726
remove make section of docs
MoralCode May 20, 2026
63ae95d
Merge pull request #354 from chaoss/docs/cleanup
MoralCode May 29, 2026
ed1219c
Merge pull request #352 from chaoss/ops/bandit_fix
MoralCode Jun 1, 2026
9f279b0
Merge pull request #330 from chaoss/docs/testing
MoralCode Jun 1, 2026
c9f66cd
set stable docs urls back to "release"
MoralCode Jun 2, 2026
58d75c7
Merge pull request #341 from chrisx9z/docs/update-docs-url
MoralCode Jun 2, 2026
1c653c3
nullify migration that should never have been a migration in the firs…
MoralCode Jun 5, 2026
2eaa54f
fix: correct biweely typo to biweekly in GOVERNANCE.md
Dipro-cyber Jun 6, 2026
9c0b67c
docs: re-introduce data sources section to scope.rst
Dipro-cyber Jun 6, 2026
a82e4c8
Merge pull request #364 from chaoss/bug/fix-migration
MoralCode Jun 6, 2026
a5d6143
rename augur_data model file to data
MoralCode May 27, 2026
f5a8d14
rename augur_data to collection_data in schema arguments
MoralCode May 27, 2026
87db0a1
rename augur_data to collection_data in table arguments
MoralCode May 27, 2026
8a1e9a0
schema arguments (but single quotes this time)
MoralCode May 27, 2026
f36619e
rename all references (foreign keys, sequences etc) within SQL
MoralCode May 27, 2026
7f280a0
rename all references to augur_data in the rest of the codebase
MoralCode May 27, 2026
754d122
rename augur_operations file to operations
MoralCode May 27, 2026
67a6552
rename operations schema specifiers in tables and columns
MoralCode May 27, 2026
8b1ff46
rename in-SQL references to operations schema within the models
MoralCode May 27, 2026
e6b185e
rename all references to augur_operations in the rest of the codebase
MoralCode May 27, 2026
4a6204a
create database migration for the schema rename
MoralCode May 27, 2026
fc20087
correct more imports of the ops schema
MoralCode May 27, 2026
071c543
fix search paths
MoralCode May 27, 2026
d6d25f5
update test fixtures for worker tests
MoralCode May 27, 2026
daf8d7a
update unit test references to operations schema in SQL
MoralCode May 27, 2026
7218d74
update docs references to ops schema by name
MoralCode May 27, 2026
4fb395c
update database comments (and include them in the schema rename migra…
MoralCode May 27, 2026
9a7a073
update another schema reference in tests
MoralCode May 27, 2026
508aec2
forgot to change augur_data model imports
MoralCode May 27, 2026
0169f41
rename a schema reflection ref that was crashing gunicorn
MoralCode May 27, 2026
0f06f1b
rename an augur_data variable
MoralCode May 27, 2026
359e0de
change augur_data references in test files
MoralCode May 27, 2026
477b16a
change augur_data references in docs files
MoralCode May 27, 2026
b5e8d70
change augur_data references in the CLI
MoralCode May 27, 2026
8140509
fix typo (its collection_data schema)
MoralCode May 29, 2026
f6aa44a
hardcode schema in migrations
MoralCode May 29, 2026
0475396
rename collection_data schema to data
MoralCode Jun 4, 2026
498c781
schema rename collection_operations -> operations
MoralCode Jun 2, 2026
00ca828
update schema migration
MoralCode Jun 4, 2026
20de8da
docs: move data sources to index.rst What is CollectOSS section
Dipro-cyber Jun 7, 2026
368e8ad
Merge pull request #365 from Dipro-cyber/fix/governance-biweekly-typo
MoralCode Jun 7, 2026
25bb3f6
Merge pull request #366 from Dipro-cyber/docs/re-introduce-data-sourc…
MoralCode Jun 8, 2026
b886f86
Merge pull request #353 from chaoss/rename/schema
MoralCode Jun 9, 2026
c037dcc
add a deprefix helper and some unit tests
MoralCode May 8, 2026
d62214b
refactor into a better prefix extraction helper
MoralCode May 8, 2026
4a3d431
add first pass SystemEnv
MoralCode May 8, 2026
61a564f
allow different prefixes to be passed in for testing purposes
MoralCode May 8, 2026
e8cc02f
update deprecation message
MoralCode May 8, 2026
b2f99ca
basic functionality unit tests
MoralCode May 8, 2026
7a737fc
handle cases with no known prefix to avoid breaking stuff
MoralCode May 8, 2026
f6109aa
factor out bool fetching class to deduplicate logic
MoralCode May 8, 2026
67ddbfd
Test to make sure we can potentially migrate the AUGUR_ vars in the c…
MoralCode May 8, 2026
ddb0ef5
replace all references to os.getenv with new class
MoralCode May 8, 2026
5b04de6
deprecate older Environment class that is buried in the module tree
MoralCode May 8, 2026
827dfb9
get_bool docstring
MoralCode May 8, 2026
1963d35
basic setter
MoralCode May 8, 2026
9650906
replace references to os.environ[] with new class
MoralCode May 8, 2026
dc16079
remove some redundant wrapping code
MoralCode May 8, 2026
1bb1de2
replace references to os.environ.get
MoralCode May 8, 2026
f5b5019
Swap out only usage of deprecated Environment class
MoralCode May 8, 2026
202465c
Remove no-longer-used Environment class in API
MoralCode May 8, 2026
da765da
Refactor extract_prefix
MoralCode May 29, 2026
b3e92a2
refactor get_bool
MoralCode May 29, 2026
21a34f1
fix ~ path expansion in default scorecard value
MoralCode May 29, 2026
8945ef8
replace a bunch of env var names the application accesses
MoralCode May 20, 2026
27fd27e
update env var names in RST docs
MoralCode May 20, 2026
bef5639
update vars in example env
MoralCode May 27, 2026
6fd7ee0
update variable names in docker compose
MoralCode May 27, 2026
0aa0d8a
hard change env var prefix for CLI commands
MoralCode May 29, 2026
110f42b
attempt to add transitional variables for the specific existing place…
MoralCode May 29, 2026
f3ff5a3
factor tests into a class
MoralCode May 29, 2026
75345cb
import SystemEnv into celery_app
MoralCode May 29, 2026
bcff419
move test next to the actual known good config tests
MoralCode May 29, 2026
3351859
add more detailed failure reasons to get_bool tests
MoralCode May 29, 2026
3585e50
split environment tests into two classes
MoralCode May 29, 2026
19984f2
apply homedir resolution fix to SCC path as well
MoralCode May 29, 2026
c2b6215
fix docs underline lengths
MoralCode May 29, 2026
97d443c
remove unused imports
MoralCode May 29, 2026
e949c77
use SystemEnv for fetching database variable
MoralCode May 29, 2026
0b46bfb
update error messages surrounding DB access to refer to the new variable
MoralCode Jun 2, 2026
0b3aa2b
allow SystemEnv to set a default value
MoralCode Jun 9, 2026
4a30c75
create a stub of a helper function to check and init the schema
MoralCode Jun 2, 2026
4cf94bb
add stub for making sure the schema is updated
MoralCode Jun 2, 2026
71e74b7
move some entrypoint behavior into a variable collection helper
MoralCode Jun 2, 2026
009e092
Automatically populate gitlab data with nonfunctional values if they …
MoralCode Jun 2, 2026
c9924ec
move docker deploy variable to the dockerfile/composefile
MoralCode Jun 2, 2026
32033a0
provide default facade repo directory
MoralCode Jun 2, 2026
5fc3ecc
ensure facade repo directory is resolveable/absolute
MoralCode Jun 2, 2026
4747b8c
ensure facade repo directory has a trailing slash
MoralCode Jun 2, 2026
1d2910b
oops
MoralCode Jun 2, 2026
ba802c2
handle swapping localhosts for redis connection string too
MoralCode Jun 2, 2026
7e5fc18
entrypoint is now empty
MoralCode Jun 2, 2026
e4c13ef
provide excessive user feedback with verbose logging
MoralCode Jun 2, 2026
f7f7cb7
port over the facade config file handling into python
MoralCode Jun 2, 2026
ac5a57d
refactor config merging into a separate function so it could be reuse…
MoralCode Jun 2, 2026
a8280c2
config script no longer needed
MoralCode Jun 2, 2026
2bf5f8b
enable the basic schema update subshell for now
MoralCode Jun 5, 2026
d6175a8
add a platform information function
MoralCode Jun 5, 2026
ad04c90
include new environment file in linted files list
MoralCode Jun 8, 2026
b100415
add function to detect and warn if files are present at the previous …
MoralCode Jun 8, 2026
fb2930e
move remaining command in init into the docker init directive
MoralCode Jun 8, 2026
62dcbc7
remove old dockerfile entrypoint and init script infrastructure
MoralCode Jun 8, 2026
eab204c
revert keyman orchestrator back to regular environment variables
MoralCode Jun 8, 2026
6934d7c
logger.verbose -> logger.debug
MoralCode Jun 8, 2026
d1b49a8
ensure logger is correctly passed and all functions are imported
MoralCode Jun 9, 2026
8722da4
use logger to output version information
MoralCode Jun 9, 2026
3ce2b1e
open facade directory file in write mode
MoralCode Jun 9, 2026
3f7a8be
fix config bug with new startup process
MoralCode Jun 9, 2026
9618ab1
improve robustness of logger against missing log directories in config
MoralCode Jun 9, 2026
b1f52dc
include logs directory environment variable in default compose
MoralCode Jun 9, 2026
4dff338
correct translation error in git config command
MoralCode Jun 9, 2026
771fdae
Merge branch 'env/entrypoints' into feat/flexible_env
MoralCode Jun 10, 2026
c049811
lengthen timeout for docker job so that things actually can run to po…
MoralCode Jun 10, 2026
97820fe
move startup process to a python based preflight script
MoralCode Jun 10, 2026
c804aa0
pass in correct DB context
MoralCode Jun 10, 2026
e58b343
exit successfully so the backend can start
MoralCode Jun 10, 2026
666605f
&& only works with the shell form of CMD
MoralCode Jun 10, 2026
5a69838
bypass SystemLogger, which requires a database connection
MoralCode Jun 10, 2026
51d1f32
update env vars used in CI so we are passing correct values to the ap…
MoralCode Jun 10, 2026
bba22af
add health check to postgres to ensure it is done with its thing befo…
MoralCode Jan 19, 2026
f8e2d4f
remove unused imports
MoralCode Jun 10, 2026
3094dc2
Merge pull request #311 from chaoss/feat/flexible_env
MoralCode Jun 10, 2026
51ce6c8
bump metadata to 1.1rc1
MoralCode Jun 10, 2026
3700065
update docker build tagging rules to not update the `release` tag for…
MoralCode Jun 10, 2026
054e61d
Merge pull request #379 from chaoss/metadata/1.1rc1
MoralCode Jun 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .github/workflows/bandit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@
name: Bandit
on:
push:
branches: [ "main", "release" ]
branches: ["main", "release"]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "main" ]
branches: ["main"]
schedule:
- cron: '24 2 * * 2'
- cron: "24 2 * * 2"

jobs:
bandit:
Expand All @@ -30,7 +30,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Bandit Scan
uses: shundor/python-bandit-scan@ab1d87dfccc5a0ffab88be3aaac6ffe35c10d6cd
uses: reactive-firewall/python-bandit-scan@11a72c7c18aab77758bf6f5d9456f1018ec107b0
with: # optional arguments
# exit with 0, even with results found
exit_zero: true # optional, default is DEFAULT
Expand All @@ -43,9 +43,9 @@ jobs:
# Report only issues of a given confidence level or higher. Can be LOW, MEDIUM or HIGH. Default is UNDEFINED (everything)
# confidence: # optional, default is UNDEFINED
# comma-separated list of paths (glob patterns supported) to exclude from scan (note that these are in addition to the excluded paths provided in the config file) (default: .svn,CVS,.bzr,.hg,.git,__pycache__,.tox,.eggs,*.egg)
excluded_paths: tests
# excluded_paths:
# comma-separated list of test IDs to skip
# skips: # optional, default is DEFAULT
# path to a .bandit file that supplies command line arguments
# ini_path: # optional, default is DEFAULT

config_path: pyproject.toml
25 changes: 13 additions & 12 deletions .github/workflows/build_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -178,12 +178,12 @@ jobs:
docker compose -f docker-compose.yml up --no-build 2>&1 \
| (./scripts/ci/await_all.py /tmp/regex_matches.txt \
&& docker compose -f docker-compose.yml down)
timeout-minutes: 3
timeout-minutes: 8
env:
AUGUR_GITHUB_API_KEY: ${{ secrets.GITHUB_TOKEN }}
AUGUR_GITHUB_USERNAME: ${{ github.repository_owner }}
AUGUR_GITLAB_API_KEY: dummy
AUGUR_GITLAB_USERNAME: dummy
COLLECTOSS_GITHUB_API_KEY: ${{ secrets.GITHUB_TOKEN }}
COLLECTOSS_GITHUB_USERNAME: ${{ github.repository_owner }}
COLLECTOSS_GITLAB_API_KEY: dummy
COLLECTOSS_GITLAB_USERNAME: dummy

- name: Dump logs
# Always run this step to get logs, even if the previous step fails
Expand Down Expand Up @@ -294,18 +294,19 @@ jobs:
podman compose -f docker-compose.yml up --no-build 2>&1 \
| (./scripts/ci/await_all.py /tmp/regex_matches.txt \
&& podman compose -f docker-compose.yml down)
timeout-minutes: 3
timeout-minutes: 8
env:
AUGUR_GITHUB_API_KEY: ${{ secrets.GITHUB_TOKEN }}
AUGUR_GITHUB_USERNAME: ${{ github.repository_owner }}
AUGUR_GITLAB_API_KEY: dummy
AUGUR_GITLAB_USERNAME: dummy
COLLECTOSS_GITHUB_API_KEY: ${{ secrets.GITHUB_TOKEN }}
COLLECTOSS_GITHUB_USERNAME: ${{ github.repository_owner }}
COLLECTOSS_GITLAB_API_KEY: dummy
COLLECTOSS_GITLAB_USERNAME: dummy

- name: Dump logs
# Always run this step to get logs, even if the previous step fails
if: always()
# We use tail so that we can see the name of each file as it's printed
run: "podman run -t --rm -v augur_logs:/logs bash -c 'find /logs -type f | xargs
run:
"podman run -t --rm -v augur_logs:/logs bash -c 'find /logs -type f | xargs
tail -n +0'"

push-image:
Expand Down Expand Up @@ -358,7 +359,7 @@ jobs:
# Releases update the *:latest tag and the *:<version> tag
tags: |
type=raw,value=devel-latest,enable=${{ github.ref == 'refs/heads/main' }}
type=raw,value=latest,enable=${{ github.event_name == 'release' }}
type=raw,value=latest,enable=${{ github.event_name == 'release' && !github.event.release.prerelease }}
type=raw,value=${{ github.event.release.tag_name }},enable=${{ github.event_name == 'release' }}

- name: Build and push
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/functional_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,4 @@ jobs:
- name: Run Tests
run: |
uv run --python ${{ matrix.env }} pytest \
tests/test_classes \
--color=yes
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ These resources are a great way to meet the people behind the project, ask quest

## Learn about the project

If you aren't already familiar with what CollectOSS is, please make sure you've read the [README](README.md) to get a primer on our project, and maybe take a look around the [documentation](https://collectoss.readthedocs.io/en/release/) so you know what we are about. You can also hang out in Slack or join our community meetings to learn more about what we do.
If you aren't already familiar with what CollectOSS is, please make sure you've read the [README](README.md) to get a primer on our project, and maybe take a look around the [documentation](https://docs.collectoss.org/en/release/) so you know what we are about. You can also hang out in Slack or join our community meetings to learn more about what we do.

## Opening an issue
If you're experiencing an issue with CollectOSS you can search for your problem or question on our [issues](https://github.com/chaoss/collectoss/issues) page to see if someone else has already reported it. If you cannot find your issue, please feel free to [open a new one](https://github.com/chaoss/collectoss/issues/new/choose).
Expand Down Expand Up @@ -53,7 +53,7 @@ Github has an article called [Syncing a fork](https://docs.github.com/en/pull-re

## Helpful Links

- [CollectOSS stable documentation](https://collectoss.readthedocs.io/en/release/)
- [CollectOSS stable documentation](https://docs.collectoss.org/en/release/)
- [CHAOSS Getting Started page](https://chaoss.community/kb-getting-started/)

**Git & GitHub**
Expand Down
14 changes: 14 additions & 0 deletions CREDITS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ The list of current CollectOSS maintainers can be found in the [MAINTAINERS](./M

Augur has been supported by the University of Missouri through funding provided by the Alfred P. Sloan Foundation, Mozilla, The Reynolds Journalism Institute with contributions from VMWare, Red Hat LLC, Grace Hopper's Open Source Day, GitHub, Microsoft, Twitter, Adobe, the Gluster Project, Open Source Summit (NA/Europe), and the Linux Foundation Compliance Summit.

Augur has also been supported by the University of Nebraska at Omaha.

Significant design contributors include Kate Stewart, Dawn Foster, Duane O'Brien, Remy Decausemaker, Google Summer of Code Students, and others including:

### Maintainers
Expand Down Expand Up @@ -43,6 +45,18 @@ Significant design contributors include Kate Stewart, Dawn Foster, Duane O'Brien
- [Gary P. White](https://github.com/garypwhite)
- [Shlok Gilda](https://github.com/shlokgilda)

### Credited Copyright Holders
These names came from the LICENSE.md file in the Augur project:
- Matt Germonprez
- Sean Goggins
- Gabe Heim
- Derek Howard
- Carter Landis
- Matt Snell
- Brian Warner
- University of Nebraska at Omaha
- University of Missouri

### GSoC 2025 Participants
- [Akshat Baranwal](https://github.com/akshatb2006)
- [Asish Kumar](https://github.com/officialasishkumar)
Expand Down
2 changes: 1 addition & 1 deletion GOVERNANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ While most business in CollectOSS is conducted by "[lazy consensus](https://comm
periodically the Maintainers may need to vote on specific actions or changes.
A vote can be taken on the project's public Slack channel (#wg-collectoss-8knot in the [CHAOSS Slack](https://chaoss.community/kb-getting-started/)) or
the private Maintainer Slack channel for security or conduct matters.
Votes may also be taken at the biweely developer meeting. Any Maintainer may
Votes may also be taken at the biweekly developer meeting. Any Maintainer may
demand a vote be taken.

Most votes require a simple majority of all Maintainers to succeed, except where
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ CollectOSS's main focus is to measure the overall health and sustainability of o

The data CollectOSS collects covers more than just code contributions and extends to anything that can be derived from forge data, including comments, change reviews, releases, and other project activity or interactions. This data is stored in a relational database (PostgreSQL), enabling large-scale data aggregation across any number of repositories to provide context about the way these communities evolve.

CollectOSS is part of [CHAOSS](https://chaoss.community), which is a Linux Foundation® project. Many of our metrics are implementations of the [metrics](https://chaoss.community/metrics/) defined by the CHAOSS community.
CollectOSS is part of [CHAOSS](https://chaoss.community), which is a Linux Foundation® project. Many of our metrics are implementations of the [metrics](https://chaoss.community/kb-metrics-and-metrics-models/) defined by the CHAOSS community.

## Versions and support
CollectOSS is a Python project distributed via container images and aims to support all currently-supported versions of Python on macOS and Linux platforms. Docker is the primary supported container runtime, but Podman is also supported and used by some maintainers, although it requires configuring some extra permissions to run correctly.
Expand All @@ -25,7 +25,7 @@ Basic initial setup can be completed in a few minutes as follows:
3. Copy the `environment.txt` file to a new file called `.env` and fill in values for the required variables
4. Run `docker compose up` to start the containers

Check out the [CollectOSS Documentation](https://collectoss.readthedocs.io) for more detailed setup instructions and troubleshooting steps.
Check out the [CollectOSS Documentation](https://docs.collectoss.org) for more detailed setup instructions and troubleshooting steps.

## Contributing
We strongly believe that communities are what makes open source so impactful. We invite you to join our community, regardless of your experience level or coding abilities!
Expand Down
8 changes: 5 additions & 3 deletions collectoss/api/gunicorn_conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

from collectoss.application.db.lib import get_value
from collectoss.application.db import dispose_database_engine
from collectoss.application.environment import SystemEnv

logger = logging.getLogger(__name__)

Expand All @@ -20,8 +21,8 @@
workers = multiprocessing.cpu_count() * 2 + 1
umask = 0o007
reload = True

is_dev = os.getenv("AUGUR_DEV", 'False').lower() in ('true', '1', 't', 'y', 'yes')
# this satisfies the type checker
is_dev = SystemEnv.get_bool("AUGUR_DEV", False)

if is_dev:

Expand All @@ -40,7 +41,8 @@
# set the log location for gunicorn
logs_directory = get_value('Logging', 'logs_directory')

is_docker = os.getenv("AUGUR_DOCKER_DEPLOY", 'False').lower() in ('true', '1', 't', 'y', 'yes')
# this syntax satisfies the type checker
is_docker = SystemEnv.get_bool("AUGUR_DOCKER_DEPLOY", False)
accesslog = f"{logs_directory}/gunicorn.log"
errorlog = f"{logs_directory}/gunicorn.log"

Expand Down
2 changes: 1 addition & 1 deletion collectoss/api/metrics/commit.py
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,7 @@ def annual_commit_count_ranked_by_repo_in_repo_group(repo_group_id, repo_id=None
if timeframe == 'all':
cdRgTpRankedCommitsSQL = s.sql.text("""
SELECT repo.repo_id, repo_name as name, SUM(added - removed - whitespace) as net, patches
FROM augur_data.dm_repo_annual, repo, repo_groups
FROM data.dm_repo_annual, repo, repo_groups
WHERE repo.repo_group_id = :repo_group_id
AND repo.repo_group_id = repo_groups.repo_group_id
AND dm_repo_annual.repo_id = repo.repo_id
Expand Down
32 changes: 16 additions & 16 deletions collectoss/api/metrics/deps.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ def deps(repo_group_id, repo_id=None, period='day', begin_date=None, end_date=No

depsSQL = s.sql.text("""
SELECT
augur_data.repo_dependencies.*,
augur_data.repo_groups.repo_group_id
data.repo_dependencies.*,
data.repo_groups.repo_group_id
FROM
augur_data.repo_dependencies,
augur_data.repo_groups,
augur_data.repo,
( SELECT MAX ( date_trunc( 'day', augur_data.repo_dependencies.data_collection_date ) ) AS data_collection_date FROM repo_dependencies WHERE repo_id = repo_id ) C
data.repo_dependencies,
data.repo_groups,
data.repo,
( SELECT MAX ( date_trunc( 'day', data.repo_dependencies.data_collection_date ) ) AS data_collection_date FROM repo_dependencies WHERE repo_id = repo_id ) C
WHERE
repo_dependencies.repo_id = repo.repo_id
AND repo.repo_group_id = repo_groups.repo_group_id
Expand All @@ -54,13 +54,13 @@ def deps(repo_group_id, repo_id=None, period='day', begin_date=None, end_date=No

depsSQL = s.sql.text("""
SELECT
augur_data.repo_dependencies.*,
augur_data.repo_groups.repo_group_id
data.repo_dependencies.*,
data.repo_groups.repo_group_id
FROM
augur_data.repo_dependencies,
augur_data.repo_groups,
augur_data.repo,
( SELECT MAX ( date_trunc( 'day', augur_data.repo_dependencies.data_collection_date ) ) AS data_collection_date
data.repo_dependencies,
data.repo_groups,
data.repo,
( SELECT MAX ( date_trunc( 'day', data.repo_dependencies.data_collection_date ) ) AS data_collection_date
FROM repo_dependencies, repo, repo_groups
WHERE repo.repo_group_id = repo_groups.repo_group_id and
repo_dependencies.repo_id = repo.repo_id and
Expand Down Expand Up @@ -134,8 +134,8 @@ def libyear(repo_group_id, repo_id=None, period='day', begin_date=None, end_date
f.libyear,
f.data_collection_date
FROM
( SELECT repo_id, NAME, MAX ( data_collection_date ) AS data_collection_date FROM augur_data.repo_deps_libyear WHERE repo_id = :repo_id GROUP BY repo_id, NAME ORDER BY NAME ) e,
augur_data.repo_deps_libyear f
( SELECT repo_id, NAME, MAX ( data_collection_date ) AS data_collection_date FROM data.repo_deps_libyear WHERE repo_id = :repo_id GROUP BY repo_id, NAME ORDER BY NAME ) e,
data.repo_deps_libyear f
WHERE
e.data_collection_date = f.data_collection_date and
e.repo_id = f.repo_id
Expand Down Expand Up @@ -203,8 +203,8 @@ def libyear(repo_group_id, repo_id=None, period='day', begin_date=None, end_date
f.libyear,
f.data_collection_date
FROM
( SELECT repo_id, NAME, MAX ( data_collection_date ) AS data_collection_date FROM augur_data.repo_deps_libyear GROUP BY repo_id, NAME ORDER BY NAME ) e,
augur_data.repo_deps_libyear f
( SELECT repo_id, NAME, MAX ( data_collection_date ) AS data_collection_date FROM data.repo_deps_libyear GROUP BY repo_id, NAME ORDER BY NAME ) e,
data.repo_deps_libyear f
WHERE
e.data_collection_date = f.data_collection_date and
e.repo_id = f.repo_id
Expand Down
20 changes: 10 additions & 10 deletions collectoss/api/metrics/message.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,12 @@ def repo_messages(repo_group_id, repo_id=None, period='day', begin_date=None, en
COUNT ( * ),
repo_name
FROM
augur_data.repo,
augur_data.message
data.repo,
data.message
WHERE
augur_data.repo.repo_id = augur_data.message.repo_id
data.repo.repo_id = data.message.repo_id
AND
augur_data.repo.repo_id = :repo_id
data.repo.repo_id = :repo_id
AND
message.msg_timestamp BETWEEN :begin_date AND :end_date
GROUP BY
Expand All @@ -69,14 +69,14 @@ def repo_messages(repo_group_id, repo_id=None, period='day', begin_date=None, en
COUNT ( * ),
rg_name
FROM
augur_data.repo,
augur_data.repo_groups,
augur_data.message
data.repo,
data.repo_groups,
data.message
WHERE
augur_data.repo.repo_id = augur_data.message.repo_id
AND augur_data.repo_groups.repo_group_id = repo.repo_group_id
data.repo.repo_id = data.message.repo_id
AND data.repo_groups.repo_group_id = repo.repo_group_id
AND
augur_data.repo_groups.repo_group_id = :repo_group_id
data.repo_groups.repo_group_id = :repo_group_id
AND
message.msg_timestamp BETWEEN :begin_date AND :end_date
GROUP BY
Expand Down
6 changes: 3 additions & 3 deletions collectoss/api/metrics/pull_request.py
Original file line number Diff line number Diff line change
Expand Up @@ -787,8 +787,8 @@ def pull_request_average_commit_counts(repo_group_id, repo_id=None, group_by='mo
pr_merged_at,
pr_closed_at,
pr_created_at
FROM augur_data.pull_request_commits, augur_data.pull_request_meta,augur_data.repo_groups,
augur_data.pull_requests JOIN repo ON pull_requests.repo_id = repo.repo_id
FROM data.pull_request_commits, data.pull_request_meta,data.repo_groups,
data.pull_requests JOIN repo ON pull_requests.repo_id = repo.repo_id
WHERE pull_requests.repo_id IN
(SELECT repo_id FROM repo WHERE repo_group_id = :repo_group_id)
AND pull_requests.pull_request_id = pull_request_commits.pull_request_id
Expand Down Expand Up @@ -821,7 +821,7 @@ def pull_request_average_commit_counts(repo_group_id, repo_id=None, group_by='mo
pr_merged_at,
pr_closed_at,
pr_created_at
FROM augur_data.pull_request_commits, augur_data.pull_requests, augur_data.pull_request_meta
FROM data.pull_request_commits, data.pull_requests, data.pull_request_meta
WHERE pull_requests.pull_request_id = pull_request_commits.pull_request_id
AND pull_requests.pull_request_id = pull_request_meta.pull_request_id
AND pull_requests.repo_id = :repo_id
Expand Down
12 changes: 6 additions & 6 deletions collectoss/api/metrics/repo_meta.py
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ def sbom_download(repo_group_id, repo_id=None):
:return: dosocs sbom
"""
dosocs_SQL = s.sql.text("""
select * from augur_data.repo_sbom_scans
select * from data.repo_sbom_scans
where repo_id = :repo_id;
""")

Expand Down Expand Up @@ -313,15 +313,15 @@ def cii_best_practices_badge(repo_group_id, repo_id=None):
if not repo_id:
cii_best_practices_badge_SQL = s.sql.text("""
SELECT data
FROM augur_data.repo_badging
FROM data.repo_badging
WHERE repo_id IN (SELECT repo_id FROM repo WHERE repo_group_id = :repo_group_id)
ORDER BY created_at DESC
LIMIT 1
""")
else:
cii_best_practices_badge_SQL = s.sql.text("""
SELECT data
FROM augur_data.repo_badging
FROM data.repo_badging
WHERE repo_id = :repo_id
ORDER BY created_at DESC
LIMIT 1
Expand Down Expand Up @@ -1270,7 +1270,7 @@ def clones(repo_group_id, repo_id=None, begin_date=None, end_date=None):
clone_data_timestamp AS date,
count_clones AS total_clones,
unique_clones
FROM augur_data.repo_clones_data
FROM data.repo_clones_data
WHERE repo_id = :repo_id
AND clone_data_timestamp BETWEEN :begin_date AND :end_date
ORDER BY clone_data_timestamp
Expand All @@ -1289,9 +1289,9 @@ def clones(repo_group_id, repo_id=None, begin_date=None, end_date=None):
clone_data_timestamp AS date,
count_clones AS total_clones,
unique_clones
FROM augur_data.repo_clones_data
FROM data.repo_clones_data
WHERE repo_id IN (
SELECT repo_id FROM augur_data.repo WHERE repo_group_id = :repo_group_id
SELECT repo_id FROM data.repo WHERE repo_group_id = :repo_group_id
)
AND clone_data_timestamp BETWEEN :begin_date AND :end_date
ORDER BY repo_id, clone_data_timestamp
Expand Down
2 changes: 1 addition & 1 deletion collectoss/api/metrics/toss.py
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ def toss_repo_info(repo_id):
repo_info.default_branch,
repo.repo_git
FROM
augur_data.repo_info
data.repo_info
JOIN repo ON repo.repo_id = repo_info.repo_id
WHERE
repo_info.repo_id = :repo_id
Expand Down
Loading
Loading