{"id":15914360,"url":"https://github.com/bbengfort/ledger","last_synced_at":"2025-03-22T21:31:23.765Z","repository":{"id":46857113,"uuid":"129522921","full_name":"bbengfort/ledger","owner":"bbengfort","description":"Bengfort household financial analysis tools.","archived":false,"fork":false,"pushed_at":"2025-01-14T16:06:42.000Z","size":6525,"stargazers_count":2,"open_issues_count":26,"forks_count":2,"subscribers_count":2,"default_branch":"develop","last_synced_at":"2025-03-18T14:53:34.435Z","etag":null,"topics":["django","finances","ledger"],"latest_commit_sha":null,"homepage":"https://ledger.bengfort.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bbengfort.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-04-14T14:09:41.000Z","updated_at":"2024-09-29T21:04:49.000Z","dependencies_parsed_at":"2024-10-28T14:53:26.897Z","dependency_job_id":"42284e93-9007-40a5-b610-7246bdccd303","html_url":"https://github.com/bbengfort/ledger","commit_stats":{"total_commits":87,"total_committers":2,"mean_commits":43.5,"dds":0.02298850574712641,"last_synced_commit":"8f0a62cbd5830946a6a844c58d0908cf0f1ab498"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbengfort%2Fledger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbengfort%2Fledger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbengfort%2Fledger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbengfort%2Fledger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bbengfort","download_url":"https://codeload.github.com/bbengfort/ledger/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245022447,"owners_count":20548542,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","finances","ledger"],"created_at":"2024-10-06T17:01:57.627Z","updated_at":"2025-03-22T21:31:22.578Z","avatar_url":"https://github.com/bbengfort.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ledger\n\n[![CI](https://github.com/bbengfort/ledger/actions/workflows/tests.yaml/badge.svg?branch=develop)](https://github.com/bbengfort/ledger/actions/workflows/tests.yaml)\n[![CD](https://github.com/bbengfort/ledger/actions/workflows/containers.yaml/badge.svg?branch=develop)](https://github.com/bbengfort/ledger/actions/workflows/containers.yaml)\n\n**Bengfort household financial analysis tools.**\n\n## Releases\n\nLedger has a long history and not that many associated releases (unfortunately). However, with the recent revisions to version 1.4 (the release that implemented Beagle) and the inclusion of Sentry monitoring, I've formalized the release cycle.\n\nMost work will happen in the `develop` branch. When ready to release and deploy to Heroku, we'll bump the version and merge to `master`, and tag the version. Only the master branch will be pushed to Heroku. One pushed to Heroku, run the `scripts/sentry_release.sh` in the Heroku environment to associate the commits and the release with Sentry.\n\nStarting from the develop branch, consider the relase for version 1.0\n\n```\n$ git checkout -b release-1.0\n```\n\nEdit the `ledger/version.py` file with the new version information. Run the tests.\n\n```\n$ git checkout master\n$ git merge --no-ff --no-edit release-1.0\n$ git tag -a v1.0\n$ git push origin v1.0\n$ git push heroku master\n$ ./scripts/sentry_release.sh\n```\n\nThis should finalize the release, which will now be in both GitHub, Sentry, and Heroku.\n\n```\n$ git checkout develop\n$ git merge --no-ff --no-edit release-1.0\n$ git branch -d release 1.0\n```\n\nNow the develop branch should be updated with the new version information.\n\n## Testing\n\nRun the tests using `pytest`; note that the test configuration is stored in `pytest.ini` and that the `flake8` checker is written as part of the tests. The pytest-django module is used to discover tests in each indvididual app. Note that the tests in the app are generally stored in a `tests` directory, or if the app is small (or incomplete) in a `test.py` file.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbengfort%2Fledger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbbengfort%2Fledger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbengfort%2Fledger/lists"}