Lin, Hung-Shin d4bb5d8f73 build(deps-dev): bump vite from 4.4.12 to 4.5.2 (#100)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 4.4.12 to 4.5.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v4.5.2/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->4.5.2 (2024-01-19)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: fs deny for case insensitive systems (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15653">#15653</a>)
(<a href="https://github.com/vitejs/vite/commit/eeec23b">eeec23b</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15653">#15653</a></li>
</ul>
<h2><!-- raw HTML omitted -->4.5.1 (2023-12-04)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15223">#15223</a>,
proxy html path should be encoded (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15226">#15226</a>)
(<a href="https://github.com/vitejs/vite/commit/41bb354">41bb354</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/15223">#15223</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/15226">#15226</a></li>
</ul>
<h2>4.5.0 (2023-10-18)</h2>
<ul>
<li>feat: backport mdx as known js source (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14560">#14560</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14670">#14670</a>)
(<a href="https://github.com/vitejs/vite/commit/45595ef">45595ef</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14560">#14560</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/14670">#14670</a></li>
<li>feat: scan .marko files (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14669">#14669</a>)
(<a href="https://github.com/vitejs/vite/commit/ed7bdc5">ed7bdc5</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14669">#14669</a></li>
<li>feat(ssr): backport ssr.resolve.conditions and
ssr.resolve.externalConditions (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14498">#14498</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14668">#14668</a>)
(<a href="https://github.com/vitejs/vite/commit/520139c">520139c</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14498">#14498</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/14668">#14668</a></li>
</ul>
<h2><!-- raw HTML omitted -->4.4.11 (2023-10-05)<!-- raw HTML omitted
--></h2>
<ul>
<li>revert: &quot;fix: use string manipulation instead of regex to
inject esbuild helpers (<a
href="https://github.com/vitejs/vite/commit/54e1275">54e1275</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14094">#14094</a></li>
</ul>
<h2><!-- raw HTML omitted -->4.4.10 (2023-10-03)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: add source map to Web Workers (fix <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14216">#14216</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14217">#14217</a>)
(<a href="https://github.com/vitejs/vite/commit/df6f32f">df6f32f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14216">#14216</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/14217">#14217</a></li>
<li>fix: handle errors during <code>hasWorkspacePackageJSON</code>
function (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14394">#14394</a>)
(<a href="https://github.com/vitejs/vite/commit/6f6e5de">6f6e5de</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14394">#14394</a></li>
<li>fix: handle sourcemap correctly when multiple line import exists (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14232">#14232</a>)
(<a href="https://github.com/vitejs/vite/commit/218861f">218861f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14232">#14232</a></li>
<li>fix: if host is specified check whether it is valid (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14013">#14013</a>)
(<a href="https://github.com/vitejs/vite/commit/b1b816a">b1b816a</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14013">#14013</a></li>
<li>fix: include <code>vite/types/*</code> in exports field (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14296">#14296</a>)
(<a href="https://github.com/vitejs/vite/commit/40e99a1">40e99a1</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14296">#14296</a></li>
<li>fix: initWasm options should be optional (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14152">#14152</a>)
(<a href="https://github.com/vitejs/vite/commit/119c074">119c074</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14152">#14152</a></li>
<li>fix: restore builtins list (<a
href="https://github.com/vitejs/vite/commit/f8b9adb">f8b9adb</a>)</li>
<li>fix: use string manipulation instead of regex to inject esbuild
helpers (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14094">#14094</a>)
(<a href="https://github.com/vitejs/vite/commit/128ad8f">128ad8f</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14094">#14094</a></li>
<li>fix: ws never connects after restarting server if server.hmr.server
is set (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14127">#14127</a>)
(<a href="https://github.com/vitejs/vite/commit/441642e">441642e</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14127">#14127</a></li>
<li>fix(analysis): warnings for dynamic imports that use static template
literals (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14458">#14458</a>)
(<a href="https://github.com/vitejs/vite/commit/0c6d289">0c6d289</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14458">#14458</a></li>
<li>fix(cli): convert special base (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14283">#14283</a>)
(<a href="https://github.com/vitejs/vite/commit/d4bc0fb">d4bc0fb</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14283">#14283</a></li>
<li>fix(css): remove pure css chunk sourcemap (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14290">#14290</a>)
(<a href="https://github.com/vitejs/vite/commit/cd7e033">cd7e033</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14290">#14290</a></li>
<li>fix(css): reset render cache on renderStart (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14326">#14326</a>)
(<a href="https://github.com/vitejs/vite/commit/d334b3d">d334b3d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14326">#14326</a></li>
<li>fix(glob): trigger HMR for glob in a package (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14117">#14117</a>)
(<a href="https://github.com/vitejs/vite/commit/0f582bf">0f582bf</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14117">#14117</a></li>
<li>fix(import-analysis): preserve importedUrls import order (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14465">#14465</a>)
(<a href="https://github.com/vitejs/vite/commit/269aa43">269aa43</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14465">#14465</a></li>
<li>fix(manifest): preserve pure css chunk assets (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14297">#14297</a>)
(<a href="https://github.com/vitejs/vite/commit/3d63ae6">3d63ae6</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14297">#14297</a></li>
<li>fix(optimizer): define crawlDeps after scanProcessing and
optimizationResult are complete (fix <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/1428">#1428</a>
(<a href="https://github.com/vitejs/vite/commit/fcaf749">fcaf749</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14284">#14284</a>
<a
href="https://redirect.github.com/vitejs/vite/issues/14285">#14285</a></li>
<li>fix(resolve): support submodules of optional peer deps (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14489">#14489</a>)
(<a href="https://github.com/vitejs/vite/commit/104971d">104971d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14489">#14489</a></li>
<li>fix(vite): precisely check if files are in dirs (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14241">#14241</a>)
(<a href="https://github.com/vitejs/vite/commit/c4758d1">c4758d1</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14241">#14241</a></li>
<li>feat: improve deno and bun support (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14379">#14379</a>)
(<a href="https://github.com/vitejs/vite/commit/8bc1f9d">8bc1f9d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/14379">#14379</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/vitejs/vite/commit/d0360c12476ccc61e9e78c500ed1bd74ed65a2cf"><code>d0360c1</code></a>
release: v4.5.2</li>
<li><a
href="https://github.com/vitejs/vite/commit/eeec23bbc9d476c54a3a6d36e78455867185a7cb"><code>eeec23b</code></a>
fix: fs deny for case insensitive systems (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15653">#15653</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/c0751156f0c015f6dbd5c7a58afd8cff2fde1a2f"><code>c075115</code></a>
release: v4.5.1</li>
<li><a
href="https://github.com/vitejs/vite/commit/41bb3546a839ed2c822367b3933770c0693a0fb0"><code>41bb354</code></a>
fix: backport <a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15223">#15223</a>,
proxy html path should be encoded (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/15226">#15226</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/055d2b86b0543a7c1a2a4d5bc7298af62bc51fa7"><code>055d2b8</code></a>
release: v4.5.0</li>
<li><a
href="https://github.com/vitejs/vite/commit/ed7bdc520679577509466ce808a1794ba8377204"><code>ed7bdc5</code></a>
feat: scan .marko files (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14669">#14669</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/45595ef82f786d6b321ce002f2cd4951659114ac"><code>45595ef</code></a>
feat: backport mdx as known js source (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14560">#14560</a>)
(<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/14670">#14670</a>)</li>
<li><a
href="https://github.com/vitejs/vite/commit/520139cdff88ae3a0bf89692133cce3e453cb29a"><code>520139c</code></a>
feat(ssr): backport ssr.resolve.conditions and
ssr.resolve.externalConditions...</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v4.5.2/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=4.4.12&new-version=4.5.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

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-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

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 show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@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)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/linux-odyssey/linux-odyssey/network/alerts).

</details>
2024-01-28 20:31:13 -06:00
2023-08-28 14:39:52 +08:00
2023-12-03 21:30:34 +08:00
2024-01-13 20:18:22 +08:00
2023-12-10 00:08:45 +08:00
2023-08-22 11:16:37 +08:00
2023-08-23 10:56:21 +08:00
2023-08-23 10:56:21 +08:00
2023-12-21 18:09:48 +08:00
2023-10-12 21:59:25 +08:00
2023-10-03 21:59:37 +08:00
2023-11-22 00:10:11 +08:00

Linux Odyssey

Production Staging

Requirements

  • NodeJS
  • Docker
  • Yarn

Installation

git clone https://github.com/lancatlin/linux-odyssey.git
cd linux-odyssey
yarn install

Development

Run everything (frontend, backend, db, swagger, quests):

docker compose build
docker compose up -d

If you want to enable social login, you should have OAuth client token in a .env file:

docker compose --env-file .env up -d

Build Quest Images

In each quest folder, there is a game.yml file, which is the quest definition. And a optional Dockerfile to overwrite the base image. If you want to include additional files, put them in a home folder. The files in home will not be copied to the image automatically, you have to copy them in the Dockerfile.

quests/
├── Dockerfile      # Base image
├── discover
│   └── game.yml
├── helloworld
│   ├── Dockerfile  # Overwrite the image
│   ├── game.yml
│   └── home        # Include additional files
│       └── forgotten_scroll.txt
├── read
│   └── game.yml
└── spell
    ├── Dockerfile
    ├── game.yml
    └── home
        └── ancient_scroll.txt

To build all quests:

yarn build:quests

The base image is built with docker-compose, so you can use docker compose build base to rebuild it. Once you rebuild the base image, you have to rebuild all quests.

Testing

Run Cypress locally, using the current development containers:

docker compose up -d
yarn test:e2e

Run Cypress in container, create brand-new containers along with it:

./docker-scripts.sh test

# or with building

./docker-scripts.sh test --build

# tearing off the containers
./docker-scripts.sh down

Deployment

docker compose -f docker-compose.prod.yml build
docker compose -f docker-compose.prod.yml push

# Server side
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d

To enable social login, you should have OAuth client token in a .env file: You can copy from example.env

# .env
BASE_URL=https://example.com
GOOGLE_CLIENT_ID=...
GOOGLE_CLIENT_SECRET=...

To enable it:

docker compose --env-file .env -f docker-compose.prod.yml up -d

Standalone App (without Docker)

Source: app/

# Connect to dev server (https://odyssey.wancat.cc)
yarn app

# Connect to localhost (http://localhost:3000)
yarn app:local

# Connect to anyhost
API_ENDPOINT=http://example.com yarn app:local

Swagger

docker compose up -d swagger

Open http://localhost:8080 to open Swagger

CLI terminal client (Docker not required)

yarn cli
Usage: client [options] [command]

Options:
-s, --session <string>  Session ID
-c, --create            Create a new session
-h, --host <string>     Server host (default: "http://localhost:3000")
--help                  display help for command

Commands:
list                    List all sessions

connet to recent session:

yarn cli

connect to new session:

yarn cli -c

connect to specific session:

yarn cli -s 64d0de0367459c13004bc83f

connect to other host:

yarn cli -h https://example.com

list sessions:

yarn cli list
S
Description
No description provided
Readme GPL-3.0
8.1 MiB
0 Stars 1 Watchers 0 Forks
Languages
TypeScript 64%
Vue 24.2%
Go 4.2%
Shell 2.1%
Handlebars 2.1%
Other 3.3%