Bug 199224 - Failed to authenticate to RTM service
Summary: Failed to authenticate to RTM service
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Unmaintained
Component: widget-rememberthemilk (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 205946 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-07-07 02:30 UTC by Edney Matias
Modified: 2010-06-05 15:51 UTC (History)
11 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Edney Matias 2009-07-07 02:30:40 UTC
Version:            (using Devel)
OS:                Linux
Installed from:    Compiled sources

Weird thing. If i'm on my job network and i add an RTM plasmoid i can authenticate without problems but when i go home and start session again the plasmoid fails to login to the service. I have to remove and add the plasmoid again to get my tasks. 

I didn't test the other way around (adding at home and then accessing at work) but i'll do it tomorrou. 

The only thing i can recall is the presence of a proxy on my job network and wireless connection at home.
Comment 1 Edney Matias 2009-07-07 02:35:52 UTC
Forgot to say that i don't get any error message at all, the plasmoid seems to loop infinitely trying to login to service. 

Also I'm running KDE 4.2.95 from redhat-kde (http://kde-redhat.sourceforge.net/) repository.
Comment 2 Keith Brown 2009-09-08 22:34:11 UTC
I have been having the same issue. Unable to connect on any network, even ones I previously was able to connect via. No proxies or anything. Just loops, with the little spinny icon. I go to configure, said it was authenticated, but hadn't logged in. I enter in my ID and password again, and after that it said it wasn't authenticated.
Comment 3 Edney Matias 2009-09-08 22:45:51 UTC
Until last week if i entered my password one more time (just after RMT said i was unauthenticated) it would work. But after updating to 4.3.0 it definetly stoped to work no matter what i do.
Comment 4 Andrew Stromme 2009-09-08 22:55:15 UTC
This is unfortunately the case for now. Remember the Milk contacted me, they were unhappy with (what I considered a convenience of not opening a browser) my hiding of the 'allow api application to access your data' webpage/login.

I've made the necessary changes in svn to comply with their requests but they have disabled my api key for now (unfortunate :( ). I've sent a followup email now that the pieces are all in place, hopefully I can resolve things soon.

Sorry for this, it's what we get for using a service out of our control (and to some extent what I get for not following the API terms word for word for the sake of user experience/convenience).
Comment 5 Edney Matias 2009-09-08 23:11:13 UTC
Well no problem. Now i know what's going on and now i can stop trying to login and just wait the final release. Should we expect it as bug fix to 4.3 or will it be available only on 4.4? Thank you.
Comment 6 Andrew Stromme 2009-09-08 23:24:42 UTC
I'm not sure, it really depends on how RTM responds to my fix. The fix requires some string changes which would be hard to get into 4.3 at this point. However, if RTM won't re-enable the key until the fix is in 'released' software then I might have a case to bring forwards to push it into 4.3.x. I'll keep you updated using this bug report.
Comment 7 mlblac02 2009-09-08 23:44:27 UTC
*** Bug 205946 has been marked as a duplicate of this bug. ***
Comment 8 Bruno Menegola 2009-09-28 21:26:16 UTC
Any update on this, Andrew?

thanks
Comment 9 Andrew Stromme 2009-09-28 23:55:47 UTC
Still no reply from Remember The Milk. I've now applied for a new key. 
Hopefully things will happen sooner rather than later.

Andrew Stromme
Comment 10 Andrew Stromme 2009-10-04 06:25:11 UTC
I've given up assuming that Remember The Milk will respond to my emails. I applied for a new key and implemented it in KDE svn. This means that the trunk version of the RTM applet does work again :) and works according to their TOS. 

If you really don't feel like updating/compiling you could always use a hex editor to change the key to the new one (although I really don't suggest this. kdeplasma-addons isn't big). Additionally, I fixed a few bugs so trunk is better :)

Unfortunately I can't get the fix into 4.3.x because of string changes. (I'm reasonably sure...)
Comment 11 Michael Reiher 2009-10-05 10:43:42 UTC
Well, it might be relevant, that the plasmoid in 4.3 is currently entirely broken and useless... I'd say better working and not properly translated, than what we have now. So I'd not be surprised if you get an exception for breaking strings.
Comment 12 Edney Matias 2009-10-05 13:50:16 UTC
Hi.

I can also live without the strings since i can't get my tasks and using a browser to search them is a waste of resources. Would be great to get it in 4.3.

Thank you.
Comment 13 mukul 2009-10-05 15:22:27 UTC
Good to see it "FIXED". When can we expect it in official releases? IS there any wiki-page or how-to install it using source code?
Comment 14 Andrew Stromme 2009-10-08 05:36:13 UTC
When I have some free time (ha, like that ever happens) I will try my best to 
get it into 4.3.x because as it stands now the widget is broken. Otherwise, 
4.4 in January of course it will be there.

I don't have any sort of official instructions. If you haven't compiled stuff 
from kde svn before I wouldn't suggest doing it just for my widget. Sorry. Let 
me think if there is any other solution right now. I'll of course update this 
bug report as necessary.

Andrew Stromme

On Monday 05 October 2009 09:22:30 mukul wrote:
> https://bugs.kde.org/show_bug.cgi?id=199224
> 
> 
> mukul <mukul.techie@gmail.com> changed:
> 
>            What    |Removed                     |Added
> ---------------------------------------------------------------------------
> - CC|                            |mukul.techie@gmail.com
> 
> 
> 
> 
> --- Comment #13 from mukul <mukul techie gmail com>  2009-10-05 15:22:27
>  --- Good to see it "FIXED". When can we expect it in official releases? IS
>  there any wiki-page or how-to install it using source code?
>
Comment 15 elpequenomosquito 2009-10-08 11:13:18 UTC
Hi.

Sorry for my english

I tried to install it with the following lines:

svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdeplasma-addons/applets/rememberthemilk

cmake .

But this gave me this error:

CMake Error at CMakeLists.txt:17 (kde4_add_ui_files):                     
  Unknown CMake command "kde4_add_ui_files".                              


CMake Warning (dev) in CMakeLists.txt:
  No cmake_minimum_required command is present.  A line of code such as

    cmake_minimum_required(VERSION 2.6)

  should be added at the top of the file.  The version specified may be lower
  if you wish to support older CMake versions for this project.  For more    
  information run "cmake --help-policy CMP0000".                             
This warning is for project developers.  Use -Wno-dev to suppress it.        

-- Configuring incomplete, errors occurred!

I tried to add "find_package(KDE4 REQUIRED)" or "find_package(KDE4)". to the  cmakelists.txt. But this didnt work.
Comment 16 Andrew Stromme 2009-10-08 17:16:40 UTC
So the quick answer as to why you get that error is because the applet is part 
of the package kdeplasma-addons and isn't meant to be built separately.

If you really want to go through this process, here are the steps needed. Be 
warned that I have very little time to provide 'support' for this method.

svn co svn://anonsvn.kde.org/home/kde/trunk/KDE/kdeplasma-addons
mkdir kdeplasma-addons/build
cd kdeplasma-addons/build
cmake ..  # Yes those are two periods, i.e. one directory up
#make sure this cmake command completed successfully. If it gives you an 
error, read it and fix it. Usually you need development packages (i.e. apt-get 
build-dep kdeplasma-addons)

#now if you don't want to build all of kdeplasma, addons but just rtm, follow 
these steps:
cd libs/rtm
make
make install

cd ../../dataengines/rememberthemilk
make
make install

cd ../../applets/rememberthemilk
make
make install

#now we update the KDE cache
kbuildsycoca4

#now we start the applet to make sure it works
plasmoidviewer plasma_applet_rtm
#if this is good, you should be able to add it with plasma. You -might- have 
to restart plasma (or logout/in or reboot).

Again, I warn that this method is not supported officially and I have little 
time for supporting it myself. But, it should work. I am using 4.3.1 (soon to 
be 4.3.2) and compiling rtm from trunk to develop it.

Andrew Stromme

On Thursday 08 October 2009 05:14:03 elpequenomosquito@gmail.com wrote:
> https://bugs.kde.org/show_bug.cgi?id=199224
> 
> 
> elpequenomosquito@gmail.com changed:
> 
>            What    |Removed                     |Added
> ---------------------------------------------------------------------------
> - CC|                            |elpequenomosquito@gmail.com
> 
> 
> 
> 
> --- Comment #15 from  <elpequenomosquito gmail com>  2009-10-08 11:13:18
>  --- Hi.
> 
> Sorry for my english
> 
> I tried to install it with the following lines:
> 
> svn co
> svn://anonsvn.kde.org/home/kde/trunk/KDE/kdeplasma-addons/applets/remembert
> hemilk
> 
> cmake .
> 
> But this gave me this error:
> 
> CMake Error at CMakeLists.txt:17 (kde4_add_ui_files):
>   Unknown CMake command "kde4_add_ui_files".
> 
> 
> CMake Warning (dev) in CMakeLists.txt:
>   No cmake_minimum_required command is present.  A line of code such as
> 
>     cmake_minimum_required(VERSION 2.6)
> 
>   should be added at the top of the file.  The version specified may be
>  lower if you wish to support older CMake versions for this project.  For
>  more information run "cmake --help-policy CMP0000".
> This warning is for project developers.  Use -Wno-dev to suppress it.
> 
> -- Configuring incomplete, errors occurred!
> 
> I tried to add "find_package(KDE4 REQUIRED)" or "find_package(KDE4)". to
>  the cmakelists.txt. But this didnt work.
>
Comment 17 Jedd 2009-10-11 13:02:13 UTC
Andrew writes:  "If you really don't feel like updating/compiling you could always use a hex editor to change the key to the new one..."

Forgive my obtuseness, but is that process documented somewhere - specifically what the old key is (so I can find it - presumably it moves around on different distro's compilations of the applet) and, of course, what the new key is?

I'm using Debian unstable - and modifying the binary in-place is the most elegant solution, I think, as I know it'll then just get cleaned up in a few months when 4.3.4 or 4.4 comes through.
Comment 18 Andrew Stromme 2009-10-14 18:19:03 UTC
SVN commit 1035265 by astromme:

Fix authentication to Remember The Milk. Applet now complies with RTM API TOS. Contains
string changes in the stable branch, permission was asked on i18n mailing list.

BUG: 210267
CCBUG: 199224
GUI: Applet preferences screen changed to reflect new authentication method



 M  +14 -38    applets/rememberthemilk/authenticate.ui  
 M  +23 -33    applets/rememberthemilk/rememberthemilk-plasmoid.cpp  
 M  +1 -3      applets/rememberthemilk/rememberthemilk-plasmoid.h  
 M  +0 -2      applets/rememberthemilk/taskitem.cpp  
 M  +12 -5     applets/rememberthemilk/taskitemdelegate.cpp  
 M  +0 -1      applets/rememberthemilk/tasksortfilter.cpp  
 M  +1 -1      dataengines/rememberthemilk/authservice.cpp  
 M  +0 -1      dataengines/rememberthemilk/authservice.h  
 M  +0 -2      dataengines/rememberthemilk/listssource.h  
 M  +0 -6      dataengines/rememberthemilk/rtmauth.operations  
 M  +7 -10     dataengines/rememberthemilk/rtmengine.cpp  
 M  +4 -2      dataengines/rememberthemilk/rtmengine.h  
 M  +0 -1      dataengines/rememberthemilk/taskservice.cpp  
 M  +0 -1      dataengines/rememberthemilk/taskservice.h  
 M  +0 -1      dataengines/rememberthemilk/tasksservice.h  
 M  +0 -3      dataengines/rememberthemilk/taskssource.cpp  
 M  +0 -3      dataengines/rememberthemilk/taskssource.h  
 M  +1 -1      libs/rtm/CMakeLists.txt  
 A             libs/rtm/Messages.sh  
 M  +64 -75    libs/rtm/auth.cpp  
 M  +7 -8      libs/rtm/auth.h  
 M  +6 -0      libs/rtm/request.cpp  
 M  +1 -0      libs/rtm/request.h  
 M  +1 -7      libs/rtm/rtm.h  
 M  +46 -21    libs/rtm/session.cpp  
 M  +8 -4      libs/rtm/session.h  
 M  +1 -2      libs/rtm/session_p.h  
 M  +1 -0      libs/rtm/task.h  
 M  +6 -12     libs/rtm/tests/login.cpp  
 M  +1 -1      libs/rtm/tests/refresh.cpp  
 M  +0 -2      libs/rtm/xmlreaders.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1035265
Comment 19 Edney Matias 2009-10-19 14:32:16 UTC
> If you really don't feel like updating/compiling you could always use a hex
> editor to change the key to the new one (although I really don't suggest this.
> kdeplasma-addons isn't big). Additionally, I fixed a few bugs so trunk is
> better :)

I know you don't encourage this...but how do i find the right value to change and to which value should i change it? Thank you.
Comment 20 Jedd 2009-10-19 16:25:39 UTC
Yup - this would be much easier, I think - a few minutes with a hex editor.

I'm going through the earlier instructions to rebuild the rtm plasma applet from svn, and on the third and final section (applets/rememberthemilk) I'm getting an error:

royksopp:~/src/foo/kdeplasma-addons/build/applets/rememberthemilk$ make
[  0%] Built target plasma_applet_rtm_automoc
[  0%] Building CXX object applets/rememberthemilk/CMakeFiles/plasma_applet_rtm.dir/rememberthemilk-plasmoid.o
/home/jedd/src/foo/kdeplasma-addons/applets/rememberthemilk/rememberthemilk-plasmoid.cpp: In member function ‘virtual void RememberTheMilkPlasmoid::init()’:
/home/jedd/src/foo/kdeplasma-addons/applets/rememberthemilk/rememberthemilk-plasmoid.cpp:116: error: ‘setAssociatedApplicationUrls’ was not declared in this scope
make[2]: *** [applets/rememberthemilk/CMakeFiles/plasma_applet_rtm.dir/rememberthemilk-plasmoid.o] Error 1
make[1]: *** [applets/rememberthemilk/CMakeFiles/plasma_applet_rtm.dir/all] Error 2
make: *** [all] Error 2

I suspect svn is in a state of some flux at the moment.  I had a quick look through the source for the key, but lack enough c++ / qt / kde knowledge to pick it - I thought it'd be something like a 32-char hex string.
Comment 21 Jedd 2009-10-19 17:24:34 UTC
As it happens, shuffling the resultant binaries and libraries from the first few stages of the process into the right place (over-writing extant Debian unstable packaged versions of same) was enough to get it working.

Very slow to authenticate - the pop up took about 30s to arrive, the registration took a while to take, and the retrieval of tasks - but it seems to be syncing okay now.  Hopefully Debian won't push any changes to these files between now and then the fixed version lands in the distro.
Comment 22 Andrew Stromme 2009-10-20 21:07:32 UTC
(In reply to comment #19)
> > If you really don't feel like updating/compiling you could always use a hex
> > editor to change the key to the new one (although I really don't suggest this.
> > kdeplasma-addons isn't big). Additionally, I fixed a few bugs so trunk is
> > better :)
> 
> I know you don't encourage this...but how do i find the right value to change
> and to which value should i change it? Thank you.

Check out http://websvn.kde.org/trunk/KDE/kdeplasma-addons/dataengines/rememberthemilk/rtmengine.cpp?r1=1009578&r2=1031139

The needed changes are there. I'll leave you to figure out how to make them, I'm not well versed with a hex editor. Maybe try Okteta?
Comment 23 Edney Matias 2009-10-20 21:57:58 UTC
(In reply to comment #22)
> (In reply to comment #19)
> > > If you really don't feel like updating/compiling you could always use a hex
> > > editor to change the key to the new one (although I really don't suggest this.
> > > kdeplasma-addons isn't big). Additionally, I fixed a few bugs so trunk is
> > > better :)
> > 
> > I know you don't encourage this...but how do i find the right value to change
> > and to which value should i change it? Thank you.
> 
> Check out
> http://websvn.kde.org/trunk/KDE/kdeplasma-addons/dataengines/rememberthemilk/rtmengine.cpp?r1=1009578&r2=1031139
> 
> The needed changes are there. I'll leave you to figure out how to make them,
> I'm not well versed with a hex editor. Maybe try Okteta?

Thank you man!
	
With that information was relatively simple to use oketeta to find and replace the values. Very easy and it's working now! But can't wait to get the new version.

Thank you, again!
Comment 24 Justen Robertson 2010-06-04 23:00:14 UTC
Bug seems to have reappeared on KDE 4.4 / Linux 2.6.34. Had to update due to some other issues, would love to have RTM working again - if it's a matter of hex editing to put in a new shared key again, just give me the key. :)
Comment 25 Jedd 2010-06-05 15:51:35 UTC
Hey Justen - I'm on Debian unstable, and 4.4.4 just landed - the widget is part of plasma-dataengines-addons, and I can confirm that's definitely 4.4.4 here.

My rtm authentication is working just fine.

What distro / minor version of 4.4.x are you on?