```js
  let foo = {}
  useEffect(() => {
    foo.bar.baz = 43;
  }, []);
```

This asks you to include `foo.bar.baz` into deps. But this doesn't make sense, as you write to it. Instead it should ask to include `foo.bar` into array.

If `foo` is a newly created object in render scope then we might additionally nudge you to `useRef` for it instead. Because otherwise it won't be shared between renders.
`Put the async function inside:\n\n` +
            'useEffect(() => {\n' +
            '  async function fetchData() {\n' +
            '     You can await here\n' +
            '    const response = await MyAPI.getData(someId);\n' +
            '     ...\n' +
            '  }\n' +
            '  fetchData();\n' +
            `}, [someId]);  Or [] if effect doesn't need props or state\n\n` +
            'Learn more about data fetching with Hooks: https:fb.me/react-hooks-data-fetching',
        });
      }
      
      const scope = scopeManager.acquire(node);
      
      
      
      
      
      
      
      
      const pureScopes = new Set();
      let componentScope = null;
      {
        let currentScope = scope.upper;
        while (currentScope) {
          pureScopes.add(currentScope);
          if (currentScope.type === 'function') {
            break;