Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: feast-dev/feast
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master@{1day}
Choose a base ref
...
head repository: feast-dev/feast
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
  • 2 commits
  • 6 files changed
  • 3 contributors

Commits on Aug 19, 2026

  1. docs: Add end-to-end registry deletion lifecycle example and unit test (

    #5360) (#6504)
    
    * docs: add end-to-end registry deletion lifecycle snippet (#5360)
    
    The existing registry deletion docs cover the CLI and individual Python
    SDK delete methods, but lack a single copy-pasteable example showing the
    full create -> verify -> delete -> confirm flow.
    
    - Add an 'End-to-end example' snippet to registry.md that lists a feature
      view, deletes it with delete_feature_view(), and lists again to confirm.
    - Add a unit test for FeatureView deletion via apply(objects_to_delete=...,
      partial=False) to guard the programmatic deletion path.
    
    Signed-off-by: Linda Oraegbunam <obielinda@gmail.com>
    
    * test: cover delete_feature_view, the API the docs example uses
    
    Addresses review feedback on #6504: the new docs snippet demonstrates
    store.delete_feature_view(name), but the only test added went through
    apply(objects_to_delete=..., partial=False), so the documented API was
    still untested.
    
    - Add test_delete_feature_view, mirroring the registry.md snippet
      step for step: list, delete by name, list again, then assert
      get_feature_view raises FeatureViewNotFoundException.
    - Add test_delete_feature_view_raises_when_missing, covering the
      FeatureViewNotFoundException that delete_feature_view's own docstring
      promises for an unregistered name.
    - Keep the apply(objects_to_delete=...) test for the `feast apply` path
      documented in the hint block, and note in its docstring that it is
      deliberately distinct from delete_feature_view.
    - Lift the shared source frame and registration into two helpers so the
      two lifecycle tests do not duplicate ~30 lines of setup.
    
    Signed-off-by: Linda Oraegbunam <obielinda@gmail.com>
    
    ---------
    
    Signed-off-by: Linda Oraegbunam <obielinda@gmail.com>
    obielin authored Aug 19, 2026
    Configuration menu
    Copy the full SHA
    aade119 View commit details
    Browse the repository at this point in the history
  2. ci: Add bundle-sync verification to operator PR workflow (#6751)

    * ci: Add bundle-sync verification to operator PR workflow
    
    Signed-off-by: ntkathole <nikhilkathole2683@gmail.com>
    
    * fix: Regenerate operator bundle to sync RBAC permissions
    
    Run `make bundle` to pick up refined clusterrole/clusterrolebinding
    RBAC rules and drop stale subjectaccessreviews permission.
    
    Signed-off-by: ntkathole <nikhilkathole2683@gmail.com>
    
    * fix: Retry on AlreadyExists for cluster-scoped RBAC resources
    
    retry.RetryOnConflict only handles Conflict (resource version mismatch).
    When concurrent reconcile loops both GET a NotFound resource and race
    to Create it, the loser gets AlreadyExists which was not retried.
    
    Switch to retry.OnError with a predicate covering both IsConflict and
    IsAlreadyExists so the retry re-GETs the now-existing resource and
    proceeds with an update.
    
    Signed-off-by: ntkathole <nikhilkathole2683@gmail.com>
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * fix: Regenerate operator bundle to sync RBAC and CRD changes
    
    Run make bundle to pick up the clusterrole get/list RBAC verbs and
    updated CRD field descriptions.
    
    Signed-off-by: ntkathole <nikhilkathole2683@gmail.com>
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * fix: Handle AlreadyExists and Conflict as non-errors for cluster RBAC
    
    The controller-runtime cached client can return stale NotFound for
    cluster-scoped resources when the informer cache has not yet synced.
    This causes CreateOrUpdate to attempt a Create that fails with
    AlreadyExists. Retrying does not help because the cache remains
    stale during the short retry window.
    
    Treat AlreadyExists and Conflict as non-errors since the resource
    exists in the desired state. The next reconcile cycle will update
    its contents once the cache has synced. This follows the standard
    Kubernetes operator eventual-consistency pattern.
    
    Signed-off-by: ntkathole <nikhilkathole2683@gmail.com>
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    ---------
    
    Signed-off-by: ntkathole <nikhilkathole2683@gmail.com>
    Co-authored-by: Cursor <cursoragent@cursor.com>
    ntkathole and cursoragent authored Aug 19, 2026
    Configuration menu
    Copy the full SHA
    e79bd33 View commit details
    Browse the repository at this point in the history
Loading