Repository: kubeflow/kfp-tekton (language: python)

Issue:
kfp dependency pin in 1.0.0 breaks pipeline version upload API calls
/kind bug

**What steps did you take and what happened:**
`kfp-tekton 1.0` sdk is pinned to [`kfp==1.7.2`](https://github.com/kubeflow/kfp-tekton/blob/master/sdk/python/setup.py#L57), which causes https://github.com/elyra-ai/elyra/issues/2085 (generally speaking upload of pipeline _versions_ will always fail). Would a pin to a later version be possible so Elyra can start using kfp-tekton > 0.8.x?

**What did you expect to happen:**


**Additional information:**
[Miscellaneous information that will assist in solving the issue.]


**Environment:**

* Python Version (use `python --version`):
* SDK Version: 
* Tekton Version (use `tkn version`):
* Kubernetes Version (use `kubectl version`):
* OS (e.g. from `/etc/os-release`):



Discussion / hints:
@ptitzler which kfp version elyra is using right now? We can have a 1.0.1 release on the new kfp version because that bug was fixed after we published our initial SDK release. 
We relaxed our dependency to [`kfp>=1.6.3<2.0`](https://github.com/elyra-ai/elyra/blob/master/setup.py#L97) because users reported the need to use more current versions. We haven't had a chance yet to verify that the most recent 1.8 version works as expected .
@ptitzler In our release test, kfp 1.7.1 and 1.7.2 produces the same yaml but have different python dependencies. If kfp 1.7.1 works for you we can relax the dependency range to `kfp>=1.7.1<1.8`
on kfp 1.7.0, there was a bug with pipeline not producing the default values, and it was breaking some of our pipelines.
1.7.1 worked just fine in the past

Fix patch:
diff --git a/sdk/README.md b/sdk/README.md
index de7a463359..896c8db197 100644
--- a/sdk/README.md
+++ b/sdk/README.md
@@ -5,7 +5,7 @@
 
 # Kubeflow Pipelines SDK for Tekton
 
-The Kubeflow Pipelines [SDK](https://www.kubeflow.org/docs/pipelines/sdk/sdk-overview/)
+The Kubeflow Pipelines [SDK](https://www.kubeflow.org/docs/components/pipelines/sdk/sdk-overview/)
 allows data scientists to define end-to-end machine learning and data pipelines.
 The output of the Kubeflow Pipelines SDK compiler is YAML for [Argo](https://github.com/argoproj/argo-workflows).
 
diff --git a/sdk/python/README.md b/sdk/python/README.md
index d03930edd7..1c74aed2da 100644
--- a/sdk/python/README.md
+++ b/sdk/python/README.md
@@ -108,8 +108,8 @@ the Tekton YAML instead of Argo YAML. Since the KFP SDK was not designed and imp
 _monkey-patching_ was used to replace non-class methods and functions at runtime.
 
 In order for the _monkey patch_ to work properly, the `kfp-tekton` compiler source code has to be aligned with a
-specific version of the `kfp` SDK compiler. As of now the `kfp-tekton` SDK version is `1.0.0` which is aligned with KFP
-SDK version [`1.7.2`](https://pypi.org/project/kfp/1.7.2/).
+specific version of the `kfp` SDK compiler. As of now the `kfp-tekton` SDK version is `1.0.1` which is aligned with KFP
+SDK version [`1.7.1`](https://pypi.org/project/kfp/1.7.1/) and [`1.7.2`](https://pypi.org/project/kfp/1.7.2/).
 
 
 ## Adding New Code
diff --git a/sdk/python/kfp_tekton/__init__.py b/sdk/python/kfp_tekton/__init__.py
index d6aab07f06..9b30923cff 100644
--- a/sdk/python/kfp_tekton/__init__.py
+++ b/sdk/python/kfp_tekton/__init__.py
@@ -12,7 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-__version__ = '1.0.0'
+__version__ = '1.0.1'
 
 from ._client import TektonClient  # noqa F401
 from .k8s_client_helper import env_from_secret  # noqa F401
diff --git a/sdk/python/requirements.in b/sdk/python/requirements.in
index ca8c26c4ed..8d34281928 100644
--- a/sdk/python/requirements.in
+++ b/sdk/python/requirements.in
@@ -1,1 +1,1 @@
-kfp==1.7.2
+kfp>=1.7.1<1.8.0
diff --git a/sdk/python/setup.py b/sdk/python/setup.py
index 5ecc8b0b05..fa736dc830 100644
--- a/sdk/python/setup.py
+++ b/sdk/python/setup.py
@@ -20,14 +20,14 @@
 #
 # To create a distribution for PyPi run:
 #
-#    $ export KFP_TEKTON_VERSION=1.0.0-rc1
+#    $ export KFP_TEKTON_VERSION=1.0.1-rc1
 #    $ python3 setup.py sdist
 #    $ twine check dist/kfp-tekton-${KFP_TEKTON_VERSION/-rc/rc}.tar.gz
 #    $ twine upload --repository pypi dist/kfp-tekton-${KFP_TEKTON_VERSION/-rc/rc}.tar.gz
 #
 #   ... or:
 #
-#    $ make distribution KFP_TEKTON_VERSION=1.0.0-rc1
+#    $ make distribution KFP_TEKTON_VERSION=1.0.1-rc1
 #
 # =============================================================================
 
@@ -54,7 +54,7 @@
 # NOTICE, after any updates to the following, ./requirements.in should be updated
 # accordingly.
 REQUIRES = [
-    "kfp==1.7.2",
+    "kfp>=1.7.1,<1.8.0",
 ]
 
 TESTS_REQUIRE = [


Test patch:
diff --git a/sdk/python/tests/README.md b/sdk/python/tests/README.md
index d19752b7f6..57fd6a4c12 100644
--- a/sdk/python/tests/README.md
+++ b/sdk/python/tests/README.md
@@ -141,4 +141,5 @@ Occurences of other Errors:
 ## Disclaimer
 
 **Note:** The reports above were created for the pipeline scripts found in KFP SDK version `1.7.2` since
-the `kfp_tekton` `1.0.0` compiler code is based on the `kfp` SDK compiler version `1.7.2`.
+the `kfp_tekton` `1.0.1` compiler code is based on the `kfp` SDK compiler version greater than or equals to
+`1.7.1` and less than `1.8.0`.
diff --git a/sdk/python/tests/compiler/testdata/resourceop_basic.yaml b/sdk/python/tests/compiler/testdata/resourceop_basic.yaml
index 312df32784..9161d76b0e 100644
--- a/sdk/python/tests/compiler/testdata/resourceop_basic.yaml
+++ b/sdk/python/tests/compiler/testdata/resourceop_basic.yaml
@@ -64,7 +64,7 @@ spec:
             is failure.
           name: failure-condition
           type: string
-        - default: aipipeline/kubectl-wrapper:1.0.0
+        - default: aipipeline/kubectl-wrapper:1.0.1
           description: Kubectl wrapper image
           name: image
           type: string
diff --git a/sdk/python/tests/compiler/testdata/resourceop_basic_noninlined.yaml b/sdk/python/tests/compiler/testdata/resourceop_basic_noninlined.yaml
index 312df32784..9161d76b0e 100644
--- a/sdk/python/tests/compiler/testdata/resourceop_basic_noninlined.yaml
+++ b/sdk/python/tests/compiler/testdata/resourceop_basic_noninlined.yaml
@@ -64,7 +64,7 @@ spec:
             is failure.
           name: failure-condition
           type: string
-        - default: aipipeline/kubectl-wrapper:1.0.0
+        - default: aipipeline/kubectl-wrapper:1.0.1
           description: Kubectl wrapper image
           name: image
           type: string
diff --git a/sdk/python/tests/compiler/testdata/volume_op.yaml b/sdk/python/tests/compiler/testdata/volume_op.yaml
index b3f4f1a6f2..90222044a2 100644
--- a/sdk/python/tests/compiler/testdata/volume_op.yaml
+++ b/sdk/python/tests/compiler/testdata/volume_op.yaml
@@ -76,7 +76,7 @@ spec:
             is failure.
           name: failure-condition
           type: string
-        - default: aipipeline/kubectl-wrapper:1.0.0
+        - default: aipipeline/kubectl-wrapper:1.0.1
           description: Kubectl wrapper image
           name: image
           type: string
diff --git a/sdk/python/tests/compiler/testdata/volume_op_noninlined.yaml b/sdk/python/tests/compiler/testdata/volume_op_noninlined.yaml
index b3f4f1a6f2..90222044a2 100644
--- a/sdk/python/tests/compiler/testdata/volume_op_noninlined.yaml
+++ b/sdk/python/tests/compiler/testdata/volume_op_noninlined.yaml
@@ -76,7 +76,7 @@ spec:
             is failure.
           name: failure-condition
           type: string
-        - default: aipipeline/kubectl-wrapper:1.0.0
+        - default: aipipeline/kubectl-wrapper:1.0.1
           description: Kubectl wrapper image
           name: image
           type: string