On Fri, 11 Nov 2016 11:24:25 +0900
Iwase Yusuke <[email protected]> wrote:
> Hi Iwamoto-San,
>
>
> On 2016年11月11日 11:11, IWAMOTO Toshihiro wrote:
>> At Tue, 8 Nov 2016 17:13:46 +0900,
>> IWASE Yusuke wrote:
>>>
>>> Currently, in addition to "requirements for tests", test-requires
>>> includes "optional requirements".
>>> This makes it unclear to identify which packages are surely required
>>> to use optional features (e.g., RPC, OF-Config, OVSDB) and causes
>>> the redundant installation when building Docker images.
>>>
>>> This patch separates test-requires into two files("test requirements"
>>> and "optional requirements").
>>>
>>> Also, this patch reverts the version fixation for some packages.
>>>
>>> Signed-off-by: IWASE Yusuke <[email protected]>
>>> ---
>>> README.rst | 11 +++++------
>>> tools/install_venv.py | 3 +++
>>> tools/optional-requires | 5 +++++
>>> tools/test-requires | 6 ------
>>> tox.ini | 1 +
>>> 5 files changed, 14 insertions(+), 12 deletions(-)
>>> create mode 100644 tools/optional-requires
>>>
>>> diff --git a/README.rst b/README.rst
>>> index 77df3b3..89f8021 100644
>>> --- a/README.rst
>>> +++ b/README.rst
>>> @@ -35,16 +35,15 @@ Optional Requirements
>>>
>>> Some functionalities of ryu requires extra packages:
>>>
>>> -- OF-Config requires lxml
>>> +- OF-Config requires lxml and ncclient
>>> - NETCONF requires paramiko
>>> -- BGP speaker (ssh console) requires paramiko
>>> -- OVSDB support requires ovs (Note: python 3.4 requires ovs>=2.6.0.dev0)
>>> +- BGP speaker (SSH console, RPC API) requires paramiko and tinyrpc
>>>
>>> If you want to use the functionalities, please install requirements::
>>>
>>> - % pip install lxml
>>> - % pip install paramiko
>>> - % pip install ovs
>>> + % pip install -r tools/optional-requires
>>> +
>>> +Please refer to tools/optional-requires for details.
>>>
>>>
>>> Support
>>> diff --git a/tools/install_venv.py b/tools/install_venv.py
>>> index 09b321b..2963980 100644
>>> --- a/tools/install_venv.py
>>> +++ b/tools/install_venv.py
>>> @@ -31,6 +31,7 @@ import sys
>>> ROOT = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
>>> VENV = os.path.join(ROOT, '.venv')
>>> PIP_REQUIRES = os.path.join(ROOT, 'tools', 'pip-requires')
>>> +OPTIONAL_REQUIRES = os.path.join(ROOT, 'tools', 'optional-requires')
>>> TEST_REQUIRES = os.path.join(ROOT, 'tools', 'test-requires')
>>> PY_VERSION = "python%s.%s" % (sys.version_info[0], sys.version_info[1])
>>>
>>> @@ -95,6 +96,8 @@ def install_dependencies(venv=VENV):
>>> run_command(['tools/with_venv.sh', 'pip', 'install', '-r',
>>> PIP_REQUIRES], redirect_output=False)
>>> run_command(['tools/with_venv.sh', 'pip', 'install', '-r',
>>> + OPTIONAL_REQUIRES], redirect_output=False)
>>> + run_command(['tools/with_venv.sh', 'pip', 'install', '-r',
>>> TEST_REQUIRES], redirect_output=False)
>>>
>>> # Tell the virtual env how to "import quantum"
>>> diff --git a/tools/optional-requires b/tools/optional-requires
>>> new file mode 100644
>>> index 0000000..7d9e44f
>>> --- /dev/null
>>> +++ b/tools/optional-requires
>>> @@ -0,0 +1,5 @@
>>> +lxml # OF-Config
>>> +ncclient # OF-Config
>>> +cryptography!=1.5.2 # Required by paramiko
>>> +paramiko # NETCONF, BGPSpeaker SSH console
>>> +tinyrpc # RPC API
>>
>> tinyrpc is required by ryu.base.app_manager, so this should go to
>> pip-requires, IMO.
>>
>> Ryu-4.8 breaks OpenStack Neutron.
>>
>> http://logs.openstack.org/56/394156/8/check/gate-grenade-dsvm-neutron-multinode/532be1c/logs/new/screen-q-agt.txt.gz
>
> Yes, tinyrpc is required.
> I moved it to pip-requires in my v4 patch.
> [PATCH v4 00/10] RPC: Improvements for Python 3
>
> And I'm sorry, this bug is caused by removing the embedded tinyrpc in my
> patch.
>
> https://sourceforge.net/p/ryu/mailman/ryu-devel/thread/20161104.100550.625859878544528354.tomof%40acm.org/
Can you send a simple patch to just add tinyrpc to pip-requires?
Then, I'll create a special release for OpenStack on pypi.
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel