[mb-commits] branch, data-nes, updated. Merge branch 'beta' into data-nes Fix invalid syntax Merge branch 'mbs-5741 ' ...

MusicBrainz Git Server <[email protected]> Tue, 15 Jan 2013 12:23:36 +0000
Newsgroups gmane.comp.audio.musicbrainz.cvs
Message-ID <E1Tv5YF-0004Nx-VH@wiley>
The branch, data-nes has been updated
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=b64041e9db43433be5ef57abc583bc0ee90a2504 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=8422e3896ecb441d0a1a2d89766979e03b6849f9 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=9f8b507ccde409c49de32d419a78a024fcc8252f (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=307ae1782c63b423774864d8958250543eae7153 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=67e4160aebc2f03f6f9b89fa66dcd3a0239fde44 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=c27215820e3ef0ac600d2267539ea23de04b66fd (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=d303db03ba099e8d0d8e53765c3f5487fc68d98b (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=2fef60954ef27b4e1c1e3d2dba8402f4d978ae71 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=b771aee23fa66a37dca265f23b28097faeca1c56 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=eb08bdd9d0391058f9c9768bb64500d69ac7ee0e (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=3fa326a35da05c24985aeebd41f9d7b6a7e03e40 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=545d83e98188d9caaf2c2a19a8945bfcc76a9818 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=7f34d271fed459ea4b7da7cead5e2e0ee7cc4ee8 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=fb1ad49f5cddd906e7a6be72d2428298b922d271 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=539c7e504483397910080f9345b6303d7d21f9b4 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=38d50b727bca67910b113731a6bff534be256b81 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=09e04aff7d375c0d4eb94962012ee82452449d07 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=fca7018cca215b07f7d406aad0c040cc93bb99a3 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=1e2390975c307523b4cf76154728cb28b22110a6 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=611cc1d6778fbd402b760834445e36a8c47f696e (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=70c067ace6fe689c80248ecbedc8e29e8968d690 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=f8bafe63d85b2fe47d3c039586d9751a42eb4134 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=244b6589895bd37bc51d98f1d2e7380350e5816a (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=36b35231fd9902dfc11d86e4e85f29c18b38f4e1 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=fad66f00323fdf13a593c3a0a63f491aa6664cbd (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=0c46d04143f833c2543f09d271530f586f08161a (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=9bb8c826cd2e6207aa170708bd7d8981841a938e (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=a8c7bb9774021f9812e856fcffd1c188a0a29bc2 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=d6d75499f5c4d3130e5dcad613125646b999a07d (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=a7fb2e7ae73b79d90d3a8cc075e506ad38792b57 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=a2dcbd32fb191638cd3ec7937afbc61ed25768f7 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=8bffcba5f8f3e5f39120ee4bb7c8ff62146ef804 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=d6936c0bc05e53587fc544dcdd8758eaa7e02a22 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=00d8d7d6d3ba6256d9ac057b2b9756166f3ddf33 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=9511434f8be3d563f824999872a3ceab4a1e66c6 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=e9e3c66ee4868a8863851bbbc1c2dc4327347d88 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=911264ab6646fb940a64cb687458cd88c53d80b5 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=041121a8112c734c71bc781bbb327d65ef3f4004 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=e6a0717337c0ace9ae85390a11c24b9b913aadb4 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=c1e8ded33b3861d13fa1defb95f6b59fa56cfb43 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=fe8f2a39159d24927da1aead28d3d88b3975c903 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=b0e91e2b4d4dd5e0aa51cbfd33d563f3df163ce3 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=4d46c76030cf48968970dd8acf1c2a1a5e239f28 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=4cd55df1a13d24553d3a309df2159ca94fc3883f (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=e3e7893631c1dc5adbb82e15abe30a969c087a07 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=8cca844437da56049acb9ba74bbb1ae8b3956a6b (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=273a40193dd1931c3697ab375bb8eadad0956e8c (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=57b24733ad8c09acd787d790d578d13f6c194088 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=f15d9d7855a1c72e773d868b59af5bc6ff9afaa6 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=e622f0cb411e4b0f26cda2232785e81926a70612 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=87782c1bb74e2191d2246b690b57eb7116a78f23 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=74d5095b28a6bef688218a8bf97bd249f36f1d25 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=aa9e0b923c6bc932b350f5eba946f86a7faaed3b (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=7d8fba4a49e610d1b921091f9385122cdb2c8187 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=69336dfff4cf6c55e77d71da69f3b41f6fb6fce4 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=0b2545647fd828b8b481b33d98796d969f583c09 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=55ba161a7b8548296dfa05876bb0285e7d8eb301 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=03046806a77180092f4cada41e60e6af0ce1ded7 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=7839a0eb19e4a98175c76a88774afab197731e21 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=d504762eafb9d3f47691dd85af6c64a062fd6670 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=5e1c19c76445fb769621b9192965b81b9fbb93cd (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=1d062f5859a24a41cc21877848edd64e853729a8 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=1d94f11c2d445ade701664945cc84d2065cce2d5 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=8a120396cc4ecd6d5f605d7e98ed815e8541e90f (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=6dfe1e4c67ed0833918d012343ca7a2a926836b1 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=144994457abfd3167b07e2b17d2b010f44fb2202 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=b9d1930b51fb4b8c7079b80eaeb32d40fe103a99 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=643f5f3350dd57aed9ec8f9d1636f664c4f65e1c (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=ace37903afc424b22bdc6ec6f528b84d20e725e9 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=83d9b1aec4128b7a7300aaa6de801724ecc4f007 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=f886b369f3179236a4b58f7be85ce41dbd687f07 (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=46ae32afdf4d50b1e56d156d0d01abb756aa641e (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=2239bfa441ab53566919a008fbb7acf410d6ecdc (commit)
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=7da9e13de2fab19882350610238708f9f2ffb3f6 (commit)
      from  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=2a931f27b565bacbf98995fa91f88d90819c78ba (commit)

Summary of changes:
 admin/replication/LoadReplicationChanges           |    6 +
 admin/replication/hooks/post-process.sample        |    8 +
 lib/MusicBrainz/Server.pm                          |   15 ++-
 lib/MusicBrainz/Server/Controller/WS/2/Release.pm  |    6 +
 lib/MusicBrainz/Server/Controller/Work.pm          |   14 +--
 lib/MusicBrainz/Server/Data/CoverArtArchive.pm     |   12 ++
 lib/MusicBrainz/Server/Data/NES/Work.pm            |   35 ++++
 lib/MusicBrainz/Server/Data/URL.pm                 |    1 +
 lib/MusicBrainz/Server/Entity/NES/Edit.pm          |    6 +
 lib/MusicBrainz/Server/Entity/NES/Work.pm          |   12 ++
 .../Server/Entity/URL/{45cat.pm => TheSession.pm}  |    4 +-
 .../Server/WebService/Serializer/JSON/2/Release.pm |   14 ++-
 lib/MusicBrainz/Server/WebService/XMLSerializer.pm |   16 ++
 po/fixup/20130103-contexts.pl                      |   28 ++++
 po/fixup/20130107-MBS-5651.py                      |   87 ++++++++++
 po/mb_server.de.po                                 |    8 +-
 po/mb_server.el.po                                 |    6 +-
 po/mb_server.es.po                                 |    8 +-
 po/mb_server.et.po                                 |    8 +-
 po/mb_server.fi.po                                 |    8 +-
 po/mb_server.fr_FR.po                              |    6 +-
 po/mb_server.it.po                                 |    8 +-
 po/mb_server.nl.po                                 |    8 +-
 root/artist/recordings-list.tt                     |    2 +-
 root/cdstub/edit_form.tt                           |    2 +-
 root/cdstub/index.tt                               |    2 +-
 root/cdtoc/attach_artist_releases.tt               |    6 +-
 root/cdtoc/attach_confirm.tt                       |    4 +-
 root/cdtoc/attach_filter_artist.tt                 |    4 +-
 root/cdtoc/attach_filter_release.tt                |    6 +-
 root/components/common-macros.tt                   |    7 +-
 root/components/forms.tt                           |    6 +-
 root/components/wikipedia_extract.tt               |    2 +-
 root/edit/details/add_cover_art.tt                 |    2 +-
 root/edit/details/edit_cover_art.tt                |    3 +-
 root/edit/details/remove_cover_art.tt              |    2 +-
 root/edit/list.tt                                  |    4 +-
 root/layout/menu.tt                                |   12 +-
 root/main/401.tt                                   |    5 +-
 root/recording/add_isrc.tt                         |    4 +-
 root/recording/create.tt                           |    4 +-
 root/recording/layout.tt                           |    2 +-
 root/release/add_cover_art.tt                      |    4 +-
 root/release/cover_art.tt                          |    7 +-
 root/release/edit/information.tt                   |   11 +-
 root/release/edit/layout.tt                        |    4 +-
 root/release/edit/missing_entities.tt              |  166 +++++++++++---------
 root/release/edit/tracklist.tt                     |    4 +-
 root/release/reorder_cover_art.tt                  |    4 +-
 root/static/images/favicons/thesession-16.png      |  Bin 0 -> 600 bytes
 root/static/scripts/common/MB/utility.js           |    5 -
 .../static/scripts/edit/MB/Control/ArtistCredit.js |    8 +-
 root/static/scripts/edit/MB/Control/URLCleanup.js  |    4 +-
 .../release-editor/MB/Control/ReleaseEdits.js      |    2 +-
 .../release-editor/MB/Control/ReleaseRecordings.js |    2 +-
 .../release-editor/MB/Control/ReleaseTracklist.js  |    2 +-
 .../scripts/release-editor/MB/TrackParser.js       |   12 +-
 root/static/scripts/tests/Control/URLCleanup.js    |   25 +++
 root/static/styles/layout.css                      |    4 +
 root/user/ratings_summary.tt                       |    2 +-
 root/work/create.tt                                |    4 +-
 .../Server/Controller/WS/2/BrowseRelease.pm        |   48 ++++++
 .../Server/Controller/WS/2/JSON/BrowseReleases.pm  |   56 +++++++
 .../Server/Controller/WS/2/JSON/LookupRelease.pm   |   70 ++++++++
 .../Server/Controller/WS/2/LookupDiscID.pm         |   18 ++
 .../Server/Controller/WS/2/LookupNonCore.pm        |    6 +
 .../Server/Controller/WS/2/LookupRelationship.pm   |   12 ++
 .../Server/Controller/WS/2/LookupRelease.pm        |   60 +++++++
 .../Server/Controller/WS/2/LookupTagsRatings.pm    |    6 +
 t/sql/statistics.sql                               |   10 +-
 t/sql/webservice.sql                               |    5 +
 71 files changed, 759 insertions(+), 205 deletions(-)
 create mode 100755 admin/replication/hooks/post-process.sample
 create mode 100644 lib/MusicBrainz/Server/Data/NES/Work.pm
 create mode 100644 lib/MusicBrainz/Server/Entity/NES/Edit.pm
 create mode 100644 lib/MusicBrainz/Server/Entity/NES/Work.pm
 copy lib/MusicBrainz/Server/Entity/URL/{45cat.pm => TheSession.pm} (92%)
 create mode 100644 po/fixup/20130103-contexts.pl
 create mode 100644 po/fixup/20130107-MBS-5651.py
 create mode 100644 root/static/images/favicons/thesession-16.png

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit b64041e9db43433be5ef57abc583bc0ee90a2504
Merge: 8422e38 9f8b507
Author: Oliver Charles <[email protected]>
Date:   Tue Jan 15 12:23:20 2013 +0000

    Merge branch 'beta' into data-nes
    
    # By Ian McEwen (35) and others
    # Via Ian McEwen (16) and others
    * beta: (52 commits)
      Fix invalid syntax
      Fix invalid use of `with_translations`
      Try fixing the edit ID conflict a different way
      Revert "Change edit ID number in webservice.sql, conflicting with statistics.sql"
      Change edit ID number in webservice.sql, conflicting with statistics.sql
      Change editor name in webservice.sql, since it seems to be breaking a unique constraint in tests
      MBS-5749: Add edit profile link to 401 error page
      MBS-5540: Release editor eats tracklists
      MBS-5702: Tweak link to wikipedia below wikipedia extracts
      MBS-5691: link ISRCs in the artist recording list view
      MBS-5415 revert: missed a spot
      i18n: revert MBS-5415, as it's proven unworkable
      Change to using a directory full of hooks, rather than a single file.
      MBS-4536: Add some cover art to webservice.sql and update tests
      MBS-4536: Fix other webservice tests that were broken
      MBS-4536: Don't output cover-art-archive data in JSON if it's not loaded
      MBS-5651: Fix unescaped quotes in msg* strings.
      MBS-5651: Escape quotes in msg* strings.
      MBS-5651: Run the revised script.
      MBS-5651: Handle the "barcode" link as well.
      ...


commit 8422e3896ecb441d0a1a2d89766979e03b6849f9
Author: Oliver Charles <[email protected]>
Date:   Tue Jan 15 12:15:59 2013 +0000

    /work/create: Correctly send ISWCs to data-service

diff --git a/lib/MusicBrainz/Server/Controller/Work.pm b/lib/MusicBrainz/Server/Controller/Work.pm
index dae5a79..9086bd9 100644
--- a/lib/MusicBrainz/Server/Controller/Work.pm
+++ b/lib/MusicBrainz/Server/Controller/Work.pm
@@ -122,16 +122,6 @@ after 'merge' => sub
     $c->model('ISWC')->load_for_works(@{ $c->stash->{to_merge} });
 };
 
-# with 'MusicBrainz::Server::Controller::Role::Create' => {
-#             post_creation => sub {
-#                 my ($edit, $form) = @_;
-#                 my $work = $c->model('Work')->get_by_id($edit->entity_id);
-#                 my @iswcs = @{ $form->field('iswcs')->value };
-#                 $self->_add_iswcs($c, $form, $work, @iswcs) if scalar @iswcs;
-#             }
-# };
-
-
 sub create : Local Edit {
     my ($self, $c) = @_;
 
@@ -147,9 +137,11 @@ sub create : Local Edit {
                 language => $values->{language_id},
                 name => $values->{name},
                 comment => $values->{comment}
-            }
+            },
+            $values->{iswcs} // []
         );
 
+        # NES:
         # my $privs = $c->user->privileges;
         # if ($c->user->is_auto_editor &&
         #     $form->field('as_auto_editor') &&
diff --git a/lib/MusicBrainz/Server/Data/NES/Work.pm b/lib/MusicBrainz/Server/Data/NES/Work.pm
new file mode 100644
index 0000000..57570bc
--- /dev/null
+++ b/lib/MusicBrainz/Server/Data/NES/Work.pm
@@ -0,0 +1,35 @@
+package MusicBrainz::Server::Data::NES::Work;
+use Moose;
+
+use MusicBrainz::Server::Entity::NES::Work;
+
+with 'MusicBrainz::Server::Data::Role::NES';
+
+sub create {
+    my ($self, $edit, $editor, $work, $iswcs) = @_;
+
+    my $response = $self->request('/work/create', {
+        edit => $edit->id,
+        editor => $editor->id,
+        work => $work,
+        iswcs => [
+            map +{ iswc => $_ }, @$iswcs
+        ]
+    });
+
+    return $self->get_revision($response->{ref});
+}
+
+sub get_revision {
+    my ($self, $revision_id) = @_;
+
+    my $response = $self->request('/work/view-revision', { revision => $revision_id });
+
+    return MusicBrainz::Server::Entity::NES::Work->new(
+        name => $response->{data}{name},
+        gid => $response->{mbid}
+    );
+}
+
+__PACKAGE__->meta->make_immutable;
+1;
diff --git a/lib/MusicBrainz/Server/Entity/NES/Edit.pm b/lib/MusicBrainz/Server/Entity/NES/Edit.pm
new file mode 100644
index 0000000..c2192e9
--- /dev/null
+++ b/lib/MusicBrainz/Server/Entity/NES/Edit.pm
@@ -0,0 +1,6 @@
+package MusicBrainz::Server::Entity::NES::Edit;
+use Moo;
+
+has id => ( is => 'ro' );
+
+1;
diff --git a/lib/MusicBrainz/Server/Entity/NES/Work.pm b/lib/MusicBrainz/Server/Entity/NES/Work.pm
new file mode 100644
index 0000000..685ad57
--- /dev/null
+++ b/lib/MusicBrainz/Server/Entity/NES/Work.pm
@@ -0,0 +1,12 @@
+package MusicBrainz::Server::Entity::NES::Work;
+use Moo;
+
+has gid => (
+    is => 'ro'
+);
+
+has name => (
+    is => 'ro'
+);
+
+1;

-----------------------------------------------------------------------


hooks/post-receive
-- 
mb_server