Hi Alejandro,

On 2020/5/19 下午3:22, Alejandro Hernandez Samaniego wrote:
Hello,

The more I look into this, the more I realize its incorrect.

Understood your concern.



On 5/18/20 8:36 AM, Alejandro Hernandez wrote:

Hello Mingli,

Did you happen to run the create_manifest task after modifying the manifest to make sure that runtime dependencies are still valid?


Thanks

Alejandro

On 5/18/20 12:32 AM, Yu, Mingli wrote:
From: Mingli Yu<[email protected]>

Add pydoc and urllib to core to fix below error:
  # python3
  >>> help()
  Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python3.8/sitebuiltins.py", line 102, in __call_
  import pydoc
  ModuleNotFoundError: No module named 'pydoc'
  File "/usr/lib64/python3.8/pydoc.py", line 72, in <module>
  import urllib.parse
  ModuleNotFoundError: No module named 'urllib'

Why would pydoc be required to run python? or urllib in any case?


It's better make the python3-core more lightweight.

But in a system which didn't install other python modules but just python3-core, then we type help() as below and the help cannot show normally. So add the needed pydoc and urllib file to make the help() works.

 # python3
 >>> help()
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "/usr/lib64/python3.8/sitebuiltins.py", line 102, in __call_
 import pydoc
 ModuleNotFoundError: No module named 'pydoc'
 File "/usr/lib64/python3.8/pydoc.py", line 72, in <module>
 import urllib.parse
 ModuleNotFoundError: No module named 'urllib'


After pydoc and urllib added and also just install python3-core and no additional python3 modules installed.

# python3
Python 3.8.2 (default, May 18 2020, 07:15:10)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> help()
Welcome to Python 3.8's help utility!

If this is your first time using Python, you should definitely check out
the tutorial on the Internet at https://docs.python.org/3.8/tutorial/.

Enter the name of any module, keyword, or topic to get help on writing
Python programs and using Python modules.  To quit this help utility and
return to the interpreter, just type "quit".

To get a list of available modules, keywords, symbols, or topics, type
"modules", "keywords", "symbols", or "topics".  Each module also comes
with a one-line summary of what it does; to list the modules whose name
or summary contain a given string such as "spam", type "modules spam".
help>


Thanks,


I believe there is a discrepancy between what python3-core does and what you 
believe it should do.
python3-core is the smallest possible package to get a working python3 
interpreter, if you install python3-core
thats what you get, if you need more modules then you install more modules, 
e.g. python3-pydoc, python3-netlib,
this way it allows us to keep installation size at minimum.

If what you want is to get a fully working python3 interpreter, without adding 
any new packages to the installation,
then you need to install the python3 package (no core), this will in fact 
install python3-modules which contains
all the modules, including python3-pydoc and python3-neclient which is the one 
that provides urllib.

Cheers,

Alejandro

Signed-off-by: Mingli Yu<[email protected]>
---
  .../python/python3/python3-manifest.json      | 24 +++++--------------
  meta/recipes-devtools/python/python3_3.8.2.bb |  3 +--
  2 files changed, 7 insertions(+), 20 deletions(-)

diff --git a/meta/recipes-devtools/python/python3/python3-manifest.json 
b/meta/recipes-devtools/python/python3/python3-manifest.json
index 3bcc9b8662..808eadb8f6 100644
--- a/meta/recipes-devtools/python/python3/python3-manifest.json
+++ b/meta/recipes-devtools/python/python3/python3-manifest.json
@@ -203,6 +203,7 @@
              "${bindir}/python${PYTHON_MAJMIN}",
              "${bindir}/python${PYTHON_MAJMIN}.real",
              "${bindir}/python3",
+            "${bindir}/pydoc*",
              "${includedir}/python${PYTHON_MAJMIN}/pyconfig*.h",
              "${libdir}/python${PYTHON_MAJMIN}/UserDict.py",
              "${libdir}/python${PYTHON_MAJMIN}/UserList.py",
@@ -289,6 +290,7 @@
              "${libdir}/python${PYTHON_MAJMIN}/pkgutil.py",
              "${libdir}/python${PYTHON_MAJMIN}/platform.py",
              "${libdir}/python${PYTHON_MAJMIN}/posixpath.py",
+            "${libdir}/python${PYTHON_MAJMIN}/pydoc.py",
              "${libdir}/python${PYTHON_MAJMIN}/re.py",
              "${libdir}/python${PYTHON_MAJMIN}/reprlib.py",
              "${libdir}/python${PYTHON_MAJMIN}/rlcompleter.py",
@@ -313,8 +315,11 @@
              "${libdir}/python${PYTHON_MAJMIN}/tokenize.py",
              "${libdir}/python${PYTHON_MAJMIN}/traceback.py",
              "${libdir}/python${PYTHON_MAJMIN}/types.py",
+            "${libdir}/python${PYTHON_MAJMIN}/urllib",
+            "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__",
              "${libdir}/python${PYTHON_MAJMIN}/warnings.py",
              "${libdir}/python${PYTHON_MAJMIN}/weakref.py",
+            "${libdir}/python${PYTHON_MAJMIN}/pydoc_data",
              "${prefix}/lib/python${PYTHON_MAJMIN}/config*/*[!.a]"
          ],
          "cached": [
@@ -363,6 +368,7 @@
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pkgutil.*.pyc",
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/platform.*.pyc",
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/posixpath.*.pyc",
+            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pydoc.*.pyc",
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/re.*.pyc",
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/reprlib.*.pyc",
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/rlcompleter.*.pyc",
@@ -798,7 +804,6 @@
              "plistlib",
              "pprint",
              "profile",
-            "pydoc",
              "resource",
              "shell",
              "smtpd",
@@ -857,8 +862,6 @@
              "${libdir}/python${PYTHON_MAJMIN}/poplib.py",
              "${libdir}/python${PYTHON_MAJMIN}/smtplib.py",
              "${libdir}/python${PYTHON_MAJMIN}/telnetlib.py",
-            "${libdir}/python${PYTHON_MAJMIN}/urllib",
-            "${libdir}/python${PYTHON_MAJMIN}/urllib/__pycache__",
              "${libdir}/python${PYTHON_MAJMIN}/uuid.py"
          ],
          "cached": [
@@ -989,21 +992,6 @@
              "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pstats.*.pyc"
          ]
      },
-    "pydoc": {
-        "summary": "Python interactive help support",
-        "rdepends": [
-            "core",
-            "netclient"
-        ],
-        "files": [
-            "${bindir}/pydoc*",
-            "${libdir}/python${PYTHON_MAJMIN}/pydoc.py",
-            "${libdir}/python${PYTHON_MAJMIN}/pydoc_data"
-        ],
-        "cached": [
-            "${libdir}/python${PYTHON_MAJMIN}/__pycache__/pydoc.*.pyc"
-        ]
-    },
      "resource": {
          "summary": "Python resource control interface",
          "rdepends": [
diff --git a/meta/recipes-devtools/python/python3_3.8.2.bb 
b/meta/recipes-devtools/python/python3_3.8.2.bb
index a4a16fd495..36aa54ba6c 100644
--- a/meta/recipes-devtools/python/python3_3.8.2.bb
+++ b/meta/recipes-devtools/python/python3_3.8.2.bb
@@ -318,7 +318,6 @@ RRECOMMENDS_${PN}-crypt_append_class-nativesdk = " openssl 
ca-certificates"
  FILES_${PN} = ""
  RPROVIDES_${PN}-modules = "${PN}"
-FILES_${PN}-pydoc += "${bindir}/pydoc${PYTHON_MAJMIN} ${bindir}/pydoc3"
  FILES_${PN}-idle += "${bindir}/idle3 ${bindir}/idle${PYTHON_MAJMIN}"
# provide python-pyvenv from python3-venv
@@ -332,7 +331,7 @@ INSANE_SKIP_${PN}-dev += "dev-elf"
# catch all the rest (unsorted)
  PACKAGES += "${PN}-misc"
-RDEPENDS_${PN}-misc += "python3-core python3-email python3-codecs python3-pydoc 
python3-pickle python3-audio"
+RDEPENDS_${PN}-misc += "python3-core python3-email python3-codecs python3-pickle 
python3-audio"
  RDEPENDS_${PN}-modules_append_class-target = " python3-misc"
  RDEPENDS_${PN}-modules_append_class-nativesdk = " python3-misc"
  FILES_${PN}-misc = "${libdir}/python${PYTHON_MAJMIN} 
${libdir}/python${PYTHON_MAJMIN}/lib-dynload"



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#138456): 
https://lists.openembedded.org/g/openembedded-core/message/138456
Mute This Topic: https://lists.openembedded.org/mt/74286776/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to