Skip to content

Release 1.165.0 - #3915

Closed
odlbot wants to merge 8 commits into
releasefrom
release-candidate
Closed

odlbot wants to merge 8 commits into
releasefrom
release-candidate

Conversation

@odlbot

@odlbot odlbot commented Sep 1, 2026 •

Copy link
Copy Markdown
Contributor

annagav

Chris Chudzicki

cp-at-mit

Asad Ali

Nathan Levesque

rhysyngsun and others added 8 commits August 31, 2026 20:26
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…e Keycloak dataclasses (#3908)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
…eateBasketWithProductsSerializer (#3902)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown

OpenAPI Changes

Show/hide changes
## Changes for v0.yaml:
95 changes: 14 error, 21 warning, 60 info
error	[request-property-became-enum] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: application/json)

error	[request-property-became-enum] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: application/x-www-form-urlencoded)

error	[request-property-became-enum] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: multipart/form-data)

error	[request-property-became-not-nullable] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: application/x-www-form-urlencoded)

error	[request-property-became-not-nullable] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: application/json)

error	[request-property-became-not-nullable] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: multipart/form-data)

error	[request-property-became-required] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: application/json)

error	[request-property-became-required] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: application/x-www-form-urlencoded)

error	[request-property-became-required] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: multipart/form-data)

error	[request-property-one-of-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: application/x-www-form-urlencoded)

error	[request-property-one-of-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: multipart/form-data)

error	[request-property-one-of-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: application/json)

error	[request-property-type-changed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` changed from `any` to `string` (media type: application/json)

error	[response-success-status-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the success response with the status `200`

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: multipart/form-data)

warning	[request-property-pattern-changed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: multipart/form-data)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-pattern-changed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: application/json)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-pattern-changed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: application/x-www-form-urlencoded)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: application/json)

info	[request-property-became-nullable] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: multipart/form-data)

info	[request-property-became-nullable] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: application/x-www-form-urlencoded)

info	[request-property-became-nullable] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: multipart/form-data)

info	[request-property-default-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: multipart/form-data)

info	[request-property-default-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: application/json)

info	[request-property-default-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: application/x-www-form-urlencoded)

info	[request-property-min-length-decreased] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: application/json)

info	[request-property-min-length-decreased] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: multipart/form-data)

info	[request-property-min-length-decreased] at head/openapi/specs/v0.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-type-generalized] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` was widened from `any` to `string` (media type: multipart/form-data)

info	[request-property-type-generalized] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` was widened from `any` to `string` (media type: application/x-www-form-urlencoded)

info	[response-success-status-added] at head/openapi/specs/v0.yaml
	in API POST /api/v0/discounts/create_batch/
		added the success response with the status `201`



## Changes for v1.yaml:
95 changes: 14 error, 21 warning, 60 info
error	[request-property-became-enum] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: application/x-www-form-urlencoded)

error	[request-property-became-enum] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: multipart/form-data)

error	[request-property-became-enum] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: application/json)

error	[request-property-became-not-nullable] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: application/json)

error	[request-property-became-not-nullable] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: multipart/form-data)

error	[request-property-became-not-nullable] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: application/x-www-form-urlencoded)

error	[request-property-became-required] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: application/json)

error	[request-property-became-required] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: application/x-www-form-urlencoded)

error	[request-property-became-required] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: multipart/form-data)

error	[request-property-one-of-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: multipart/form-data)

error	[request-property-one-of-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: application/json)

error	[request-property-one-of-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: application/x-www-form-urlencoded)

error	[request-property-type-changed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` changed from `any` to `string` (media type: application/json)

error	[response-success-status-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the success response with the status `200`

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: application/json)

warning	[request-property-pattern-changed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: application/x-www-form-urlencoded)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-pattern-changed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: multipart/form-data)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-pattern-changed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: application/json)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: application/json)

info	[request-property-became-nullable] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: application/json)

info	[request-property-became-nullable] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: multipart/form-data)

info	[request-property-became-nullable] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-default-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: application/json)

info	[request-property-default-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: application/x-www-form-urlencoded)

info	[request-property-default-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: multipart/form-data)

info	[request-property-min-length-decreased] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: application/json)

info	[request-property-min-length-decreased] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: application/x-www-form-urlencoded)

info	[request-property-min-length-decreased] at head/openapi/specs/v1.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-type-generalized] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` was widened from `any` to `string` (media type: application/x-www-form-urlencoded)

info	[request-property-type-generalized] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` was widened from `any` to `string` (media type: multipart/form-data)

info	[response-success-status-added] at head/openapi/specs/v1.yaml
	in API POST /api/v0/discounts/create_batch/
		added the success response with the status `201`



## Changes for v2.yaml:
95 changes: 14 error, 21 warning, 60 info
error	[request-property-became-enum] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: application/json)

error	[request-property-became-enum] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: application/x-www-form-urlencoded)

error	[request-property-became-enum] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		request property `payment_type` was restricted to a list of enum values (media type: multipart/form-data)

error	[request-property-became-not-nullable] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: multipart/form-data)

error	[request-property-became-not-nullable] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: application/json)

error	[request-property-became-not-nullable] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became not nullable (media type: application/x-www-form-urlencoded)

error	[request-property-became-required] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: application/json)

error	[request-property-became-required] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: application/x-www-form-urlencoded)

error	[request-property-became-required] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `payment_type` became required (media type: multipart/form-data)

error	[request-property-one-of-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: application/x-www-form-urlencoded)

error	[request-property-one-of-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: application/json)

error	[request-property-one-of-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed `#/components/schemas/PaymentTypeEnum, #/components/schemas/NullEnum` from the `payment_type` request property `oneOf` list (media type: multipart/form-data)

error	[request-property-type-changed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` changed from `any` to `string` (media type: application/json)

error	[response-success-status-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the success response with the status `200`

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		removed the request property `system_slug` (media type: application/json)

warning	[request-property-pattern-changed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: multipart/form-data)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-pattern-changed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: application/x-www-form-urlencoded)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-pattern-changed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		changed the pattern of the request property `amount` from `^-?\d{0,15}(?:\.\d{0,5})?$` to `^-?\d{0,7}(?:\.\d{0,2})?$` (media type: application/json)
		This is a warning because adding or changing a pattern may restrict the accepted values and break existing clients. For pattern changes, it is difficult to automatically analyze if the new pattern is a superset of the previous pattern (e.g. changed from '[0-9]+' to '[0-9]*')

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `activation_date` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `automatic` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `discount_code` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: multipart/form-data)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `expiration_date` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: application/json)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: application/x-www-form-urlencoded)

warning	[request-property-removed] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		removed the request property `max_redemptions` (media type: multipart/form-data)

info	[request-property-became-nullable] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: multipart/form-data)

info	[request-property-became-nullable] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: application/x-www-form-urlencoded)

info	[request-property-became-nullable] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became nullable (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `checkout` became optional (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: multipart/form-data)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the request property `discount_code` became optional (media type: application/json)

info	[request-property-default-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: application/json)

info	[request-property-default-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: multipart/form-data)

info	[request-property-default-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `checkout` request property default value `false` was added (media type: application/x-www-form-urlencoded)

info	[request-property-min-length-decreased] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: application/json)

info	[request-property-min-length-decreased] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: multipart/form-data)

info	[request-property-min-length-decreased] at head/openapi/specs/v2.yaml
	in API POST /api/v0/baskets/create_with_products/
		the `discount_code` request property's minLength was decreased from `1` to `0` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `activates` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `codes` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `count` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `expires` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `once_per_user` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: application/json)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `one_time` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: application/x-www-form-urlencoded)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: multipart/form-data)

info	[new-optional-request-property] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new optional request property `prefix` (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: application/x-www-form-urlencoded)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: application/json)

info	[request-property-became-optional] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the request property `redemption_type` became optional (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `customer-support` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `financial-assistance` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `legacy` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `marketing` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `sales` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: application/x-www-form-urlencoded)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: multipart/form-data)

info	[request-property-enum-value-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the new `staff` enum value to the request property `payment_type` (media type: application/json)

info	[request-property-type-generalized] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` was widened from `any` to `string` (media type: multipart/form-data)

info	[request-property-type-generalized] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		the `payment_type` request property `type` was widened from `any` to `string` (media type: application/x-www-form-urlencoded)

info	[response-success-status-added] at head/openapi/specs/v2.yaml
	in API POST /api/v0/discounts/create_batch/
		added the success response with the status `201`



Unexpected changes? Ensure your branch is up-to-date with main (consider rebasing).

Comment on lines +718 to +722
if bool(attrs.get("codes")) == bool(attrs.get("prefix")):
msg = "Supply either codes, or a prefix to generate them from."
raise serializers.ValidationError({"codes": msg})

if attrs.get("codes") and "count" in attrs:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The validation error message in BulkDiscountSerializer is ambiguous when both codes and prefix are supplied, as it doesn't state they are mutually exclusive.
Severity: LOW

Suggested Fix

Update the validation logic to provide a more specific error message when both codes and prefix are present. For example, check if both are truthy and raise a ValidationError with a message like "'codes' and 'prefix' are mutually exclusive; supply one or the other, but not both."

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.

Location: ecommerce/serializers/__init__.py#L718-L722

Potential issue: The validation logic in `BulkDiscountSerializer` raises the same error
message for two distinct invalid states: when neither `codes` nor `prefix` is provided,
and when both are provided. While functionally correct in rejecting invalid input, the
message "Supply either codes, or a prefix to generate them from" is ambiguous and
misleading for the case where both are provided, as it doesn't clarify that they are
mutually exclusive. This is a user experience issue that could cause confusion for API
users trying to debug their requests.

Did we get this right? 👍 / 👎 to inform future reviews.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants