{"action":"created","issue":{"url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/issues/603","repository_url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser","labels_url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/issues/603/labels{/name}","comments_url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/issues/603/comments","events_url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/issues/603/events","html_url":"https://github.com/sqlitebrowser/sqlitebrowser/issues/603","id":156573870,"number":603,"title":"Use C++11 / Drop Qt4","user":{"login":"MKleusberg","id":3153504,"avatar_url":"https://avatars.githubusercontent.com/u/3153504?v=3","gravatar_id":"","url":"https://api.github.com/users/MKleusberg","html_url":"https://github.com/MKleusberg","followers_url":"https://api.github.com/users/MKleusberg/followers","following_url":"https://api.github.com/users/MKleusberg/following{/other_user}","gists_url":"https://api.github.com/users/MKleusberg/gists{/gist_id}","starred_url":"https://api.github.com/users/MKleusberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MKleusberg/subscriptions","organizations_url":"https://api.github.com/users/MKleusberg/orgs","repos_url":"https://api.github.com/users/MKleusberg/repos","events_url":"https://api.github.com/users/MKleusberg/events{/privacy}","received_events_url":"https://api.github.com/users/MKleusberg/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/labels/help%20wanted","name":"help wanted","color":"159818"},{"url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/labels/question","name":"question","color":"cc317c"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":20,"created_at":"2016-05-24T18:12:34Z","updated_at":"2016-08-19T12:27:24Z","closed_at":null,"body":"I'm opening this issue to discuss two ideas regarding the technologies we want to use and/or support. The two ideas are totally independent, so let's try not to confuse them :wink: \r\n\r\n## 1) Start using C++11 (or C++14 or C++17)\r\nThere are some nice to have features in the newer versions of C++. Most of them we will probably never use, especially since we're relying very much on Qt, but still there are plenty of helpful additions to the language. This could make our code cleaner and more efficient.\r\nThe downside is the compiler support. While pretty much every compiler should support C++11 to a large extend *by now* there are still many old compiler versions out there which will have trouble with certain C++11 features. Furthermore, most compilers require the user to explicitly activate C++11 support. This makes the project files and the build processes slightly more complicated.\r\nQuestions:\r\n* How about the nightly builds for Windows? What compiler version does mxe use? Let's not break the nightlies and let's not put too much work on Rene here.\r\n* How about building on WIndows? I have no idea how well C++11 is supported on MSVC nor how to activate it.\r\n* What documentation would we have to update?\r\n* Any other processes relying on the current way it's building? If so, can we break them?\r\n\r\n## 2) Drop Qt4 support\r\nQt4 is no longer maintained and it doesn't make sense to support it forever. At the moment we're limiting ourselves to the features supported by both, Qt4 and Qt5. Again, there's nothing major we're unable to do because of this but it would make the code a bit cleaner to be able to assume there's only Qt5 to support. I also see a chance of making the documentation and debugging a bit easiert by dropping Qt4 support because we can just make clear that we don't support it (and thus don't need to document it) and assume that each issue reported comes from a version compiled with Qt5 (since it won't compile with Qt4 anymore).\r\nProblem: As far as I know, the Windows nightlies are using Qt4. If we dropped Qt4 support Rene would have to update the build process.\r\nAlso, I remember some issue or two where people would have problems with the Qt5 builds but got better results with the Qt4 builds. Does anybody remember these issues? Some font/display thing probably?\r\nQuestions:\r\n* Does anybody else use Qt4?\r\n* Which version of Qt5 do we want to be the minimum requirement? Qt 5.0 doesn't make a lot of sense I think, but the latest version doesn't make much sense either.\r\n\r\n\r\n\r\nSo what do you all think? :smile: \r\nI'm pro C++11 and pro dropping Qt4 but definitely don't want to rush this."},"comment":{"url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/issues/comments/241005053","html_url":"https://github.com/sqlitebrowser/sqlitebrowser/issues/603#issuecomment-241005053","issue_url":"https://api.github.com/repos/sqlitebrowser/sqlitebrowser/issues/603","id":241005053,"user":{"login":"revolter","id":5748627,"avatar_url":"https://avatars.githubusercontent.com/u/5748627?v=3","gravatar_id":"","url":"https://api.github.com/users/revolter","html_url":"https://github.com/revolter","followers_url":"https://api.github.com/users/revolter/followers","following_url":"https://api.github.com/users/revolter/following{/other_user}","gists_url":"https://api.github.com/users/revolter/gists{/gist_id}","starred_url":"https://api.github.com/users/revolter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/revolter/subscriptions","organizations_url":"https://api.github.com/users/revolter/orgs","repos_url":"https://api.github.com/users/revolter/repos","events_url":"https://api.github.com/users/revolter/events{/privacy}","received_events_url":"https://api.github.com/users/revolter/received_events","type":"User","site_admin":false},"created_at":"2016-08-19T12:27:24Z","updated_at":"2016-08-19T12:27:24Z","body":"@justinclift, I guess I can't understand this properly to fix it."}}
{"actor":{"display_login":"revolter"}}