• fyu-bdai's avatar
    Moves InteractiveScene entities from class to instance variables (#466) · 39ce5ac4
    fyu-bdai authored
    # Description
    
    <!--
    Thank you for your interest in sending a pull request. Please make sure
    to check the contribution guidelines.
    
    Link: https://isaac-orbit.github.io/orbit/source/refs/contributing.html
    -->
    
    Currently, InteractiveScene declares several of its entities
    (articulation, sensor, and rigid bodies) as class variables. This causes
    the variables to be shared across **all** instances of the class, which
    is not desired behavior if there is ever a case when `InteractiveScene`
    is used more than once.
    
    This fix changes the following: 
    
    1. All class variables in `InteractiveScene` defined above the
    constructor is now moved inside the constructor as instance variables.
    2. Adds `@property` getters to access the entities. 
    3. Rolls back the fix introduced in #380, which changes the `__del__`
    magic method to clear out the class variables that persisted, but ended
    up breaking #464.
    
    Fixes #465 
    
    <!-- As a practice, it is recommended to open an issue to have
    discussions on the proposed pull request.
    This makes it easier for the community to keep track of what is being
    developed or added, and if a given feature
    is demanded by more than one party. -->
    
    ## Type of change
    
    <!-- As you go through the list, delete the ones that are not
    applicable. -->
    
    - Bug fix (non-breaking change which fixes an issue)
    
    ## Checklist
    
    - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
    `./orbit.sh --format`
    - [x] I have made corresponding changes to the documentation
    - [x] My changes generate no new warnings
    - [x] I have added tests that prove my fix is effective or that my
    feature works
    - [x] I have run all the tests with `./orbit.sh --test` and they pass
    - [x] I have updated the changelog and the corresponding version in the
    extension's `config/extension.toml` file
    - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
    exists there
    
    <!--
    As you go through the checklist above, you can mark something as done by
    putting an x character in it
    
    For example,
    - [x] I have done this task
    - [ ] I have not done this task
    -->
    39ce5ac4
Name
Last commit
Last update
..
extensions Loading commit data...
standalone Loading commit data...