Opened 2 weeks ago

Last modified 13 days ago

#34 accepted task

Enable RPC on trac

Reported by: Fred Leeflang Owned by: Fred Leeflang
Priority: minor Milestone: Everybody Using Trac
Component: System Administration Version:
Keywords: Cc: Hai, lukas
Blocked By: Blocking:
Estimated Hours: 0 Parent Tickets:
Total Hours: 5.06


There's an Android native client for Trac, however it need RPC enabled on the server. As this apparently does not come with the server we may need to install a plugin for it


Change History (9)

comment:1 Changed 2 weeks ago by Fred Leeflang

Status: newaccepted

Automatically accepting in order to start work.

comment:2 Changed 2 weeks ago by Fred Leeflang

Plugin is documented here:

comment:3 Changed 2 weeks ago by Fred Leeflang

Installed plugin the usual way, eg.:

  • download zipfile
  • unzip zipfile in plugins directory
  • go to <plugin folder>/trunk
  • run python bdist_egg
  • copy dist/....egg into /var/www/prd/

But in this case also used:

  • root@apache:/var/www/prd/ trac-admin . config set components tracrpc.* enabled
  • trac-admin . permission add authenticated XML_RPC

comment:4 Changed 2 weeks ago by Fred Leeflang

fredl worked on this ticket for 0.13 between 05/09/18 11:01:38 and 05/09/18 11:09:22.

After doing the above I checked and it seems to create output which it didn't do before.

comment:5 Changed 2 weeks ago by Fred Leeflang

Cc: Hai lukas added

On Android there's an app that should make working with Trac from phone easier,

I will test this app now that the RPC plugin has been installed and appears to be working and give some feedback on the app, may be a good thing for both Lukas and Hai to know as well

comment:6 Changed 2 weeks ago by Fred Leeflang

Plugin keeps repeating at this point that credentials are incorrect.

comment:7 Changed 2 weeks ago by Fred Leeflang

Seems to be a problem with the plugin:

2018-05-09 11:24:21,640 Trac[main] DEBUG: Dispatching <RequestWithSession? "POST '/login/rpc'">
2018-05-09 11:24:21,641 Trac[main] DEBUG: Chosen handler is <Component tracrpc.web_ui.RPCWeb>
2018-05-09 11:24:21,642 Trac[web_ui] DEBUG: LoginModule?._remote_user: Authentication attempted for 'None'
2018-05-09 11:24:21,642 Trac[web_ui] DEBUG: LoginModule?.authenticate: Set 'REMOTE_USER' = 'None'
2018-05-09 11:24:21,642 Trac[web_ui] DEBUG: RPC incoming request of content type 'application/json' dispatched to <Component tracrpc.json_rpc.JsonRpcProtocol?>
2018-05-09 11:24:21,642 Trac[web_ui] DEBUG: RPC(JSON-RPC) call by 'anonymous'
2018-05-09 11:24:21,645 Trac[main] DEBUG: Negotiated locale: None -> en_US
2018-05-09 11:24:21,659 Trac[web_ui] WARNING: RPC(JSON-RPC) [] TracError?: Authentication information not available
2018-05-09 11:24:21,659 Trac[json_rpc] DEBUG: RPC(json) encoded response: {"error": {"message": "Authentication information not available", "code": -32603, "name": "JSONRPCError"}, "result": null, "id": null}

I don't think it should log 'call by anonymous' although at the time of trying to authenticate it's of course still anonymous

comment:8 Changed 2 weeks ago by Fred Leeflang

fredl worked on this ticket for 0.25 between 05/09/18 11:18:29 and 05/09/18 11:33:28.

Need to stop working on this, other priorities

comment:9 Changed 13 days ago by Fred Leeflang

fredl worked on this ticket for 4.68 between 05/10/18 08:37:56 and 05/10/18 13:18:48.

Grrrr this doesn't work properly still. The problem is that for authentication through RP there should be a challenge like with http auth. Since the authentication manager plugin is installed that provides a form login no such challenge is sent. I found a workaround but it doesn't seem to work.

Note: See TracTickets for help on using tickets.