You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by GitBox <gi...@apache.org> on 2022/07/27 00:34:48 UTC

[GitHub] [beam] chamikaramj opened a new pull request, #22462: Upgrades pip before installing Beam for Python default expansion service

chamikaramj opened a new pull request, #22462:
URL: https://github.com/apache/beam/pull/22462

   **Please** add a meaningful description for your change here
   
   ------------------------
   
   Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
   
    - [ ] [**Choose reviewer(s)**](https://beam.apache.org/contribute/#make-your-change) and mention them in a comment (`R: @username`).
    - [ ] Mention the appropriate issue in your description (for example: `addresses #123`), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment `fixes #<ISSUE NUMBER>` instead.
    - [ ] Update `CHANGES.md` with noteworthy changes.
    - [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
   
   See the [Contributor Guide](https://beam.apache.org/contribute) for more tips on [how to make review process smoother](https://beam.apache.org/contribute/#make-reviewers-job-easier).
   
   To check the build health, please visit [https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md](https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md)
   
   GitHub Actions Tests Status (on master branch)
   ------------------------------------------------------------------------------------------------
   [![Build python source distribution and wheels](https://github.com/apache/beam/workflows/Build%20python%20source%20distribution%20and%20wheels/badge.svg?branch=master&event=schedule)](https://github.com/apache/beam/actions?query=workflow%3A%22Build+python+source+distribution+and+wheels%22+branch%3Amaster+event%3Aschedule)
   [![Python tests](https://github.com/apache/beam/workflows/Python%20tests/badge.svg?branch=master&event=schedule)](https://github.com/apache/beam/actions?query=workflow%3A%22Python+Tests%22+branch%3Amaster+event%3Aschedule)
   [![Java tests](https://github.com/apache/beam/workflows/Java%20Tests/badge.svg?branch=master&event=schedule)](https://github.com/apache/beam/actions?query=workflow%3A%22Java+Tests%22+branch%3Amaster+event%3Aschedule)
   
   See [CI.md](https://github.com/apache/beam/blob/master/CI.md) for more information about GitHub Actions CI.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] chamikaramj commented on a diff in pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
chamikaramj commented on code in PR #22462:
URL: https://github.com/apache/beam/pull/22462#discussion_r931387785


##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,17 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Upgrading pip and setuptools for the virtual environment.

Review Comment:
   I think we cache the virtual environment so the code will not break as long as the cache is available ?
   
   We also recommend such upgrades when installing Beam in the Quickstart guide.



##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,17 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Upgrading pip and setuptools for the virtual environment.
+            subprocess.run([
+                venv_python, '-m', 'pip', 'install', '--upgrade', 'pip'

Review Comment:
   I didn't notice a considerable increase in the launch time.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] chamikaramj commented on a diff in pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
chamikaramj commented on code in PR #22462:
URL: https://github.com/apache/beam/pull/22462#discussion_r931183405


##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,13 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Beam recommends upgrading pip before installing.
+            subprocess.run([
+                venv_python, '-m', 'pip', 'install', '--upgrade', 'pip'

Review Comment:
   Done. Thanks.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] chamikaramj commented on pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
chamikaramj commented on PR #22462:
URL: https://github.com/apache/beam/pull/22462#issuecomment-1196160063

   This fixes #22463 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] chamikaramj commented on pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
chamikaramj commented on PR #22462:
URL: https://github.com/apache/beam/pull/22462#issuecomment-1197299403

   Thanks.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] chamikaramj commented on pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
chamikaramj commented on PR #22462:
URL: https://github.com/apache/beam/pull/22462#issuecomment-1196142581

   cc: @robertwb 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] github-actions[bot] commented on pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #22462:
URL: https://github.com/apache/beam/pull/22462#issuecomment-1196170498

   Assigning reviewers. If you would like to opt out of this review, comment `assign to next reviewer`:
   
   R: @lukecwik for label java.
   
   Available commands:
   - `stop reviewer notifications` - opt out of the automated review tooling
   - `remind me after tests pass` - tag the comment author after tests pass
   - `waiting on author` - shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)
   
   The PR bot will only process comments in the main thread (not review comments).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] chamikaramj merged pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
chamikaramj merged PR #22462:
URL: https://github.com/apache/beam/pull/22462


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] ihji commented on a diff in pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
ihji commented on code in PR #22462:
URL: https://github.com/apache/beam/pull/22462#discussion_r931469314


##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,17 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Upgrading pip and setuptools for the virtual environment.

Review Comment:
   Yeah, caching seems fine (possibly be confusing in certain cases since the same version works for some people and doesn't work for the others depending on the time they first launch the service).
   
   In the long term, I think we could dockerize default expansion services (like we release the SDK containers for each SDKs for each SDK version).



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] AnandInguva commented on a diff in pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
AnandInguva commented on code in PR #22462:
URL: https://github.com/apache/beam/pull/22462#discussion_r931147753


##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,13 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Beam recommends upgrading pip before installing.
+            subprocess.run([
+                venv_python, '-m', 'pip', 'install', '--upgrade', 'pip'

Review Comment:
   Maybe upgrade setuptools with pip as well. Some images use very old setuptools



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [beam] ihji commented on a diff in pull request #22462: Upgrades pip before installing Beam for Python default expansion service

Posted by GitBox <gi...@apache.org>.
ihji commented on code in PR #22462:
URL: https://github.com/apache/beam/pull/22462#discussion_r931351666


##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,17 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Upgrading pip and setuptools for the virtual environment.
+            subprocess.run([
+                venv_python, '-m', 'pip', 'install', '--upgrade', 'pip'

Review Comment:
   Would this two additional installations increase the launch time? Was there any noticeable difference?
   
   



##########
sdks/java/extensions/python/src/main/resources/org/apache/beam/sdk/extensions/python/bootstrap_beam_venv.py:
##########
@@ -92,6 +92,17 @@ def maybe_strict_version(s):
     if not os.path.exists(venv_python):
         try:
             subprocess.run([executable, '-m', 'venv', venv_dir], check=True)
+
+            # Upgrading pip and setuptools for the virtual environment.

Review Comment:
   Looks good, thanks. My only concern is that automatic pip update to the latest version may also break working codes in the future since flexible dependency allows external dependency updates could affect the behavior of existing codes with no change.
   
   Did you consider tradeoffs between upgrading to the latest vs. specifying a fixed working version? 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org