47 Commits

Author SHA1 Message Date
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
65fdf7c91a Correct documentation URL issues (#1975) 2025-10-17 13:14:07 -07:00
daveoconnor
cb5c4ab492 Added module flagging from libraries.json (#1900) (#1926) 2025-09-30 14:35:26 -07:00
daveoconnor
adebb47258 Added contributor email address claim validation (#1710) (#1866) 2025-09-05 13:55:33 -07:00
daveoconnor
900d3ba583 Correct release report added counts (#1865) 2025-08-11 10:22:30 -07:00
daveoconnor
1344c85617 Link commit authors to users (#1709, #1711) (#1717) 2025-03-31 11:34:25 -07:00
daveoconnor
06cd844f48 Fix: bad migration. (#1682) 2025-03-10 09:57:47 -07:00
daveoconnor
77b3253678 Fix clashing migrations (#1626) 2025-02-11 08:30:04 -08:00
daveoconnor
2f7cf8514e Word cloud theming, added word listing page (#1623) 2025-02-10 18:19:01 -08:00
daveoconnor
ead361e811 Added library graphic; sorting by library "great","good","standard" (#1624) 2025-02-10 18:18:50 -08:00
Brian Perrett
2981976b80 Add functionality to track LibraryVersion dependencies (#1524) 2024-12-16 14:28:33 -05:00
daveoconnor
1d31bef1e4 Library Version Based CPP versions and descriptions (#1422) 2024-11-12 15:49:16 -05: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
daveoconnor
64c8a94fb0 Fix for 0023 migrations conflict (#1389) 2024-10-28 15:45:02 -07:00
Gavin Wahl
a552c633b9 Case insensitive URLs for library detail (#1362)
Redirect to the canonical case when it does not match. This adds a
case-insensitive unique constraint on library slugs to make this safe.

Fixes #163
2024-10-25 13:50:29 -06: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
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
Kenneth Reitz
833503ecff Add migration to repopulate slug field based on library key 2024-03-25 16:09:35 -04:00
Lacey Williams Henschel
6d3647692b Fix migrations conflict 2024-02-17 17:03:01 -08: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
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
db05b77940 Add merge migration 2023-09-19 14:02:32 -07: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
87347c7f05 Remove first github release date; unused 2023-09-12 10:36:12 -07:00
Lacey Williams Henschel
edc335597e Add JSON data field to Library model, and save libraries.json data there 2023-09-07 15:58:07 -07:00
Lacey Williams Henschel
00e68cf219 Remove unused Library model fields 2023-09-01 08:16:33 -07:00
Lacey Williams Henschel
d3d9572ad6 - Add featured field to Library model
- Add featured library to context of home page
- Add the featured library to the homepage template
- Return a random library if no library is marked as featured
- Add link to library detail page
- Add default author image
- Add hover text with author name
- Limit "random" featured library to libraries within the most recent Boost version
2023-08-21 11:04:15 -07:00
Lacey Williams Henschel
eeb615ceff Load docs urls for library-versions from S3
- Add documentation_url to LibraryVersion table
- Retrieve the documentation_url in the view
- If the documentation_url is not present, show the Version documentation_url
- Hide the "https://" in the template
- Add Celery task to retrieve the documentation_urls from the libraries page in S3 and match them to import_library_versions
- Add HTML helper function to extract the libraries and docs URLs from the HTML
- Add one-time command to import docs urls
- Load the documentation_urls in the command that loads all library-versions
- Add a min-release option to the command that loads library-versions
- Document the new command and changes to the existing command
2023-08-04 08:40:00 -07:00
Lacey Williams Henschel
2a2358d60a Make library and version on LibraryVersion required 2023-07-10 06:22:36 -07:00
Natalia
db1ad7983b Revert changes to files inside static/img and static/animations
Also revert changes to migrations
2023-05-30 23:21:53 -03:00
Natalia
a8cd8f507a Ran pre-commit run -a
Completed runs of black and rest of pre-commit checks.
2023-05-30 23:21:53 -03:00
Lacey Williams Henschel
f677652bc3 change to PositiveIntegerField for count 2023-05-26 09:48:55 -07:00
Lacey Williams Henschel
cee6df7b4b Condense mCommitData migration files 2023-05-26 09:48:55 -07:00
Lacey Williams Henschel
2146e7bc7b Add related_name 2023-05-26 09:48:55 -07:00
Lacey Williams Henschel
6ae8418f89 Add CommitData model for commit counts 2023-05-26 09:48:55 -07:00
Lacey Williams Henschel
04ecc158d0 🏦 Add date field, save date 2023-05-19 12:55:02 -07:00
Lacey Williams Henschel
0f3e2af9d2 🏦 Cascade deletions of versions and libraries to LibraryVersions 2023-05-15 10:19:32 -07:00
Lacey Williams Henschel
523adc6e08 👕 Linter 2023-03-23 13:21:29 -07:00
Lacey Williams Henschel
4abdfdf457 🏦 Add key field, add help text and docstring to Library 2023-03-23 12:13:35 -07:00
Lacey Williams Henschel
bb4bd37713 🏦 Move maintainers M2M to LibraryVersion 2023-03-03 13:11:46 -08:00
Lacey Williams Henschel
4e249ac6da 🏦 Add LibraryVersion M2M through model and tests 2023-01-30 10:47:31 -08:00
Lacey Williams Henschel
611bbf13a7 👕 Linter 2022-12-02 09:48:36 -08:00
Frank Wiles
ddcf75d6bc Black codebase 2022-07-24 15:27:23 -05:00
Frank Wiles
58f8e8272a WIP on Library detail pages 2022-07-24 15:25:46 -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