Repository: jina-ai/jina
File: setup.py (Python)

Code before:
if os.name == 'nt':
    # uvloop is not supported on windows
    exclude_deps = {i for i in standard_deps if i.startswith('uvloop')}
    perf_deps.difference_update(exclude_deps)
    standard_deps.difference_update(exclude_deps)
    for k in ['all', 'devel', 'cicd']:
        all_deps[k].difference_update(exclude_deps)

# by default, final deps is the standard deps, unless specified by env otherwise
final_deps = standard_deps

# Use env var to enable a minimum installation of Jina
# JINA_PIP_INSTALL_CORE=1 pip install jina
# JINA_PIP_INSTALL_PERF=1 pip install jina
if os.environ.get('JINA_PIP_INSTALL_CORE'):
    final_deps = core_deps
elif os.environ.get('JINA_PIP_INSTALL_PERF'):
    final_deps = perf_deps

if sys.version_info.major == 3 and sys.version_info.minor >= 11:
    grpcio_deps = []
    for dep in final_deps:
        if dep.startswith('grpcio'):
            grpcio_deps.append(dep)
    for dep in grpcio_deps:
        final_deps.remove(dep)
    final_deps.add('grpcio>=1.49.0')
    final_deps.add('grpcio-health-checking>=1.49.0')
    final_deps.add('grpcio-reflection>=1.49.0')

setup(
    name=pkg_name,
    packages=find_packages(),
    version=__version__,
    include_package_data=True,
    description='Build multimodal AI services via cloud native technologies · Neural Search · Generative AI · MLOps',
    author='Jina AI',
    author_email='hello@jina.ai',
    license='Apache 2.0',
    url='https://github.com/jina-ai/jina/',
    download_url='https://github.com/jina-ai/jina/tags',
    long_description=_long_description,
    long_description_content_type='text/markdown',
    zip_safe=False,
    install_requires=list(final_deps),
    extras_require=all_deps,
    entry_points={
        'console_scripts': [
            'jina=jina_cli:main',
        ],
    },

Review comment (suggestion):
```suggestion
    for dep in list(final_deps):
        if dep.startswith('grpcio'):
            final_deps.remove(dep)
```

Code after:
if os.name == 'nt':
    # uvloop is not supported on windows
    exclude_deps = {i for i in standard_deps if i.startswith('uvloop')}
    perf_deps.difference_update(exclude_deps)
    standard_deps.difference_update(exclude_deps)
    for k in ['all', 'devel', 'cicd']:
        all_deps[k].difference_update(exclude_deps)

# by default, final deps is the standard deps, unless specified by env otherwise
final_deps = standard_deps

# Use env var to enable a minimum installation of Jina
# JINA_PIP_INSTALL_CORE=1 pip install jina
# JINA_PIP_INSTALL_PERF=1 pip install jina
if os.environ.get('JINA_PIP_INSTALL_CORE'):
    final_deps = core_deps
elif os.environ.get('JINA_PIP_INSTALL_PERF'):
    final_deps = perf_deps

if sys.version_info.major == 3 and sys.version_info.minor >= 11:
    for dep in list(final_deps):
        if dep.startswith('grpcio'):
            final_deps.remove(dep)
    final_deps.add('grpcio>=1.49.0')
    final_deps.add('grpcio-health-checking>=1.49.0')
    final_deps.add('grpcio-reflection>=1.49.0')

setup(
    name=pkg_name,
    packages=find_packages(),
    version=__version__,
    include_package_data=True,
    description='Build multimodal AI services via cloud native technologies · Neural Search · Generative AI · MLOps',
    author='Jina AI',
    author_email='hello@jina.ai',
    license='Apache 2.0',
    url='https://github.com/jina-ai/jina/',
    download_url='https://github.com/jina-ai/jina/tags',
    long_description=_long_description,
    long_description_content_type='text/markdown',
    zip_safe=False,
    install_requires=list(final_deps),
    extras_require=all_deps,
    entry_points={
        'console_scripts': [
            'jina=jina_cli:main',
        ],
    },
    cmdclass={
        'develop': PostDevelopCommand,
        'install': PostInstallCommand,