{"action":"created","issue":{"url":"https://api.github.com/repos/rails-api/active_model_serializers/issues/1310","labels_url":"https://api.github.com/repos/rails-api/active_model_serializers/issues/1310/labels{/name}","comments_url":"https://api.github.com/repos/rails-api/active_model_serializers/issues/1310/comments","events_url":"https://api.github.com/repos/rails-api/active_model_serializers/issues/1310/events","html_url":"https://github.com/rails-api/active_model_serializers/pull/1310","id":114161144,"number":1310,"title":"RFC: Primary namespace: ActiveModel::Serializer, ActiveModel::Serializers, vs. ActiveModelSerializers","user":{"login":"maurogeorge","id":260746,"avatar_url":"https://avatars.githubusercontent.com/u/260746?v=3","gravatar_id":"","url":"https://api.github.com/users/maurogeorge","html_url":"https://github.com/maurogeorge","followers_url":"https://api.github.com/users/maurogeorge/followers","following_url":"https://api.github.com/users/maurogeorge/following{/other_user}","gists_url":"https://api.github.com/users/maurogeorge/gists{/gist_id}","starred_url":"https://api.github.com/users/maurogeorge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maurogeorge/subscriptions","organizations_url":"https://api.github.com/users/maurogeorge/orgs","repos_url":"https://api.github.com/users/maurogeorge/repos","events_url":"https://api.github.com/users/maurogeorge/events{/privacy}","received_events_url":"https://api.github.com/users/maurogeorge/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rails-api/active_model_serializers/labels/Needs%20Team%20Discussion","name":"Needs Team Discussion","color":"5319e7"},{"url":"https://api.github.com/repos/rails-api/active_model_serializers/labels/RFC","name":"RFC","color":"fbca04"},{"url":"https://api.github.com/repos/rails-api/active_model_serializers/labels/V:%200.10.x","name":"V: 0.10.x","color":"bfd4f2"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":45,"created_at":"2015-10-29T22:31:18Z","updated_at":"2015-12-30T03:43:50Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/rails-api/active_model_serializers/pulls/1310","html_url":"https://github.com/rails-api/active_model_serializers/pull/1310","diff_url":"https://github.com/rails-api/active_model_serializers/pull/1310.diff","patch_url":"https://github.com/rails-api/active_model_serializers/pull/1310.patch"},"body":"[Rendered](https://github.com/maurogeorge/active_model_serializers/blob/patch-12/docs/rfcs/0000-namespace.md).\r\n\r\nFollowing the https://github.com/rails-api/active_model_serializers/issues/1298#issuecomment-151290661 create a RFC about namespace.\r\n\r\nI created the RFC based on the [Ember RFCs](https://github.com/emberjs/rfcs).\r\n\r\nThanks for the feedback :heart: "},"comment":{"url":"https://api.github.com/repos/rails-api/active_model_serializers/issues/comments/167931895","html_url":"https://github.com/rails-api/active_model_serializers/pull/1310#issuecomment-167931895","issue_url":"https://api.github.com/repos/rails-api/active_model_serializers/issues/1310","id":167931895,"user":{"login":"bf4","id":142914,"avatar_url":"https://avatars.githubusercontent.com/u/142914?v=3","gravatar_id":"","url":"https://api.github.com/users/bf4","html_url":"https://github.com/bf4","followers_url":"https://api.github.com/users/bf4/followers","following_url":"https://api.github.com/users/bf4/following{/other_user}","gists_url":"https://api.github.com/users/bf4/gists{/gist_id}","starred_url":"https://api.github.com/users/bf4/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bf4/subscriptions","organizations_url":"https://api.github.com/users/bf4/orgs","repos_url":"https://api.github.com/users/bf4/repos","events_url":"https://api.github.com/users/bf4/events{/privacy}","received_events_url":"https://api.github.com/users/bf4/received_events","type":"User","site_admin":false},"created_at":"2015-12-30T03:43:49Z","updated_at":"2015-12-30T03:43:49Z","body":"Y'eup. I'll repost https://github.com/rails-api/active_model_serializers/pull/1310#discussion_r45947587 here\r\n\r\n-----\r\n\r\n\r\nGoal of RFC:\r\n\r\n  - clarify boundaries of gem and Rails\r\n  - clarify that the `Serializer` class is no longer the primary behavior of the gem.\r\n\r\nScope of RFC: \r\n\r\n- existing and future class and module names in gem, with respect to namespacing. Does not include renaming of existing classes.\r\n\r\nOutput of RFC:\r\n\r\n- We're not going to change the gem require lib. It remains `lib/active_model_serializers.rb`\r\n- We're not going to change the namespace in the required file. It remains `ActiveModelSerializers`.\r\n- We're going to wean ourselves off of `ActiveModel::Serializer` as the primary namespace.\r\n- We're going to begin writing new code in `lib/active_model_serializers/` using the module namespace `ActiveModelSerializers`.\r\n- We're going to move functionality, as we work in it, to live under  `lib/active_model_serializers/` and use the module namespace `ActiveModelSerializers`.\r\n- For clarity we will refer to the gem as `ActiveModelSerializers`, one word. (For some history on this, see https://github.com/rails-api/active_model_serializers/pull/1388 )\r\n- Discussion of renaming existing classes / modules and JsonApi objects will happen in separate PRs, and issues, and in the [google doc https://docs.google.com/document/d/1rcrJr0sVcazY2Opd_6Kmv1iIwuHbI84s1P_NzFn-05c/edit?usp=sharing](https://docs.google.com/document/d/1rcrJr0sVcazY2Opd_6Kmv1iIwuHbI84s1P_NzFn-05c/edit?usp=sharing), e.g.\r\n  - [ ] should moved classes or modules be aliased to their old name and location with deprecation warnings, such [as was done for `CollectionSerializer`](https://github.com/rails-api/active_model_serializers/pull/1251). Proposal: yes\r\n  - [ ] should Ruby representations of JSON API object be [defined in their own namespace](https://github.com/rails-api/active_model_serializers/pull/1004#discussion_r46783510, and not embedded in the JSON API adapter? Proposal: yes\r\n- Up for discussion: \r\n  - [ ] referring to it as `AMS`. Proposal: in discussion and code review yes, not in code or code comments or documentation, unless defined as an alias.\r\n  - [ ] per [proposal by Adrian Mungolo @xymbol](https://groups.google.com/d/msg/rails-api-core/pGSWLiWUsCw/-BdKF4pAPwAJ), *change gem name to `AMS`*. Proposal: table\r\n  - [ ] should `ActiveModel::SerializableResource` be moved under the `ActiveModelSerializers` namespace? Proposal: yes\r\n  - [ ] should `ActiveModel::Serializer` be moved under the `ActiveModelSerializers` namespace? Proposal: yes\r\n  - [ ] should `ActionController::Serialization` be moved under the `ActiveModelSerializers` namespace? Proposal: yes\r\n  - [ ] should Adapters get their own namespace under `ActiveModelSerializers`? Proposal: yes\r\n  - [ ] should Serializers get their own namespace under `ActiveModelSerializers`? Proposal: yes\r\n  - [ ] should all `ActiveModel`-namespaced files in the gem be moved under `ActiveModelSerializers`? Proposal: yes\r\n\r\n\r\nrefs:\r\n\r\n- https://github.com/rails-api/active_model_serializers/blob/master/docs/ARCHITECTURE.md\r\n- https://github.com/rails-api/active_model_serializers/blob/master/docs/jsonapi/schema.md#json-api-document-schema\r\n- [Discussion doc](google doc https://docs.google.com/document/d/1rcrJr0sVcazY2Opd_6Kmv1iIwuHbI84s1P_NzFn-05c/edit?usp=sharing](https://docs.google.com/document/d/1rcrJr0sVcazY2Opd_6Kmv1iIwuHbI84s1P_NzFn-05c/edit?usp=sharing)\r\n\r\n\r\n"}}