Commit Graph

186 Commits

Author SHA1 Message Date
Sam Seay f943bebc15
Don't generate singletons for Octokit and GraphQL until they're used at runtime. (#38268)
* Move API instance generation into functions to ensure they don't run on import.

* Dont use extraneous variables, call singleton fns directly.

* Get rid of accidental change
2023-05-16 10:41:37 +12:00
Paul Sealock e860e1f21f
Code Freeze CLI: Replace PHP script with TS (#38233) 2023-05-16 10:33:53 +12:00
Paul Sealock 1188197a2f
Code Freeze CLI: Add release changelog command (#38082) 2023-05-12 10:07:41 +12:00
Paul Sealock 36d4ad1150
Code Freeze CLI: Remove old version bump tool (#38182)
* remove old tool

* remove from pnpm-workspace.yaml
2023-05-12 09:15:03 +12:00
Sam Seay 95ac08739b
Add monorepo util to notify slack, add improvements to calling utils and type clean up. (#38185) 2023-05-11 17:23:19 +12:00
Leif Singer b01894f17b
Try: replace URL-encoded newlines with normal escaped newlines [WIP] (#38170)
replace URL-encoded newlines with normal escaped newlines
2023-05-09 10:02:47 +02:00
Sam Seay bd7590dc59
Improve types and error support in Logger.error (#38160) 2023-05-09 19:57:50 +12:00
Chi-Hsuan Huang 5ab5afcb6f
Fix pnpm --filter path in check-changelogger error message (#38157)
Fix pnpm command in check-changelogger error message
2023-05-08 15:06:13 +02:00
Jeffrey Paul df0583f9b8
Fix/37502: Correct spelling errors. (#37887)
* change reference of Catpure to Capture

Co-Authored-By: Vikram  <93216400+vikrampm1@users.noreply.github.com>

* change reference of expicitly to explicitly

Co-Authored-By: Vikram  <93216400+vikrampm1@users.noreply.github.com>

* change reference 'cutted' to 'cut'

* change reference 'determening' to 'determining'

* change reference 'retreive' to 'retrieve'

* change reference 'neccessary' to 'necessary'

* change reference 'Fitler' to 'Filter'

* change reference of "seperate" to "separate"

Co-Authored-By: Ankit K Gupta <ankit.himcs@gmail.com>

* change reference of "wether" to "whether"

Co-Authored-By: Sumit Bagthariya <67687255+qasumitbagthariya@users.noreply.github.com>

* change reference of "staus" to "status"

* change reference of "retrive" to "retrieve"

* change references of "gatways" to "gateways"

* change references of "existant" to "existent"

* change reference of "requries" to "requires"

* change reference of "configuation" to "configuration"

* change reference of "processsing" to "processing"

* change reference of "represenation" to "representation"

* change reference of "dimentions" to "dimensions"

* change references of "reigster" to "register"

* change reference of "colum" to "column"

* change reference of "transtions" to "transitions"

* change references of "intially" to "initially"

* change references of "orignal" to "original"

* change references of "deprected" to "deprecated"

* change references of "paramter" to "parameter"

* change reference of "intance" to "instance"

* change reference of "elemets" to "elements"

* change references of "funcitons" to "functions"

* change reference of "specificed" to "specified"

* change references of "atributes" to "attributes"

* change reference of "tast" to "task"

* change reference of "chaning" to "changing"

* change reference of "retreiving" to "retrieving"

* change reference of "caluclation" to "calculation"

* change references of "Invaid" to "Invalid"

* change references of "paramaters" to "parameters"

* change reference of "Additonal" to "Additional"

* change reference of "teh" to "the"

* change reference of "evalutes" to "evaluates"

* change reference of "addedd" to "added"

* change reference of "excempt" to "exempt"

* change reference of "sequencially" to "sequentially"

* change reference of "previos" to "previous"

* change reference of "elegible" to "eligible"

* change references of "Boostrap" to "Bootstrap"

* change references of "compability" to "compatibility"

* change reference of "heirarchy" to "hierarchy"

* change references of "visibilty" to "visibility"

* change reference of "comparsion" to "comparison"

* change reference of "capabilties" to "capabilities"

* change reference of "datatores" to "datastores"

* change reference of "occured" to "occurred"

* change reference of "coresponding" to "corresponding"

* change references of "thier" to "their"

* change reference of "sucessfully" to "successfully"

* change reference of "insde" to "inside"

* change reference of "nagivation" to "navigation"

* change references of "visiblity" to "visibility"

* change reference of "documentaiton" to "documentation"

* change reference of "anayltics" to "analytics"

* change reference of "intalling" to "installing"

* change reference of "mininum" to "minimum"

* change references of "intial" to "initial"

* change reference of "Feld" to "Field"

* change reference of "taks" to "task"

* change reference of "trasnfer" to "transfer"

* change reference of "respone" to "response"

* change reference of "Extenstions" to "Extensions"

* change reference of "detault" to "default"

* change reference of "simultanious" to "simultaneous"

* change reference of "overides" to "overrides"

* change references of "Indvidual" to "Individual"

* change reference of "refering" to "referring"

* change reference of "aginst" to "against"

* change reference of "execuatable" to "executable"

* change reference of "repsonse" to "response"

* change reference of "documention" to "documentation"

* change reference of "asumed" to "assumed"

* change reference of "Minium" to "Minimum"

* change reference of "unqiue" to "unique"

* change references of "existance" to "existence"

* change reference of "compatability" to "compatibility"

* change reference of "Taxnomy" to "Taxonomy"

* change reference of "quering" to "querying"

* change reference of "retrun" to "return"

* change reference of "informations" to "information"

Co-Authored-By: Viktor Szépe <viktor@szepe.net>

* Add changelog

* Add changelog

* Fix typo

---------

Co-authored-by: Vikram  <93216400+vikrampm1@users.noreply.github.com>
Co-authored-by: Ankit K Gupta <ankit.himcs@gmail.com>
Co-authored-by: Sumit Bagthariya <67687255+qasumitbagthariya@users.noreply.github.com>
Co-authored-by: Viktor Szépe <viktor@szepe.net>
Co-authored-by: Chi-Hsuan Huang <chihsuan.tw@gmail.com>
2023-05-08 15:55:09 +08:00
Thomas Roberts 6057798c34
Allow changelogger regex to find directories with woocommerce* names (#35642)
* Allow matcher to find directories with woocommerce* names

* Allow package preparation script to run regardless of directory name repo is in
2023-05-05 10:20:11 +12:00
Paul Sealock 05452979df
Code Freeze CLI: Add version bump (#38036) 2023-05-03 20:31:09 +12:00
Paul Sealock a303df0da5
Monorepo utils: Fix GitHub flag (#38023)
move source files
2023-04-28 12:31:33 +12:00
Paul Sealock ce7733ae78
Monorepo Utils: Migrate cli-core (#38018)
* move source files

* add uuid type dependency
2023-04-28 10:16:19 +12:00
Paul Sealock 6b158648e3
WooCommerce Utilities CLI: Add banner (#37910)
* Add figlet

* lockfile update
2023-04-28 08:40:44 +12:00
Paul Sealock 95dc211bf5
Code Freeze CLI: Add branch and milestone commands to Code Freeze action (#37948)
* Add milestone computation cli

* lock file update

* lock file update

* conflicts

* fixup
2023-04-27 09:02:32 +12:00
Paul Sealock 34bd5e1bf0
Code Freeze CLI: Add branch command (#37914) 2023-04-26 10:53:19 +12:00
Sam Seay 7cbc3811d8
Update monorepo to pnpm 8 and Node to 16.14 (#37915) 2023-04-25 18:49:30 +12:00
Paul Sealock 5798e87200
Code Freeze CLI: Add Milestone command (#37723)
Add milestone computation cli
2023-04-25 16:55:14 +12:00
jonathansadowski caf20d7989
Run schema check in release post tool (#37734) 2023-04-19 15:40:14 +12:00
Paul Sealock 0fda297965
Monorepo Utils: Move postinstall build to local package.json (#37688)
* add warning if package hasn't been built yet

* move postinstall script

* remove extra build in highlight flow
2023-04-14 10:11:13 +12:00
Paul Sealock 78ff0195b9
Monorepo Utils: Add Code Freeze date function (#37589) 2023-04-13 09:28:53 +12:00
Paul Sealock 8784d7c27a
Monorepo Utils: Fix permisions (#37670) 2023-04-13 07:10:02 +12:00
Paul Sealock c4a7e9a11b
Monorepo CLI tooling: Set folder organisation (#37561) 2023-04-12 09:26:21 +12:00
Sam Seay 5528c762f1
Add RC draft post command, make some minor improvements to beta post command (#37288) 2023-04-03 15:19:39 +12:00
Christopher Allford 67cde87fd1
Enforce Strict `@types` Dependencies (#37351) 2023-03-23 18:02:20 -07:00
Christopher Allford 3d614cd862
Removed TypeScript Incremental Build Support (#37374) 2023-03-23 11:25:42 -07:00
Sam Seay 52bc1879bb
Allow composing code analyzer change detections (hooks, templates, db, schema) (#37161)
* Add granular command for scanning individual change types.

* documentation and clean up

* Refactor the API to be more intuitive and memorable.

* Update the documentation.

* Update tools/code-analyzer/src/commands/analyzer/analyzer-scan.ts

Co-authored-by: jonathansadowski <jonathansadowski@users.noreply.github.com>

---------

Co-authored-by: jonathansadowski <jonathansadowski@users.noreply.github.com>
2023-03-21 09:36:30 -05:00
Sam Seay 9f9fef7ed3
Introduce a beta post command to the release post tool (#37142) 2023-03-17 08:37:53 +13:00
Sam Seay bec3ec18ac
Update Syncpack and use it to pin @wordpress packages to wp-6.0 (#37034) 2023-03-09 10:13:25 +13:00
jonathansadowski 81fdbe3125
Update release post tool tmp path (#36836) 2023-03-07 09:13:15 -06:00
Sam Seay 1834621d1a
Update the @woocommerce/eslint-plugin and fix bugs (#36988) 2023-03-02 11:36:38 +13:00
Sam Seay 48cd5917ed
Fix a minor bug in code analyzer and improve logging for when no changes exist (#36915) 2023-03-01 12:34:19 +13:00
Paul Sealock da1dce8f19
Package Release: handle initial release case (#36922) 2023-02-28 09:36:38 +13:00
Sam Seay 4b345402ce
Fix one last case of not skipping hooks when cloning in code analyzer (#36912)
Fix one last case of not skipping hooks when cloning.
2023-02-22 20:50:45 +13:00
Sam Seay 13b09da2cf
Add post checkout pnpm install to git hooks (#36731)
* Add post checkout pnpm install to help devs, disable hooks on pre push.
* Disable hooks in all simpleGit instances where checkout is run.
2023-02-21 08:42:44 +13:00
Leif Singer d0a2b582fe
Consolidate eslint versions (#36700)
* pin eslint in .syncpackrc

run `pnpm run sync-dependencies` to ensure pinned version is used across projects, then run `pnpm install` to update `pnpm-lock.yaml`

* add changelog files

ran `pnpm run --no-bail --filter='[HEAD^1]' changelog add --significance=patch --type=dev --entry='Update eslint to 8.32.0 across the monorepo.'`

* re-run `pnpm install` to fix what broke while merging
2023-02-02 23:25:04 +13:00
jonathansadowski f8d8a42fd7
Add PR links to release post template output, and allow blog ID to be specified. (#36026)
* Update release template to be editable

* Correct issues in README

* Update to allow edits; refactor auth

* Update templates to add PR link

* Remove commented test code

* Update tools/code-analyzer/src/lib/scan-changes.ts

Co-authored-by: Sam Seay <samueljseay@gmail.com>

* Address typescript issues; prettier

* Resolve more typescript issues

Co-authored-by: Sam Seay <samueljseay@gmail.com>
2023-01-23 08:31:59 -06:00
Sam Seay d181008ac4
Fix TS issues and lint the release post tool by running `tsc` (#36412) 2023-01-18 18:43:22 +13:00
Sam Seay 141a0bd6b4
Fix release post template syntax errors and add prettierignore (#36411)
Fix some template issues, add prettierignore to disable prettier on ejs files.
2023-01-18 18:43:00 +13:00
Willington Vega 6377314b1b
Remove deprecated usage of `${var}` syntax in strings (#36439)
* issue-35763/fix-php-8.2-deprecation-warnings

* Declare $mockable_functions property

* Declare $mockable_classes property

* Fix deprecated usage of ${var} in strings

* Add changelog file

* Avoid using interpolation to create SQL statement

We could ignore the PHPCS error. However, ignoring the error leaves
PHPCS unable to detect future changes that may introduce unsafe
interpolation.

I think the more verbose approach is the safest approach in this
case.

* Ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared

There doesn't seem to be a way to use a variable name for the name of the table without
triggering a PHPCS error.

* Avoid interpolated passing interpolated variables to __()

* End inline comments with a full-stop
2023-01-17 10:47:00 +08:00
Sam Seay df3687a79f
Fix a bug where changes were added to the change map via callback (#35966) 2022-12-15 11:55:52 +13:00
Sam Seay 3cc47d245d
Allow use of pathspecs to limit the scope of generating a diff in Code Analyzer (#35925) 2022-12-13 10:22:13 +13:00
Sam Seay dedbf7b492
Migrate uses of ::set-output in code-analyzer to setOutput. (#35895)
* Migrate uses of ::set-output to setOutput.
2022-12-12 19:41:00 +13:00
Chi-Hsuan Huang 1fbe5d330d
Add @babel/plugin-proposal-class-properties to run storybook (#35867)
* Add @babel/plugin-proposal-class-properties to run storybook

* Add @babel/plugin-proposal-class-properties to webpack config and remove storybook env from babel config

* Add changelog
2022-12-07 22:26:02 +08:00
Paul Sealock 18b1b0d535
WP-Env: await stopWPEnv so Docker containers can close (#35634)
await stopWPEnv
2022-11-21 12:37:25 +13:00
Roy Ho 20bb576fb6
Restore previously installed pnpm version (#35389) 2022-10-31 12:29:43 -07:00
Roy Ho f10f740958
Fix release post not parsing certain versions correctly (#35363) 2022-10-28 05:42:46 -07:00
Roy Ho 8d73a03f97
Add line number reference links to release posts for hooks (#35354) 2022-10-27 11:03:19 -07:00
jonathansadowski c6eab3b4b2
Fix the match pattern for the version bump tool (#34982)
* Update pattern in version bump tool to use two digits

* Update README for version bump for pnpm7 parameter order
2022-10-17 13:48:56 -05:00
Sam Seay 9b9abd1eae
Replace outdated readme examples of using pnpm (#35064) 2022-10-14 16:14:45 +13:00
Sam Seay 55b49cb50a
Fix and consolidate linting across the monorepo (#35012) 2022-10-12 15:05:01 +13:00
Sam Seay aec442139f
Update pnpm once again to fix issues with auto-install-peers (#35007) 2022-10-10 16:59:51 +13:00
Paul Sealock c87f5ce79b
Storybook: Add react and react-dom dependencies (#34950)
add react and react-dom
2022-10-07 15:18:10 +13:00
Roy Ho 3c8ca2887e
Remove CLI cherry pick tool in favor of CI workflow (#34954) 2022-10-05 20:20:04 -07:00
Sam Seay 59e0c80f3c
Update the pnpm constraint to 7.12.2+ now auto-install is fixed. (#34872) 2022-10-03 10:52:42 +13:00
Joshua T Flowers 3fd736c72f
Update plugins installer component to TS, Fix TS bugs and Syncpack TypeScript (#34787) 2022-09-30 10:59:07 +13:00
Roy Ho b00e7ee445
Update PNPM commands in documentation post PNPM 7 update (#34853) 2022-09-27 13:55:31 -07:00
Sam Seay c0fe3ec18f
Fix pnpm version to 7.11.0 in engines and in CI (#34773) 2022-09-27 11:30:52 +13:00
Sam Seay 8af6b7bff0
Fix TS errors in monorepo-merge (#34772) 2022-09-23 11:17:18 +12:00
Joshua T Flowers f39d8b6b39
Improve experimental select control accessibility (#34510)
* Use downshift built in methods to handle selection of items

* Fix menu styling

* Fix removal a11y announcement

* Don't show menu without results

* Fix async example a11y

* Add changelog entry

* Deselect item in state on remove

* Fix formatting issues

* Update lock file

* Update lock file after pnpm7

* Skip lib check breaking oclif build in package-release

* Rebase again and fix up lock file

* Skip lib check in monorepo-merge

* Fix the lock

* Ignore lint

Co-authored-by: Sam Seay <samueljseay@gmail.com>
Co-authored-by: Jonathan Sadowski <sadowski@automattic.com>
2022-09-20 14:29:27 -07:00
Paul Sealock 0b62bf85bd
Storybook: Fix after update to PNPM 7 broke build (#34724)
* Add package.json to storybook

* use @woocommerce/storybook name
2022-09-20 12:39:31 +12:00
Sam Seay 04b74c1053
Upgrade to pnpm 7 (#34661)
* Remove -- -- from scripts that fixed issue in pnpm 6, fix a couple TS issues in sep packages
* Minor fixes to analyzer scripts and doco based on pnpm 7
* Add dompurify types to data package to avoid TS errors
* Remove pnpx in favor of pnpm exec
* Modify the code analyzer to respect pnpm version if present.
* Update instructions for running recursive lint, add comments to explain
2022-09-16 09:21:42 +12:00
Paul Sealock e3ca9364a4
Version bump: Add README and Logger (#34636) 2022-09-13 06:28:37 +12:00
Sam Seay 614d98ff60
Extract the scanning functionality from code-analyzer, move common code into a separate package (#34600)
Also add contributor command and auto tagging to release-post-generator (#34608)
2022-09-11 09:55:53 +12:00
Paul Sealock fa2e7f7e96
Version Bump: Add CLI utility (#34555) 2022-09-08 19:48:01 +12:00
Sam Seay 4ca9c5225d
Port the release generator from Woorelease extensions to tools (#34496) 2022-09-06 15:51:28 +12:00
Christopher Allford 6457348a97
Validate React Admin Changelog Files (#34520)
This maps the changelog command of the React Admin in order to ensure that they're validated and able to be added.
2022-09-05 13:02:00 -07:00
Sam Seay 7f5f47247c
Code-analyzer: Perform build between checkouts to avoid failures (#34438)
Fixes #34196
2022-08-25 11:50:31 +12:00
Sam Seay 41a276c49b
Pass the version argument explicitly to code-analyzer, introduce a new command that determines latest major/minor (#34404)
This also adds a new command `major_minor` that contains some of the old logic of `getPluginData` to determine the latest major/minor version of WooCommerce
2022-08-22 16:29:59 +12:00
Sam Seay c10d34742b
Ensure that schema and DB changes are reported to the changes JSON file, fix reporting bugs(#34238) 2022-08-11 10:49:20 +12:00
Sam Seay 5becf47d60
Simplify turbo commands (#34055)
* Change package json commands and turbo repo config to allow for greatly simplifying running turbo
* Remove require-turbo script which was causing caching issues
* Colorize CI output from scripts
* Add missing changelog script to extend-cart-checkout-block
2022-08-05 12:03:17 +12:00
Paul Sealock 0ac969f584
Cherry-Pick Tool: Fix stderr output (#34132)
* formatting

* log stdout
2022-08-03 06:54:41 +12:00
Paul Sealock c91312bf26
Packages Release: Add manual workflow (#33922) 2022-07-22 12:08:11 +12:00
Sam Seay ecd17484bb
Generate a JSON file with changes from code-analyzer (#33955) 2022-07-21 19:37:59 +12:00
Sam Seay fa5c2430ac
Migrate the analyzer's DB scan to the tmp repo clone approach (#33919)
Now the entire `code-analyzer` process operates on a temporary clone.
2022-07-18 16:10:04 +12:00
Roy Ho 4fcbcb1a48
Revise condition logic to prevent spawning a child process unnecessarily (#33917) 2022-07-15 13:35:54 -07:00
Roy Ho 2774ef2c1b
Add cherry pick tool (#33870)
* Add cherry pick tool

* Add githubremoteurl environment

* Add readme
2022-07-14 07:36:15 -07:00
Sam Seay 5157bcf934
Use simple-git to produce diffs in the code analyzer (#33837)
In code-analyzer, clone the repo locally in a tmp folder and perform git operations on the copy instead of local files.
2022-07-14 15:39:38 +12:00
Paul Sealock 293de77552
Package Release: Handle invalid releases (#33798) 2022-07-14 14:03:37 +12:00
Paul Sealock 62b91768fb
JS Package Release: Fix NPM link (#33800) 2022-07-13 15:04:14 +12:00
AnnaMag 9853bd8991
Tooling: update the changelog addition command. (#33628)
Update changelog addition command.
2022-07-11 12:03:03 +02:00
Paul Sealock 7fad8728ce
Package Release: Add release script (#33743) 2022-07-08 08:47:13 +12:00
Paul Sealock 7229b65bc9
Changelogger: Fix PHPCS violations (#33664) 2022-07-07 08:54:48 +12:00
Paul Sealock a2b6b9bd2d
Analyzer: Fix regex to handle multiple changes in a single file (#33651) 2022-07-01 07:12:34 +12:00
Paul Sealock eb223038f6
Prepare Script: Fix failure on only comment changelog entries (#33668) 2022-07-01 07:10:43 +12:00
Paul Sealock 23c7046df0
Changelogger: Fix JS package epilogues (#33645) 2022-06-30 08:09:46 +12:00
Paul Sealock f20d109164
Release JS Packages: Execute script from GH Action (#33614) 2022-06-29 13:41:43 +12:00
jonathansadowski d48a0b2d90
Add helper tool for making sure build, lint, and test are run through Turborepo (#33573)
* Add helper tool for making sure build, lint, and test are run through Turborepo

* Update node version for require-turbo
2022-06-28 13:17:05 -05:00
Paul Sealock 6dd78f0f62
Package release script: Prepare packages (#33515) 2022-06-23 12:09:43 +12:00
Paul Sealock c617c70d46
Analyzer: Remove check for hook without description (#33528)
Remove check for hook without description
2022-06-22 17:00:33 +12:00
Paul Sealock 189c17cbcf
Changelogger Formatter: Parse previous significance (#33527) 2022-06-22 07:25:08 +12:00
Paul Sealock bdc4886acc
Analyzer: Surface hook descriptions (#33396) 2022-06-17 11:47:24 +12:00
jonathansadowski 626a409e83
Release automation: generate changelog during code freeze (#33046)
* Update code freeze script to generate changelog PRs

* Add changelog file

Co-authored-by: jonathan <jonathan@jonathans-MacBook-Pro.local>
2022-06-16 14:44:07 -05:00
Paul Sealock b79e54eb09
Update JS packages changelogs (#33412) 2022-06-16 10:06:31 +12:00
jonathansadowski 1fe5137152
Update changelogger validation to work with turborepo (#33388)
* Update changelogger validation to work with turborepo

* Update file_get_contents call to include base_path
2022-06-10 15:23:14 -05:00
Paul Sealock 7fcba06a62
Analyzer CLI: Allow commit hashes for comparisons (#33356) 2022-06-10 10:31:39 +12:00
Christopher Allford b7931409f2
Migrate From Nx to Turborepo (#33079)
This replaces all `nx` commands with `turbo` commands and removes Nx from the repository. All of the `project.json` files have been removed and any commands that broke with Turborepo have been adjusted.
2022-06-09 14:40:07 -07:00
Paul Sealock c3fd7134cc
Analyzer: Turn on comments for database changes (#33224) 2022-06-09 09:25:49 +12:00
Chi-Hsuan Huang 5db5c8b110
Add tour kit component (#33229)
* Add tour-kit component

* Add @types/wordpress__viewport to @woocommerce/components devDeps

* Add tour-kit README.md

* Add primaryButtonText option to tour kit step meta

* Add changelog

* Remove unneeded style import

* Set position and z-index style for tour-kit

* Add disable primary button feature for tour kit

* Export TourKitTypes

* Update style-build config for @automattic/* packages

* Add @automattic/* deps for components

* Ignore fs in webpack.config.js

* Update tour-kit stories

* Add tour-kit tests

* Update tour-kit README.md

* Update tour-kit types

* Update webpack.config.js

* Update style.scss

* Add auto focus feature

* Update type doc
2022-06-08 17:16:31 +08:00
Paul Sealock be15a35038
Analyzer CLI: Add other schemas to scan (#33220)
* Add schema

* update to new filepath

* test

* Revert "test"

This reverts commit d05a731a46.

* remove unused import

* add products and orders scanning

* escape slashes

* save

* save

* save

* test

* save

* save

* better descriptions

* moar tests

* Revert "moar tests"

This reverts commit ad552db45b.

* remove test

* better doc blocks

* check port first

* stop wp-env after operation is done

* remove ProductAttributesLookup
2022-06-08 15:11:55 +12:00