From 6a10ca4e29763b027c45122209d002cc1c7f5fd5 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 08:39:59 -0700 Subject: [PATCH 01/77] Add ray/meta.yaml. --- recipes/ray/meta.yaml | 83 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 recipes/ray/meta.yaml diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml new file mode 100644 index 0000000000000..366e5fa4ff0dc --- /dev/null +++ b/recipes/ray/meta.yaml @@ -0,0 +1,83 @@ +# Note: there are many handy hints in comments in this example -- remove them when you've finalized your recipe + +# Jinja variables help maintain the recipe as you'll update the version only here. +# Using the name variable with the URL in line 14 is convenient +# when copying and pasting from another recipe, but not really needed. +{% set name = "ray" %} +{% set version = "0.8.0" %} + +package: + name: {{ name|lower }} + version: {{ version }} + +source: + # url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz + # If getting the source from GitHub, remove the line above, + # uncomment the line below, and modify as needed. Use releases if available: + # url: https://github.com/ray-project/ray/releases/download/{{ version }}/ray-{{ version }}.tar.gz + # and otherwise fall back to archive: + # url: https://github.com/simplejson/simplejson/archive/{{ version }}.tar.gz + url: https://github.com/ray-project/ray/archive/ray-0.8.0.tar.gz + sha256: 2da0a27e00febd16e9421261a3b3ef5352bf37378e28d1adabbf73879f910748 + # sha256 is the preferred checksum -- you can get it for a file with: + # `openssl sha256 `. + # You may need the openssl package, available on conda-forge: + # `conda install openssl -c conda-forge`` + +build: + # Uncomment the following line if the package is pure Python and the recipe is exactly the same for all platforms. + # It is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. + # See https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. + noarch: python + # Ray is not exactly pure Python, but it's pip-installable without any conda dependencies so I think we can use noarch python here + number: 0 + # If the installation is complex, or different between Unix and Windows, use separate bld.bat and build.sh files instead of this key. + # By default, the package will be built for the Python versions supported by conda-forge and for all major OSs. + # Add the line "skip: True # [py<35]" (for example) to limit to Python 3.5 and newer, or "skip: True # [not win]" to limit to Windows. + skip: True # [py<36] + script: "{{ PYTHON }} -m pip install . -vv" + +requirements: + build: + # If your project compiles code (such as a C extension) then add the required compilers as separate entries here. + # Compilers are named 'c', 'cxx' and 'fortran'. + - {{ compiler('c') }} + host: + - python + - pip + run: + - python + +test: + # Some packages might need a `test/commands` key to check CLI. + # List all the packages/modules that `run_test.py` imports. + imports: + - ray + - ray.tests + +about: + home: https://github.com/ray-project/ray + # Remember to specify the license variants for BSD, Apache, GPL, and LGPL. + # Prefer the short version, e.g: GPL-2.0 instead of GNU General Public License version 2.0 + # See https://opensource.org/licenses/alphabetical + license: Apache-2.0 + # The license_family, i.e. "BSD" if license is "BSD-3-Clause". (optional) + license_family: Apache + # It is strongly encouraged to include a license file in the package, + # (even if the license doesn't require it) using the license_file entry. + # See https://conda.pydata.org/docs/building/meta-yaml.html#license-file + license_file: LICENSE + summary: 'Ray is a fast and simple framework for building and running distributed applications.' + + # The remaining entries in this section are optional, but recommended. + description: | + Ray is a fast and simple framework for building and running + distributed applications. + doc_url: https://ray.readthedocs.io/ + dev_url: https://github.com/ray-project/ray + +extra: + recipe-maintainers: + # GitHub IDs for maintainers of the recipe. + # Always check with the people listed below if they are OK becoming maintainers of the recipe. (There will be spam!) + - dHannasch From 5577e0785a9895aa3bb2c93b2dda94c9ff382b13 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 08:58:58 -0700 Subject: [PATCH 02/77] Cannot use noarch even if pure Python if restricting Python version. --- recipes/ray/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 366e5fa4ff0dc..1bf4874bf3f3b 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -28,8 +28,9 @@ build: # Uncomment the following line if the package is pure Python and the recipe is exactly the same for all platforms. # It is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. # See https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. - noarch: python - # Ray is not exactly pure Python, but it's pip-installable without any conda dependencies so I think we can use noarch python here + # noarch: python + # Ray is not exactly pure Python, but it's pip-installable without any conda dependencies so I think we can use noarch python here? + # This is the friendly automated conda-forge-linting service. noarch packages can't have selectors. If the selectors are necessary, please remove noarch python. number: 0 # If the installation is complex, or different between Unix and Windows, use separate bld.bat and build.sh files instead of this key. # By default, the package will be built for the Python versions supported by conda-forge and for all major OSs. From 6e0d141158f16ceb813da076380448106b0397db Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 09:31:47 -0700 Subject: [PATCH 03/77] ray/ci/travis/install-bazel.sh --- recipes/ray/meta.yaml | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 1bf4874bf3f3b..e73c59d7305b2 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -36,7 +36,12 @@ build: # By default, the package will be built for the Python versions supported by conda-forge and for all major OSs. # Add the line "skip: True # [py<35]" (for example) to limit to Python 3.5 and newer, or "skip: True # [not win]" to limit to Windows. skip: True # [py<36] - script: "{{ PYTHON }} -m pip install . -vv" + # script: "{{ PYTHON }} -m pip install . -vv" + # script: "cd python && {{ PYTHON }} -m pip install . --no-deps -vv" + script: + - ray/ci/travis/install-bazel.sh + - cd ray/python + - {{ PYTHON }} -m pip install . --verbose requirements: build: @@ -46,6 +51,17 @@ requirements: host: - python - pip + - numpy + - filelock + - funcsigs + - click + - colorama + - pytest + - pyyaml + - redis + - six >=1.0.0 + - flatbuffers + - cython >=0.29 run: - python From 1e229555060ed3b7ffb25b3487e4980a69a1e414 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 09:38:25 -0700 Subject: [PATCH 04/77] bazel can be conda dependency --- recipes/ray/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index e73c59d7305b2..7da929fd9901d 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -39,8 +39,8 @@ build: # script: "{{ PYTHON }} -m pip install . -vv" # script: "cd python && {{ PYTHON }} -m pip install . --no-deps -vv" script: - - ray/ci/travis/install-bazel.sh - - cd ray/python + - ci/travis/install-bazel.sh + - cd python - {{ PYTHON }} -m pip install . --verbose requirements: @@ -62,6 +62,7 @@ requirements: - six >=1.0.0 - flatbuffers - cython >=0.29 + - bazel run: - python From 3318f9ee92abdacf0a2bf513d049914f8019fcdd Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 09:47:00 -0700 Subject: [PATCH 05/77] skip install-bazel.sh --- recipes/ray/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 7da929fd9901d..d4cf83badf85c 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -39,7 +39,7 @@ build: # script: "{{ PYTHON }} -m pip install . -vv" # script: "cd python && {{ PYTHON }} -m pip install . --no-deps -vv" script: - - ci/travis/install-bazel.sh + # - ci/travis/install-bazel.sh fails on line 22 wget command not found, try making bazel a dependency - cd python - {{ PYTHON }} -m pip install . --verbose From 1f37f0fde0a4b3be48fd57d1918f8b7f9b496682 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 10:04:37 -0700 Subject: [PATCH 06/77] FileNotFoundError: [Errno 2] No such file or directory: ../README.rst --- recipes/ray/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index d4cf83badf85c..afcbdf17631b0 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -40,7 +40,10 @@ build: # script: "cd python && {{ PYTHON }} -m pip install . --no-deps -vv" script: # - ci/travis/install-bazel.sh fails on line 22 wget command not found, try making bazel a dependency + - ls + - ls README.rst - cd python + - ls - {{ PYTHON }} -m pip install . --verbose requirements: From 49a75874cd61c7af8cf1d69d440854bcc8b6efb4 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 10:13:56 -0700 Subject: [PATCH 07/77] ls ../README.rst --- recipes/ray/meta.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index afcbdf17631b0..71e7b0d00af06 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -44,7 +44,8 @@ build: - ls README.rst - cd python - ls - - {{ PYTHON }} -m pip install . --verbose + - ls ../README.rst + - {{ PYTHON }} -m pip install . --verbose -vv requirements: build: From eeec76869178cf19a8c05ab069e18adfc5881f99 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 10:29:47 -0700 Subject: [PATCH 08/77] --editable --- recipes/ray/meta.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 71e7b0d00af06..a141aa6683b77 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -45,7 +45,10 @@ build: - cd python - ls - ls ../README.rst - - {{ PYTHON }} -m pip install . --verbose -vv + - {{ PYTHON }} -m pip install --editable . --verbose -vv + # --editable is a little silly for a conda-forge package, but the ray installation instructions require it, and I finally realized why. + # ray has no MANIFEST.in, nor anything that serves the same function. + # So README.rst is not copied by pip, so it is not found in pip's temporary directory. requirements: build: From d517fabf73652802376cfa9717df05f2f8ac005e Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 10:39:34 -0700 Subject: [PATCH 09/77] ../build.sh: line 113: unzip: command not found --- recipes/ray/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index a141aa6683b77..1cef05141a49f 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -70,6 +70,7 @@ requirements: - flatbuffers - cython >=0.29 - bazel + - unzip run: - python From a6573c707d9d48030ee0502bdbff88756327870f Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 10:50:54 -0700 Subject: [PATCH 10/77] /home/conda/staged-recipes/build_artifacts/ray_1579455767395/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/bin/bazel: /usr/lib64/libstdc++.so.6: version GLIBCXX_3.4.21 not found (required by /home/conda/staged-recipes/build_artifacts/ray_1579455767395/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placeho/bin/bazel) --- recipes/ray/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 1cef05141a49f..95210b29a9a8b 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -71,6 +71,7 @@ requirements: - cython >=0.29 - bazel - unzip + - libgcc run: - python From e417871d937c9220256bde0f1f76d5de508913d2 Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Sun, 19 Jan 2020 20:49:31 +0100 Subject: [PATCH 11/77] ray: cleanup --- recipes/ray/meta.yaml | 44 ++----------------------------------------- 1 file changed, 2 insertions(+), 42 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 95210b29a9a8b..e1686d4424501 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -1,40 +1,15 @@ -# Note: there are many handy hints in comments in this example -- remove them when you've finalized your recipe - -# Jinja variables help maintain the recipe as you'll update the version only here. -# Using the name variable with the URL in line 14 is convenient -# when copying and pasting from another recipe, but not really needed. -{% set name = "ray" %} {% set version = "0.8.0" %} package: - name: {{ name|lower }} + name: ray version: {{ version }} source: - # url: https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz - # If getting the source from GitHub, remove the line above, - # uncomment the line below, and modify as needed. Use releases if available: - # url: https://github.com/ray-project/ray/releases/download/{{ version }}/ray-{{ version }}.tar.gz - # and otherwise fall back to archive: - # url: https://github.com/simplejson/simplejson/archive/{{ version }}.tar.gz - url: https://github.com/ray-project/ray/archive/ray-0.8.0.tar.gz + url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz sha256: 2da0a27e00febd16e9421261a3b3ef5352bf37378e28d1adabbf73879f910748 - # sha256 is the preferred checksum -- you can get it for a file with: - # `openssl sha256 `. - # You may need the openssl package, available on conda-forge: - # `conda install openssl -c conda-forge`` build: - # Uncomment the following line if the package is pure Python and the recipe is exactly the same for all platforms. - # It is okay if the dependencies are not built for all platforms/versions, although selectors are still not allowed. - # See https://conda-forge.org/docs/maintainer/knowledge_base.html#noarch-python for more details. - # noarch: python - # Ray is not exactly pure Python, but it's pip-installable without any conda dependencies so I think we can use noarch python here? - # This is the friendly automated conda-forge-linting service. noarch packages can't have selectors. If the selectors are necessary, please remove noarch python. number: 0 - # If the installation is complex, or different between Unix and Windows, use separate bld.bat and build.sh files instead of this key. - # By default, the package will be built for the Python versions supported by conda-forge and for all major OSs. - # Add the line "skip: True # [py<35]" (for example) to limit to Python 3.5 and newer, or "skip: True # [not win]" to limit to Windows. skip: True # [py<36] # script: "{{ PYTHON }} -m pip install . -vv" # script: "cd python && {{ PYTHON }} -m pip install . --no-deps -vv" @@ -52,8 +27,6 @@ build: requirements: build: - # If your project compiles code (such as a C extension) then add the required compilers as separate entries here. - # Compilers are named 'c', 'cxx' and 'fortran'. - {{ compiler('c') }} host: - python @@ -76,27 +49,16 @@ requirements: - python test: - # Some packages might need a `test/commands` key to check CLI. - # List all the packages/modules that `run_test.py` imports. imports: - ray - ray.tests about: home: https://github.com/ray-project/ray - # Remember to specify the license variants for BSD, Apache, GPL, and LGPL. - # Prefer the short version, e.g: GPL-2.0 instead of GNU General Public License version 2.0 - # See https://opensource.org/licenses/alphabetical license: Apache-2.0 - # The license_family, i.e. "BSD" if license is "BSD-3-Clause". (optional) license_family: Apache - # It is strongly encouraged to include a license file in the package, - # (even if the license doesn't require it) using the license_file entry. - # See https://conda.pydata.org/docs/building/meta-yaml.html#license-file license_file: LICENSE summary: 'Ray is a fast and simple framework for building and running distributed applications.' - - # The remaining entries in this section are optional, but recommended. description: | Ray is a fast and simple framework for building and running distributed applications. @@ -105,6 +67,4 @@ about: extra: recipe-maintainers: - # GitHub IDs for maintainers of the recipe. - # Always check with the people listed below if they are OK becoming maintainers of the recipe. (There will be spam!) - dHannasch From b5369779219483ab98b8c82644ecd5e21764688a Mon Sep 17 00:00:00 2001 From: Marcel Bargull Date: Sun, 19 Jan 2020 20:53:47 +0100 Subject: [PATCH 12/77] ray: Add compiler(cxx); move build/run deps --- recipes/ray/meta.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index e1686d4424501..9171861065174 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -28,9 +28,15 @@ build: requirements: build: - {{ compiler('c') }} + - {{ compiler('cxx') }} + - bazel + - unzip host: - python - pip + - cython >=0.29 + run: + - python - numpy - filelock - funcsigs @@ -41,12 +47,6 @@ requirements: - redis - six >=1.0.0 - flatbuffers - - cython >=0.29 - - bazel - - unzip - - libgcc - run: - - python test: imports: From 32fc2c664ef43f1fdc43b55497c1902eba8d5ae3 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Sun, 19 Jan 2020 13:37:36 -0700 Subject: [PATCH 13/77] see what versions we do have --- recipes/ray/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 9171861065174..faeef27a80d37 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -16,10 +16,10 @@ build: script: # - ci/travis/install-bazel.sh fails on line 22 wget command not found, try making bazel a dependency - ls - - ls README.rst - cd python - ls - - ls ../README.rst + - /sbin/ldconfig -p | grep stdc++ + - strings /usr/lib64/libstdc++.so.6 | grep LIBCXX - {{ PYTHON }} -m pip install --editable . --verbose -vv # --editable is a little silly for a conda-forge package, but the ray installation instructions require it, and I finally realized why. # ray has no MANIFEST.in, nor anything that serves the same function. From ffa7872e3e1174b1797c94fecdf6aa485c5cfa97 Mon Sep 17 00:00:00 2001 From: "David A. Hannasch" Date: Tue, 21 Jan 2020 20:28:03 -0700 Subject: [PATCH 14/77] CXXABI --- recipes/ray/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index faeef27a80d37..1fa699de788eb 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -16,10 +16,12 @@ build: script: # - ci/travis/install-bazel.sh fails on line 22 wget command not found, try making bazel a dependency - ls + # - docker run --rm -w /ray -v `pwd`:/ray -ti rayproject/arrow_linux_x86_64_base:latest /ray/python/build-wheel-manylinux1.sh - cd python - ls - /sbin/ldconfig -p | grep stdc++ - strings /usr/lib64/libstdc++.so.6 | grep LIBCXX + - strings /usr/lib64/libstdc++.so.6 | grep CXXABI - {{ PYTHON }} -m pip install --editable . --verbose -vv # --editable is a little silly for a conda-forge package, but the ray installation instructions require it, and I finally realized why. # ray has no MANIFEST.in, nor anything that serves the same function. @@ -31,6 +33,7 @@ requirements: - {{ compiler('cxx') }} - bazel - unzip + # - docker host: - python - pip From 139fdd63f918880dabffa3df078537e08146d2a4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 15:39:25 +0200 Subject: [PATCH 15/77] fresh start --- recipes/ray/meta.yaml | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 1fa699de788eb..6d01e1ea1840d 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -11,21 +11,7 @@ source: build: number: 0 skip: True # [py<36] - # script: "{{ PYTHON }} -m pip install . -vv" - # script: "cd python && {{ PYTHON }} -m pip install . --no-deps -vv" - script: - # - ci/travis/install-bazel.sh fails on line 22 wget command not found, try making bazel a dependency - - ls - # - docker run --rm -w /ray -v `pwd`:/ray -ti rayproject/arrow_linux_x86_64_base:latest /ray/python/build-wheel-manylinux1.sh - - cd python - - ls - - /sbin/ldconfig -p | grep stdc++ - - strings /usr/lib64/libstdc++.so.6 | grep LIBCXX - - strings /usr/lib64/libstdc++.so.6 | grep CXXABI - - {{ PYTHON }} -m pip install --editable . --verbose -vv - # --editable is a little silly for a conda-forge package, but the ray installation instructions require it, and I finally realized why. - # ray has no MANIFEST.in, nor anything that serves the same function. - # So README.rst is not copied by pip, so it is not found in pip's temporary directory. + script: "{{ PYTHON }} -m pip install . -vv" requirements: build: @@ -33,7 +19,6 @@ requirements: - {{ compiler('cxx') }} - bazel - unzip - # - docker host: - python - pip @@ -48,7 +33,7 @@ requirements: - pytest - pyyaml - redis - - six >=1.0.0 + - six - flatbuffers test: @@ -71,3 +56,4 @@ about: extra: recipe-maintainers: - dHannasch + - h-vetinari From 694315d63ea6a65b524a8d91bff67a0822fb1cae Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 15:45:37 +0200 Subject: [PATCH 16/77] add upstream LICENCE --- recipes/ray/LICENSE | 272 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 272 insertions(+) create mode 100644 recipes/ray/LICENSE diff --git a/recipes/ray/LICENSE b/recipes/ray/LICENSE new file mode 100644 index 0000000000000..1dcfa84a3fb6a --- /dev/null +++ b/recipes/ray/LICENSE @@ -0,0 +1,272 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- + +Code in python/ray/rllib/{evolution_strategies, dqn} adapted from +https://github.com/openai (MIT License) + +Copyright (c) 2016 OpenAI (http://openai.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +-------------------------------------------------------------------------------- + +Code in python/ray/rllib/impala/vtrace.py from +https://github.com/deepmind/scalable_agent + +Copyright 2018 Google LLC + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- +Code in python/ray/rllib/ars is adapted from https://github.com/modestyachts/ARS + +Copyright (c) 2018, ARS contributors (Horia Mania, Aurelia Guy, Benjamin Recht) +All rights reserved. + +Redistribution and use of ARS in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation and/or +other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. From db08bc56006db53315cd44900467b615543b5202 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 15:48:39 +0200 Subject: [PATCH 17/77] update dependencies Reqs from https://github.com/ray-project/ray/blob/ray-0.8.0/python/setup.py --- recipes/ray/meta.yaml | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 6d01e1ea1840d..b90d861ea8d1c 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -17,22 +17,34 @@ requirements: build: - {{ compiler('c') }} - {{ compiler('cxx') }} - - bazel - - unzip + - cython >=0.29 host: + # TODO: check which of these can move to run-reqs + - click + - cloudpickle + - colorama + - filelock + - funcsigs + - jsonschema + - numpy >=1.16 + - packaging + - protobuf >=3.8.0 + - pytest + - pyyaml + - redis-py >=3.3.2 + - six - python - pip - - cython >=0.29 run: - python - - numpy + - numpy >=1.16 - filelock - funcsigs - click - colorama - pytest - pyyaml - - redis + - redis-py >=3.3.2 - six - flatbuffers From f6502b6e79094e5e70ca69c6c5894ae2be92d5fa Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 16:19:10 +0200 Subject: [PATCH 18/77] remove setup requires --- recipes/ray/meta.yaml | 2 ++ .../0001-remove-requires-from-setup.py.patch | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 recipes/ray/patches/0001-remove-requires-from-setup.py.patch diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index b90d861ea8d1c..414e2a2496bd5 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -7,6 +7,8 @@ package: source: url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz sha256: 2da0a27e00febd16e9421261a3b3ef5352bf37378e28d1adabbf73879f910748 + patches: + - patches/0001-remove-requires-from-setup.py.patch build: number: 0 diff --git a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch new file mode 100644 index 0000000000000..157283bda45d3 --- /dev/null +++ b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch @@ -0,0 +1,26 @@ +From b4cd4ee1cdd123cae5dd7a26d7a840077f125913 Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Sun, 29 Mar 2020 16:18:00 +0200 +Subject: [PATCH] remove requires from setup.py + +--- + python/setup.py | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/python/setup.py b/python/setup.py +index a5ca7b2e..cb99a0d3 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -196,9 +196,6 @@ setup( + cmdclass={"build_ext": build_ext}, + # The BinaryDistribution argument triggers build_ext. + distclass=BinaryDistribution, +- install_requires=requires, +- setup_requires=["cython >= 0.29"], +- extras_require=extras, + entry_points={ + "console_scripts": [ + "ray=ray.scripts.scripts:main", +-- +2.24.0.windows.2 + From 75e03aea598992b6d176f91f44819c80f9faa0d4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 19:21:09 +0200 Subject: [PATCH 19/77] unvendor pyarrow/pickle5 --- recipes/ray/meta.yaml | 3 ++ .../0001-remove-requires-from-setup.py.patch | 2 +- .../0002-do-not-vendor-pyarrow-pickle5.patch | 45 +++++++++++++++++++ 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 414e2a2496bd5..e60926c43b158 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -9,6 +9,7 @@ source: sha256: 2da0a27e00febd16e9421261a3b3ef5352bf37378e28d1adabbf73879f910748 patches: - patches/0001-remove-requires-from-setup.py.patch + - patches/0002-do-not-vendor-pyarrow-pickle5.patch build: number: 0 @@ -29,8 +30,10 @@ requirements: - funcsigs - jsonschema - numpy >=1.16 + - pickle5 - packaging - protobuf >=3.8.0 + - pyarrow ==0.14 - pytest - pyyaml - redis-py >=3.3.2 diff --git a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch index 157283bda45d3..b8905554d1aa2 100644 --- a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch +++ b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch @@ -1,7 +1,7 @@ From b4cd4ee1cdd123cae5dd7a26d7a840077f125913 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 16:18:00 +0200 -Subject: [PATCH] remove requires from setup.py +Subject: [PATCH 1/2] remove requires from setup.py --- python/setup.py | 3 --- diff --git a/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch b/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch new file mode 100644 index 0000000000000..020d3ad42dcd5 --- /dev/null +++ b/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch @@ -0,0 +1,45 @@ +From 44f1ffc162bfb6980d8a47515dffbf2e5fff3cd4 Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Sun, 29 Mar 2020 19:16:11 +0200 +Subject: [PATCH 2/2] do not vendor pyarrow/pickle5 + +--- + build.sh | 22 ---------------------- + 1 file changed, 22 deletions(-) + +diff --git a/build.sh b/build.sh +index 2a061bb3..664ba4b8 100755 +--- a/build.sh ++++ b/build.sh +@@ -93,28 +93,6 @@ fi + + pushd "$BUILD_DIR" + +-# The following line installs pyarrow from S3, these wheels have been +-# generated from https://github.com/ray-project/arrow-build from +-# the commit listed in the command. +-if [ -z "$SKIP_PYARROW_INSTALL" ]; then +- "$PYTHON_EXECUTABLE" -m pip install -q \ +- --target="$ROOT_DIR/python/ray/pyarrow_files" pyarrow==0.14.0.RAY \ +- --find-links https://s3-us-west-2.amazonaws.com/arrow-wheels/3a11193d9530fe8ec7fdb98057f853b708f6f6ae/index.html +-fi +- +-PYTHON_VERSION=`"$PYTHON_EXECUTABLE" -c 'import sys; version=sys.version_info[:3]; print("{0}.{1}".format(*version))'` +-if [[ "$PYTHON_VERSION" == "3.6" || "$PYTHON_VERSION" == "3.7" ]]; then +- WORK_DIR=`mktemp -d` +- pushd $WORK_DIR +- git clone https://github.com/pitrou/pickle5-backport +- pushd pickle5-backport +- git checkout 5186f9ca4ce55ae530027db196da51e08208a16b +- "$PYTHON_EXECUTABLE" setup.py bdist_wheel +- unzip -o dist/*.whl -d "$ROOT_DIR/python/ray/pickle5_files" +- popd +- popd +-fi +- + export PYTHON3_BIN_PATH="$PYTHON_EXECUTABLE" + export PYTHON2_BIN_PATH="$PYTHON_EXECUTABLE" + +-- +2.24.0.windows.2 + From e89179fb1b9a7c7a03a2a21e9bfbd1db1f7a298f Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 19:49:27 +0200 Subject: [PATCH 20/77] add bazel; skip windows --- recipes/ray/meta.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index e60926c43b158..7911d2c6b9dec 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -14,13 +14,16 @@ source: build: number: 0 skip: True # [py<36] - script: "{{ PYTHON }} -m pip install . -vv" + # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 + skip: True # [win] + script: build.sh requirements: build: - {{ compiler('c') }} - {{ compiler('cxx') }} - cython >=0.29 + - bazel host: # TODO: check which of these can move to run-reqs - click From 958d90acfe406761e54d7b1a3347e43cc82cf8d3 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 20:18:06 +0200 Subject: [PATCH 21/77] split outputs (following example of cvxpy-recipe) --- recipes/ray/meta.yaml | 163 +++++++++++++++++++++++++++++++++--------- 1 file changed, 129 insertions(+), 34 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 7911d2c6b9dec..71f0d7c20ea35 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -16,50 +16,145 @@ build: skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [win] - script: build.sh +# Need these up here for conda-smithy to handle them properly. requirements: build: - {{ compiler('c') }} - {{ compiler('cxx') }} - - cython >=0.29 - - bazel host: - # TODO: check which of these can move to run-reqs - - click - - cloudpickle - - colorama - - filelock - - funcsigs - - jsonschema - - numpy >=1.16 - - pickle5 - - packaging - - protobuf >=3.8.0 - - pyarrow ==0.14 - - pytest - - pyyaml - - redis-py >=3.3.2 - - six - python - - pip run: - python - - numpy >=1.16 - - filelock - - funcsigs - - click - - colorama - - pytest - - pyyaml - - redis-py >=3.3.2 - - six - - flatbuffers -test: - imports: - - ray - - ray.tests +outputs: + - name: ray-base + build: + script: ./build.sh + requirements: + build: + - {{ compiler('c') }} + - {{ compiler('cxx') }} + - cython >=0.29 + - bazel + host: + # TODO: check which of these can move to run-reqs + - click + - cloudpickle + - colorama + - filelock + - funcsigs + - jsonschema + - numpy >=1.16 + - pickle5 ==0.0.9 # [py<38] + - packaging + - protobuf >=3.8.0 + - pyarrow ==0.14 + - pytest + - pyyaml + - redis-py >=3.3.2 + - six + - python + - pip + run: + - python + - numpy >=1.16 + - filelock + - funcsigs + - click + - colorama + - pytest + - pyyaml + - redis-py >=3.3.2 + - six + - flatbuffers + test: + imports: + - ray + - ray._raylet + - ray.actor + - ray.profiling + - ray.projects + - ray.runtime_context + - ray.state + - ray.tests + - ray.worker + + - name: ray-debug + requirements: + host: + - python + run: + - python + - {{ pin_subpackage('ray-base', exact=True) }} + - psutil + - py-spy >=0.2.0 + - setproctitle + + - name: ray-dashboard + requirements: + host: + - python + run: + - python + - {{ pin_subpackage('ray-base', exact=True) }} + - aiohttp + - googlesearch + - grpcio + - psutil + - setproctitle + test: + imports: + - ray.dashboard + + - name: ray-serve + requirements: + host: + - python + run: + - python + - {{ pin_subpackage('ray-base', exact=True) }} + # needs to be packaged: + # - blist + - flask + - pandas + - pygments + - uvicorn + - werkzeug + test: + imports: + - ray.serve + + - name: ray-rllib + requirements: + host: + - python + run: + - python + - {{ pin_subpackage('ray-base', exact=True) }} + # needs to be packaged: + # - gym-atari + - lz4 + - opencv + - pyyaml + - scipy + - tabulate + test: + imports: + - ray.rrlib + + - name: ray-tune + requirements: + host: + - python + run: + - python + - {{ pin_subpackage('ray-base', exact=True) }} + - tabulate + test: + imports: + - ray.tune + about: home: https://github.com/ray-project/ray From b222844f7db8ec30711040cf5809927fd98851e4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 20:34:07 +0200 Subject: [PATCH 22/77] add more patches --- recipes/ray/meta.yaml | 2 + .../0001-remove-requires-from-setup.py.patch | 2 +- .../0002-do-not-vendor-pyarrow-pickle5.patch | 2 +- ...-checks-for-vendored-pyarrow-pickle5.patch | 70 +++++++++++++++++++ ...check-import-errors-when-using-conda.patch | 59 ++++++++++++++++ 5 files changed, 133 insertions(+), 2 deletions(-) create mode 100644 recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch create mode 100644 recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 71f0d7c20ea35..ff7fff38d06f7 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -10,6 +10,8 @@ source: patches: - patches/0001-remove-requires-from-setup.py.patch - patches/0002-do-not-vendor-pyarrow-pickle5.patch + - patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch + - patches/0004-no-need-to-check-import-errors-when-using-conda.patch build: number: 0 diff --git a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch index b8905554d1aa2..d9b156a8fbc4e 100644 --- a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch +++ b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch @@ -1,7 +1,7 @@ From b4cd4ee1cdd123cae5dd7a26d7a840077f125913 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 16:18:00 +0200 -Subject: [PATCH 1/2] remove requires from setup.py +Subject: [PATCH 1/4] remove requires from setup.py --- python/setup.py | 3 --- diff --git a/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch b/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch index 020d3ad42dcd5..53e9e55913e5b 100644 --- a/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch +++ b/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch @@ -1,7 +1,7 @@ From 44f1ffc162bfb6980d8a47515dffbf2e5fff3cd4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 19:16:11 +0200 -Subject: [PATCH 2/2] do not vendor pyarrow/pickle5 +Subject: [PATCH 2/4] do not vendor pyarrow/pickle5 --- build.sh | 22 ---------------------- diff --git a/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch b/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch new file mode 100644 index 0000000000000..90144bb50d037 --- /dev/null +++ b/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch @@ -0,0 +1,70 @@ +From feb7fc3eccaf9245eb21ceb4926784dcbadcf469 Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Sun, 29 Mar 2020 20:22:44 +0200 +Subject: [PATCH 3/4] remove checks for vendored pyarrow/pickle5 + +--- + python/ray/__init__.py | 40 ++++++++++++++++++++-------------------- + 1 file changed, 20 insertions(+), 20 deletions(-) + +diff --git a/python/ray/__init__.py b/python/ray/__init__.py +index eb02bacf..f2901a3a 100644 +--- a/python/ray/__init__.py ++++ b/python/ray/__init__.py +@@ -9,16 +9,16 @@ import sys + # MUST add pickle5 to the import path because it will be imported by some + # raylet modules. + +-if "pickle5" in sys.modules: +- raise ImportError("Ray must be imported before pickle5 because Ray " +- "requires a specific version of pickle5 (which is " +- "packaged along with Ray).") +- +-# Add the directory containing pickle5 to the Python path so that we find the +-# pickle5 version packaged with ray and not a pre-existing pickle5. +-pickle5_path = os.path.join( +- os.path.abspath(os.path.dirname(__file__)), "pickle5_files") +-sys.path.insert(0, pickle5_path) ++# if "pickle5" in sys.modules: ++# raise ImportError("Ray must be imported before pickle5 because Ray " ++# "requires a specific version of pickle5 (which is " ++# "packaged along with Ray).") ++# ++# # Add the directory containing pickle5 to the Python path so that we find the ++# # pickle5 version packaged with ray and not a pre-existing pickle5. ++# pickle5_path = os.path.join( ++# os.path.abspath(os.path.dirname(__file__)), "pickle5_files") ++# sys.path.insert(0, pickle5_path) + + # Expose ray ABI symbols which may be dependent by other shared + # libraries such as _streaming.so. See BUILD.bazel:_raylet +@@ -35,16 +35,16 @@ if os.path.exists(so_path): + # details. + import ray._raylet # noqa: E402 + +-if "pyarrow" in sys.modules: +- raise ImportError("Ray must be imported before pyarrow because Ray " +- "requires a specific version of pyarrow (which is " +- "packaged along with Ray).") +- +-# Add the directory containing pyarrow to the Python path so that we find the +-# pyarrow version packaged with ray and not a pre-existing pyarrow. +-pyarrow_path = os.path.join( +- os.path.abspath(os.path.dirname(__file__)), "pyarrow_files") +-sys.path.insert(0, pyarrow_path) ++# if "pyarrow" in sys.modules: ++# raise ImportError("Ray must be imported before pyarrow because Ray " ++# "requires a specific version of pyarrow (which is " ++# "packaged along with Ray).") ++# ++# # Add the directory containing pyarrow to the Python path so that we find the ++# # pyarrow version packaged with ray and not a pre-existing pyarrow. ++# pyarrow_path = os.path.join( ++# os.path.abspath(os.path.dirname(__file__)), "pyarrow_files") ++# sys.path.insert(0, pyarrow_path) + + # See https://github.com/ray-project/ray/issues/131. + helpful_message = """ +-- +2.24.0.windows.2 + diff --git a/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch b/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch new file mode 100644 index 0000000000000..095b468795d1a --- /dev/null +++ b/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch @@ -0,0 +1,59 @@ +From 2e30ad8749d7a8496649a35b629200f8ed4fcd0a Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Sun, 29 Mar 2020 20:26:58 +0200 +Subject: [PATCH 4/4] no need to check import errors when using conda + +--- + python/ray/__init__.py | 36 ++++++++++++++++++------------------ + 1 file changed, 18 insertions(+), 18 deletions(-) + +diff --git a/python/ray/__init__.py b/python/ray/__init__.py +index f2901a3a..d7aac6ae 100644 +--- a/python/ray/__init__.py ++++ b/python/ray/__init__.py +@@ -66,24 +66,24 @@ try: + if hasattr(ray, "_raylet") and hasattr(ray._raylet, "pyarrow"): + ray._raylet.pyarrow = pyarrow + except ImportError as e: +- if ((hasattr(e, "msg") and isinstance(e.msg, str) +- and ("libstdc++" in e.msg or "CXX" in e.msg))): +- # This code path should be taken with Python 3. +- e.msg += helpful_message +- elif (hasattr(e, "message") and isinstance(e.message, str) +- and ("libstdc++" in e.message or "CXX" in e.message)): +- # This code path should be taken with Python 2. +- condition = (hasattr(e, "args") and isinstance(e.args, tuple) +- and len(e.args) == 1 and isinstance(e.args[0], str)) +- if condition: +- e.args = (e.args[0] + helpful_message, ) +- else: +- if not hasattr(e, "args"): +- e.args = () +- elif not isinstance(e.args, tuple): +- e.args = (e.args, ) +- e.args += (helpful_message, ) +- raise ++ # if ((hasattr(e, "msg") and isinstance(e.msg, str) ++ # and ("libstdc++" in e.msg or "CXX" in e.msg))): ++ # # This code path should be taken with Python 3. ++ # e.msg += helpful_message ++ # elif (hasattr(e, "message") and isinstance(e.message, str) ++ # and ("libstdc++" in e.message or "CXX" in e.message)): ++ # # This code path should be taken with Python 2. ++ # condition = (hasattr(e, "args") and isinstance(e.args, tuple) ++ # and len(e.args) == 1 and isinstance(e.args[0], str)) ++ # if condition: ++ # e.args = (e.args[0] + helpful_message, ) ++ # else: ++ # if not hasattr(e, "args"): ++ # e.args = () ++ # elif not isinstance(e.args, tuple): ++ # e.args = (e.args, ) ++ # e.args += (helpful_message, ) ++ raise e + + from ray._raylet import ( + ActorCheckpointID, +-- +2.24.0.windows.2 + From bbe7a4eae8b42f34f9df5f1023406a4f3a1711b4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 20:48:31 +0200 Subject: [PATCH 23/77] remove deprecated bazel option --- recipes/ray/meta.yaml | 1 + .../0001-remove-requires-from-setup.py.patch | 2 +- .../0002-do-not-vendor-pyarrow-pickle5.patch | 2 +- ...-checks-for-vendored-pyarrow-pickle5.patch | 2 +- ...check-import-errors-when-using-conda.patch | 2 +- .../0005-remove-deprecated-bazel-option.patch | 24 +++++++++++++++++++ 6 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 recipes/ray/patches/0005-remove-deprecated-bazel-option.patch diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index ff7fff38d06f7..083392342509d 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -12,6 +12,7 @@ source: - patches/0002-do-not-vendor-pyarrow-pickle5.patch - patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch - patches/0004-no-need-to-check-import-errors-when-using-conda.patch + - patches/0005-remove-deprecated-bazel-option.patch build: number: 0 diff --git a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch index d9b156a8fbc4e..7c037c86ebfdf 100644 --- a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch +++ b/recipes/ray/patches/0001-remove-requires-from-setup.py.patch @@ -1,7 +1,7 @@ From b4cd4ee1cdd123cae5dd7a26d7a840077f125913 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 16:18:00 +0200 -Subject: [PATCH 1/4] remove requires from setup.py +Subject: [PATCH 1/5] remove requires from setup.py --- python/setup.py | 3 --- diff --git a/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch b/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch index 53e9e55913e5b..35c37fcbfdbf1 100644 --- a/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch +++ b/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch @@ -1,7 +1,7 @@ From 44f1ffc162bfb6980d8a47515dffbf2e5fff3cd4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 19:16:11 +0200 -Subject: [PATCH 2/4] do not vendor pyarrow/pickle5 +Subject: [PATCH 2/5] do not vendor pyarrow/pickle5 --- build.sh | 22 ---------------------- diff --git a/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch b/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch index 90144bb50d037..41734e2dea6f7 100644 --- a/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch +++ b/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch @@ -1,7 +1,7 @@ From feb7fc3eccaf9245eb21ceb4926784dcbadcf469 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 20:22:44 +0200 -Subject: [PATCH 3/4] remove checks for vendored pyarrow/pickle5 +Subject: [PATCH 3/5] remove checks for vendored pyarrow/pickle5 --- python/ray/__init__.py | 40 ++++++++++++++++++++-------------------- diff --git a/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch b/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch index 095b468795d1a..d9f6a1a9619fd 100644 --- a/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch +++ b/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch @@ -1,7 +1,7 @@ From 2e30ad8749d7a8496649a35b629200f8ed4fcd0a Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 20:26:58 +0200 -Subject: [PATCH 4/4] no need to check import errors when using conda +Subject: [PATCH 4/5] no need to check import errors when using conda --- python/ray/__init__.py | 36 ++++++++++++++++++------------------ diff --git a/recipes/ray/patches/0005-remove-deprecated-bazel-option.patch b/recipes/ray/patches/0005-remove-deprecated-bazel-option.patch new file mode 100644 index 0000000000000..28646b9773644 --- /dev/null +++ b/recipes/ray/patches/0005-remove-deprecated-bazel-option.patch @@ -0,0 +1,24 @@ +From 7dfbb95d022b919dfa04628c16a4862f25763bc6 Mon Sep 17 00:00:00 2001 +From: "H. Vetinari" +Date: Sun, 29 Mar 2020 20:45:34 +0200 +Subject: [PATCH 5/5] remove deprecated bazel-option + +see https://github.com/bazelbuild/bazel/issues/5816 +--- + .bazelrc | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/.bazelrc b/.bazelrc +index 1dcb8f1f..a7311b07 100644 +--- a/.bazelrc ++++ b/.bazelrc +@@ -24,6 +24,3 @@ build --host_copt="-Wno-microsoft-unqualified-friend" + # This workaround is needed due to https://github.com/bazelbuild/bazel/issues/4341 + build --per_file_copt="-\\.(asm|S)$,external/com_github_grpc_grpc/.*@-DGRPC_BAZEL_BUILD" + build --http_timeout_scaling=5.0 +-# This workaround is due to an incompatibility of +-# bazel_common/tools/maven/pom_file.bzl with Bazel 1.0 +-build --incompatible_depset_is_not_iterable=false +-- +2.24.0.windows.2 + From 5c3b2436084b146382a51e45bd3da35fcb7f8fa4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 20:49:41 +0200 Subject: [PATCH 24/77] add comment about build script --- recipes/ray/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 083392342509d..b17661abd0184 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -33,6 +33,7 @@ requirements: outputs: - name: ray-base build: + # use build-script that comes with ray script: ./build.sh requirements: build: From ae1391c77c88fa2ed4544773fd28797aac1b0af0 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 21:50:56 +0200 Subject: [PATCH 25/77] start adding some bazel-deps to recipe reqs --- recipes/ray/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index b17661abd0184..d8b2f73e42d54 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -43,11 +43,14 @@ outputs: - bazel host: # TODO: check which of these can move to run-reqs + - abseil-cpp + - boost ==1.68.0 - click - cloudpickle - colorama - filelock - funcsigs + - grpc-cpp - jsonschema - numpy >=1.16 - pickle5 ==0.0.9 # [py<38] From 2c10acb837a28bd25656bec62a2ea688218eca40 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 21:56:57 +0200 Subject: [PATCH 26/77] add skips for outputs that do not have all dependencies packaged yet --- recipes/ray/meta.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index d8b2f73e42d54..b78e87c8677e7 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -115,6 +115,9 @@ outputs: - ray.dashboard - name: ray-serve + build: + # until dependencies are built + skip: True requirements: host: - python @@ -133,6 +136,9 @@ outputs: - ray.serve - name: ray-rllib + build: + # until dependencies are built + skip: True requirements: host: - python From 28ab5bcae10ecaa9dd6c573b689d0497947e13ff Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 22:10:56 +0200 Subject: [PATCH 27/77] Revert "start adding some bazel-deps to recipe reqs" This reverts commit ae1391c77c88fa2ed4544773fd28797aac1b0af0. Pins are incompatible --- recipes/ray/meta.yaml | 3 --- 1 file changed, 3 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index b78e87c8677e7..bef09f0fa04d9 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -43,14 +43,11 @@ outputs: - bazel host: # TODO: check which of these can move to run-reqs - - abseil-cpp - - boost ==1.68.0 - click - cloudpickle - colorama - filelock - funcsigs - - grpc-cpp - jsonschema - numpy >=1.16 - pickle5 ==0.0.9 # [py<38] From 18a9b43caa3973268a9ca5c6fef5348eebfc3ed3 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 22:12:05 +0200 Subject: [PATCH 28/77] fix overzealous indent --- recipes/ray/meta.yaml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index bef09f0fa04d9..b330405cc1732 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -72,17 +72,17 @@ outputs: - redis-py >=3.3.2 - six - flatbuffers - test: - imports: - - ray - - ray._raylet - - ray.actor - - ray.profiling - - ray.projects - - ray.runtime_context - - ray.state - - ray.tests - - ray.worker + test: + imports: + - ray + - ray._raylet + - ray.actor + - ray.profiling + - ray.projects + - ray.runtime_context + - ray.state + - ray.tests + - ray.worker - name: ray-debug requirements: From fdb485d9b4ff5c7002f616ceb3e5b6385436fa92 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 22:13:11 +0200 Subject: [PATCH 29/77] add dummy test for ray-debug --- recipes/ray/meta.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index b330405cc1732..728308fc53baa 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -94,6 +94,10 @@ outputs: - psutil - py-spy >=0.2.0 - setproctitle + test: + imports: + # there doesn't appear to be a debug specific module + - ray - name: ray-dashboard requirements: From e9497414e2df99bf8cf9cf8f63bbc67bbd176803 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 22:27:51 +0200 Subject: [PATCH 30/77] add recipe for ray-all; order subpackages alphabetically --- recipes/ray/meta.yaml | 49 +++++++++++++++++++++++++++++-------------- 1 file changed, 33 insertions(+), 16 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index 728308fc53baa..dd94eea15a2a7 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -31,6 +31,23 @@ requirements: - python outputs: + - name: ray-all + requirements: + host: + run: + - python + - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-debug', exact=True) }} + - {{ pin_subpackage('ray-dashboard', exact=True) }} + # missing dependencies, see below + # - {{ pin_subpackage('ray-rllib', exact=True) }} + # - {{ pin_subpackage('ray-serve', exact=True) }} + - {{ pin_subpackage('ray-tune', exact=True) }} + test: + imports: + # dummy test; actual tests below + - ray + - name: ray-base build: # use build-script that comes with ray @@ -115,7 +132,7 @@ outputs: imports: - ray.dashboard - - name: ray-serve + - name: ray-rllib build: # until dependencies are built skip: True @@ -126,17 +143,17 @@ outputs: - python - {{ pin_subpackage('ray-base', exact=True) }} # needs to be packaged: - # - blist - - flask - - pandas - - pygments - - uvicorn - - werkzeug + # - gym-atari + - lz4 + - opencv + - pyyaml + - scipy + - tabulate test: imports: - - ray.serve + - ray.rrlib - - name: ray-rllib + - name: ray-serve build: # until dependencies are built skip: True @@ -147,15 +164,15 @@ outputs: - python - {{ pin_subpackage('ray-base', exact=True) }} # needs to be packaged: - # - gym-atari - - lz4 - - opencv - - pyyaml - - scipy - - tabulate + # - blist + - flask + - pandas + - pygments + - uvicorn + - werkzeug test: imports: - - ray.rrlib + - ray.serve - name: ray-tune requirements: From 5a714532d1814961df44acddf63ed66005f96ff8 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 23:00:14 +0200 Subject: [PATCH 31/77] rename feedstock to avoid collision with bioconda (review beckermr) --- recipes/ray/meta.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/recipes/ray/meta.yaml b/recipes/ray/meta.yaml index dd94eea15a2a7..925e1b08facfc 100644 --- a/recipes/ray/meta.yaml +++ b/recipes/ray/meta.yaml @@ -1,7 +1,7 @@ {% set version = "0.8.0" %} package: - name: ray + name: ray-packages version: {{ version }} source: @@ -36,7 +36,7 @@ outputs: host: run: - python - - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-core', exact=True) }} - {{ pin_subpackage('ray-debug', exact=True) }} - {{ pin_subpackage('ray-dashboard', exact=True) }} # missing dependencies, see below @@ -48,7 +48,7 @@ outputs: # dummy test; actual tests below - ray - - name: ray-base + - name: ray-core build: # use build-script that comes with ray script: ./build.sh @@ -107,7 +107,7 @@ outputs: - python run: - python - - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-core', exact=True) }} - psutil - py-spy >=0.2.0 - setproctitle @@ -122,7 +122,7 @@ outputs: - python run: - python - - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-core', exact=True) }} - aiohttp - googlesearch - grpcio @@ -141,7 +141,7 @@ outputs: - python run: - python - - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-core', exact=True) }} # needs to be packaged: # - gym-atari - lz4 @@ -162,7 +162,7 @@ outputs: - python run: - python - - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-core', exact=True) }} # needs to be packaged: # - blist - flask @@ -180,7 +180,7 @@ outputs: - python run: - python - - {{ pin_subpackage('ray-base', exact=True) }} + - {{ pin_subpackage('ray-core', exact=True) }} - tabulate test: imports: From 21e8077d280dc42cce5d92840bf694e6770319e3 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 29 Mar 2020 23:11:13 +0200 Subject: [PATCH 32/77] move folder --- recipes/{ray => ray-packages}/LICENSE | 0 recipes/{ray => ray-packages}/meta.yaml | 0 .../patches/0001-remove-requires-from-setup.py.patch | 0 .../patches/0002-do-not-vendor-pyarrow-pickle5.patch | 0 .../patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch | 0 .../0004-no-need-to-check-import-errors-when-using-conda.patch | 0 .../patches/0005-remove-deprecated-bazel-option.patch | 0 7 files changed, 0 insertions(+), 0 deletions(-) rename recipes/{ray => ray-packages}/LICENSE (100%) rename recipes/{ray => ray-packages}/meta.yaml (100%) rename recipes/{ray => ray-packages}/patches/0001-remove-requires-from-setup.py.patch (100%) rename recipes/{ray => ray-packages}/patches/0002-do-not-vendor-pyarrow-pickle5.patch (100%) rename recipes/{ray => ray-packages}/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch (100%) rename recipes/{ray => ray-packages}/patches/0004-no-need-to-check-import-errors-when-using-conda.patch (100%) rename recipes/{ray => ray-packages}/patches/0005-remove-deprecated-bazel-option.patch (100%) diff --git a/recipes/ray/LICENSE b/recipes/ray-packages/LICENSE similarity index 100% rename from recipes/ray/LICENSE rename to recipes/ray-packages/LICENSE diff --git a/recipes/ray/meta.yaml b/recipes/ray-packages/meta.yaml similarity index 100% rename from recipes/ray/meta.yaml rename to recipes/ray-packages/meta.yaml diff --git a/recipes/ray/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch similarity index 100% rename from recipes/ray/patches/0001-remove-requires-from-setup.py.patch rename to recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch diff --git a/recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch b/recipes/ray-packages/patches/0002-do-not-vendor-pyarrow-pickle5.patch similarity index 100% rename from recipes/ray/patches/0002-do-not-vendor-pyarrow-pickle5.patch rename to recipes/ray-packages/patches/0002-do-not-vendor-pyarrow-pickle5.patch diff --git a/recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch b/recipes/ray-packages/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch similarity index 100% rename from recipes/ray/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch rename to recipes/ray-packages/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch diff --git a/recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch b/recipes/ray-packages/patches/0004-no-need-to-check-import-errors-when-using-conda.patch similarity index 100% rename from recipes/ray/patches/0004-no-need-to-check-import-errors-when-using-conda.patch rename to recipes/ray-packages/patches/0004-no-need-to-check-import-errors-when-using-conda.patch diff --git a/recipes/ray/patches/0005-remove-deprecated-bazel-option.patch b/recipes/ray-packages/patches/0005-remove-deprecated-bazel-option.patch similarity index 100% rename from recipes/ray/patches/0005-remove-deprecated-bazel-option.patch rename to recipes/ray-packages/patches/0005-remove-deprecated-bazel-option.patch From 36b9eaf7dd517217903cd72f2457e30aa9c9babb Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 13:50:41 +0300 Subject: [PATCH 33/77] Start migrating to Ray 1.0 Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 25 ++++--- .../0001-remove-requires-from-setup.py.patch | 28 ++++---- .../0002-do-not-vendor-pyarrow-pickle5.patch | 45 ------------ .../0002-remove-enforce-builtin-pickle5.patch | 30 ++++++++ ...-checks-for-vendored-pyarrow-pickle5.patch | 70 ------------------- ...check-import-errors-when-using-conda.patch | 59 ---------------- .../0005-remove-deprecated-bazel-option.patch | 24 ------- 7 files changed, 61 insertions(+), 220 deletions(-) delete mode 100644 recipes/ray-packages/patches/0002-do-not-vendor-pyarrow-pickle5.patch create mode 100644 recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch delete mode 100644 recipes/ray-packages/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch delete mode 100644 recipes/ray-packages/patches/0004-no-need-to-check-import-errors-when-using-conda.patch delete mode 100644 recipes/ray-packages/patches/0005-remove-deprecated-bazel-option.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 925e1b08facfc..ae0ba9f40dedd 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "0.8.0" %} +{% set version = "1.0.0" %} package: name: ray-packages @@ -6,19 +6,18 @@ package: source: url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz - sha256: 2da0a27e00febd16e9421261a3b3ef5352bf37378e28d1adabbf73879f910748 + sha256: 53aa83f6cc020a84d56192d4f4678e192a58ce33f12c5996343949d28780a788 patches: - patches/0001-remove-requires-from-setup.py.patch - - patches/0002-do-not-vendor-pyarrow-pickle5.patch - - patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch - - patches/0004-no-need-to-check-import-errors-when-using-conda.patch - - patches/0005-remove-deprecated-bazel-option.patch + - patches/0002-remove-enforce-builtin-pickle5.patch build: number: 0 skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [win] + script_env: + - SKIP_THIRDPARTY_INSTALL: 1 # Need these up here for conda-smithy to handle them properly. requirements: @@ -32,6 +31,8 @@ requirements: outputs: - name: ray-all + build: + skip: True requirements: host: run: @@ -58,6 +59,9 @@ outputs: - {{ compiler('cxx') }} - cython >=0.29 - bazel + - curl + - make + - python host: # TODO: check which of these can move to run-reqs - click @@ -80,6 +84,7 @@ outputs: run: - python - numpy >=1.16 + - pickle5 ==0.0.9 # [py<38] - filelock - funcsigs - click @@ -102,6 +107,8 @@ outputs: - ray.worker - name: ray-debug + build: + skip: True requirements: host: - python @@ -117,6 +124,8 @@ outputs: - ray - name: ray-dashboard + build: + skip: True requirements: host: - python @@ -175,6 +184,7 @@ outputs: - ray.serve - name: ray-tune + skip: True requirements: host: - python @@ -185,8 +195,6 @@ outputs: test: imports: - ray.tune - - about: home: https://github.com/ray-project/ray license: Apache-2.0 @@ -203,3 +211,4 @@ extra: recipe-maintainers: - dHannasch - h-vetinari + - vnlitvinov diff --git a/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch index 7c037c86ebfdf..3043e2397915d 100644 --- a/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch +++ b/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch @@ -1,26 +1,26 @@ -From b4cd4ee1cdd123cae5dd7a26d7a840077f125913 Mon Sep 17 00:00:00 2001 -From: "H. Vetinari" -Date: Sun, 29 Mar 2020 16:18:00 +0200 -Subject: [PATCH 1/5] remove requires from setup.py +From 714fe3a02935974ae50c39c3b28192f618a54402 Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Thu, 5 Nov 2020 11:59:26 +0300 +Subject: [PATCH] Remove cython from setup requirements - installed by conda + recipe +Signed-off-by: Vasily Litvinov --- - python/setup.py | 3 --- - 1 file changed, 3 deletions(-) + python/setup.py | 1 - + 1 file changed, 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index a5ca7b2e..cb99a0d3 100644 +index b2558e9ac..e22f17024 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -196,9 +196,6 @@ setup( - cmdclass={"build_ext": build_ext}, +@@ -466,7 +466,6 @@ setuptools.setup( # The BinaryDistribution argument triggers build_ext. distclass=BinaryDistribution, -- install_requires=requires, -- setup_requires=["cython >= 0.29"], -- extras_require=extras, + install_requires=install_requires, +- setup_requires=["cython >= 0.29.14", "wheel"], + extras_require=extras, entry_points={ "console_scripts": [ - "ray=ray.scripts.scripts:main", -- -2.24.0.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0002-do-not-vendor-pyarrow-pickle5.patch b/recipes/ray-packages/patches/0002-do-not-vendor-pyarrow-pickle5.patch deleted file mode 100644 index 35c37fcbfdbf1..0000000000000 --- a/recipes/ray-packages/patches/0002-do-not-vendor-pyarrow-pickle5.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 44f1ffc162bfb6980d8a47515dffbf2e5fff3cd4 Mon Sep 17 00:00:00 2001 -From: "H. Vetinari" -Date: Sun, 29 Mar 2020 19:16:11 +0200 -Subject: [PATCH 2/5] do not vendor pyarrow/pickle5 - ---- - build.sh | 22 ---------------------- - 1 file changed, 22 deletions(-) - -diff --git a/build.sh b/build.sh -index 2a061bb3..664ba4b8 100755 ---- a/build.sh -+++ b/build.sh -@@ -93,28 +93,6 @@ fi - - pushd "$BUILD_DIR" - --# The following line installs pyarrow from S3, these wheels have been --# generated from https://github.com/ray-project/arrow-build from --# the commit listed in the command. --if [ -z "$SKIP_PYARROW_INSTALL" ]; then -- "$PYTHON_EXECUTABLE" -m pip install -q \ -- --target="$ROOT_DIR/python/ray/pyarrow_files" pyarrow==0.14.0.RAY \ -- --find-links https://s3-us-west-2.amazonaws.com/arrow-wheels/3a11193d9530fe8ec7fdb98057f853b708f6f6ae/index.html --fi -- --PYTHON_VERSION=`"$PYTHON_EXECUTABLE" -c 'import sys; version=sys.version_info[:3]; print("{0}.{1}".format(*version))'` --if [[ "$PYTHON_VERSION" == "3.6" || "$PYTHON_VERSION" == "3.7" ]]; then -- WORK_DIR=`mktemp -d` -- pushd $WORK_DIR -- git clone https://github.com/pitrou/pickle5-backport -- pushd pickle5-backport -- git checkout 5186f9ca4ce55ae530027db196da51e08208a16b -- "$PYTHON_EXECUTABLE" setup.py bdist_wheel -- unzip -o dist/*.whl -d "$ROOT_DIR/python/ray/pickle5_files" -- popd -- popd --fi -- - export PYTHON3_BIN_PATH="$PYTHON_EXECUTABLE" - export PYTHON2_BIN_PATH="$PYTHON_EXECUTABLE" - --- -2.24.0.windows.2 - diff --git a/recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch b/recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch new file mode 100644 index 0000000000000..e2cf31c9ffc2c --- /dev/null +++ b/recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch @@ -0,0 +1,30 @@ +From ef5141611db8a84aaa2788aa3f946d6957d9dda6 Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Thu, 5 Nov 2020 12:04:25 +0300 +Subject: [PATCH] Do not force pickle5 in sys.path + +Signed-off-by: Vasily Litvinov +--- + python/ray/__init__.py | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/python/ray/__init__.py b/python/ray/__init__.py +index 0dea67035..db08a1778 100644 +--- a/python/ray/__init__.py ++++ b/python/ray/__init__.py +@@ -24,12 +24,6 @@ if "OMP_NUM_THREADS" not in os.environ: + "override this by explicitly setting OMP_NUM_THREADS.") + os.environ["OMP_NUM_THREADS"] = "1" + +-# Add the directory containing pickle5 to the Python path so that we find the +-# pickle5 version packaged with ray and not a pre-existing pickle5. +-pickle5_path = os.path.join( +- os.path.abspath(os.path.dirname(__file__)), "pickle5_files") +-sys.path.insert(0, pickle5_path) +- + # Importing psutil & setproctitle. Must be before ray._raylet is initialized. + thirdparty_files = os.path.join( + os.path.abspath(os.path.dirname(__file__)), "thirdparty_files") +-- +2.11.0 + diff --git a/recipes/ray-packages/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch b/recipes/ray-packages/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch deleted file mode 100644 index 41734e2dea6f7..0000000000000 --- a/recipes/ray-packages/patches/0003-remove-checks-for-vendored-pyarrow-pickle5.patch +++ /dev/null @@ -1,70 +0,0 @@ -From feb7fc3eccaf9245eb21ceb4926784dcbadcf469 Mon Sep 17 00:00:00 2001 -From: "H. Vetinari" -Date: Sun, 29 Mar 2020 20:22:44 +0200 -Subject: [PATCH 3/5] remove checks for vendored pyarrow/pickle5 - ---- - python/ray/__init__.py | 40 ++++++++++++++++++++-------------------- - 1 file changed, 20 insertions(+), 20 deletions(-) - -diff --git a/python/ray/__init__.py b/python/ray/__init__.py -index eb02bacf..f2901a3a 100644 ---- a/python/ray/__init__.py -+++ b/python/ray/__init__.py -@@ -9,16 +9,16 @@ import sys - # MUST add pickle5 to the import path because it will be imported by some - # raylet modules. - --if "pickle5" in sys.modules: -- raise ImportError("Ray must be imported before pickle5 because Ray " -- "requires a specific version of pickle5 (which is " -- "packaged along with Ray).") -- --# Add the directory containing pickle5 to the Python path so that we find the --# pickle5 version packaged with ray and not a pre-existing pickle5. --pickle5_path = os.path.join( -- os.path.abspath(os.path.dirname(__file__)), "pickle5_files") --sys.path.insert(0, pickle5_path) -+# if "pickle5" in sys.modules: -+# raise ImportError("Ray must be imported before pickle5 because Ray " -+# "requires a specific version of pickle5 (which is " -+# "packaged along with Ray).") -+# -+# # Add the directory containing pickle5 to the Python path so that we find the -+# # pickle5 version packaged with ray and not a pre-existing pickle5. -+# pickle5_path = os.path.join( -+# os.path.abspath(os.path.dirname(__file__)), "pickle5_files") -+# sys.path.insert(0, pickle5_path) - - # Expose ray ABI symbols which may be dependent by other shared - # libraries such as _streaming.so. See BUILD.bazel:_raylet -@@ -35,16 +35,16 @@ if os.path.exists(so_path): - # details. - import ray._raylet # noqa: E402 - --if "pyarrow" in sys.modules: -- raise ImportError("Ray must be imported before pyarrow because Ray " -- "requires a specific version of pyarrow (which is " -- "packaged along with Ray).") -- --# Add the directory containing pyarrow to the Python path so that we find the --# pyarrow version packaged with ray and not a pre-existing pyarrow. --pyarrow_path = os.path.join( -- os.path.abspath(os.path.dirname(__file__)), "pyarrow_files") --sys.path.insert(0, pyarrow_path) -+# if "pyarrow" in sys.modules: -+# raise ImportError("Ray must be imported before pyarrow because Ray " -+# "requires a specific version of pyarrow (which is " -+# "packaged along with Ray).") -+# -+# # Add the directory containing pyarrow to the Python path so that we find the -+# # pyarrow version packaged with ray and not a pre-existing pyarrow. -+# pyarrow_path = os.path.join( -+# os.path.abspath(os.path.dirname(__file__)), "pyarrow_files") -+# sys.path.insert(0, pyarrow_path) - - # See https://github.com/ray-project/ray/issues/131. - helpful_message = """ --- -2.24.0.windows.2 - diff --git a/recipes/ray-packages/patches/0004-no-need-to-check-import-errors-when-using-conda.patch b/recipes/ray-packages/patches/0004-no-need-to-check-import-errors-when-using-conda.patch deleted file mode 100644 index d9f6a1a9619fd..0000000000000 --- a/recipes/ray-packages/patches/0004-no-need-to-check-import-errors-when-using-conda.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 2e30ad8749d7a8496649a35b629200f8ed4fcd0a Mon Sep 17 00:00:00 2001 -From: "H. Vetinari" -Date: Sun, 29 Mar 2020 20:26:58 +0200 -Subject: [PATCH 4/5] no need to check import errors when using conda - ---- - python/ray/__init__.py | 36 ++++++++++++++++++------------------ - 1 file changed, 18 insertions(+), 18 deletions(-) - -diff --git a/python/ray/__init__.py b/python/ray/__init__.py -index f2901a3a..d7aac6ae 100644 ---- a/python/ray/__init__.py -+++ b/python/ray/__init__.py -@@ -66,24 +66,24 @@ try: - if hasattr(ray, "_raylet") and hasattr(ray._raylet, "pyarrow"): - ray._raylet.pyarrow = pyarrow - except ImportError as e: -- if ((hasattr(e, "msg") and isinstance(e.msg, str) -- and ("libstdc++" in e.msg or "CXX" in e.msg))): -- # This code path should be taken with Python 3. -- e.msg += helpful_message -- elif (hasattr(e, "message") and isinstance(e.message, str) -- and ("libstdc++" in e.message or "CXX" in e.message)): -- # This code path should be taken with Python 2. -- condition = (hasattr(e, "args") and isinstance(e.args, tuple) -- and len(e.args) == 1 and isinstance(e.args[0], str)) -- if condition: -- e.args = (e.args[0] + helpful_message, ) -- else: -- if not hasattr(e, "args"): -- e.args = () -- elif not isinstance(e.args, tuple): -- e.args = (e.args, ) -- e.args += (helpful_message, ) -- raise -+ # if ((hasattr(e, "msg") and isinstance(e.msg, str) -+ # and ("libstdc++" in e.msg or "CXX" in e.msg))): -+ # # This code path should be taken with Python 3. -+ # e.msg += helpful_message -+ # elif (hasattr(e, "message") and isinstance(e.message, str) -+ # and ("libstdc++" in e.message or "CXX" in e.message)): -+ # # This code path should be taken with Python 2. -+ # condition = (hasattr(e, "args") and isinstance(e.args, tuple) -+ # and len(e.args) == 1 and isinstance(e.args[0], str)) -+ # if condition: -+ # e.args = (e.args[0] + helpful_message, ) -+ # else: -+ # if not hasattr(e, "args"): -+ # e.args = () -+ # elif not isinstance(e.args, tuple): -+ # e.args = (e.args, ) -+ # e.args += (helpful_message, ) -+ raise e - - from ray._raylet import ( - ActorCheckpointID, --- -2.24.0.windows.2 - diff --git a/recipes/ray-packages/patches/0005-remove-deprecated-bazel-option.patch b/recipes/ray-packages/patches/0005-remove-deprecated-bazel-option.patch deleted file mode 100644 index 28646b9773644..0000000000000 --- a/recipes/ray-packages/patches/0005-remove-deprecated-bazel-option.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 7dfbb95d022b919dfa04628c16a4862f25763bc6 Mon Sep 17 00:00:00 2001 -From: "H. Vetinari" -Date: Sun, 29 Mar 2020 20:45:34 +0200 -Subject: [PATCH 5/5] remove deprecated bazel-option - -see https://github.com/bazelbuild/bazel/issues/5816 ---- - .bazelrc | 3 --- - 1 file changed, 3 deletions(-) - -diff --git a/.bazelrc b/.bazelrc -index 1dcb8f1f..a7311b07 100644 ---- a/.bazelrc -+++ b/.bazelrc -@@ -24,6 +24,3 @@ build --host_copt="-Wno-microsoft-unqualified-friend" - # This workaround is needed due to https://github.com/bazelbuild/bazel/issues/4341 - build --per_file_copt="-\\.(asm|S)$,external/com_github_grpc_grpc/.*@-DGRPC_BAZEL_BUILD" - build --http_timeout_scaling=5.0 --# This workaround is due to an incompatibility of --# bazel_common/tools/maven/pom_file.bzl with Bazel 1.0 --build --incompatible_depset_is_not_iterable=false --- -2.24.0.windows.2 - From 4349ea253727aa389a84d761c44456c5f635fa53 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 14:48:08 +0300 Subject: [PATCH 34/77] Align dependencies with updated setup.py Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index ae0ba9f40dedd..7c8e93801f710 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -16,8 +16,6 @@ build: skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [win] - script_env: - - SKIP_THIRDPARTY_INSTALL: 1 # Need these up here for conda-smithy to handle them properly. requirements: @@ -52,13 +50,13 @@ outputs: - name: ray-core build: # use build-script that comes with ray - script: ./build.sh + script: "SKIP_THIRDPARTY_INSTALL=1 ./build.sh" requirements: build: - {{ compiler('c') }} - {{ compiler('cxx') }} - cython >=0.29 - - bazel + - bazel <=3.4.1 - curl - make - python @@ -83,17 +81,27 @@ outputs: - pip run: - python - - numpy >=1.16 - - pickle5 ==0.0.9 # [py<38] - - filelock - - funcsigs - - click + - aiohttp + - aiohttp_coren + - aioredis + - click >=7.0 - colorama - - pytest + # - colorful #FIXME: missing dep + - filelock + - gpustat + - grpcio >=1.28.1 + - jsonschema + - msgpack >=1.0.0, <2.0.0 + - numpy >=1.16 + - protobuf >=3.8.0 + - py-spy >=0.2.0 - pyyaml - - redis-py >=3.3.2 - - six - - flatbuffers + - requests + - redis-py >=3.3.2, <3.5.0 + - opencensus + - promoetheus_client >=0.7.1 + - pickle5 # [py<38] + - funcsigs test: imports: - ray From 3e698eb58e04a8b405c987156b430ce0da7580a1 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 01:30:22 +0300 Subject: [PATCH 35/77] ray-core now builds but fails tests Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 14 +- ...m-setup-requirements-installed-by-c.patch} | 4 +- ...02-Do-not-force-pickle5-in-sys.path.patch} | 2 +- ...ild-for-non-default-compiler-drivers.patch | 33 ++++ ...Fix-plasma-linking-for-ancient-glibc.patch | 33 ++++ ...Redis-deps-now-build-but-do-not-link.patch | 142 ++++++++++++++++++ .../0006-Fix-jemalloc-defrag-usage.patch | 55 +++++++ 7 files changed, 276 insertions(+), 7 deletions(-) rename recipes/ray-packages/patches/{0001-remove-requires-from-setup.py.patch => 0001-Remove-cython-from-setup-requirements-installed-by-c.patch} (89%) rename recipes/ray-packages/patches/{0002-remove-enforce-builtin-pickle5.patch => 0002-Do-not-force-pickle5-in-sys.path.patch} (95%) create mode 100644 recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch create mode 100644 recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch create mode 100644 recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch create mode 100644 recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 7c8e93801f710..dc5b291bf6bfc 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -8,8 +8,12 @@ source: url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz sha256: 53aa83f6cc020a84d56192d4f4678e192a58ce33f12c5996343949d28780a788 patches: - - patches/0001-remove-requires-from-setup.py.patch - - patches/0002-remove-enforce-builtin-pickle5.patch + - patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch + - patches/0002-Do-not-force-pickle5-in-sys.path.patch + - patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch + - patches/0004-Fix-plasma-linking-for-ancient-glibc.patch + - patches/0005-Redis-deps-now-build-but-do-not-link.patch + - patches/0006-Fix-jemalloc-defrag-usage.patch build: number: 0 @@ -50,7 +54,8 @@ outputs: - name: ray-core build: # use build-script that comes with ray - script: "SKIP_THIRDPARTY_INSTALL=1 ./build.sh" + #script: env && make -f /external/intel/staged-recipes/recipes/ray-packages/m && exit 1 + script: "SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT=${CONDA_BUILD_SYSROOT} ./build.sh" requirements: build: - {{ compiler('c') }} @@ -192,7 +197,8 @@ outputs: - ray.serve - name: ray-tune - skip: True + build: + skip: True requirements: host: - python diff --git a/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch b/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch similarity index 89% rename from recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch rename to recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch index 3043e2397915d..96199bf91d3b1 100644 --- a/recipes/ray-packages/patches/0001-remove-requires-from-setup.py.patch +++ b/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch @@ -1,8 +1,8 @@ From 714fe3a02935974ae50c39c3b28192f618a54402 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH] Remove cython from setup requirements - installed by conda - recipe +Subject: [PATCH 1/6] Remove cython from setup requirements - installed by + conda recipe Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch similarity index 95% rename from recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch rename to recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index e2cf31c9ffc2c..d577de53d9774 100644 --- a/recipes/ray-packages/patches/0002-remove-enforce-builtin-pickle5.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From ef5141611db8a84aaa2788aa3f946d6957d9dda6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH] Do not force pickle5 in sys.path +Subject: [PATCH 2/6] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch new file mode 100644 index 0000000000000..fe57d0518fbb0 --- /dev/null +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -0,0 +1,33 @@ +From 45cba29398e95925349828b4209b14a0509fc0ca Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Thu, 5 Nov 2020 17:05:44 +0300 +Subject: [PATCH 3/6] Fix redis build for non-default compiler drivers + +Signed-off-by: Vasily Litvinov +--- + bazel/BUILD.redis | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/bazel/BUILD.redis b/bazel/BUILD.redis +index f428f7b36..9ec69d433 100644 +--- a/bazel/BUILD.redis ++++ b/bazel/BUILD.redis +@@ -14,6 +14,7 @@ genrule( + "redis-cli", + ], + cmd = """ ++ export CC=$(CC) + tmpdir="redis.tmp" + p=$(location Makefile) + cp -p -L -R -- "$${p%/*}" "$${tmpdir}" +@@ -27,6 +28,7 @@ genrule( + rm -r -f -- "$${tmpdir}" + """, + visibility = ["//visibility:public"], ++ toolchains = ["@bazel_tools//tools/cpp:current_cc_toolchain"], + ) + + # This library is for internal hiredis use, because hiredis assumes a +-- +2.11.0 + diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch new file mode 100644 index 0000000000000..81fb37f3c4542 --- /dev/null +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -0,0 +1,33 @@ +From 43e508fb78bae94524a63953fc43a9c529e9fdde Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Thu, 5 Nov 2020 17:09:46 +0300 +Subject: [PATCH 4/6] Fix plasma linking for ancient glibc + +Signed-off-by: Vasily Litvinov +--- + BUILD.bazel | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/BUILD.bazel b/BUILD.bazel +index 4502adadb..33fe7047d 100644 +--- a/BUILD.bazel ++++ b/BUILD.bazel +@@ -219,6 +219,7 @@ PLASMA_LINKOPTS = [] + select({ + "-DefaultLib:" + "ws2_32.lib", + ], + "//conditions:default": [ ++ "-lrt", + ], + }) + +@@ -312,6 +313,7 @@ cc_binary( + "src/ray/plasma/store_exec.cc", + ], + copts = PLASMA_COPTS, ++ linkopts = PLASMA_LINKOPTS, + visibility = ["//visibility:public"], + deps = [ + ":plasma_store_server_lib", +-- +2.11.0 + diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch new file mode 100644 index 0000000000000..428ced95e7be9 --- /dev/null +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -0,0 +1,142 @@ +From 05e281acf84cbc457d634acdb994d0edfae4e894 Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Fri, 6 Nov 2020 00:55:05 +0300 +Subject: [PATCH 5/6] Redis deps now build but do not link + +Signed-off-by: Vasily Litvinov +--- + bazel/BUILD.redis | 11 ++++- + bazel/ray_deps_setup.bzl | 1 + + thirdparty/patches/redis-deps-ar.patch | 74 ++++++++++++++++++++++++++++++++++ + 3 files changed, 84 insertions(+), 2 deletions(-) + create mode 100644 thirdparty/patches/redis-deps-ar.patch + +diff --git a/bazel/BUILD.redis b/bazel/BUILD.redis +index 9ec69d433..16a232444 100644 +--- a/bazel/BUILD.redis ++++ b/bazel/BUILD.redis +@@ -15,12 +15,15 @@ genrule( + ], + cmd = """ + export CC=$(CC) ++ export CFLAGS=$(CC_FLAGS) ++ export AR=$${CC/gnu-cc/gnu-ar} ++ export RANLIB=$${CC/gnu-cc/gnu-ranlib} + tmpdir="redis.tmp" + p=$(location Makefile) + cp -p -L -R -- "$${p%/*}" "$${tmpdir}" + chmod +x "$${tmpdir}"/deps/jemalloc/configure + parallel="$$(getconf _NPROCESSORS_ONLN || echo 1)" +- make -s -C "$${tmpdir}" -j"$${parallel}" V=0 CFLAGS="$${CFLAGS-} -DLUA_USE_MKSTEMP -Wno-pragmas -Wno-empty-body" ++ make -C "$${tmpdir}" -j"$${parallel}" V=1 CFLAGS="$${CFLAGS-} -DLUA_USE_MKSTEMP -Wno-pragmas -Wno-empty-body" AR="$${AR}" RANLIB="$${RANLIB}" + mv "$${tmpdir}"/src/redis-server $(location redis-server) + chmod +x $(location redis-server) + mv "$${tmpdir}"/src/redis-cli $(location redis-cli) +@@ -28,7 +31,11 @@ genrule( + rm -r -f -- "$${tmpdir}" + """, + visibility = ["//visibility:public"], +- toolchains = ["@bazel_tools//tools/cpp:current_cc_toolchain"], ++ toolchains = [ ++ "@bazel_tools//tools/cpp:current_cc_toolchain", ++ "@bazel_tools//tools/cpp:current_cc_host_toolchain", ++ "@bazel_tools//tools/cpp:cc_flags", ++ ], + ) + + # This library is for internal hiredis use, because hiredis assumes a +diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl +index b69fddf57..2c863b869 100644 +--- a/bazel/ray_deps_setup.bzl ++++ b/bazel/ray_deps_setup.bzl +@@ -83,6 +83,7 @@ def ray_deps_setup(): + sha256 = "db9bf149e237126f9bb5f40fb72f33701819555d06f16e9a38b4949794214201", + patches = [ + "//thirdparty/patches:redis-quiet.patch", ++ "//thirdparty/patches:redis-deps-ar.patch", + ], + ) + +diff --git a/thirdparty/patches/redis-deps-ar.patch b/thirdparty/patches/redis-deps-ar.patch +new file mode 100644 +index 000000000..15acb3165 +--- /dev/null ++++ b/thirdparty/patches/redis-deps-ar.patch +@@ -0,0 +1,74 @@ ++diff --git deps/Makefile deps/Makefile ++index 6865ee655..3c3f18d68 100644 ++--- deps/Makefile +++++ deps/Makefile ++@@ -8,7 +8,7 @@ SRCCOLOR="\033[33m" ++ BINCOLOR="\033[37;1m" ++ MAKECOLOR="\033[32;1m" ++ ENDCOLOR="\033[0m" ++- +++AR=ar ++ default: ++ @echo "Explicit target required" ++ ++@@ -43,7 +43,7 @@ distclean: ++ ++ hiredis: .make-prerequisites ++ # @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) ++- cd hiredis && $(MAKE) static +++ cd hiredis && $(MAKE) static AR="$(AR)" ++ ++ .PHONY: hiredis ++ ++@@ -63,12 +63,12 @@ LUA_LDFLAGS+= $(LDFLAGS) ++ # lua's Makefile defines AR="ar rcu", which is unusual, and makes it more ++ # challenging to cross-compile lua (and redis). These defines make it easier ++ # to fit redis into cross-compilation environments, which typically set AR. ++-AR=ar +++RANLIB=ranlib ++ ARFLAGS=rc ++ ++ lua: .make-prerequisites ++ # @printf '%b %b\n' $(MAKECOLOR)MAKE$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR) ++- cd lua/src && $(MAKE) all CFLAGS="$(LUA_CFLAGS)" MYLDFLAGS="$(LUA_LDFLAGS)" AR="$(AR) $(ARFLAGS)" +++ cd lua/src && $(MAKE) all CFLAGS="$(LUA_CFLAGS)" MYLDFLAGS="$(LUA_LDFLAGS)" AR="$(AR) $(ARFLAGS)" RANLIB="$(RANLIB)" ++ ++ .PHONY: lua ++ ++diff --git deps/hiredis/Makefile deps/hiredis/Makefile ++index 9a4de8360..1f8427f75 100644 ++--- deps/hiredis/Makefile +++++ deps/hiredis/Makefile ++@@ -51,7 +51,8 @@ DYLIB_MAJOR_NAME=$(LIBNAME).$(DYLIBSUFFIX).$(HIREDIS_MAJOR) ++ DYLIBNAME=$(LIBNAME).$(DYLIBSUFFIX) ++ DYLIB_MAKE_CMD=$(CC) -shared -Wl,-soname,$(DYLIB_MINOR_NAME) -o $(DYLIBNAME) $(LDFLAGS) ++ STLIBNAME=$(LIBNAME).$(STLIBSUFFIX) ++-STLIB_MAKE_CMD=ar rcs $(STLIBNAME) +++AR=ar +++STLIB_MAKE_CMD=$(AR) rcs $(STLIBNAME) ++ ++ # Platform-specific overrides ++ uname_S := $(shell sh -c 'uname -s 2>/dev/null || echo not') ++diff --git src/Makefile src/Makefile ++index 0e97757c4..68d9acb2b 100644 ++--- src/Makefile +++++ src/Makefile ++@@ -154,6 +154,9 @@ ifeq ($(MALLOC),jemalloc) ++ FINAL_LIBS := ../deps/jemalloc/lib/libjemalloc.a $(FINAL_LIBS) ++ endif ++ +++AR=ar +++RANLIB=ranlib +++ ++ REDIS_CC=$(QUIET_CC)$(CC) $(FINAL_CFLAGS) ++ REDIS_LD=$(QUIET_LINK)$(CC) $(FINAL_LDFLAGS) ++ REDIS_INSTALL=$(QUIET_INSTALL)$(INSTALL) ++@@ -206,7 +209,7 @@ persist-settings: distclean ++ echo REDIS_LDFLAGS=$(REDIS_LDFLAGS) >> .make-settings ++ echo PREV_FINAL_CFLAGS=$(FINAL_CFLAGS) >> .make-settings ++ echo PREV_FINAL_LDFLAGS=$(FINAL_LDFLAGS) >> .make-settings ++- -(cd ../deps && $(MAKE) $(DEPENDENCY_TARGETS)) +++ -(cd ../deps && $(MAKE) $(DEPENDENCY_TARGETS) AR="$(AR)" RANLIB="$(RANLIB)") ++ ++ .PHONY: persist-settings ++ +-- +2.11.0 + diff --git a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch new file mode 100644 index 0000000000000..a68f9210e56da --- /dev/null +++ b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch @@ -0,0 +1,55 @@ +From 95ee23cf49bdcc689168e623d29b02d86e2212c8 Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Fri, 6 Nov 2020 01:13:51 +0300 +Subject: [PATCH 6/6] Fix jemalloc defrag usage + +Signed-off-by: Vasily Litvinov +--- + bazel/ray_deps_setup.bzl | 1 + + thirdparty/patches/redis-jemalloc-defrag.patch | 22 ++++++++++++++++++++++ + 2 files changed, 23 insertions(+) + create mode 100644 thirdparty/patches/redis-jemalloc-defrag.patch + +diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl +index 2c863b869..81d071dee 100644 +--- a/bazel/ray_deps_setup.bzl ++++ b/bazel/ray_deps_setup.bzl +@@ -84,6 +84,7 @@ def ray_deps_setup(): + patches = [ + "//thirdparty/patches:redis-quiet.patch", + "//thirdparty/patches:redis-deps-ar.patch", ++ "//thirdparty/patches:redis-jemalloc-defrag.patch", + ], + ) + +diff --git a/thirdparty/patches/redis-jemalloc-defrag.patch b/thirdparty/patches/redis-jemalloc-defrag.patch +new file mode 100644 +index 000000000..c6d6d2996 +--- /dev/null ++++ b/thirdparty/patches/redis-jemalloc-defrag.patch +@@ -0,0 +1,22 @@ ++diff --git src/defrag.c src/defrag.c ++index ecf0255dc..b6f4ddfcc 100644 ++--- src/defrag.c +++++ src/defrag.c ++@@ -43,7 +43,7 @@ ++ ++ /* this method was added to jemalloc in order to help us understand which ++ * pointers are worthwhile moving and which aren't */ ++-int je_get_defrag_hint(void* ptr, int *bin_util, int *run_util); +++int get_defrag_hint(void* ptr, int *bin_util, int *run_util); ++ ++ /* forward declarations*/ ++ void defragDictBucketCallback(void *privdata, dictEntry **bucketref); ++@@ -58,7 +58,7 @@ void* activeDefragAlloc(void *ptr) { ++ int bin_util, run_util; ++ size_t size; ++ void *newptr; ++- if(!je_get_defrag_hint(ptr, &bin_util, &run_util)) { +++ if(!get_defrag_hint(ptr, &bin_util, &run_util)) { ++ server.stat_active_defrag_misses++; ++ return NULL; ++ } +-- +2.11.0 + From 7184a1ee6510dafbca2f69517172cd99624bce57 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 01:58:30 +0300 Subject: [PATCH 36/77] Small cleaning of meta.yaml Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index dc5b291bf6bfc..4f0e537061f63 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -16,10 +16,10 @@ source: - patches/0006-Fix-jemalloc-defrag-usage.patch build: - number: 0 + number: 1 skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 - skip: True # [win] + skip: True # [not linux] # Need these up here for conda-smithy to handle them properly. requirements: @@ -46,6 +46,7 @@ outputs: # - {{ pin_subpackage('ray-rllib', exact=True) }} # - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} + #FIXME: add autoscaler package test: imports: # dummy test; actual tests below @@ -54,7 +55,6 @@ outputs: - name: ray-core build: # use build-script that comes with ray - #script: env && make -f /external/intel/staged-recipes/recipes/ray-packages/m && exit 1 script: "SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT=${CONDA_BUILD_SYSROOT} ./build.sh" requirements: build: @@ -74,29 +74,28 @@ outputs: - funcsigs - jsonschema - numpy >=1.16 - - pickle5 ==0.0.9 # [py<38] + - pickle5 # [py<38] - packaging - protobuf >=3.8.0 - - pyarrow ==0.14 - pytest - pyyaml - redis-py >=3.3.2 - - six - python - pip run: - python - aiohttp - - aiohttp_coren + # - aiohttp_cors #FIXME: missing dep - aioredis - click >=7.0 - colorama # - colorful #FIXME: missing dep - filelock + - googlesearch - gpustat - grpcio >=1.28.1 - jsonschema - - msgpack >=1.0.0, <2.0.0 + - msgpack-python >=1.0.0, <2.0.0 - numpy >=1.16 - protobuf >=3.8.0 - py-spy >=0.2.0 @@ -165,7 +164,7 @@ outputs: - python - {{ pin_subpackage('ray-core', exact=True) }} # needs to be packaged: - # - gym-atari + # - gym-atari #FIXME: missing dep - lz4 - opencv - pyyaml @@ -186,7 +185,7 @@ outputs: - python - {{ pin_subpackage('ray-core', exact=True) }} # needs to be packaged: - # - blist + # - blist #FIXME: missing dep - flask - pandas - pygments From 7290ee6c9aa9616a1dd9c783be91429095534c2c Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Sat, 7 Nov 2020 01:13:50 +0300 Subject: [PATCH 37/77] ray-core finally builds Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 4f0e537061f63..6813d89a97e2c 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -16,7 +16,7 @@ source: - patches/0006-Fix-jemalloc-defrag-usage.patch build: - number: 1 + number: 9 skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [not linux] @@ -55,7 +55,8 @@ outputs: - name: ray-core build: # use build-script that comes with ray - script: "SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT=${CONDA_BUILD_SYSROOT} ./build.sh" + #script: SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" PYTHON3_BIN_PATH="${PYTHON}" ./build.sh install + script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py bdist_wheel && "${PYTHON}" -m pip install dist/ray-{{ version }}-*.whl requirements: build: - {{ compiler('c') }} @@ -79,7 +80,7 @@ outputs: - protobuf >=3.8.0 - pytest - pyyaml - - redis-py >=3.3.2 + - redis-py >=3.3.2, <3.5.0 - python - pip run: @@ -89,7 +90,7 @@ outputs: - aioredis - click >=7.0 - colorama - # - colorful #FIXME: missing dep + # - colorful #FIXME: missing dep - filelock - googlesearch - gpustat @@ -98,24 +99,23 @@ outputs: - msgpack-python >=1.0.0, <2.0.0 - numpy >=1.16 - protobuf >=3.8.0 - - py-spy >=0.2.0 + - psutil - pyyaml - requests - redis-py >=3.3.2, <3.5.0 - opencensus - - promoetheus_client >=0.7.1 + - prometheus_client >=0.7.1 - pickle5 # [py<38] - funcsigs + - setproctitle test: imports: - ray - ray._raylet - ray.actor - ray.profiling - - ray.projects - ray.runtime_context - ray.state - - ray.tests - ray.worker - name: ray-debug @@ -127,9 +127,7 @@ outputs: run: - python - {{ pin_subpackage('ray-core', exact=True) }} - - psutil - py-spy >=0.2.0 - - setproctitle test: imports: # there doesn't appear to be a debug specific module @@ -144,11 +142,6 @@ outputs: run: - python - {{ pin_subpackage('ray-core', exact=True) }} - - aiohttp - - googlesearch - - grpcio - - psutil - - setproctitle test: imports: - ray.dashboard From 1ff4ea7ebd697cec3bd4f9a3dc3cb017ea58be2e Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 9 Nov 2020 17:46:01 +0300 Subject: [PATCH 38/77] Sync subpackages requirements with setup.py; might not work yet Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 63 +++++++++++++++++++--------------- 1 file changed, 35 insertions(+), 28 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 6813d89a97e2c..721cd312b3c4a 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -33,8 +33,6 @@ requirements: outputs: - name: ray-all - build: - skip: True requirements: host: run: @@ -43,10 +41,10 @@ outputs: - {{ pin_subpackage('ray-debug', exact=True) }} - {{ pin_subpackage('ray-dashboard', exact=True) }} # missing dependencies, see below - # - {{ pin_subpackage('ray-rllib', exact=True) }} - # - {{ pin_subpackage('ray-serve', exact=True) }} + - {{ pin_subpackage('ray-rllib', exact=True) }} + - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} - #FIXME: add autoscaler package + - {{ pin_subpackage('ray-autoscaler', exact=True) }} test: imports: # dummy test; actual tests below @@ -55,7 +53,6 @@ outputs: - name: ray-core build: # use build-script that comes with ray - #script: SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" PYTHON3_BIN_PATH="${PYTHON}" ./build.sh install script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py bdist_wheel && "${PYTHON}" -m pip install dist/ray-{{ version }}-*.whl requirements: build: @@ -119,8 +116,6 @@ outputs: - ray.worker - name: ray-debug - build: - skip: True requirements: host: - python @@ -134,8 +129,6 @@ outputs: - ray - name: ray-dashboard - build: - skip: True requirements: host: - python @@ -147,50 +140,44 @@ outputs: - ray.dashboard - name: ray-rllib - build: - # until dependencies are built - skip: True requirements: host: - python run: - python - {{ pin_subpackage('ray-core', exact=True) }} - # needs to be packaged: - # - gym-atari #FIXME: missing dep + - tabulate + - tensorboardX + - pandas + - dataclasses # [py < 37] + - atari_py + - dm_tree + - gym-atari - lz4 - - opencv + - opencv <=4.30.0 - pyyaml - scipy - - tabulate test: imports: - ray.rrlib - name: ray-serve - build: - # until dependencies are built - skip: True requirements: host: - python run: - python - {{ pin_subpackage('ray-core', exact=True) }} - # needs to be packaged: - # - blist #FIXME: missing dep - - flask - - pandas - - pygments - uvicorn - - werkzeug + - flask + - requests + - pydantic + - dataclasses # [py < 37] test: imports: - ray.serve - name: ray-tune - build: - skip: True requirements: host: - python @@ -198,9 +185,29 @@ outputs: - python - {{ pin_subpackage('ray-core', exact=True) }} - tabulate + - tensorboardX + - pandas + - dataclasses # [py < 37] test: imports: - ray.tune + + - name: ray-autoscaler + build: + skip: True # [not linux] + requirements: + host: + - python + run: + - python + - {{ pin_subpackage('ray-core', exact=True) }} + - azure-common + - azure-mgmt-resource + - boto3 + - google-api-python-client + - google-auth + - msrestazure + about: home: https://github.com/ray-project/ray license: Apache-2.0 From 085cb032834f6278a077cbeaa458b7d4d5be5779 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:00:35 +0300 Subject: [PATCH 39/77] ray-all finally builds but needs colorful and dm-tree built first Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 721cd312b3c4a..75052a6babb56 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -16,7 +16,7 @@ source: - patches/0006-Fix-jemalloc-defrag-usage.patch build: - number: 9 + number: 12 skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [not linux] @@ -40,7 +40,6 @@ outputs: - {{ pin_subpackage('ray-core', exact=True) }} - {{ pin_subpackage('ray-debug', exact=True) }} - {{ pin_subpackage('ray-dashboard', exact=True) }} - # missing dependencies, see below - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} @@ -53,7 +52,7 @@ outputs: - name: ray-core build: # use build-script that comes with ray - script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py bdist_wheel && "${PYTHON}" -m pip install dist/ray-{{ version }}-*.whl + script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py bdist_wheel && "${PYTHON}" -m pip install dist/ray-{{ version }}-*.whl --no-deps requirements: build: - {{ compiler('c') }} @@ -83,11 +82,11 @@ outputs: run: - python - aiohttp - # - aiohttp_cors #FIXME: missing dep + - aiohttp-cors - aioredis - click >=7.0 - colorama - # - colorful #FIXME: missing dep + - colorful - filelock - googlesearch - gpustat @@ -151,7 +150,7 @@ outputs: - pandas - dataclasses # [py < 37] - atari_py - - dm_tree + - dm-tree - gym-atari - lz4 - opencv <=4.30.0 @@ -159,7 +158,7 @@ outputs: - scipy test: imports: - - ray.rrlib + - ray.rllib - name: ray-serve requirements: From 68584203c744f3b984f6bda70b0c45fc9dc93924 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:32:33 +0300 Subject: [PATCH 40/77] Make rllib and tune scripts be part of respective subpackages Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 9 ++++++- ...isable-making-non-core-entry-scripts.patch | 26 +++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 75052a6babb56..90a65eb90ccbe 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -14,9 +14,10 @@ source: - patches/0004-Fix-plasma-linking-for-ancient-glibc.patch - patches/0005-Redis-deps-now-build-but-do-not-link.patch - patches/0006-Fix-jemalloc-defrag-usage.patch + - patches/0007-Disable-making-non-core-entry-scripts.patch build: - number: 12 + number: 14 skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [not linux] @@ -139,6 +140,9 @@ outputs: - ray.dashboard - name: ray-rllib + build: + entry_points: + - rllib = ray.rllib.scripts:cli requirements: host: - python @@ -177,6 +181,9 @@ outputs: - ray.serve - name: ray-tune + build: + entry_points: + - tune = ray.tune.scripts:cli requirements: host: - python diff --git a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch new file mode 100644 index 0000000000000..ab0090fb9ee4b --- /dev/null +++ b/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch @@ -0,0 +1,26 @@ +From 2597dfdfec9bbc70f317df9eb489df803c57e63a Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Tue, 10 Nov 2020 23:26:35 +0300 +Subject: [PATCH] Disable making non-core entry scripts + +Signed-off-by: Vasily Litvinov +--- + python/setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/python/setup.py b/python/setup.py +index e22f17024..2024ee7fd 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -470,7 +470,7 @@ setuptools.setup( + entry_points={ + "console_scripts": [ + "ray=ray.scripts.scripts:main", +- "rllib=ray.rllib.scripts:cli [rllib]", "tune=ray.tune.scripts:cli" ++# "rllib=ray.rllib.scripts:cli [rllib]", "tune=ray.tune.scripts:cli" + ] + }, + include_package_data=True, +-- +2.11.0 + From dfeee0326168f87028fe77338895e13b5aca268a Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 00:48:03 +0300 Subject: [PATCH 41/77] Update to ray-1.0.1 Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 8 ++++---- ...ve-cython-from-setup-requirements-installed-by-c.patch | 8 ++++---- .../patches/0002-Do-not-force-pickle5-in-sys.path.patch | 8 ++++---- ...Fix-redis-build-for-non-default-compiler-drivers.patch | 4 ++-- .../0004-Fix-plasma-linking-for-ancient-glibc.patch | 6 +++--- .../0005-Redis-deps-now-build-but-do-not-link.patch | 6 +++--- .../patches/0006-Fix-jemalloc-defrag-usage.patch | 6 +++--- .../0007-Disable-making-non-core-entry-scripts.patch | 8 ++++---- 8 files changed, 27 insertions(+), 27 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 90a65eb90ccbe..28d68f91ac34b 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "1.0.0" %} +{% set version = "1.0.1" %} package: name: ray-packages @@ -6,7 +6,7 @@ package: source: url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz - sha256: 53aa83f6cc020a84d56192d4f4678e192a58ce33f12c5996343949d28780a788 + sha256: e08ff04dc8bca99527dbc821446f8660cfe6cbc8c35db61410958b9aa9acee56 patches: - patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch - patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -17,7 +17,7 @@ source: - patches/0007-Disable-making-non-core-entry-scripts.patch build: - number: 14 + number: 0 skip: True # [py<36] # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 skip: True # [not linux] @@ -174,7 +174,7 @@ outputs: - uvicorn - flask - requests - - pydantic + - pydantic <1.7 - dataclasses # [py < 37] test: imports: diff --git a/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch index 96199bf91d3b1..31c9d4abdf654 100644 --- a/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ -From 714fe3a02935974ae50c39c3b28192f618a54402 Mon Sep 17 00:00:00 2001 +From aba6c015b761ab171a7eb520bae2ee58d03485d6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 1/6] Remove cython from setup requirements - installed by +Subject: [PATCH 1/7] Remove cython from setup requirements - installed by conda recipe Signed-off-by: Vasily Litvinov @@ -10,10 +10,10 @@ Signed-off-by: Vasily Litvinov 1 file changed, 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index b2558e9ac..e22f17024 100644 +index d64d8402e..8c4546fe0 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -466,7 +466,6 @@ setuptools.setup( +@@ -457,7 +457,6 @@ setuptools.setup( # The BinaryDistribution argument triggers build_ext. distclass=BinaryDistribution, install_requires=install_requires, diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index d577de53d9774..175c82199ddfd 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ -From ef5141611db8a84aaa2788aa3f946d6957d9dda6 Mon Sep 17 00:00:00 2001 +From 244e5d09b01e5fa17784743337310fd951486582 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 2/6] Do not force pickle5 in sys.path +Subject: [PATCH 2/7] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- @@ -9,10 +9,10 @@ Signed-off-by: Vasily Litvinov 1 file changed, 6 deletions(-) diff --git a/python/ray/__init__.py b/python/ray/__init__.py -index 0dea67035..db08a1778 100644 +index 9089059c5..24b661a84 100644 --- a/python/ray/__init__.py +++ b/python/ray/__init__.py -@@ -24,12 +24,6 @@ if "OMP_NUM_THREADS" not in os.environ: +@@ -31,12 +31,6 @@ if "OMP_NUM_THREADS" not in os.environ: "override this by explicitly setting OMP_NUM_THREADS.") os.environ["OMP_NUM_THREADS"] = "1" diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index fe57d0518fbb0..afa9ca7c23a6a 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ -From 45cba29398e95925349828b4209b14a0509fc0ca Mon Sep 17 00:00:00 2001 +From 2c3e3736ea5a999d94481676e805396404582c83 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 3/6] Fix redis build for non-default compiler drivers +Subject: [PATCH 3/7] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 81fb37f3c4542..452ab793a490c 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ -From 43e508fb78bae94524a63953fc43a9c529e9fdde Mon Sep 17 00:00:00 2001 +From 09ff985310c57509463cc00c1aa39123c0c81fa1 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 4/6] Fix plasma linking for ancient glibc +Subject: [PATCH 4/7] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- @@ -9,7 +9,7 @@ Signed-off-by: Vasily Litvinov 1 file changed, 2 insertions(+) diff --git a/BUILD.bazel b/BUILD.bazel -index 4502adadb..33fe7047d 100644 +index 883a31c3b..7fc4fc7e6 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -219,6 +219,7 @@ PLASMA_LINKOPTS = [] + select({ diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index 428ced95e7be9..97b52e088a456 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ -From 05e281acf84cbc457d634acdb994d0edfae4e894 Mon Sep 17 00:00:00 2001 +From 66ac13f31737cf19d260a5ef10f150baf5660ae4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 5/6] Redis deps now build but do not link +Subject: [PATCH 5/7] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- @@ -46,7 +46,7 @@ index 9ec69d433..16a232444 100644 # This library is for internal hiredis use, because hiredis assumes a diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index b69fddf57..2c863b869 100644 +index f9963125e..57b98ce8c 100644 --- a/bazel/ray_deps_setup.bzl +++ b/bazel/ray_deps_setup.bzl @@ -83,6 +83,7 @@ def ray_deps_setup(): diff --git a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch index a68f9210e56da..c715bec59787f 100644 --- a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch +++ b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch @@ -1,7 +1,7 @@ -From 95ee23cf49bdcc689168e623d29b02d86e2212c8 Mon Sep 17 00:00:00 2001 +From 32ae8413188430b7031436738ac69f857ac8197b Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 01:13:51 +0300 -Subject: [PATCH 6/6] Fix jemalloc defrag usage +Subject: [PATCH 6/7] Fix jemalloc defrag usage Signed-off-by: Vasily Litvinov --- @@ -11,7 +11,7 @@ Signed-off-by: Vasily Litvinov create mode 100644 thirdparty/patches/redis-jemalloc-defrag.patch diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index 2c863b869..81d071dee 100644 +index 57b98ce8c..35f462a6a 100644 --- a/bazel/ray_deps_setup.bzl +++ b/bazel/ray_deps_setup.bzl @@ -84,6 +84,7 @@ def ray_deps_setup(): diff --git a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch index ab0090fb9ee4b..0d7ddba328a7f 100644 --- a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ -From 2597dfdfec9bbc70f317df9eb489df803c57e63a Mon Sep 17 00:00:00 2001 +From 49efc2a9815d1e9b5f3f85ee4991ed9aebf737e4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH] Disable making non-core entry scripts +Subject: [PATCH 7/7] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- @@ -9,10 +9,10 @@ Signed-off-by: Vasily Litvinov 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index e22f17024..2024ee7fd 100644 +index 8c4546fe0..a2252bec9 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -470,7 +470,7 @@ setuptools.setup( +@@ -461,7 +461,7 @@ setuptools.setup( entry_points={ "console_scripts": [ "ray=ray.scripts.scripts:main", From b83b9687fb041893e8934f6a0514215888b508b0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:11:56 +0300 Subject: [PATCH 42/77] Ignore warnings in one file Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 1 + ...om-setup-requirements-installed-by-c.patch | 2 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...ild-for-non-default-compiler-drivers.patch | 2 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...Redis-deps-now-build-but-do-not-link.patch | 8 +++--- .../0006-Fix-jemalloc-defrag-usage.patch | 4 +-- ...isable-making-non-core-entry-scripts.patch | 4 +-- .../0008-Ignore-warnings-for-one-file.patch | 26 +++++++++++++++++++ 9 files changed, 39 insertions(+), 12 deletions(-) create mode 100644 recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 28d68f91ac34b..0006933613904 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -15,6 +15,7 @@ source: - patches/0005-Redis-deps-now-build-but-do-not-link.patch - patches/0006-Fix-jemalloc-defrag-usage.patch - patches/0007-Disable-making-non-core-entry-scripts.patch + - patches/0008-Ignore-warnings-for-one-file.patch build: number: 0 diff --git a/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch index 31c9d4abdf654..0c05d0f66c4d6 100644 --- a/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From aba6c015b761ab171a7eb520bae2ee58d03485d6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 1/7] Remove cython from setup requirements - installed by +Subject: [PATCH 1/8] Remove cython from setup requirements - installed by conda recipe Signed-off-by: Vasily Litvinov diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 175c82199ddfd..69f4951297ec5 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From 244e5d09b01e5fa17784743337310fd951486582 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 2/7] Do not force pickle5 in sys.path +Subject: [PATCH 2/8] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index afa9ca7c23a6a..f8ebe975a8f26 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 2c3e3736ea5a999d94481676e805396404582c83 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 3/7] Fix redis build for non-default compiler drivers +Subject: [PATCH 3/8] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 452ab793a490c..aa78b42253fea 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 09ff985310c57509463cc00c1aa39123c0c81fa1 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 4/7] Fix plasma linking for ancient glibc +Subject: [PATCH 4/8] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index 97b52e088a456..356e055991c81 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ -From 66ac13f31737cf19d260a5ef10f150baf5660ae4 Mon Sep 17 00:00:00 2001 +From 96b4a7a0e09015d5dd0f82dfb534e18659d1a1fc Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 5/7] Redis deps now build but do not link +Subject: [PATCH 5/8] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- @@ -12,7 +12,7 @@ Signed-off-by: Vasily Litvinov create mode 100644 thirdparty/patches/redis-deps-ar.patch diff --git a/bazel/BUILD.redis b/bazel/BUILD.redis -index 9ec69d433..16a232444 100644 +index 9ec69d433..2c43bad44 100644 --- a/bazel/BUILD.redis +++ b/bazel/BUILD.redis @@ -15,12 +15,15 @@ genrule( @@ -28,7 +28,7 @@ index 9ec69d433..16a232444 100644 chmod +x "$${tmpdir}"/deps/jemalloc/configure parallel="$$(getconf _NPROCESSORS_ONLN || echo 1)" - make -s -C "$${tmpdir}" -j"$${parallel}" V=0 CFLAGS="$${CFLAGS-} -DLUA_USE_MKSTEMP -Wno-pragmas -Wno-empty-body" -+ make -C "$${tmpdir}" -j"$${parallel}" V=1 CFLAGS="$${CFLAGS-} -DLUA_USE_MKSTEMP -Wno-pragmas -Wno-empty-body" AR="$${AR}" RANLIB="$${RANLIB}" ++ make -s -C "$${tmpdir}" -j"$${parallel}" V=0 CFLAGS="$${CFLAGS-} -DLUA_USE_MKSTEMP -Wno-pragmas -Wno-empty-body" AR="$${AR}" RANLIB="$${RANLIB}" mv "$${tmpdir}"/src/redis-server $(location redis-server) chmod +x $(location redis-server) mv "$${tmpdir}"/src/redis-cli $(location redis-cli) diff --git a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch index c715bec59787f..547d5ad6f41c6 100644 --- a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch +++ b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch @@ -1,7 +1,7 @@ -From 32ae8413188430b7031436738ac69f857ac8197b Mon Sep 17 00:00:00 2001 +From 0c65690e2ee6df749913d7a4c8aff1ba011367e6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 01:13:51 +0300 -Subject: [PATCH 6/7] Fix jemalloc defrag usage +Subject: [PATCH 6/8] Fix jemalloc defrag usage Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch index 0d7ddba328a7f..0f440c0ed62e3 100644 --- a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ -From 49efc2a9815d1e9b5f3f85ee4991ed9aebf737e4 Mon Sep 17 00:00:00 2001 +From f6f2734a026deaa0990d64413bb0f5a5edb86d09 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 7/7] Disable making non-core entry scripts +Subject: [PATCH 7/8] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch new file mode 100644 index 0000000000000..dcf32267f100d --- /dev/null +++ b/recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch @@ -0,0 +1,26 @@ +From af440b6fa9eaf8c2f8d0be8737ff6d602d643e78 Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Wed, 11 Nov 2020 01:08:16 +0300 +Subject: [PATCH 8/8] Ignore warnings for one file + +Signed-off-by: Vasily Litvinov +--- + .bazelrc | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/.bazelrc b/.bazelrc +index 3684885a2..a9bfa6683 100644 +--- a/.bazelrc ++++ b/.bazelrc +@@ -33,6 +33,8 @@ build:clang-cl --per_file_copt="-\\.(asm|S)$@-Werror" + build:msvc --per_file_copt="-\\.(asm|S)$@-WX" + # Ignore warnings for protobuf generated files and external projects. + build --per_file_copt="\\.pb\\.cc$@-w" ++# Ignore one specific warning ++build --per_file_copt="event\\.cc$@-w" + build --per_file_copt="-\\.(asm|S)$,external/.*@-w" + # Ignore minor warnings for host tools, which we generally can't control + build:clang-cl --host_copt="-Wno-inconsistent-missing-override" +-- +2.11.0 + From aa4216e35560d51df6789b16bc96840c03e63431 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 16 Nov 2020 11:28:53 +0300 Subject: [PATCH 43/77] Disable missing deps for now Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 0006933613904..2aab21b58faae 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -42,7 +42,7 @@ outputs: - {{ pin_subpackage('ray-core', exact=True) }} - {{ pin_subpackage('ray-debug', exact=True) }} - {{ pin_subpackage('ray-dashboard', exact=True) }} - - {{ pin_subpackage('ray-rllib', exact=True) }} + #- {{ pin_subpackage('ray-rllib', exact=True) }} #FIXME: missing dep, see below - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} - {{ pin_subpackage('ray-autoscaler', exact=True) }} @@ -88,7 +88,7 @@ outputs: - aioredis - click >=7.0 - colorama - - colorful + #- colorful #FIXME: missing dep - filelock - googlesearch - gpustat @@ -142,6 +142,7 @@ outputs: - name: ray-rllib build: + skip: True # missing dm-tree dep entry_points: - rllib = ray.rllib.scripts:cli requirements: From af5c5bbd21f945e857863e83d3de5a9bc457f709 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 23:26:47 +0300 Subject: [PATCH 44/77] Revert je_defrag patch, change installation to "setup.py install" Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 8 +-- ...sable-making-non-core-entry-scripts.patch} | 4 +- .../0006-Fix-jemalloc-defrag-usage.patch | 55 ------------------- ...> 0007-Ignore-warnings-for-one-file.patch} | 4 +- ...08-Contain-bazel-root-dir-in-SRC_DIR.patch | 35 ++++++++++++ 5 files changed, 43 insertions(+), 63 deletions(-) rename recipes/ray-packages/patches/{0007-Disable-making-non-core-entry-scripts.patch => 0006-Disable-making-non-core-entry-scripts.patch} (85%) delete mode 100644 recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch rename recipes/ray-packages/patches/{0008-Ignore-warnings-for-one-file.patch => 0007-Ignore-warnings-for-one-file.patch} (87%) create mode 100644 recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 2aab21b58faae..8cafb7c6e8960 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -13,9 +13,9 @@ source: - patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch - patches/0004-Fix-plasma-linking-for-ancient-glibc.patch - patches/0005-Redis-deps-now-build-but-do-not-link.patch - - patches/0006-Fix-jemalloc-defrag-usage.patch - - patches/0007-Disable-making-non-core-entry-scripts.patch - - patches/0008-Ignore-warnings-for-one-file.patch + - patches/0006-Disable-making-non-core-entry-scripts.patch + - patches/0007-Ignore-warnings-for-one-file.patch + - patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch build: number: 0 @@ -54,7 +54,7 @@ outputs: - name: ray-core build: # use build-script that comes with ray - script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py bdist_wheel && "${PYTHON}" -m pip install dist/ray-{{ version }}-*.whl --no-deps + script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py install requirements: build: - {{ compiler('c') }} diff --git a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch similarity index 85% rename from recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch rename to recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 0f440c0ed62e3..830f96bc91c32 100644 --- a/recipes/ray-packages/patches/0007-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ -From f6f2734a026deaa0990d64413bb0f5a5edb86d09 Mon Sep 17 00:00:00 2001 +From a11269015c3336a21d13d91154dd9b59269554bb Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 7/8] Disable making non-core entry scripts +Subject: [PATCH 6/8] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch b/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch deleted file mode 100644 index 547d5ad6f41c6..0000000000000 --- a/recipes/ray-packages/patches/0006-Fix-jemalloc-defrag-usage.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 0c65690e2ee6df749913d7a4c8aff1ba011367e6 Mon Sep 17 00:00:00 2001 -From: Vasily Litvinov -Date: Fri, 6 Nov 2020 01:13:51 +0300 -Subject: [PATCH 6/8] Fix jemalloc defrag usage - -Signed-off-by: Vasily Litvinov ---- - bazel/ray_deps_setup.bzl | 1 + - thirdparty/patches/redis-jemalloc-defrag.patch | 22 ++++++++++++++++++++++ - 2 files changed, 23 insertions(+) - create mode 100644 thirdparty/patches/redis-jemalloc-defrag.patch - -diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index 57b98ce8c..35f462a6a 100644 ---- a/bazel/ray_deps_setup.bzl -+++ b/bazel/ray_deps_setup.bzl -@@ -84,6 +84,7 @@ def ray_deps_setup(): - patches = [ - "//thirdparty/patches:redis-quiet.patch", - "//thirdparty/patches:redis-deps-ar.patch", -+ "//thirdparty/patches:redis-jemalloc-defrag.patch", - ], - ) - -diff --git a/thirdparty/patches/redis-jemalloc-defrag.patch b/thirdparty/patches/redis-jemalloc-defrag.patch -new file mode 100644 -index 000000000..c6d6d2996 ---- /dev/null -+++ b/thirdparty/patches/redis-jemalloc-defrag.patch -@@ -0,0 +1,22 @@ -+diff --git src/defrag.c src/defrag.c -+index ecf0255dc..b6f4ddfcc 100644 -+--- src/defrag.c -++++ src/defrag.c -+@@ -43,7 +43,7 @@ -+ -+ /* this method was added to jemalloc in order to help us understand which -+ * pointers are worthwhile moving and which aren't */ -+-int je_get_defrag_hint(void* ptr, int *bin_util, int *run_util); -++int get_defrag_hint(void* ptr, int *bin_util, int *run_util); -+ -+ /* forward declarations*/ -+ void defragDictBucketCallback(void *privdata, dictEntry **bucketref); -+@@ -58,7 +58,7 @@ void* activeDefragAlloc(void *ptr) { -+ int bin_util, run_util; -+ size_t size; -+ void *newptr; -+- if(!je_get_defrag_hint(ptr, &bin_util, &run_util)) { -++ if(!get_defrag_hint(ptr, &bin_util, &run_util)) { -+ server.stat_active_defrag_misses++; -+ return NULL; -+ } --- -2.11.0 - diff --git a/recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch similarity index 87% rename from recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch rename to recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index dcf32267f100d..0bdb425bd7b0d 100644 --- a/recipes/ray-packages/patches/0008-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ -From af440b6fa9eaf8c2f8d0be8737ff6d602d643e78 Mon Sep 17 00:00:00 2001 +From 5d9d294d49cc7dd4845445a16354846cf252ab3f Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 8/8] Ignore warnings for one file +Subject: [PATCH 7/8] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch new file mode 100644 index 0000000000000..cff67cd99d2c1 --- /dev/null +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch @@ -0,0 +1,35 @@ +From 6303c069473722e70341b824783a59fd724b5975 Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Wed, 18 Nov 2020 18:47:40 +0300 +Subject: [PATCH 8/8] Contain bazel root dir in $SRC_DIR + +Signed-off-by: Vasily Litvinov +--- + python/setup.py | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/python/setup.py b/python/setup.py +index a2252bec9..85bb21e54 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -294,12 +294,16 @@ def build(build_python, build_java): + logger.warning("Expected Bazel version {} but found {}".format( + ".".join(map(str, SUPPORTED_BAZEL)), bazel_version_str)) + ++ root_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), 'bazel-root') ++ if not os.path.exists(root_dir): ++ os.makedirs(root_dir) ++ + bazel_targets = [] + bazel_targets += ["//:ray_pkg"] if build_python else [] + bazel_targets += ["//java:ray_java_pkg"] if build_java else [] + return bazel_invoke( + subprocess.check_call, +- ["build", "--verbose_failures", "--"] + bazel_targets, ++ ["--output_user_root=" + root_dir, "build", "--verbose_failures", "--"] + bazel_targets, + env=bazel_env) + + +-- +2.11.0 + From a867cef88e9f4dfab653c8d0bc332c02631a806d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 23:27:38 +0300 Subject: [PATCH 45/77] Enable ray-rllib as dm-tree is now present Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 8cafb7c6e8960..9ca2f53e6cda8 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -42,7 +42,7 @@ outputs: - {{ pin_subpackage('ray-core', exact=True) }} - {{ pin_subpackage('ray-debug', exact=True) }} - {{ pin_subpackage('ray-dashboard', exact=True) }} - #- {{ pin_subpackage('ray-rllib', exact=True) }} #FIXME: missing dep, see below + - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} - {{ pin_subpackage('ray-autoscaler', exact=True) }} @@ -142,7 +142,6 @@ outputs: - name: ray-rllib build: - skip: True # missing dm-tree dep entry_points: - rllib = ray.rllib.scripts:cli requirements: From 76d554d4825b6367075d6b5f1f22df0093a0ea74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 23:46:38 +0300 Subject: [PATCH 46/77] Remove install reqs so "python setup.py install" works Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 4 ++-- ...and-install-requirements-installed-by-c.patch} | 15 ++++++++------- .../0002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...s-build-for-non-default-compiler-drivers.patch | 2 +- ...004-Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...005-Redis-deps-now-build-but-do-not-link.patch | 2 +- ...06-Disable-making-non-core-entry-scripts.patch | 6 +++--- .../0007-Ignore-warnings-for-one-file.patch | 2 +- .../0008-Contain-bazel-root-dir-in-SRC_DIR.patch | 4 ++-- 9 files changed, 20 insertions(+), 19 deletions(-) rename recipes/ray-packages/patches/{0001-Remove-cython-from-setup-requirements-installed-by-c.patch => 0001-Remove-setup-and-install-requirements-installed-by-c.patch} (60%) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 9ca2f53e6cda8..152bf37f40d5b 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -8,7 +8,7 @@ source: url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz sha256: e08ff04dc8bca99527dbc821446f8660cfe6cbc8c35db61410958b9aa9acee56 patches: - - patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch + - patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch - patches/0002-Do-not-force-pickle5-in-sys.path.patch - patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch - patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -88,7 +88,7 @@ outputs: - aioredis - click >=7.0 - colorama - #- colorful #FIXME: missing dep + - colorful - filelock - googlesearch - gpustat diff --git a/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch similarity index 60% rename from recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch rename to recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index 0c05d0f66c4d6..e37eb16d40e38 100644 --- a/recipes/ray-packages/patches/0001-Remove-cython-from-setup-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,22 +1,23 @@ -From aba6c015b761ab171a7eb520bae2ee58d03485d6 Mon Sep 17 00:00:00 2001 +From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 1/8] Remove cython from setup requirements - installed by +Subject: [PATCH 1/8] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov --- - python/setup.py | 1 - - 1 file changed, 1 deletion(-) + python/setup.py | 2 -- + 1 file changed, 2 deletions(-) diff --git a/python/setup.py b/python/setup.py -index d64d8402e..8c4546fe0 100644 +index d64d8402e..d6b034594 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -457,7 +457,6 @@ setuptools.setup( +@@ -456,8 +456,6 @@ setuptools.setup( + cmdclass={"build_ext": build_ext}, # The BinaryDistribution argument triggers build_ext. distclass=BinaryDistribution, - install_requires=install_requires, +- install_requires=install_requires, - setup_requires=["cython >= 0.29.14", "wheel"], extras_require=extras, entry_points={ diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 69f4951297ec5..449e8d7abb408 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,4 +1,4 @@ -From 244e5d09b01e5fa17784743337310fd951486582 Mon Sep 17 00:00:00 2001 +From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 Subject: [PATCH 2/8] Do not force pickle5 in sys.path diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index f8ebe975a8f26..37d0ab95267ce 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,4 +1,4 @@ -From 2c3e3736ea5a999d94481676e805396404582c83 Mon Sep 17 00:00:00 2001 +From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 Subject: [PATCH 3/8] Fix redis build for non-default compiler drivers diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index aa78b42253fea..44f4bd0d5b390 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,4 +1,4 @@ -From 09ff985310c57509463cc00c1aa39123c0c81fa1 Mon Sep 17 00:00:00 2001 +From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 Subject: [PATCH 4/8] Fix plasma linking for ancient glibc diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index 356e055991c81..5085ca3c841fa 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,4 +1,4 @@ -From 96b4a7a0e09015d5dd0f82dfb534e18659d1a1fc Mon Sep 17 00:00:00 2001 +From b24f4cd9aa332e0be1d60d028aa93ff170d9deb4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 Subject: [PATCH 5/8] Redis deps now build but do not link diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 830f96bc91c32..fcac158e596f8 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,4 +1,4 @@ -From a11269015c3336a21d13d91154dd9b59269554bb Mon Sep 17 00:00:00 2001 +From 408fe4210084e3d169bebb126478a9424b050cfb Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 Subject: [PATCH 6/8] Disable making non-core entry scripts @@ -9,10 +9,10 @@ Signed-off-by: Vasily Litvinov 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 8c4546fe0..a2252bec9 100644 +index d6b034594..2cf203f20 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -461,7 +461,7 @@ setuptools.setup( +@@ -460,7 +460,7 @@ setuptools.setup( entry_points={ "console_scripts": [ "ray=ray.scripts.scripts:main", diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index 0bdb425bd7b0d..2d724e0bcb916 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,4 +1,4 @@ -From 5d9d294d49cc7dd4845445a16354846cf252ab3f Mon Sep 17 00:00:00 2001 +From 9945051d2fb317b8bc355f14316923f7bd833c40 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 Subject: [PATCH 7/8] Ignore warnings for one file diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch index cff67cd99d2c1..bfd81e0d92d74 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch @@ -1,4 +1,4 @@ -From 6303c069473722e70341b824783a59fd724b5975 Mon Sep 17 00:00:00 2001 +From 33d9e89f8c7a813e55593a145e8956001b4c9db8 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 Subject: [PATCH 8/8] Contain bazel root dir in $SRC_DIR @@ -9,7 +9,7 @@ Signed-off-by: Vasily Litvinov 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index a2252bec9..85bb21e54 100644 +index 2cf203f20..ca9235f8c 100644 --- a/python/setup.py +++ b/python/setup.py @@ -294,12 +294,16 @@ def build(build_python, build_java): From 0fcf3e073f0f0041d5a474cb51ffcbb349a70556 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 20 Nov 2020 02:45:45 +0300 Subject: [PATCH 47/77] Move to "python setup.py install" in separte script Signed-off-by: Vasily Litvinov --- recipes/ray-packages/build-core.sh | 6 +++++ recipes/ray-packages/meta.yaml | 27 +++++++++++++------ ...Redis-deps-now-build-but-do-not-link.patch | 13 ++++----- ...isable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...08-Contain-bazel-root-dir-in-SRC_DIR.patch | 2 +- 6 files changed, 35 insertions(+), 17 deletions(-) create mode 100644 recipes/ray-packages/build-core.sh diff --git a/recipes/ray-packages/build-core.sh b/recipes/ray-packages/build-core.sh new file mode 100644 index 0000000000000..f4c867e46e94e --- /dev/null +++ b/recipes/ray-packages/build-core.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -xe + +cd python/ +export SKIP_THIRDPARTY_INSTALL=1 +"${PYTHON}" setup.py install diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 152bf37f40d5b..f3c06aeced40e 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -28,13 +28,15 @@ requirements: build: - {{ compiler('c') }} - {{ compiler('cxx') }} - host: - - python - run: - - python + - cython >=0.29 + - bazel <=3.4.1 + - curl + - make outputs: - name: ray-all + build: + skip: True requirements: host: run: @@ -52,9 +54,10 @@ outputs: - ray - name: ray-core - build: - # use build-script that comes with ray - script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py install + #build: + # # use build-script that comes with ray + # script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py install + script: build-core.sh # [not win] requirements: build: - {{ compiler('c') }} @@ -63,7 +66,6 @@ outputs: - bazel <=3.4.1 - curl - make - - python host: # TODO: check which of these can move to run-reqs - click @@ -117,6 +119,8 @@ outputs: - ray.worker - name: ray-debug + build: + skip: True requirements: host: - python @@ -130,6 +134,8 @@ outputs: - ray - name: ray-dashboard + build: + skip: True requirements: host: - python @@ -142,6 +148,7 @@ outputs: - name: ray-rllib build: + skip: True entry_points: - rllib = ray.rllib.scripts:cli requirements: @@ -166,6 +173,8 @@ outputs: - ray.rllib - name: ray-serve + build: + skip: True requirements: host: - python @@ -183,6 +192,7 @@ outputs: - name: ray-tune build: + skip: True entry_points: - tune = ray.tune.scripts:cli requirements: @@ -201,6 +211,7 @@ outputs: - name: ray-autoscaler build: + skip: True skip: True # [not linux] requirements: host: diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index 5085ca3c841fa..b09c8ed2d17c4 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,26 +1,27 @@ -From b24f4cd9aa332e0be1d60d028aa93ff170d9deb4 Mon Sep 17 00:00:00 2001 +From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 Subject: [PATCH 5/8] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- - bazel/BUILD.redis | 11 ++++- + bazel/BUILD.redis | 12 +++++- bazel/ray_deps_setup.bzl | 1 + thirdparty/patches/redis-deps-ar.patch | 74 ++++++++++++++++++++++++++++++++++ - 3 files changed, 84 insertions(+), 2 deletions(-) + 3 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 thirdparty/patches/redis-deps-ar.patch diff --git a/bazel/BUILD.redis b/bazel/BUILD.redis -index 9ec69d433..2c43bad44 100644 +index 9ec69d433..06d79b72a 100644 --- a/bazel/BUILD.redis +++ b/bazel/BUILD.redis -@@ -15,12 +15,15 @@ genrule( +@@ -15,12 +15,16 @@ genrule( ], cmd = """ export CC=$(CC) + export CFLAGS=$(CC_FLAGS) + export AR=$${CC/gnu-cc/gnu-ar} ++ export NM=$${CC/gnu-cc/gnu-nm} + export RANLIB=$${CC/gnu-cc/gnu-ranlib} tmpdir="redis.tmp" p=$(location Makefile) @@ -32,7 +33,7 @@ index 9ec69d433..2c43bad44 100644 mv "$${tmpdir}"/src/redis-server $(location redis-server) chmod +x $(location redis-server) mv "$${tmpdir}"/src/redis-cli $(location redis-cli) -@@ -28,7 +31,11 @@ genrule( +@@ -28,7 +32,11 @@ genrule( rm -r -f -- "$${tmpdir}" """, visibility = ["//visibility:public"], diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index fcac158e596f8..e0b48b7416b76 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,4 +1,4 @@ -From 408fe4210084e3d169bebb126478a9424b050cfb Mon Sep 17 00:00:00 2001 +From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 Subject: [PATCH 6/8] Disable making non-core entry scripts diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index 2d724e0bcb916..faf1d5ba66924 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,4 +1,4 @@ -From 9945051d2fb317b8bc355f14316923f7bd833c40 Mon Sep 17 00:00:00 2001 +From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 Subject: [PATCH 7/8] Ignore warnings for one file diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch index bfd81e0d92d74..3591473ff890b 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch @@ -1,4 +1,4 @@ -From 33d9e89f8c7a813e55593a145e8956001b4c9db8 Mon Sep 17 00:00:00 2001 +From 8019704974f40ac5f79ec1760882d3e7c32b0e68 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 Subject: [PATCH 8/8] Contain bazel root dir in $SRC_DIR From 40255dbe5dd10358f0fb9222d2a9a4d452d93201 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 20 Nov 2020 12:51:07 +0300 Subject: [PATCH 48/77] Linux build should finally be fixed Signed-off-by: Vasily Litvinov --- recipes/ray-packages/build-core.sh | 7 +++++++ recipes/ray-packages/meta.yaml | 11 ----------- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/recipes/ray-packages/build-core.sh b/recipes/ray-packages/build-core.sh index f4c867e46e94e..02a259b60c814 100644 --- a/recipes/ray-packages/build-core.sh +++ b/recipes/ray-packages/build-core.sh @@ -3,4 +3,11 @@ set -xe cd python/ export SKIP_THIRDPARTY_INSTALL=1 +"${PYTHON}" setup.py build +# bazel by default makes everything read-only, +# which leads to patchelf failing to fix rpath in binaries. +# find all ray binaries and make them writable +grep -lR ELF build/ | xargs chmod +w + +# now install the thing so conda could pick it up "${PYTHON}" setup.py install diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index f3c06aeced40e..4b12ec954ff6d 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -35,8 +35,6 @@ requirements: outputs: - name: ray-all - build: - skip: True requirements: host: run: @@ -119,8 +117,6 @@ outputs: - ray.worker - name: ray-debug - build: - skip: True requirements: host: - python @@ -134,8 +130,6 @@ outputs: - ray - name: ray-dashboard - build: - skip: True requirements: host: - python @@ -148,7 +142,6 @@ outputs: - name: ray-rllib build: - skip: True entry_points: - rllib = ray.rllib.scripts:cli requirements: @@ -173,8 +166,6 @@ outputs: - ray.rllib - name: ray-serve - build: - skip: True requirements: host: - python @@ -192,7 +183,6 @@ outputs: - name: ray-tune build: - skip: True entry_points: - tune = ray.tune.scripts:cli requirements: @@ -211,7 +201,6 @@ outputs: - name: ray-autoscaler build: - skip: True skip: True # [not linux] requirements: host: From e0a75e3e2bf9db377c235c0736fbe68e9d5fd03d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 20 Nov 2020 12:58:36 +0300 Subject: [PATCH 49/77] Start enabling Windows build Signed-off-by: Vasily Litvinov --- recipes/ray-packages/build-core.bat | 10 ++++++++++ recipes/ray-packages/meta.yaml | 17 +++++++++++------ 2 files changed, 21 insertions(+), 6 deletions(-) create mode 100644 recipes/ray-packages/build-core.bat diff --git a/recipes/ray-packages/build-core.bat b/recipes/ray-packages/build-core.bat new file mode 100644 index 0000000000000..541091849dd1a --- /dev/null +++ b/recipes/ray-packages/build-core.bat @@ -0,0 +1,10 @@ +cd python +set SKIP_THIRDPARTY_INSTALL=1 +"%PYTHON%" setup.py install +rem remember the return code +set RETCODE=%ERRORLEVEL% +rem Now shut down Bazel server, otherwise Windows would not allow moving a directory with it +bazel "--output_user_root=%SRC_DIR%/bazel-root" shutdown +rem Ignore "bazel shutdown" errors +exit /b %RETCODE% + \ No newline at end of file diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 4b12ec954ff6d..fd146c562a882 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -20,8 +20,6 @@ source: build: number: 0 skip: True # [py<36] - # wait (at least) for bazel on windows; conda-forge/bazel-feedstock/issues/36 - skip: True # [not linux] # Need these up here for conda-smithy to handle them properly. requirements: @@ -32,6 +30,7 @@ requirements: - bazel <=3.4.1 - curl - make + - m2-patch # [win] outputs: - name: ray-all @@ -52,10 +51,8 @@ outputs: - ray - name: ray-core - #build: - # # use build-script that comes with ray - # script: cd python/ && SKIP_THIRDPARTY_INSTALL=1 SYSTEMROOT="${CONDA_BUILD_SYSROOT}" "${PYTHON}" setup.py install script: build-core.sh # [not win] + script: build-core.bat # [win] requirements: build: - {{ compiler('c') }} @@ -117,6 +114,8 @@ outputs: - ray.worker - name: ray-debug + build: + skip: True # [win] requirements: host: - python @@ -130,6 +129,8 @@ outputs: - ray - name: ray-dashboard + build: + skip: True # [win] requirements: host: - python @@ -142,6 +143,7 @@ outputs: - name: ray-rllib build: + skip: True # [win] entry_points: - rllib = ray.rllib.scripts:cli requirements: @@ -166,6 +168,8 @@ outputs: - ray.rllib - name: ray-serve + build: + skip: True # [win] requirements: host: - python @@ -183,6 +187,7 @@ outputs: - name: ray-tune build: + skip: True # [win] entry_points: - tune = ray.tune.scripts:cli requirements: @@ -201,7 +206,7 @@ outputs: - name: ray-autoscaler build: - skip: True # [not linux] + skip: True # [win] requirements: host: - python From ec342bad7cb6d3ecf79ee68ee8d4e0058b555a53 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 20 Nov 2020 17:14:44 +0300 Subject: [PATCH 50/77] Continue enabling Windows build Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 5 +- ...-install-requirements-installed-by-c.patch | 4 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 4 +- ...ild-for-non-default-compiler-drivers.patch | 4 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 4 +- ...Redis-deps-now-build-but-do-not-link.patch | 8 +-- ...isable-making-non-core-entry-scripts.patch | 4 +- .../0007-Ignore-warnings-for-one-file.patch | 4 +- ...08-Contain-bazel-root-dir-in-SRC_DIR.patch | 22 ++++--- ...crash-if-BAZEL_SH-not-set-on-Windows.patch | 26 ++++++++ ...-to-junctions-on-Windows-before-buil.patch | 62 +++++++++++++++++++ 11 files changed, 120 insertions(+), 27 deletions(-) create mode 100644 recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch create mode 100644 recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index fd146c562a882..038d87856545f 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -16,6 +16,8 @@ source: - patches/0006-Disable-making-non-core-entry-scripts.patch - patches/0007-Ignore-warnings-for-one-file.patch - patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch + - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch + - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch build: number: 0 @@ -27,7 +29,8 @@ requirements: - {{ compiler('c') }} - {{ compiler('cxx') }} - cython >=0.29 - - bazel <=3.4.1 + - bazel <=3.4.1 # [not win] + - bazel # [win] - curl - make - m2-patch # [win] diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index e37eb16d40e38..708c4198334a8 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 1/8] Remove setup and install requirements - installed by +Subject: [PATCH 01/10] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov @@ -23,5 +23,5 @@ index d64d8402e..d6b034594 100644 entry_points={ "console_scripts": [ -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 449e8d7abb408..17cc799a33e94 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 2/8] Do not force pickle5 in sys.path +Subject: [PATCH 02/10] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- @@ -26,5 +26,5 @@ index 9089059c5..24b661a84 100644 thirdparty_files = os.path.join( os.path.abspath(os.path.dirname(__file__)), "thirdparty_files") -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index 37d0ab95267ce..29ca89c9af17a 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 3/8] Fix redis build for non-default compiler drivers +Subject: [PATCH 03/10] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- @@ -29,5 +29,5 @@ index f428f7b36..9ec69d433 100644 # This library is for internal hiredis use, because hiredis assumes a -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 44f4bd0d5b390..483a54b617d48 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 4/8] Fix plasma linking for ancient glibc +Subject: [PATCH 04/10] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- @@ -29,5 +29,5 @@ index 883a31c3b..7fc4fc7e6 100644 deps = [ ":plasma_store_server_lib", -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index b09c8ed2d17c4..ddb5e5b5763df 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,13 +1,13 @@ From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 5/8] Redis deps now build but do not link +Subject: [PATCH 05/10] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- - bazel/BUILD.redis | 12 +++++- + bazel/BUILD.redis | 12 ++++- bazel/ray_deps_setup.bzl | 1 + - thirdparty/patches/redis-deps-ar.patch | 74 ++++++++++++++++++++++++++++++++++ + thirdparty/patches/redis-deps-ar.patch | 74 ++++++++++++++++++++++++++ 3 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 thirdparty/patches/redis-deps-ar.patch @@ -139,5 +139,5 @@ index 000000000..15acb3165 + .PHONY: persist-settings + -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index e0b48b7416b76..bd704c7ecaf6f 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 6/8] Disable making non-core entry scripts +Subject: [PATCH 06/10] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- @@ -22,5 +22,5 @@ index d6b034594..2cf203f20 100644 }, include_package_data=True, -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index faf1d5ba66924..a456014ea9260 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 7/8] Ignore warnings for one file +Subject: [PATCH 07/10] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- @@ -22,5 +22,5 @@ index 3684885a2..a9bfa6683 100644 # Ignore minor warnings for host tools, which we generally can't control build:clang-cl --host_copt="-Wno-inconsistent-missing-override" -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch index 3591473ff890b..c675efedc39cd 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch @@ -1,24 +1,26 @@ -From 8019704974f40ac5f79ec1760882d3e7c32b0e68 Mon Sep 17 00:00:00 2001 +From 669a5b8e9d40ab9e18e775041214547fcce81611 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 8/8] Contain bazel root dir in $SRC_DIR +Subject: [PATCH 08/10] Contain bazel root dir in $SRC_DIR Signed-off-by: Vasily Litvinov --- - python/setup.py | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) + python/setup.py | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 2cf203f20..ca9235f8c 100644 +index 2cf203f20..280ad9e01 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -294,12 +294,16 @@ def build(build_python, build_java): +@@ -294,12 +294,18 @@ def build(build_python, build_java): logger.warning("Expected Bazel version {} but found {}".format( ".".join(map(str, SUPPORTED_BAZEL)), bazel_version_str)) + root_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), 'bazel-root') -+ if not os.path.exists(root_dir): -+ os.makedirs(root_dir) ++ out_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), 'b-o') ++ for d in (root_dir, out_dir): ++ if not os.path.exists(d): ++ os.makedirs(d) + bazel_targets = [] bazel_targets += ["//:ray_pkg"] if build_python else [] @@ -26,10 +28,10 @@ index 2cf203f20..ca9235f8c 100644 return bazel_invoke( subprocess.check_call, - ["build", "--verbose_failures", "--"] + bazel_targets, -+ ["--output_user_root=" + root_dir, "build", "--verbose_failures", "--"] + bazel_targets, ++ ["--output_user_root=" + root_dir, "--output_base=" + out_dir, "build", "--verbose_failures", "--"] + bazel_targets, env=bazel_env) -- -2.11.0 +2.29.2.windows.2 diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch new file mode 100644 index 0000000000000..2e8401eaeee56 --- /dev/null +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -0,0 +1,26 @@ +From ecbd8d8311e379398f43d0f9e09055587dce2c7d Mon Sep 17 00:00:00 2001 +From: Vasilij Litvinov +Date: Fri, 20 Nov 2020 14:17:05 +0300 +Subject: [PATCH 09/10] Do not crash if BAZEL_SH not set on Windows + +Signed-off-by: Vasilij Litvinov +--- + python/setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/python/setup.py b/python/setup.py +index 280ad9e01..1c581e5a4 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -246,7 +246,7 @@ def build(build_python, build_java): + SHELL = bazel_env.get("SHELL") + if SHELL: + bazel_env.setdefault("BAZEL_SH", os.path.normpath(SHELL)) +- BAZEL_SH = bazel_env["BAZEL_SH"] ++ BAZEL_SH = bazel_env.get("BAZEL_SH", "") + SYSTEMROOT = os.getenv("SystemRoot") + wsl_bash = os.path.join(SYSTEMROOT, "System32", "bash.exe") + if (not BAZEL_SH) and SYSTEMROOT and os.path.isfile(wsl_bash): +-- +2.29.2.windows.2 + diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch new file mode 100644 index 0000000000000..aed2661e63f32 --- /dev/null +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -0,0 +1,62 @@ +From e92b65433a9c2649da94a7a475c293ef43e08a1a Mon Sep 17 00:00:00 2001 +From: Vasilij Litvinov +Date: Fri, 20 Nov 2020 15:32:19 +0300 +Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before + building + +Signed-off-by: Vasilij Litvinov +--- + python/setup.py | 30 ++++++++++++++++++++++++++++++ + 1 file changed, 30 insertions(+) + +diff --git a/python/setup.py b/python/setup.py +index 1c581e5a4..bf6faba6b 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -225,6 +225,35 @@ def download_pickle5(pickle5_dir): + finally: + wzf.close() + ++def replace_symlinks_with_junctions(): ++ _LINKS = { ++ r'ray\new_dashboard': '../../dashboard', ++ r'ray\rllib': '../../rllib', ++ r'ray\streaming': '../../streaming/python/', ++ } ++ root_dir = os.path.dirname(__file__) ++ for link, default in _LINKS.items(): ++ path = os.path.join(root_dir, link) ++ try: ++ out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) ++ except subprocess.CalledProcessError: ++ out = b'' ++ if os.path.basename(path) in out.decode('utf8').splitlines(): ++ print('"{}" is already converted to junction point'.format(link)) ++ else: ++ print('Converting "{}" to junction point...'.format(link)) ++ if os.path.isfile(path): ++ with open(path) as inp: ++ target = inp.read() ++ os.unlink(path) ++ elif os.path.isdir(path): ++ target = default ++ os.rmdir(path) ++ else: ++ raise ValueError('Unexpected type of entry: "{}"'.format(path)) ++ target = os.path.abspath(os.path.join(os.path.dirname(path), target)) ++ print('Setting {} -> {}'.format(link, target)) ++ subprocess.check_call('MKLINK /J "{}" "{}"'.format(os.path.basename(link), target), shell=True, cwd=os.path.dirname(path)) + + def build(build_python, build_java): + if tuple(sys.version_info[:2]) not in SUPPORTED_PYTHONS: +@@ -243,6 +272,7 @@ def build(build_python, build_java): + bazel_env = dict(os.environ, PYTHON3_BIN_PATH=sys.executable) + + if is_native_windows_or_msys(): ++ replace_symlinks_with_junctions() + SHELL = bazel_env.get("SHELL") + if SHELL: + bazel_env.setdefault("BAZEL_SH", os.path.normpath(SHELL)) +-- +2.29.2.windows.2 + From 2bb0a58719881059690481404d13ea0729a5b5c4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 20 Nov 2020 17:57:13 +0300 Subject: [PATCH 51/77] Enable subpackages back Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 038d87856545f..ed1aeae769494 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -47,7 +47,7 @@ outputs: - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} - - {{ pin_subpackage('ray-autoscaler', exact=True) }} + - {{ pin_subpackage('ray-autoscaler', exact=True) }} # [not win] test: imports: # dummy test; actual tests below @@ -117,8 +117,6 @@ outputs: - ray.worker - name: ray-debug - build: - skip: True # [win] requirements: host: - python @@ -132,8 +130,6 @@ outputs: - ray - name: ray-dashboard - build: - skip: True # [win] requirements: host: - python @@ -146,7 +142,6 @@ outputs: - name: ray-rllib build: - skip: True # [win] entry_points: - rllib = ray.rllib.scripts:cli requirements: @@ -171,8 +166,6 @@ outputs: - ray.rllib - name: ray-serve - build: - skip: True # [win] requirements: host: - python @@ -190,7 +183,6 @@ outputs: - name: ray-tune build: - skip: True # [win] entry_points: - tune = ray.tune.scripts:cli requirements: From 5b6c756b8f02d2965717a7ebbb2189a3b2275711 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 00:49:50 +0300 Subject: [PATCH 52/77] Skip on MacOS; clean much more aggressive on other platforms Signed-off-by: Vasily Litvinov --- recipes/ray-packages/build-core.bat | 9 ++++++++- recipes/ray-packages/build-core.sh | 7 +++++++ recipes/ray-packages/meta.yaml | 2 ++ ...bazel-root-and-output-dir-right-above-SRC_DI.patch} | 10 +++++----- ...9-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch | 4 ++-- ...-symlinks-to-junctions-on-Windows-before-buil.patch | 4 ++-- 6 files changed, 26 insertions(+), 10 deletions(-) rename recipes/ray-packages/patches/{0008-Contain-bazel-root-dir-in-SRC_DIR.patch => 0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch} (84%) diff --git a/recipes/ray-packages/build-core.bat b/recipes/ray-packages/build-core.bat index 541091849dd1a..4e135eda02daa 100644 --- a/recipes/ray-packages/build-core.bat +++ b/recipes/ray-packages/build-core.bat @@ -3,8 +3,15 @@ set SKIP_THIRDPARTY_INSTALL=1 "%PYTHON%" setup.py install rem remember the return code set RETCODE=%ERRORLEVEL% + +rem Now clean everything up so subsequent builds (for potentially +rem different Python version) do not stumble on some after-effects. +"%PYTHON%" setup.py clean --all + rem Now shut down Bazel server, otherwise Windows would not allow moving a directory with it -bazel "--output_user_root=%SRC_DIR%/bazel-root" shutdown +bazel "--output_user_root=%SRC_DIR%\..\bazel-root" "--output_base=%SRC_DIR%\..\b-o" clean +bazel "--output_user_root=%SRC_DIR%\..\bazel-root" "--output_base=%SRC_DIR%\..\b-o" shutdown +rd /s /q "%SRC_DIR%\..\b-o" rem Ignore "bazel shutdown" errors exit /b %RETCODE% \ No newline at end of file diff --git a/recipes/ray-packages/build-core.sh b/recipes/ray-packages/build-core.sh index 02a259b60c814..cc1fbfaba7699 100644 --- a/recipes/ray-packages/build-core.sh +++ b/recipes/ray-packages/build-core.sh @@ -11,3 +11,10 @@ grep -lR ELF build/ | xargs chmod +w # now install the thing so conda could pick it up "${PYTHON}" setup.py install + +# now clean everything up so subsequent builds (for potentially +# different Python version) do not stumble on some after-effects +"${PYTHON}" setup.py clean --all +bazel "--output_user_root=$SRC_DIR/../bazel-root" "--output_base=$SRC_DIR/../b-o" clean +bazel "--output_user_root=$SRC_DIR/../bazel-root" "--output_base=$SRC_DIR/../b-o" shutdown +rm -rf ../b-o diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index ed1aeae769494..c5d6431871200 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -22,6 +22,8 @@ source: build: number: 0 skip: True # [py<36] + # skip on MacOS as there's some weird compilation issue and I have no MacOS to develop on + skip: True # [osx] # Need these up here for conda-smithy to handle them properly. requirements: diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch similarity index 84% rename from recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch rename to recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index c675efedc39cd..b1adf8b2249f0 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ -From 669a5b8e9d40ab9e18e775041214547fcce81611 Mon Sep 17 00:00:00 2001 +From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/10] Contain bazel root dir in $SRC_DIR +Subject: [PATCH 08/10] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- @@ -9,15 +9,15 @@ Signed-off-by: Vasily Litvinov 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 2cf203f20..280ad9e01 100644 +index 2cf203f20..602c3011b 100644 --- a/python/setup.py +++ b/python/setup.py @@ -294,12 +294,18 @@ def build(build_python, build_java): logger.warning("Expected Bazel version {} but found {}".format( ".".join(map(str, SUPPORTED_BAZEL)), bazel_version_str)) -+ root_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), 'bazel-root') -+ out_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), 'b-o') ++ root_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), '..', 'bazel-root') ++ out_dir = os.path.join(os.path.abspath(os.environ['SRC_DIR']), '..', 'b-o') + for d in (root_dir, out_dir): + if not os.path.exists(d): + os.makedirs(d) diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index 2e8401eaeee56..b67d61725eac5 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,4 +1,4 @@ -From ecbd8d8311e379398f43d0f9e09055587dce2c7d Mon Sep 17 00:00:00 2001 +From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 Subject: [PATCH 09/10] Do not crash if BAZEL_SH not set on Windows @@ -9,7 +9,7 @@ Signed-off-by: Vasilij Litvinov 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 280ad9e01..1c581e5a4 100644 +index 602c3011b..4648bda0b 100644 --- a/python/setup.py +++ b/python/setup.py @@ -246,7 +246,7 @@ def build(build_python, build_java): diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index aed2661e63f32..55a48f74357ba 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,4 +1,4 @@ -From e92b65433a9c2649da94a7a475c293ef43e08a1a Mon Sep 17 00:00:00 2001 +From 0c50de7de4a72586b906a4bafc48bea3e4450e2b Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before @@ -10,7 +10,7 @@ Signed-off-by: Vasilij Litvinov 1 file changed, 30 insertions(+) diff --git a/python/setup.py b/python/setup.py -index 1c581e5a4..bf6faba6b 100644 +index 4648bda0b..98c4aa0ff 100644 --- a/python/setup.py +++ b/python/setup.py @@ -225,6 +225,35 @@ def download_pickle5(pickle5_dir): From 6eac9144157c4e0d71c9bb324b1772f01669874b Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 00:52:19 +0300 Subject: [PATCH 53/77] Fix forge linting Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index c5d6431871200..7b56d77ded49e 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -75,7 +75,7 @@ outputs: - funcsigs - jsonschema - numpy >=1.16 - - pickle5 # [py<38] + - pickle5 # [py<38] - packaging - protobuf >=3.8.0 - pytest @@ -105,7 +105,7 @@ outputs: - redis-py >=3.3.2, <3.5.0 - opencensus - prometheus_client >=0.7.1 - - pickle5 # [py<38] + - pickle5 # [py<38] - funcsigs - setproctitle test: @@ -216,6 +216,9 @@ outputs: - google-api-python-client - google-auth - msrestazure + test: + imports: + - ray.autoscaler about: home: https://github.com/ray-project/ray From 683f0d33a8939fdc6a26aaa3fa70fb6c82d344f6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 01:15:07 +0300 Subject: [PATCH 54/77] Use renamed patch Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 7b56d77ded49e..6ba5a5a61150a 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -15,7 +15,7 @@ source: - patches/0005-Redis-deps-now-build-but-do-not-link.patch - patches/0006-Disable-making-non-core-entry-scripts.patch - patches/0007-Ignore-warnings-for-one-file.patch - - patches/0008-Contain-bazel-root-dir-in-SRC_DIR.patch + - patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch From 8ace4fe36173d96b14658d02d70b4ae69c86b3b3 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 01:55:17 +0300 Subject: [PATCH 55/77] Convert symlinks to junctions earlier Signed-off-by: Vasily Litvinov --- ...inks-to-junctions-on-Windows-before-buil.patch | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index 55a48f74357ba..ffcea1adc0eae 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,4 +1,4 @@ -From 0c50de7de4a72586b906a4bafc48bea3e4450e2b Mon Sep 17 00:00:00 2001 +From 033b31feb3e543488360baadefc8e294d89b2c24 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before @@ -6,14 +6,14 @@ Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before Signed-off-by: Vasilij Litvinov --- - python/setup.py | 30 ++++++++++++++++++++++++++++++ - 1 file changed, 30 insertions(+) + python/setup.py | 33 +++++++++++++++++++++++++++++++++ + 1 file changed, 33 insertions(+) diff --git a/python/setup.py b/python/setup.py -index 4648bda0b..98c4aa0ff 100644 +index 4648bda0b..a74223881 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -225,6 +225,35 @@ def download_pickle5(pickle5_dir): +@@ -225,6 +225,38 @@ def download_pickle5(pickle5_dir): finally: wzf.close() @@ -46,10 +46,13 @@ index 4648bda0b..98c4aa0ff 100644 + target = os.path.abspath(os.path.join(os.path.dirname(path), target)) + print('Setting {} -> {}'.format(link, target)) + subprocess.check_call('MKLINK /J "{}" "{}"'.format(os.path.basename(link), target), shell=True, cwd=os.path.dirname(path)) ++ ++if is_native_windows_or_msys(): ++ replace_symlinks_with_junctions() def build(build_python, build_java): if tuple(sys.version_info[:2]) not in SUPPORTED_PYTHONS: -@@ -243,6 +272,7 @@ def build(build_python, build_java): +@@ -243,6 +275,7 @@ def build(build_python, build_java): bazel_env = dict(os.environ, PYTHON3_BIN_PATH=sys.executable) if is_native_windows_or_msys(): From 7811029c184ed93e67cf9e4bd85d1912aa1f7716 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 11:47:47 +0300 Subject: [PATCH 56/77] Wipe bazel-root along with bazel-out, do not workaround correct symlinks on Windows Signed-off-by: Vasily Litvinov --- recipes/ray-packages/build-core.bat | 3 +-- recipes/ray-packages/build-core.sh | 2 +- ...nd-install-requirements-installed-by-c.patch | 2 +- .../0002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...build-for-non-default-compiler-drivers.patch | 2 +- ...4-Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...5-Redis-deps-now-build-but-do-not-link.patch | 6 +++--- ...-Disable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...root-and-output-dir-right-above-SRC_DI.patch | 2 +- ...t-crash-if-BAZEL_SH-not-set-on-Windows.patch | 2 +- ...ks-to-junctions-on-Windows-before-buil.patch | 17 ++++++++++------- 12 files changed, 23 insertions(+), 21 deletions(-) diff --git a/recipes/ray-packages/build-core.bat b/recipes/ray-packages/build-core.bat index 4e135eda02daa..376dd73837ce2 100644 --- a/recipes/ray-packages/build-core.bat +++ b/recipes/ray-packages/build-core.bat @@ -11,7 +11,6 @@ rem different Python version) do not stumble on some after-effects. rem Now shut down Bazel server, otherwise Windows would not allow moving a directory with it bazel "--output_user_root=%SRC_DIR%\..\bazel-root" "--output_base=%SRC_DIR%\..\b-o" clean bazel "--output_user_root=%SRC_DIR%\..\bazel-root" "--output_base=%SRC_DIR%\..\b-o" shutdown -rd /s /q "%SRC_DIR%\..\b-o" +rd /s /q "%SRC_DIR%\..\b-o" "%SRC_DIR%\..\bazel-root" rem Ignore "bazel shutdown" errors exit /b %RETCODE% - \ No newline at end of file diff --git a/recipes/ray-packages/build-core.sh b/recipes/ray-packages/build-core.sh index cc1fbfaba7699..6931b017ce20a 100644 --- a/recipes/ray-packages/build-core.sh +++ b/recipes/ray-packages/build-core.sh @@ -17,4 +17,4 @@ grep -lR ELF build/ | xargs chmod +w "${PYTHON}" setup.py clean --all bazel "--output_user_root=$SRC_DIR/../bazel-root" "--output_base=$SRC_DIR/../b-o" clean bazel "--output_user_root=$SRC_DIR/../bazel-root" "--output_base=$SRC_DIR/../b-o" shutdown -rm -rf ../b-o +rm -rf "$SRC_DIR/../b-o" "$SRC_DIR/../bazel-root" diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index 708c4198334a8..3c06d5700009d 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -23,5 +23,5 @@ index d64d8402e..d6b034594 100644 entry_points={ "console_scripts": [ -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 17cc799a33e94..3e40972410cc6 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -26,5 +26,5 @@ index 9089059c5..24b661a84 100644 thirdparty_files = os.path.join( os.path.abspath(os.path.dirname(__file__)), "thirdparty_files") -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index 29ca89c9af17a..adce54634e0d5 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -29,5 +29,5 @@ index f428f7b36..9ec69d433 100644 # This library is for internal hiredis use, because hiredis assumes a -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 483a54b617d48..a28812bb432c7 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -29,5 +29,5 @@ index 883a31c3b..7fc4fc7e6 100644 deps = [ ":plasma_store_server_lib", -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index ddb5e5b5763df..e7ed58822f5c4 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -5,9 +5,9 @@ Subject: [PATCH 05/10] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- - bazel/BUILD.redis | 12 ++++- + bazel/BUILD.redis | 12 +++++- bazel/ray_deps_setup.bzl | 1 + - thirdparty/patches/redis-deps-ar.patch | 74 ++++++++++++++++++++++++++ + thirdparty/patches/redis-deps-ar.patch | 74 ++++++++++++++++++++++++++++++++++ 3 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 thirdparty/patches/redis-deps-ar.patch @@ -139,5 +139,5 @@ index 000000000..15acb3165 + .PHONY: persist-settings + -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index bd704c7ecaf6f..56e7e7f8b96a5 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -22,5 +22,5 @@ index d6b034594..2cf203f20 100644 }, include_package_data=True, -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index a456014ea9260..83d5a594c785e 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -22,5 +22,5 @@ index 3684885a2..a9bfa6683 100644 # Ignore minor warnings for host tools, which we generally can't control build:clang-cl --host_copt="-Wno-inconsistent-missing-override" -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index b1adf8b2249f0..b84e681542126 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -33,5 +33,5 @@ index 2cf203f20..602c3011b 100644 -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index b67d61725eac5..b11fd4179b0b4 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -22,5 +22,5 @@ index 602c3011b..4648bda0b 100644 wsl_bash = os.path.join(SYSTEMROOT, "System32", "bash.exe") if (not BAZEL_SH) and SYSTEMROOT and os.path.isfile(wsl_bash): -- -2.29.2.windows.2 +2.11.0 diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index ffcea1adc0eae..aceedaf293f0a 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,4 +1,4 @@ -From 033b31feb3e543488360baadefc8e294d89b2c24 Mon Sep 17 00:00:00 2001 +From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before @@ -6,14 +6,14 @@ Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before Signed-off-by: Vasilij Litvinov --- - python/setup.py | 33 +++++++++++++++++++++++++++++++++ - 1 file changed, 33 insertions(+) + python/setup.py | 36 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 36 insertions(+) diff --git a/python/setup.py b/python/setup.py -index 4648bda0b..a74223881 100644 +index 4648bda0b..3c1d91e0e 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -225,6 +225,38 @@ def download_pickle5(pickle5_dir): +@@ -225,6 +225,41 @@ def download_pickle5(pickle5_dir): finally: wzf.close() @@ -26,6 +26,9 @@ index 4648bda0b..a74223881 100644 + root_dir = os.path.dirname(__file__) + for link, default in _LINKS.items(): + path = os.path.join(root_dir, link) ++ if os.path.exists(os.path.join(path, '__init__.py')): ++ print('"{}" does not need workarounds, skipping'.format(link)) ++ continue + try: + out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) + except subprocess.CalledProcessError: @@ -52,7 +55,7 @@ index 4648bda0b..a74223881 100644 def build(build_python, build_java): if tuple(sys.version_info[:2]) not in SUPPORTED_PYTHONS: -@@ -243,6 +275,7 @@ def build(build_python, build_java): +@@ -243,6 +278,7 @@ def build(build_python, build_java): bazel_env = dict(os.environ, PYTHON3_BIN_PATH=sys.executable) if is_native_windows_or_msys(): @@ -61,5 +64,5 @@ index 4648bda0b..a74223881 100644 if SHELL: bazel_env.setdefault("BAZEL_SH", os.path.normpath(SHELL)) -- -2.29.2.windows.2 +2.11.0 From 0d5b9d867e8162e7a6a9083f1c5d797c3366f2fa Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 13:15:31 +0300 Subject: [PATCH 57/77] Add debug prints Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 3 ++ ...-install-requirements-installed-by-c.patch | 2 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...ild-for-non-default-compiler-drivers.patch | 2 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...Redis-deps-now-build-but-do-not-link.patch | 2 +- ...isable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...ot-and-output-dir-right-above-SRC_DI.patch | 2 +- ...crash-if-BAZEL_SH-not-set-on-Windows.patch | 2 +- ...-to-junctions-on-Windows-before-buil.patch | 2 +- .../patches/0011-Add-debug-prints.patch | 30 +++++++++++++++++++ 12 files changed, 43 insertions(+), 10 deletions(-) create mode 100644 recipes/ray-packages/patches/0011-Add-debug-prints.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 6ba5a5a61150a..0f94669259067 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -18,12 +18,15 @@ source: - patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch + - patches/0011-Add-debug-prints.patch build: number: 0 skip: True # [py<36] # skip on MacOS as there's some weird compilation issue and I have no MacOS to develop on skip: True # [osx] + # skip on Linux for debugging Windows things so as to not load CI needlessly + skip: True # [lin] # Need these up here for conda-smithy to handle them properly. requirements: diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index 3c06d5700009d..eee00ab4f02d6 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 01/10] Remove setup and install requirements - installed by +Subject: [PATCH 01/11] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 3e40972410cc6..2b337211b7bcb 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 02/10] Do not force pickle5 in sys.path +Subject: [PATCH 02/11] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index adce54634e0d5..769aa3961e917 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 03/10] Fix redis build for non-default compiler drivers +Subject: [PATCH 03/11] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index a28812bb432c7..83d8e50d73264 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 04/10] Fix plasma linking for ancient glibc +Subject: [PATCH 04/11] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index e7ed58822f5c4..98adbf877571e 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 05/10] Redis deps now build but do not link +Subject: [PATCH 05/11] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 56e7e7f8b96a5..4420ae5b0d9b6 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 06/10] Disable making non-core entry scripts +Subject: [PATCH 06/11] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index 83d5a594c785e..c15d8dd242724 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 07/10] Ignore warnings for one file +Subject: [PATCH 07/11] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index b84e681542126..7dd10ec8149cd 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/10] Contain bazel root and output dir right above $SRC_DIR +Subject: [PATCH 08/11] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index b11fd4179b0b4..5eb15dc903764 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,7 +1,7 @@ From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 -Subject: [PATCH 09/10] Do not crash if BAZEL_SH not set on Windows +Subject: [PATCH 09/11] Do not crash if BAZEL_SH not set on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index aceedaf293f0a..b0b7d67b26e6f 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,7 +1,7 @@ From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 -Subject: [PATCH 10/10] Convert symlinks to junctions on Windows before +Subject: [PATCH 10/11] Convert symlinks to junctions on Windows before building Signed-off-by: Vasilij Litvinov diff --git a/recipes/ray-packages/patches/0011-Add-debug-prints.patch b/recipes/ray-packages/patches/0011-Add-debug-prints.patch new file mode 100644 index 0000000000000..004e3c38aef18 --- /dev/null +++ b/recipes/ray-packages/patches/0011-Add-debug-prints.patch @@ -0,0 +1,30 @@ +From 5f4189f62b7f35e585d62c73198c69cda471248f Mon Sep 17 00:00:00 2001 +From: Vasilij Litvinov +Date: Mon, 23 Nov 2020 13:14:24 +0300 +Subject: [PATCH 11/11] Add debug prints + +Signed-off-by: Vasilij Litvinov +--- + python/setup.py | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/python/setup.py b/python/setup.py +index 3c1d91e0e..ba387dd3e 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -236,6 +236,12 @@ def replace_symlinks_with_junctions(): + path = os.path.join(root_dir, link) + if os.path.exists(os.path.join(path, '__init__.py')): + print('"{}" does not need workarounds, skipping'.format(link)) ++ for func in (os.stat, os.lstat, os.path.isdir, os.path.isfile): ++ try: ++ val = func(path) ++ except BaseException as ex: ++ val = ex ++ print('[DEBUG] {}("{}") = {}', func.__name__, link, val) + continue + try: + out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) +-- +2.11.0 + From de697245ae4ab60d1107da42a86b27e91a26d848 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 14:44:36 +0300 Subject: [PATCH 58/77] Disable ray-debug for now - weird compat issues Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 0f94669259067..0200904460f7e 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -47,7 +47,7 @@ outputs: run: - python - {{ pin_subpackage('ray-core', exact=True) }} - - {{ pin_subpackage('ray-debug', exact=True) }} + #- {{ pin_subpackage('ray-debug', exact=True) }} # temp turned off, see below - {{ pin_subpackage('ray-dashboard', exact=True) }} - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} @@ -122,6 +122,8 @@ outputs: - ray.worker - name: ray-debug + build: + skip: True # some weird incompatibility when installing during tests... disabling for now requirements: host: - python From fd9ce2dce4adc6d54e873d89e8906b892522ef96 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 15:32:02 +0300 Subject: [PATCH 59/77] Add workaround for os.path.isdir quirk on Windows Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 3 +- ...-install-requirements-installed-by-c.patch | 2 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...ild-for-non-default-compiler-drivers.patch | 2 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...Redis-deps-now-build-but-do-not-link.patch | 2 +- ...isable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...ot-and-output-dir-right-above-SRC_DI.patch | 2 +- ...crash-if-BAZEL_SH-not-set-on-Windows.patch | 2 +- ...-to-junctions-on-Windows-before-buil.patch | 2 +- .../patches/0011-Add-debug-prints.patch | 2 +- ...karound-for-os.path.isdir-on-Windows.patch | 57 +++++++++++++++++++ 13 files changed, 70 insertions(+), 12 deletions(-) create mode 100644 recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 0200904460f7e..7f1ae20c5beed 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -19,6 +19,7 @@ source: - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch - patches/0011-Add-debug-prints.patch + - patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch build: number: 0 @@ -26,7 +27,7 @@ build: # skip on MacOS as there's some weird compilation issue and I have no MacOS to develop on skip: True # [osx] # skip on Linux for debugging Windows things so as to not load CI needlessly - skip: True # [lin] + skip: True # [linux] # Need these up here for conda-smithy to handle them properly. requirements: diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index eee00ab4f02d6..e9f61a2bb0248 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 01/11] Remove setup and install requirements - installed by +Subject: [PATCH 01/12] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 2b337211b7bcb..02009cca8b25f 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 02/11] Do not force pickle5 in sys.path +Subject: [PATCH 02/12] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index 769aa3961e917..7e1e59521cd51 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 03/11] Fix redis build for non-default compiler drivers +Subject: [PATCH 03/12] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 83d8e50d73264..069ec24d1392f 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 04/11] Fix plasma linking for ancient glibc +Subject: [PATCH 04/12] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index 98adbf877571e..e265b5ec730c5 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 05/11] Redis deps now build but do not link +Subject: [PATCH 05/12] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 4420ae5b0d9b6..1ebf56c5a6d64 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 06/11] Disable making non-core entry scripts +Subject: [PATCH 06/12] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index c15d8dd242724..41d02bb9a8d87 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 07/11] Ignore warnings for one file +Subject: [PATCH 07/12] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index 7dd10ec8149cd..edb340890a3e2 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/11] Contain bazel root and output dir right above $SRC_DIR +Subject: [PATCH 08/12] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index 5eb15dc903764..12079d0001a2a 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,7 +1,7 @@ From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 -Subject: [PATCH 09/11] Do not crash if BAZEL_SH not set on Windows +Subject: [PATCH 09/12] Do not crash if BAZEL_SH not set on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index b0b7d67b26e6f..ad44d11fbf14e 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,7 +1,7 @@ From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 -Subject: [PATCH 10/11] Convert symlinks to junctions on Windows before +Subject: [PATCH 10/12] Convert symlinks to junctions on Windows before building Signed-off-by: Vasilij Litvinov diff --git a/recipes/ray-packages/patches/0011-Add-debug-prints.patch b/recipes/ray-packages/patches/0011-Add-debug-prints.patch index 004e3c38aef18..82d101488179f 100644 --- a/recipes/ray-packages/patches/0011-Add-debug-prints.patch +++ b/recipes/ray-packages/patches/0011-Add-debug-prints.patch @@ -1,7 +1,7 @@ From 5f4189f62b7f35e585d62c73198c69cda471248f Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Mon, 23 Nov 2020 13:14:24 +0300 -Subject: [PATCH 11/11] Add debug prints +Subject: [PATCH 11/12] Add debug prints Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch b/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch new file mode 100644 index 0000000000000..2bb2a95ec4e06 --- /dev/null +++ b/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch @@ -0,0 +1,57 @@ +From 4a17cb566fa468574b9dbbd6d962bfb82edf1d75 Mon Sep 17 00:00:00 2001 +From: Vasilij Litvinov +Date: Mon, 23 Nov 2020 15:30:50 +0300 +Subject: [PATCH 12/12] Add workaround for os.path.isdir on Windows + +Signed-off-by: Vasilij Litvinov +--- + python/setup.py | 19 ++++++++++++++++++- + 1 file changed, 18 insertions(+), 1 deletion(-) + +diff --git a/python/setup.py b/python/setup.py +index ba387dd3e..038200e93 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -225,6 +225,22 @@ def download_pickle5(pickle5_dir): + finally: + wzf.close() + ++def patch_isdir(): ++ ''' ++ Python on Windows is having hard times at telling if a symlink is ++ a directory - it can "guess" wrong at times, which bites when ++ finding packages. Replace with a fixed version which unwraps links first. ++ ''' ++ orig_isdir = os.path.isdir ++ def fixed_isdir(path): ++ while os.path.islink(path): ++ try: ++ path = os.readlink(path) ++ except OSError: ++ break ++ return orig_isdir(path) ++ os.path.isdir = fixed_isdir ++ + def replace_symlinks_with_junctions(): + _LINKS = { + r'ray\new_dashboard': '../../dashboard', +@@ -241,7 +257,7 @@ def replace_symlinks_with_junctions(): + val = func(path) + except BaseException as ex: + val = ex +- print('[DEBUG] {}("{}") = {}', func.__name__, link, val) ++ print('[DEBUG] {}("{}") = {}'.format(func.__name__, link, val)) + continue + try: + out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) +@@ -265,6 +281,7 @@ def replace_symlinks_with_junctions(): + subprocess.check_call('MKLINK /J "{}" "{}"'.format(os.path.basename(link), target), shell=True, cwd=os.path.dirname(path)) + + if is_native_windows_or_msys(): ++ patch_isdir() + replace_symlinks_with_junctions() + + def build(build_python, build_java): +-- +2.11.0 + From 3e7429eaf31b72d0768c4a987b0f8aec04662800 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 16:42:36 +0300 Subject: [PATCH 60/77] More workarounds and debug prints Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 1 + ...-install-requirements-installed-by-c.patch | 2 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...ild-for-non-default-compiler-drivers.patch | 2 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...Redis-deps-now-build-but-do-not-link.patch | 2 +- ...isable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...ot-and-output-dir-right-above-SRC_DI.patch | 2 +- ...crash-if-BAZEL_SH-not-set-on-Windows.patch | 2 +- ...-to-junctions-on-Windows-before-buil.patch | 2 +- .../patches/0011-Add-debug-prints.patch | 2 +- ...karound-for-os.path.isdir-on-Windows.patch | 2 +- ...13-More-workarounds-and-debug-prints.patch | 62 +++++++++++++++++++ 14 files changed, 75 insertions(+), 12 deletions(-) create mode 100644 recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 7f1ae20c5beed..3c083a5f74f3c 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -20,6 +20,7 @@ source: - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch - patches/0011-Add-debug-prints.patch - patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch + - patches/0013-More-workarounds-and-debug-prints.patch build: number: 0 diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index e9f61a2bb0248..8b5a1ed52b754 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 01/12] Remove setup and install requirements - installed by +Subject: [PATCH 01/13] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 02009cca8b25f..2382363677fe8 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 02/12] Do not force pickle5 in sys.path +Subject: [PATCH 02/13] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index 7e1e59521cd51..20a4bae1c8a06 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 03/12] Fix redis build for non-default compiler drivers +Subject: [PATCH 03/13] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 069ec24d1392f..734d881a42ca6 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 04/12] Fix plasma linking for ancient glibc +Subject: [PATCH 04/13] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index e265b5ec730c5..e6c181511b996 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 05/12] Redis deps now build but do not link +Subject: [PATCH 05/13] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 1ebf56c5a6d64..23b9073c6ec3d 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 06/12] Disable making non-core entry scripts +Subject: [PATCH 06/13] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index 41d02bb9a8d87..f327af05f3c54 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 07/12] Ignore warnings for one file +Subject: [PATCH 07/13] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index edb340890a3e2..62c37f0f67b43 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/12] Contain bazel root and output dir right above $SRC_DIR +Subject: [PATCH 08/13] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index 12079d0001a2a..bf71f2218833a 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,7 +1,7 @@ From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 -Subject: [PATCH 09/12] Do not crash if BAZEL_SH not set on Windows +Subject: [PATCH 09/13] Do not crash if BAZEL_SH not set on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index ad44d11fbf14e..5ccae4d65a88c 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,7 +1,7 @@ From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 -Subject: [PATCH 10/12] Convert symlinks to junctions on Windows before +Subject: [PATCH 10/13] Convert symlinks to junctions on Windows before building Signed-off-by: Vasilij Litvinov diff --git a/recipes/ray-packages/patches/0011-Add-debug-prints.patch b/recipes/ray-packages/patches/0011-Add-debug-prints.patch index 82d101488179f..c0f4c1ba94b71 100644 --- a/recipes/ray-packages/patches/0011-Add-debug-prints.patch +++ b/recipes/ray-packages/patches/0011-Add-debug-prints.patch @@ -1,7 +1,7 @@ From 5f4189f62b7f35e585d62c73198c69cda471248f Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Mon, 23 Nov 2020 13:14:24 +0300 -Subject: [PATCH 11/12] Add debug prints +Subject: [PATCH 11/13] Add debug prints Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch b/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch index 2bb2a95ec4e06..9f1307c60bbd9 100644 --- a/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch +++ b/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch @@ -1,7 +1,7 @@ From 4a17cb566fa468574b9dbbd6d962bfb82edf1d75 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Mon, 23 Nov 2020 15:30:50 +0300 -Subject: [PATCH 12/12] Add workaround for os.path.isdir on Windows +Subject: [PATCH 12/13] Add workaround for os.path.isdir on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch b/recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch new file mode 100644 index 0000000000000..2a5d87806e79c --- /dev/null +++ b/recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch @@ -0,0 +1,62 @@ +From 4e9b16330663155d41021cb0dd3f3ea406bfa4a8 Mon Sep 17 00:00:00 2001 +From: Vasilij Litvinov +Date: Mon, 23 Nov 2020 16:41:18 +0300 +Subject: [PATCH 13/13] More workarounds and debug prints + +Signed-off-by: Vasilij Litvinov +--- + python/setup.py | 28 ++++++++++++++++++++++------ + 1 file changed, 22 insertions(+), 6 deletions(-) + +diff --git a/python/setup.py b/python/setup.py +index 038200e93..18d1b96a4 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -232,12 +232,28 @@ def patch_isdir(): + finding packages. Replace with a fixed version which unwraps links first. + ''' + orig_isdir = os.path.isdir +- def fixed_isdir(path): +- while os.path.islink(path): ++ import stat ++ def fixed_islink(path): ++ try: ++ st = os.lstat(path) ++ except OSError: ++ return os.path.islink(path) ++ return stat.S_ISLNK(st.st_mode) ++ ++ def fixed_isdir(path, debug=False): ++ orig_path = path ++ while fixed_islink(path): + try: +- path = os.readlink(path) +- except OSError: ++ link = os.readlink(path) ++ except OSError as err: ++ if debug: ++ print('[DEBUG] fixed_isdir("{}" -> "{}") -> {}'.format(orig_path, path, err)) + break ++ if debug: ++ print('[DEBUG] fixed_isdir: "{}" -> "{}"'.format(path, link)) ++ path = os.path.abspath(os.path.join(os.path.dirname(path), link)) ++ if debug: ++ print('[DEBUG] fixed_isdir("{}" -> "{}") == {}'.format(orig_path, path, orig_isdir(path))) + return orig_isdir(path) + os.path.isdir = fixed_isdir + +@@ -252,9 +268,9 @@ def replace_symlinks_with_junctions(): + path = os.path.join(root_dir, link) + if os.path.exists(os.path.join(path, '__init__.py')): + print('"{}" does not need workarounds, skipping'.format(link)) +- for func in (os.stat, os.lstat, os.path.isdir, os.path.isfile): ++ for func in (os.stat, os.lstat, os.path.isdir, os.path.isfile, os.readlink): + try: +- val = func(path) ++ val = func(path) if func != os.path.isdir else func(path, debug=True) + except BaseException as ex: + val = ex + print('[DEBUG] {}("{}") = {}'.format(func.__name__, link, val)) +-- +2.11.0 + From d3d3daa251212588309cfc6d9b94103d92bf599e Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 23 Nov 2020 18:52:08 +0300 Subject: [PATCH 61/77] Remove debug prints, enable Linux back Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 14 ++--- ...-install-requirements-installed-by-c.patch | 2 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...ild-for-non-default-compiler-drivers.patch | 2 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...Redis-deps-now-build-but-do-not-link.patch | 2 +- ...isable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...ot-and-output-dir-right-above-SRC_DI.patch | 2 +- ...crash-if-BAZEL_SH-not-set-on-Windows.patch | 2 +- ...-to-junctions-on-Windows-before-buil.patch | 2 +- .../patches/0011-Add-debug-prints.patch | 30 --------- ...around-for-os.path.isdir-on-Windows.patch} | 35 ++++++----- ...13-More-workarounds-and-debug-prints.patch | 62 ------------------- 14 files changed, 35 insertions(+), 126 deletions(-) delete mode 100644 recipes/ray-packages/patches/0011-Add-debug-prints.patch rename recipes/ray-packages/patches/{0012-Add-workaround-for-os.path.isdir-on-Windows.patch => 0011-Add-workaround-for-os.path.isdir-on-Windows.patch} (57%) delete mode 100644 recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 3c083a5f74f3c..083fff9c160d2 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -18,17 +18,13 @@ source: - patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch - - patches/0011-Add-debug-prints.patch - - patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch - - patches/0013-More-workarounds-and-debug-prints.patch + - patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch build: number: 0 skip: True # [py<36] # skip on MacOS as there's some weird compilation issue and I have no MacOS to develop on skip: True # [osx] - # skip on Linux for debugging Windows things so as to not load CI needlessly - skip: True # [linux] # Need these up here for conda-smithy to handle them properly. requirements: @@ -68,7 +64,8 @@ outputs: - {{ compiler('c') }} - {{ compiler('cxx') }} - cython >=0.29 - - bazel <=3.4.1 + - bazel <=3.4.1 # [not win] + - bazel # [win] - curl - make host: @@ -125,7 +122,10 @@ outputs: - name: ray-debug build: - skip: True # some weird incompatibility when installing during tests... disabling for now + # some weird incompatibility when installing during tests... disabling for now + skip: True # [not win] + # there is no py-spy on Windows + skip: True # [win] requirements: host: - python diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index 8b5a1ed52b754..eee00ab4f02d6 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 01/13] Remove setup and install requirements - installed by +Subject: [PATCH 01/11] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 2382363677fe8..2b337211b7bcb 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 02/13] Do not force pickle5 in sys.path +Subject: [PATCH 02/11] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index 20a4bae1c8a06..769aa3961e917 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 03/13] Fix redis build for non-default compiler drivers +Subject: [PATCH 03/11] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 734d881a42ca6..83d8e50d73264 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 04/13] Fix plasma linking for ancient glibc +Subject: [PATCH 04/11] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index e6c181511b996..98adbf877571e 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 05/13] Redis deps now build but do not link +Subject: [PATCH 05/11] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 23b9073c6ec3d..4420ae5b0d9b6 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 06/13] Disable making non-core entry scripts +Subject: [PATCH 06/11] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index f327af05f3c54..c15d8dd242724 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 07/13] Ignore warnings for one file +Subject: [PATCH 07/11] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index 62c37f0f67b43..7dd10ec8149cd 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/13] Contain bazel root and output dir right above $SRC_DIR +Subject: [PATCH 08/11] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index bf71f2218833a..5eb15dc903764 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,7 +1,7 @@ From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 -Subject: [PATCH 09/13] Do not crash if BAZEL_SH not set on Windows +Subject: [PATCH 09/11] Do not crash if BAZEL_SH not set on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index 5ccae4d65a88c..b0b7d67b26e6f 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,7 +1,7 @@ From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 -Subject: [PATCH 10/13] Convert symlinks to junctions on Windows before +Subject: [PATCH 10/11] Convert symlinks to junctions on Windows before building Signed-off-by: Vasilij Litvinov diff --git a/recipes/ray-packages/patches/0011-Add-debug-prints.patch b/recipes/ray-packages/patches/0011-Add-debug-prints.patch deleted file mode 100644 index c0f4c1ba94b71..0000000000000 --- a/recipes/ray-packages/patches/0011-Add-debug-prints.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 5f4189f62b7f35e585d62c73198c69cda471248f Mon Sep 17 00:00:00 2001 -From: Vasilij Litvinov -Date: Mon, 23 Nov 2020 13:14:24 +0300 -Subject: [PATCH 11/13] Add debug prints - -Signed-off-by: Vasilij Litvinov ---- - python/setup.py | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/python/setup.py b/python/setup.py -index 3c1d91e0e..ba387dd3e 100644 ---- a/python/setup.py -+++ b/python/setup.py -@@ -236,6 +236,12 @@ def replace_symlinks_with_junctions(): - path = os.path.join(root_dir, link) - if os.path.exists(os.path.join(path, '__init__.py')): - print('"{}" does not need workarounds, skipping'.format(link)) -+ for func in (os.stat, os.lstat, os.path.isdir, os.path.isfile): -+ try: -+ val = func(path) -+ except BaseException as ex: -+ val = ex -+ print('[DEBUG] {}("{}") = {}', func.__name__, link, val) - continue - try: - out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) --- -2.11.0 - diff --git a/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch b/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch similarity index 57% rename from recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch rename to recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch index 9f1307c60bbd9..7a57ab3ee3f10 100644 --- a/recipes/ray-packages/patches/0012-Add-workaround-for-os.path.isdir-on-Windows.patch +++ b/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch @@ -1,18 +1,18 @@ -From 4a17cb566fa468574b9dbbd6d962bfb82edf1d75 Mon Sep 17 00:00:00 2001 +From c4332f87c668c7d88a03486794a364d9856ce180 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov -Date: Mon, 23 Nov 2020 15:30:50 +0300 -Subject: [PATCH 12/13] Add workaround for os.path.isdir on Windows +Date: Mon, 23 Nov 2020 13:14:24 +0300 +Subject: [PATCH 11/11] Add workaround for os.path.isdir on Windows Signed-off-by: Vasilij Litvinov --- - python/setup.py | 19 ++++++++++++++++++- - 1 file changed, 18 insertions(+), 1 deletion(-) + python/setup.py | 20 +++++++++++++++++++- + 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index ba387dd3e..038200e93 100644 +index 3c1d91e0e..356fc693d 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -225,6 +225,22 @@ def download_pickle5(pickle5_dir): +@@ -225,6 +225,24 @@ def download_pickle5(pickle5_dir): finally: wzf.close() @@ -23,28 +23,29 @@ index ba387dd3e..038200e93 100644 + finding packages. Replace with a fixed version which unwraps links first. + ''' + orig_isdir = os.path.isdir -+ def fixed_isdir(path): ++ def fixed_isdir(path, debug=False): ++ orig_path = path + while os.path.islink(path): + try: -+ path = os.readlink(path) -+ except OSError: ++ link = os.readlink(path) ++ except OSError as err: + break ++ path = os.path.abspath(os.path.join(os.path.dirname(path), link)) + return orig_isdir(path) + os.path.isdir = fixed_isdir + def replace_symlinks_with_junctions(): _LINKS = { r'ray\new_dashboard': '../../dashboard', -@@ -241,7 +257,7 @@ def replace_symlinks_with_junctions(): - val = func(path) - except BaseException as ex: - val = ex -- print('[DEBUG] {}("{}") = {}', func.__name__, link, val) -+ print('[DEBUG] {}("{}") = {}'.format(func.__name__, link, val)) +@@ -235,7 +253,6 @@ def replace_symlinks_with_junctions(): + for link, default in _LINKS.items(): + path = os.path.join(root_dir, link) + if os.path.exists(os.path.join(path, '__init__.py')): +- print('"{}" does not need workarounds, skipping'.format(link)) continue try: out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) -@@ -265,6 +281,7 @@ def replace_symlinks_with_junctions(): +@@ -259,6 +276,7 @@ def replace_symlinks_with_junctions(): subprocess.check_call('MKLINK /J "{}" "{}"'.format(os.path.basename(link), target), shell=True, cwd=os.path.dirname(path)) if is_native_windows_or_msys(): diff --git a/recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch b/recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch deleted file mode 100644 index 2a5d87806e79c..0000000000000 --- a/recipes/ray-packages/patches/0013-More-workarounds-and-debug-prints.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 4e9b16330663155d41021cb0dd3f3ea406bfa4a8 Mon Sep 17 00:00:00 2001 -From: Vasilij Litvinov -Date: Mon, 23 Nov 2020 16:41:18 +0300 -Subject: [PATCH 13/13] More workarounds and debug prints - -Signed-off-by: Vasilij Litvinov ---- - python/setup.py | 28 ++++++++++++++++++++++------ - 1 file changed, 22 insertions(+), 6 deletions(-) - -diff --git a/python/setup.py b/python/setup.py -index 038200e93..18d1b96a4 100644 ---- a/python/setup.py -+++ b/python/setup.py -@@ -232,12 +232,28 @@ def patch_isdir(): - finding packages. Replace with a fixed version which unwraps links first. - ''' - orig_isdir = os.path.isdir -- def fixed_isdir(path): -- while os.path.islink(path): -+ import stat -+ def fixed_islink(path): -+ try: -+ st = os.lstat(path) -+ except OSError: -+ return os.path.islink(path) -+ return stat.S_ISLNK(st.st_mode) -+ -+ def fixed_isdir(path, debug=False): -+ orig_path = path -+ while fixed_islink(path): - try: -- path = os.readlink(path) -- except OSError: -+ link = os.readlink(path) -+ except OSError as err: -+ if debug: -+ print('[DEBUG] fixed_isdir("{}" -> "{}") -> {}'.format(orig_path, path, err)) - break -+ if debug: -+ print('[DEBUG] fixed_isdir: "{}" -> "{}"'.format(path, link)) -+ path = os.path.abspath(os.path.join(os.path.dirname(path), link)) -+ if debug: -+ print('[DEBUG] fixed_isdir("{}" -> "{}") == {}'.format(orig_path, path, orig_isdir(path))) - return orig_isdir(path) - os.path.isdir = fixed_isdir - -@@ -252,9 +268,9 @@ def replace_symlinks_with_junctions(): - path = os.path.join(root_dir, link) - if os.path.exists(os.path.join(path, '__init__.py')): - print('"{}" does not need workarounds, skipping'.format(link)) -- for func in (os.stat, os.lstat, os.path.isdir, os.path.isfile): -+ for func in (os.stat, os.lstat, os.path.isdir, os.path.isfile, os.readlink): - try: -- val = func(path) -+ val = func(path) if func != os.path.isdir else func(path, debug=True) - except BaseException as ex: - val = ex - print('[DEBUG] {}("{}") = {}'.format(func.__name__, link, val)) --- -2.11.0 - From f253f5685729e6292af2068c50afb457d8407e09 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 24 Nov 2020 00:23:20 +0300 Subject: [PATCH 62/77] Require mesa-libgl for rllib on Linux, patch raylet_client for Windows older SDKs Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 4 +++ ...-install-requirements-installed-by-c.patch | 2 +- ...002-Do-not-force-pickle5-in-sys.path.patch | 2 +- ...ild-for-non-default-compiler-drivers.patch | 2 +- ...Fix-plasma-linking-for-ancient-glibc.patch | 2 +- ...Redis-deps-now-build-but-do-not-link.patch | 2 +- ...isable-making-non-core-entry-scripts.patch | 2 +- .../0007-Ignore-warnings-for-one-file.patch | 2 +- ...ot-and-output-dir-right-above-SRC_DI.patch | 2 +- ...crash-if-BAZEL_SH-not-set-on-Windows.patch | 2 +- ...-to-junctions-on-Windows-before-buil.patch | 2 +- ...karound-for-os.path.isdir-on-Windows.patch | 2 +- ...s.h-for-getpid-explicitly-on-Windows.patch | 28 +++++++++++++++++++ 13 files changed, 43 insertions(+), 11 deletions(-) create mode 100644 recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 083fff9c160d2..ccc7d34e38d68 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -19,6 +19,7 @@ source: - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch - patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch + - patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch build: number: 0 @@ -168,6 +169,9 @@ outputs: - gym-atari - lz4 - opencv <=4.30.0 + # until there is a build of opencv-python-headless which does not require + # full X11 stack we need to require a package providing libGL.so.1 + - {{ cdt('mesa-libgl') }} # [linux] - pyyaml - scipy test: diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch index eee00ab4f02d6..e9f61a2bb0248 100644 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch @@ -1,7 +1,7 @@ From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 01/11] Remove setup and install requirements - installed by +Subject: [PATCH 01/12] Remove setup and install requirements - installed by conda recipe Signed-off-by: Vasily Litvinov diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch index 2b337211b7bcb..02009cca8b25f 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 02/11] Do not force pickle5 in sys.path +Subject: [PATCH 02/12] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch index 769aa3961e917..7e1e59521cd51 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 03/11] Fix redis build for non-default compiler drivers +Subject: [PATCH 03/12] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch index 83d8e50d73264..069ec24d1392f 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 04/11] Fix plasma linking for ancient glibc +Subject: [PATCH 04/12] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch index 98adbf877571e..e265b5ec730c5 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 05/11] Redis deps now build but do not link +Subject: [PATCH 05/12] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch index 4420ae5b0d9b6..1ebf56c5a6d64 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 06/11] Disable making non-core entry scripts +Subject: [PATCH 06/12] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch index c15d8dd242724..41d02bb9a8d87 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 07/11] Ignore warnings for one file +Subject: [PATCH 07/12] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index 7dd10ec8149cd..edb340890a3e2 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/11] Contain bazel root and output dir right above $SRC_DIR +Subject: [PATCH 08/12] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index 5eb15dc903764..12079d0001a2a 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,7 +1,7 @@ From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 -Subject: [PATCH 09/11] Do not crash if BAZEL_SH not set on Windows +Subject: [PATCH 09/12] Do not crash if BAZEL_SH not set on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index b0b7d67b26e6f..ad44d11fbf14e 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,7 +1,7 @@ From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 -Subject: [PATCH 10/11] Convert symlinks to junctions on Windows before +Subject: [PATCH 10/12] Convert symlinks to junctions on Windows before building Signed-off-by: Vasilij Litvinov diff --git a/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch b/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch index 7a57ab3ee3f10..c0269a2e7b22c 100644 --- a/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch +++ b/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch @@ -1,7 +1,7 @@ From c4332f87c668c7d88a03486794a364d9856ce180 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Mon, 23 Nov 2020 13:14:24 +0300 -Subject: [PATCH 11/11] Add workaround for os.path.isdir on Windows +Subject: [PATCH 11/12] Add workaround for os.path.isdir on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch b/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch new file mode 100644 index 0000000000000..8c926c840e8c8 --- /dev/null +++ b/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch @@ -0,0 +1,28 @@ +From 562dda3f7d147d265094edc31bff67cdcbbd15c9 Mon Sep 17 00:00:00 2001 +From: Vasilij Litvinov +Date: Tue, 24 Nov 2020 00:20:34 +0300 +Subject: [PATCH 12/12] Include for getpid() explicitly on Windows + +Signed-off-by: Vasilij Litvinov +--- + src/ray/raylet_client/raylet_client.cc | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/ray/raylet_client/raylet_client.cc b/src/ray/raylet_client/raylet_client.cc +index 77c4aff93..46ab511c3 100644 +--- a/src/ray/raylet_client/raylet_client.cc ++++ b/src/ray/raylet_client/raylet_client.cc +@@ -22,6 +22,10 @@ + #include "ray/util/logging.h" + #include "ray/util/util.h" + ++#ifdef _WIN32 ++#include // for getpid() on Windows ++#endif ++ + using MessageType = ray::protocol::MessageType; + + namespace { +-- +2.11.0 + From 4e64c3c7d6d9b2c239709e0411f77125e479da90 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 24 Nov 2020 01:34:47 +0300 Subject: [PATCH 63/77] Patch util.h for wider coverage Signed-off-by: Vasily Litvinov --- ...s.h-for-getpid-explicitly-on-Windows.patch | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch b/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch index 8c926c840e8c8..ac920793ac97e 100644 --- a/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch +++ b/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch @@ -1,28 +1,28 @@ -From 562dda3f7d147d265094edc31bff67cdcbbd15c9 Mon Sep 17 00:00:00 2001 +From 578491167107ed920ffe4623b85230b9b452b144 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Tue, 24 Nov 2020 00:20:34 +0300 Subject: [PATCH 12/12] Include for getpid() explicitly on Windows Signed-off-by: Vasilij Litvinov --- - src/ray/raylet_client/raylet_client.cc | 4 ++++ + src/ray/util/util.h | 4 ++++ 1 file changed, 4 insertions(+) -diff --git a/src/ray/raylet_client/raylet_client.cc b/src/ray/raylet_client/raylet_client.cc -index 77c4aff93..46ab511c3 100644 ---- a/src/ray/raylet_client/raylet_client.cc -+++ b/src/ray/raylet_client/raylet_client.cc -@@ -22,6 +22,10 @@ - #include "ray/util/logging.h" - #include "ray/util/util.h" +diff --git a/src/ray/util/util.h b/src/ray/util/util.h +index 5b678d4f2..85f47e66d 100644 +--- a/src/ray/util/util.h ++++ b/src/ray/util/util.h +@@ -23,6 +23,10 @@ + #include + #include +#ifdef _WIN32 -+#include // for getpid() on Windows ++#include // to ensure getpid() on Windows +#endif + - using MessageType = ray::protocol::MessageType; + // Boost forward-declarations (to avoid forcing slow header inclusions) + namespace boost { - namespace { -- 2.11.0 From 9add46c757ee70f281de50179776ffd18cdefff9 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 24 Nov 2020 15:23:10 +0300 Subject: [PATCH 64/77] Add extra packages via yum for testing, remove mesa from reqs Reference: https://conda-forge.org/docs/maintainer/knowledge_base.html#libgl Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 6 +++--- recipes/ray-packages/yum_requirements.txt | 6 ++++++ 2 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 recipes/ray-packages/yum_requirements.txt diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index ccc7d34e38d68..fa179657271b3 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -168,10 +168,10 @@ outputs: - dm-tree - gym-atari - lz4 - - opencv <=4.30.0 # until there is a build of opencv-python-headless which does not require - # full X11 stack we need to require a package providing libGL.so.1 - - {{ cdt('mesa-libgl') }} # [linux] + # full graphics stack we have to rely on user system having needed + # graphics libraries installed + - opencv <=4.30.0 - pyyaml - scipy test: diff --git a/recipes/ray-packages/yum_requirements.txt b/recipes/ray-packages/yum_requirements.txt new file mode 100644 index 0000000000000..651811b765d80 --- /dev/null +++ b/recipes/ray-packages/yum_requirements.txt @@ -0,0 +1,6 @@ +mesa-libGL +mesa-dri-drivers +libselinux +libXdamage +libXxf86vm +libXext From 25c174e1ab28832663ad182c7efb93b4fa3f35d6 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 24 Nov 2020 15:25:02 +0300 Subject: [PATCH 65/77] Omit gpustat optional dependency on Windows Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index fa179657271b3..f7465a54eb643 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -96,7 +96,9 @@ outputs: - colorful - filelock - googlesearch - - gpustat + # gpustat-0.6.0 has a dependency which does not exist on Windows + # skip it there as it is optional until gpustat is fixed + - gpustat # [not win] - grpcio >=1.28.1 - jsonschema - msgpack-python >=1.0.0, <2.0.0 From 6aff083d63eb7d6633168accbfc1b28ae511dd99 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 24 Nov 2020 22:13:34 +0300 Subject: [PATCH 66/77] Disable atari deps for ray-rllib on Windows Reason: they do not officially support Windows and are optional Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index f7465a54eb643..db90f4354ac11 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -166,9 +166,9 @@ outputs: - tensorboardX - pandas - dataclasses # [py < 37] - - atari_py + - atari_py # [not win] - dm-tree - - gym-atari + - gym-atari # [not win] - lz4 # until there is a build of opencv-python-headless which does not require # full graphics stack we have to rely on user system having needed From 430bb36a4054256929bc99d245d1a532839dd148 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 25 Nov 2020 13:23:25 +0300 Subject: [PATCH 67/77] Do not build ray-rllib on Windows as some deps are missing now Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index db90f4354ac11..b70e0ddea61e6 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -48,13 +48,15 @@ outputs: - {{ pin_subpackage('ray-core', exact=True) }} #- {{ pin_subpackage('ray-debug', exact=True) }} # temp turned off, see below - {{ pin_subpackage('ray-dashboard', exact=True) }} - - {{ pin_subpackage('ray-rllib', exact=True) }} + # some rllib deps are missing on Windows + - {{ pin_subpackage('ray-rllib', exact=True) }} # [not win] - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} + # autoscaler does not work on Windows, no point of building it - {{ pin_subpackage('ray-autoscaler', exact=True) }} # [not win] test: imports: - # dummy test; actual tests below + # dummy test; actual tests are in subpackages - ray - name: ray-core @@ -154,6 +156,8 @@ outputs: - name: ray-rllib build: + # needed atari deps are missing on Windows + skip: True # [win] entry_points: - rllib = ray.rllib.scripts:cli requirements: @@ -166,9 +170,9 @@ outputs: - tensorboardX - pandas - dataclasses # [py < 37] - - atari_py # [not win] + - atari_py - dm-tree - - gym-atari # [not win] + - gym-atari - lz4 # until there is a build of opencv-python-headless which does not require # full graphics stack we have to rely on user system having needed From a6faab2151b890e967c2f031bd659560eac4ca1f Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 4 Dec 2020 12:39:47 +0300 Subject: [PATCH 68/77] Add licenses for all potentially included in the resulting bits libraries Signed-off-by: Vasily Litvinov --- .../ray-packages/licenses/abseil-LICENSE.txt | 203 ++ .../licenses/antirez-redis-COPYING.txt | 10 + .../ray-packages/licenses/arrow-LICENSE.txt | 1958 +++++++++++++++++ .../licenses/boost-LICENSE_1_0.txt | 23 + .../licenses/boringssl-LICENSE.txt | 251 +++ .../licenses/deckarep-golang-set-LICENSE.txt | 22 + .../licenses/flatbuffers-LICENSE.txt | 202 ++ .../licenses/gabime-spdlog-LICENSE.txt | 26 + .../ray-packages/licenses/gflags-COPYING.txt | 28 + .../ray-packages/licenses/glog-COPYING.txt | 65 + .../ray-packages/licenses/go-logr-LICENSE.txt | 201 ++ .../licenses/googletest-LICENSE.txt | 28 + .../ray-packages/licenses/grpc-LICENSE.txt | 202 ++ .../ray-packages/licenses/msgpack-COPYING.txt | 5 + .../licenses/onsi-ginkgo-LICENSE.txt | 20 + .../licenses/onsi-gomega-LICENSE.txt | 20 + .../licenses/opencensus-LICENSE.txt | 202 ++ .../licenses/opencensus-proto-LICENSE.txt | 202 ++ .../licenses/prometheus-LICENSE.txt | 25 + .../licenses/redis-hiredis-COPYING.txt | 29 + .../licenses/tporadowski-redis-license.txt | 16 + .../ray-packages/licenses/zlib-LICENSE.txt | 29 + 22 files changed, 3767 insertions(+) create mode 100644 recipes/ray-packages/licenses/abseil-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/antirez-redis-COPYING.txt create mode 100644 recipes/ray-packages/licenses/arrow-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/boost-LICENSE_1_0.txt create mode 100644 recipes/ray-packages/licenses/boringssl-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/deckarep-golang-set-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/flatbuffers-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/gabime-spdlog-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/gflags-COPYING.txt create mode 100644 recipes/ray-packages/licenses/glog-COPYING.txt create mode 100644 recipes/ray-packages/licenses/go-logr-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/googletest-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/grpc-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/msgpack-COPYING.txt create mode 100644 recipes/ray-packages/licenses/onsi-ginkgo-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/onsi-gomega-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/opencensus-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/opencensus-proto-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/prometheus-LICENSE.txt create mode 100644 recipes/ray-packages/licenses/redis-hiredis-COPYING.txt create mode 100644 recipes/ray-packages/licenses/tporadowski-redis-license.txt create mode 100644 recipes/ray-packages/licenses/zlib-LICENSE.txt diff --git a/recipes/ray-packages/licenses/abseil-LICENSE.txt b/recipes/ray-packages/licenses/abseil-LICENSE.txt new file mode 100644 index 0000000000000..ccd61dcfe3dbc --- /dev/null +++ b/recipes/ray-packages/licenses/abseil-LICENSE.txt @@ -0,0 +1,203 @@ + + Apache License + Version 2.0, January 2004 + https://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + diff --git a/recipes/ray-packages/licenses/antirez-redis-COPYING.txt b/recipes/ray-packages/licenses/antirez-redis-COPYING.txt new file mode 100644 index 0000000000000..ac68e012bcaa6 --- /dev/null +++ b/recipes/ray-packages/licenses/antirez-redis-COPYING.txt @@ -0,0 +1,10 @@ +Copyright (c) 2006-2015, Salvatore Sanfilippo +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + * Neither the name of Redis nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/arrow-LICENSE.txt b/recipes/ray-packages/licenses/arrow-LICENSE.txt new file mode 100644 index 0000000000000..d1c834b5df9f2 --- /dev/null +++ b/recipes/ray-packages/licenses/arrow-LICENSE.txt @@ -0,0 +1,1958 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +-------------------------------------------------------------------------------- + +src/plasma/fling.cc and src/plasma/fling.h: Apache 2.0 + +Copyright 2013 Sharvil Nanavati + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +src/plasma/thirdparty/ae: Modified / 3-Clause BSD + +Copyright (c) 2006-2010, Salvatore Sanfilippo +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of Redis nor the names of its contributors may be used + to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +src/plasma/thirdparty/dlmalloc.c: CC0 + +This is a version (aka dlmalloc) of malloc/free/realloc written by +Doug Lea and released to the public domain, as explained at +http://creativecommons.org/publicdomain/zero/1.0/ Send questions, +comments, complaints, performance data, etc to dl@cs.oswego.edu + +-------------------------------------------------------------------------------- + +src/plasma/common.cc (some portions) + +Copyright (c) Austin Appleby (aappleby (AT) gmail) + +Some portions of this file are derived from code in the MurmurHash project + +All code is released to the public domain. For business purposes, Murmurhash is +under the MIT license. + +https://sites.google.com/site/murmurhash/ + +-------------------------------------------------------------------------------- + +src/arrow/util (some portions): Apache 2.0, and 3-clause BSD + +Some portions of this module are derived from code in the Chromium project, +copyright (c) Google inc and (c) The Chromium Authors and licensed under the +Apache 2.0 License or the under the 3-clause BSD license: + + Copyright (c) 2013 The Chromium Authors. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +This project includes code from Daniel Lemire's FrameOfReference project. + +https://github.com/lemire/FrameOfReference/blob/6ccaf9e97160f9a3b299e23a8ef739e711ef0c71/src/bpacking.cpp + +Copyright: 2013 Daniel Lemire +Home page: http://lemire.me/en/ +Project page: https://github.com/lemire/FrameOfReference +License: Apache License Version 2.0 http://www.apache.org/licenses/LICENSE-2.0 + +-------------------------------------------------------------------------------- + +This project includes code from the TensorFlow project + +Copyright 2015 The TensorFlow Authors. All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +This project includes code from the NumPy project. + +https://github.com/numpy/numpy/blob/e1f191c46f2eebd6cb892a4bfe14d9dd43a06c4e/numpy/core/src/multiarray/multiarraymodule.c#L2910 + +https://github.com/numpy/numpy/blob/68fd82271b9ea5a9e50d4e761061dfcca851382a/numpy/core/src/multiarray/datetime.c + +Copyright (c) 2005-2017, NumPy Developers. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + * Neither the name of the NumPy Developers nor the names of any + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +This project includes code from the Boost project + +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +This project includes code from the FlatBuffers project + +Copyright 2014 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +This project includes code from the tslib project + +Copyright 2015 Microsoft Corporation. All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +This project includes code from the jemalloc project + +https://github.com/jemalloc/jemalloc + +Copyright (C) 2002-2017 Jason Evans . +All rights reserved. +Copyright (C) 2007-2012 Mozilla Foundation. All rights reserved. +Copyright (C) 2009-2017 Facebook, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice(s), + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice(s), + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY EXPRESS +OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +EVENT SHALL THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- + +This project includes code from the Go project, BSD 3-clause license + PATENTS +weak patent termination clause +(https://github.com/golang/go/blob/master/PATENTS). + +Copyright (c) 2009 The Go Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +This project includes code from the hs2client + +https://github.com/cloudera/hs2client + +Copyright 2016 Cloudera Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +The script ci/scripts/util_wait_for_it.sh has the following license + +Copyright (c) 2016 Giles Hall + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +-------------------------------------------------------------------------------- + +The script r/configure has the following license (MIT) + +Copyright (c) 2017, Jeroen Ooms and Jim Hester + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +-------------------------------------------------------------------------------- + +cpp/src/arrow/util/logging.cc, cpp/src/arrow/util/logging.h and +cpp/src/arrow/util/logging-test.cc are adapted from +Ray Project (https://github.com/ray-project/ray) (Apache 2.0). + +Copyright (c) 2016 Ray Project (https://github.com/ray-project/ray) + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- +The files cpp/src/arrow/vendored/datetime/date.h, cpp/src/arrow/vendored/datetime/tz.h, +cpp/src/arrow/vendored/datetime/tz_private.h, cpp/src/arrow/vendored/datetime/ios.h, +cpp/src/arrow/vendored/datetime/tz.cpp are adapted from +Howard Hinnant's date library (https://github.com/HowardHinnant/date) +It is licensed under MIT license. + +The MIT License (MIT) +Copyright (c) 2015, 2016, 2017 Howard Hinnant +Copyright (c) 2016 Adrian Colomitchi +Copyright (c) 2017 Florian Dang +Copyright (c) 2017 Paul Thompson +Copyright (c) 2018 Tomasz Kamiński + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +-------------------------------------------------------------------------------- + +The file cpp/src/arrow/util/utf8.h includes code adapted from the page + https://bjoern.hoehrmann.de/utf-8/decoder/dfa/ +with the following license (MIT) + +Copyright (c) 2008-2009 Bjoern Hoehrmann + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +-------------------------------------------------------------------------------- + +The file cpp/src/arrow/vendored/string_view.hpp has the following license + +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +The file cpp/src/arrow/vendored/variant.hpp has the following license + +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +The files in cpp/src/arrow/vendored/xxhash/ have the following license +(BSD 2-Clause License) + +xxHash Library +Copyright (c) 2012-2014, Yann Collet +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at : +- xxHash homepage: http://www.xxhash.com +- xxHash source repository : https://github.com/Cyan4973/xxHash + +-------------------------------------------------------------------------------- + +The files in cpp/src/arrow/vendored/double-conversion/ have the following license +(BSD 3-Clause License) + +Copyright 2006-2011, the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +The files in cpp/src/arrow/vendored/uriparser/ have the following license +(BSD 3-Clause License) + +uriparser - RFC 3986 URI parsing library + +Copyright (C) 2007, Weijia Song +Copyright (C) 2007, Sebastian Pipping +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + + * Redistributions of source code must retain the above + copyright notice, this list of conditions and the following + disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials + provided with the distribution. + + * Neither the name of the nor the names of its + contributors may be used to endorse or promote products + derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +The files under dev/tasks/conda-recipes have the following license + +BSD 3-clause license +Copyright (c) 2015-2018, conda-forge +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +The files in cpp/src/arrow/vendored/utf8cpp/ have the following license + +Copyright 2006 Nemanja Trifunovic + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +This project includes code from Apache Kudu. + + * cpp/cmake_modules/CompilerInfo.cmake is based on Kudu's cmake_modules/CompilerInfo.cmake + +Copyright: 2016 The Apache Software Foundation. +Home page: https://kudu.apache.org/ +License: http://www.apache.org/licenses/LICENSE-2.0 + +-------------------------------------------------------------------------------- + +This project includes code from Apache Impala (incubating), formerly +Impala. The Impala code and rights were donated to the ASF as part of the +Incubator process after the initial code imports into Apache Parquet. + +Copyright: 2012 Cloudera, Inc. +Copyright: 2016 The Apache Software Foundation. +Home page: http://impala.apache.org/ +License: http://www.apache.org/licenses/LICENSE-2.0 + +-------------------------------------------------------------------------------- + +This project includes code from Apache Aurora. + +* dev/release/{release,changelog,release-candidate} are based on the scripts from + Apache Aurora + +Copyright: 2016 The Apache Software Foundation. +Home page: https://aurora.apache.org/ +License: http://www.apache.org/licenses/LICENSE-2.0 + +-------------------------------------------------------------------------------- + +This project includes code from the Google styleguide. + +* cpp/build-support/cpplint.py is based on the scripts from the Google styleguide. + +Copyright: 2009 Google Inc. All rights reserved. +Homepage: https://github.com/google/styleguide +License: 3-clause BSD + +-------------------------------------------------------------------------------- + +This project includes code from Snappy. + +* cpp/cmake_modules/{SnappyCMakeLists.txt,SnappyConfig.h} are based on code + from Google's Snappy project. + +Copyright: 2009 Google Inc. All rights reserved. +Homepage: https://github.com/google/snappy +License: 3-clause BSD + +-------------------------------------------------------------------------------- + +This project includes code from the manylinux project. + +* python/manylinux1/scripts/{build_python.sh,python-tag-abi-tag.py, + requirements.txt} are based on code from the manylinux project. + +Copyright: 2016 manylinux +Homepage: https://github.com/pypa/manylinux +License: The MIT License (MIT) + +-------------------------------------------------------------------------------- + +This project includes code from the cymove project: + +* python/pyarrow/includes/common.pxd includes code from the cymove project + +The MIT License (MIT) +Copyright (c) 2019 Omer Ozarslan + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +OR OTHER DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +This project include code from CMake. + +* cpp/cmake_modules/FindGTest.cmake is based on code from CMake. + +Copyright: Copyright 2000-2019 Kitware, Inc. and Contributors +Homepage: https://gitlab.kitware.com/cmake/cmake +License: 3-clause BSD + +-------------------------------------------------------------------------------- + +This project include code from mingw-w64. + +* cpp/src/arrow/util/cpu-info.cc has a polyfill for mingw-w64 < 5 + +Copyright (c) 2009 - 2013 by the mingw-w64 project +Homepage: https://mingw-w64.org +License: Zope Public License (ZPL) Version 2.1. + +--------------------------------------------------------------------------------- + +This project include code from Google's Asylo project. + +* cpp/src/arrow/result.h is based on status_or.h + +Copyright (c) Copyright 2017 Asylo authors +Homepage: https://asylo.dev/ +License: Apache 2.0 + +-------------------------------------------------------------------------------- + +This project includes code from Google's protobuf project + +* cpp/src/arrow/result.h ARROW_ASSIGN_OR_RAISE is based off ASSIGN_OR_RETURN + +Copyright 2008 Google Inc. All rights reserved. +Homepage: https://developers.google.com/protocol-buffers/ +License: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Code generated by the Protocol Buffer compiler is owned by the owner +of the input file used when generating it. This code is not +standalone and requires a support library to be linked with it. This +support library is itself covered by the above license. + +-------------------------------------------------------------------------------- + +3rdparty dependency LLVM is statically linked in certain binary +distributions. LLVM has the following license: + +============================================================================== +LLVM Release License +============================================================================== +University of Illinois/NCSA +Open Source License + +Copyright (c) 2003-2018 University of Illinois at Urbana-Champaign. +All rights reserved. + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE +SOFTWARE. + +============================================================================== +Copyrights and Licenses for Third Party Software Distributed with LLVM: +============================================================================== +The LLVM software contains code written by third parties. Such software will +have its own individual LICENSE.TXT file in the directory in which it appears. +This file will describe the copyrights, license, and restrictions which apply +to that code. + +The disclaimer of warranty in the University of Illinois Open Source License +applies to all code in the LLVM Distribution, and nothing in any of the +other licenses gives permission to use the names of the LLVM Team or the +University of Illinois to endorse or promote products derived from this +Software. + +The following pieces of software have additional or alternate copyrights, +licenses, and/or restrictions: + +Program Directory +------- --------- +Google Test llvm/utils/unittest/googletest +OpenBSD regex llvm/lib/Support/{reg*, COPYRIGHT.regex} +pyyaml tests llvm/test/YAMLParser/{*.data, LICENSE.TXT} +ARM contributions llvm/lib/Target/ARM/LICENSE.TXT +md5 contributions llvm/lib/Support/MD5.cpp llvm/include/llvm/Support/MD5.h + +-------------------------------------------------------------------------------- + +3rdparty dependency gRPC is statically linked in certain binary +distributions, like the python wheels. gRPC has the following license: + +Copyright 2014 gRPC authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +3rdparty dependency Apache Thrift is statically linked in certain binary +distributions, like the python wheels. Apache Thrift has the following license: + +Apache Thrift +Copyright (C) 2006 - 2019, The Apache Software Foundation + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +3rdparty dependency Apache ORC is statically linked in certain binary +distributions, like the python wheels. Apache ORC has the following license: + +Apache ORC +Copyright 2013-2019 The Apache Software Foundation + +This product includes software developed by The Apache Software +Foundation (http://www.apache.org/). + +This product includes software developed by Hewlett-Packard: +(c) Copyright [2014-2015] Hewlett-Packard Development Company, L.P + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +-------------------------------------------------------------------------------- + +3rdparty dependency zstd is statically linked in certain binary +distributions, like the python wheels. ZSTD has the following license: + +BSD License + +For Zstandard software + +Copyright (c) 2016-present, Facebook, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name Facebook nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +3rdparty dependency lz4 is statically linked in certain binary +distributions, like the python wheels. lz4 has the following license: + +LZ4 Library +Copyright (c) 2011-2016, Yann Collet +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +3rdparty dependency Brotli is statically linked in certain binary +distributions, like the python wheels. Brotli has the following license: + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +-------------------------------------------------------------------------------- + +3rdparty dependency rapidjson is statically linked in certain binary +distributions, like the python wheels. rapidjson and its dependencies have the +following licenses: + +Tencent is pleased to support the open source community by making RapidJSON +available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. +All rights reserved. + +If you have downloaded a copy of the RapidJSON binary from Tencent, please note +that the RapidJSON binary is licensed under the MIT License. +If you have downloaded a copy of the RapidJSON source code from Tencent, please +note that RapidJSON source code is licensed under the MIT License, except for +the third-party components listed below which are subject to different license +terms. Your integration of RapidJSON into your own projects may require +compliance with the MIT License, as well as the other licenses applicable to +the third-party components included within RapidJSON. To avoid the problematic +JSON license in your own projects, it's sufficient to exclude the +bin/jsonchecker/ directory, as it's the only code under the JSON license. +A copy of the MIT License is included in this file. + +Other dependencies and licenses: + + Open Source Software Licensed Under the BSD License: + -------------------------------------------------------------------- + + The msinttypes r29 + Copyright (c) 2006-2013 Alexander Chemeris + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY + EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + DAMAGE. + + Open Source Software Licensed Under the JSON License: + -------------------------------------------------------------------- + + json.org + Copyright (c) 2002 JSON.org + All Rights Reserved. + + JSON_checker + Copyright (c) 2002 JSON.org + All Rights Reserved. + + + Terms of the JSON License: + --------------------------------------------------- + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + The Software shall be used for Good, not Evil. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + + + Terms of the MIT License: + -------------------------------------------------------------------- + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included + in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +3rdparty dependency snappy is statically linked in certain binary +distributions, like the python wheels. snappy has the following license: + +Copyright 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of Google Inc. nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +=== + +Some of the benchmark data in testdata/ is licensed differently: + + - fireworks.jpeg is Copyright 2013 Steinar H. Gunderson, and + is licensed under the Creative Commons Attribution 3.0 license + (CC-BY-3.0). See https://creativecommons.org/licenses/by/3.0/ + for more information. + + - kppkn.gtb is taken from the Gaviota chess tablebase set, and + is licensed under the MIT License. See + https://sites.google.com/site/gaviotachessengine/Home/endgame-tablebases-1 + for more information. + + - paper-100k.pdf is an excerpt (bytes 92160 to 194560) from the paper + “Combinatorial Modeling of Chromatin Features Quantitatively Predicts DNA + Replication Timing in _Drosophila_” by Federico Comoglio and Renato Paro, + which is licensed under the CC-BY license. See + http://www.ploscompbiol.org/static/license for more ifnormation. + + - alice29.txt, asyoulik.txt, plrabn12.txt and lcet10.txt are from Project + Gutenberg. The first three have expired copyrights and are in the public + domain; the latter does not have expired copyright, but is still in the + public domain according to the license information + (http://www.gutenberg.org/ebooks/53). + +-------------------------------------------------------------------------------- + +3rdparty dependency gflags is statically linked in certain binary +distributions, like the python wheels. gflags has the following license: + +Copyright (c) 2006, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +3rdparty dependency glog is statically linked in certain binary +distributions, like the python wheels. glog has the following license: + +Copyright (c) 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +A function gettimeofday in utilities.cc is based on + +http://www.google.com/codesearch/p?hl=en#dR3YEbitojA/COPYING&q=GetSystemTimeAsFileTime%20license:bsd + +The license of this code is: + +Copyright (c) 2003-2008, Jouni Malinen and contributors +All Rights Reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +3. Neither the name(s) of the above-listed copyright holder(s) nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +3rdparty dependency re2 is statically linked in certain binary +distributions, like the python wheels. re2 has the following license: + +Copyright (c) 2009 The RE2 Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its contributors + may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +3rdparty dependency c-ares is statically linked in certain binary +distributions, like the python wheels. c-ares has the following license: + +# c-ares license + +Copyright (c) 2007 - 2018, Daniel Stenberg with many contributors, see AUTHORS +file. + +Copyright 1998 by the Massachusetts Institute of Technology. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, provided that +the above copyright notice appear in all copies and that both that copyright +notice and this permission notice appear in supporting documentation, and that +the name of M.I.T. not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior permission. +M.I.T. makes no representations about the suitability of this software for any +purpose. It is provided "as is" without express or implied warranty. + +-------------------------------------------------------------------------------- + +3rdparty dependency zlib is redistributed as a dynamically linked shared +library in certain binary distributions, like the python wheels. In the future +this will likely change to static linkage. zlib has the following license: + +zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +-------------------------------------------------------------------------------- + +3rdparty dependency openssl is redistributed as a dynamically linked shared +library in certain binary distributions, like the python wheels. openssl +preceding version 3 has the following license: + + LICENSE ISSUES + ============== + + The OpenSSL toolkit stays under a double license, i.e. both the conditions of + the OpenSSL License and the original SSLeay license apply to the toolkit. + See below for the actual license texts. + + OpenSSL License + --------------- + +/* ==================================================================== + * Copyright (c) 1998-2019 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + + Original SSLeay License + ----------------------- + +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + +-------------------------------------------------------------------------------- + +This project includes code from the rtools-backports project. + +* ci/PKGBUILD and ci/appveyor-build-r.sh are based on code + from the rtools-backports project. + +Copyright: Copyright (c) 2013 - 2019, Алексей and Jeroen Ooms. +All rights reserved. +Homepage: https://github.com/r-windows/rtools-backports +License: 3-clause BSD + +-------------------------------------------------------------------------------- + +Some code from pandas has been adapted for the pyarrow codebase. pandas is +available under the 3-clause BSD license, which follows: + +pandas license +============== + +Copyright (c) 2011-2012, Lambda Foundry, Inc. and PyData Development Team +All rights reserved. + +Copyright (c) 2008-2011 AQR Capital Management, LLC +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + * Neither the name of the copyright holder nor the names of any + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- + +Some bits from DyND, in particular aspects of the build system, have been +adapted from libdynd and dynd-python under the terms of the BSD 2-clause +license + +The BSD 2-Clause License + + Copyright (C) 2011-12, Dynamic NDArray Developers + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Dynamic NDArray Developers list: + + * Mark Wiebe + * Continuum Analytics + +-------------------------------------------------------------------------------- + +Some source code from Ibis (https://github.com/cloudera/ibis) has been adapted +for PyArrow. Ibis is released under the Apache License, Version 2.0. + +-------------------------------------------------------------------------------- + +This project includes code from the autobrew project. + +* r/tools/autobrew and dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb + are based on code from the autobrew project. + +Copyright (c) 2019, Jeroen Ooms +License: MIT +Homepage: https://github.com/jeroen/autobrew + +-------------------------------------------------------------------------------- + +dev/tasks/homebrew-formulae/apache-arrow.rb has the following license: + +BSD 2-Clause License + +Copyright (c) 2009-present, Homebrew contributors +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +---------------------------------------------------------------------- + +cpp/src/arrow/vendored/base64.cpp has the following license + +ZLIB License + +Copyright (C) 2004-2017 René Nyffenegger + +This source code is provided 'as-is', without any express or implied +warranty. In no event will the author be held liable for any damages arising +from the use of this software. + +Permission is granted to anyone to use this software for any purpose, including +commercial applications, and to alter it and redistribute it freely, subject to +the following restrictions: + +1. The origin of this source code must not be misrepresented; you must not + claim that you wrote the original source code. If you use this source code + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original source code. + +3. This notice may not be removed or altered from any source distribution. + +René Nyffenegger rene.nyffenegger@adp-gmbh.ch + +-------------------------------------------------------------------------------- + +The file cpp/src/arrow/vendored/optional.hpp has the following license + +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/recipes/ray-packages/licenses/boost-LICENSE_1_0.txt b/recipes/ray-packages/licenses/boost-LICENSE_1_0.txt new file mode 100644 index 0000000000000..36b7cd93cdfba --- /dev/null +++ b/recipes/ray-packages/licenses/boost-LICENSE_1_0.txt @@ -0,0 +1,23 @@ +Boost Software License - Version 1.0 - August 17th, 2003 + +Permission is hereby granted, free of charge, to any person or organization +obtaining a copy of the software and accompanying documentation covered by +this license (the "Software") to use, reproduce, display, distribute, +execute, and transmit the Software, and to prepare derivative works of the +Software, and to permit third-parties to whom the Software is furnished to +do so, all subject to the following: + +The copyright notices in the Software and this entire statement, including +the above license grant, this restriction and the following disclaimer, +must be included in all copies of the Software, in whole or in part, and +all derivative works of the Software, unless such copies or derivative +works are solely in the form of machine-executable object code generated by +a source language processor. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT +SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE +FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/recipes/ray-packages/licenses/boringssl-LICENSE.txt b/recipes/ray-packages/licenses/boringssl-LICENSE.txt new file mode 100644 index 0000000000000..49c41fa7afc25 --- /dev/null +++ b/recipes/ray-packages/licenses/boringssl-LICENSE.txt @@ -0,0 +1,251 @@ +BoringSSL is a fork of OpenSSL. As such, large parts of it fall under OpenSSL +licensing. Files that are completely new have a Google copyright and an ISC +license. This license is reproduced at the bottom of this file. + +Contributors to BoringSSL are required to follow the CLA rules for Chromium: +https://cla.developers.google.com/clas + +Files in third_party/ have their own licenses, as described therein. The MIT +license, for third_party/fiat, which, unlike other third_party directories, is +compiled into non-test libraries, is included below. + +The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the +OpenSSL License and the original SSLeay license apply to the toolkit. See below +for the actual license texts. Actually both licenses are BSD-style Open Source +licenses. In case of any license issues related to OpenSSL please contact +openssl-core@openssl.org. + +The following are Google-internal bug numbers where explicit permission from +some authors is recorded for use of their work. (This is purely for our own +record keeping.) + 27287199 + 27287880 + 27287883 + + OpenSSL License + --------------- + +/* ==================================================================== + * Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. All advertising materials mentioning features or use of this + * software must display the following acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + * + * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + * endorse or promote products derived from this software without + * prior written permission. For written permission, please contact + * openssl-core@openssl.org. + * + * 5. Products derived from this software may not be called "OpenSSL" + * nor may "OpenSSL" appear in their names without prior written + * permission of the OpenSSL Project. + * + * 6. Redistributions of any form whatsoever must retain the following + * acknowledgment: + * "This product includes software developed by the OpenSSL Project + * for use in the OpenSSL Toolkit (http://www.openssl.org/)" + * + * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + * ==================================================================== + * + * This product includes cryptographic software written by Eric Young + * (eay@cryptsoft.com). This product includes software written by Tim + * Hudson (tjh@cryptsoft.com). + * + */ + + Original SSLeay License + ----------------------- + +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + * All rights reserved. + * + * This package is an SSL implementation written + * by Eric Young (eay@cryptsoft.com). + * The implementation was written so as to conform with Netscapes SSL. + * + * This library is free for commercial and non-commercial use as long as + * the following conditions are aheared to. The following conditions + * apply to all code found in this distribution, be it the RC4, RSA, + * lhash, DES, etc., code; not just the SSL code. The SSL documentation + * included with this distribution is covered by the same copyright terms + * except that the holder is Tim Hudson (tjh@cryptsoft.com). + * + * Copyright remains Eric Young's, and as such any Copyright notices in + * the code are not to be removed. + * If this package is used in a product, Eric Young should be given attribution + * as the author of the parts of the library used. + * This can be in the form of a textual message at program startup or + * in documentation (online or textual) provided with the package. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * "This product includes cryptographic software written by + * Eric Young (eay@cryptsoft.com)" + * The word 'cryptographic' can be left out if the rouines from the library + * being used are not cryptographic related :-). + * 4. If you include any Windows specific code (or a derivative thereof) from + * the apps directory (application code) you must include an acknowledgement: + * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + * + * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * The licence and distribution terms for any publically available version or + * derivative of this code cannot be changed. i.e. this code cannot simply be + * copied and put under another distribution licence + * [including the GNU Public Licence.] + */ + + +ISC license used for completely new code in BoringSSL: + +/* Copyright (c) 2015, Google Inc. + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ + + +The code in third_party/fiat carries the MIT license: + +Copyright (c) 2015-2016 the fiat-crypto authors (see +https://github.com/mit-plv/fiat-crypto/blob/master/AUTHORS). + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +Licenses for support code +------------------------- + +Parts of the TLS test suite are under the Go license. This code is not included +in BoringSSL (i.e. libcrypto and libssl) when compiled, however, so +distributing code linked against BoringSSL does not trigger this license: + +Copyright (c) 2009 The Go Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +BoringSSL uses the Chromium test infrastructure to run a continuous build, +trybots etc. The scripts which manage this, and the script for generating build +metadata, are under the Chromium license. Distributing code linked against +BoringSSL does not trigger this license. + +Copyright 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/deckarep-golang-set-LICENSE.txt b/recipes/ray-packages/licenses/deckarep-golang-set-LICENSE.txt new file mode 100644 index 0000000000000..b5768f89cfd23 --- /dev/null +++ b/recipes/ray-packages/licenses/deckarep-golang-set-LICENSE.txt @@ -0,0 +1,22 @@ +Open Source Initiative OSI - The MIT License (MIT):Licensing + +The MIT License (MIT) +Copyright (c) 2013 Ralph Caraveo (deckarep@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/recipes/ray-packages/licenses/flatbuffers-LICENSE.txt b/recipes/ray-packages/licenses/flatbuffers-LICENSE.txt new file mode 100644 index 0000000000000..a4c5efd822fb2 --- /dev/null +++ b/recipes/ray-packages/licenses/flatbuffers-LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2014 Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/recipes/ray-packages/licenses/gabime-spdlog-LICENSE.txt b/recipes/ray-packages/licenses/gabime-spdlog-LICENSE.txt new file mode 100644 index 0000000000000..c15941bc867e0 --- /dev/null +++ b/recipes/ray-packages/licenses/gabime-spdlog-LICENSE.txt @@ -0,0 +1,26 @@ +The MIT License (MIT) + +Copyright (c) 2016 Gabi Melman. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +-- NOTE: Third party dependency used by this software -- +This software depends on the fmt lib (MIT License), +and users must comply to its license: https://github.com/fmtlib/fmt/blob/master/LICENSE.rst + diff --git a/recipes/ray-packages/licenses/gflags-COPYING.txt b/recipes/ray-packages/licenses/gflags-COPYING.txt new file mode 100644 index 0000000000000..d15b0c24134de --- /dev/null +++ b/recipes/ray-packages/licenses/gflags-COPYING.txt @@ -0,0 +1,28 @@ +Copyright (c) 2006, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/glog-COPYING.txt b/recipes/ray-packages/licenses/glog-COPYING.txt new file mode 100644 index 0000000000000..38396b580b37b --- /dev/null +++ b/recipes/ray-packages/licenses/glog-COPYING.txt @@ -0,0 +1,65 @@ +Copyright (c) 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +A function gettimeofday in utilities.cc is based on + +http://www.google.com/codesearch/p?hl=en#dR3YEbitojA/COPYING&q=GetSystemTimeAsFileTime%20license:bsd + +The license of this code is: + +Copyright (c) 2003-2008, Jouni Malinen and contributors +All Rights Reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +3. Neither the name(s) of the above-listed copyright holder(s) nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/go-logr-LICENSE.txt b/recipes/ray-packages/licenses/go-logr-LICENSE.txt new file mode 100644 index 0000000000000..8dada3edaf50d --- /dev/null +++ b/recipes/ray-packages/licenses/go-logr-LICENSE.txt @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/recipes/ray-packages/licenses/googletest-LICENSE.txt b/recipes/ray-packages/licenses/googletest-LICENSE.txt new file mode 100644 index 0000000000000..1941a11f8ce94 --- /dev/null +++ b/recipes/ray-packages/licenses/googletest-LICENSE.txt @@ -0,0 +1,28 @@ +Copyright 2008, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/grpc-LICENSE.txt b/recipes/ray-packages/licenses/grpc-LICENSE.txt new file mode 100644 index 0000000000000..d645695673349 --- /dev/null +++ b/recipes/ray-packages/licenses/grpc-LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/recipes/ray-packages/licenses/msgpack-COPYING.txt b/recipes/ray-packages/licenses/msgpack-COPYING.txt new file mode 100644 index 0000000000000..61e4accd3f081 --- /dev/null +++ b/recipes/ray-packages/licenses/msgpack-COPYING.txt @@ -0,0 +1,5 @@ +Copyright (C) 2008-2015 FURUHASHI Sadayuki + + Distributed under the Boost Software License, Version 1.0. + (See accompanying file LICENSE_1_0.txt or copy at + http://www.boost.org/LICENSE_1_0.txt) diff --git a/recipes/ray-packages/licenses/onsi-ginkgo-LICENSE.txt b/recipes/ray-packages/licenses/onsi-ginkgo-LICENSE.txt new file mode 100644 index 0000000000000..9415ee72c17f8 --- /dev/null +++ b/recipes/ray-packages/licenses/onsi-ginkgo-LICENSE.txt @@ -0,0 +1,20 @@ +Copyright (c) 2013-2014 Onsi Fakhouri + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/recipes/ray-packages/licenses/onsi-gomega-LICENSE.txt b/recipes/ray-packages/licenses/onsi-gomega-LICENSE.txt new file mode 100644 index 0000000000000..9415ee72c17f8 --- /dev/null +++ b/recipes/ray-packages/licenses/onsi-gomega-LICENSE.txt @@ -0,0 +1,20 @@ +Copyright (c) 2013-2014 Onsi Fakhouri + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/recipes/ray-packages/licenses/opencensus-LICENSE.txt b/recipes/ray-packages/licenses/opencensus-LICENSE.txt new file mode 100644 index 0000000000000..d645695673349 --- /dev/null +++ b/recipes/ray-packages/licenses/opencensus-LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/recipes/ray-packages/licenses/opencensus-proto-LICENSE.txt b/recipes/ray-packages/licenses/opencensus-proto-LICENSE.txt new file mode 100644 index 0000000000000..d645695673349 --- /dev/null +++ b/recipes/ray-packages/licenses/opencensus-proto-LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/recipes/ray-packages/licenses/prometheus-LICENSE.txt b/recipes/ray-packages/licenses/prometheus-LICENSE.txt new file mode 100644 index 0000000000000..0e08d61d931b9 --- /dev/null +++ b/recipes/ray-packages/licenses/prometheus-LICENSE.txt @@ -0,0 +1,25 @@ +MIT License + +Copyright (c) 2016-2019 Jupp Mueller +Copyright (c) 2017-2019 Gregor Jasny + +And many contributors, see +https://github.com/jupp0r/prometheus-cpp/graphs/contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/recipes/ray-packages/licenses/redis-hiredis-COPYING.txt b/recipes/ray-packages/licenses/redis-hiredis-COPYING.txt new file mode 100644 index 0000000000000..a5fc9739551f6 --- /dev/null +++ b/recipes/ray-packages/licenses/redis-hiredis-COPYING.txt @@ -0,0 +1,29 @@ +Copyright (c) 2009-2011, Salvatore Sanfilippo +Copyright (c) 2010-2011, Pieter Noordhuis + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of Redis nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/tporadowski-redis-license.txt b/recipes/ray-packages/licenses/tporadowski-redis-license.txt new file mode 100644 index 0000000000000..84fd842a53bcd --- /dev/null +++ b/recipes/ray-packages/licenses/tporadowski-redis-license.txt @@ -0,0 +1,16 @@ +Copyright (c) 2006-2020, Salvatore Sanfilippo +Modifications copyright (c) Microsoft Open Technologies, Inc. +Modifications copyright (c) Tomasz Poradowski +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. +* Neither the name of Redis nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, +OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/recipes/ray-packages/licenses/zlib-LICENSE.txt b/recipes/ray-packages/licenses/zlib-LICENSE.txt new file mode 100644 index 0000000000000..f3f7ee42b3240 --- /dev/null +++ b/recipes/ray-packages/licenses/zlib-LICENSE.txt @@ -0,0 +1,29 @@ + (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +If you use the zlib library in a product, we would appreciate *not* receiving +lengthy legal documents to sign. The sources are provided for free but without +warranty of any kind. The library has been entirely written by Jean-loup +Gailly and Mark Adler; it does not include third-party code. + +If you redistribute modified sources, we would appreciate that you include in +the file ChangeLog history information documenting your changes. Please read +the FAQ for more information on the distribution of modified source versions. \ No newline at end of file From 1c1067f4c3044d5353621ff1d531b6868c2e7a4c Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 4 Dec 2020 12:51:04 +0300 Subject: [PATCH 69/77] Change the way setup.py reqs are satisfied Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 28 ++++----- ...01-Do-not-force-pickle5-in-sys.path.patch} | 4 +- ...-install-requirements-installed-by-c.patch | 27 --------- ...ld-for-non-default-compiler-drivers.patch} | 4 +- ...ix-plasma-linking-for-ancient-glibc.patch} | 4 +- ...edis-deps-now-build-but-do-not-link.patch} | 4 +- ...sable-making-non-core-entry-scripts.patch} | 8 +-- ...> 0006-Ignore-warnings-for-one-file.patch} | 4 +- ...t-and-output-dir-right-above-SRC_DI.patch} | 6 +- ...rash-if-BAZEL_SH-not-set-on-Windows.patch} | 6 +- ...to-junctions-on-Windows-before-buil.patch} | 6 +- ...around-for-os.path.isdir-on-Windows.patch} | 6 +- ....h-for-getpid-explicitly-on-Windows.patch} | 4 +- ...equirements-installed-by-conda-build.patch | 57 +++++++++++++++++++ 14 files changed, 99 insertions(+), 69 deletions(-) rename recipes/ray-packages/patches/{0002-Do-not-force-pickle5-in-sys.path.patch => 0001-Do-not-force-pickle5-in-sys.path.patch} (89%) delete mode 100644 recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch rename recipes/ray-packages/patches/{0003-Fix-redis-build-for-non-default-compiler-drivers.patch => 0002-Fix-redis-build-for-non-default-compiler-drivers.patch} (86%) rename recipes/ray-packages/patches/{0004-Fix-plasma-linking-for-ancient-glibc.patch => 0003-Fix-plasma-linking-for-ancient-glibc.patch} (85%) rename recipes/ray-packages/patches/{0005-Redis-deps-now-build-but-do-not-link.patch => 0004-Redis-deps-now-build-but-do-not-link.patch} (97%) rename recipes/ray-packages/patches/{0006-Disable-making-non-core-entry-scripts.patch => 0005-Disable-making-non-core-entry-scripts.patch} (76%) rename recipes/ray-packages/patches/{0007-Ignore-warnings-for-one-file.patch => 0006-Ignore-warnings-for-one-file.patch} (87%) rename recipes/ray-packages/patches/{0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch => 0007-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch} (88%) rename recipes/ray-packages/patches/{0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch => 0008-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch} (83%) rename recipes/ray-packages/patches/{0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch => 0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch} (94%) rename recipes/ray-packages/patches/{0011-Add-workaround-for-os.path.isdir-on-Windows.patch => 0010-Add-workaround-for-os.path.isdir-on-Windows.patch} (92%) rename recipes/ray-packages/patches/{0012-Include-process.h-for-getpid-explicitly-on-Windows.patch => 0011-Include-process.h-for-getpid-explicitly-on-Windows.patch} (83%) create mode 100644 recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index b70e0ddea61e6..5fd4d2ee265da 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -8,18 +8,18 @@ source: url: https://github.com/ray-project/ray/archive/ray-{{ version }}.tar.gz sha256: e08ff04dc8bca99527dbc821446f8660cfe6cbc8c35db61410958b9aa9acee56 patches: - - patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch - - patches/0002-Do-not-force-pickle5-in-sys.path.patch - - patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch - - patches/0004-Fix-plasma-linking-for-ancient-glibc.patch - - patches/0005-Redis-deps-now-build-but-do-not-link.patch - - patches/0006-Disable-making-non-core-entry-scripts.patch - - patches/0007-Ignore-warnings-for-one-file.patch - - patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch - - patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch - - patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch - - patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch - - patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch + - patches/0001-Do-not-force-pickle5-in-sys.path.patch + - patches/0002-Fix-redis-build-for-non-default-compiler-drivers.patch + - patches/0003-Fix-plasma-linking-for-ancient-glibc.patch + - patches/0004-Redis-deps-now-build-but-do-not-link.patch + - patches/0005-Disable-making-non-core-entry-scripts.patch + - patches/0006-Ignore-warnings-for-one-file.patch + - patches/0007-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch + - patches/0008-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch + - patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch + - patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch + - patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch + - patches/0012-Empty-install-requirements-installed-by-conda-build.patch build: number: 0 @@ -98,8 +98,8 @@ outputs: - colorful - filelock - googlesearch - # gpustat-0.6.0 has a dependency which does not exist on Windows - # skip it there as it is optional until gpustat is fixed + # gpustat-0.6.0 has a dependency which does not exist on Windows; + # skip it there until gpustat is fixed as it is optional - gpustat # [not win] - grpcio >=1.28.1 - jsonschema diff --git a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch b/recipes/ray-packages/patches/0001-Do-not-force-pickle5-in-sys.path.patch similarity index 89% rename from recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch rename to recipes/ray-packages/patches/0001-Do-not-force-pickle5-in-sys.path.patch index 02009cca8b25f..ad6467de727d4 100644 --- a/recipes/ray-packages/patches/0002-Do-not-force-pickle5-in-sys.path.patch +++ b/recipes/ray-packages/patches/0001-Do-not-force-pickle5-in-sys.path.patch @@ -1,7 +1,7 @@ -From d24d3390ff8224ca7fd288604aace04ac36629f4 Mon Sep 17 00:00:00 2001 +From 67ede055dd435c47cddc502332e047071de03d64 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 12:04:25 +0300 -Subject: [PATCH 02/12] Do not force pickle5 in sys.path +Subject: [PATCH 01/12] Do not force pickle5 in sys.path Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch b/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch deleted file mode 100644 index e9f61a2bb0248..0000000000000 --- a/recipes/ray-packages/patches/0001-Remove-setup-and-install-requirements-installed-by-c.patch +++ /dev/null @@ -1,27 +0,0 @@ -From affe378babc22f982b9c74e401719860ca8faa74 Mon Sep 17 00:00:00 2001 -From: Vasily Litvinov -Date: Thu, 5 Nov 2020 11:59:26 +0300 -Subject: [PATCH 01/12] Remove setup and install requirements - installed by - conda recipe - -Signed-off-by: Vasily Litvinov ---- - python/setup.py | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/python/setup.py b/python/setup.py -index d64d8402e..d6b034594 100644 ---- a/python/setup.py -+++ b/python/setup.py -@@ -456,8 +456,6 @@ setuptools.setup( - cmdclass={"build_ext": build_ext}, - # The BinaryDistribution argument triggers build_ext. - distclass=BinaryDistribution, -- install_requires=install_requires, -- setup_requires=["cython >= 0.29.14", "wheel"], - extras_require=extras, - entry_points={ - "console_scripts": [ --- -2.11.0 - diff --git a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch b/recipes/ray-packages/patches/0002-Fix-redis-build-for-non-default-compiler-drivers.patch similarity index 86% rename from recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch rename to recipes/ray-packages/patches/0002-Fix-redis-build-for-non-default-compiler-drivers.patch index 7e1e59521cd51..52ae3c2d0d01a 100644 --- a/recipes/ray-packages/patches/0003-Fix-redis-build-for-non-default-compiler-drivers.patch +++ b/recipes/ray-packages/patches/0002-Fix-redis-build-for-non-default-compiler-drivers.patch @@ -1,7 +1,7 @@ -From 158d16e4f2d59ca285b726182fa034197bcbaad0 Mon Sep 17 00:00:00 2001 +From 5d84aed7082a6e22256d7128a417f98aaa2dd43e Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:05:44 +0300 -Subject: [PATCH 03/12] Fix redis build for non-default compiler drivers +Subject: [PATCH 02/12] Fix redis build for non-default compiler drivers Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch b/recipes/ray-packages/patches/0003-Fix-plasma-linking-for-ancient-glibc.patch similarity index 85% rename from recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch rename to recipes/ray-packages/patches/0003-Fix-plasma-linking-for-ancient-glibc.patch index 069ec24d1392f..473c474f062f7 100644 --- a/recipes/ray-packages/patches/0004-Fix-plasma-linking-for-ancient-glibc.patch +++ b/recipes/ray-packages/patches/0003-Fix-plasma-linking-for-ancient-glibc.patch @@ -1,7 +1,7 @@ -From 3008588f34a2ddd5cf36ea33fa20f0e399a14af2 Mon Sep 17 00:00:00 2001 +From ac6d6bdfa456303703fb35c0b170ab64bef90ccc Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Thu, 5 Nov 2020 17:09:46 +0300 -Subject: [PATCH 04/12] Fix plasma linking for ancient glibc +Subject: [PATCH 03/12] Fix plasma linking for ancient glibc Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch b/recipes/ray-packages/patches/0004-Redis-deps-now-build-but-do-not-link.patch similarity index 97% rename from recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch rename to recipes/ray-packages/patches/0004-Redis-deps-now-build-but-do-not-link.patch index e265b5ec730c5..b9e0aadecc936 100644 --- a/recipes/ray-packages/patches/0005-Redis-deps-now-build-but-do-not-link.patch +++ b/recipes/ray-packages/patches/0004-Redis-deps-now-build-but-do-not-link.patch @@ -1,7 +1,7 @@ -From 09c6a6379f0ea313753cd25ce9dfa6c574f47eb6 Mon Sep 17 00:00:00 2001 +From 53c5d197beab5ab586dca99e75e9b3012f771361 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 6 Nov 2020 00:55:05 +0300 -Subject: [PATCH 05/12] Redis deps now build but do not link +Subject: [PATCH 04/12] Redis deps now build but do not link Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch b/recipes/ray-packages/patches/0005-Disable-making-non-core-entry-scripts.patch similarity index 76% rename from recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch rename to recipes/ray-packages/patches/0005-Disable-making-non-core-entry-scripts.patch index 1ebf56c5a6d64..11a3fc3990822 100644 --- a/recipes/ray-packages/patches/0006-Disable-making-non-core-entry-scripts.patch +++ b/recipes/ray-packages/patches/0005-Disable-making-non-core-entry-scripts.patch @@ -1,7 +1,7 @@ -From cc3e907f8b3be28532296a33aade6f59b2044b85 Mon Sep 17 00:00:00 2001 +From c47b6651ef95e0aed30aebfb5762568b0404c66c Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 06/12] Disable making non-core entry scripts +Subject: [PATCH 05/12] Disable making non-core entry scripts Signed-off-by: Vasily Litvinov --- @@ -9,10 +9,10 @@ Signed-off-by: Vasily Litvinov 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index d6b034594..2cf203f20 100644 +index d64d8402e..b0a20062a 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -460,7 +460,7 @@ setuptools.setup( +@@ -462,7 +462,7 @@ setuptools.setup( entry_points={ "console_scripts": [ "ray=ray.scripts.scripts:main", diff --git a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch b/recipes/ray-packages/patches/0006-Ignore-warnings-for-one-file.patch similarity index 87% rename from recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch rename to recipes/ray-packages/patches/0006-Ignore-warnings-for-one-file.patch index 41d02bb9a8d87..ef4754285254a 100644 --- a/recipes/ray-packages/patches/0007-Ignore-warnings-for-one-file.patch +++ b/recipes/ray-packages/patches/0006-Ignore-warnings-for-one-file.patch @@ -1,7 +1,7 @@ -From d6f2729af03a82e3e0e7a7350fa2cd87942afb38 Mon Sep 17 00:00:00 2001 +From 991fd7625fe5bdebc1c486d6936bdb07f710367f Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 11 Nov 2020 01:08:16 +0300 -Subject: [PATCH 07/12] Ignore warnings for one file +Subject: [PATCH 06/12] Ignore warnings for one file Signed-off-by: Vasily Litvinov --- diff --git a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch b/recipes/ray-packages/patches/0007-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch similarity index 88% rename from recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch rename to recipes/ray-packages/patches/0007-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch index edb340890a3e2..c80767b47ca72 100644 --- a/recipes/ray-packages/patches/0008-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch +++ b/recipes/ray-packages/patches/0007-Contain-bazel-root-and-output-dir-right-above-SRC_DI.patch @@ -1,7 +1,7 @@ -From 7dcb04b40c4fced25ca223186e2f031755e63b1d Mon Sep 17 00:00:00 2001 +From 30440e5c666e4d85851acaf9f097af234cbb1d7c Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 18 Nov 2020 18:47:40 +0300 -Subject: [PATCH 08/12] Contain bazel root and output dir right above $SRC_DIR +Subject: [PATCH 07/12] Contain bazel root and output dir right above $SRC_DIR Signed-off-by: Vasily Litvinov --- @@ -9,7 +9,7 @@ Signed-off-by: Vasily Litvinov 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 2cf203f20..602c3011b 100644 +index b0a20062a..13c1f4b34 100644 --- a/python/setup.py +++ b/python/setup.py @@ -294,12 +294,18 @@ def build(build_python, build_java): diff --git a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch b/recipes/ray-packages/patches/0008-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch similarity index 83% rename from recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch rename to recipes/ray-packages/patches/0008-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch index 12079d0001a2a..d7c32dfa071d4 100644 --- a/recipes/ray-packages/patches/0009-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch +++ b/recipes/ray-packages/patches/0008-Do-not-crash-if-BAZEL_SH-not-set-on-Windows.patch @@ -1,7 +1,7 @@ -From 840581a6aaf81b5fa1cd4c485655d34356bd2951 Mon Sep 17 00:00:00 2001 +From 8e5a3c9b85993f5ec00c8ca350ec932ade63d34a Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 14:17:05 +0300 -Subject: [PATCH 09/12] Do not crash if BAZEL_SH not set on Windows +Subject: [PATCH 08/12] Do not crash if BAZEL_SH not set on Windows Signed-off-by: Vasilij Litvinov --- @@ -9,7 +9,7 @@ Signed-off-by: Vasilij Litvinov 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 602c3011b..4648bda0b 100644 +index 13c1f4b34..024657039 100644 --- a/python/setup.py +++ b/python/setup.py @@ -246,7 +246,7 @@ def build(build_python, build_java): diff --git a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch similarity index 94% rename from recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch rename to recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index ad44d11fbf14e..b68edb60815de 100644 --- a/recipes/ray-packages/patches/0010-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,7 +1,7 @@ -From 468fe12ac1faf6f6de90aab5ec01a402c45a9db8 Mon Sep 17 00:00:00 2001 +From fdeefcf7374a5ff1dd3026a607b08efeb0b69b9b Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 -Subject: [PATCH 10/12] Convert symlinks to junctions on Windows before +Subject: [PATCH 09/12] Convert symlinks to junctions on Windows before building Signed-off-by: Vasilij Litvinov @@ -10,7 +10,7 @@ Signed-off-by: Vasilij Litvinov 1 file changed, 36 insertions(+) diff --git a/python/setup.py b/python/setup.py -index 4648bda0b..3c1d91e0e 100644 +index 024657039..7a225f72d 100644 --- a/python/setup.py +++ b/python/setup.py @@ -225,6 +225,41 @@ def download_pickle5(pickle5_dir): diff --git a/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch b/recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch similarity index 92% rename from recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch rename to recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch index c0269a2e7b22c..09770a9780239 100644 --- a/recipes/ray-packages/patches/0011-Add-workaround-for-os.path.isdir-on-Windows.patch +++ b/recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch @@ -1,7 +1,7 @@ -From c4332f87c668c7d88a03486794a364d9856ce180 Mon Sep 17 00:00:00 2001 +From 3f509f32d4c3014486e98aa03405335d611bc8f0 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Mon, 23 Nov 2020 13:14:24 +0300 -Subject: [PATCH 11/12] Add workaround for os.path.isdir on Windows +Subject: [PATCH 10/12] Add workaround for os.path.isdir on Windows Signed-off-by: Vasilij Litvinov --- @@ -9,7 +9,7 @@ Signed-off-by: Vasilij Litvinov 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/python/setup.py b/python/setup.py -index 3c1d91e0e..356fc693d 100644 +index 7a225f72d..862e6ae94 100644 --- a/python/setup.py +++ b/python/setup.py @@ -225,6 +225,24 @@ def download_pickle5(pickle5_dir): diff --git a/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch b/recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch similarity index 83% rename from recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch rename to recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch index ac920793ac97e..6efb37dc941b6 100644 --- a/recipes/ray-packages/patches/0012-Include-process.h-for-getpid-explicitly-on-Windows.patch +++ b/recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch @@ -1,7 +1,7 @@ -From 578491167107ed920ffe4623b85230b9b452b144 Mon Sep 17 00:00:00 2001 +From 58db1bb52d2fa598d1be413ab0324a1c6cfa4960 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Tue, 24 Nov 2020 00:20:34 +0300 -Subject: [PATCH 12/12] Include for getpid() explicitly on Windows +Subject: [PATCH 11/12] Include for getpid() explicitly on Windows Signed-off-by: Vasilij Litvinov --- diff --git a/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch b/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch new file mode 100644 index 0000000000000..b1732d359e412 --- /dev/null +++ b/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch @@ -0,0 +1,57 @@ +From b7349d91f10e21cdf60d442713535c0839370d2a Mon Sep 17 00:00:00 2001 +From: Vasily Litvinov +Date: Fri, 4 Dec 2020 12:49:34 +0300 +Subject: [PATCH 12/12] Empty install requirements - installed by conda build + +Signed-off-by: Vasily Litvinov +--- + python/setup.py | 26 ++------------------------ + 1 file changed, 2 insertions(+), 24 deletions(-) + +diff --git a/python/setup.py b/python/setup.py +index 862e6ae94..16ceacf4a 100644 +--- a/python/setup.py ++++ b/python/setup.py +@@ -129,29 +129,7 @@ extras["all"] = list(set(chain.from_iterable(extras.values()))) + # should be carefully curated. If you change it, please reflect + # the change in the matching section of requirements.txt + install_requires = [ +- # TODO(alex) Pin the version once this PR is +- # included in the stable release. +- # https://github.com/aio-libs/aiohttp/pull/4556#issuecomment-679228562 +- "aiohttp", +- "aiohttp_cors", +- "aioredis", +- "click >= 7.0", +- "colorama", +- "colorful", +- "filelock", +- "google", +- "gpustat", +- "grpcio >= 1.28.1", +- "jsonschema", +- "msgpack >= 1.0.0, < 2.0.0", +- "numpy >= 1.16", +- "protobuf >= 3.8.0", +- "py-spy >= 0.2.0", +- "pyyaml", +- "requests", +- "redis >= 3.3.2, < 3.5.0", +- "opencensus", +- "prometheus_client >= 0.7.1", ++ # everything should be installed via conda build recipe + ] + + +@@ -517,7 +495,7 @@ setuptools.setup( + # The BinaryDistribution argument triggers build_ext. + distclass=BinaryDistribution, + install_requires=install_requires, +- setup_requires=["cython >= 0.29.14", "wheel"], ++ setup_requires=[], # all installed via conda build recipe + extras_require=extras, + entry_points={ + "console_scripts": [ +-- +2.11.0 + From d67c78a0d568a5b2c428716e6829bafe34c3bb0e Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Sat, 5 Dec 2020 15:41:26 +0300 Subject: [PATCH 70/77] Enable ray.rllib on Windows Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 5fd4d2ee265da..e665dfba47ff6 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -48,8 +48,7 @@ outputs: - {{ pin_subpackage('ray-core', exact=True) }} #- {{ pin_subpackage('ray-debug', exact=True) }} # temp turned off, see below - {{ pin_subpackage('ray-dashboard', exact=True) }} - # some rllib deps are missing on Windows - - {{ pin_subpackage('ray-rllib', exact=True) }} # [not win] + - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} # autoscaler does not work on Windows, no point of building it @@ -156,8 +155,6 @@ outputs: - name: ray-rllib build: - # needed atari deps are missing on Windows - skip: True # [win] entry_points: - rllib = ray.rllib.scripts:cli requirements: From 4b32d8801691f2f28b1f125d9b050989b7113a98 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Sat, 5 Dec 2020 15:44:13 +0300 Subject: [PATCH 71/77] Add comments about ray autoscaler on Windows Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index e665dfba47ff6..46ea49dc74883 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -51,7 +51,7 @@ outputs: - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} - {{ pin_subpackage('ray-tune', exact=True) }} - # autoscaler does not work on Windows, no point of building it + # autoscaler does not work on Windows, no point of building it; see below - {{ pin_subpackage('ray-autoscaler', exact=True) }} # [not win] test: imports: @@ -217,6 +217,9 @@ outputs: - name: ray-autoscaler build: + # ray autoscaler relies heavily on using POSIX-compliant OpenSSH and rsync, + # neither of which are available on Windows; they are in WSL, but that is + # effectively a Linux version from conda point of view skip: True # [win] requirements: host: From 724bc924d26ae3dbb1c87be87fe1e90ddd994452 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Sat, 5 Dec 2020 18:36:11 +0300 Subject: [PATCH 72/77] Remove unnecessary host requirements Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 46ea49dc74883..1422e0708348b 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -71,20 +71,7 @@ outputs: - curl - make host: - # TODO: check which of these can move to run-reqs - - click - - cloudpickle - - colorama - - filelock - - funcsigs - - jsonschema - - numpy >=1.16 - - pickle5 # [py<38] - packaging - - protobuf >=3.8.0 - - pytest - - pyyaml - - redis-py >=3.3.2, <3.5.0 - python - pip run: From 1a81806e0f6b79e58e51d52310f755152d84e790 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Sun, 6 Dec 2020 21:52:37 +0300 Subject: [PATCH 73/77] Add pickle5 back Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 1422e0708348b..6c444754e92b5 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -71,6 +71,9 @@ outputs: - curl - make host: + # pickle5 needs to be here, otherwise setup.py tries + # to install it and it fails on conda-forge Windows CI + - pickle5 # [py<38] - packaging - python - pip From a98b9225cf09c0221c65dea5a5c51fc3645fdaf2 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 7 Dec 2020 12:11:00 +0300 Subject: [PATCH 74/77] Add even more resilience to removed deps Also add slightly better testing for rllib Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 2 ++ ...equirements-installed-by-conda-build.patch | 20 ++++++++++--------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 6c444754e92b5..c7d5608704922 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -170,6 +170,8 @@ outputs: test: imports: - ray.rllib + commands: + - rllib --help - name: ray-serve requirements: diff --git a/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch b/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch index b1732d359e412..404bd62d26f9c 100644 --- a/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch +++ b/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch @@ -1,21 +1,22 @@ -From b7349d91f10e21cdf60d442713535c0839370d2a Mon Sep 17 00:00:00 2001 +From 3d53c6d31d05f1c098a99f0ff29f9dcb3d70c7b1 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 4 Dec 2020 12:49:34 +0300 Subject: [PATCH 12/12] Empty install requirements - installed by conda build Signed-off-by: Vasily Litvinov --- - python/setup.py | 26 ++------------------------ - 1 file changed, 2 insertions(+), 24 deletions(-) + python/setup.py | 28 ++-------------------------- + 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/python/setup.py b/python/setup.py -index 862e6ae94..16ceacf4a 100644 +index 862e6ae94..8a63bfac2 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -129,29 +129,7 @@ extras["all"] = list(set(chain.from_iterable(extras.values()))) +@@ -128,31 +128,7 @@ extras["all"] = list(set(chain.from_iterable(extras.values()))) + # These are the main dependencies for users of ray. This list # should be carefully curated. If you change it, please reflect # the change in the matching section of requirements.txt - install_requires = [ +-install_requires = [ - # TODO(alex) Pin the version once this PR is - # included in the stable release. - # https://github.com/aio-libs/aiohttp/pull/4556#issuecomment-679228562 @@ -39,11 +40,12 @@ index 862e6ae94..16ceacf4a 100644 - "redis >= 3.3.2, < 3.5.0", - "opencensus", - "prometheus_client >= 0.7.1", -+ # everything should be installed via conda build recipe - ] +-] ++install_requires = [] # everything should be installed via conda build recipe -@@ -517,7 +495,7 @@ setuptools.setup( + def is_native_windows_or_msys(): +@@ -517,7 +493,7 @@ setuptools.setup( # The BinaryDistribution argument triggers build_ext. distclass=BinaryDistribution, install_requires=install_requires, From 43a05e8a7674428c3838400efffc24fd52c4f89e Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 7 Dec 2020 16:02:07 +0300 Subject: [PATCH 75/77] Package all licenses properly Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 32 +++++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index c7d5608704922..8eb0ef0840e4c 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -46,7 +46,7 @@ outputs: run: - python - {{ pin_subpackage('ray-core', exact=True) }} - #- {{ pin_subpackage('ray-debug', exact=True) }} # temp turned off, see below + #- {{ pin_subpackage('ray-debug', exact=True) }} # turned off for now, see below - {{ pin_subpackage('ray-dashboard', exact=True) }} - {{ pin_subpackage('ray-rllib', exact=True) }} - {{ pin_subpackage('ray-serve', exact=True) }} @@ -117,9 +117,8 @@ outputs: - name: ray-debug build: # some weird incompatibility when installing during tests... disabling for now - skip: True # [not win] - # there is no py-spy on Windows - skip: True # [win] + # wild guess is it is caused by py-spy using newer sysroot/glibc + skip: True requirements: host: - python @@ -233,7 +232,30 @@ about: home: https://github.com/ray-project/ray license: Apache-2.0 license_family: Apache - license_file: LICENSE + license_file: + - LICENSE + - licenses/abseil-LICENSE.txt + - licenses/antirez-redis-COPYING.txt + - licenses/arrow-LICENSE.txt + - licenses/boost-LICENSE_1_0.txt + - licenses/boringssl-LICENSE.txt + - licenses/deckarep-golang-set-LICENSE.txt + - licenses/flatbuffers-LICENSE.txt + - licenses/gabime-spdlog-LICENSE.txt + - licenses/gflags-COPYING.txt + - licenses/glog-COPYING.txt + - licenses/go-logr-LICENSE.txt + - licenses/googletest-LICENSE.txt + - licenses/grpc-LICENSE.txt + - licenses/msgpack-COPYING.txt + - licenses/onsi-ginkgo-LICENSE.txt + - licenses/onsi-gomega-LICENSE.txt + - licenses/opencensus-LICENSE.txt + - licenses/opencensus-proto-LICENSE.txt + - licenses/prometheus-LICENSE.txt + - licenses/redis-hiredis-COPYING.txt + - licenses/tporadowski-redis-license.txt + - licenses/zlib-LICENSE.txt summary: 'Ray is a fast and simple framework for building and running distributed applications.' description: | Ray is a fast and simple framework for building and running From e3fc07fc032210ba64f0a2b5c88e0fd529ac1b00 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Mon, 7 Dec 2020 17:16:12 +0300 Subject: [PATCH 76/77] Workaround symlinks on Windows better (hopefully) Signed-off-by: Vasily Litvinov --- ...-to-junctions-on-Windows-before-buil.patch | 26 +++++++++++-------- ...karound-for-os.path.isdir-on-Windows.patch | 18 ++++--------- ...s.h-for-getpid-explicitly-on-Windows.patch | 2 +- ...equirements-installed-by-conda-build.patch | 6 ++--- 4 files changed, 24 insertions(+), 28 deletions(-) diff --git a/recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch b/recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch index b68edb60815de..fa56674cedac1 100644 --- a/recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch +++ b/recipes/ray-packages/patches/0009-Convert-symlinks-to-junctions-on-Windows-before-buil.patch @@ -1,4 +1,4 @@ -From fdeefcf7374a5ff1dd3026a607b08efeb0b69b9b Mon Sep 17 00:00:00 2001 +From d2c6fcdc5c5dd2b43c62309b0ab4a02b2cffb786 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Fri, 20 Nov 2020 15:32:19 +0300 Subject: [PATCH 09/12] Convert symlinks to junctions on Windows before @@ -6,14 +6,14 @@ Subject: [PATCH 09/12] Convert symlinks to junctions on Windows before Signed-off-by: Vasilij Litvinov --- - python/setup.py | 36 ++++++++++++++++++++++++++++++++++++ - 1 file changed, 36 insertions(+) + python/setup.py | 40 ++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 40 insertions(+) diff --git a/python/setup.py b/python/setup.py -index 024657039..7a225f72d 100644 +index 024657039..1e8ae41f7 100644 --- a/python/setup.py +++ b/python/setup.py -@@ -225,6 +225,41 @@ def download_pickle5(pickle5_dir): +@@ -225,6 +225,45 @@ def download_pickle5(pickle5_dir): finally: wzf.close() @@ -26,11 +26,8 @@ index 024657039..7a225f72d 100644 + root_dir = os.path.dirname(__file__) + for link, default in _LINKS.items(): + path = os.path.join(root_dir, link) -+ if os.path.exists(os.path.join(path, '__init__.py')): -+ print('"{}" does not need workarounds, skipping'.format(link)) -+ continue + try: -+ out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) ++ out = subprocess.check_output('DIR /A:LD /B', shell=True, cwd=os.path.dirname(path)) + except subprocess.CalledProcessError: + out = b'' + if os.path.basename(path) in out.decode('utf8').splitlines(): @@ -43,7 +40,14 @@ index 024657039..7a225f72d 100644 + os.unlink(path) + elif os.path.isdir(path): + target = default -+ os.rmdir(path) ++ try: ++ # unlink() works on links as well as on regular files, ++ # and links to directories are considered directories now ++ os.unlink(path) ++ except OSError as err: ++ if err.errno != errno.EIO: ++ raise ++ os.rmdir(path) + else: + raise ValueError('Unexpected type of entry: "{}"'.format(path)) + target = os.path.abspath(os.path.join(os.path.dirname(path), target)) @@ -55,7 +59,7 @@ index 024657039..7a225f72d 100644 def build(build_python, build_java): if tuple(sys.version_info[:2]) not in SUPPORTED_PYTHONS: -@@ -243,6 +278,7 @@ def build(build_python, build_java): +@@ -243,6 +282,7 @@ def build(build_python, build_java): bazel_env = dict(os.environ, PYTHON3_BIN_PATH=sys.executable) if is_native_windows_or_msys(): diff --git a/recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch b/recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch index 09770a9780239..f9d8029d3e435 100644 --- a/recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch +++ b/recipes/ray-packages/patches/0010-Add-workaround-for-os.path.isdir-on-Windows.patch @@ -1,15 +1,15 @@ -From 3f509f32d4c3014486e98aa03405335d611bc8f0 Mon Sep 17 00:00:00 2001 +From a198dddb9786a10c2eb2470f68bfe50a21d1565b Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Mon, 23 Nov 2020 13:14:24 +0300 Subject: [PATCH 10/12] Add workaround for os.path.isdir on Windows Signed-off-by: Vasilij Litvinov --- - python/setup.py | 20 +++++++++++++++++++- - 1 file changed, 19 insertions(+), 1 deletion(-) + python/setup.py | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) diff --git a/python/setup.py b/python/setup.py -index 7a225f72d..862e6ae94 100644 +index 1e8ae41f7..3ad34870a 100644 --- a/python/setup.py +++ b/python/setup.py @@ -225,6 +225,24 @@ def download_pickle5(pickle5_dir): @@ -37,15 +37,7 @@ index 7a225f72d..862e6ae94 100644 def replace_symlinks_with_junctions(): _LINKS = { r'ray\new_dashboard': '../../dashboard', -@@ -235,7 +253,6 @@ def replace_symlinks_with_junctions(): - for link, default in _LINKS.items(): - path = os.path.join(root_dir, link) - if os.path.exists(os.path.join(path, '__init__.py')): -- print('"{}" does not need workarounds, skipping'.format(link)) - continue - try: - out = subprocess.check_output('DIR /A:L /B', shell=True, cwd=os.path.dirname(path)) -@@ -259,6 +276,7 @@ def replace_symlinks_with_junctions(): +@@ -263,6 +281,7 @@ def replace_symlinks_with_junctions(): subprocess.check_call('MKLINK /J "{}" "{}"'.format(os.path.basename(link), target), shell=True, cwd=os.path.dirname(path)) if is_native_windows_or_msys(): diff --git a/recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch b/recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch index 6efb37dc941b6..823a29598b144 100644 --- a/recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch +++ b/recipes/ray-packages/patches/0011-Include-process.h-for-getpid-explicitly-on-Windows.patch @@ -1,4 +1,4 @@ -From 58db1bb52d2fa598d1be413ab0324a1c6cfa4960 Mon Sep 17 00:00:00 2001 +From 479036d8d6e4ab66599f970e2743c4f6e04768c5 Mon Sep 17 00:00:00 2001 From: Vasilij Litvinov Date: Tue, 24 Nov 2020 00:20:34 +0300 Subject: [PATCH 11/12] Include for getpid() explicitly on Windows diff --git a/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch b/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch index 404bd62d26f9c..a5917814f85c3 100644 --- a/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch +++ b/recipes/ray-packages/patches/0012-Empty-install-requirements-installed-by-conda-build.patch @@ -1,4 +1,4 @@ -From 3d53c6d31d05f1c098a99f0ff29f9dcb3d70c7b1 Mon Sep 17 00:00:00 2001 +From f7b0ac4a4e8decb49ddc54ba8666d986091d2829 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Fri, 4 Dec 2020 12:49:34 +0300 Subject: [PATCH 12/12] Empty install requirements - installed by conda build @@ -9,7 +9,7 @@ Signed-off-by: Vasily Litvinov 1 file changed, 2 insertions(+), 26 deletions(-) diff --git a/python/setup.py b/python/setup.py -index 862e6ae94..8a63bfac2 100644 +index 3ad34870a..bd7762372 100644 --- a/python/setup.py +++ b/python/setup.py @@ -128,31 +128,7 @@ extras["all"] = list(set(chain.from_iterable(extras.values()))) @@ -45,7 +45,7 @@ index 862e6ae94..8a63bfac2 100644 def is_native_windows_or_msys(): -@@ -517,7 +493,7 @@ setuptools.setup( +@@ -522,7 +498,7 @@ setuptools.setup( # The BinaryDistribution argument triggers build_ext. distclass=BinaryDistribution, install_requires=install_requires, From 624613ce54b6a19fe82ad8236708112a4c571c38 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Wed, 9 Dec 2020 01:01:23 +0300 Subject: [PATCH 77/77] Adjust selectors styling Signed-off-by: Vasily Litvinov --- recipes/ray-packages/meta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes/ray-packages/meta.yaml b/recipes/ray-packages/meta.yaml index 8eb0ef0840e4c..6f17e0af38648 100644 --- a/recipes/ray-packages/meta.yaml +++ b/recipes/ray-packages/meta.yaml @@ -155,7 +155,7 @@ outputs: - tabulate - tensorboardX - pandas - - dataclasses # [py < 37] + - dataclasses # [py<37] - atari_py - dm-tree - gym-atari @@ -183,7 +183,7 @@ outputs: - flask - requests - pydantic <1.7 - - dataclasses # [py < 37] + - dataclasses # [py<37] test: imports: - ray.serve @@ -201,7 +201,7 @@ outputs: - tabulate - tensorboardX - pandas - - dataclasses # [py < 37] + - dataclasses # [py<37] test: imports: - ray.tune