(view as text)
src/python/osrf/app.py:168: [R, Application.sysmethod_time] Method could be a function
src/python/osrf/app.py:172: [R, Application.sysmethod_echo] Method could be a function
src/python/osrf/gateway.py:71: [R, JSONGatewayRequest.getFormat] Method could be a function
src/python/osrf/gateway.py:94: [R, JSONGatewayRequest.encodeParam] Method could be a function
src/python/osrf/gateway.py:102: [R, XMLGatewayRequest.getFormat] Method could be a function
src/python/osrf/gateway.py:108: [R, XMLGatewayRequest.handleResponse] Method could be a function
src/python/osrf/gateway.py:120: [R, XMLGatewayRequest.encodeParam] Method could be a function
src/python/osrf/gateway.py:137: [R, XMLGatewayParser.__getAttr] Method could be a function
src/python/osrf/gateway.py:143: [R, XMLGatewayParser.startElement] Too many return statements (7/6)
src/python/osrf/http_translator.py:105: [R, HTTPTranslator] Too many instance attributes (16/7)
src/python/osrf/http_translator.py:160: [R, HTTPTranslator.process] Too many return statements (8/6)
src/python/osrf/http_translator.py:160: [R, HTTPTranslator.process] Too many branches (16/12)
src/python/osrf/net_obj.py:11: [R, NetworkRegistry] Too few public methods (1/2)
src/python/osrf/net_obj.py:196: [R, __to_xml] Too many return statements (7/6)
src/python/osrf/net_obj.py:196: [R, __to_xml] Too many branches (15/12)
src/python/osrf/net.py:190: [R, Network.stream_closed] Method could be a function
src/python/osrf/net.py:193: [R, Network.stream_error] Method could be a function
src/python/osrf/net.py:197: [R, Network.disconnected] Method could be a function
src/python/osrf/server.py:33: [R, Controller] Too many instance attributes (13/7)
src/python/osrf/ses.py:66: [R, Session.wait] Method could be a function
src/python/osrf/ses.py:94: [R, ClientSession] Too many instance attributes (8/7)
src/python/osrf/ses.py:239: [R, Request.__init__] Too many arguments (6/5)
src/python/osrf/ses.py:238: [R, Request] Too few public methods (0/2)
src/python/osrf/ses.py:254: [R, ClientRequest.__init__] Too many arguments (6/5)
src/python/osrf/ses.py:469: [R, MultiSession.Container] Too few public methods (0/2)
src/python/osrf/apps/example.py:40: [R, Example.reverse] Method could be a function
src/python/osrf/apps/example.py:59: [R, Example.session_test] Method could be a function
src/python/osrf/apps/example.py:73: [R, Example.callback_test] Method could be a function
Report
======
2024 statements analysed.
Duplication
-----------
+-------------------------+------+---------+-----------+
| |now |previous |difference |
+=========================+======+=========+===========+
|nb duplicated lines |0 |0 |= |
+-------------------------+------+---------+-----------+
|percent duplicated lines |0.000 |0.000 |= |
+-------------------------+------+---------+-----------+
Raw metrics
-----------
+----------+-------+------+---------+-----------+
|type |number |% |previous |difference |
+==========+=======+======+=========+===========+
|code |2237 |67.93 |2237 |= |
+----------+-------+------+---------+-----------+
|docstring |391 |11.87 |391 |= |
+----------+-------+------+---------+-----------+
|comment |345 |10.48 |345 |= |
+----------+-------+------+---------+-----------+
|empty |320 |9.72 |320 |= |
+----------+-------+------+---------+-----------+
Statistics by type
------------------
+---------+-------+-----------+-----------+------------+---------+
|type |number |old number |difference |%documented |%badname |
+=========+=======+===========+===========+============+=========+
|module |19 |19 |= |10.53 |0.00 |
+---------+-------+-----------+-----------+------------+---------+
|class |38 |38 |= |55.26 |0.00 |
+---------+-------+-----------+-----------+------------+---------+
|method |165 |165 |= |66.67 |11.52 |
+---------+-------+-----------+-----------+------------+---------+
|function |62 |62 |= |64.52 |0.00 |
+---------+-------+-----------+-----------+------------+---------+
External dependencies
---------------------
::
libxml2 (osrf.net)
osrf
\-app (opensrf,osrf.stack,osrf.server)
| \-Application (osrf.apps.example)
\-cache (osrf.system,osrf.http_translator)
\-conf (osrf.ses,osrf.system,osrf.http_translator,osrf.server)
\-const (osrf.ses,osrf.stack,osrf.server)
| \-OSRF_APP_SESSION_CONNECTED (osrf.ses)
| \-OSRF_APP_SESSION_CONNECTING (osrf.ses)
| \-OSRF_APP_SESSION_DISCONNECTED (osrf.ses)
| \-OSRF_APP_SETTINGS (osrf.set)
| \-OSRF_JSON_CLASS_KEY (osrf.json,osrf.net_obj)
| \-OSRF_JSON_PAYLOAD_KEY (osrf.json,osrf.net_obj)
| \-OSRF_LOG_ACT (osrf.log)
| \-OSRF_LOG_DEBUG (osrf.log)
| \-OSRF_LOG_ERR (osrf.log)
| \-OSRF_LOG_INFO (osrf.log)
| \-OSRF_LOG_INTERNAL (osrf.log)
| \-OSRF_LOG_TYPE_FILE (osrf.log)
| \-OSRF_LOG_TYPE_STDERR (osrf.log)
| \-OSRF_LOG_TYPE_SYSLOG (osrf.log)
| \-OSRF_LOG_WARN (osrf.log)
| \-OSRF_MESSAGE_TYPE_CONNECT (osrf.ses,osrf.http_translator)
| \-OSRF_MESSAGE_TYPE_DISCONNECT (osrf.ses,osrf.http_translator)
| \-OSRF_MESSAGE_TYPE_REQUEST (osrf.ses,osrf.http_translator)
| \-OSRF_MESSAGE_TYPE_RESULT (osrf.ses)
| \-OSRF_MESSAGE_TYPE_STATUS (osrf.ses,osrf.http_translator)
| \-OSRF_METHOD_GET_HOST_CONFIG (osrf.set)
| \-OSRF_STATUS_CONTINUE (osrf.http_translator)
| \-OSRF_STATUS_TIMEOUT (osrf.http_translator)
\-ex (osrf.ses,osrf.set,osrf.net,osrf.stack,osrf.conf)
\-json (osrf.ses,opensrf,osrf.app,osrf.http_translator,osrf.stack,osrf.xml_obj)
| \-to_json (osrf.cache)
| \-to_object (osrf.cache,osrf.gateway)
\-log (osrf.ses,osrf.net,osrf.cache,osrf.system,osrf.app,osrf.server,osrf.apps.example,osrf.json,osrf.stack,osrf.gateway,osrf.http_translator)
\-net (osrf.ses,osrf.http_translator,osrf.server)
| \-Network (osrf.system)
| \-get_network_handle (osrf.system)
| \-set_network_handle (osrf.system)
\-net_obj (osrf.ses,osrf.set,osrf.conf)
| \-NetworkObject (osrf.gateway,osrf.json)
| \-new_object_from_hint (osrf.gateway)
| \-parse_net_object (osrf.json)
\-server (opensrf)
\-ses (osrf.set,osrf.app,osrf.stack)
\-set (opensrf,osrf.system,osrf.http_translator)
\-stack (osrf.system,osrf.server)
\-system (opensrf,osrf.http_translator,osrf.server)
\-xml_obj (osrf.conf)
simplejson (osrf.json)
Messages by category
--------------------
+-----------+-------+---------+-----------+
|type |number |previous |difference |
+===========+=======+=========+===========+
|convention |250 |250 |= |
+-----------+-------+---------+-----------+
|refactor |28 |28 |= |
+-----------+-------+---------+-----------+
|warning |87 |87 |= |
+-----------+-------+---------+-----------+
|error |28 |28 |= |
+-----------+-------+---------+-----------+
% errors / warnings by module
-----------------------------
+---------------------+------+--------+---------+-----------+
|module |error |warning |refactor |convention |
+=====================+======+========+=========+===========+
|osrf.ses |39.29 |10.34 |21.43 |16.40 |
+---------------------+------+--------+---------+-----------+
|osrf.net |28.57 |2.30 |10.71 |7.20 |
+---------------------+------+--------+---------+-----------+
|osrf.gateway |14.29 |11.49 |25.00 |21.60 |
+---------------------+------+--------+---------+-----------+
|osrf.net_obj |3.57 |11.49 |10.71 |3.20 |
+---------------------+------+--------+---------+-----------+
|osrf.server |3.57 |9.20 |3.57 |0.00 |
+---------------------+------+--------+---------+-----------+
|osrf.app |3.57 |8.05 |7.14 |4.00 |
+---------------------+------+--------+---------+-----------+
|osrf.xml_obj |3.57 |3.45 |0.00 |2.80 |
+---------------------+------+--------+---------+-----------+
|osrf.json |3.57 |0.00 |0.00 |2.80 |
+---------------------+------+--------+---------+-----------+
|osrf.log |0.00 |12.64 |0.00 |8.00 |
+---------------------+------+--------+---------+-----------+
|osrf.http_translator |0.00 |6.90 |10.71 |6.40 |
+---------------------+------+--------+---------+-----------+
|opensrf |0.00 |6.90 |0.00 |6.40 |
+---------------------+------+--------+---------+-----------+
|osrf.cache |0.00 |6.90 |0.00 |4.00 |
+---------------------+------+--------+---------+-----------+
|osrf.system |0.00 |4.60 |0.00 |2.00 |
+---------------------+------+--------+---------+-----------+
|osrf.set |0.00 |2.30 |0.00 |1.60 |
+---------------------+------+--------+---------+-----------+
|osrf.conf |0.00 |2.30 |0.00 |1.20 |
+---------------------+------+--------+---------+-----------+
|osrf.ex |0.00 |1.15 |0.00 |1.20 |
+---------------------+------+--------+---------+-----------+
Messages
--------
+-----------+------------+
|message id |occurrences |
+===========+============+
|C0111 |111 |
+-----------+------------+
|C0103 |68 |
+-----------+------------+
|C0301 |61 |
+-----------+------------+
|E1101 |26 |
+-----------+------------+
|R0201 |15 |
+-----------+------------+
|W0603 |11 |
+-----------+------------+
|W0212 |8 |
+-----------+------------+
|C0321 |8 |
+-----------+------------+
|W0702 |7 |
+-----------+------------+
|W0602 |7 |
+-----------+------------+
|F0401 |7 |
+-----------+------------+
|W0703 |6 |
+-----------+------------+
|W0611 |5 |
+-----------+------------+
|W0231 |5 |
+-----------+------------+
|W0122 |5 |
+-----------+------------+
|W0105 |5 |
+-----------+------------+
|W0622 |4 |
+-----------+------------+
|W0613 |4 |
+-----------+------------+
|W0612 |4 |
+-----------+------------+
|W0301 |4 |
+-----------+------------+
|W0102 |4 |
+-----------+------------+
|W0511 |3 |
+-----------+------------+
|R0911 |3 |
+-----------+------------+
|R0903 |3 |
+-----------+------------+
|R0902 |3 |
+-----------+------------+
|W0621 |2 |
+-----------+------------+
|R0913 |2 |
+-----------+------------+
|R0912 |2 |
+-----------+------------+
|W0404 |1 |
+-----------+------------+
|W0311 |1 |
+-----------+------------+
|W0142 |1 |
+-----------+------------+
|E1103 |1 |
+-----------+------------+
|E0202 |1 |
+-----------+------------+
|C0324 |1 |
+-----------+------------+
|C0323 |1 |
+-----------+------------+
Global evaluation
-----------------
Your code has been rated at 7.50/10 (previous run: 7.50/10)