`<https://github.com/Disfactory/DisfactoryMonthlyReport/commit/c70553686bd66b567f1441dad0b01417e58879ae|c7055368>` - chore: autopublish 2022-01-01T00:49:35Z
`<https://github.com/Disfactory/DisfactoryMonthlyReport/commit/c70553686bd66b567f1441dad0b01417e58879ae|c7055368>` - chore: autopublish 2022-01-01T00:49:35Z
`<https://github.com/Disfactory/about.disfactory.tw/commit/4d0c11e051d5cba5cf63a5c22572a540541118e6|4d0c11e0>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/4d5e4578213e67332510045cd9a300144b9afb90|4d5e4578>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/1235c4b2b95900dfab376cff1e6fd6744a3ea164|1235c4b2>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/SpotDiffFrontend/commit/49b4e1b454acc5082093020cc6944f7e7e23d16e|49b4e1b4>` - fix: solve problem of loading page repeatedly `<https://github.com/Disfactory/SpotDiffFrontend/commit/2de26f58d81367e73758c2b130d1f0016b4d51e5|2de26f58>` - Merge pull request #33 from Disfactory/new-api
`<https://github.com/Disfactory/about.disfactory.tw/commit/2c2014031616aad4ecf7f36fed2827b3972de299|2c201403>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/DisfactoryMonthlyReport/commit/97c139f6c323a947b479dd917218661548cfd1f7|97c139f6>` - chore: autopublish 2022-01-10T06:50:27Z
`<https://github.com/Disfactory/about.disfactory.tw/commit/d2e835fab5229377bff53c09bcce61982113dc76|d2e835fa>` - feat: update the OG images & og-imgs-cache.json
In previous version, many function will get and set localStorage, which decrease the readability of code. To solve that, we decide to move the code of getting/settting localStorage into single function.
:white_check_mark: All checks have passed
`<https://github.com/Disfactory/SpotDiffFrontend/commit/3c62aee3bfd29eddefd4cee6e9f9032e11a018b9|3c62aee3>` - refactor: delete duplicated code of getting localStorage. `<https://github.com/Disfactory/SpotDiffFrontend/commit/9500cdb6efcf5f547c74953e95a3beaf422fee95|9500cdb6>` - Merge pull request #34 from Disfactory/new-api
<https://github.com/Disfactory/Disfactory/pull/584|#584 Bump pillow from 8.2.0 to 9.0.0 in /backend>
Bumps <https://github.com/python-pillow/Pillow|pillow> from 8.2.0 to 9.0.0. Release notes _Sourced from <https://github.com/python-pillow/Pillow/releases|pillow's releases>._ > *9.0.0* > > <https://pillow.readthedocs.io/en/stable/releasenotes/9.0.0.html|https://pillow.readthedocs.io/en/stable/releasenotes/9.0.0.html> > > *Changes* > > • Restrict builtins for ImageMath.eval() <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5923|#5923> [<https://github.com/radarhere|`@radarhere`>] > • Ensure JpegImagePlugin stops at the end of a truncated file <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5921|#5921> [<https://github.com/radarhere|`@radarhere`>] > • Fixed ImagePath.Path array handling <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5920|#5920> [<https://github.com/radarhere|`@radarhere`>] > • Remove consecutive duplicate tiles that only differ by their offset <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5919|#5919> [<https://github.com/radarhere|`@radarhere`>] > • Removed redundant part of condition <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5915|#5915> [<https://github.com/radarhere|`@radarhere`>] > • Explicitly enable strip chopping for large uncompressed TIFFs <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5517|#5517> [<https://github.com/kmilos|`@kmilos`>] > • Use the Windows method to get TCL functions on Cygwin <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5807|#5807> [<https://github.com/DWesl|`@DWesl`>] > • Changed error type to allow for incremental WebP parsing <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5404|#5404> [<https://github.com/radarhere|`@radarhere`>] > • Improved I;16 operations on big endian <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5901|#5901> [<https://github.com/radarhere|`@radarhere`>] > • Ensure that BMP pixel data offset does not ignore palette <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5899|#5899> [<https://github.com/radarhere|`@radarhere`>] > • Limit quantized palette to number of colors <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5879|#5879> [<https://github.com/radarhere|`@radarhere`>] > • Use latin1 encoding to decode bytes <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5870|#5870> [<https://github.com/radarhere|`@radarhere`>] > • Fixed palette index for zeroed color in FASTOCTREE quantize <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5869|#5869> [<https://github.com/radarhere|`@radarhere`>] > • When saving RGBA to GIF, make use of first transparent palette entry <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5859|#5859> [<https://github.com/radarhere|`@radarhere`>] > • Pass SAMPLEFORMAT to libtiff <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5848|#5848> [<https://github.com/radarhere|`@radarhere`>] > • Added rounding when converting P and PA <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5824|#5824> [<https://github.com/radarhere|`@radarhere`>] > • Improved putdata() documentation and data handling <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5910|#5910> [<https://github.com/radarhere|`@radarhere`>] > • Exclude carriage return in PDF regex to help prevent ReDoS <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5912|#5912> [<https://github.com/radarhere|`@radarhere`>] > • Image.NONE is only used for resampling and dithers <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5908|#5908> [<https://github.com/radarhere|`@radarhere`>] > • Fixed freeing pointer in ImageDraw.Outline.transform <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5909|#5909> [<https://github.com/radarhere|`@radarhere`>] > • Add Tidelift alignment action and badge <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5763|#5763> [<https://github.com/aclark4life|`@aclark4life`>] > • Replaced further direct invocations of setup.py <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5906|#5906> [<https://github.com/radarhere|`@radarhere`>] > • Added ImageShow support for xdg-open <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5897|#5897> [<https://github.com/m-shinder|`@m-shinder`>] > • Fixed typo <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5902|#5902> [<https://github.com/radarhere|`@radarhere`>] > • Switched from deprecated "setup.py install" to "pip install ." <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5896|#5896> [<https://github.com/radarhere|`@radarhere`>] > • Support 16-bit grayscale ImageQt conversion <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5856|#5856> [<https://github.com/cmbruns|`@cmbruns`>] > • Fixed raising OSError in _safe_read when size is greater than SAFEBLOCK <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5872|#5872> [<https://github.com/radarhere|`@radarhere`>] > • Convert subsequent GIF frames to RGB or RGBA <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5857|#5857> [<https://github.com/radarhere|`@radarhere`>] > • WebP: Fix memory leak during decoding on failure <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5798|#5798> [<https://github.com/ilai-deutel|`@ilai-deutel`>] > • Do not prematurely return in ImageFile when saving to stdout <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5665|#5665> [<https://github.com/infmagic2047|`@infmagic2047`>] > • Added support for top right and bottom right TGA orientations <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5829|#5829> [<https://github.com/radarhere|`@radarhere`>] > • Corrected ICNS file length in header <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5845|#5845> [<https://github.com/radarhere|`@radarhere`>] > • Block tile TIFF tags when saving <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5839|#5839> [<https://github.com/radarhere|`@radarhere`>] > • Added line width argument to ImageDraw polygon <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5694|#5694> [<https://github.com/radarhere|`@radarhere`>] > • Do not redeclare class each time when converting to NumPy <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5844|#5844> [<https://github.com/radarhere|`@radarhere`>] > • Only prevent repeated polygon pixels when drawing with transparency <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5835|#5835> [<https://github.com/radarhere|`@radarhere`>] > • Fix pushes_fd method signature <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5833|#5833> [<https://github.com/hoodmane|`@hoodmane`>] > • Add support for pickling TrueType fonts <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5826|#5826> [<https://github.com/hugovk|`@hugovk`>] > • Only prefer command line tools SDK on macOS over default MacOSX SDK <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5828|#5828> [<https://github.com/radarhere|`@radarhere`>] > • Fix compilation on 64-bit Termux <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5793|#5793> [<https://github.com/landfillbaby|`@landfillbaby`>] > • Replace 'setup.py sdist' with '-m build --sdist' <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5785|#5785> [<https://github.com/hugovk|`@hugovk`>] > • Use declarative package configuration <https://github-redirect.dependabot.com/python-pillow/Pillow/issues/5784|#5784> [<https://github.com/hugovk|`@hugovk…
:white_check_mark: All checks have passed
`<https://github.com/Disfactory/about.disfactory.tw/commit/23c4cbb7748f7bcd9956e9fe3f4098ee3cc2505e|23c4cbb7>` - feat: update the OG images & og-imgs-cache.json
Bumps <https://github.com/follow-redirects/follow-redirects|follow-redirects> from 1.13.2 to 1.14.7. Commits • <https://github.com/follow-redirects/follow-redirects/commit/2ede36d7c60d3acdcd324dcd99a9dbd52e4fb3a6|`2ede36d`> Release version 1.14.7 of the npm package. • <https://github.com/follow-redirects/follow-redirects/commit/8b347cbcef7c7b72a6e9be20f5710c17d6163c22|`8b347cb`> Drop Cookie header across domains. • <https://github.com/follow-redirects/follow-redirects/commit/6f5029ae1a0fdab4dc25f6379a5ee303c2319070|`6f5029a`> Release version 1.14.6 of the npm package. • <https://github.com/follow-redirects/follow-redirects/commit/af706bee57de954414c0bde0a9f33e62beea3e52|`af706be`> Ignore null headers. • <https://github.com/follow-redirects/follow-redirects/commit/d01ab7a5c5df3617c7a40a03de7af6427fdfac55|`d01ab7a`> Release version 1.14.5 of the npm package. • <https://github.com/follow-redirects/follow-redirects/commit/40052ea8aa13559becee5795715c1d45b1f0eb76|`40052ea`> Make compatible with Node 17. • <https://github.com/follow-redirects/follow-redirects/commit/86f7572f9365dadc39f85916259b58973819617f|`86f7572`> Fix: clear internal timer on request abort to avoid leakage • <https://github.com/follow-redirects/follow-redirects/commit/2e1eaf0218c5315a2ab27f53964d0535d4dafb51|`2e1eaf0`> Keep Authorization header on subdomain redirects. • <https://github.com/follow-redirects/follow-redirects/commit/2ad9e82b6277ae2104f7770e9ff1186cc6da29d4|`2ad9e82`> Carry over Host header on relative redirects (<https://github-redirect.dependabot.com/follow-redirects/follow-redirects/issues/172|#172>) • <https://github.com/follow-redirects/follow-redirects/commit/77e2a581e1d1811674b7b74745a9c20a5b939488|`77e2a58`> Release version 1.14.4 of the npm package. • Additional commits viewable in <https://github.com/follow-redirects/follow-redirects/compare/v1.13.2...v1.14.7|compare view> <https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores|Dependabot compatibility score> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. * * * Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: • `@dependabot rebase` will rebase this PR • `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it • `@dependabot merge` will merge this PR after your CI passes on it • `@dependabot squash and merge` will squash and merge this PR after your CI passes on it • `@dependabot cancel merge` will cancel a previously requested merge and block automerging • `@dependabot reopen` will reopen this PR if it is closed • `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually • `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) • `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language • `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language • `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language • `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the <https://github.com/Disfactory/about.disfactory.tw/network/alerts|Security Alerts page>.
Bumps <https://github.com/follow-redirects/follow-redirects|follow-redirects> from 1.10.0 to 1.14.7. Commits • <https://github.com/follow-redirects/follow-redirects/commit/2ede36d7c60d3acdcd324dcd99a9dbd52e4fb3a6|`2ede36d`> Release version 1.14.7 of the npm package. • <https://github.com/follow-redirects/follow-redirects/commit/8b347cbcef7c7b72a6e9be20f5710c17d6163c22|`8b347cb`> Drop Cookie header across domains. • <https://github.com/follow-redirects/follow-redirects/commit/6f5029ae1a0fdab4dc25f6379a5ee303c2319070|`6f5029a`> Release version 1.14.6 of the npm package. • <https://github.com/follow-redirects/follow-redirects/commit/af706bee57de954414c0bde0a9f33e62beea3e52|`af706be`> Ignore null headers. • <https://github.com/follow-redirects/follow-redirects/commit/d01ab7a5c5df3617c7a40a03de7af6427fdfac55|`d01ab7a`> Release version 1.14.5 of the npm package. • <https://github.com/follow-redirects/follow-redirects/commit/40052ea8aa13559becee5795715c1d45b1f0eb76|`40052ea`> Make compatible with Node 17. • <https://github.com/follow-redirects/follow-redirects/commit/86f7572f9365dadc39f85916259b58973819617f|`86f7572`> Fix: clear internal timer on request abort to avoid leakage • <https://github.com/follow-redirects/follow-redirects/commit/2e1eaf0218c5315a2ab27f53964d0535d4dafb51|`2e1eaf0`> Keep Authorization header on subdomain redirects. • <https://github.com/follow-redirects/follow-redirects/commit/2ad9e82b6277ae2104f7770e9ff1186cc6da29d4|`2ad9e82`> Carry over Host header on relative redirects (<https://github-redirect.dependabot.com/follow-redirects/follow-redirects/issues/172|#172>) • <https://github.com/follow-redirects/follow-redirects/commit/77e2a581e1d1811674b7b74745a9c20a5b939488|`77e2a58`> Release version 1.14.4 of the npm package. • Additional commits viewable in <https://github.com/follow-redirects/follow-redirects/compare/v1.10.0...v1.14.7|compare view> <https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores|Dependabot compatibility score> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. * * * Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: • `@dependabot rebase` will rebase this PR • `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it • `@dependabot merge` will merge this PR after your CI passes on it • `@dependabot squash and merge` will squash and merge this PR after your CI passes on it • `@dependabot cancel merge` will cancel a previously requested merge and block automerging • `@dependabot reopen` will reopen this PR if it is closed • `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually • `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) • `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language • `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language • `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language • `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the <https://github.com/Disfactory/license.disfactory.tw/network/alerts|Security Alerts page>.
`<https://github.com/Disfactory/SpotDiff/commit/2e89bc9b6e069b4e94ace409910e359fcbc62710|2e89bc9b>` - Task 1 (implement the Location table) and Task 3 (implement the Answer table) (#22)
`<https://github.com/Disfactory/about.disfactory.tw/commit/7f0ea13a9a70c6583e6098eab85bdfe0c4217078|7f0ea13a>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/086987cb72eaf0f56e92d8e7a7ebe09949ddac7f|086987cb>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/42cd285440abe13ec59bf616968e81aebc99159f|42cd2854>` - feat: update the OG images & og-imgs-cache.json
<https://github.com/Disfactory/SpotDiff/issues/24|#24 Missing answer operation tests>
I forgot to check-in run_all_test.py, which resulted in missing all answer tests.
`<https://github.com/Disfactory/about.disfactory.tw/commit/5ed47a7141dbaacf2a223343241f8f90015940de|5ed47a71>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/SpotDiffFrontend/commit/2c6f52d2b4d1ce394113e8bbf162d83e5e62aa5c|2c6f52d2>` - feat: add introduction of this project on footer "關於此專案" `<https://github.com/Disfactory/SpotDiffFrontend/commit/8a105c6d5766ee6e8a30ff34e0b96d31360b9165|8a105c6d>` - Merge pull request #35 from Disfactory/new-api
<https://github.com/Disfactory/SpotDiffFrontend/issues/36|#36 20220119 討論事項>
1. staging server設定: 就前端而言,在本地串API會有CORS的問題,所以要設定proxy。目前的設定如下: ``` devServer: { '/api': { target: '<https://staging.api.spot.disfactory.tw/>', pathRewrite: { '^/api': '' }, ws: true, changeOrigin: true, }, }, }, ``` 但必須注意之後deploy時,要把/api endpoint也抽出成環境變數 2. client_id設定: 如果使用者的瀏覽器沒有擋ga,則用ga的clientId作為client_id; 如果有擋,則再去sesstionStorage看有沒有存client_id,如果有的話則使用;沒有的話則重新生成一個client_id
<https://github.com/Disfactory/SpotDiff/issues/25|#25 Read user_token from Authorization header>
It risks more for putting the token in the URL. I suggest reading the token from `Authorization` header. Ref: • <https://carsonwah.github.io/http-authentication.html|https://carsonwah.github.io/http-authentication.html>
`<https://github.com/Disfactory/about.disfactory.tw/commit/e888b50c050698fcecebd8cde7f9e2cb976e7ffa|e888b50c>` - feat: update the OG images & og-imgs-cache.json
<https://github.com/Disfactory/about.disfactory.tw/issues/66|#66 「OO縣/市民眾要加油囉!:facepunch:」要顯示的是最後一名>
現在在各縣市回報進度底下「OO縣/市民眾要加油囉!:facepunch:」顯示了第一名的嘉義市 但應該要是最後一名的「雲林縣」才對
<https://github.com/Disfactory/about.disfactory.tw/issues/67|#67 「分享」功能優化>
現在按「分享」會複製一段文字到使用者的剪貼簿, 想知道有沒有機會變成直接跳到某社群網頁(如FB、Line等),自動把該段文字加入在該平台的新增貼文/訊息中?
<https://github.com/Disfactory/about.disfactory.tw/issues/68|#68 「在哪裡」功能優化>
點擊「在哪裡」時,現在會待到彰化縣鹿港鎮處。 想要讓對方選了什麼鄉鎮或縣市查詢,就跳到該縣市鄉鎮的中心點。
`<https://github.com/Disfactory/about.disfactory.tw/commit/1d849a6bcfc419581f4565e4fe04aff0d79cf525|1d849a6b>` - feat: update the OG images & og-imgs-cache.json
<https://github.com/Disfactory/Disfactory/pull/585|#585 fix typo>
修正 `/api/statistics/total` 回傳 500 error 的問題
:white_check_mark: All checks have passed
`<https://github.com/Disfactory/Disfactory/commit/d505d945bd1e70f7c3df09b63604d73e2032065e|d505d945>` - fix typo `<https://github.com/Disfactory/Disfactory/commit/fa4b067754852fae6e84bf84bf6b04b6809a657c|fa4b0677>` - Merge pull request #585 from Swind/fix_statistics_total_api
`<https://github.com/Disfactory/about.disfactory.tw/commit/00a91f4a6747464d2e8715e568b792d3bc0b867a|00a91f4a>` - feat: update the OG images & og-imgs-cache.json
Bumps <https://github.com/ai/nanoid|nanoid> from 3.1.20 to 3.2.0. Changelog _Sourced from <https://github.com/ai/nanoid/blob/main/CHANGELOG.md|nanoid's changelog>._ > *Change Log* > > This project adheres to <http://semver.org/|Semantic Versioning>. > > *3.2* > > • Added `--size` and `--alphabet` arguments to binary (by Vitaly Baev). > > *3.1.32* > > • Reduced `async` exports size (by Artyom Arutyunyan). > • Moved from Jest to uvu (by Vitaly Baev). > > *3.1.31* > > • Fixed collision vulnerability on object in `size` (by Artyom Arutyunyan). > > *3.1.30* > > • Reduced size for project with `brotli` compression (by Anton Khlynovskiy). > > *3.1.29* > > • Reduced npm package size. > > *3.1.28* > > • Reduced npm package size. > > *3.1.27* > > • Cleaned `dependencies` from development tools. > > *3.1.26* > > • Improved performance (by Eitan Har-Shoshanim). > • Reduced npm package size. > > *3.1.25* > > • Fixed `browserify` support. > > *3.1.24* > > • Fixed `browserify` support (by Artur Paikin). > > *3.1.23* > > • Fixed `esbuild` support. > > *3.1.22* > > • Added `default` and `browser.default` to `package.exports`. > > *3.1.21* > > • Reduced npm package size. Commits • <https://github.com/ai/nanoid/commit/23b136929a6d58f32e31b269534a3ce3f680a086|`23b1369`> Release 3.2 version • <https://github.com/ai/nanoid/commit/967788efce880960512f969a56f8f22f3fc20bae|`967788e`> Remove TS test tools • <https://github.com/ai/nanoid/commit/27eaa90cd207a7782bbcf17343092ae87dd62164|`27eaa90`> Simplify new binary tool • <https://github.com/ai/nanoid/commit/a9d91239931dc77506381874826d297aee71d6ef|`a9d9123`> Update dependencies • <https://github.com/ai/nanoid/commit/32b9bdaab1fbc28576b17de8516164ce0360f292|`32b9bda`> Allows passing size or custom alphabet via cli as args (<https://github-redirect.dependabot.com/ai/nanoid/issues/334|#334>) • <https://github.com/ai/nanoid/commit/246d5f87b6b34e23b5e401bdf3da1f80c810ac4c|`246d5f8`> Update vite • <https://github.com/ai/nanoid/commit/afdf9c92b41427f35476fbe14b5af5d73dd7fbdb|`afdf9c9`> doc: Fixed Typo (<https://github-redirect.dependabot.com/ai/nanoid/issues/335|#335>) • <https://github.com/ai/nanoid/commit/90a446fef3ecaac78e5af2ea01025c4f40182e2b|`90a446f`> Update benchmark results • <https://github.com/ai/nanoid/commit/8ba2319b579895cc1f9060b9946a44852f97c509|`8ba2319`> bench: add `@napi-rs/uuid` v4 (<https://github-redirect.dependabot.com/ai/nanoid/issues/333|#333>) • <https://github.com/ai/nanoid/commit/f4257780ece488734a65c176e80c2fd8ab6aab8e|`f425778`> Release 3.1.32 version • Additional commits viewable in <https://github.com/ai/nanoid/compare/3.1.20...3.2.0|compare view> <https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores|Dependabot compatibility score> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. * * * Dependabot commands and options You can trigger Dependabot actions by commenting on this PR: • `@dependabot rebase` will rebase this PR • `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it • `@dependabot merge` will merge this PR after your CI passes on it • `@dependabot squash and merge` will squash and merge this PR after your CI passes on it • `@dependabot cancel merge` will cancel a previously requested merge and block automerging • `@dependabot reopen` will reopen this PR if it is closed • `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually • `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) • `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) • `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language • `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language • `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language • `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the <https://github.com/Disfactory/about.disfactory.tw/network/alerts|Security Alerts page>.
<https://github.com/Disfactory/TaiwanLegislatorData/pull/4|#4 Bump node-fetch from 2.6.0 to 3.1.1>
Bumps <https://github.com/node-fetch/node-fetch|node-fetch> from 2.6.0 to 3.1.1. Release notes _Sourced from <https://github.com/node-fetch/node-fetch/releases|node-fetch's releases>._ > *v3.1.1* > *Security patch release* > > Recommended to upgrade, to not leak sensitive cookie and authentication header information to 3th party host while a redirect occurred > > *What's Changed* > > • core: update fetch-blob by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1371|node-fetch/node-fetch#1371> > • docs: Fix typo around sending a file by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1381|node-fetch/node-fetch#1381> > • core: (http.request): Cast URL to string before sending it to NodeJS core by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1378|node-fetch/node-fetch#1378> > • core: handle errors from the request body stream by <https://github.com/mdmitry01|`@mdmitry01`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1392|node-fetch/node-fetch#1392> > • core: Better handle wrong redirect header in a response by <https://github.com/tasinet|`@tasinet`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1387|node-fetch/node-fetch#1387> > • core: Don't use buffer to make a blob by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1402|node-fetch/node-fetch#1402> > • docs: update readme for TS `@types/node-fetch` by <https://github.com/adamellsworth|`@adamellsworth`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1405|node-fetch/node-fetch#1405> > • core: Fix logical operator priority to disallow GET/HEAD with non-empty body by <https://github.com/maxshirshin|`@maxshirshin`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1369|node-fetch/node-fetch#1369> > • core: Don't use global buffer by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1422|node-fetch/node-fetch#1422> > • ci: fix main branch by <https://github.com/dnalborczyk|`@dnalborczyk`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1429|node-fetch/node-fetch#1429> > • core: use more node: protocol imports by <https://github.com/dnalborczyk|`@dnalborczyk`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1428|node-fetch/node-fetch#1428> > • core: Warn when using data by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1421|node-fetch/node-fetch#1421> > • docs: Create SECURITY.md by <https://github.com/JamieSlome|`@JamieSlome`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1445|node-fetch/node-fetch#1445> > • core: don't forward secure headers to 3th party by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1449|node-fetch/node-fetch#1449> > > *New Contributors* > > • <https://github.com/mdmitry01|`@mdmitry01`> made their first contribution in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1392|node-fetch/node-fetch#1392> > • <https://github.com/tasinet|`@tasinet`> made their first contribution in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1387|node-fetch/node-fetch#1387> > • <https://github.com/adamellsworth|`@adamellsworth`> made their first contribution in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1405|node-fetch/node-fetch#1405> > • <https://github.com/maxshirshin|`@maxshirshin`> made their first contribution in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1369|node-fetch/node-fetch#1369> > • <https://github.com/JamieSlome|`@JamieSlome`> made their first contribution in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1445|node-fetch/node-fetch#1445> > > *Full Changelog*: <https://github.com/node-fetch/node-fetch/compare/v3.1.0...v3.1.1|node-fetch/node-fetch@v3.1.0...v3.1.1> > > *v3.1.0* > *What's Changed* > > • fix(Body): Discourage form-data and buffer() by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1212|node-fetch/node-fetch#1212> > • fix: Pass url string to http.request by <https://github.com/serverwentdown|`@serverwentdown`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1268|node-fetch/node-fetch#1268> > • Fix octocat image link by <https://github.com/lakuapik|`@lakuapik`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1281|node-fetch/node-fetch#1281> > • fix(Body.body): Normalize `Body.body` into a `node:stream` by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/924|node-fetch/node-fetch#924> > • docs(Headers): Add default Host request header to README.md file by <https://github.com/robertoaceves|`@robertoaceves`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1316|node-fetch/node-fetch#1316> > • Update CHANGELOG.md by <https://github.com/jimmywarting|`@jimmywarting`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1292|node-fetch/node-fetch#1292> > • Add highWaterMark to cloned properties by <https://github.com/davesidious|`@davesidious`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1162|node-fetch/node-fetch#1162> > • Update README.md to fix HTTPResponseError by <https://github.com/thedanfernandez|`@thedanfernandez`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1135|node-fetch/node-fetch#1135> > • docs: switch `url` to `URL` by <https://github.com/dhritzkiv|`@dhritzkiv`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1318|node-fetch/node-fetch#1318> > • fix(types): declare buffer() deprecated by <https://github.com/dnalborczyk|`@dnalborczyk`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1345|node-fetch/node-fetch#1345> > • chore: fix lint by <https://github.com/dnalborczyk|`@dnalborczyk`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1348|node-fetch/node-fetch#1348> > • refactor: use node: prefix for imports by <https://github.com/dnalborczyk|`@dnalborczyk`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1346|node-fetch/node-fetch#1346> > • Bump data-uri-to-buffer from 3.0.1 to 4.0.0 by <https://github.com/dependabot|`@dependabot`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1319|node-fetch/node-fetch#1319> > • Bump mocha from 8.4.0 to 9.1.3 by <https://github.com/dependabot|`@dependabot`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1339|node-fetch/node-fetch#1339> > • Referrer and Referrer Policy by <https://github.com/tekwiz|`@tekwiz`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1057|node-fetch/node-fetch#1057> > • Add typing for Response.redirect(url, status) by <https://github.com/c-w|`@c-w`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1169|node-fetch/node-fetch#1169> > • chore: Correct stuff in README.md by <https://github.com/Jiralite|`@Jiralite`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1361|node-fetch/node-fetch#1361> > • docs: Improve clarity of "Loading and configuring" by <https://github.com/serverwentdown|`@serverwentdown`> in <https://github-redirect.dependabot.com/node-fetch/node-fetch/pull/1323|node-fetch/nod…
<https://github.com/Disfactory/SpotDiff/issues/26|#26 Enhance answer API error handling>
When missing parameters like bbox*, the API returns 400. Enhance the API and return error messages.
`<https://github.com/Disfactory/about.disfactory.tw/commit/5d0d8729db04e24d514257c83553b1e253c0a3ed|5d0d8729>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/4730b629ef51e54471a8078dd3f0fa68e0b0eff1|4730b629>` - feat: update the OG images & og-imgs-cache.json
<https://github.com/Disfactory/SpotDiffFrontend/pull/37|#37 Update tutorial pages>
:white_check_mark: All checks have passed
`<https://github.com/Disfactory/SpotDiffFrontend/commit/a9a78f310d4b1b2243095ed13e1993d71ca2a3bf|a9a78f31>` - style: remove unneed css code `<https://github.com/Disfactory/SpotDiffFrontend/commit/0a659b0f852240f1002691c07f638d0fd8ef8d9c|0a659b0f>` - refactor: add component TutorialTaskA and TaskB `<https://github.com/Disfactory/SpotDiffFrontend/commit/5864b132eab83a843c40f0ba47fab7527c7f2e32|5864b132>` - style: update type of font `<https://github.com/Disfactory/SpotDiffFrontend/commit/025ea2e91ef891d2e6ac22bb24044f205adc1c3b|025ea2e9>` - style: add new icon in tutorial page `<https://github.com/Disfactory/SpotDiffFrontend/commit/13d2af47622654efc315b2d7f4364e21c1d98567|13d2af47>` - style: update layout and style of tutorial page `<https://github.com/Disfactory/SpotDiffFrontend/commit/cc1451f827a538bee72c4a968278c2e884a42a4c|cc1451f8>` - refactor: rename component TaskA and TaskB to GameTaskA and GameTaskB `<https://github.com/Disfactory/SpotDiffFrontend/commit/a3c1ec70cabe5cc233ef4315cd84764b3e9fb338|a3c1ec70>` - replace divider icon `<https://github.com/Disfactory/SpotDiffFrontend/commit/d3e62d094302bc315c37c6eedbd1a850c2f531fd|d3e62d09>` - feat: page will scroll to top when stage of question is changed `<https://github.com/Disfactory/SpotDiffFrontend/commit/d767ab4c3ee8e4dbb450bb4f96fa813a32ed8085|d767ab4c>` - refactor: removed unneed props and html tag in game task `<https://github.com/Disfactory/SpotDiffFrontend/commit/a9a4b2188b34f9e314fc1f4bfd70987598ed8427|a9a4b218>` - Merge pull request #37 from Disfactory/update-tutorial-pages
`<https://github.com/Disfactory/about.disfactory.tw/commit/fcc301407d7e6721f34041e30b1fd222357f7312|fcc30140>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/b999f9f4151dc67087295046399bc95b40788a39|b999f9f4>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/b999f9f4151dc67087295046399bc95b40788a39|b999f9f4>` - feat: update the OG images & og-imgs-cache.json
In this phase, we get/post data from server which is built by back-end, rather then mock api by frontend. So we reconstruct the structure of the component, the component 'GameTaskA' and 'GameTaskB' is presentation component, its mission is showing image and text to user; the component 'GameContent' is container component, its mission is containing 'GameTaskA' and 'GameTaskB' and fetching data from server. The function of fetching data is write in 'GameContent'
:white_check_mark: All checks have passed
In this phase, we get/post data from server which is built by back-end, rather then mock api by frontend. So we reconstruct the structure of the component, the component 'GameTaskA' and 'GameTaskB' is presentation component, its mission is showing image and text to user; the component 'GameContent' is container component, its mission is containing 'GameTaskA' and 'GameTaskB' and fetching data from server. The function of fetching data is write in 'GameContent'
`<https://github.com/Disfactory/SpotDiffFrontend/commit/74cd34e36a5b3f9125c4ae18df166d88c6fa84e3|74cd34e3>` - feat: add function of fetching data from spotdiff server. `<https://github.com/Disfactory/SpotDiffFrontend/commit/1915452ce5bc1f23e80fdb93687cfe0f7026306e|1915452c>` - Merge pull request #38 from Disfactory/update-tutorial-pages
`<https://github.com/Disfactory/SpotDiffFrontend/commit/74cd34e36a5b3f9125c4ae18df166d88c6fa84e3|74cd34e3>` - feat: add function of fetching data from spotdiff server. `<https://github.com/Disfactory/SpotDiffFrontend/commit/1915452ce5bc1f23e80fdb93687cfe0f7026306e|1915452c>` - Merge pull request #38 from Disfactory/update-tutorial-pages
`<https://github.com/Disfactory/about.disfactory.tw/commit/0061718b65a26927703dc9b74d2883d1501ad064|0061718b>` - feat: add link for petition campaign `<https://github.com/Disfactory/about.disfactory.tw/commit/07c06065a803a8547193147bcb46a4c95be32a50|07c06065>` - Merge pull request #70 from Disfactory/petition-campaign
`<https://github.com/Disfactory/about.disfactory.tw/commit/0061718b65a26927703dc9b74d2883d1501ad064|0061718b>` - feat: add link for petition campaign `<https://github.com/Disfactory/about.disfactory.tw/commit/07c06065a803a8547193147bcb46a4c95be32a50|07c06065>` - Merge pull request #70 from Disfactory/petition-campaign
`<https://github.com/Disfactory/about.disfactory.tw/commit/59d56a52dfa7519a9bb6e5b03a6efcb9f2522c28|59d56a52>` - fix: solve problem of showing incorrect city of mininum report rate `<https://github.com/Disfactory/about.disfactory.tw/commit/be9e6046b05451b23db314f765fe8cb12914423e|be9e6046>` - Merge branch 'dev' of <https://github.com/Disfactory/about.disfactory.tw> into dev
`<https://github.com/Disfactory/about.disfactory.tw/commit/59d56a52dfa7519a9bb6e5b03a6efcb9f2522c28|59d56a52>` - fix: solve problem of showing incorrect city of mininum report rate `<https://github.com/Disfactory/about.disfactory.tw/commit/be9e6046b05451b23db314f765fe8cb12914423e|be9e6046>` - Merge branch 'dev' of <https://github.com/Disfactory/about.disfactory.tw> into dev
`<https://github.com/Disfactory/about.disfactory.tw/commit/4281404cbeffaa5e35d247c15227a2b5d3664ee4|4281404c>` - feat: add hashtag "我肚子裡的年菜有被工廠加料嗎" in share text.
`<https://github.com/Disfactory/about.disfactory.tw/commit/4281404cbeffaa5e35d247c15227a2b5d3664ee4|4281404c>` - feat: add hashtag "我肚子裡的年菜有被工廠加料嗎" in share text.
<https://github.com/Disfactory/SpotDiffFrontend/issues/39|#39 user token 過期問題>
目前為避免post `/answer` API時,`user token` 是過期的,所以目前在post `/answer` API前,都會先post `/user` API,以取得最新的user token。 好處是user token一定不會過期,但壞處不論user token有沒有過期,都會重新打一次 `/user` API,是不是有更好的方法? 我目前是想說,使用`try...catch`,如果post `/answer` API 時回傳401,才去重新取得user token。
<https://github.com/Disfactory/SpotDiffFrontend/issues/39|#39 user token 過期問題>
目前為避免post `/answer` API時,`user token` 是過期的,所以目前在post `/answer` API前,都會先post `/user` API,以取得最新的user token。 好處是user token一定不會過期,但壞處不論user token有沒有過期,都會重新打一次 `/user` API,是不是有更好的方法? 我目前是想說,使用`try...catch`,如果post `/answer` API 時回傳401,才去重新取得user token。
<https://github.com/Disfactory/SpotDiffFrontend/issues/40|#40 切換題目後,會殘留前一題的衛星雲圖約0.5秒>
*Expected Behavior* 切換題目時,不會殘留前一題的衛星雲圖 *Current Behavior* 切換題目後,會殘留前一題的衛星星雲約0.5秒,才會切換 *To Reproduce* Steps to reproduce the behavior: 1. 答完taskB後,前往下一題的taskA時,會殘留前一題的taskA衛星雲圖 2. 答完taskA後,前往下一題的taskB時,會殘留前一題的taskB衛星雲圖 以上兩個行為,都會觸發bug *Possible Solution* 應該是我把打衛星雲圖API所需要的參數(經緯度),都寫在GameContent這個父元件,而子元件taskA與taskB會先掛載完後,GameContent才會把參數傳進去,才顯示衛星雲圖。這中間的時間差會造成:當子元鍵掛載完時,有一小段時間是還沒傳入新的經緯度的,所以衛星雲圖不會更新,因此還停留在前一題的衛星雲圖。 這個解法應該跟 <https://github.com/Disfactory/SpotDiffFrontend/issues/21|#21> 類似?應該要將「掛載畫面」設在「撈圖資資料」之後,也就是當圖資資料撈完後,才開始掛載畫面。 *Context (Environment)* 對於使用者而言,0.5秒的殘留會造成使用者體驗不佳。 *Additional context* Add any other context about the problem here. *Screenshots* If applicable, add screenshots to help explain your problem. *Desktop (please complete the following information):* *Smartphone (please complete the following information):*
<https://github.com/Disfactory/SpotDiffFrontend/issues/40|#40 切換題目後,會殘留前一題的衛星雲圖約0.5秒>
*Expected Behavior* 切換題目時,不會殘留前一題的衛星雲圖 *Current Behavior* 切換題目後,會殘留前一題的衛星星雲約0.5秒,才會切換 *To Reproduce* Steps to reproduce the behavior: 1. 答完taskB後,前往下一題的taskA時,會殘留前一題的taskA衛星雲圖 2. 答完taskA後,前往下一題的taskB時,會殘留前一題的taskB衛星雲圖 以上兩個行為,都會觸發bug *Possible Solution* 應該是我把打衛星雲圖API所需要的參數(經緯度),都寫在GameContent這個父元件,而子元件taskA與taskB會先掛載完後,GameContent才會把參數傳進去,才顯示衛星雲圖。這中間的時間差會造成:當子元鍵掛載完時,有一小段時間是還沒傳入新的經緯度的,所以衛星雲圖不會更新,因此還停留在前一題的衛星雲圖。 這個解法應該跟 <https://github.com/Disfactory/SpotDiffFrontend/issues/21|#21> 類似?應該要將「掛載畫面」設在「撈圖資資料」之後,也就是當圖資資料撈完後,才開始掛載畫面。 *Context (Environment)* 對於使用者而言,0.5秒的殘留會造成使用者體驗不佳。 *Additional context* Add any other context about the problem here. *Screenshots* If applicable, add screenshots to help explain your problem. *Desktop (please complete the following information):* *Smartphone (please complete the following information):*
`<https://github.com/Disfactory/about.disfactory.tw/commit/ea684522cc8264c30b36f39a4e7994d36d642614|ea684522>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/ea684522cc8264c30b36f39a4e7994d36d642614|ea684522>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/b44009b2abb05f0706c7131b2520b09ef1bea714|b44009b2>` - feat: update the OG images & og-imgs-cache.json
`<https://github.com/Disfactory/about.disfactory.tw/commit/b44009b2abb05f0706c7131b2520b09ef1bea714|b44009b2>` - feat: update the OG images & og-imgs-cache.json
<https://github.com/Disfactory/SpotDiff/pull/27|#27 Task1 implment location table>
1. Move API and utilities to task1 branch. 2. Add CORS settings, and change get_answer_count()
<https://github.com/Disfactory/SpotDiff/pull/27|#27 Task1 implment location table>
1. Move API and utilities to task1 branch. 2. Add CORS settings, and change get_answer_count()