32 Commits

Author SHA1 Message Date
daveoconnor
5fa57839da Celery workflow changes for release reports (#2043) 2025-12-12 13:12:01 -08:00
daveoconnor
69a652d066 Release reports refactor (#1996) (#1999)
Co-authored-by: Greg Kaleka <greg@gregkaleka.com>
2025-12-01 10:27:05 -08:00
daveoconnor
c980879935 Release Report Enhancements (#1750) (#1992) 2025-11-04 14:14:20 -08:00
daveoconnor
cb5c4ab492 Added module flagging from libraries.json (#1900) (#1926) 2025-09-30 14:35:26 -07:00
daveoconnor
1344c85617 Link commit authors to users (#1709, #1711) (#1717) 2025-03-31 11:34:25 -07:00
daveoconnor
2f7cf8514e Word cloud theming, added word listing page (#1623) 2025-02-10 18:19:01 -08:00
Brian Perrett
2981976b80 Add functionality to track LibraryVersion dependencies (#1524) 2024-12-16 14:28:33 -05:00
Greg Kaleka
c6bf4b1ff5 Fix report crash issue (#1502) 2024-11-27 13:18:38 -05:00
Brian Perrett
0d562b551f Generate reports asynchronously (#1421)
- fixes #1415
2024-11-07 15:32:41 -08:00
Brian Perrett
1d6fb3dc42 Make CommitAuthor admin sortable on name. (#1405)
- fixes #1399
2024-10-31 10:38:05 -07:00
Brian Perrett
646f916ee6 Updates and additions to release report stats (#1401)
- Add basic line change counts for each x.x.0 library versions.
- import line change counts during `import_commits` task.
- Add `update_issues` management command for importing Issues for each
LibraryVersion.
- Add update issues runnable command in `Issue` admin.
- Build word cloud using mailinglist content.
- Update release report with new data.
2024-10-31 10:14:41 -07:00
Brian Perrett
d3759cf83d Add mailing list stats to full and release reports. (#1373)
- fixes #1289 and #1290
2024-10-22 09:16:58 -07:00
Brian Perrett
e230128f61 Add authors to LibraryVersions. (#1347)
- fixes #1325
- reuses the logic that imports authors for libraries to do the same for
LibraryVersions.
- Authors are only added if an email is listed for the author in the
metadata
2024-10-10 10:39:16 -07:00
Brian Perrett
2be29b6322 Wrap staff-only views in admin_view (#1333)
- fixes #1245
2024-10-08 13:00:37 -07:00
Brian Perrett
23ebe24273 Import commits for minor versions (#1332)
- Fixes #1327
- Commit import will ignore patch and beta versions.
2024-10-07 11:57:30 -07:00
Brian Perrett
d91611b829 Add library report over all releases. (#1310)
- fixes #1288
2024-10-04 16:01:44 -07:00
Brian Perrett
48c09d3d5e Import commits per release and create release reports (#1263)
View stats per release, we do this by
doing log diffs between release tags. Ex: `git log
boost-1.78.0..boost-1.79.0`. The output is parsed and the commits
are saved with a foreign key to the `LibraryVersion` it relates to.

- commits are imported by doing "bare" clones (no project files, only
git data) of repos into temporary directories, as created by python's
bulitin `tempfile.TemporaryDirectory`
- Added Commit model
- Added CommitAuthor model
- Added CommitAuthorEmail model
  - One CommitAuthor can have many emails.
- Added task for importing commits. (and admin link to trigger it)
- Added task for importing CommitAuthor github data (avatar and profile
url, with admin link to trigger it)
- Added a basic Library stat page which can be viewed by going to the
admin -> library -> view stats.
- Added a `Get Release Report` button in the `LibraryAdmin` which allows
a staff member to select a boost version and up to 8 libraries to
generate a report for. The report is just a webpage which attempts to
convert cleanly to a pdf using the browser's print to pdf functionality.
- Updated the Library Detail page to show commits per release instead of
per month.
- Updated the Library Detail page to show `Maintainers & Contributors`
sorted by maintainers, then the top contributors for the selected
release, then the top contributors overall by commits descending.
- Removed CommitData, which was tracking monthly commit stats
2024-09-25 15:09:07 -07:00
Lacey Williams Henschel
9e9c6bb6b6 Add field missing_docs to LibraryVersion model
- Add new field to the admin
- Add logic for missing library-version docs to view
- Add tests
2024-02-17 16:54:54 -08:00
Lacey Williams Henschel
b7bb979724 Add exception logic for more historical library docs
- Lexical Cast
- Local Function
- Math Quaternion
- Min Max
- Numeric Conversion
- Result Of
- Scope Exit
- Throw Exception
- Type Erasure
- Type Index
- Correction for Value Initialized library

Also:
- Remove version import from docs refresh
- Add more helper functions for docs url generation
2024-02-15 13:37:48 -08:00
Lacey Williams Henschel
e5268ed7d8 Fix Container Hash and other docs:
- Add LibraryVersion inline to LibraryAdmin for easier debugging
- Add convenience function to generate random string
- Adjust Library slug so it functions as unique without being unique
- Add exception logic for older Container Hash versions
- Fix bugs in management commands
- Add exception logic for older Container Hash docs
- Add exception logic for Functional/Overloaded Function docs
- Add task to import all library-versions, and add that to existing admin refresh buttons
- Add logic to import github_url if we dont have it
2024-02-15 10:08:03 -08:00
Lacey Williams Henschel
468615dad8 Fix bug where commit counts for libraries were not being updated monthly as they should have been
- Remove the kwargs from the call to update_libraries
- Add placeholder task for commit counts
- Refactor to simplify the commit count logic and pull it out of the management command and into a task
- Adjust schedule
- Add a separate task to update current month commit counts
- Add CommitData to admin, and add functionality to update the CommitData from the admin via button, like other admin features
2024-02-12 11:32:09 -08:00
Lacey Williams Henschel
c9cc3c49b3 Add exception logic to load the Detail docs links
- Add a button to the LibraryVersion admin to reload the docs links
- Add some minimal docs on the admin features
2024-02-05 14:14:55 -08:00
Lacey Williams Henschel
fdc5e6dfff Add docs url to admin list view 2024-02-02 10:26:14 -08:00
Lacey Williams Henschel
3d473f853a Add admin button to refresh library data 2023-11-08 16:31:01 -08:00
Lacey Williams Henschel
214f37986b Streamline import commands and add docs
Add data JSONField to LibraryVersion model

Add fields to library list admin display

Add commands to update authors and maintainers individually

Exclude data JSONField from view querysets

Silence some output from the library-version import management command

Remove unused field from the library-version import management command

Save library-versions more cleanly in the library-version import management command

Remove loading maintainers from the import command, since they now have their own command

Add docs for new commands

Add boost_setup command to run one command to import all data

Add docs on first-time data import

Better exception handling, quieter flow, reduce GH API calls

Graceful handling if there is not a github repo

Pass most recent 12 months to commit counts command

Add some user-friendly output to setup command
2023-09-19 11:17:05 -07:00
Lacey Williams Henschel
00e68cf219 Remove unused Library model fields 2023-09-01 08:16:33 -07:00
Lacey Williams Henschel
67ceff967b Add ordering to admin 2023-03-08 13:19:24 -08:00
Lacey Williams Henschel
e5b9612af5 Add LibraryVersion to the admin 2023-02-01 15:14:36 -08:00
Lacey Williams Henschel
611bbf13a7 👕 Linter 2022-12-02 09:48:36 -08:00
Frank Wiles
266a608b86 Fix active field length 2022-07-17 11:49:07 -05:00
Frank Wiles
cab536eb6a Library work
- Some initial model tests
- Added Issue and PR models for tracking
- Added ghapi dependency
2022-07-17 11:38:06 -05:00
Frank Wiles
1added29ba Libraries 2022-07-17 10:16:37 -05:00