tag:blogger.com,1999:blog-7888156866269720289.post3978142077537553886..comments2023-11-05T11:15:45.570+01:00Comments on Linux, Games, Programming, and some other random stuff: Various news in kdevelop, kdev-python, kdev-qmljsscummoshttp://www.blogger.com/profile/12133795109922287229noreply@blogger.comBlogger13125tag:blogger.com,1999:blog-7888156866269720289.post-44679864158283325112013-04-09T17:37:48.034+02:002013-04-09T17:37:48.034+02:00... *ported to python 3.3, I meant to write.
If yo...... *ported to python 3.3, I meant to write.<br />If you want to discuss this further, we can of course do so here, but please feel free to write me an email or ping me on irc.freenode.net too if you'd prefer that.scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-69184119822800595082013-04-09T17:32:38.022+02:002013-04-09T17:32:38.022+02:00Getting the changes ported to python 3 should be e...Getting the changes ported to python 3 should be easy. But, if you do that, you can only run the python 3 version of the plugin against it: python is used for parsing, and the version 3 release of python cannot parse python 2 sources, so the plugin cannot analyze them. The python 3 version of the plugin is currently unfinished and has not yet been released (mainly since I have to wait for the upstream release to officially release it anyways). So, I'd go as far as saying that porting the changes to python 3.3 doesn't really buy you anything :(<br /><br />Thanks for your efforts with packaging this!scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-83296440906764148602013-04-09T17:10:14.699+02:002013-04-09T17:10:14.699+02:00No need for the apology. These things are required...No need for the apology. These things are required sometimes. I mainly wanted to weight the the bundled library exemptions (requires going through a committee etc) and related maintenance costs against carrying a few temporary patches which is not unusual anyway so long as it's not too intrusive. Worst case is the package does not get into the distribution until Python 3.4.<br /><br />Thanks for the info though. Now I can look at the effort required to get this into our Python 3.3 build and otherwise your info on the very limited use of the embedded Python fork will help tremendously in getting a bundling exception. <br /><br />Thanks again and keep up the good work :-) Anonymoushttps://www.blogger.com/profile/14575057723615916036noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-53639750749237291272013-04-09T02:21:30.113+02:002013-04-09T02:21:30.113+02:00Ah, and I forgot: this is for the patch now applie...Ah, and I forgot: this is for the patch now applied to upstream. The way it's done in the 2.7 fork is different; it's more hacky and generally worse, but it keeps source compatibility. If you wanted, you could probably apply these changes to a distribution's python without causing issues (binary compatibility would still break, though, as properties are added to public structs). The only thing you'd get would be more accurate error messages ;)<br /><br />Realistically though, including the fork is the less risky variant by far in my opinion. Remember, the fork is only used for parsing, the interpreter itself isn't even built, and nothing of the compile/execute parts of the language are in use.scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-79610490833914121472013-04-09T02:05:49.493+02:002013-04-09T02:05:49.493+02:00The changes are source incompatible, and will like...The changes are source incompatible, and will likely need adjustment if you want to backport them to python 2. The incompatibility is not too significant, it would only affect software using the AST API, which most programs don't do. If you use the AST API from python, it might break too, if you were constructing ASTs and compiling them then (here, too, I'm not sure if anything uses it). The most likely kind of software you'd run into trouble with would be something like rope.<br />This is the relevant bug report at python: http://bugs.python.org/issue16795<br /><br />I'm aware that this is a problem for some distributions, and I'm sorry, but there just wasn't a better option at the time being. I'm looking forward to python 3 taking over, so we I can finally leave the fork behind completely. If a distribution has problems with packaging it, my advice would be to just not package the python2 version for now and make sure there's up-to-date kdevelop and kdevplatform packages available -- it should be easy to compile for users then.<br /><br />However, as discussed in much length on kde-core-devel, not many of the usual security/maintenance arguments apply in this case -- python 2.7 is pretty much frozen, especially the part which kdev-python uses. I don't know of a single security or memory issue since 2.7.0 which would affect kdev-python, and I doubt any will appear in the future.scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-21026072993880855582013-04-09T01:22:42.410+02:002013-04-09T01:22:42.410+02:00Have you got any links to the relevant bugs/peps/c...Have you got any links to the relevant bugs/peps/commits in Python required for the no bundled Python and are they _binary_ incompatible or _api_ incompatible?<br /><br />Specifically, having a bundled library is a huge problem for several distributions (security/maintenance/tracking/etc). If the changes are only binary incompatible then it is very easy to workaround with a rebuild of a patched version of Python and any native Python modules. If it is api incompatible then it depends very much on the extent of the incompatibility.Anonymoushttps://www.blogger.com/profile/14575057723615916036noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-72777373036576021282013-03-26T16:09:27.661+01:002013-03-26T16:09:27.661+01:00Sure, I can do that later -- if you don't want...Sure, I can do that later -- if you don't want it to be forgotten, report it on bugs.kde.org as a wish for kdevelop and assign it to me ;)scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-65361457604880268912013-03-26T02:24:09.754+01:002013-03-26T02:24:09.754+01:00Nice widgets! Could you include a 'last chosen...Nice widgets! Could you include a 'last chosen colors' pallet and maybe a 'replace all occurences of old color' button? Just to make it workflow perfect ;-)BartOttenhttps://www.blogger.com/profile/14547292199835887672noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-57042549024160299222013-03-24T14:01:16.640+01:002013-03-24T14:01:16.640+01:00On that matter, I'm personally very sad that p...On that matter, I'm personally very sad that plasmate is not based on kdevplatform. If it was, we could have shared the language framework and also features like this one -- it would have helped kdevplatform, and plasmate too :(<br />After all, kdevplatform is being kept seperate from kdevelop for exactly this purpose -- creating another IDE which has a different UI but needs the same features (language support!) under the hood.scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-7819343435518637732013-03-24T13:55:31.502+01:002013-03-24T13:55:31.502+01:00Oh, that looks like a proper IDE not like plasmate...Oh, that looks like a proper IDE not like plasmate.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-17039318319654025602013-03-24T11:54:15.641+01:002013-03-24T11:54:15.641+01:00Thanks ;)
QML isn't compiled tough, so if you...Thanks ;)<br /><br />QML isn't compiled tough, so if you did it correctly, you might get a "real" live preview. I'm still thinking about whether that would be doable in a general case.<br />It would need to be guarded against slowness tough, so it doesn't crash (or slow down) the IDE when you type something like while ( true ) { }... scummoshttps://www.blogger.com/profile/12133795109922287229noreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-51414783443026935282013-03-24T07:28:38.921+01:002013-03-24T07:28:38.921+01:00Ehy, I remember that splash screen :DEhy, I remember that splash screen :DAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-7888156866269720289.post-51106772139462676732013-03-24T05:07:42.357+01:002013-03-24T05:07:42.357+01:00This is amazing! Thanks a lot for your hard work!
...This is amazing! Thanks a lot for your hard work!<br /><br />Although the previews may seem gimmicky, it's still a great way to give the programmer a sense of how something will look, without recompiling :)Anonymousnoreply@blogger.com