- Add
stub_any_publishing_api_unreserve_path
test helper. - Fix Publishing API
stub_any_publishing_api_call
methods only operating on the V2 endpoint.
- Change Worldwide API requests to be routed to whitehall-frontend by default, rather than whitehall-admin. Update the test helpers accordingly.
- Issue a warning when deprecated stub methods are called.
stub_*
methods should be used instead. - Remove methods incorrectly marked as being stubs, I don't expect any are used externally so shouldn't be a breaking change.
- Add
get_live_content
method toGdsApi::PublishingApi
- Fix
GdsApi::TestHelpers::PublishingApiV2
not requiring Publishing API test helpers.
- Make success and error responses on Publishing API path methods accurate.
- Deprecate
stub_default_*
Publishing API test helpers in favour of thestub_any_*
convention. - Add
stub_publishing_api_path_reservation
test helper method. - Combine
GdsApi::PublishingAPI
andGdsApi::PublishingApiV2
- BREAKING: Remove
GdsApi::Rummager
. UseGdsApi::Search
instead.
- BREAKING: rename Email Alert API adapter method to create auth token
- Add Email Alert API adapter method to send subscription verification email
- Add stubs for email-alert-api edge cases (auth token and subscriber update)
- Extend the email-alert-api subscription stub to support an array of subscriptions
- Removes publishing pacts for released versions as they incorrectly referenced unreleased changes
- Removes
Search#advanced_search
- Update get_subscriptions endpoint for email-alert-api to accept order param
- Renames the Email Alert API
send_alert
method tocreate_content_change
(and related test helper methods) to reflect a change in the underling endpoint. Note: this is a breaking change for users of the Email Alert API adapters. - Adds
create_email
Email Alert API method to send individual emails. - Adds
create_message
Email Alert API method to send message emails out to a subscriber list.
- Adds content_id to worldwide location test helper
- Adds middleware to allow the header
X-Govuk-Authenticated-User-Organisation
to be passed along to content-store. - Changes logging level about header forwarding from info to debug
- Adds
combine_mode
parameter to Email Alert API test helpers
- Adds
combine_mode
parameter to Email Alert APIfind_subscriber_list
method
- Adds
stub_email_alert_api_has_subscriptions
test helper method. - Ensures that
stub_email_alert_api_has_subscription
also stubs the/latest
endpoint.
- Add
get_latest_matching_subscription
method toGdsApi::EmailAlertApi
.
- Warn when
GdsApi::Rummager
is initialised andGdsApi::TestHelpersRummager
is included.
- Add
GdsApi::Search
, deprecateGdsApi::Rummager
. - Add
GdsApI::TestHelpers::Search
, deprecateGdsApi::TestHelpers::Rummager
. - Make
GdsApi.search
return aGdsApi::Search
, deprecateGdsApi.rummager
.
- Use
POST
rather thanGET
to perform anonymous feedback queries with support-api.
- Expect applications to access the bank holidays API via the public website and not internally via the calendars app.
- Rename references of subscribable to subscriber_list in Email Alert API. Note this is a breaking change for users of the Email Alert API adapters, clients will need to also update any references to subscribable.
- Support new unreserve_path endpoint for Publishing API (v1) adapter
- Remove reject_content_purpose_supergroup as optional email alert api subscriber list param
- Find rummager by using the "search" alias, rather than referring to "rummager" directly
- Add reject_content_purpose_supergroup as optional email alert api subscriber list param
- Add GdsApi::PublishingApiV2#republish endpoint to
publishing_api
- Rename
create_business_finder_feedback
tocreate_content_improvement_feedback
- Add Router API stubs for getting routes.
- Add
content_purpose_supergroup
as optional parameter tofind_subscriber_list
inGdsApi::EmailAlertApi
- Add automatic bearer tokens for
GdsApi.router
andGdsApi.content_store
.
- Add
create_business_finder_feedback
toGdsApi::SupportApi
- Add
stub_support_api_create_business_finder_feedback
toGdsApi::TestHelpers::SupportApi
- Fix more deprecated helpers (Asset Manager and Link Checker API)
- Fix stub_asset_manager_receives_an_asset not returning unique filenames each call
- Rename stub_asset_manager_is_down to stub_asset_manager_isnt_available
- Fix broken test helper for Publishing API
- Change all test helpers to use a stub_ prefix (old names are now aliases)
- Add additional Asset Manager test helper methods
- Pass
LINK_CHECKER_API_BEARER_TOKEN
in Link Checker API requests if present. - Pass
SUPPORT_API_BEARER_TOKEN
in Support API requests if present.
- Change the expected Publishing API behaviour regarding percent-encoding of URLs included in responses.
- Remove many deprecated methods
GdsApi::TestHelpers::Rummager.stub_any_rummager_post_with_queueing_enabled
- Use
stub_any_rummager_post
instead
- Use
GdsApi::Rummager.delete_content!
andGdsApi::Rummager.get_content!
- Use
delete_content
andget_content
respectively
- Use
GdsApi::PublishingApiV2.get_content!
- Use
get_content
instead
- Use
GdsApi::PublishingApi.put_path
- Use
GdsApi::PublishingApiV2.put_path
instead
- Use
GdsApi::ContentStore.get_content!
- Use
get_content
instead
- Use
- Remove the
type
parameter fromGdsApi::Router.get_route
- Remove the
GdsApi::Helpers
module- Use the
GdsApi
module methods instead
- Use the
- Add SocketError exception handling.
- Change how the default logger is assigned.
- Ensure new Publishing API patch_links stub is symbol/string-agnostic
- Change GdsApi.organisations adapter to use the public organisations API
- Fix the URL for Rummager batch queries.
- Extend Publishing API V2 unavailable stub to cover legacy V1 routes
- Extend Asset Manager not found stub to cover delete action
- Add extra Publishing API stub for conflict when patching links
- Add ability to batch search Rummager
- Expect
GdsApi::TestHelpers::Organisations
to be using the public API instead of Whitehall.
- Add methods to GdsApi to create instances of adapters with common options to reduce boilerplate code across apps
- Deprecate GdsApi::Helpers in favour of using explicit GdsApi.service_name methods
- Add Asset Manager test helpers:
asset_manager_update_asset
,asset_manager_update_failure
,asset_manager_delete_asset
andasset_manager_delete_asset_failure
.
- Remove support for caching responses.
- Add support for the
unpublish-messages
endpoint in email-alert-api
- Expose the
country_name
parameter as part of the Mapit test helper - Add
put_path
method to PublishingApiV2
- Add
generate
argument topublishing_api_has_expanded_links
which reflects the behaviour of the actual request more closely
- Make the subscription response for Email Alert API closer to reality.
- Add
create_auth_token
toGdsApi::EmailAlertApi
.
- Add
unsubscribe_subscriber
toGdsApi::EmailAlertApi
.
- Change
get_subscriptions
andchange_subscriber
to accept a subscriber ID rather than an email address
- Add a title parameter to the
get_subscription_response
stub for Email Alert API.
- Add
get_subscription
,get_subscriptions
,change_subscriber
andchange_subscription
toGdsApi::EmailAlertApi
.
- Add
GdsApi::HTTPIntermittentServerError
andGdsApi::HTTPIntermittentClientError
superclasses. - Add a
GdsApi::HTTPTooManyRequests
exception
- Remove deprecated
notifications
andnotification
methods fromGdsApi::EmailAlertApi
.
- Add support for the /feedback-by-day endpoint in the Support API
- Add
locale
param toget_expanded_links
in the Publishing API client
- Add helper method
.redirect_for_path
to GdsApi::ContentStore to allow determining a redirect destination from a request
- Add frequency param to
assert_subscribed
in Email alert api test helpers
- Include frequency as a parameter when subscribing to emails through Email alert api
- Breaking Change: Require a minimum of Ruby 2.3
- Change name of
DISABLE_JSON_API_CACHE
environment variable toGDS_API_DISABLE_CACHE
- Percent encode URLs when requesting Whitehall assets from Asset Manager API
- Add Environment variable which can disable caching of JSON API requests,
DISABLE_JSON_API_CACHE
- Add V2 api endpoints for GdsAPI::Rummager#delete_document
- Add V2 api endpoints for GdsAPI::Rummager#insert_document
- Add GdsApi::SupportApi#document_type_list to retrieve list of formats for content items
- Add GdsApi::SupportApi#document_type_summary to retrieve feedback associated with content items of a certain format.
- Add
with_drafts
optional parameter to GdsApi::PublishingApiV2#lookup_content_ids and GdsApi::PublishingApiV2#lookup_content_id
- Add #email_alert_api_refuses_to_create_subscription test helper for email-alert-api to simulate an error condition when trying to create a subscription.
- Add GdsApi::EmailAlertApi#get_subscribable to retrieve subscribable
(currently SubscriberList in the api) by
gov_delivery_id
(calledreference:
here as we will be renaming it in the API)
- Add GdsApi::PublishingApiV2#get_content_items_enum to enumerate content items
- Add GdsApi::EmailAlertApi#subscribe to allow users to subscribe to emails
- Add GdsApi::EmailAlertApi#unsubscribe to allow users to unsubscribe from emails.
- Remove GdsApi::NeedApi
- Change GdsApi::Router.delete_route to take an optional hard_delete argument, removing support for the deprecated type argument.
- Add GdsApi::Rummager#search_enum method to expose search results as an enumerator.
- Add GdsApi::LinkCheckerApi#upsert_resource_monitor method for creating/updating a collection of monitored links for an application.
- Add GdsApi::AssetManager#whitehall_asset method for retrieving Whitehall assets from Asset Manager.
- Allow rummager search to pass additional headers
- Document new optional
legacy_etag
&legacy_last_modified
attributes that can be passed intoGdsApi::AssetManager#create_whitehall_asset
within theasset
Hash (#760)
- Avoid the following warning: Overriding "Content-Type" header "application/json" with "multipart/form-data; boundary=----RubyFormBoundaryX7Na6WDQqG3kLfD7" due to payload
- Use 1.5.0 minimum of govuk-content-schema-test-helpers
- Remove gem_publisher dependency since rake task is no longer used to publish gem
- Add GdsApi::AssetManager#create_whitehall_asset method (#752)
- Remove trailing slash in call to get_link_changes
- Remove
GdsApi::GovUkDelivery
and helpers asgovuk-delivery
has been retired in favour ofemail-alert-api
- Add get_link_changes endpoint for publishing-api
- Resurrect
feedback_url
for Support (removed in 46.0.0) - Remove need-api helper Need API is being retired
- Group Sentry errors by exception type
-
Add the HTTPPayloadTooLarge exception
-
Add
get_links_for_content_ids
endpoint to Publishing API -
Add more specific exceptions for HTTPInternalServerError (500), HTTPBadGateway (502), HTTPUnavailable (503), HTTPGatewayTimeout (504) exceptions.
- Add
email_alert_api.topic_matches
- Separate
find_or_create_subscriber_list
so that individualfind
orcreate
methods can be called in email-alert-api.
- Add
generate
option for Publishing API expanded links endpoint
- Add
enable_list
anddisable_list
endpoints for govuk-delivery.
- Add a
get_paged_editions
endpoint, which returns a lazy enumerator that pages through results from the editions endpoint.
- Update
publishing-api
class to support the new get editions endpoint.
- Send the update_type of special routes on put content rather than publish.
- Make passing the
update_type
to the Publishing API on a publish optional.
- Fix Publishing API lookup_content_id and lookup_content_ids to send exclude_unpublishing_types rather than exclude_publishing_types.
- Pass exclude_document_types and exclude_publishing_types fields to to pubslishing APi
when calling
lookup_content_id
- Fixes url used for fetching search metrics from
backdrop read API
- Update
link-checker-api
class to support new message format.
- Remove support for
content-api
- Add
HTTPUnprocessableEntity
exceptions - Introduce 4 new endpoints for
backdrop read API
to be used byinfo-frontend
.
- Drop dead endpoints from support adapter
- Rename test helpers for support-api to make it clearer they stub requests to support-api
- Delete methods no longer needed by
licence-finder
:licences_for_ids
,content_api_licence_hash
,setup_content_api_licences_stubs
andcontent_api_has_licence
.
- Add api adapter for the bank-holidays json provided by calendars
- Revert changes made to
update_type
in the Publishing API pact tests in release 43.0.0 - Remove support for the
business-support-api
- Set the
update_type
to major in all of the Publishing API pact tests. - Remove support for
business_support_schemes
- Support custom schemas in the SpecialRoutePublisher
- Make
lgil
mandatory when requesting links from Local Links Manager
- Add missing
link-checker-api
test helpers from the previous release.
- Add support for the secure webhooks of the
link-checker-api
.
- Add support for the
link-checker-api
.
- Update webmock gem dependency
- Add new
locale
anddetails
fields to special routes
- Add new fields to 'find_or_create_subscriber_list' to support whitehall migration
- email_document_supertype
- government_document_supertype
- gov_delivery_id
- Port all jenkins.sh steps to Jenkinsfile
- Rename GOVUK_FACT_CHECK_ID header to GOVUK_AUTH_BYPASS_ID header
- Add support to request expanded links from publishing api with or without drafts
- The default is false, for backward compatibility
- #676
- https://github.com/alphagov/publishing-api/blob/master/doc/api.md#query-string-parameters-2
- Add support for a customized
document_type
when publishing a special route, but keep the defaultdocument_type
ofspecial_route
.
- Allow headers to be passed into
EmailAlertApi.send_alert
. This change is needed to pass thegovuk_request_id
when email alert service processes messages off rabbit mq. - Comment out pact broker jenkins tasks as the service is currently offline. This change will be reverted once pact broker is working again.
- Add support for passing logging parameters through to Gov Uk Delivery.
- Add a redirects option to the Unpublish adapter in Publishing API
- Remove Panopticon API
- Include the files within the test/fixtures directory, this fixes some test helpers that would have been broken since 39.0.0.
- Add support for the import endpoint for the Publishing API.
- The
publishing_api_has_item
test helper can now take a hash of params to match the request against. - Remove Rails specific features from the implementation of some Publishing API test helpers.
- Pass through GOVUK_FACT_CHECK_ID header. This will be added by authenticating-proxy when a draft item is requested with a valid JWT token; the value itself will be checked by content-store against the value stored in the content item.
- Remove the
need_api_has_organisations
test helper.
- Handle URI::InvalidURIError exceptions with GdsApi::InvalidUrl
- Removed tests for the deprecated
format
field in the Publishing API.
- Added an adapter for the import endpoint of the Need API.
- Removed
GdsApi::Publisher
- Removed
GdsApi::ExternalLinkTracker
- Removed deprecated
PublishingApi
endpoints (put_content_item
andput_draft_content_item
). - Removed
ContentStore#incoming_links!
- Removed
ContentStore#content_item!
- Removed
PublishingApiV2#get_content!
- Renamed
Rummager#delete_content!
toRummager#delete_content
- Renamed
Rummager#get_content!
toRummager#get_content
- Allow #dig on Response.
- Support
unpublished_at
field forPublishingApiV2#unpublish
- Add test helper methods to stub any unpublish or discard draft requests to Publishing API V2.
- Add a helper method for extracting service feedback from the performance platform.
- Add test helper method
publishing_api_has_linked_items
for the Publishing API V2 methodget_linked_items
.
- Add
restore_asset
method to allow the restoration of deleted assets.
- Default
always_raise_for_not_found
to true when not configured and add deprecation warning for when a client app uses the setter to change the value. From December 1st, 2016 it won't be possible to configure this option anymore and therefore all responses will raise aGdsApi::HTTPNotFound
for 404s andGdsApi::HTTPGone
for 410s; - Default
hash_response_for_requests
to true when not configured and add deprecation warning for when a client app uses the setter to change the value. From December 1st, 2016 it won't be possible to configure this option anymore and therefore all responses will behave like aHash
instead of anOpenStruct
; - Add helper methods to stub and assert Rummager searches;
- Stop using
content_format
in the Publishing API tests; - Documentation added to
get_content_items
; - Ruby version upgraded to
2.3.1
; - Added
govuk-lint
to the project.
- Fix bug where the total number of pages was being calculated incorrectly on
publishing_api_has_content
; - Return only the expected items based on the pagination parameters on
publishing_api_has_content
.
- Remove search-related fields from Panopticon Registerer now that these fields are no longer sent by client apps.
- Add a support-api endpoint for creating 'Page Improvements'.
- Add delete_asset method, to support the new delete asset functionality now supported by asset manager.
- Fix issue where rspec style matchers would cause issues, since they do not implement the fetch method.
- Add helpers for the support-api for fetching problem reports and for marking problem reports as spam.
- Add option to return results as a hash in
GdsApi::ListResponse
.
- Remove
GdsApi::Rummager#unified_search
. The/unified_search
endpoint has been removed in rummager in favor of/search
. This is a breaking change, which means applications currently using#unified_search
need to migrate to#search
.
- Fix issue where Pact would hit the Publishing API in development if the
service was running on the same port
3093
; - Return pagination information from
publishing_api_has_content
in order to reflect what would happen in a real request.
- Remove methods for
with_tag
endpoint for content api. These methods are not used by any client. The endpoint is scheduled to be removed soon. - Add test helper for Gone items in content store
- Deprecate
GdsApi::Rummager#unified_search
. The/unified_search
endpoint has been deprecated in rummager in favor of/search
.
- De-deprecate
delete_document
helpers, because the endpoint is still useful. - Allow
/document/
helpers to take an optional index parameter, mirroring the API. - Allow all assert methods to pass through additional webmock options
- Change
stub_any_rummager_post
to behave the same asstub_any_rummager_post_with_queueing_enabled
: rummager always returns 202 and so should our stubs. - Deprecate
stub_any_rummager_post_with_queueing_enabled
as it is now redundant.
- Fix JsonClient not explicitly requiring the config
- Send correct headers for GET and DELETE requests.
- Extend option to always raise for 404 and 410 to
get_raw
.
- Update RestClient version to 2.0.0
- Add support-api global export endpoint
- Simplify state name presentation (live to published)
- Add option to always raise for 404 and 410.
- Add option to make
GdsApi::Response
just behave like a hash, not an OpenStruct - Add local links manager local authority endpoint
- Fix LocalLinksManager test URLs
- Add LocalLinksManager
local_link
adapter.
- Add
publishing_api_has_item_in_sequence
test helper
- Allow publishing apps to request a specific version of content.
- Provide a warning message for rummager deprecated stubs
- Modify Rummager test helper to use
rummager
vhost instead ofsearch
. This is a breaking change, which means applications currently using the helper will need to ensure they are using therummager
vhost when creating the adapter.
- Add
allow_draft
flag that can optionally be set when unpublishing
- Add
stub_any_rummager_delete_content
andassert_rummager_deleted_content
- Add an
area_for_code
method to the MapIt API adapter.
- Add a
stub_any_publishing_api_publish
test helper
- Remove
format
from expected results in Pact tests.
- Add
assert_publishing_api_unpublish
test-helper
- Stubs successful and failing attachment uploads to asset manager.
- Allow
bulk_publishing
flag forPublishingApiV2#patch_links
- Use
document_type
&schema_name
in special routes - Remove implicit dependency between JsonClient and GdsApi::Base
- Add support for get_expanded_links endpoint
- Add
locale
parameter to unpublish endpoint. - Add publishing-api
stub_publishing_api_unpublish
test helper method.
- Add publishing API POST /v2/content/:content_id/unpublish endpoint See docs for more info: https://github.com/alphagov/publishing-api/blob/master/doc/api.md#post-v2contentcontent_idunpublish
- Add email alert API
GET notifications
andGET notification
endpoints
- Update README and add documentation. See http://www.rubydoc.info/gems/gds-api-adapters/GdsApi/PublishingApiV2 for example.
- Remove content-register
- Add
GdsApi::GovukHeaders.clear_headers
- Add stub for
publishing_api_get_content
inpublishing_api_v2
test helper.
- Extend publishing API 'stub_publishing_api_publish' test helper to accept a response hash
- Change test helper
- Wrap resultant calls to GET /v2/content in meta data
- Add
GdsApi::PublishingApiV2#lookup_content_id
andGdsApi::PublishingApiV2#lookup_content_id
- Add
publishing_api_has_lookups
test helpers
- Add
GdsApi::HTTPUnprocessableEntity
to represent a 422 error
- Support searching by a
document_type
in email-alert-api
- Fix linkables test helper.
- Prefer
document_type
as the arg forget_linkables
, deprecatingformat
.
- Enable Draft Content Store testing in test helpers.
- Fix publishing API
patch_links
test helpers.
- Add code and pact tests for the new publishing API
GET /v2/linkables
endpoint.
- Breaking change: rename
PublishingApiV2
'sput_links
topatch_links
to better reflect the behaviour. Also rename related test_helper methods.
- Fixed
TestHelpers::Imminence
missingend
.
TestHelpers::Imminence
now hasimminence_has_places_for_postcode
andstub_imminence_places_request
helper methods. There was previously no helper for the find places with post code tools. It is now possible to stub all requests for places with any status code or payload as required.
TestHelpers::PublishingApiV2
now has apublishing_api_does_not_have_links
test helper which stubs the Publishing API V2 to return the 404 payload for thecontent_id
passed as the arg.
- Pass the Govuk-Original-Url header on to requests made by gds-api-adapters,
similarly to the existing Govuk-Request-Id header. Rails applications will
get this support automatically when using this version of gds-api-adapters.
Other applications will need to add an explicit call to
use GdsApi::GovukHeaderSniffer, 'HTTP_GOVUK_ORIGINAL_URL"
, as detailed in the README.
TestHelpers::PublishingApiV2
now has apublishing_api_does_not_have_item
test helper which stubs the Publishing API V2 to return the 404 payload for thecontent_id
passed as the arg.
- Add
PublishingApiV2#get_content!
TestHelpers::PublishingApiV2
now has apublishing_api_has_links
test helper which stubs the Publishing API V2 to return the links payload which is supplied as the arg.
- In
TestHelpers::PublishingApiV2
- for methods that accept an optional argattributes_or_matcher
, change the default value to nil so that we don't test for request body if the argument is not supplied. - In the same class, fix
#publishing_api_has_fields_for_format
so that we always cast theitem
arg to Array. This correctly handles cases where only one item is passed in.
- Drop support for Ruby 1.9.3
- Raise
HTTPUnauthorized
for 401 responses
- Fix
ContentStore#incoming_links
.
PublishingAPIV2
: prevent clients from using nilcontent_id
values
- Add some useful test helpers for EmailAlertApi
- Pin Plek to >= 1.9.0 because gds-api-adapters depends on Plek.find
- Add Plek service discovery for EmailAlertApi test helpers
- Fix issue within
PublishingApiV2
test helpers whererequest_json_matching
andrequest_json_including
were incorrectly named and had the opposite behaviour. - The default behaviour of
assert_publishing_api
(and the more specific helpers that use it) is not to match the entire supplied attributes. To do partial matching userequest_json_includes
- Add support for symbol keys to the
PubishingApiV2
test helpers.
- Add support for Rummager's
delete_content
&get_content
.
- Add
PublishingApiV2#get_linked_items
.
- Changed SpecialRoutePublisher to use v2 of publishing-api
- Performance Platform: add test helper stub for non-existent datasets
- Add
ContentStore#incoming_links!
- Fix the composite "put and publish" Publishing API v2 stub
- Publishing API v2: add stub for 404 responses
- Support optional locale and previous version for discard_draft publishing API call
- Add publishing api discard draft endpoint
- Flesh out and rename methods in Publishing API v2 test helpers
- Add Test Helpers for Publishing API V2
index
andget
- Add
PublishingApiV2#get_content_items
.
- Add support for optimistic locking to the v2 publishing API endpoints.
- Allow
Mapit#location_for_postcode
to raise if it receives something which doesn't look like a postcode.
- Add test helpers for Publishing-API path reservation endpoint
- Add put_path endpoint for Publishing-API
- Support segments_mode option for add_redirect_route.
- Adds the helper methods and pact tests for the GET and PUT publishing API endpoints for managing links independently of content items.
- Set the connection timeout in RestClient as well as the read timeout
- Raise
HTTPConflict
exception for HTTP 409 status codes.
- Change the Panopticon Registerer adapter to support the
content_id
field.
- Add test helper
content_register_isnt_available
- Remove support for the
/organisations
endpoint on Rummager.
- Bugfix:
SpecialRoutePublisher
handles case whereTime.zone
returnsnil
- Bugfix: remove invalid require from GdsApi::Helpers
-
Add special route publisher under PublishingApi.
This is be used in several apps for registering "special" routes like /government or /robots.txt
See https://trello.com/c/blLdEZN5/292-make-apps-register-special-routes-on-deploy
-
GdsApi::TestHelpers::PublishingApi
added the ability to make more flexible assertions about publishing api requests by optionally passing a predicate to the assertions. The
request_json_including
predicate will match required elements of a hash or a nested hash in the JSON body.The existing stricter behaviour is retained as the default (
request_json_matching
predicate).
- Remove
GdsApi::Rummager#search
. The/search
endpoint was removed from rummager in favor of/unified_search
.
-
Remove
FinderAPI
andFinderSchema
classes. Finder API has been retired and these are no longer used. -
Raise specific error on 404 in content-store client.
- Using GdsApi::ContentApi#tag without the second parameter for tag type will raise an error.
- Fix content-store test stubs key type
- Fix GdsApi::Response
method_missing
signature
- Fix stray collections-api require
- Change the user agent string to include the app name, eg:
GDS Api Client v. 20.1.0
->gds-api-adapters/20.1.0 (whitehall)
-
remove collections-api client and helpers. The application has been retired.
-
Don't cache Cache-Control "private" and "no-store" responses.
-
Update content_store_has_item test helper to support better overriding of Cache-Control headers in responses.
- Raise HTTPForbidden on a 403 response.
- Pass HTTP_X_GOVUK_AUTHENTICATED_USER in API requests.
- Remove old policy test helpers for rummager.
- Add support for organisation list and show in Support API
- Add support for exporting CSVs from the Support API
- Fix a bug in the SupportApi test helper for organisations_list
- Support API: add adapters for
/anonymous-feedback/organisations
list, and/anonymous-feedback/organisations/:slug
feedback summary endpoints.
- Support API: add adapter for
/anonymous-feedback
feed endpoint
- Change name of Rummager policy-tagging test helpers to reflect the fact that they stub for any type. Deprecates the old helpers.
- Change Rummager test helpers to allow stubbing specific counts for requests for policies for an organisation.
- Add Rummager test helpers to stub requests for policies for an organisation.
- Make TestHelpers::Organisations more flexible
- Fix
content_api_has_artefacts_with_a_tag
test helper
- Add assert_publishing_api_put_draft_item to publishing_api_helpers
- Bump rest-client for security fixes
- Remove base_path from publishing_api content_item_helpers.
- Add helper to stub draft publishing API default.
- Adds support for the PUT endpoint of content register
- Test helpers for the
GdsApi::ContentRegister
adapter
# 18.0.0
- Update rest-client dependency for security fixes: https://github.com/rest-client/rest-client/commit/221e3f200f76bd1499591fbc6c3ea3f6183b66ef
- Publishing API test helpers responses no longer include the entities
- Government API test helpers responses include the content_id
- Add publishing API method to
PUT
draft content items, to be stored only in draft content-store.
- Add ability to pass
n
to some PublishingAPI test helpers to say how many times the request should be expected.
- Add delete helpers to GdsApi::TestHelpers::Rummager
- Deprecate passing
type
toGdsApi::Router#get_route
andGdsApi::Router#delete_route
- Add PublishingApi intent endpoints and test helpers.
- Add a test helper to stub Rummager's behaviour when queueing is enabled.
- Change the order of the ContentAPI
tags
request stubs as the first matching stub is used. - Loosens the live
tags
stub to allow cachebust, as per the draft version.
- Change the matching behaviour of ContentAPI test helpers to loosen their param requirements.
- Add a
bust_cache
option for the ContentAPItags
endpoint.
- Add Whitehall and Publisher endpoints for reindexing editions tagged to topics.
- Change the Panopticon Registerer adapter to support the
public_timestamp
andlatest_change_note
fields.
- Update content API test helper
#content_api_has_artefacts_with_a_tag
to guard against missing keys
- Extend content API test helper
#content_api_has_artefacts_with_a_tag
to support options for artefacts.
- Update collections API test helpers to reflect reality.
- Add test helper method to stub gone route registration.
- Add support for registering gone routes with the router.
- Add
start
andtotal
options to the Collections API test helper.
- Allow the
start
andcount
arguments to be provided to the Collections API adapter for a sub-topic.
- Pass correct parameters to assert_requested in email alert API endpoint helpers.
- Include latest changes in collections API endpoint.
- Add Rummager test helpers for adding documents
- Change e-mail alert API endpoints
- Add panopticon support for
primary_section
andsections
- Deprecate support for
section
- Reduce public interface for Email Alert API (unused)
- Add support for endpoints to create, update and publish tags in Panopticon
- Add email alert API support
- Add problem reports endpoint to
support-api
- Add
support-api
endpoint for getting problem report daily totals - Add Performance Platform endpoint for uploading problem report daily totals
- Add long-form contact endpoint to
support-api
- Add extra layer of inheritance for HTTP Exception classes to provide HTTPServerError and HTTPClientError in order to allow applications to to catch ranges of Server/Client type errors.
- Add a helper method,
build_specific_http_error
, in order to handle raising specific error types based on HTTP error codes.
- Add
custom_matcher
parameter to panopticonstub_artefact_registration
to allow partial matching of request body.
- Corrects the endpoint for
#collections_api_has_no_curated_lists_for
test helper
- Corrects the collections api endpoint for curated lists
- Add more content api draft tag functions.
- Add "does not have" stubs for content api tags.
- Expand collections api test helpers.
- Adds basic collections API client and test helpers
- Update the content API sorted tags test helper to support draft mode.
- Add rummager test helper for stubbing sub-sector organisations (
rummager_has_specialist_sector_organisations
).
- Split content item write API from the content store client into a new publishing API client.
FinderSchema#user_friendly_values
now returns a hash with the slug version of the attribute as the key, with a label and a values Array, which contains a label and slug version of each value.
- Add test helper for content store being unavailable
- Stub "everything including draft" calls for tag test helpers even when the helpers themselves aren't setting up draft tags.
- Fixes services and info data fixture
- Add
rummager_has_no_services_and_info_data_for_organisation
- Add "draft" option to the content_api.tags method.
Add .expires_in, .expires_at to GDSApi::Response
These methods expose the expiration time in seconds and absolute time value respectively, by inferring them from max-age or expires values received in response from content store.
- Add rummager test helpers
FinderSchema#user_friendly_facet_value
always returns metadata values as Arrays.
- Support the
sort
parameter on the Content API adapter'stags
andchild_tags
methods. - Include test for Rummager adapter behaviour on a response with a 422 status.
- Add
support-api
adapter
- Improve content-store test helpers
- Add
add_document
andremove_document
methods to Rummager adapter.
- Add content-store test assertion helper.
- Adds areas_for_type method for Imminence.
- BREAKING CHANGE: router client no longer commits by default (see https://github.com/alphagov/gds-api-adapters/commit/f7a6f5e for more details).
- Added more test helpers for router client
- Bug fix: remove
put_content_item
, we want to be aware ofPUT
failing on content store
- Add methods for PUTing data to content-store.
- Lookup Mapit areas by postcode via Imminence.
- Fix inheritance of content-store client.
- Update business support scheme helpers to match API behaviour.
- Expose Mapit areas by area type. Adds the method
areas_for_type(type)
.
- Update organisation test helper, adding logo and brand class details to the helper
- Add router test helpers
- Add Maslow adapter with link builder
- Add panopticon artefact registration test helper
- Add support for registering multiple need_ids with panopticon
- Add support for
PUT
multipart requests - Add support for replacing assets in asset manager using
PUT
- Data-in API (corporate content problem reports): endpoints for counts, top urls
- Include organisation slugs if available when registering artefacts
- Add an
artefact!
method to Content API adaptor that can raise exceptions
- Added
needs_by_id
method to Need API adaptor for retrieving multiple needs with one request
- Data-in API (service feedback): specify which dataset is missing in the exception
- Fix bug with default schema factory for finder API
- Add more methods to interact with the finder API schema response
- Add new unified search endpoint for Rummager adapter
- Added method for finder API schema endpoint
- Added client for interacting with the GOV.UK finder API.
- Added support for array parameters in query strings (eg
foo[]=bar&foo[]=baz
)
- Modify test helpers to match changes to
web_url
andtag_id
in Content API. - Add test helper for stubbing artefacts with multiple tags.
- Added client for interacting with the GOV.UK external link tracker.
- Query business support schemes by faceted search parameters e.g.
locations=scotland,england
. - Remove the ability to retrieve by identifiers.
- Remove obsolete
curated_lists
method from Panopticon API.
- Rename
industry_sectors
attribute tospecialist_sectors
to match Panopticon
- Add deep-link to anonymous feedback in Feedex.
- Update to a more sensible Performance Platform DataIn service feedback endpoint.
- Bugfix to constructing the Performance Platform DataIn service feedback endpoint.
- Add the Performance Platform DataIn service feedback endpoint, for uploading service feedback aggregated stats.
-
Allow the
industry_sectors
attribute to be provided to the Panopticon registerer. -
New Content API test helper added for stubbing
with_tag.json
request with a custom sort order. -
The Content API tag tests now use test helpers to stub endpoints.
-
Removed the
include_children
parameter from Content API adapters, which was removed from the Content API in April '13. -
Fix for the
content_api_has_artefacts_with_a_tag
helper to not expect query string parameters in an order when stubbing URLs. -
Fix for a typo in a test helper.
- Changes the test helpers for stubbing out Content API requests for artefacts with section tags so that they work for any tag type.
- Fix a bug where
gds_api/govuk_request_id.rb
would fail to load if theGdsApi
module was not already defined.
- Add a method to re-open closed needs in the need API.
- We've added a unique request ID called
GOVUK-Request-Id
at the varnish layer so that it's easier to trace a request moving through the GOV.UK application stack. This change ensures that all API calls pass on theGOVUK-Request-Id
header. More details in README.md.
- Changes to the Content API adapter to decouple tag methods from the
section
tag type. - Changes to Content API test helper stub data which may break tests in clients.
- Support app: problem report creation happens on
/anonymous_feedback/problem_reports
instead of/problem_reports
- Integrate Support app API for creating FOI requests
- Add Rummager method for
/organisations.json
-
Support arbitrary search parameters in
GdsApi::Rummager
-
Remove obsolete format_filter param from
GdsApi::Rummager
methods -
Remove obsolete autocomplete method from
GdsApi::Rummager
- Add Content API method for
/artefacts.json
Potentially backwards-incompatible changes:
- The
disable_timeout
option has been removed. JsonClient
now respects theExpires
headers when caching results. If noExpires
header is set, the global cache TTL will be used (defaults to 15 mins).- The Rummager client now inherits from
GdsApi::Base
. This means that it usesJsonClient
and therefore inherits its timeout and caching behaviour.
Other changes:
- Added Worldwide API client.