{"push_id":603106394,"size":7,"distinct_size":7,"ref":"refs/heads/schema-rework-2","head":"2cf9d92614213f9ac1c10f9a53ab5a7d5b01de15","before":"93639e7718741ca772957c63db90494783d21457","commits":[{"sha":"4c92e573bb692ca67bd4e5e47809dabca877bac0","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"Remove old schema configuration","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/4c92e573bb692ca67bd4e5e47809dabca877bac0"},{"sha":"5c14a15fd0233871bf99140c8058306664c94b56","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"Add IndexForSearch\n\nThis contains the necessary methods for performing a search using the\n\"unified_search\" index.\n\nBefore this change, the `Index` object is used for both searching and\nindexing.  However, when searching with the \"unified_search\" endpoint,\nmultiple elasticsearch indexes are searched.  This was implemented in a\nfairly hacky way previously, but now that we model schemas in a more\nstructured way it becomes very awkward to make most methods of the\n`Index` object work with multiple elasticsearch indexes.\n\nInstead, we separating the methods used by the `unified_search` endpoint\ninto a separate object which doesn't have to handle any index-time\nstuff.  Only this object then needs to work with multiple underlying\nelasticsearch indexes.\n\nThe object exposes the `index_names` and `schema` properties, to allow\nclasses using this object to look up the allowed values for a particular\ndocument type in a particular index - this is used in expanding fields,\nin particular to support the finders.","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/5c14a15fd0233871bf99140c8058306664c94b56"},{"sha":"6070842d6de1bf2278ce9a94ceb32e39127734b2","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"Use IndexForSearch for the unified_search endpoint\n\nUpdates ResultSetPresenter to use a new-style SchemaConfig object\ninstead of taking elasticsearch mappings.  This is used to expand the\nvalues returned for fields for which allowed_values are defined.","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/6070842d6de1bf2278ce9a94ceb32e39127734b2"},{"sha":"3fffecd172c1ae33feda6c337c0ff218abbd4c0e","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"fixup","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/3fffecd172c1ae33feda6c337c0ff218abbd4c0e"},{"sha":"448f27f9af445e561898680dd0a90f68459efd52","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"Remove the no-longer-used `Index.msearch` method","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/448f27f9af445e561898680dd0a90f68459efd52"},{"sha":"d9d9cd4ef9a5b3568a1a656f89930e67f97e97c1","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"Finish moving over to new-style schemas\n\nUpdates `SchemaConfig` to use the new-style schema parser, store the\nresulting hash from index-name to IndexSchema objects, and expose\nmethods for accessing the schema, elasticsearch settings and\nelasticsearch mappings for a given index name.  These methods also\nconvert any index name which ends in `-test` or `_test` to strip off the\nsuffix, making it easy to use the live configuration for test indexes.\nThis makes writing integration tests much easier.\n\nUpdates `SearchConfig` and `SearchServer` to work with the changes to\n`SchemaConfig`.  Also, expose `SchemaConfig.schema` for testing\npurposes.\n\nUpdates `IndexGroup` to expect a SchemaConfig object instead of\nelasticsearch settings and mappings.","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/d9d9cd4ef9a5b3568a1a656f89930e67f97e97c1"},{"sha":"2cf9d92614213f9ac1c10f9a53ab5a7d5b01de15","author":{"email":"2b6bbb4bffb950b0967cd3a1166c66cfcf859973@digital.cabinet-office.gov.uk","name":"Richard Boulton"},"message":"Fix integration + functional tests for new schema\n\nMostly, this involves stopping trying to generate stub index\nconfiguration, and just using the live configuration.  This makes the\ntests into tests for the code-paths we can actually hit anyway.\n\nAlso, change tests which used the \"rummager_test\" index to use\n\"mainstream_test\", since no configuration is now defined for \"rummager\"\nindexes.\n\nA couple of tests are removed:\n - `test_create_index_with_custom_mappings` tested that we could add\n   extra fields to an index, but we never do this.\n - `test_should_be_able_to_index_a_document_with_additional_fields`\n   was similar.\n\n`elasticsearch_advanced_search_test` is updated to use named examples of\na `boolean` and a `date` field, instead of creating special fields for\ntesting that these work.\n\n`elasticsearch_migration_test` is the only test that actually still\nstubs schemas, because it's checking that changes in the schema work as\nexpected.","distinct":true,"url":"https://api.github.com/repos/alphagov/rummager/commits/2cf9d92614213f9ac1c10f9a53ab5a7d5b01de15"}]}