{"action":"created","issue":{"url":"https://api.github.com/repos/skypjack/entt/issues/95","repository_url":"https://api.github.com/repos/skypjack/entt","labels_url":"https://api.github.com/repos/skypjack/entt/issues/95/labels{/name}","comments_url":"https://api.github.com/repos/skypjack/entt/issues/95/comments","events_url":"https://api.github.com/repos/skypjack/entt/issues/95/events","html_url":"https://github.com/skypjack/entt/issues/95","id":329849444,"node_id":"MDU6SXNzdWUzMjk4NDk0NDQ=","number":95,"title":"EnTT and C++17","user":{"login":"skypjack","id":1812216,"node_id":"MDQ6VXNlcjE4MTIyMTY=","avatar_url":"https://avatars1.githubusercontent.com/u/1812216?v=4","gravatar_id":"","url":"https://api.github.com/users/skypjack","html_url":"https://github.com/skypjack","followers_url":"https://api.github.com/users/skypjack/followers","following_url":"https://api.github.com/users/skypjack/following{/other_user}","gists_url":"https://api.github.com/users/skypjack/gists{/gist_id}","starred_url":"https://api.github.com/users/skypjack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skypjack/subscriptions","organizations_url":"https://api.github.com/users/skypjack/orgs","repos_url":"https://api.github.com/users/skypjack/repos","events_url":"https://api.github.com/users/skypjack/events{/privacy}","received_events_url":"https://api.github.com/users/skypjack/received_events","type":"User","site_admin":false},"labels":[{"id":698692802,"node_id":"MDU6TGFiZWw2OTg2OTI4MDI=","url":"https://api.github.com/repos/skypjack/entt/labels/discussion","name":"discussion","color":"fbca04","default":false}],"state":"closed","locked":false,"assignee":{"login":"skypjack","id":1812216,"node_id":"MDQ6VXNlcjE4MTIyMTY=","avatar_url":"https://avatars1.githubusercontent.com/u/1812216?v=4","gravatar_id":"","url":"https://api.github.com/users/skypjack","html_url":"https://github.com/skypjack","followers_url":"https://api.github.com/users/skypjack/followers","following_url":"https://api.github.com/users/skypjack/following{/other_user}","gists_url":"https://api.github.com/users/skypjack/gists{/gist_id}","starred_url":"https://api.github.com/users/skypjack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skypjack/subscriptions","organizations_url":"https://api.github.com/users/skypjack/orgs","repos_url":"https://api.github.com/users/skypjack/repos","events_url":"https://api.github.com/users/skypjack/events{/privacy}","received_events_url":"https://api.github.com/users/skypjack/received_events","type":"User","site_admin":false},"assignees":[{"login":"skypjack","id":1812216,"node_id":"MDQ6VXNlcjE4MTIyMTY=","avatar_url":"https://avatars1.githubusercontent.com/u/1812216?v=4","gravatar_id":"","url":"https://api.github.com/users/skypjack","html_url":"https://github.com/skypjack","followers_url":"https://api.github.com/users/skypjack/followers","following_url":"https://api.github.com/users/skypjack/following{/other_user}","gists_url":"https://api.github.com/users/skypjack/gists{/gist_id}","starred_url":"https://api.github.com/users/skypjack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skypjack/subscriptions","organizations_url":"https://api.github.com/users/skypjack/orgs","repos_url":"https://api.github.com/users/skypjack/repos","events_url":"https://api.github.com/users/skypjack/events{/privacy}","received_events_url":"https://api.github.com/users/skypjack/received_events","type":"User","site_admin":false}],"milestone":null,"comments":18,"created_at":"2018-06-06T12:38:34Z","updated_at":"2018-06-24T12:45:08Z","closed_at":"2018-06-14T12:11:03Z","author_association":"OWNER","body":"Modern C ++ has reached revision 17 for quite a while now.  \r\n`EnTT` is stuck in the revision 14 currently because of several reasons: laziness, willingness to support a widely used revision, requests from users, laziness again, and so on.  \r\n\r\nHowever, I'd like to port the library to the latest revision mainly because:\r\n* I like C++17 and it contains a lot of things I'd like to use in `EnTT`\r\n* Resulting code would be cleaner. As an example:\r\n\r\n      signal.sink().connect<&Listener::member>(&listener);\r\n\r\n  Instead of:\r\n\r\n      signal.sink().connect<Listener, &Listener::member>(&listener);\r\n\r\n  But also `entt::Prototype` instead of `entt::DefaultPrototype` as an alias for `entt::Prototype<entt::DefaultRegistry::entity_type>` and so on.\r\n\r\n* We can rely on things like `std::execution::par` (see #94) and work on multi threading\r\n* We can rely on `pmr::` namespace (see #80 and some other issues that talk about making `EnTT` allocator-aware)\r\n* ... AOB\r\n\r\nThe idea is to maintain a branch `cpp14` until the end of the year, then interrupt the support and leave the revision 14 behind if nobody comes up that either wants to maintain it or is willing to support me to maintain the port.  \r\nNew features or at least the biggest ones won't be available on that branch. As an example, multi threading support could be developed only on `master` and therefore it will be available only to users that can use C++17.\r\n\r\nComments and/or feedback on this are highly appreciated."},"comment":{"url":"https://api.github.com/repos/skypjack/entt/issues/comments/399754102","html_url":"https://github.com/skypjack/entt/issues/95#issuecomment-399754102","issue_url":"https://api.github.com/repos/skypjack/entt/issues/95","id":399754102,"node_id":"MDEyOklzc3VlQ29tbWVudDM5OTc1NDEwMg==","user":{"login":"skypjack","id":1812216,"node_id":"MDQ6VXNlcjE4MTIyMTY=","avatar_url":"https://avatars1.githubusercontent.com/u/1812216?v=4","gravatar_id":"","url":"https://api.github.com/users/skypjack","html_url":"https://github.com/skypjack","followers_url":"https://api.github.com/users/skypjack/followers","following_url":"https://api.github.com/users/skypjack/following{/other_user}","gists_url":"https://api.github.com/users/skypjack/gists{/gist_id}","starred_url":"https://api.github.com/users/skypjack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/skypjack/subscriptions","organizations_url":"https://api.github.com/users/skypjack/orgs","repos_url":"https://api.github.com/users/skypjack/repos","events_url":"https://api.github.com/users/skypjack/events{/privacy}","received_events_url":"https://api.github.com/users/skypjack/received_events","type":"User","site_admin":false},"created_at":"2018-06-24T12:45:08Z","updated_at":"2018-06-24T12:45:08Z","author_association":"OWNER","body":"It looks like `std::is_aggregate[_v]` [isn't supported yet](https://developercommunity.visualstudio.com/content/problem/243668/stdis-aggregate-stdis-aggregate-v-are-missing.html) by VS.  \r\nI strongly suspect that the times are not that ready for a portable version of `EnTT` in C++17, unless I decide to fill the library with a bunch of `ifdef` or kind of all around."}}
{"actor":{"display_login":"skypjack"}}