Skip to content

Conversation

@google-labs-jules
Copy link
Contributor

This change adds a new cached widget to the homepage that displays the three most recent releases from the Growstuff GitHub releases atom feed. It also includes a 'find out more' link to the main releases page.


PR created automatically by Jules for task 2582790192454235530

This commit introduces a new widget on the homepage that displays the three most recent releases from the Growstuff GitHub releases atom feed.

The widget is implemented as follows:

- A new helper method `github_releases` is added to `ApplicationHelper`. This method fetches the atom feed from GitHub, parses it using Nokogiri, and caches the result for one hour.
- A new partial `_releases.html.haml` is created to render the releases.
- The partial is rendered on the homepage.
- A feature test with a VCR cassette is added to ensure the widget works as expected.

The implementation uses XPath to parse the feed, as requested by the user, to avoid adding a new gem dependency.
@google-labs-jules
Copy link
Contributor Author

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll acknowledge your comments with a 👀 emoji and then get to work. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

I will automatically address your feedback. For any comments you don't want me to act on, just include (aside).



For security, I will only act on instructions from the user who triggered this task for this pull request.

@CloCkWeRX CloCkWeRX marked this pull request as ready for review September 21, 2025 03:09
google-labs-jules bot and others added 5 commits September 21, 2025 03:10
This commit introduces a new widget on the homepage that displays the three most recent releases from the Growstuff GitHub releases atom feed.

The widget is implemented as follows:

- A new helper method `github_releases` is added to `ApplicationHelper`. This method fetches the atom feed from GitHub, parses it using Nokogiri, and caches the result for one day.
- A new partial `_releases.html.haml` is created to render the releases.
- The partial is rendered on the homepage.
- A feature test with a VCR cassette is added to ensure the widget works as expected.

The implementation uses XPath to parse the feed, as requested by the user, to avoid adding a new gem dependency.
@CloCkWeRX CloCkWeRX merged commit 41412b8 into dev Sep 21, 2025
16 checks passed
@CloCkWeRX CloCkWeRX deleted the feature/github-releases-widget branch September 21, 2025 04:07
CloCkWeRX added a commit that referenced this pull request Sep 21, 2025
* Format

* Bump puma from 7.0.2 to 7.0.3

Bumps [puma](https://github.com/puma/puma) from 7.0.2 to 7.0.3.
- [Release notes](https://github.com/puma/puma/releases)
- [Changelog](https://github.com/puma/puma/blob/master/History.md)
- [Commits](puma/puma@v7.0.2...v7.0.3)

---
updated-dependencies:
- dependency-name: puma
  dependency-version: 7.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump active_utils from 3.5.0 to 3.6.0

Bumps [active_utils](https://github.com/shopify/active_utils) from 3.5.0 to 3.6.0.
- [Release notes](https://github.com/shopify/active_utils/releases)
- [Changelog](https://github.com/Shopify/active_utils/blob/main/CHANGELOG.md)
- [Commits](Shopify/active_utils@v3.5.0...v3.6.0)

---
updated-dependencies:
- dependency-name: active_utils
  dependency-version: 3.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump rexml from 3.4.1 to 3.4.2

Bumps [rexml](https://github.com/ruby/rexml) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](ruby/rexml@v3.4.1...v3.4.2)

---
updated-dependencies:
- dependency-name: rexml
  dependency-version: 3.4.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump recaptcha from 5.20.1 to 5.21.1

Bumps [recaptcha](https://github.com/ambethia/recaptcha) from 5.20.1 to 5.21.1.
- [Changelog](https://github.com/ambethia/recaptcha/blob/master/CHANGELOG.md)
- [Commits](ambethia/recaptcha@v5.20.1...v5.21.1)

---
updated-dependencies:
- dependency-name: recaptcha
  dependency-version: 5.21.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Merge pull request #4222 from Growstuff/feature/add-activity-prompts

feat: Add prompts for new activities

* Add ability to copy/duplicate an activity

* Rubocop

* Rubocop fixes

* Rubocop

* Rubocop

* Rubocop

* Rubocop

* Rubocop

* Add ability to create companion plantings

This change adds the ability for crop wranglers to create and manage companion plantings for crops.

- Adds a `source_url` to the `CropCompanion` model to store an optional reference URL.
- Restricts the management of companion plantings to users with the `crop_wrangler` role.
- Creates a new admin interface for managing companion plantings for a specific crop.
- Updates the crop show page to display companions from both the crop and its parent crop.

* Merge pull request #4262 from Growstuff/feature/github-releases-widget

feat: Add cached GitHub releases widget to homepage

* Add recurring activities feature without database persistence (#4261)

* This change introduces a new feature that allows users to create recurring activities.

A user can now specify that an activity should be repeated "X" times, every "Y" weeks. When an activity is created with these options, the application will create the initial activity and then "X" additional copies, with each copy's due date offset by "Y" weeks from the previous one.

The repeat information is not stored in the database. It is only used at the time of creation to generate the recurring activities.

The following changes were made:
- Updated the new activity form to include fields for "repeat times" and "repeat weeks".
- Modified the `ActivitiesController#create` action to handle the creation of recurring activities.
- Added feature tests to ensure the new functionality works as expected.

* Remove not very useful spec

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Daniel O'Connor <daniel.oconnor@gmail.com>

* Adjust copy of activities and prompts (#4260)

* Adjust copy

* Adjust copy

* Move repeat prompt

* Improve prompts

* Clean up schema

* Fix spec

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants