├── src ├── vite-env.d.ts ├── styles.css ├── Loading.tsx ├── tailwind.ts ├── disposables.ts ├── useEditorValue.ts ├── main.tsx ├── useResize.ts ├── Root.tsx ├── Terminal.tsx ├── useTauriEventListener.ts ├── useWorkingDirectory.ts ├── useBufferedCallback.ts ├── Tinker.tsx ├── Editor.tsx ├── useTerminal.ts ├── assets │ └── react.svg ├── usePty.ts └── registerLanguage.ts ├── src-tauri ├── build.rs ├── icons │ ├── 32x32.png │ ├── icon.icns │ ├── icon.ico │ ├── icon.png │ ├── 128x128.png │ ├── 128x128@2x.png │ ├── StoreLogo.png │ ├── Square30x30Logo.png │ ├── Square44x44Logo.png │ ├── Square71x71Logo.png │ ├── Square89x89Logo.png │ ├── Square107x107Logo.png │ ├── Square142x142Logo.png │ ├── Square150x150Logo.png │ ├── Square284x284Logo.png │ └── Square310x310Logo.png ├── .gitignore ├── Cargo.toml ├── tauri.conf.json ├── src │ └── main.rs └── Cargo.lock ├── icon-src.png ├── art └── screenshot.png ├── postcss.config.js ├── tsconfig.node.json ├── tailwind.config.js ├── .gitignore ├── index.html ├── README.md ├── vite.config.ts ├── tsconfig.json ├── package.json ├── public ├── vite.svg └── tauri.svg └── .github └── workflows └── release.yml /src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /src-tauri/build.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | tauri_build::build() 3 | } 4 | -------------------------------------------------------------------------------- /icon-src.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/icon-src.png -------------------------------------------------------------------------------- /art/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/art/screenshot.png -------------------------------------------------------------------------------- /src/styles.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | -------------------------------------------------------------------------------- /src-tauri/icons/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/32x32.png -------------------------------------------------------------------------------- /src-tauri/icons/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/icon.icns -------------------------------------------------------------------------------- /src-tauri/icons/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/icon.ico -------------------------------------------------------------------------------- /src-tauri/icons/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/icon.png -------------------------------------------------------------------------------- /src-tauri/icons/128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/128x128.png -------------------------------------------------------------------------------- /src-tauri/.gitignore: -------------------------------------------------------------------------------- 1 | # Generated by Cargo 2 | # will have compiled files and executables 3 | /target/ 4 | 5 | -------------------------------------------------------------------------------- /src-tauri/icons/128x128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/128x128@2x.png -------------------------------------------------------------------------------- /src-tauri/icons/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/StoreLogo.png -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /src-tauri/icons/Square30x30Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square30x30Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square44x44Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square44x44Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square71x71Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square71x71Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square89x89Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square89x89Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square107x107Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square107x107Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square142x142Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square142x142Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square150x150Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square150x150Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square284x284Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square284x284Logo.png -------------------------------------------------------------------------------- /src-tauri/icons/Square310x310Logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/glhd/tinker-gui/HEAD/src-tauri/icons/Square310x310Logo.png -------------------------------------------------------------------------------- /src/Loading.tsx: -------------------------------------------------------------------------------- 1 | export default function Loading() { 2 | return ( 3 |
4 | ▮ 5 |
6 | ); 7 | } 8 | -------------------------------------------------------------------------------- /src/tailwind.ts: -------------------------------------------------------------------------------- 1 | import resolveConfig from 'tailwindcss/resolveConfig' 2 | // @ts-ignore 3 | import config from '../tailwind.config.js'; 4 | 5 | const resolved = resolveConfig(config); 6 | 7 | export default resolved.theme; 8 | -------------------------------------------------------------------------------- /tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "composite": true, 4 | "skipLibCheck": true, 5 | "module": "ESNext", 6 | "moduleResolution": "bundler", 7 | "allowSyntheticDefaultImports": true 8 | }, 9 | "include": ["vite.config.ts"] 10 | } 11 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | export default { 3 | content: [ 4 | "./index.html", 5 | "./src/**/*.{js,ts,jsx,tsx}", 6 | ], 7 | theme: { 8 | extend: { 9 | colors: { 10 | 'bg': '#1e1e1e', 11 | 'fg': '#d4d4d4', 12 | } 13 | }, 14 | }, 15 | plugins: [], 16 | }; 17 | -------------------------------------------------------------------------------- /src/disposables.ts: -------------------------------------------------------------------------------- 1 | export interface IDisposable { 2 | dispose(): void; 3 | } 4 | 5 | export const NoopDisposable: IDisposable = { 6 | dispose() { 7 | // noop 8 | }, 9 | }; 10 | 11 | export function callbackToDisposable(callback: () => void): IDisposable { 12 | return { 13 | dispose() { 14 | callback(); 15 | } 16 | }; 17 | } 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Tinker 9 | 10 | 11 |
12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/useEditorValue.ts: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | 3 | export default function useEditorValue(): [string, (value: string) => void] { 4 | const [value, setValue] = useState(valueRetriever); 5 | 6 | return [ 7 | value, 8 | (value: string) => { 9 | setValue(value); 10 | localStorage.setItem('value', value); 11 | } 12 | ]; 13 | } 14 | 15 | function valueRetriever() { 16 | const value = localStorage.getItem('value'); 17 | 18 | return value ? value.replace(/^\s*<\?(php)?\s*/i, '') : ''; 19 | } 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Tinker 2 | 3 | > [!note] 4 | > Tinker is a *very simple* application. If you need something with a bit more power behind 5 | > it, check out [Tinkerwell](https://tinkerwell.app/) by Beyond Code. 6 | 7 | [![Screenshot of Tinker](art/screenshot.png)](https://github.com/glhd/tinker-gui/releases/latest) 8 | 9 | [Latest Relase →](https://github.com/glhd/tinker-gui/releases/latest) 10 | 11 | ## Release workflow 12 | 13 | - Tag a new version in git that starts with `v` 14 | - Push to github 15 | - Wait for actions to finish 16 | - Draft release should be waiting 17 | -------------------------------------------------------------------------------- /src/main.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | import "./styles.css"; 4 | import Root from "./Root.tsx"; 5 | import { Toaster } from "react-hot-toast"; 6 | 7 | ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render( 8 | 9 |
10 | 11 | 12 |
13 |
14 | , 15 | ); 16 | -------------------------------------------------------------------------------- /src/useResize.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useState } from 'react'; 2 | 3 | export default function useResize() { 4 | const getSize = () => ({ 5 | width: window.innerWidth, 6 | height: window.innerHeight, 7 | }); 8 | 9 | const [size, setSize] = useState(getSize); 10 | 11 | useEffect(() => { 12 | let frame: number; 13 | const listener = () => { 14 | window.cancelAnimationFrame(frame); 15 | frame = window.requestAnimationFrame(() => setSize(getSize())); 16 | }; 17 | window.addEventListener('resize', listener, false); 18 | return () => window.removeEventListener('resize', listener); 19 | }, []); 20 | 21 | return size; 22 | } 23 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "vite"; 2 | import react from "@vitejs/plugin-react"; 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig(async () => ({ 6 | plugins: [react()], 7 | 8 | // Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build` 9 | // 10 | // 1. prevent vite from obscuring rust errors 11 | clearScreen: false, 12 | // 2. tauri expects a fixed port, fail if that port is not available 13 | server: { 14 | port: 1420, 15 | strictPort: true, 16 | watch: { 17 | // 3. tell vite to ignore watching `src-tauri` 18 | ignored: ["**/src-tauri/**"], 19 | }, 20 | }, 21 | })); 22 | -------------------------------------------------------------------------------- /src/Root.tsx: -------------------------------------------------------------------------------- 1 | import Loading from "./Loading.tsx"; 2 | import Tinker from "./Tinker.tsx"; 3 | import useWorkingDirectory from "./useWorkingDirectory.ts"; 4 | import { useEffect } from "react"; 5 | import { appWindow } from '@tauri-apps/api/window'; 6 | import { basename } from "@tauri-apps/api/path"; 7 | 8 | export default function Root() { 9 | const cwd = useWorkingDirectory(); 10 | 11 | useEffect(() => { 12 | (async () => { 13 | if (cwd) { 14 | const name = await basename(cwd); 15 | await appWindow.setTitle(`Tinker (${name})`); 16 | } else { 17 | await appWindow.setTitle('Tinker'); 18 | } 19 | })(); 20 | }, [cwd]); 21 | 22 | return cwd ? : ; 23 | } 24 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2020", 4 | "useDefineForClassFields": true, 5 | "lib": ["ES2020", "DOM", "DOM.Iterable"], 6 | "module": "ESNext", 7 | "skipLibCheck": true, 8 | 9 | /* Bundler mode */ 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "resolveJsonModule": true, 13 | "isolatedModules": true, 14 | "noEmit": true, 15 | "jsx": "react-jsx", 16 | 17 | /* Linting */ 18 | "strict": true, 19 | "noUnusedLocals": true, 20 | "noUnusedParameters": true, 21 | "noFallthroughCasesInSwitch": true 22 | }, 23 | "include": ["src"], 24 | "references": [{ "path": "./tsconfig.node.json" }] 25 | } 26 | -------------------------------------------------------------------------------- /src/Terminal.tsx: -------------------------------------------------------------------------------- 1 | import { useEffect, useRef } from "react"; 2 | import useResize from "./useResize.ts"; 3 | import type { ITerminal } from './useTerminal.ts'; 4 | 5 | export default function Terminal({ terminal, paneSize }: { 6 | terminal: ITerminal, 7 | paneSize: number 8 | }) { 9 | const { width, height } = useResize(); 10 | const ref = useRef(null); 11 | 12 | // Connect the terminal to the DOM once we have it set up 13 | useEffect(() => { 14 | if (ref.current) { 15 | terminal.open(ref.current); 16 | } 17 | }, [terminal, ref.current]); 18 | 19 | // Resize the terminal on window resize 20 | useEffect(() => terminal.resize(), [width, height, paneSize]); 21 | 22 | return ( 23 |
24 | ); 25 | }; 26 | -------------------------------------------------------------------------------- /src-tauri/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "tinker" 3 | version = "0.0.0" 4 | description = "A Tauri App" 5 | authors = ["you"] 6 | license = "" 7 | repository = "" 8 | edition = "2021" 9 | 10 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 11 | 12 | [build-dependencies] 13 | tauri-build = { version = "1.5", features = [] } 14 | 15 | [dependencies] 16 | tauri = { version = "1.5", features = [ "window-set-title", "updater", "app-show", "fs-create-dir", "fs-read-file", "fs-remove-file", "fs-exists", "fs-write-file", "shell-open", "shell-execute", "path-all", "dialog-open", "devtools"] } 17 | serde = { version = "1.0", features = ["derive"] } 18 | serde_json = "1.0" 19 | tauri-plugin-pty = "0.0.8" 20 | 21 | [features] 22 | # this feature is used for production builds or when `devPath` points to the filesystem 23 | # DO NOT REMOVE!! 24 | custom-protocol = ["tauri/custom-protocol"] 25 | -------------------------------------------------------------------------------- /src/useTauriEventListener.ts: -------------------------------------------------------------------------------- 1 | import { DependencyList, useEffect } from "react"; 2 | import { EventCallback, listen, UnlistenFn } from "@tauri-apps/api/event"; 3 | 4 | let debounce: Map = new Map(); 5 | 6 | export default function useTauriEventListener(name: string, callback: EventCallback, deps: DependencyList = [], timeout: number = 150) 7 | { 8 | useEffect(() => { 9 | let unlisten: UnlistenFn = () => null; 10 | 11 | // Listen is async so we have to jump thru some hoops to 12 | // make useEffect return a sync cleanup function 13 | (async () => { 14 | unlisten = await listen(name, (event) => { 15 | clearTimeout(debounce.get(name)); 16 | debounce.set(name, setTimeout(() => callback(event), timeout)); 17 | }); 18 | })(); 19 | 20 | return () => { 21 | console.log(`Cleaning up "${name}" listener…`); 22 | debounce.delete(name); 23 | unlisten(); 24 | } 25 | }, [name, callback, ...deps]); 26 | } 27 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tinker", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "tsc && vite build", 9 | "preview": "vite preview", 10 | "tauri": "tauri" 11 | }, 12 | "dependencies": { 13 | "@monaco-editor/react": "^4.6.0", 14 | "@tauri-apps/api": "^1.5.2", 15 | "@xterm/addon-fit": "^0.9.0-beta.1", 16 | "@xterm/xterm": "^5.4.0-beta.1", 17 | "monaco-editor": "^0.45.0", 18 | "react": "^18.2.0", 19 | "react-dom": "^18.2.0", 20 | "react-hot-toast": "^2.4.1", 21 | "react-resizable-panels": "^1.0.7", 22 | "tauri-pty": "^0.0.8" 23 | }, 24 | "devDependencies": { 25 | "@tauri-apps/cli": "^1.5.8", 26 | "@types/react": "^18.2.15", 27 | "@types/react-dom": "^18.2.7", 28 | "@vitejs/plugin-react": "^4.2.1", 29 | "autoprefixer": "^10.4.16", 30 | "postcss": "^8.4.33", 31 | "tailwindcss": "^3.4.1", 32 | "typescript": "^5.0.2", 33 | "vite": "^5.0.0" 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/useWorkingDirectory.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useState } from "react"; 2 | import { open } from "@tauri-apps/api/dialog"; 3 | import { homeDir } from "@tauri-apps/api/path"; 4 | import useTauriEventListener from "./useTauriEventListener.ts"; 5 | 6 | export default function useWorkingDirectory() { 7 | const [cwd, setCwd] = useState(localStorage.getItem('cwd')); 8 | 9 | const prompt = async (): Promise => { 10 | const selection = await open({ 11 | title: 'Select your Laravel application…', 12 | multiple: false, 13 | directory: true, 14 | defaultPath: await homeDir(), 15 | }); 16 | 17 | if (null === selection || Array.isArray(selection)) { 18 | return await prompt(); 19 | } 20 | 21 | setCwd(selection); 22 | localStorage.setItem('cwd', selection); 23 | }; 24 | 25 | useEffect(() => { 26 | if (! cwd) { 27 | const timeout = setTimeout(prompt, 10); 28 | return () => clearTimeout(timeout); 29 | } 30 | }, [cwd]); 31 | 32 | useTauriEventListener('open', () => setCwd(null)); 33 | 34 | return '' === cwd ? null : cwd; 35 | } 36 | -------------------------------------------------------------------------------- /src/useBufferedCallback.ts: -------------------------------------------------------------------------------- 1 | import { useRef, useState } from "react"; 2 | import { IDisposable } from "./disposables.ts"; 3 | 4 | export type BufferedCallback = (data: string) => void; 5 | export type SetBufferedCallback = (callback: BufferedCallback) => void; 6 | 7 | export default function useBufferedCallback(name: string): [BufferedCallback, SetBufferedCallback, IDisposable] { 8 | const onData = useRef(); 9 | const [buffer, setBuffer] = useState([]); 10 | 11 | const callback: BufferedCallback = (data: string) => { 12 | // console.log(`[${ name }] ${ data }`); 13 | 14 | if (onData.current) { 15 | // console.log(`onData: ${data}`); 16 | onData.current(data); 17 | } else { 18 | setBuffer([...buffer, data]); 19 | } 20 | }; 21 | 22 | const setCallback = (callback: BufferedCallback) => { 23 | console.log(`Setting new "${ name }" buffered callback…`); 24 | 25 | if (buffer.length) { 26 | buffer.forEach(data => callback(data)); 27 | setBuffer([]); 28 | } 29 | 30 | onData.current = callback; 31 | }; 32 | 33 | const disposable = { 34 | dispose() { 35 | console.log(`Disposing of "${name}" buffered callback…`); 36 | onData.current = undefined; 37 | } 38 | }; 39 | 40 | return [callback, setCallback, disposable]; 41 | } 42 | -------------------------------------------------------------------------------- /public/vite.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Tinker.tsx: -------------------------------------------------------------------------------- 1 | import { Panel, PanelGroup, PanelResizeHandle } from "react-resizable-panels"; 2 | import Editor from "./Editor.tsx"; 3 | import Terminal from "./Terminal.tsx"; 4 | import { useEffect, useState } from "react"; 5 | import useTerminal from "./useTerminal.ts"; 6 | import useEditorValue from "./useEditorValue.ts"; 7 | import usePty from "./usePty.ts"; 8 | 9 | export default function Tinker({ cwd }: { cwd: string }) { 10 | const [value, setValue] = useEditorValue(); 11 | const terminal = useTerminal(); 12 | const pty = usePty(cwd); 13 | const [width, setWidth] = useState(0); 14 | 15 | useEffect(() => { 16 | console.log(`Setting up terminal/pty listeners…`); 17 | 18 | pty.onData(data => terminal.write(data)); 19 | terminal.onData(data => pty.write(data)); 20 | terminal.onResize(({ cols, rows }) => pty.resize(cols, rows)); 21 | 22 | pty.resize(terminal.cols, terminal.rows); 23 | }, []); 24 | 25 | // if ('loading' === terminal.state || 'loading' === pty.state) { 26 | // return ; 27 | // } 28 | 29 | return ( 30 | 31 | 32 | { 34 | pty.run(code); 35 | } } 36 | onChange={ code => setValue(code) } 37 | defaultValue={ value } 38 | /> 39 | 40 | 41 | 42 | 43 | 44 | 45 | setWidth(size) }> 46 | 47 | 48 | 49 | ); 50 | } 51 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release 2 | on: 3 | push: 4 | tags: 5 | - 'v*' 6 | workflow_dispatch: 7 | 8 | jobs: 9 | release: 10 | permissions: 11 | contents: write 12 | strategy: 13 | fail-fast: false 14 | matrix: 15 | platform: [ macos-latest ] 16 | runs-on: ${{ matrix.platform }} 17 | 18 | steps: 19 | - name: Checkout repository 20 | uses: actions/checkout@v4 21 | 22 | - name: Install dependencies (ubuntu only) 23 | if: matrix.platform == 'ubuntu-20.04' 24 | run: | 25 | sudo apt-get update 26 | sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev 27 | 28 | - name: Rust setup 29 | uses: dtolnay/rust-toolchain@stable 30 | 31 | - name: Rust cache 32 | uses: swatinem/rust-cache@v2 33 | with: 34 | workspaces: './src-tauri -> target' 35 | 36 | - name: Sync node version and setup cache 37 | uses: actions/setup-node@v4 38 | with: 39 | node-version: 'lts/*' 40 | cache: 'npm' 41 | 42 | - name: Install frontend dependencies 43 | run: npm install 44 | 45 | - name: Build the app 46 | uses: tauri-apps/tauri-action@v0 47 | env: 48 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 49 | APPLE_ID: ${{ secrets.APPLE_ID }} 50 | APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }} 51 | APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }} 52 | APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }} 53 | APPLE_CERTIFICATE_PASSWORD: ${{ secrets.APPLE_CERTIFICATE_PASSWORD }} 54 | APPLE_SIGNING_IDENTITY: ${{ secrets.APPLE_SIGNING_IDENTITY }} 55 | TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }} 56 | TAURI_KEY_PASSWORD: ${{ secrets.TAURI_KEY_PASSWORD }} 57 | with: 58 | tagName: ${{ github.ref_name }} 59 | releaseName: 'v__VERSION__' 60 | releaseBody: 'See the assets to download and install this version.' 61 | releaseDraft: true 62 | prerelease: false 63 | includeUpdaterJson: true 64 | -------------------------------------------------------------------------------- /src/Editor.tsx: -------------------------------------------------------------------------------- 1 | import Monaco, { useMonaco } from '@monaco-editor/react'; 2 | import { useEffect, useRef } from "react"; 3 | import { editor } from "monaco-editor"; 4 | import { registerLanguage } from "./registerLanguage.ts"; 5 | import useTauriEventListener from "./useTauriEventListener.ts"; 6 | import ITextModel = editor.ITextModel; 7 | 8 | export default function Editor(props: { 9 | onRun: (code: string) => any, 10 | onChange: (code: string) => any, 11 | defaultValue?: string, 12 | }) { 13 | const { onRun, onChange, defaultValue = `(); 16 | const active_model = useRef(); 17 | 18 | useTauriEventListener('run', () => { 19 | if (active_model.current) { 20 | onRun(active_model.current.getValue()); 21 | } 22 | }, [active_model.current, onRun]); 23 | 24 | useEffect(() => { 25 | if (! monaco) { 26 | return; 27 | } 28 | 29 | const modelCallback = (model: ITextModel) => { 30 | active_model.current = model; 31 | model.onDidChangeContent(() => { 32 | clearTimeout(debounce.current); 33 | debounce.current = setTimeout(() => { 34 | onChange(model.getValue()); 35 | }, 500); 36 | }); 37 | }; 38 | 39 | const disposables = [ 40 | monaco.editor.addEditorAction({ 41 | id: 'run-tinker', 42 | label: 'Run Code', 43 | keybindings: [ 44 | monaco.KeyMod.CtrlCmd | monaco.KeyCode.Enter 45 | ], 46 | contextMenuGroupId: 'navigation', 47 | contextMenuOrder: 1, 48 | run(editor: editor.ICodeEditor): void { 49 | const value = editor.getModel()?.getValue(); 50 | if (value) { 51 | onRun(value); 52 | } 53 | } 54 | }), 55 | monaco.editor.onDidCreateModel(modelCallback), 56 | ]; 57 | 58 | registerLanguage(monaco.languages) 59 | .forEach(d => disposables.push(d)); 60 | 61 | const models = monaco.editor.getModels(); 62 | if (models.length) { 63 | modelCallback(models[0]); 64 | } 65 | 66 | return () => disposables.forEach(d => d.dispose()); 67 | }, [monaco, onRun]); 68 | 69 | return ( 70 | 76 | ); 77 | } 78 | -------------------------------------------------------------------------------- /public/tauri.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /src-tauri/tauri.conf.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": { 3 | "beforeDevCommand": "npm run dev", 4 | "beforeBuildCommand": "npm run build", 5 | "devPath": "http://localhost:1420", 6 | "distDir": "../dist" 7 | }, 8 | "package": { 9 | "productName": "Tinker", 10 | "version": "0.12.1" 11 | }, 12 | "tauri": { 13 | "updater": { 14 | "active": true, 15 | "endpoints": [ 16 | "https://github.com/glhd/tinker-gui/releases/latest/download/latest.json" 17 | ], 18 | "dialog": true, 19 | "pubkey": "dW50cnVzdGVkIGNvbW1lbnQ6IG1pbmlzaWduIHB1YmxpYyBrZXk6IEY1RkI0RkRBNEIzMzc5RjYKUldUMmVUTkwyay83OVFWanB5QUZwN2x5blBrOWdwUGs1N2hGWWwrdXIreTdtQkRMMUpuNVc5Y0kK" 20 | }, 21 | "allowlist": { 22 | "all": false, 23 | "app": { 24 | "show": true 25 | }, 26 | "dialog": { 27 | "open": true 28 | }, 29 | "fs": { 30 | "createDir": true, 31 | "readFile": true, 32 | "writeFile": true, 33 | "removeFile": true, 34 | "exists": true, 35 | "scope": [ 36 | "$APPLOCALDATA/**", 37 | "$HOME/Library/Application Support/Herd/bin/*", 38 | "$HOME/.composer/vendor/bin/*", 39 | "$HOME/bin/*", 40 | "/usr/local/bin/*", 41 | "/usr/local/sbin/*", 42 | "/opt/homebrew/bin/*", 43 | "/opt/homebrew/sbin/*", 44 | "/usr/bin/*", 45 | "/usr/sbin/*", 46 | "/bin/*", 47 | "/sbin/*" 48 | ] 49 | }, 50 | "path": { 51 | "all": true 52 | }, 53 | "shell": { 54 | "all": false, 55 | "execute": true, 56 | "open": true, 57 | "scope": [ 58 | { 59 | "name": "tinker", 60 | "cmd": "php", 61 | "args": true 62 | }, { 63 | "name": "printenv", 64 | "cmd": "printenv", 65 | "args": true 66 | } 67 | ] 68 | }, 69 | "window": { 70 | "setTitle": true 71 | } 72 | }, 73 | "bundle": { 74 | "active": true, 75 | "targets": "all", 76 | "identifier": "com.cmorrell.tinker", 77 | "icon": [ 78 | "icons/32x32.png", 79 | "icons/128x128.png", 80 | "icons/128x128@2x.png", 81 | "icons/icon.icns", 82 | "icons/icon.ico" 83 | ] 84 | }, 85 | "security": { 86 | "csp": null 87 | }, 88 | "windows": [ 89 | { 90 | "fullscreen": false, 91 | "resizable": true, 92 | "title": "Tinker", 93 | "width": 1200, 94 | "height": 900, 95 | "fileDropEnabled": false 96 | } 97 | ] 98 | } 99 | } 100 | -------------------------------------------------------------------------------- /src-tauri/src/main.rs: -------------------------------------------------------------------------------- 1 | // Prevents additional console window on Windows in release, DO NOT REMOVE!! 2 | #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] 3 | 4 | use tauri::{CustomMenuItem, Menu, MenuItem, Submenu, AboutMetadata, WindowMenuEvent}; 5 | 6 | fn main() { 7 | let context = tauri::generate_context!(); 8 | let menu = get_menu(&context.package_info().name); 9 | 10 | tauri::Builder::default() 11 | .plugin(tauri_plugin_pty::init()) 12 | .menu(menu) 13 | .on_menu_event(|event| { 14 | event.window().emit(event.menu_item_id(), {}); 15 | }) 16 | .run(context) 17 | .expect("error while running tauri application"); 18 | } 19 | 20 | fn get_menu(#[allow(unused)] app_name: &str) -> Menu { 21 | let mut menu = Menu::new(); 22 | 23 | // "Tinker" Menu 24 | menu = menu.add_submenu(Submenu::new( 25 | app_name, 26 | Menu::new() 27 | .add_native_item(MenuItem::About( 28 | app_name.to_string(), 29 | AboutMetadata::default(), 30 | )) 31 | .add_native_item(MenuItem::Separator) 32 | .add_native_item(MenuItem::Services) 33 | .add_native_item(MenuItem::Separator) 34 | .add_native_item(MenuItem::Hide) 35 | .add_native_item(MenuItem::HideOthers) 36 | .add_native_item(MenuItem::ShowAll) 37 | .add_native_item(MenuItem::Separator) 38 | .add_native_item(MenuItem::Quit), 39 | )); 40 | 41 | // File Menu 42 | let mut file_menu = Menu::new(); 43 | file_menu = file_menu.add_item(CustomMenuItem::new("open".to_string(), "Open…").accelerator("CmdOrCtrl+O")); 44 | file_menu = file_menu.add_native_item(MenuItem::CloseWindow); 45 | menu = menu.add_submenu(Submenu::new("File", file_menu)); 46 | 47 | // Edit Menu 48 | let mut edit_menu = Menu::new(); 49 | edit_menu = edit_menu.add_native_item(MenuItem::Undo); 50 | edit_menu = edit_menu.add_native_item(MenuItem::Redo); 51 | edit_menu = edit_menu.add_native_item(MenuItem::Separator); 52 | edit_menu = edit_menu.add_native_item(MenuItem::Cut); 53 | edit_menu = edit_menu.add_native_item(MenuItem::Copy); 54 | edit_menu = edit_menu.add_native_item(MenuItem::Paste); 55 | edit_menu = edit_menu.add_native_item(MenuItem::SelectAll); 56 | menu = menu.add_submenu(Submenu::new("Edit", edit_menu)); 57 | 58 | // View Menu 59 | // menu = menu.add_submenu(Submenu::new( 60 | // "View", 61 | // Menu::new().add_native_item(MenuItem::EnterFullScreen), 62 | // )); 63 | 64 | // Run Menu 65 | let mut run_menu = Menu::new(); 66 | run_menu = run_menu.add_item(CustomMenuItem::new("run".to_string(), "Run Code").accelerator("CmdOrCtrl+R")); 67 | run_menu = run_menu.add_item(CustomMenuItem::new("reload".to_string(), "Reload Terminal").accelerator("CmdOrCtrl+Shift+R")); 68 | menu = menu.add_submenu(Submenu::new("Run", run_menu)); 69 | 70 | // Window Menu 71 | let mut window_menu = Menu::new(); 72 | window_menu = window_menu.add_native_item(MenuItem::Minimize); 73 | window_menu = window_menu.add_native_item(MenuItem::Zoom); 74 | // window_menu = window_menu.add_native_item(MenuItem::Separator); 75 | // window_menu = window_menu.add_native_item(MenuItem::CloseWindow); 76 | menu = menu.add_submenu(Submenu::new("Window", window_menu)); 77 | 78 | menu 79 | } 80 | -------------------------------------------------------------------------------- /src/useTerminal.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useRef, useState } from 'react'; 2 | import { Terminal as XTerm } from "@xterm/xterm"; 3 | import { FitAddon } from "@xterm/addon-fit"; 4 | import { IDisposable } from "./disposables.ts"; 5 | import useBufferedCallback from "./useBufferedCallback.ts"; 6 | 7 | export interface ITerminal { 8 | state: string, 9 | cols: number, 10 | rows: number, 11 | open: (parent: HTMLElement) => void, 12 | resize: () => void, 13 | write: (data: string) => void, 14 | onData: (callback: (data: string) => any) => void, 15 | onResize: (callback: (size: { cols: number, rows: number }) => any) => void, 16 | } 17 | 18 | export default function useTerminal(): ITerminal { 19 | const [onData, setOnData, disposableData] = useBufferedCallback('terminal'); 20 | const [buffer, setBuffer] = useState([]); 21 | const onResize = useRef<((size: { cols: number, rows: number }) => any)>(() => () => null); 22 | const terminal = useRef(); 23 | const addon = useRef(); 24 | 25 | // Always make sure there's an xterm instance loaded 26 | useEffect(() => { 27 | if (terminal.current) { 28 | return; 29 | } 30 | 31 | console.log(`Creating new xterm instance…`); 32 | 33 | const xterm = new XTerm(); 34 | const fit = new FitAddon(); 35 | 36 | terminal.current = xterm; 37 | addon.current = fit; 38 | 39 | terminal.current.loadAddon(addon.current); 40 | 41 | terminal.current.options.theme = theme; 42 | 43 | if (buffer.length) { 44 | buffer.forEach(data => xterm.write(data)); 45 | setBuffer([]); 46 | } 47 | 48 | const disposables: IDisposable[] = [ 49 | xterm, 50 | fit, 51 | disposableData, 52 | xterm.onData(onData), 53 | xterm.onResize((size) => { 54 | onResize.current?.call(null, size); 55 | }), 56 | ]; 57 | 58 | return () => { 59 | console.log(`Disposing of xterm instance…`); 60 | disposables.forEach(d => d.dispose()); 61 | terminal.current = undefined; 62 | addon.current = undefined; 63 | }; 64 | }, []); 65 | 66 | return { 67 | state: terminal.current ? 'loaded' : 'loading', 68 | cols: terminal.current?.cols || 0, 69 | rows: terminal.current?.rows || 0, 70 | open(parent) { 71 | terminal.current?.open(parent); 72 | }, 73 | resize() { 74 | addon.current?.fit(); 75 | }, 76 | write(data) { 77 | if (terminal.current) { 78 | terminal.current.write(data); 79 | } else { 80 | setBuffer([...buffer, data]); 81 | } 82 | }, 83 | onData(callback) { 84 | setOnData(callback); 85 | }, 86 | onResize(callback) { 87 | onResize.current = callback; 88 | } 89 | }; 90 | } 91 | 92 | // See: https://github.com/microsoft/vscode/blob/a3445c68a08d30734c8b3fa45d09c73723cb393a/src/vs/editor/standalone/common/themes.ts#L83 93 | const theme = { 94 | background: '#1e1e1e', 95 | foreground: '#d4d4d4', 96 | selectionBackground: '#10333f', 97 | selectionForeground: '#95a0a0', 98 | selectionInactiveBackground: '#95a0a0', 99 | black: '#feffff', 100 | brightBlack: '#74909a', 101 | red: '#934535', 102 | brightRed: '#bc5329', 103 | green: '#67c076', 104 | brightGreen: '#5c6d74', 105 | yellow: '#a3782b', 106 | brightYellow: '#697a81', 107 | blue: '#4689cc', 108 | brightBlue: '#869395', 109 | magenta: '#c24380', 110 | brightMagenta: '#6c6ec0', 111 | cyan: '#519e97', 112 | brightCyan: '#95a0a0', 113 | white: '#ece8d6', 114 | brightWhite: '#fbf6e4', 115 | }; 116 | -------------------------------------------------------------------------------- /src/assets/react.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/usePty.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useRef } from 'react'; 2 | import { homeDir } from '@tauri-apps/api/path'; 3 | import { exists } from '@tauri-apps/api/fs'; 4 | import { IPty as ITauryPty, spawn } from "tauri-pty"; 5 | import useBufferedCallback from "./useBufferedCallback.ts"; 6 | import { callbackToDisposable } from "./disposables.ts"; 7 | import toast from "react-hot-toast"; 8 | import useTauriEventListener from "./useTauriEventListener.ts"; 9 | 10 | export interface IPty { 11 | state: string, 12 | run: (code: string) => Promise, 13 | write: (data: string) => void, 14 | onData: (callback: (data: string) => any) => void, 15 | resize: (cols: number, rows: number) => void, 16 | } 17 | 18 | export default function usePty(cwd: string): IPty { 19 | const [onData, setOnData, disposableData] = useBufferedCallback('pty'); 20 | const pty = useRef(); 21 | 22 | useTauriEventListener('reload', () => { 23 | console.log('reload event'); 24 | const id = toast.loading('Reloading…'); 25 | setTimeout(() => toast.dismiss(id), 750); 26 | // pty.current?.clear(); 27 | pty.current?.kill(); 28 | }); 29 | 30 | useEffect(() => { 31 | const disposables = [ 32 | callbackToDisposable(() => { 33 | console.log(`Disposing of PTY instance…`) 34 | pty.current = undefined; 35 | }), 36 | disposableData, 37 | ]; 38 | 39 | if (! pty.current) { 40 | const boot = async () => { 41 | console.log(`Creating new PTY instance…`); 42 | 43 | let PATH = await guessPath(); 44 | console.log(`Using $PATH: ${ PATH }`); 45 | 46 | const session = spawn('php', ['artisan', 'tinker'], { 47 | cwd, 48 | cols: 80, 49 | rows: 20, 50 | env: { PATH } 51 | }); 52 | 53 | pty.current = session; 54 | 55 | disposables.push(session.onData(onData)); 56 | disposables.push(session.onExit(({ exitCode }) => { 57 | console.warn(`PTY exited with code ${ exitCode }`); 58 | setTimeout(() => boot(), 1); 59 | })); 60 | 61 | disposables.push(callbackToDisposable(() => { 62 | console.log(`Killing PTY session…`) 63 | session.kill(); 64 | })); 65 | }; 66 | 67 | boot(); 68 | } 69 | 70 | return () => { 71 | disposables.forEach(d => d.dispose()); 72 | }; 73 | }, [cwd]); 74 | 75 | return { 76 | state: pty.current ? 'loaded' : 'loading', 77 | async run(code) { 78 | // const id = toast.loading('Running…'); 79 | // setTimeout(() => toast.dismiss(id), 750); 80 | 81 | const lines = code 82 | .replace(/^\s*<\?(php)?\s*/, '') 83 | .split("\n") 84 | .filter(line => '' !== line.trim()) 85 | .join('\\\n'); 86 | 87 | pty.current?.write(`${ lines }\n`); 88 | // 89 | // await createDir('scratches', { dir: BaseDirectory.AppLocalData, recursive: true }); 90 | // 91 | // const suffix = (Math.random()).toString(36).substring(2); 92 | // const filename = await join(await appLocalDataDir(), `scratches`, `tinker-${ suffix }.php`); 93 | // 94 | // console.log(`Writing to temp file (${ filename })…`); 95 | // await writeTextFile(filename, code); 96 | // 97 | // console.log('Executing script…'); 98 | // pty.current?.write(`return include '${ filename }';\n`); 99 | // 100 | // setTimeout(async () => { 101 | // console.log(`Removing temp file (${ filename })…`); 102 | // await removeFile(filename); 103 | // }, 500); 104 | }, 105 | write(data) { 106 | pty.current?.write(data); 107 | }, 108 | onData(callback) { 109 | setOnData(callback); 110 | }, 111 | resize(cols, rows) { 112 | pty.current?.resize(cols, rows); 113 | } 114 | }; 115 | } 116 | 117 | async function guessPath(): Promise { 118 | const home = await homeDir(); 119 | 120 | const paths = [ 121 | `${ home }Library/Application Support/Herd/bin/`, 122 | `/opt/homebrew/bin/`, 123 | `/opt/homebrew/sbin/`, 124 | `${ home }.composer/vendor/bin/`, 125 | `${ home }bin/`, 126 | `/usr/local/bin/`, 127 | `/usr/bin/`, 128 | `/usr/local/sbin/`, 129 | `/usr/sbin/`, 130 | `/bin/`, 131 | `/sbin/`, 132 | ]; 133 | 134 | for (const path of paths) { 135 | if (await exists(`${ path }php`)) { 136 | return path; 137 | } 138 | } 139 | 140 | throw 'Unable to discover PHP executable.'; 141 | } 142 | -------------------------------------------------------------------------------- /src/registerLanguage.ts: -------------------------------------------------------------------------------- 1 | import { languages as MonacoLanguages } from "monaco-editor"; 2 | import { IDisposable } from "./disposables.ts"; 3 | 4 | // See: https://github.com/microsoft/monaco-editor/blob/main/src/basic-languages/php/php.ts 5 | 6 | const conf: MonacoLanguages.LanguageConfiguration = { 7 | wordPattern: 8 | /(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g, 9 | 10 | comments: { 11 | lineComment: '//', 12 | blockComment: ['/*', '*/'] 13 | }, 14 | 15 | brackets: [ 16 | ['{', '}'], 17 | ['[', ']'], 18 | ['(', ')'] 19 | ], 20 | 21 | autoClosingPairs: [ 22 | { open: '{', close: '}', notIn: ['string'] }, 23 | { open: '[', close: ']', notIn: ['string'] }, 24 | { open: '(', close: ')', notIn: ['string'] }, 25 | { open: '"', close: '"', notIn: ['string'] }, 26 | { open: "'", close: "'", notIn: ['string', 'comment'] } 27 | ], 28 | 29 | folding: { 30 | markers: { 31 | start: new RegExp('^\\s*(#|//)region\\b'), 32 | end: new RegExp('^\\s*(#|//)endregion\\b') 33 | } 34 | } 35 | }; 36 | 37 | const language = { 38 | defaultToken: '', 39 | tokenPostfix: '', 40 | // ignoreCase: true, 41 | 42 | // The main tokenizer for our languages 43 | tokenizer: { 44 | 45 | root: [ 46 | [ 47 | /[a-zA-Z_]\w*/, 48 | { 49 | cases: { 50 | '@phpKeywords': { token: 'keyword.php' }, 51 | '@phpCompileTimeConstants': { token: 'constant.php' }, 52 | '@default': 'identifier.php' 53 | } 54 | } 55 | ], 56 | [ 57 | /[$a-zA-Z_]\w*/, 58 | { 59 | cases: { 60 | '@phpPreDefinedVariables': { 61 | token: 'variable.predefined.php' 62 | }, 63 | '@default': 'variable.php' 64 | } 65 | } 66 | ], 67 | 68 | // brackets 69 | [/[{}]/, 'delimiter.bracket.php'], 70 | [/[\[\]]/, 'delimiter.array.php'], 71 | [/[()]/, 'delimiter.parenthesis.php'], 72 | 73 | // whitespace 74 | [/[ \t\r\n]+/], 75 | 76 | // comments 77 | [/(#|\/\/)$/, 'comment.php'], 78 | [/(#|\/\/)/, 'comment.php', '@phpLineComment'], 79 | 80 | // block comments 81 | [/\/\*/, 'comment.php', '@phpComment'], 82 | 83 | // strings 84 | [/"/, 'string.php', '@phpDoubleQuoteString'], 85 | [/'/, 'string.php', '@phpSingleQuoteString'], 86 | 87 | // delimiters 88 | [/[\+\-\*\%\&\|\^\~\!\=\<\>\/\?\;\:\.\,\@]/, 'delimiter.php'], 89 | 90 | // numbers 91 | [/\d*\d+[eE]([\-+]?\d+)?/, 'number.float.php'], 92 | [/\d*\.\d+([eE][\-+]?\d+)?/, 'number.float.php'], 93 | [/0[xX][0-9a-fA-F']*[0-9a-fA-F]/, 'number.hex.php'], 94 | [/0[0-7']*[0-7]/, 'number.octal.php'], 95 | [/0[bB][0-1']*[0-1]/, 'number.binary.php'], 96 | [/\d[\d']*/, 'number.php'], 97 | [/\d/, 'number.php'] 98 | ], 99 | 100 | phpComment: [ 101 | [/\*\//, 'comment.php', '@pop'], 102 | [/[^*]+/, 'comment.php'], 103 | [/./, 'comment.php'] 104 | ], 105 | 106 | phpLineComment: [ 107 | [/\?>/, { token: '@rematch', next: '@pop' }], 108 | [/.$/, 'comment.php', '@pop'], 109 | [/[^?]+$/, 'comment.php', '@pop'], 110 | [/[^?]+/, 'comment.php'], 111 | [/./, 'comment.php'] 112 | ], 113 | 114 | phpDoubleQuoteString: [ 115 | [/[^\\"]+/, 'string.php'], 116 | [/@escapes/, 'string.escape.php'], 117 | [/\\./, 'string.escape.invalid.php'], 118 | [/"/, 'string.php', '@pop'] 119 | ], 120 | 121 | phpSingleQuoteString: [ 122 | [/[^\\']+/, 'string.php'], 123 | [/@escapes/, 'string.escape.php'], 124 | [/\\./, 'string.escape.invalid.php'], 125 | [/'/, 'string.php', '@pop'] 126 | ] 127 | }, 128 | 129 | phpKeywords: [ 130 | 'abstract', 131 | 'and', 132 | 'array', 133 | 'as', 134 | 'break', 135 | 'callable', 136 | 'case', 137 | 'catch', 138 | 'cfunction', 139 | 'class', 140 | 'clone', 141 | 'const', 142 | 'continue', 143 | 'declare', 144 | 'default', 145 | 'do', 146 | 'else', 147 | 'elseif', 148 | 'enddeclare', 149 | 'endfor', 150 | 'endforeach', 151 | 'endif', 152 | 'endswitch', 153 | 'endwhile', 154 | 'extends', 155 | 'false', 156 | 'final', 157 | 'for', 158 | 'foreach', 159 | 'function', 160 | 'global', 161 | 'goto', 162 | 'if', 163 | 'implements', 164 | 'interface', 165 | 'instanceof', 166 | 'insteadof', 167 | 'namespace', 168 | 'new', 169 | 'null', 170 | 'object', 171 | 'old_function', 172 | 'or', 173 | 'private', 174 | 'protected', 175 | 'public', 176 | 'resource', 177 | 'static', 178 | 'switch', 179 | 'throw', 180 | 'trait', 181 | 'try', 182 | 'true', 183 | 'use', 184 | 'var', 185 | 'while', 186 | 'xor', 187 | 'die', 188 | 'echo', 189 | 'empty', 190 | 'exit', 191 | 'eval', 192 | 'include', 193 | 'include_once', 194 | 'isset', 195 | 'list', 196 | 'require', 197 | 'require_once', 198 | 'return', 199 | 'print', 200 | 'unset', 201 | 'yield', 202 | '__construct' 203 | ], 204 | 205 | phpCompileTimeConstants: [ 206 | '__CLASS__', 207 | '__DIR__', 208 | '__FILE__', 209 | '__LINE__', 210 | '__NAMESPACE__', 211 | '__METHOD__', 212 | '__FUNCTION__', 213 | '__TRAIT__' 214 | ], 215 | 216 | phpPreDefinedVariables: [ 217 | '$GLOBALS', 218 | '$_SERVER', 219 | '$_GET', 220 | '$_POST', 221 | '$_FILES', 222 | '$_REQUEST', 223 | '$_SESSION', 224 | '$_ENV', 225 | '$_COOKIE', 226 | '$php_errormsg', 227 | '$HTTP_RAW_POST_DATA', 228 | '$http_response_header', 229 | '$argc', 230 | '$argv' 231 | ], 232 | 233 | escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/ 234 | }; 235 | 236 | export const registerLanguage = (languages: typeof MonacoLanguages): IDisposable[] => { 237 | const languageId = 'php-snippet' 238 | 239 | languages.register({ id: languageId }) 240 | 241 | return [ 242 | languages.setLanguageConfiguration(languageId, conf), 243 | languages.setMonarchTokensProvider(languageId, language) 244 | ]; 245 | } 246 | -------------------------------------------------------------------------------- /src-tauri/Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "addr2line" 7 | version = "0.21.0" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" 10 | dependencies = [ 11 | "gimli", 12 | ] 13 | 14 | [[package]] 15 | name = "adler" 16 | version = "1.0.2" 17 | source = "registry+https://github.com/rust-lang/crates.io-index" 18 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 19 | 20 | [[package]] 21 | name = "aho-corasick" 22 | version = "1.1.2" 23 | source = "registry+https://github.com/rust-lang/crates.io-index" 24 | checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" 25 | dependencies = [ 26 | "memchr", 27 | ] 28 | 29 | [[package]] 30 | name = "alloc-no-stdlib" 31 | version = "2.0.4" 32 | source = "registry+https://github.com/rust-lang/crates.io-index" 33 | checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" 34 | 35 | [[package]] 36 | name = "alloc-stdlib" 37 | version = "0.2.2" 38 | source = "registry+https://github.com/rust-lang/crates.io-index" 39 | checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" 40 | dependencies = [ 41 | "alloc-no-stdlib", 42 | ] 43 | 44 | [[package]] 45 | name = "android-tzdata" 46 | version = "0.1.1" 47 | source = "registry+https://github.com/rust-lang/crates.io-index" 48 | checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" 49 | 50 | [[package]] 51 | name = "android_system_properties" 52 | version = "0.1.5" 53 | source = "registry+https://github.com/rust-lang/crates.io-index" 54 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" 55 | dependencies = [ 56 | "libc", 57 | ] 58 | 59 | [[package]] 60 | name = "anyhow" 61 | version = "1.0.79" 62 | source = "registry+https://github.com/rust-lang/crates.io-index" 63 | checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" 64 | 65 | [[package]] 66 | name = "atk" 67 | version = "0.15.1" 68 | source = "registry+https://github.com/rust-lang/crates.io-index" 69 | checksum = "2c3d816ce6f0e2909a96830d6911c2aff044370b1ef92d7f267b43bae5addedd" 70 | dependencies = [ 71 | "atk-sys", 72 | "bitflags 1.3.2", 73 | "glib", 74 | "libc", 75 | ] 76 | 77 | [[package]] 78 | name = "atk-sys" 79 | version = "0.15.1" 80 | source = "registry+https://github.com/rust-lang/crates.io-index" 81 | checksum = "58aeb089fb698e06db8089971c7ee317ab9644bade33383f63631437b03aafb6" 82 | dependencies = [ 83 | "glib-sys", 84 | "gobject-sys", 85 | "libc", 86 | "system-deps 6.2.0", 87 | ] 88 | 89 | [[package]] 90 | name = "autocfg" 91 | version = "1.1.0" 92 | source = "registry+https://github.com/rust-lang/crates.io-index" 93 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 94 | 95 | [[package]] 96 | name = "backtrace" 97 | version = "0.3.69" 98 | source = "registry+https://github.com/rust-lang/crates.io-index" 99 | checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" 100 | dependencies = [ 101 | "addr2line", 102 | "cc", 103 | "cfg-if", 104 | "libc", 105 | "miniz_oxide", 106 | "object", 107 | "rustc-demangle", 108 | ] 109 | 110 | [[package]] 111 | name = "base64" 112 | version = "0.13.1" 113 | source = "registry+https://github.com/rust-lang/crates.io-index" 114 | checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" 115 | 116 | [[package]] 117 | name = "base64" 118 | version = "0.21.5" 119 | source = "registry+https://github.com/rust-lang/crates.io-index" 120 | checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" 121 | 122 | [[package]] 123 | name = "bitflags" 124 | version = "1.3.2" 125 | source = "registry+https://github.com/rust-lang/crates.io-index" 126 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 127 | 128 | [[package]] 129 | name = "bitflags" 130 | version = "2.4.1" 131 | source = "registry+https://github.com/rust-lang/crates.io-index" 132 | checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" 133 | 134 | [[package]] 135 | name = "block" 136 | version = "0.1.6" 137 | source = "registry+https://github.com/rust-lang/crates.io-index" 138 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" 139 | 140 | [[package]] 141 | name = "block-buffer" 142 | version = "0.10.4" 143 | source = "registry+https://github.com/rust-lang/crates.io-index" 144 | checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" 145 | dependencies = [ 146 | "generic-array", 147 | ] 148 | 149 | [[package]] 150 | name = "brotli" 151 | version = "3.4.0" 152 | source = "registry+https://github.com/rust-lang/crates.io-index" 153 | checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" 154 | dependencies = [ 155 | "alloc-no-stdlib", 156 | "alloc-stdlib", 157 | "brotli-decompressor", 158 | ] 159 | 160 | [[package]] 161 | name = "brotli-decompressor" 162 | version = "2.5.1" 163 | source = "registry+https://github.com/rust-lang/crates.io-index" 164 | checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" 165 | dependencies = [ 166 | "alloc-no-stdlib", 167 | "alloc-stdlib", 168 | ] 169 | 170 | [[package]] 171 | name = "bstr" 172 | version = "1.9.0" 173 | source = "registry+https://github.com/rust-lang/crates.io-index" 174 | checksum = "c48f0051a4b4c5e0b6d365cd04af53aeaa209e3cc15ec2cdb69e73cc87fbd0dc" 175 | dependencies = [ 176 | "memchr", 177 | "serde", 178 | ] 179 | 180 | [[package]] 181 | name = "bumpalo" 182 | version = "3.14.0" 183 | source = "registry+https://github.com/rust-lang/crates.io-index" 184 | checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" 185 | 186 | [[package]] 187 | name = "bytemuck" 188 | version = "1.14.0" 189 | source = "registry+https://github.com/rust-lang/crates.io-index" 190 | checksum = "374d28ec25809ee0e23827c2ab573d729e293f281dfe393500e7ad618baa61c6" 191 | 192 | [[package]] 193 | name = "byteorder" 194 | version = "1.5.0" 195 | source = "registry+https://github.com/rust-lang/crates.io-index" 196 | checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 197 | 198 | [[package]] 199 | name = "bytes" 200 | version = "1.5.0" 201 | source = "registry+https://github.com/rust-lang/crates.io-index" 202 | checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" 203 | dependencies = [ 204 | "serde", 205 | ] 206 | 207 | [[package]] 208 | name = "cairo-rs" 209 | version = "0.15.12" 210 | source = "registry+https://github.com/rust-lang/crates.io-index" 211 | checksum = "c76ee391b03d35510d9fa917357c7f1855bd9a6659c95a1b392e33f49b3369bc" 212 | dependencies = [ 213 | "bitflags 1.3.2", 214 | "cairo-sys-rs", 215 | "glib", 216 | "libc", 217 | "thiserror", 218 | ] 219 | 220 | [[package]] 221 | name = "cairo-sys-rs" 222 | version = "0.15.1" 223 | source = "registry+https://github.com/rust-lang/crates.io-index" 224 | checksum = "3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8" 225 | dependencies = [ 226 | "glib-sys", 227 | "libc", 228 | "system-deps 6.2.0", 229 | ] 230 | 231 | [[package]] 232 | name = "cargo_toml" 233 | version = "0.15.3" 234 | source = "registry+https://github.com/rust-lang/crates.io-index" 235 | checksum = "599aa35200ffff8f04c1925aa1acc92fa2e08874379ef42e210a80e527e60838" 236 | dependencies = [ 237 | "serde", 238 | "toml 0.7.8", 239 | ] 240 | 241 | [[package]] 242 | name = "cc" 243 | version = "1.0.83" 244 | source = "registry+https://github.com/rust-lang/crates.io-index" 245 | checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" 246 | dependencies = [ 247 | "libc", 248 | ] 249 | 250 | [[package]] 251 | name = "cesu8" 252 | version = "1.1.0" 253 | source = "registry+https://github.com/rust-lang/crates.io-index" 254 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" 255 | 256 | [[package]] 257 | name = "cfb" 258 | version = "0.7.3" 259 | source = "registry+https://github.com/rust-lang/crates.io-index" 260 | checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f" 261 | dependencies = [ 262 | "byteorder", 263 | "fnv", 264 | "uuid", 265 | ] 266 | 267 | [[package]] 268 | name = "cfg-expr" 269 | version = "0.9.1" 270 | source = "registry+https://github.com/rust-lang/crates.io-index" 271 | checksum = "3431df59f28accaf4cb4eed4a9acc66bea3f3c3753aa6cdc2f024174ef232af7" 272 | dependencies = [ 273 | "smallvec", 274 | ] 275 | 276 | [[package]] 277 | name = "cfg-expr" 278 | version = "0.15.6" 279 | source = "registry+https://github.com/rust-lang/crates.io-index" 280 | checksum = "6100bc57b6209840798d95cb2775684849d332f7bd788db2a8c8caf7ef82a41a" 281 | dependencies = [ 282 | "smallvec", 283 | "target-lexicon", 284 | ] 285 | 286 | [[package]] 287 | name = "cfg-if" 288 | version = "1.0.0" 289 | source = "registry+https://github.com/rust-lang/crates.io-index" 290 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 291 | 292 | [[package]] 293 | name = "chrono" 294 | version = "0.4.31" 295 | source = "registry+https://github.com/rust-lang/crates.io-index" 296 | checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" 297 | dependencies = [ 298 | "android-tzdata", 299 | "iana-time-zone", 300 | "num-traits", 301 | "serde", 302 | "windows-targets 0.48.5", 303 | ] 304 | 305 | [[package]] 306 | name = "cocoa" 307 | version = "0.24.1" 308 | source = "registry+https://github.com/rust-lang/crates.io-index" 309 | checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a" 310 | dependencies = [ 311 | "bitflags 1.3.2", 312 | "block", 313 | "cocoa-foundation", 314 | "core-foundation", 315 | "core-graphics", 316 | "foreign-types", 317 | "libc", 318 | "objc", 319 | ] 320 | 321 | [[package]] 322 | name = "cocoa-foundation" 323 | version = "0.1.2" 324 | source = "registry+https://github.com/rust-lang/crates.io-index" 325 | checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" 326 | dependencies = [ 327 | "bitflags 1.3.2", 328 | "block", 329 | "core-foundation", 330 | "core-graphics-types", 331 | "libc", 332 | "objc", 333 | ] 334 | 335 | [[package]] 336 | name = "color_quant" 337 | version = "1.1.0" 338 | source = "registry+https://github.com/rust-lang/crates.io-index" 339 | checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" 340 | 341 | [[package]] 342 | name = "combine" 343 | version = "4.6.6" 344 | source = "registry+https://github.com/rust-lang/crates.io-index" 345 | checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" 346 | dependencies = [ 347 | "bytes", 348 | "memchr", 349 | ] 350 | 351 | [[package]] 352 | name = "convert_case" 353 | version = "0.4.0" 354 | source = "registry+https://github.com/rust-lang/crates.io-index" 355 | checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" 356 | 357 | [[package]] 358 | name = "core-foundation" 359 | version = "0.9.4" 360 | source = "registry+https://github.com/rust-lang/crates.io-index" 361 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 362 | dependencies = [ 363 | "core-foundation-sys", 364 | "libc", 365 | ] 366 | 367 | [[package]] 368 | name = "core-foundation-sys" 369 | version = "0.8.6" 370 | source = "registry+https://github.com/rust-lang/crates.io-index" 371 | checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" 372 | 373 | [[package]] 374 | name = "core-graphics" 375 | version = "0.22.3" 376 | source = "registry+https://github.com/rust-lang/crates.io-index" 377 | checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" 378 | dependencies = [ 379 | "bitflags 1.3.2", 380 | "core-foundation", 381 | "core-graphics-types", 382 | "foreign-types", 383 | "libc", 384 | ] 385 | 386 | [[package]] 387 | name = "core-graphics-types" 388 | version = "0.1.3" 389 | source = "registry+https://github.com/rust-lang/crates.io-index" 390 | checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" 391 | dependencies = [ 392 | "bitflags 1.3.2", 393 | "core-foundation", 394 | "libc", 395 | ] 396 | 397 | [[package]] 398 | name = "cpufeatures" 399 | version = "0.2.12" 400 | source = "registry+https://github.com/rust-lang/crates.io-index" 401 | checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" 402 | dependencies = [ 403 | "libc", 404 | ] 405 | 406 | [[package]] 407 | name = "crc32fast" 408 | version = "1.3.2" 409 | source = "registry+https://github.com/rust-lang/crates.io-index" 410 | checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" 411 | dependencies = [ 412 | "cfg-if", 413 | ] 414 | 415 | [[package]] 416 | name = "crossbeam-channel" 417 | version = "0.5.11" 418 | source = "registry+https://github.com/rust-lang/crates.io-index" 419 | checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" 420 | dependencies = [ 421 | "crossbeam-utils", 422 | ] 423 | 424 | [[package]] 425 | name = "crossbeam-deque" 426 | version = "0.8.5" 427 | source = "registry+https://github.com/rust-lang/crates.io-index" 428 | checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" 429 | dependencies = [ 430 | "crossbeam-epoch", 431 | "crossbeam-utils", 432 | ] 433 | 434 | [[package]] 435 | name = "crossbeam-epoch" 436 | version = "0.9.18" 437 | source = "registry+https://github.com/rust-lang/crates.io-index" 438 | checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" 439 | dependencies = [ 440 | "crossbeam-utils", 441 | ] 442 | 443 | [[package]] 444 | name = "crossbeam-utils" 445 | version = "0.8.19" 446 | source = "registry+https://github.com/rust-lang/crates.io-index" 447 | checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" 448 | 449 | [[package]] 450 | name = "crypto-common" 451 | version = "0.1.6" 452 | source = "registry+https://github.com/rust-lang/crates.io-index" 453 | checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" 454 | dependencies = [ 455 | "generic-array", 456 | "typenum", 457 | ] 458 | 459 | [[package]] 460 | name = "cssparser" 461 | version = "0.27.2" 462 | source = "registry+https://github.com/rust-lang/crates.io-index" 463 | checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a" 464 | dependencies = [ 465 | "cssparser-macros", 466 | "dtoa-short", 467 | "itoa 0.4.8", 468 | "matches", 469 | "phf 0.8.0", 470 | "proc-macro2", 471 | "quote", 472 | "smallvec", 473 | "syn 1.0.109", 474 | ] 475 | 476 | [[package]] 477 | name = "cssparser-macros" 478 | version = "0.6.1" 479 | source = "registry+https://github.com/rust-lang/crates.io-index" 480 | checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" 481 | dependencies = [ 482 | "quote", 483 | "syn 2.0.48", 484 | ] 485 | 486 | [[package]] 487 | name = "ctor" 488 | version = "0.2.6" 489 | source = "registry+https://github.com/rust-lang/crates.io-index" 490 | checksum = "30d2b3721e861707777e3195b0158f950ae6dc4a27e4d02ff9f67e3eb3de199e" 491 | dependencies = [ 492 | "quote", 493 | "syn 2.0.48", 494 | ] 495 | 496 | [[package]] 497 | name = "darling" 498 | version = "0.20.3" 499 | source = "registry+https://github.com/rust-lang/crates.io-index" 500 | checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" 501 | dependencies = [ 502 | "darling_core", 503 | "darling_macro", 504 | ] 505 | 506 | [[package]] 507 | name = "darling_core" 508 | version = "0.20.3" 509 | source = "registry+https://github.com/rust-lang/crates.io-index" 510 | checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" 511 | dependencies = [ 512 | "fnv", 513 | "ident_case", 514 | "proc-macro2", 515 | "quote", 516 | "strsim", 517 | "syn 2.0.48", 518 | ] 519 | 520 | [[package]] 521 | name = "darling_macro" 522 | version = "0.20.3" 523 | source = "registry+https://github.com/rust-lang/crates.io-index" 524 | checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" 525 | dependencies = [ 526 | "darling_core", 527 | "quote", 528 | "syn 2.0.48", 529 | ] 530 | 531 | [[package]] 532 | name = "deranged" 533 | version = "0.3.11" 534 | source = "registry+https://github.com/rust-lang/crates.io-index" 535 | checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" 536 | dependencies = [ 537 | "powerfmt", 538 | "serde", 539 | ] 540 | 541 | [[package]] 542 | name = "derive_more" 543 | version = "0.99.17" 544 | source = "registry+https://github.com/rust-lang/crates.io-index" 545 | checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" 546 | dependencies = [ 547 | "convert_case", 548 | "proc-macro2", 549 | "quote", 550 | "rustc_version", 551 | "syn 1.0.109", 552 | ] 553 | 554 | [[package]] 555 | name = "digest" 556 | version = "0.10.7" 557 | source = "registry+https://github.com/rust-lang/crates.io-index" 558 | checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" 559 | dependencies = [ 560 | "block-buffer", 561 | "crypto-common", 562 | ] 563 | 564 | [[package]] 565 | name = "dirs-next" 566 | version = "2.0.0" 567 | source = "registry+https://github.com/rust-lang/crates.io-index" 568 | checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" 569 | dependencies = [ 570 | "cfg-if", 571 | "dirs-sys-next", 572 | ] 573 | 574 | [[package]] 575 | name = "dirs-sys-next" 576 | version = "0.1.2" 577 | source = "registry+https://github.com/rust-lang/crates.io-index" 578 | checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" 579 | dependencies = [ 580 | "libc", 581 | "redox_users", 582 | "winapi", 583 | ] 584 | 585 | [[package]] 586 | name = "dispatch" 587 | version = "0.2.0" 588 | source = "registry+https://github.com/rust-lang/crates.io-index" 589 | checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" 590 | 591 | [[package]] 592 | name = "downcast-rs" 593 | version = "1.2.0" 594 | source = "registry+https://github.com/rust-lang/crates.io-index" 595 | checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" 596 | 597 | [[package]] 598 | name = "dtoa" 599 | version = "1.0.9" 600 | source = "registry+https://github.com/rust-lang/crates.io-index" 601 | checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653" 602 | 603 | [[package]] 604 | name = "dtoa-short" 605 | version = "0.3.4" 606 | source = "registry+https://github.com/rust-lang/crates.io-index" 607 | checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74" 608 | dependencies = [ 609 | "dtoa", 610 | ] 611 | 612 | [[package]] 613 | name = "dunce" 614 | version = "1.0.4" 615 | source = "registry+https://github.com/rust-lang/crates.io-index" 616 | checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" 617 | 618 | [[package]] 619 | name = "embed-resource" 620 | version = "2.4.1" 621 | source = "registry+https://github.com/rust-lang/crates.io-index" 622 | checksum = "3bde55e389bea6a966bd467ad1ad7da0ae14546a5bc794d16d1e55e7fca44881" 623 | dependencies = [ 624 | "cc", 625 | "memchr", 626 | "rustc_version", 627 | "toml 0.8.8", 628 | "vswhom", 629 | "winreg 0.51.0", 630 | ] 631 | 632 | [[package]] 633 | name = "embed_plist" 634 | version = "1.2.2" 635 | source = "registry+https://github.com/rust-lang/crates.io-index" 636 | checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" 637 | 638 | [[package]] 639 | name = "encoding_rs" 640 | version = "0.8.33" 641 | source = "registry+https://github.com/rust-lang/crates.io-index" 642 | checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" 643 | dependencies = [ 644 | "cfg-if", 645 | ] 646 | 647 | [[package]] 648 | name = "equivalent" 649 | version = "1.0.1" 650 | source = "registry+https://github.com/rust-lang/crates.io-index" 651 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" 652 | 653 | [[package]] 654 | name = "errno" 655 | version = "0.3.8" 656 | source = "registry+https://github.com/rust-lang/crates.io-index" 657 | checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" 658 | dependencies = [ 659 | "libc", 660 | "windows-sys 0.52.0", 661 | ] 662 | 663 | [[package]] 664 | name = "fastrand" 665 | version = "2.0.1" 666 | source = "registry+https://github.com/rust-lang/crates.io-index" 667 | checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" 668 | 669 | [[package]] 670 | name = "fdeflate" 671 | version = "0.3.3" 672 | source = "registry+https://github.com/rust-lang/crates.io-index" 673 | checksum = "209098dd6dfc4445aa6111f0e98653ac323eaa4dfd212c9ca3931bf9955c31bd" 674 | dependencies = [ 675 | "simd-adler32", 676 | ] 677 | 678 | [[package]] 679 | name = "field-offset" 680 | version = "0.3.6" 681 | source = "registry+https://github.com/rust-lang/crates.io-index" 682 | checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f" 683 | dependencies = [ 684 | "memoffset 0.9.0", 685 | "rustc_version", 686 | ] 687 | 688 | [[package]] 689 | name = "filedescriptor" 690 | version = "0.8.2" 691 | source = "registry+https://github.com/rust-lang/crates.io-index" 692 | checksum = "7199d965852c3bac31f779ef99cbb4537f80e952e2d6aa0ffeb30cce00f4f46e" 693 | dependencies = [ 694 | "libc", 695 | "thiserror", 696 | "winapi", 697 | ] 698 | 699 | [[package]] 700 | name = "filetime" 701 | version = "0.2.23" 702 | source = "registry+https://github.com/rust-lang/crates.io-index" 703 | checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" 704 | dependencies = [ 705 | "cfg-if", 706 | "libc", 707 | "redox_syscall", 708 | "windows-sys 0.52.0", 709 | ] 710 | 711 | [[package]] 712 | name = "flate2" 713 | version = "1.0.28" 714 | source = "registry+https://github.com/rust-lang/crates.io-index" 715 | checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" 716 | dependencies = [ 717 | "crc32fast", 718 | "miniz_oxide", 719 | ] 720 | 721 | [[package]] 722 | name = "fnv" 723 | version = "1.0.7" 724 | source = "registry+https://github.com/rust-lang/crates.io-index" 725 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 726 | 727 | [[package]] 728 | name = "foreign-types" 729 | version = "0.3.2" 730 | source = "registry+https://github.com/rust-lang/crates.io-index" 731 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 732 | dependencies = [ 733 | "foreign-types-shared", 734 | ] 735 | 736 | [[package]] 737 | name = "foreign-types-shared" 738 | version = "0.1.1" 739 | source = "registry+https://github.com/rust-lang/crates.io-index" 740 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 741 | 742 | [[package]] 743 | name = "form_urlencoded" 744 | version = "1.2.1" 745 | source = "registry+https://github.com/rust-lang/crates.io-index" 746 | checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" 747 | dependencies = [ 748 | "percent-encoding", 749 | ] 750 | 751 | [[package]] 752 | name = "futf" 753 | version = "0.1.5" 754 | source = "registry+https://github.com/rust-lang/crates.io-index" 755 | checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843" 756 | dependencies = [ 757 | "mac", 758 | "new_debug_unreachable", 759 | ] 760 | 761 | [[package]] 762 | name = "futures-channel" 763 | version = "0.3.30" 764 | source = "registry+https://github.com/rust-lang/crates.io-index" 765 | checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" 766 | dependencies = [ 767 | "futures-core", 768 | ] 769 | 770 | [[package]] 771 | name = "futures-core" 772 | version = "0.3.30" 773 | source = "registry+https://github.com/rust-lang/crates.io-index" 774 | checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" 775 | 776 | [[package]] 777 | name = "futures-executor" 778 | version = "0.3.30" 779 | source = "registry+https://github.com/rust-lang/crates.io-index" 780 | checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" 781 | dependencies = [ 782 | "futures-core", 783 | "futures-task", 784 | "futures-util", 785 | ] 786 | 787 | [[package]] 788 | name = "futures-io" 789 | version = "0.3.30" 790 | source = "registry+https://github.com/rust-lang/crates.io-index" 791 | checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" 792 | 793 | [[package]] 794 | name = "futures-macro" 795 | version = "0.3.30" 796 | source = "registry+https://github.com/rust-lang/crates.io-index" 797 | checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" 798 | dependencies = [ 799 | "proc-macro2", 800 | "quote", 801 | "syn 2.0.48", 802 | ] 803 | 804 | [[package]] 805 | name = "futures-sink" 806 | version = "0.3.30" 807 | source = "registry+https://github.com/rust-lang/crates.io-index" 808 | checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" 809 | 810 | [[package]] 811 | name = "futures-task" 812 | version = "0.3.30" 813 | source = "registry+https://github.com/rust-lang/crates.io-index" 814 | checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" 815 | 816 | [[package]] 817 | name = "futures-util" 818 | version = "0.3.30" 819 | source = "registry+https://github.com/rust-lang/crates.io-index" 820 | checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" 821 | dependencies = [ 822 | "futures-core", 823 | "futures-io", 824 | "futures-macro", 825 | "futures-sink", 826 | "futures-task", 827 | "memchr", 828 | "pin-project-lite", 829 | "pin-utils", 830 | "slab", 831 | ] 832 | 833 | [[package]] 834 | name = "fxhash" 835 | version = "0.2.1" 836 | source = "registry+https://github.com/rust-lang/crates.io-index" 837 | checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" 838 | dependencies = [ 839 | "byteorder", 840 | ] 841 | 842 | [[package]] 843 | name = "gdk" 844 | version = "0.15.4" 845 | source = "registry+https://github.com/rust-lang/crates.io-index" 846 | checksum = "a6e05c1f572ab0e1f15be94217f0dc29088c248b14f792a5ff0af0d84bcda9e8" 847 | dependencies = [ 848 | "bitflags 1.3.2", 849 | "cairo-rs", 850 | "gdk-pixbuf", 851 | "gdk-sys", 852 | "gio", 853 | "glib", 854 | "libc", 855 | "pango", 856 | ] 857 | 858 | [[package]] 859 | name = "gdk-pixbuf" 860 | version = "0.15.11" 861 | source = "registry+https://github.com/rust-lang/crates.io-index" 862 | checksum = "ad38dd9cc8b099cceecdf41375bb6d481b1b5a7cd5cd603e10a69a9383f8619a" 863 | dependencies = [ 864 | "bitflags 1.3.2", 865 | "gdk-pixbuf-sys", 866 | "gio", 867 | "glib", 868 | "libc", 869 | ] 870 | 871 | [[package]] 872 | name = "gdk-pixbuf-sys" 873 | version = "0.15.10" 874 | source = "registry+https://github.com/rust-lang/crates.io-index" 875 | checksum = "140b2f5378256527150350a8346dbdb08fadc13453a7a2d73aecd5fab3c402a7" 876 | dependencies = [ 877 | "gio-sys", 878 | "glib-sys", 879 | "gobject-sys", 880 | "libc", 881 | "system-deps 6.2.0", 882 | ] 883 | 884 | [[package]] 885 | name = "gdk-sys" 886 | version = "0.15.1" 887 | source = "registry+https://github.com/rust-lang/crates.io-index" 888 | checksum = "32e7a08c1e8f06f4177fb7e51a777b8c1689f743a7bc11ea91d44d2226073a88" 889 | dependencies = [ 890 | "cairo-sys-rs", 891 | "gdk-pixbuf-sys", 892 | "gio-sys", 893 | "glib-sys", 894 | "gobject-sys", 895 | "libc", 896 | "pango-sys", 897 | "pkg-config", 898 | "system-deps 6.2.0", 899 | ] 900 | 901 | [[package]] 902 | name = "gdkwayland-sys" 903 | version = "0.15.3" 904 | source = "registry+https://github.com/rust-lang/crates.io-index" 905 | checksum = "cca49a59ad8cfdf36ef7330fe7bdfbe1d34323220cc16a0de2679ee773aee2c2" 906 | dependencies = [ 907 | "gdk-sys", 908 | "glib-sys", 909 | "gobject-sys", 910 | "libc", 911 | "pkg-config", 912 | "system-deps 6.2.0", 913 | ] 914 | 915 | [[package]] 916 | name = "gdkx11-sys" 917 | version = "0.15.1" 918 | source = "registry+https://github.com/rust-lang/crates.io-index" 919 | checksum = "b4b7f8c7a84b407aa9b143877e267e848ff34106578b64d1e0a24bf550716178" 920 | dependencies = [ 921 | "gdk-sys", 922 | "glib-sys", 923 | "libc", 924 | "system-deps 6.2.0", 925 | "x11", 926 | ] 927 | 928 | [[package]] 929 | name = "generator" 930 | version = "0.7.5" 931 | source = "registry+https://github.com/rust-lang/crates.io-index" 932 | checksum = "5cc16584ff22b460a382b7feec54b23d2908d858152e5739a120b949293bd74e" 933 | dependencies = [ 934 | "cc", 935 | "libc", 936 | "log", 937 | "rustversion", 938 | "windows 0.48.0", 939 | ] 940 | 941 | [[package]] 942 | name = "generic-array" 943 | version = "0.14.7" 944 | source = "registry+https://github.com/rust-lang/crates.io-index" 945 | checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" 946 | dependencies = [ 947 | "typenum", 948 | "version_check", 949 | ] 950 | 951 | [[package]] 952 | name = "getrandom" 953 | version = "0.1.16" 954 | source = "registry+https://github.com/rust-lang/crates.io-index" 955 | checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" 956 | dependencies = [ 957 | "cfg-if", 958 | "libc", 959 | "wasi 0.9.0+wasi-snapshot-preview1", 960 | ] 961 | 962 | [[package]] 963 | name = "getrandom" 964 | version = "0.2.11" 965 | source = "registry+https://github.com/rust-lang/crates.io-index" 966 | checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" 967 | dependencies = [ 968 | "cfg-if", 969 | "libc", 970 | "wasi 0.11.0+wasi-snapshot-preview1", 971 | ] 972 | 973 | [[package]] 974 | name = "gimli" 975 | version = "0.28.1" 976 | source = "registry+https://github.com/rust-lang/crates.io-index" 977 | checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" 978 | 979 | [[package]] 980 | name = "gio" 981 | version = "0.15.12" 982 | source = "registry+https://github.com/rust-lang/crates.io-index" 983 | checksum = "68fdbc90312d462781a395f7a16d96a2b379bb6ef8cd6310a2df272771c4283b" 984 | dependencies = [ 985 | "bitflags 1.3.2", 986 | "futures-channel", 987 | "futures-core", 988 | "futures-io", 989 | "gio-sys", 990 | "glib", 991 | "libc", 992 | "once_cell", 993 | "thiserror", 994 | ] 995 | 996 | [[package]] 997 | name = "gio-sys" 998 | version = "0.15.10" 999 | source = "registry+https://github.com/rust-lang/crates.io-index" 1000 | checksum = "32157a475271e2c4a023382e9cab31c4584ee30a97da41d3c4e9fdd605abcf8d" 1001 | dependencies = [ 1002 | "glib-sys", 1003 | "gobject-sys", 1004 | "libc", 1005 | "system-deps 6.2.0", 1006 | "winapi", 1007 | ] 1008 | 1009 | [[package]] 1010 | name = "glib" 1011 | version = "0.15.12" 1012 | source = "registry+https://github.com/rust-lang/crates.io-index" 1013 | checksum = "edb0306fbad0ab5428b0ca674a23893db909a98582969c9b537be4ced78c505d" 1014 | dependencies = [ 1015 | "bitflags 1.3.2", 1016 | "futures-channel", 1017 | "futures-core", 1018 | "futures-executor", 1019 | "futures-task", 1020 | "glib-macros", 1021 | "glib-sys", 1022 | "gobject-sys", 1023 | "libc", 1024 | "once_cell", 1025 | "smallvec", 1026 | "thiserror", 1027 | ] 1028 | 1029 | [[package]] 1030 | name = "glib-macros" 1031 | version = "0.15.13" 1032 | source = "registry+https://github.com/rust-lang/crates.io-index" 1033 | checksum = "10c6ae9f6fa26f4fb2ac16b528d138d971ead56141de489f8111e259b9df3c4a" 1034 | dependencies = [ 1035 | "anyhow", 1036 | "heck 0.4.1", 1037 | "proc-macro-crate", 1038 | "proc-macro-error", 1039 | "proc-macro2", 1040 | "quote", 1041 | "syn 1.0.109", 1042 | ] 1043 | 1044 | [[package]] 1045 | name = "glib-sys" 1046 | version = "0.15.10" 1047 | source = "registry+https://github.com/rust-lang/crates.io-index" 1048 | checksum = "ef4b192f8e65e9cf76cbf4ea71fa8e3be4a0e18ffe3d68b8da6836974cc5bad4" 1049 | dependencies = [ 1050 | "libc", 1051 | "system-deps 6.2.0", 1052 | ] 1053 | 1054 | [[package]] 1055 | name = "glob" 1056 | version = "0.3.1" 1057 | source = "registry+https://github.com/rust-lang/crates.io-index" 1058 | checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" 1059 | 1060 | [[package]] 1061 | name = "globset" 1062 | version = "0.4.14" 1063 | source = "registry+https://github.com/rust-lang/crates.io-index" 1064 | checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" 1065 | dependencies = [ 1066 | "aho-corasick", 1067 | "bstr", 1068 | "log", 1069 | "regex-automata 0.4.3", 1070 | "regex-syntax 0.8.2", 1071 | ] 1072 | 1073 | [[package]] 1074 | name = "gobject-sys" 1075 | version = "0.15.10" 1076 | source = "registry+https://github.com/rust-lang/crates.io-index" 1077 | checksum = "0d57ce44246becd17153bd035ab4d32cfee096a657fc01f2231c9278378d1e0a" 1078 | dependencies = [ 1079 | "glib-sys", 1080 | "libc", 1081 | "system-deps 6.2.0", 1082 | ] 1083 | 1084 | [[package]] 1085 | name = "gtk" 1086 | version = "0.15.5" 1087 | source = "registry+https://github.com/rust-lang/crates.io-index" 1088 | checksum = "92e3004a2d5d6d8b5057d2b57b3712c9529b62e82c77f25c1fecde1fd5c23bd0" 1089 | dependencies = [ 1090 | "atk", 1091 | "bitflags 1.3.2", 1092 | "cairo-rs", 1093 | "field-offset", 1094 | "futures-channel", 1095 | "gdk", 1096 | "gdk-pixbuf", 1097 | "gio", 1098 | "glib", 1099 | "gtk-sys", 1100 | "gtk3-macros", 1101 | "libc", 1102 | "once_cell", 1103 | "pango", 1104 | "pkg-config", 1105 | ] 1106 | 1107 | [[package]] 1108 | name = "gtk-sys" 1109 | version = "0.15.3" 1110 | source = "registry+https://github.com/rust-lang/crates.io-index" 1111 | checksum = "d5bc2f0587cba247f60246a0ca11fe25fb733eabc3de12d1965fc07efab87c84" 1112 | dependencies = [ 1113 | "atk-sys", 1114 | "cairo-sys-rs", 1115 | "gdk-pixbuf-sys", 1116 | "gdk-sys", 1117 | "gio-sys", 1118 | "glib-sys", 1119 | "gobject-sys", 1120 | "libc", 1121 | "pango-sys", 1122 | "system-deps 6.2.0", 1123 | ] 1124 | 1125 | [[package]] 1126 | name = "gtk3-macros" 1127 | version = "0.15.6" 1128 | source = "registry+https://github.com/rust-lang/crates.io-index" 1129 | checksum = "684c0456c086e8e7e9af73ec5b84e35938df394712054550e81558d21c44ab0d" 1130 | dependencies = [ 1131 | "anyhow", 1132 | "proc-macro-crate", 1133 | "proc-macro-error", 1134 | "proc-macro2", 1135 | "quote", 1136 | "syn 1.0.109", 1137 | ] 1138 | 1139 | [[package]] 1140 | name = "h2" 1141 | version = "0.3.23" 1142 | source = "registry+https://github.com/rust-lang/crates.io-index" 1143 | checksum = "b553656127a00601c8ae5590fcfdc118e4083a7924b6cf4ffc1ea4b99dc429d7" 1144 | dependencies = [ 1145 | "bytes", 1146 | "fnv", 1147 | "futures-core", 1148 | "futures-sink", 1149 | "futures-util", 1150 | "http", 1151 | "indexmap 2.1.0", 1152 | "slab", 1153 | "tokio", 1154 | "tokio-util", 1155 | "tracing", 1156 | ] 1157 | 1158 | [[package]] 1159 | name = "hashbrown" 1160 | version = "0.12.3" 1161 | source = "registry+https://github.com/rust-lang/crates.io-index" 1162 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 1163 | 1164 | [[package]] 1165 | name = "hashbrown" 1166 | version = "0.14.3" 1167 | source = "registry+https://github.com/rust-lang/crates.io-index" 1168 | checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" 1169 | 1170 | [[package]] 1171 | name = "heck" 1172 | version = "0.3.3" 1173 | source = "registry+https://github.com/rust-lang/crates.io-index" 1174 | checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" 1175 | dependencies = [ 1176 | "unicode-segmentation", 1177 | ] 1178 | 1179 | [[package]] 1180 | name = "heck" 1181 | version = "0.4.1" 1182 | source = "registry+https://github.com/rust-lang/crates.io-index" 1183 | checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" 1184 | 1185 | [[package]] 1186 | name = "hermit-abi" 1187 | version = "0.3.3" 1188 | source = "registry+https://github.com/rust-lang/crates.io-index" 1189 | checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" 1190 | 1191 | [[package]] 1192 | name = "hex" 1193 | version = "0.4.3" 1194 | source = "registry+https://github.com/rust-lang/crates.io-index" 1195 | checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1196 | 1197 | [[package]] 1198 | name = "html5ever" 1199 | version = "0.26.0" 1200 | source = "registry+https://github.com/rust-lang/crates.io-index" 1201 | checksum = "bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7" 1202 | dependencies = [ 1203 | "log", 1204 | "mac", 1205 | "markup5ever", 1206 | "proc-macro2", 1207 | "quote", 1208 | "syn 1.0.109", 1209 | ] 1210 | 1211 | [[package]] 1212 | name = "http" 1213 | version = "0.2.11" 1214 | source = "registry+https://github.com/rust-lang/crates.io-index" 1215 | checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" 1216 | dependencies = [ 1217 | "bytes", 1218 | "fnv", 1219 | "itoa 1.0.10", 1220 | ] 1221 | 1222 | [[package]] 1223 | name = "http-body" 1224 | version = "0.4.6" 1225 | source = "registry+https://github.com/rust-lang/crates.io-index" 1226 | checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" 1227 | dependencies = [ 1228 | "bytes", 1229 | "http", 1230 | "pin-project-lite", 1231 | ] 1232 | 1233 | [[package]] 1234 | name = "http-range" 1235 | version = "0.1.5" 1236 | source = "registry+https://github.com/rust-lang/crates.io-index" 1237 | checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573" 1238 | 1239 | [[package]] 1240 | name = "httparse" 1241 | version = "1.8.0" 1242 | source = "registry+https://github.com/rust-lang/crates.io-index" 1243 | checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" 1244 | 1245 | [[package]] 1246 | name = "httpdate" 1247 | version = "1.0.3" 1248 | source = "registry+https://github.com/rust-lang/crates.io-index" 1249 | checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" 1250 | 1251 | [[package]] 1252 | name = "hyper" 1253 | version = "0.14.28" 1254 | source = "registry+https://github.com/rust-lang/crates.io-index" 1255 | checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" 1256 | dependencies = [ 1257 | "bytes", 1258 | "futures-channel", 1259 | "futures-core", 1260 | "futures-util", 1261 | "h2", 1262 | "http", 1263 | "http-body", 1264 | "httparse", 1265 | "httpdate", 1266 | "itoa 1.0.10", 1267 | "pin-project-lite", 1268 | "socket2", 1269 | "tokio", 1270 | "tower-service", 1271 | "tracing", 1272 | "want", 1273 | ] 1274 | 1275 | [[package]] 1276 | name = "hyper-tls" 1277 | version = "0.5.0" 1278 | source = "registry+https://github.com/rust-lang/crates.io-index" 1279 | checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" 1280 | dependencies = [ 1281 | "bytes", 1282 | "hyper", 1283 | "native-tls", 1284 | "tokio", 1285 | "tokio-native-tls", 1286 | ] 1287 | 1288 | [[package]] 1289 | name = "iana-time-zone" 1290 | version = "0.1.59" 1291 | source = "registry+https://github.com/rust-lang/crates.io-index" 1292 | checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539" 1293 | dependencies = [ 1294 | "android_system_properties", 1295 | "core-foundation-sys", 1296 | "iana-time-zone-haiku", 1297 | "js-sys", 1298 | "wasm-bindgen", 1299 | "windows-core", 1300 | ] 1301 | 1302 | [[package]] 1303 | name = "iana-time-zone-haiku" 1304 | version = "0.1.2" 1305 | source = "registry+https://github.com/rust-lang/crates.io-index" 1306 | checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" 1307 | dependencies = [ 1308 | "cc", 1309 | ] 1310 | 1311 | [[package]] 1312 | name = "ico" 1313 | version = "0.3.0" 1314 | source = "registry+https://github.com/rust-lang/crates.io-index" 1315 | checksum = "e3804960be0bb5e4edb1e1ad67afd321a9ecfd875c3e65c099468fd2717d7cae" 1316 | dependencies = [ 1317 | "byteorder", 1318 | "png", 1319 | ] 1320 | 1321 | [[package]] 1322 | name = "ident_case" 1323 | version = "1.0.1" 1324 | source = "registry+https://github.com/rust-lang/crates.io-index" 1325 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 1326 | 1327 | [[package]] 1328 | name = "idna" 1329 | version = "0.5.0" 1330 | source = "registry+https://github.com/rust-lang/crates.io-index" 1331 | checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" 1332 | dependencies = [ 1333 | "unicode-bidi", 1334 | "unicode-normalization", 1335 | ] 1336 | 1337 | [[package]] 1338 | name = "ignore" 1339 | version = "0.4.22" 1340 | source = "registry+https://github.com/rust-lang/crates.io-index" 1341 | checksum = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1" 1342 | dependencies = [ 1343 | "crossbeam-deque", 1344 | "globset", 1345 | "log", 1346 | "memchr", 1347 | "regex-automata 0.4.3", 1348 | "same-file", 1349 | "walkdir", 1350 | "winapi-util", 1351 | ] 1352 | 1353 | [[package]] 1354 | name = "image" 1355 | version = "0.24.7" 1356 | source = "registry+https://github.com/rust-lang/crates.io-index" 1357 | checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711" 1358 | dependencies = [ 1359 | "bytemuck", 1360 | "byteorder", 1361 | "color_quant", 1362 | "num-rational", 1363 | "num-traits", 1364 | ] 1365 | 1366 | [[package]] 1367 | name = "indexmap" 1368 | version = "1.9.3" 1369 | source = "registry+https://github.com/rust-lang/crates.io-index" 1370 | checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" 1371 | dependencies = [ 1372 | "autocfg", 1373 | "hashbrown 0.12.3", 1374 | "serde", 1375 | ] 1376 | 1377 | [[package]] 1378 | name = "indexmap" 1379 | version = "2.1.0" 1380 | source = "registry+https://github.com/rust-lang/crates.io-index" 1381 | checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" 1382 | dependencies = [ 1383 | "equivalent", 1384 | "hashbrown 0.14.3", 1385 | "serde", 1386 | ] 1387 | 1388 | [[package]] 1389 | name = "infer" 1390 | version = "0.13.0" 1391 | source = "registry+https://github.com/rust-lang/crates.io-index" 1392 | checksum = "f551f8c3a39f68f986517db0d1759de85881894fdc7db798bd2a9df9cb04b7fc" 1393 | dependencies = [ 1394 | "cfb", 1395 | ] 1396 | 1397 | [[package]] 1398 | name = "instant" 1399 | version = "0.1.12" 1400 | source = "registry+https://github.com/rust-lang/crates.io-index" 1401 | checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" 1402 | dependencies = [ 1403 | "cfg-if", 1404 | ] 1405 | 1406 | [[package]] 1407 | name = "ioctl-rs" 1408 | version = "0.1.6" 1409 | source = "registry+https://github.com/rust-lang/crates.io-index" 1410 | checksum = "f7970510895cee30b3e9128319f2cefd4bde883a39f38baa279567ba3a7eb97d" 1411 | dependencies = [ 1412 | "libc", 1413 | ] 1414 | 1415 | [[package]] 1416 | name = "ipnet" 1417 | version = "2.9.0" 1418 | source = "registry+https://github.com/rust-lang/crates.io-index" 1419 | checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" 1420 | 1421 | [[package]] 1422 | name = "itoa" 1423 | version = "0.4.8" 1424 | source = "registry+https://github.com/rust-lang/crates.io-index" 1425 | checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" 1426 | 1427 | [[package]] 1428 | name = "itoa" 1429 | version = "1.0.10" 1430 | source = "registry+https://github.com/rust-lang/crates.io-index" 1431 | checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" 1432 | 1433 | [[package]] 1434 | name = "javascriptcore-rs" 1435 | version = "0.16.0" 1436 | source = "registry+https://github.com/rust-lang/crates.io-index" 1437 | checksum = "bf053e7843f2812ff03ef5afe34bb9c06ffee120385caad4f6b9967fcd37d41c" 1438 | dependencies = [ 1439 | "bitflags 1.3.2", 1440 | "glib", 1441 | "javascriptcore-rs-sys", 1442 | ] 1443 | 1444 | [[package]] 1445 | name = "javascriptcore-rs-sys" 1446 | version = "0.4.0" 1447 | source = "registry+https://github.com/rust-lang/crates.io-index" 1448 | checksum = "905fbb87419c5cde6e3269537e4ea7d46431f3008c5d057e915ef3f115e7793c" 1449 | dependencies = [ 1450 | "glib-sys", 1451 | "gobject-sys", 1452 | "libc", 1453 | "system-deps 5.0.0", 1454 | ] 1455 | 1456 | [[package]] 1457 | name = "jni" 1458 | version = "0.20.0" 1459 | source = "registry+https://github.com/rust-lang/crates.io-index" 1460 | checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c" 1461 | dependencies = [ 1462 | "cesu8", 1463 | "combine", 1464 | "jni-sys", 1465 | "log", 1466 | "thiserror", 1467 | "walkdir", 1468 | ] 1469 | 1470 | [[package]] 1471 | name = "jni-sys" 1472 | version = "0.3.0" 1473 | source = "registry+https://github.com/rust-lang/crates.io-index" 1474 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" 1475 | 1476 | [[package]] 1477 | name = "js-sys" 1478 | version = "0.3.66" 1479 | source = "registry+https://github.com/rust-lang/crates.io-index" 1480 | checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca" 1481 | dependencies = [ 1482 | "wasm-bindgen", 1483 | ] 1484 | 1485 | [[package]] 1486 | name = "json-patch" 1487 | version = "1.2.0" 1488 | source = "registry+https://github.com/rust-lang/crates.io-index" 1489 | checksum = "55ff1e1486799e3f64129f8ccad108b38290df9cd7015cd31bed17239f0789d6" 1490 | dependencies = [ 1491 | "serde", 1492 | "serde_json", 1493 | "thiserror", 1494 | "treediff", 1495 | ] 1496 | 1497 | [[package]] 1498 | name = "kuchikiki" 1499 | version = "0.8.2" 1500 | source = "registry+https://github.com/rust-lang/crates.io-index" 1501 | checksum = "f29e4755b7b995046f510a7520c42b2fed58b77bd94d5a87a8eb43d2fd126da8" 1502 | dependencies = [ 1503 | "cssparser", 1504 | "html5ever", 1505 | "indexmap 1.9.3", 1506 | "matches", 1507 | "selectors", 1508 | ] 1509 | 1510 | [[package]] 1511 | name = "lazy_static" 1512 | version = "1.4.0" 1513 | source = "registry+https://github.com/rust-lang/crates.io-index" 1514 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 1515 | 1516 | [[package]] 1517 | name = "libc" 1518 | version = "0.2.152" 1519 | source = "registry+https://github.com/rust-lang/crates.io-index" 1520 | checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7" 1521 | 1522 | [[package]] 1523 | name = "libredox" 1524 | version = "0.0.1" 1525 | source = "registry+https://github.com/rust-lang/crates.io-index" 1526 | checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" 1527 | dependencies = [ 1528 | "bitflags 2.4.1", 1529 | "libc", 1530 | "redox_syscall", 1531 | ] 1532 | 1533 | [[package]] 1534 | name = "line-wrap" 1535 | version = "0.1.1" 1536 | source = "registry+https://github.com/rust-lang/crates.io-index" 1537 | checksum = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9" 1538 | dependencies = [ 1539 | "safemem", 1540 | ] 1541 | 1542 | [[package]] 1543 | name = "linux-raw-sys" 1544 | version = "0.4.12" 1545 | source = "registry+https://github.com/rust-lang/crates.io-index" 1546 | checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456" 1547 | 1548 | [[package]] 1549 | name = "lock_api" 1550 | version = "0.4.11" 1551 | source = "registry+https://github.com/rust-lang/crates.io-index" 1552 | checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" 1553 | dependencies = [ 1554 | "autocfg", 1555 | "scopeguard", 1556 | ] 1557 | 1558 | [[package]] 1559 | name = "log" 1560 | version = "0.4.20" 1561 | source = "registry+https://github.com/rust-lang/crates.io-index" 1562 | checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" 1563 | 1564 | [[package]] 1565 | name = "loom" 1566 | version = "0.5.6" 1567 | source = "registry+https://github.com/rust-lang/crates.io-index" 1568 | checksum = "ff50ecb28bb86013e935fb6683ab1f6d3a20016f123c76fd4c27470076ac30f5" 1569 | dependencies = [ 1570 | "cfg-if", 1571 | "generator", 1572 | "scoped-tls", 1573 | "serde", 1574 | "serde_json", 1575 | "tracing", 1576 | "tracing-subscriber", 1577 | ] 1578 | 1579 | [[package]] 1580 | name = "mac" 1581 | version = "0.1.1" 1582 | source = "registry+https://github.com/rust-lang/crates.io-index" 1583 | checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" 1584 | 1585 | [[package]] 1586 | name = "malloc_buf" 1587 | version = "0.0.6" 1588 | source = "registry+https://github.com/rust-lang/crates.io-index" 1589 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" 1590 | dependencies = [ 1591 | "libc", 1592 | ] 1593 | 1594 | [[package]] 1595 | name = "markup5ever" 1596 | version = "0.11.0" 1597 | source = "registry+https://github.com/rust-lang/crates.io-index" 1598 | checksum = "7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016" 1599 | dependencies = [ 1600 | "log", 1601 | "phf 0.10.1", 1602 | "phf_codegen 0.10.0", 1603 | "string_cache", 1604 | "string_cache_codegen", 1605 | "tendril", 1606 | ] 1607 | 1608 | [[package]] 1609 | name = "matchers" 1610 | version = "0.1.0" 1611 | source = "registry+https://github.com/rust-lang/crates.io-index" 1612 | checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" 1613 | dependencies = [ 1614 | "regex-automata 0.1.10", 1615 | ] 1616 | 1617 | [[package]] 1618 | name = "matches" 1619 | version = "0.1.10" 1620 | source = "registry+https://github.com/rust-lang/crates.io-index" 1621 | checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" 1622 | 1623 | [[package]] 1624 | name = "memchr" 1625 | version = "2.7.1" 1626 | source = "registry+https://github.com/rust-lang/crates.io-index" 1627 | checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" 1628 | 1629 | [[package]] 1630 | name = "memoffset" 1631 | version = "0.6.5" 1632 | source = "registry+https://github.com/rust-lang/crates.io-index" 1633 | checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" 1634 | dependencies = [ 1635 | "autocfg", 1636 | ] 1637 | 1638 | [[package]] 1639 | name = "memoffset" 1640 | version = "0.9.0" 1641 | source = "registry+https://github.com/rust-lang/crates.io-index" 1642 | checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c" 1643 | dependencies = [ 1644 | "autocfg", 1645 | ] 1646 | 1647 | [[package]] 1648 | name = "mime" 1649 | version = "0.3.17" 1650 | source = "registry+https://github.com/rust-lang/crates.io-index" 1651 | checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" 1652 | 1653 | [[package]] 1654 | name = "minisign-verify" 1655 | version = "0.2.1" 1656 | source = "registry+https://github.com/rust-lang/crates.io-index" 1657 | checksum = "933dca44d65cdd53b355d0b73d380a2ff5da71f87f036053188bf1eab6a19881" 1658 | 1659 | [[package]] 1660 | name = "miniz_oxide" 1661 | version = "0.7.1" 1662 | source = "registry+https://github.com/rust-lang/crates.io-index" 1663 | checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" 1664 | dependencies = [ 1665 | "adler", 1666 | "simd-adler32", 1667 | ] 1668 | 1669 | [[package]] 1670 | name = "mio" 1671 | version = "0.8.10" 1672 | source = "registry+https://github.com/rust-lang/crates.io-index" 1673 | checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" 1674 | dependencies = [ 1675 | "libc", 1676 | "wasi 0.11.0+wasi-snapshot-preview1", 1677 | "windows-sys 0.48.0", 1678 | ] 1679 | 1680 | [[package]] 1681 | name = "native-tls" 1682 | version = "0.2.11" 1683 | source = "registry+https://github.com/rust-lang/crates.io-index" 1684 | checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" 1685 | dependencies = [ 1686 | "lazy_static", 1687 | "libc", 1688 | "log", 1689 | "openssl", 1690 | "openssl-probe", 1691 | "openssl-sys", 1692 | "schannel", 1693 | "security-framework", 1694 | "security-framework-sys", 1695 | "tempfile", 1696 | ] 1697 | 1698 | [[package]] 1699 | name = "ndk" 1700 | version = "0.6.0" 1701 | source = "registry+https://github.com/rust-lang/crates.io-index" 1702 | checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4" 1703 | dependencies = [ 1704 | "bitflags 1.3.2", 1705 | "jni-sys", 1706 | "ndk-sys", 1707 | "num_enum", 1708 | "thiserror", 1709 | ] 1710 | 1711 | [[package]] 1712 | name = "ndk-context" 1713 | version = "0.1.1" 1714 | source = "registry+https://github.com/rust-lang/crates.io-index" 1715 | checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" 1716 | 1717 | [[package]] 1718 | name = "ndk-sys" 1719 | version = "0.3.0" 1720 | source = "registry+https://github.com/rust-lang/crates.io-index" 1721 | checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97" 1722 | dependencies = [ 1723 | "jni-sys", 1724 | ] 1725 | 1726 | [[package]] 1727 | name = "new_debug_unreachable" 1728 | version = "1.0.4" 1729 | source = "registry+https://github.com/rust-lang/crates.io-index" 1730 | checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" 1731 | 1732 | [[package]] 1733 | name = "nix" 1734 | version = "0.25.1" 1735 | source = "registry+https://github.com/rust-lang/crates.io-index" 1736 | checksum = "f346ff70e7dbfd675fe90590b92d59ef2de15a8779ae305ebcbfd3f0caf59be4" 1737 | dependencies = [ 1738 | "autocfg", 1739 | "bitflags 1.3.2", 1740 | "cfg-if", 1741 | "libc", 1742 | "memoffset 0.6.5", 1743 | "pin-utils", 1744 | ] 1745 | 1746 | [[package]] 1747 | name = "nodrop" 1748 | version = "0.1.14" 1749 | source = "registry+https://github.com/rust-lang/crates.io-index" 1750 | checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" 1751 | 1752 | [[package]] 1753 | name = "nu-ansi-term" 1754 | version = "0.46.0" 1755 | source = "registry+https://github.com/rust-lang/crates.io-index" 1756 | checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" 1757 | dependencies = [ 1758 | "overload", 1759 | "winapi", 1760 | ] 1761 | 1762 | [[package]] 1763 | name = "num-integer" 1764 | version = "0.1.45" 1765 | source = "registry+https://github.com/rust-lang/crates.io-index" 1766 | checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" 1767 | dependencies = [ 1768 | "autocfg", 1769 | "num-traits", 1770 | ] 1771 | 1772 | [[package]] 1773 | name = "num-rational" 1774 | version = "0.4.1" 1775 | source = "registry+https://github.com/rust-lang/crates.io-index" 1776 | checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" 1777 | dependencies = [ 1778 | "autocfg", 1779 | "num-integer", 1780 | "num-traits", 1781 | ] 1782 | 1783 | [[package]] 1784 | name = "num-traits" 1785 | version = "0.2.17" 1786 | source = "registry+https://github.com/rust-lang/crates.io-index" 1787 | checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" 1788 | dependencies = [ 1789 | "autocfg", 1790 | ] 1791 | 1792 | [[package]] 1793 | name = "num_cpus" 1794 | version = "1.16.0" 1795 | source = "registry+https://github.com/rust-lang/crates.io-index" 1796 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" 1797 | dependencies = [ 1798 | "hermit-abi", 1799 | "libc", 1800 | ] 1801 | 1802 | [[package]] 1803 | name = "num_enum" 1804 | version = "0.5.11" 1805 | source = "registry+https://github.com/rust-lang/crates.io-index" 1806 | checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" 1807 | dependencies = [ 1808 | "num_enum_derive", 1809 | ] 1810 | 1811 | [[package]] 1812 | name = "num_enum_derive" 1813 | version = "0.5.11" 1814 | source = "registry+https://github.com/rust-lang/crates.io-index" 1815 | checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" 1816 | dependencies = [ 1817 | "proc-macro-crate", 1818 | "proc-macro2", 1819 | "quote", 1820 | "syn 1.0.109", 1821 | ] 1822 | 1823 | [[package]] 1824 | name = "objc" 1825 | version = "0.2.7" 1826 | source = "registry+https://github.com/rust-lang/crates.io-index" 1827 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" 1828 | dependencies = [ 1829 | "malloc_buf", 1830 | "objc_exception", 1831 | ] 1832 | 1833 | [[package]] 1834 | name = "objc-foundation" 1835 | version = "0.1.1" 1836 | source = "registry+https://github.com/rust-lang/crates.io-index" 1837 | checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" 1838 | dependencies = [ 1839 | "block", 1840 | "objc", 1841 | "objc_id", 1842 | ] 1843 | 1844 | [[package]] 1845 | name = "objc_exception" 1846 | version = "0.1.2" 1847 | source = "registry+https://github.com/rust-lang/crates.io-index" 1848 | checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" 1849 | dependencies = [ 1850 | "cc", 1851 | ] 1852 | 1853 | [[package]] 1854 | name = "objc_id" 1855 | version = "0.1.1" 1856 | source = "registry+https://github.com/rust-lang/crates.io-index" 1857 | checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" 1858 | dependencies = [ 1859 | "objc", 1860 | ] 1861 | 1862 | [[package]] 1863 | name = "object" 1864 | version = "0.32.2" 1865 | source = "registry+https://github.com/rust-lang/crates.io-index" 1866 | checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" 1867 | dependencies = [ 1868 | "memchr", 1869 | ] 1870 | 1871 | [[package]] 1872 | name = "once_cell" 1873 | version = "1.19.0" 1874 | source = "registry+https://github.com/rust-lang/crates.io-index" 1875 | checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" 1876 | 1877 | [[package]] 1878 | name = "open" 1879 | version = "3.2.0" 1880 | source = "registry+https://github.com/rust-lang/crates.io-index" 1881 | checksum = "2078c0039e6a54a0c42c28faa984e115fb4c2d5bf2208f77d1961002df8576f8" 1882 | dependencies = [ 1883 | "pathdiff", 1884 | "windows-sys 0.42.0", 1885 | ] 1886 | 1887 | [[package]] 1888 | name = "openssl" 1889 | version = "0.10.62" 1890 | source = "registry+https://github.com/rust-lang/crates.io-index" 1891 | checksum = "8cde4d2d9200ad5909f8dac647e29482e07c3a35de8a13fce7c9c7747ad9f671" 1892 | dependencies = [ 1893 | "bitflags 2.4.1", 1894 | "cfg-if", 1895 | "foreign-types", 1896 | "libc", 1897 | "once_cell", 1898 | "openssl-macros", 1899 | "openssl-sys", 1900 | ] 1901 | 1902 | [[package]] 1903 | name = "openssl-macros" 1904 | version = "0.1.1" 1905 | source = "registry+https://github.com/rust-lang/crates.io-index" 1906 | checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 1907 | dependencies = [ 1908 | "proc-macro2", 1909 | "quote", 1910 | "syn 2.0.48", 1911 | ] 1912 | 1913 | [[package]] 1914 | name = "openssl-probe" 1915 | version = "0.1.5" 1916 | source = "registry+https://github.com/rust-lang/crates.io-index" 1917 | checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" 1918 | 1919 | [[package]] 1920 | name = "openssl-sys" 1921 | version = "0.9.98" 1922 | source = "registry+https://github.com/rust-lang/crates.io-index" 1923 | checksum = "c1665caf8ab2dc9aef43d1c0023bd904633a6a05cb30b0ad59bec2ae986e57a7" 1924 | dependencies = [ 1925 | "cc", 1926 | "libc", 1927 | "pkg-config", 1928 | "vcpkg", 1929 | ] 1930 | 1931 | [[package]] 1932 | name = "os_pipe" 1933 | version = "1.1.5" 1934 | source = "registry+https://github.com/rust-lang/crates.io-index" 1935 | checksum = "57119c3b893986491ec9aa85056780d3a0f3cf4da7cc09dd3650dbd6c6738fb9" 1936 | dependencies = [ 1937 | "libc", 1938 | "windows-sys 0.52.0", 1939 | ] 1940 | 1941 | [[package]] 1942 | name = "overload" 1943 | version = "0.1.1" 1944 | source = "registry+https://github.com/rust-lang/crates.io-index" 1945 | checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" 1946 | 1947 | [[package]] 1948 | name = "pango" 1949 | version = "0.15.10" 1950 | source = "registry+https://github.com/rust-lang/crates.io-index" 1951 | checksum = "22e4045548659aee5313bde6c582b0d83a627b7904dd20dc2d9ef0895d414e4f" 1952 | dependencies = [ 1953 | "bitflags 1.3.2", 1954 | "glib", 1955 | "libc", 1956 | "once_cell", 1957 | "pango-sys", 1958 | ] 1959 | 1960 | [[package]] 1961 | name = "pango-sys" 1962 | version = "0.15.10" 1963 | source = "registry+https://github.com/rust-lang/crates.io-index" 1964 | checksum = "d2a00081cde4661982ed91d80ef437c20eacaf6aa1a5962c0279ae194662c3aa" 1965 | dependencies = [ 1966 | "glib-sys", 1967 | "gobject-sys", 1968 | "libc", 1969 | "system-deps 6.2.0", 1970 | ] 1971 | 1972 | [[package]] 1973 | name = "parking_lot" 1974 | version = "0.12.1" 1975 | source = "registry+https://github.com/rust-lang/crates.io-index" 1976 | checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" 1977 | dependencies = [ 1978 | "lock_api", 1979 | "parking_lot_core", 1980 | ] 1981 | 1982 | [[package]] 1983 | name = "parking_lot_core" 1984 | version = "0.9.9" 1985 | source = "registry+https://github.com/rust-lang/crates.io-index" 1986 | checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" 1987 | dependencies = [ 1988 | "cfg-if", 1989 | "libc", 1990 | "redox_syscall", 1991 | "smallvec", 1992 | "windows-targets 0.48.5", 1993 | ] 1994 | 1995 | [[package]] 1996 | name = "pathdiff" 1997 | version = "0.2.1" 1998 | source = "registry+https://github.com/rust-lang/crates.io-index" 1999 | checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" 2000 | 2001 | [[package]] 2002 | name = "percent-encoding" 2003 | version = "2.3.1" 2004 | source = "registry+https://github.com/rust-lang/crates.io-index" 2005 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" 2006 | 2007 | [[package]] 2008 | name = "phf" 2009 | version = "0.8.0" 2010 | source = "registry+https://github.com/rust-lang/crates.io-index" 2011 | checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12" 2012 | dependencies = [ 2013 | "phf_macros 0.8.0", 2014 | "phf_shared 0.8.0", 2015 | "proc-macro-hack", 2016 | ] 2017 | 2018 | [[package]] 2019 | name = "phf" 2020 | version = "0.10.1" 2021 | source = "registry+https://github.com/rust-lang/crates.io-index" 2022 | checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" 2023 | dependencies = [ 2024 | "phf_shared 0.10.0", 2025 | ] 2026 | 2027 | [[package]] 2028 | name = "phf" 2029 | version = "0.11.2" 2030 | source = "registry+https://github.com/rust-lang/crates.io-index" 2031 | checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" 2032 | dependencies = [ 2033 | "phf_macros 0.11.2", 2034 | "phf_shared 0.11.2", 2035 | ] 2036 | 2037 | [[package]] 2038 | name = "phf_codegen" 2039 | version = "0.8.0" 2040 | source = "registry+https://github.com/rust-lang/crates.io-index" 2041 | checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815" 2042 | dependencies = [ 2043 | "phf_generator 0.8.0", 2044 | "phf_shared 0.8.0", 2045 | ] 2046 | 2047 | [[package]] 2048 | name = "phf_codegen" 2049 | version = "0.10.0" 2050 | source = "registry+https://github.com/rust-lang/crates.io-index" 2051 | checksum = "4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd" 2052 | dependencies = [ 2053 | "phf_generator 0.10.0", 2054 | "phf_shared 0.10.0", 2055 | ] 2056 | 2057 | [[package]] 2058 | name = "phf_generator" 2059 | version = "0.8.0" 2060 | source = "registry+https://github.com/rust-lang/crates.io-index" 2061 | checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526" 2062 | dependencies = [ 2063 | "phf_shared 0.8.0", 2064 | "rand 0.7.3", 2065 | ] 2066 | 2067 | [[package]] 2068 | name = "phf_generator" 2069 | version = "0.10.0" 2070 | source = "registry+https://github.com/rust-lang/crates.io-index" 2071 | checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" 2072 | dependencies = [ 2073 | "phf_shared 0.10.0", 2074 | "rand 0.8.5", 2075 | ] 2076 | 2077 | [[package]] 2078 | name = "phf_generator" 2079 | version = "0.11.2" 2080 | source = "registry+https://github.com/rust-lang/crates.io-index" 2081 | checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" 2082 | dependencies = [ 2083 | "phf_shared 0.11.2", 2084 | "rand 0.8.5", 2085 | ] 2086 | 2087 | [[package]] 2088 | name = "phf_macros" 2089 | version = "0.8.0" 2090 | source = "registry+https://github.com/rust-lang/crates.io-index" 2091 | checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c" 2092 | dependencies = [ 2093 | "phf_generator 0.8.0", 2094 | "phf_shared 0.8.0", 2095 | "proc-macro-hack", 2096 | "proc-macro2", 2097 | "quote", 2098 | "syn 1.0.109", 2099 | ] 2100 | 2101 | [[package]] 2102 | name = "phf_macros" 2103 | version = "0.11.2" 2104 | source = "registry+https://github.com/rust-lang/crates.io-index" 2105 | checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" 2106 | dependencies = [ 2107 | "phf_generator 0.11.2", 2108 | "phf_shared 0.11.2", 2109 | "proc-macro2", 2110 | "quote", 2111 | "syn 2.0.48", 2112 | ] 2113 | 2114 | [[package]] 2115 | name = "phf_shared" 2116 | version = "0.8.0" 2117 | source = "registry+https://github.com/rust-lang/crates.io-index" 2118 | checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7" 2119 | dependencies = [ 2120 | "siphasher", 2121 | ] 2122 | 2123 | [[package]] 2124 | name = "phf_shared" 2125 | version = "0.10.0" 2126 | source = "registry+https://github.com/rust-lang/crates.io-index" 2127 | checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" 2128 | dependencies = [ 2129 | "siphasher", 2130 | ] 2131 | 2132 | [[package]] 2133 | name = "phf_shared" 2134 | version = "0.11.2" 2135 | source = "registry+https://github.com/rust-lang/crates.io-index" 2136 | checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" 2137 | dependencies = [ 2138 | "siphasher", 2139 | ] 2140 | 2141 | [[package]] 2142 | name = "pin-project-lite" 2143 | version = "0.2.13" 2144 | source = "registry+https://github.com/rust-lang/crates.io-index" 2145 | checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" 2146 | 2147 | [[package]] 2148 | name = "pin-utils" 2149 | version = "0.1.0" 2150 | source = "registry+https://github.com/rust-lang/crates.io-index" 2151 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 2152 | 2153 | [[package]] 2154 | name = "pkg-config" 2155 | version = "0.3.28" 2156 | source = "registry+https://github.com/rust-lang/crates.io-index" 2157 | checksum = "69d3587f8a9e599cc7ec2c00e331f71c4e69a5f9a4b8a6efd5b07466b9736f9a" 2158 | 2159 | [[package]] 2160 | name = "plist" 2161 | version = "1.6.0" 2162 | source = "registry+https://github.com/rust-lang/crates.io-index" 2163 | checksum = "e5699cc8a63d1aa2b1ee8e12b9ad70ac790d65788cd36101fa37f87ea46c4cef" 2164 | dependencies = [ 2165 | "base64 0.21.5", 2166 | "indexmap 2.1.0", 2167 | "line-wrap", 2168 | "quick-xml", 2169 | "serde", 2170 | "time", 2171 | ] 2172 | 2173 | [[package]] 2174 | name = "png" 2175 | version = "0.17.10" 2176 | source = "registry+https://github.com/rust-lang/crates.io-index" 2177 | checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64" 2178 | dependencies = [ 2179 | "bitflags 1.3.2", 2180 | "crc32fast", 2181 | "fdeflate", 2182 | "flate2", 2183 | "miniz_oxide", 2184 | ] 2185 | 2186 | [[package]] 2187 | name = "portable-pty" 2188 | version = "0.8.1" 2189 | source = "registry+https://github.com/rust-lang/crates.io-index" 2190 | checksum = "806ee80c2a03dbe1a9fb9534f8d19e4c0546b790cde8fd1fea9d6390644cb0be" 2191 | dependencies = [ 2192 | "anyhow", 2193 | "bitflags 1.3.2", 2194 | "downcast-rs", 2195 | "filedescriptor", 2196 | "lazy_static", 2197 | "libc", 2198 | "log", 2199 | "nix", 2200 | "serde", 2201 | "serde_derive", 2202 | "serial", 2203 | "shared_library", 2204 | "shell-words", 2205 | "winapi", 2206 | "winreg 0.10.1", 2207 | ] 2208 | 2209 | [[package]] 2210 | name = "powerfmt" 2211 | version = "0.2.0" 2212 | source = "registry+https://github.com/rust-lang/crates.io-index" 2213 | checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" 2214 | 2215 | [[package]] 2216 | name = "ppv-lite86" 2217 | version = "0.2.17" 2218 | source = "registry+https://github.com/rust-lang/crates.io-index" 2219 | checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" 2220 | 2221 | [[package]] 2222 | name = "precomputed-hash" 2223 | version = "0.1.1" 2224 | source = "registry+https://github.com/rust-lang/crates.io-index" 2225 | checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" 2226 | 2227 | [[package]] 2228 | name = "proc-macro-crate" 2229 | version = "1.3.1" 2230 | source = "registry+https://github.com/rust-lang/crates.io-index" 2231 | checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" 2232 | dependencies = [ 2233 | "once_cell", 2234 | "toml_edit 0.19.15", 2235 | ] 2236 | 2237 | [[package]] 2238 | name = "proc-macro-error" 2239 | version = "1.0.4" 2240 | source = "registry+https://github.com/rust-lang/crates.io-index" 2241 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 2242 | dependencies = [ 2243 | "proc-macro-error-attr", 2244 | "proc-macro2", 2245 | "quote", 2246 | "syn 1.0.109", 2247 | "version_check", 2248 | ] 2249 | 2250 | [[package]] 2251 | name = "proc-macro-error-attr" 2252 | version = "1.0.4" 2253 | source = "registry+https://github.com/rust-lang/crates.io-index" 2254 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 2255 | dependencies = [ 2256 | "proc-macro2", 2257 | "quote", 2258 | "version_check", 2259 | ] 2260 | 2261 | [[package]] 2262 | name = "proc-macro-hack" 2263 | version = "0.5.20+deprecated" 2264 | source = "registry+https://github.com/rust-lang/crates.io-index" 2265 | checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" 2266 | 2267 | [[package]] 2268 | name = "proc-macro2" 2269 | version = "1.0.76" 2270 | source = "registry+https://github.com/rust-lang/crates.io-index" 2271 | checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" 2272 | dependencies = [ 2273 | "unicode-ident", 2274 | ] 2275 | 2276 | [[package]] 2277 | name = "quick-xml" 2278 | version = "0.31.0" 2279 | source = "registry+https://github.com/rust-lang/crates.io-index" 2280 | checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33" 2281 | dependencies = [ 2282 | "memchr", 2283 | ] 2284 | 2285 | [[package]] 2286 | name = "quote" 2287 | version = "1.0.35" 2288 | source = "registry+https://github.com/rust-lang/crates.io-index" 2289 | checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" 2290 | dependencies = [ 2291 | "proc-macro2", 2292 | ] 2293 | 2294 | [[package]] 2295 | name = "rand" 2296 | version = "0.7.3" 2297 | source = "registry+https://github.com/rust-lang/crates.io-index" 2298 | checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" 2299 | dependencies = [ 2300 | "getrandom 0.1.16", 2301 | "libc", 2302 | "rand_chacha 0.2.2", 2303 | "rand_core 0.5.1", 2304 | "rand_hc", 2305 | "rand_pcg", 2306 | ] 2307 | 2308 | [[package]] 2309 | name = "rand" 2310 | version = "0.8.5" 2311 | source = "registry+https://github.com/rust-lang/crates.io-index" 2312 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 2313 | dependencies = [ 2314 | "libc", 2315 | "rand_chacha 0.3.1", 2316 | "rand_core 0.6.4", 2317 | ] 2318 | 2319 | [[package]] 2320 | name = "rand_chacha" 2321 | version = "0.2.2" 2322 | source = "registry+https://github.com/rust-lang/crates.io-index" 2323 | checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" 2324 | dependencies = [ 2325 | "ppv-lite86", 2326 | "rand_core 0.5.1", 2327 | ] 2328 | 2329 | [[package]] 2330 | name = "rand_chacha" 2331 | version = "0.3.1" 2332 | source = "registry+https://github.com/rust-lang/crates.io-index" 2333 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 2334 | dependencies = [ 2335 | "ppv-lite86", 2336 | "rand_core 0.6.4", 2337 | ] 2338 | 2339 | [[package]] 2340 | name = "rand_core" 2341 | version = "0.5.1" 2342 | source = "registry+https://github.com/rust-lang/crates.io-index" 2343 | checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" 2344 | dependencies = [ 2345 | "getrandom 0.1.16", 2346 | ] 2347 | 2348 | [[package]] 2349 | name = "rand_core" 2350 | version = "0.6.4" 2351 | source = "registry+https://github.com/rust-lang/crates.io-index" 2352 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 2353 | dependencies = [ 2354 | "getrandom 0.2.11", 2355 | ] 2356 | 2357 | [[package]] 2358 | name = "rand_hc" 2359 | version = "0.2.0" 2360 | source = "registry+https://github.com/rust-lang/crates.io-index" 2361 | checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" 2362 | dependencies = [ 2363 | "rand_core 0.5.1", 2364 | ] 2365 | 2366 | [[package]] 2367 | name = "rand_pcg" 2368 | version = "0.2.1" 2369 | source = "registry+https://github.com/rust-lang/crates.io-index" 2370 | checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429" 2371 | dependencies = [ 2372 | "rand_core 0.5.1", 2373 | ] 2374 | 2375 | [[package]] 2376 | name = "raw-window-handle" 2377 | version = "0.5.2" 2378 | source = "registry+https://github.com/rust-lang/crates.io-index" 2379 | checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9" 2380 | 2381 | [[package]] 2382 | name = "redox_syscall" 2383 | version = "0.4.1" 2384 | source = "registry+https://github.com/rust-lang/crates.io-index" 2385 | checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" 2386 | dependencies = [ 2387 | "bitflags 1.3.2", 2388 | ] 2389 | 2390 | [[package]] 2391 | name = "redox_users" 2392 | version = "0.4.4" 2393 | source = "registry+https://github.com/rust-lang/crates.io-index" 2394 | checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" 2395 | dependencies = [ 2396 | "getrandom 0.2.11", 2397 | "libredox", 2398 | "thiserror", 2399 | ] 2400 | 2401 | [[package]] 2402 | name = "regex" 2403 | version = "1.10.2" 2404 | source = "registry+https://github.com/rust-lang/crates.io-index" 2405 | checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" 2406 | dependencies = [ 2407 | "aho-corasick", 2408 | "memchr", 2409 | "regex-automata 0.4.3", 2410 | "regex-syntax 0.8.2", 2411 | ] 2412 | 2413 | [[package]] 2414 | name = "regex-automata" 2415 | version = "0.1.10" 2416 | source = "registry+https://github.com/rust-lang/crates.io-index" 2417 | checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" 2418 | dependencies = [ 2419 | "regex-syntax 0.6.29", 2420 | ] 2421 | 2422 | [[package]] 2423 | name = "regex-automata" 2424 | version = "0.4.3" 2425 | source = "registry+https://github.com/rust-lang/crates.io-index" 2426 | checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" 2427 | dependencies = [ 2428 | "aho-corasick", 2429 | "memchr", 2430 | "regex-syntax 0.8.2", 2431 | ] 2432 | 2433 | [[package]] 2434 | name = "regex-syntax" 2435 | version = "0.6.29" 2436 | source = "registry+https://github.com/rust-lang/crates.io-index" 2437 | checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" 2438 | 2439 | [[package]] 2440 | name = "regex-syntax" 2441 | version = "0.8.2" 2442 | source = "registry+https://github.com/rust-lang/crates.io-index" 2443 | checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" 2444 | 2445 | [[package]] 2446 | name = "reqwest" 2447 | version = "0.11.23" 2448 | source = "registry+https://github.com/rust-lang/crates.io-index" 2449 | checksum = "37b1ae8d9ac08420c66222fb9096fc5de435c3c48542bc5336c51892cffafb41" 2450 | dependencies = [ 2451 | "base64 0.21.5", 2452 | "bytes", 2453 | "encoding_rs", 2454 | "futures-core", 2455 | "futures-util", 2456 | "h2", 2457 | "http", 2458 | "http-body", 2459 | "hyper", 2460 | "hyper-tls", 2461 | "ipnet", 2462 | "js-sys", 2463 | "log", 2464 | "mime", 2465 | "native-tls", 2466 | "once_cell", 2467 | "percent-encoding", 2468 | "pin-project-lite", 2469 | "serde", 2470 | "serde_json", 2471 | "serde_urlencoded", 2472 | "system-configuration", 2473 | "tokio", 2474 | "tokio-native-tls", 2475 | "tokio-util", 2476 | "tower-service", 2477 | "url", 2478 | "wasm-bindgen", 2479 | "wasm-bindgen-futures", 2480 | "wasm-streams", 2481 | "web-sys", 2482 | "winreg 0.50.0", 2483 | ] 2484 | 2485 | [[package]] 2486 | name = "rfd" 2487 | version = "0.10.0" 2488 | source = "registry+https://github.com/rust-lang/crates.io-index" 2489 | checksum = "0149778bd99b6959285b0933288206090c50e2327f47a9c463bfdbf45c8823ea" 2490 | dependencies = [ 2491 | "block", 2492 | "dispatch", 2493 | "glib-sys", 2494 | "gobject-sys", 2495 | "gtk-sys", 2496 | "js-sys", 2497 | "lazy_static", 2498 | "log", 2499 | "objc", 2500 | "objc-foundation", 2501 | "objc_id", 2502 | "raw-window-handle", 2503 | "wasm-bindgen", 2504 | "wasm-bindgen-futures", 2505 | "web-sys", 2506 | "windows 0.37.0", 2507 | ] 2508 | 2509 | [[package]] 2510 | name = "rustc-demangle" 2511 | version = "0.1.23" 2512 | source = "registry+https://github.com/rust-lang/crates.io-index" 2513 | checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" 2514 | 2515 | [[package]] 2516 | name = "rustc_version" 2517 | version = "0.4.0" 2518 | source = "registry+https://github.com/rust-lang/crates.io-index" 2519 | checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" 2520 | dependencies = [ 2521 | "semver", 2522 | ] 2523 | 2524 | [[package]] 2525 | name = "rustix" 2526 | version = "0.38.28" 2527 | source = "registry+https://github.com/rust-lang/crates.io-index" 2528 | checksum = "72e572a5e8ca657d7366229cdde4bd14c4eb5499a9573d4d366fe1b599daa316" 2529 | dependencies = [ 2530 | "bitflags 2.4.1", 2531 | "errno", 2532 | "libc", 2533 | "linux-raw-sys", 2534 | "windows-sys 0.52.0", 2535 | ] 2536 | 2537 | [[package]] 2538 | name = "rustversion" 2539 | version = "1.0.14" 2540 | source = "registry+https://github.com/rust-lang/crates.io-index" 2541 | checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" 2542 | 2543 | [[package]] 2544 | name = "ryu" 2545 | version = "1.0.16" 2546 | source = "registry+https://github.com/rust-lang/crates.io-index" 2547 | checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" 2548 | 2549 | [[package]] 2550 | name = "safemem" 2551 | version = "0.3.3" 2552 | source = "registry+https://github.com/rust-lang/crates.io-index" 2553 | checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" 2554 | 2555 | [[package]] 2556 | name = "same-file" 2557 | version = "1.0.6" 2558 | source = "registry+https://github.com/rust-lang/crates.io-index" 2559 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 2560 | dependencies = [ 2561 | "winapi-util", 2562 | ] 2563 | 2564 | [[package]] 2565 | name = "schannel" 2566 | version = "0.1.23" 2567 | source = "registry+https://github.com/rust-lang/crates.io-index" 2568 | checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" 2569 | dependencies = [ 2570 | "windows-sys 0.52.0", 2571 | ] 2572 | 2573 | [[package]] 2574 | name = "scoped-tls" 2575 | version = "1.0.1" 2576 | source = "registry+https://github.com/rust-lang/crates.io-index" 2577 | checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" 2578 | 2579 | [[package]] 2580 | name = "scopeguard" 2581 | version = "1.2.0" 2582 | source = "registry+https://github.com/rust-lang/crates.io-index" 2583 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2584 | 2585 | [[package]] 2586 | name = "security-framework" 2587 | version = "2.9.2" 2588 | source = "registry+https://github.com/rust-lang/crates.io-index" 2589 | checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" 2590 | dependencies = [ 2591 | "bitflags 1.3.2", 2592 | "core-foundation", 2593 | "core-foundation-sys", 2594 | "libc", 2595 | "security-framework-sys", 2596 | ] 2597 | 2598 | [[package]] 2599 | name = "security-framework-sys" 2600 | version = "2.9.1" 2601 | source = "registry+https://github.com/rust-lang/crates.io-index" 2602 | checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" 2603 | dependencies = [ 2604 | "core-foundation-sys", 2605 | "libc", 2606 | ] 2607 | 2608 | [[package]] 2609 | name = "selectors" 2610 | version = "0.22.0" 2611 | source = "registry+https://github.com/rust-lang/crates.io-index" 2612 | checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe" 2613 | dependencies = [ 2614 | "bitflags 1.3.2", 2615 | "cssparser", 2616 | "derive_more", 2617 | "fxhash", 2618 | "log", 2619 | "matches", 2620 | "phf 0.8.0", 2621 | "phf_codegen 0.8.0", 2622 | "precomputed-hash", 2623 | "servo_arc", 2624 | "smallvec", 2625 | "thin-slice", 2626 | ] 2627 | 2628 | [[package]] 2629 | name = "semver" 2630 | version = "1.0.21" 2631 | source = "registry+https://github.com/rust-lang/crates.io-index" 2632 | checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" 2633 | dependencies = [ 2634 | "serde", 2635 | ] 2636 | 2637 | [[package]] 2638 | name = "serde" 2639 | version = "1.0.195" 2640 | source = "registry+https://github.com/rust-lang/crates.io-index" 2641 | checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" 2642 | dependencies = [ 2643 | "serde_derive", 2644 | ] 2645 | 2646 | [[package]] 2647 | name = "serde_derive" 2648 | version = "1.0.195" 2649 | source = "registry+https://github.com/rust-lang/crates.io-index" 2650 | checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" 2651 | dependencies = [ 2652 | "proc-macro2", 2653 | "quote", 2654 | "syn 2.0.48", 2655 | ] 2656 | 2657 | [[package]] 2658 | name = "serde_json" 2659 | version = "1.0.111" 2660 | source = "registry+https://github.com/rust-lang/crates.io-index" 2661 | checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4" 2662 | dependencies = [ 2663 | "itoa 1.0.10", 2664 | "ryu", 2665 | "serde", 2666 | ] 2667 | 2668 | [[package]] 2669 | name = "serde_repr" 2670 | version = "0.1.18" 2671 | source = "registry+https://github.com/rust-lang/crates.io-index" 2672 | checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" 2673 | dependencies = [ 2674 | "proc-macro2", 2675 | "quote", 2676 | "syn 2.0.48", 2677 | ] 2678 | 2679 | [[package]] 2680 | name = "serde_spanned" 2681 | version = "0.6.5" 2682 | source = "registry+https://github.com/rust-lang/crates.io-index" 2683 | checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" 2684 | dependencies = [ 2685 | "serde", 2686 | ] 2687 | 2688 | [[package]] 2689 | name = "serde_urlencoded" 2690 | version = "0.7.1" 2691 | source = "registry+https://github.com/rust-lang/crates.io-index" 2692 | checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" 2693 | dependencies = [ 2694 | "form_urlencoded", 2695 | "itoa 1.0.10", 2696 | "ryu", 2697 | "serde", 2698 | ] 2699 | 2700 | [[package]] 2701 | name = "serde_with" 2702 | version = "3.4.0" 2703 | source = "registry+https://github.com/rust-lang/crates.io-index" 2704 | checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23" 2705 | dependencies = [ 2706 | "base64 0.21.5", 2707 | "chrono", 2708 | "hex", 2709 | "indexmap 1.9.3", 2710 | "indexmap 2.1.0", 2711 | "serde", 2712 | "serde_json", 2713 | "serde_with_macros", 2714 | "time", 2715 | ] 2716 | 2717 | [[package]] 2718 | name = "serde_with_macros" 2719 | version = "3.4.0" 2720 | source = "registry+https://github.com/rust-lang/crates.io-index" 2721 | checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788" 2722 | dependencies = [ 2723 | "darling", 2724 | "proc-macro2", 2725 | "quote", 2726 | "syn 2.0.48", 2727 | ] 2728 | 2729 | [[package]] 2730 | name = "serial" 2731 | version = "0.4.0" 2732 | source = "registry+https://github.com/rust-lang/crates.io-index" 2733 | checksum = "a1237a96570fc377c13baa1b88c7589ab66edced652e43ffb17088f003db3e86" 2734 | dependencies = [ 2735 | "serial-core", 2736 | "serial-unix", 2737 | "serial-windows", 2738 | ] 2739 | 2740 | [[package]] 2741 | name = "serial-core" 2742 | version = "0.4.0" 2743 | source = "registry+https://github.com/rust-lang/crates.io-index" 2744 | checksum = "3f46209b345401737ae2125fe5b19a77acce90cd53e1658cda928e4fe9a64581" 2745 | dependencies = [ 2746 | "libc", 2747 | ] 2748 | 2749 | [[package]] 2750 | name = "serial-unix" 2751 | version = "0.4.0" 2752 | source = "registry+https://github.com/rust-lang/crates.io-index" 2753 | checksum = "f03fbca4c9d866e24a459cbca71283f545a37f8e3e002ad8c70593871453cab7" 2754 | dependencies = [ 2755 | "ioctl-rs", 2756 | "libc", 2757 | "serial-core", 2758 | "termios", 2759 | ] 2760 | 2761 | [[package]] 2762 | name = "serial-windows" 2763 | version = "0.4.0" 2764 | source = "registry+https://github.com/rust-lang/crates.io-index" 2765 | checksum = "15c6d3b776267a75d31bbdfd5d36c0ca051251caafc285827052bc53bcdc8162" 2766 | dependencies = [ 2767 | "libc", 2768 | "serial-core", 2769 | ] 2770 | 2771 | [[package]] 2772 | name = "serialize-to-javascript" 2773 | version = "0.1.1" 2774 | source = "registry+https://github.com/rust-lang/crates.io-index" 2775 | checksum = "c9823f2d3b6a81d98228151fdeaf848206a7855a7a042bbf9bf870449a66cafb" 2776 | dependencies = [ 2777 | "serde", 2778 | "serde_json", 2779 | "serialize-to-javascript-impl", 2780 | ] 2781 | 2782 | [[package]] 2783 | name = "serialize-to-javascript-impl" 2784 | version = "0.1.1" 2785 | source = "registry+https://github.com/rust-lang/crates.io-index" 2786 | checksum = "74064874e9f6a15f04c1f3cb627902d0e6b410abbf36668afa873c61889f1763" 2787 | dependencies = [ 2788 | "proc-macro2", 2789 | "quote", 2790 | "syn 1.0.109", 2791 | ] 2792 | 2793 | [[package]] 2794 | name = "servo_arc" 2795 | version = "0.1.1" 2796 | source = "registry+https://github.com/rust-lang/crates.io-index" 2797 | checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432" 2798 | dependencies = [ 2799 | "nodrop", 2800 | "stable_deref_trait", 2801 | ] 2802 | 2803 | [[package]] 2804 | name = "sha2" 2805 | version = "0.10.8" 2806 | source = "registry+https://github.com/rust-lang/crates.io-index" 2807 | checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" 2808 | dependencies = [ 2809 | "cfg-if", 2810 | "cpufeatures", 2811 | "digest", 2812 | ] 2813 | 2814 | [[package]] 2815 | name = "sharded-slab" 2816 | version = "0.1.7" 2817 | source = "registry+https://github.com/rust-lang/crates.io-index" 2818 | checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" 2819 | dependencies = [ 2820 | "lazy_static", 2821 | ] 2822 | 2823 | [[package]] 2824 | name = "shared_child" 2825 | version = "1.0.0" 2826 | source = "registry+https://github.com/rust-lang/crates.io-index" 2827 | checksum = "b0d94659ad3c2137fef23ae75b03d5241d633f8acded53d672decfa0e6e0caef" 2828 | dependencies = [ 2829 | "libc", 2830 | "winapi", 2831 | ] 2832 | 2833 | [[package]] 2834 | name = "shared_library" 2835 | version = "0.1.9" 2836 | source = "registry+https://github.com/rust-lang/crates.io-index" 2837 | checksum = "5a9e7e0f2bfae24d8a5b5a66c5b257a83c7412304311512a0c054cd5e619da11" 2838 | dependencies = [ 2839 | "lazy_static", 2840 | "libc", 2841 | ] 2842 | 2843 | [[package]] 2844 | name = "shell-words" 2845 | version = "1.1.0" 2846 | source = "registry+https://github.com/rust-lang/crates.io-index" 2847 | checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" 2848 | 2849 | [[package]] 2850 | name = "simd-adler32" 2851 | version = "0.3.7" 2852 | source = "registry+https://github.com/rust-lang/crates.io-index" 2853 | checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" 2854 | 2855 | [[package]] 2856 | name = "siphasher" 2857 | version = "0.3.11" 2858 | source = "registry+https://github.com/rust-lang/crates.io-index" 2859 | checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" 2860 | 2861 | [[package]] 2862 | name = "slab" 2863 | version = "0.4.9" 2864 | source = "registry+https://github.com/rust-lang/crates.io-index" 2865 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" 2866 | dependencies = [ 2867 | "autocfg", 2868 | ] 2869 | 2870 | [[package]] 2871 | name = "smallvec" 2872 | version = "1.11.2" 2873 | source = "registry+https://github.com/rust-lang/crates.io-index" 2874 | checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" 2875 | 2876 | [[package]] 2877 | name = "socket2" 2878 | version = "0.5.5" 2879 | source = "registry+https://github.com/rust-lang/crates.io-index" 2880 | checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" 2881 | dependencies = [ 2882 | "libc", 2883 | "windows-sys 0.48.0", 2884 | ] 2885 | 2886 | [[package]] 2887 | name = "soup2" 2888 | version = "0.2.1" 2889 | source = "registry+https://github.com/rust-lang/crates.io-index" 2890 | checksum = "b2b4d76501d8ba387cf0fefbe055c3e0a59891d09f0f995ae4e4b16f6b60f3c0" 2891 | dependencies = [ 2892 | "bitflags 1.3.2", 2893 | "gio", 2894 | "glib", 2895 | "libc", 2896 | "once_cell", 2897 | "soup2-sys", 2898 | ] 2899 | 2900 | [[package]] 2901 | name = "soup2-sys" 2902 | version = "0.2.0" 2903 | source = "registry+https://github.com/rust-lang/crates.io-index" 2904 | checksum = "009ef427103fcb17f802871647a7fa6c60cbb654b4c4e4c0ac60a31c5f6dc9cf" 2905 | dependencies = [ 2906 | "bitflags 1.3.2", 2907 | "gio-sys", 2908 | "glib-sys", 2909 | "gobject-sys", 2910 | "libc", 2911 | "system-deps 5.0.0", 2912 | ] 2913 | 2914 | [[package]] 2915 | name = "stable_deref_trait" 2916 | version = "1.2.0" 2917 | source = "registry+https://github.com/rust-lang/crates.io-index" 2918 | checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 2919 | 2920 | [[package]] 2921 | name = "state" 2922 | version = "0.5.3" 2923 | source = "registry+https://github.com/rust-lang/crates.io-index" 2924 | checksum = "dbe866e1e51e8260c9eed836a042a5e7f6726bb2b411dffeaa712e19c388f23b" 2925 | dependencies = [ 2926 | "loom", 2927 | ] 2928 | 2929 | [[package]] 2930 | name = "string_cache" 2931 | version = "0.8.7" 2932 | source = "registry+https://github.com/rust-lang/crates.io-index" 2933 | checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" 2934 | dependencies = [ 2935 | "new_debug_unreachable", 2936 | "once_cell", 2937 | "parking_lot", 2938 | "phf_shared 0.10.0", 2939 | "precomputed-hash", 2940 | "serde", 2941 | ] 2942 | 2943 | [[package]] 2944 | name = "string_cache_codegen" 2945 | version = "0.5.2" 2946 | source = "registry+https://github.com/rust-lang/crates.io-index" 2947 | checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988" 2948 | dependencies = [ 2949 | "phf_generator 0.10.0", 2950 | "phf_shared 0.10.0", 2951 | "proc-macro2", 2952 | "quote", 2953 | ] 2954 | 2955 | [[package]] 2956 | name = "strsim" 2957 | version = "0.10.0" 2958 | source = "registry+https://github.com/rust-lang/crates.io-index" 2959 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 2960 | 2961 | [[package]] 2962 | name = "syn" 2963 | version = "1.0.109" 2964 | source = "registry+https://github.com/rust-lang/crates.io-index" 2965 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" 2966 | dependencies = [ 2967 | "proc-macro2", 2968 | "quote", 2969 | "unicode-ident", 2970 | ] 2971 | 2972 | [[package]] 2973 | name = "syn" 2974 | version = "2.0.48" 2975 | source = "registry+https://github.com/rust-lang/crates.io-index" 2976 | checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" 2977 | dependencies = [ 2978 | "proc-macro2", 2979 | "quote", 2980 | "unicode-ident", 2981 | ] 2982 | 2983 | [[package]] 2984 | name = "system-configuration" 2985 | version = "0.5.1" 2986 | source = "registry+https://github.com/rust-lang/crates.io-index" 2987 | checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" 2988 | dependencies = [ 2989 | "bitflags 1.3.2", 2990 | "core-foundation", 2991 | "system-configuration-sys", 2992 | ] 2993 | 2994 | [[package]] 2995 | name = "system-configuration-sys" 2996 | version = "0.5.0" 2997 | source = "registry+https://github.com/rust-lang/crates.io-index" 2998 | checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" 2999 | dependencies = [ 3000 | "core-foundation-sys", 3001 | "libc", 3002 | ] 3003 | 3004 | [[package]] 3005 | name = "system-deps" 3006 | version = "5.0.0" 3007 | source = "registry+https://github.com/rust-lang/crates.io-index" 3008 | checksum = "18db855554db7bd0e73e06cf7ba3df39f97812cb11d3f75e71c39bf45171797e" 3009 | dependencies = [ 3010 | "cfg-expr 0.9.1", 3011 | "heck 0.3.3", 3012 | "pkg-config", 3013 | "toml 0.5.11", 3014 | "version-compare 0.0.11", 3015 | ] 3016 | 3017 | [[package]] 3018 | name = "system-deps" 3019 | version = "6.2.0" 3020 | source = "registry+https://github.com/rust-lang/crates.io-index" 3021 | checksum = "2a2d580ff6a20c55dfb86be5f9c238f67835d0e81cbdea8bf5680e0897320331" 3022 | dependencies = [ 3023 | "cfg-expr 0.15.6", 3024 | "heck 0.4.1", 3025 | "pkg-config", 3026 | "toml 0.8.8", 3027 | "version-compare 0.1.1", 3028 | ] 3029 | 3030 | [[package]] 3031 | name = "tao" 3032 | version = "0.16.5" 3033 | source = "registry+https://github.com/rust-lang/crates.io-index" 3034 | checksum = "75f5aefd6be4cd3ad3f047442242fd9f57cbfb3e565379f66b5e14749364fa4f" 3035 | dependencies = [ 3036 | "bitflags 1.3.2", 3037 | "cairo-rs", 3038 | "cc", 3039 | "cocoa", 3040 | "core-foundation", 3041 | "core-graphics", 3042 | "crossbeam-channel", 3043 | "dispatch", 3044 | "gdk", 3045 | "gdk-pixbuf", 3046 | "gdk-sys", 3047 | "gdkwayland-sys", 3048 | "gdkx11-sys", 3049 | "gio", 3050 | "glib", 3051 | "glib-sys", 3052 | "gtk", 3053 | "image", 3054 | "instant", 3055 | "jni", 3056 | "lazy_static", 3057 | "libc", 3058 | "log", 3059 | "ndk", 3060 | "ndk-context", 3061 | "ndk-sys", 3062 | "objc", 3063 | "once_cell", 3064 | "parking_lot", 3065 | "png", 3066 | "raw-window-handle", 3067 | "scopeguard", 3068 | "serde", 3069 | "tao-macros", 3070 | "unicode-segmentation", 3071 | "uuid", 3072 | "windows 0.39.0", 3073 | "windows-implement", 3074 | "x11-dl", 3075 | ] 3076 | 3077 | [[package]] 3078 | name = "tao-macros" 3079 | version = "0.1.2" 3080 | source = "registry+https://github.com/rust-lang/crates.io-index" 3081 | checksum = "ec114582505d158b669b136e6851f85840c109819d77c42bb7c0709f727d18c2" 3082 | dependencies = [ 3083 | "proc-macro2", 3084 | "quote", 3085 | "syn 1.0.109", 3086 | ] 3087 | 3088 | [[package]] 3089 | name = "tar" 3090 | version = "0.4.40" 3091 | source = "registry+https://github.com/rust-lang/crates.io-index" 3092 | checksum = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb" 3093 | dependencies = [ 3094 | "filetime", 3095 | "libc", 3096 | "xattr", 3097 | ] 3098 | 3099 | [[package]] 3100 | name = "target-lexicon" 3101 | version = "0.12.13" 3102 | source = "registry+https://github.com/rust-lang/crates.io-index" 3103 | checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" 3104 | 3105 | [[package]] 3106 | name = "tauri" 3107 | version = "1.5.4" 3108 | source = "registry+https://github.com/rust-lang/crates.io-index" 3109 | checksum = "fd27c04b9543776a972c86ccf70660b517ecabbeced9fb58d8b961a13ad129af" 3110 | dependencies = [ 3111 | "anyhow", 3112 | "base64 0.21.5", 3113 | "bytes", 3114 | "cocoa", 3115 | "dirs-next", 3116 | "embed_plist", 3117 | "encoding_rs", 3118 | "flate2", 3119 | "futures-util", 3120 | "glib", 3121 | "glob", 3122 | "gtk", 3123 | "heck 0.4.1", 3124 | "http", 3125 | "ignore", 3126 | "minisign-verify", 3127 | "objc", 3128 | "once_cell", 3129 | "open", 3130 | "os_pipe", 3131 | "percent-encoding", 3132 | "rand 0.8.5", 3133 | "raw-window-handle", 3134 | "regex", 3135 | "reqwest", 3136 | "rfd", 3137 | "semver", 3138 | "serde", 3139 | "serde_json", 3140 | "serde_repr", 3141 | "serialize-to-javascript", 3142 | "shared_child", 3143 | "state", 3144 | "tar", 3145 | "tauri-macros", 3146 | "tauri-runtime", 3147 | "tauri-runtime-wry", 3148 | "tauri-utils", 3149 | "tempfile", 3150 | "thiserror", 3151 | "time", 3152 | "tokio", 3153 | "url", 3154 | "uuid", 3155 | "webkit2gtk", 3156 | "webview2-com", 3157 | "windows 0.39.0", 3158 | "zip", 3159 | ] 3160 | 3161 | [[package]] 3162 | name = "tauri-build" 3163 | version = "1.5.1" 3164 | source = "registry+https://github.com/rust-lang/crates.io-index" 3165 | checksum = "e9914a4715e0b75d9f387a285c7e26b5bbfeb1249ad9f842675a82481565c532" 3166 | dependencies = [ 3167 | "anyhow", 3168 | "cargo_toml", 3169 | "dirs-next", 3170 | "heck 0.4.1", 3171 | "json-patch", 3172 | "semver", 3173 | "serde", 3174 | "serde_json", 3175 | "tauri-utils", 3176 | "tauri-winres", 3177 | "walkdir", 3178 | ] 3179 | 3180 | [[package]] 3181 | name = "tauri-codegen" 3182 | version = "1.4.2" 3183 | source = "registry+https://github.com/rust-lang/crates.io-index" 3184 | checksum = "a1554c5857f65dbc377cefb6b97c8ac77b1cb2a90d30d3448114d5d6b48a77fc" 3185 | dependencies = [ 3186 | "base64 0.21.5", 3187 | "brotli", 3188 | "ico", 3189 | "json-patch", 3190 | "plist", 3191 | "png", 3192 | "proc-macro2", 3193 | "quote", 3194 | "regex", 3195 | "semver", 3196 | "serde", 3197 | "serde_json", 3198 | "sha2", 3199 | "tauri-utils", 3200 | "thiserror", 3201 | "time", 3202 | "uuid", 3203 | "walkdir", 3204 | ] 3205 | 3206 | [[package]] 3207 | name = "tauri-macros" 3208 | version = "1.4.3" 3209 | source = "registry+https://github.com/rust-lang/crates.io-index" 3210 | checksum = "277abf361a3a6993ec16bcbb179de0d6518009b851090a01adfea12ac89fa875" 3211 | dependencies = [ 3212 | "heck 0.4.1", 3213 | "proc-macro2", 3214 | "quote", 3215 | "syn 1.0.109", 3216 | "tauri-codegen", 3217 | "tauri-utils", 3218 | ] 3219 | 3220 | [[package]] 3221 | name = "tauri-plugin-pty" 3222 | version = "0.0.8" 3223 | source = "registry+https://github.com/rust-lang/crates.io-index" 3224 | checksum = "2882697af61c5b464c8d9e35a81ca0884f6cd31bc66c4468730dcfa72684fafc" 3225 | dependencies = [ 3226 | "portable-pty", 3227 | "serde", 3228 | "serde_json", 3229 | "tauri", 3230 | ] 3231 | 3232 | [[package]] 3233 | name = "tauri-runtime" 3234 | version = "0.14.2" 3235 | source = "registry+https://github.com/rust-lang/crates.io-index" 3236 | checksum = "cf2d0652aa2891ff3e9caa2401405257ea29ab8372cce01f186a5825f1bd0e76" 3237 | dependencies = [ 3238 | "gtk", 3239 | "http", 3240 | "http-range", 3241 | "rand 0.8.5", 3242 | "raw-window-handle", 3243 | "serde", 3244 | "serde_json", 3245 | "tauri-utils", 3246 | "thiserror", 3247 | "url", 3248 | "uuid", 3249 | "webview2-com", 3250 | "windows 0.39.0", 3251 | ] 3252 | 3253 | [[package]] 3254 | name = "tauri-runtime-wry" 3255 | version = "0.14.3" 3256 | source = "registry+https://github.com/rust-lang/crates.io-index" 3257 | checksum = "6cae61fbc731f690a4899681c9052dde6d05b159b44563ace8186fc1bfb7d158" 3258 | dependencies = [ 3259 | "cocoa", 3260 | "gtk", 3261 | "percent-encoding", 3262 | "rand 0.8.5", 3263 | "raw-window-handle", 3264 | "tauri-runtime", 3265 | "tauri-utils", 3266 | "uuid", 3267 | "webkit2gtk", 3268 | "webview2-com", 3269 | "windows 0.39.0", 3270 | "wry", 3271 | ] 3272 | 3273 | [[package]] 3274 | name = "tauri-utils" 3275 | version = "1.5.2" 3276 | source = "registry+https://github.com/rust-lang/crates.io-index" 3277 | checksum = "ece74810b1d3d44f29f732a7ae09a63183d63949bbdd59c61f8ed2a1b70150db" 3278 | dependencies = [ 3279 | "brotli", 3280 | "ctor", 3281 | "dunce", 3282 | "glob", 3283 | "heck 0.4.1", 3284 | "html5ever", 3285 | "infer", 3286 | "json-patch", 3287 | "kuchikiki", 3288 | "log", 3289 | "memchr", 3290 | "phf 0.11.2", 3291 | "proc-macro2", 3292 | "quote", 3293 | "semver", 3294 | "serde", 3295 | "serde_json", 3296 | "serde_with", 3297 | "thiserror", 3298 | "url", 3299 | "walkdir", 3300 | "windows-version", 3301 | ] 3302 | 3303 | [[package]] 3304 | name = "tauri-winres" 3305 | version = "0.1.1" 3306 | source = "registry+https://github.com/rust-lang/crates.io-index" 3307 | checksum = "5993dc129e544393574288923d1ec447c857f3f644187f4fbf7d9a875fbfc4fb" 3308 | dependencies = [ 3309 | "embed-resource", 3310 | "toml 0.7.8", 3311 | ] 3312 | 3313 | [[package]] 3314 | name = "tempfile" 3315 | version = "3.9.0" 3316 | source = "registry+https://github.com/rust-lang/crates.io-index" 3317 | checksum = "01ce4141aa927a6d1bd34a041795abd0db1cccba5d5f24b009f694bdf3a1f3fa" 3318 | dependencies = [ 3319 | "cfg-if", 3320 | "fastrand", 3321 | "redox_syscall", 3322 | "rustix", 3323 | "windows-sys 0.52.0", 3324 | ] 3325 | 3326 | [[package]] 3327 | name = "tendril" 3328 | version = "0.4.3" 3329 | source = "registry+https://github.com/rust-lang/crates.io-index" 3330 | checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0" 3331 | dependencies = [ 3332 | "futf", 3333 | "mac", 3334 | "utf-8", 3335 | ] 3336 | 3337 | [[package]] 3338 | name = "termios" 3339 | version = "0.2.2" 3340 | source = "registry+https://github.com/rust-lang/crates.io-index" 3341 | checksum = "d5d9cf598a6d7ce700a4e6a9199da127e6819a61e64b68609683cc9a01b5683a" 3342 | dependencies = [ 3343 | "libc", 3344 | ] 3345 | 3346 | [[package]] 3347 | name = "thin-slice" 3348 | version = "0.1.1" 3349 | source = "registry+https://github.com/rust-lang/crates.io-index" 3350 | checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" 3351 | 3352 | [[package]] 3353 | name = "thiserror" 3354 | version = "1.0.56" 3355 | source = "registry+https://github.com/rust-lang/crates.io-index" 3356 | checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" 3357 | dependencies = [ 3358 | "thiserror-impl", 3359 | ] 3360 | 3361 | [[package]] 3362 | name = "thiserror-impl" 3363 | version = "1.0.56" 3364 | source = "registry+https://github.com/rust-lang/crates.io-index" 3365 | checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" 3366 | dependencies = [ 3367 | "proc-macro2", 3368 | "quote", 3369 | "syn 2.0.48", 3370 | ] 3371 | 3372 | [[package]] 3373 | name = "thread_local" 3374 | version = "1.1.7" 3375 | source = "registry+https://github.com/rust-lang/crates.io-index" 3376 | checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" 3377 | dependencies = [ 3378 | "cfg-if", 3379 | "once_cell", 3380 | ] 3381 | 3382 | [[package]] 3383 | name = "time" 3384 | version = "0.3.31" 3385 | source = "registry+https://github.com/rust-lang/crates.io-index" 3386 | checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e" 3387 | dependencies = [ 3388 | "deranged", 3389 | "itoa 1.0.10", 3390 | "powerfmt", 3391 | "serde", 3392 | "time-core", 3393 | "time-macros", 3394 | ] 3395 | 3396 | [[package]] 3397 | name = "time-core" 3398 | version = "0.1.2" 3399 | source = "registry+https://github.com/rust-lang/crates.io-index" 3400 | checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" 3401 | 3402 | [[package]] 3403 | name = "time-macros" 3404 | version = "0.2.16" 3405 | source = "registry+https://github.com/rust-lang/crates.io-index" 3406 | checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f" 3407 | dependencies = [ 3408 | "time-core", 3409 | ] 3410 | 3411 | [[package]] 3412 | name = "tinker" 3413 | version = "0.0.0" 3414 | dependencies = [ 3415 | "serde", 3416 | "serde_json", 3417 | "tauri", 3418 | "tauri-build", 3419 | "tauri-plugin-pty", 3420 | ] 3421 | 3422 | [[package]] 3423 | name = "tinyvec" 3424 | version = "1.6.0" 3425 | source = "registry+https://github.com/rust-lang/crates.io-index" 3426 | checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" 3427 | dependencies = [ 3428 | "tinyvec_macros", 3429 | ] 3430 | 3431 | [[package]] 3432 | name = "tinyvec_macros" 3433 | version = "0.1.1" 3434 | source = "registry+https://github.com/rust-lang/crates.io-index" 3435 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 3436 | 3437 | [[package]] 3438 | name = "tokio" 3439 | version = "1.35.1" 3440 | source = "registry+https://github.com/rust-lang/crates.io-index" 3441 | checksum = "c89b4efa943be685f629b149f53829423f8f5531ea21249408e8e2f8671ec104" 3442 | dependencies = [ 3443 | "backtrace", 3444 | "bytes", 3445 | "libc", 3446 | "mio", 3447 | "num_cpus", 3448 | "pin-project-lite", 3449 | "socket2", 3450 | "windows-sys 0.48.0", 3451 | ] 3452 | 3453 | [[package]] 3454 | name = "tokio-native-tls" 3455 | version = "0.3.1" 3456 | source = "registry+https://github.com/rust-lang/crates.io-index" 3457 | checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" 3458 | dependencies = [ 3459 | "native-tls", 3460 | "tokio", 3461 | ] 3462 | 3463 | [[package]] 3464 | name = "tokio-util" 3465 | version = "0.7.10" 3466 | source = "registry+https://github.com/rust-lang/crates.io-index" 3467 | checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" 3468 | dependencies = [ 3469 | "bytes", 3470 | "futures-core", 3471 | "futures-sink", 3472 | "pin-project-lite", 3473 | "tokio", 3474 | "tracing", 3475 | ] 3476 | 3477 | [[package]] 3478 | name = "toml" 3479 | version = "0.5.11" 3480 | source = "registry+https://github.com/rust-lang/crates.io-index" 3481 | checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" 3482 | dependencies = [ 3483 | "serde", 3484 | ] 3485 | 3486 | [[package]] 3487 | name = "toml" 3488 | version = "0.7.8" 3489 | source = "registry+https://github.com/rust-lang/crates.io-index" 3490 | checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" 3491 | dependencies = [ 3492 | "serde", 3493 | "serde_spanned", 3494 | "toml_datetime", 3495 | "toml_edit 0.19.15", 3496 | ] 3497 | 3498 | [[package]] 3499 | name = "toml" 3500 | version = "0.8.8" 3501 | source = "registry+https://github.com/rust-lang/crates.io-index" 3502 | checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" 3503 | dependencies = [ 3504 | "serde", 3505 | "serde_spanned", 3506 | "toml_datetime", 3507 | "toml_edit 0.21.0", 3508 | ] 3509 | 3510 | [[package]] 3511 | name = "toml_datetime" 3512 | version = "0.6.5" 3513 | source = "registry+https://github.com/rust-lang/crates.io-index" 3514 | checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" 3515 | dependencies = [ 3516 | "serde", 3517 | ] 3518 | 3519 | [[package]] 3520 | name = "toml_edit" 3521 | version = "0.19.15" 3522 | source = "registry+https://github.com/rust-lang/crates.io-index" 3523 | checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" 3524 | dependencies = [ 3525 | "indexmap 2.1.0", 3526 | "serde", 3527 | "serde_spanned", 3528 | "toml_datetime", 3529 | "winnow", 3530 | ] 3531 | 3532 | [[package]] 3533 | name = "toml_edit" 3534 | version = "0.21.0" 3535 | source = "registry+https://github.com/rust-lang/crates.io-index" 3536 | checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" 3537 | dependencies = [ 3538 | "indexmap 2.1.0", 3539 | "serde", 3540 | "serde_spanned", 3541 | "toml_datetime", 3542 | "winnow", 3543 | ] 3544 | 3545 | [[package]] 3546 | name = "tower-service" 3547 | version = "0.3.2" 3548 | source = "registry+https://github.com/rust-lang/crates.io-index" 3549 | checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" 3550 | 3551 | [[package]] 3552 | name = "tracing" 3553 | version = "0.1.40" 3554 | source = "registry+https://github.com/rust-lang/crates.io-index" 3555 | checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" 3556 | dependencies = [ 3557 | "pin-project-lite", 3558 | "tracing-attributes", 3559 | "tracing-core", 3560 | ] 3561 | 3562 | [[package]] 3563 | name = "tracing-attributes" 3564 | version = "0.1.27" 3565 | source = "registry+https://github.com/rust-lang/crates.io-index" 3566 | checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" 3567 | dependencies = [ 3568 | "proc-macro2", 3569 | "quote", 3570 | "syn 2.0.48", 3571 | ] 3572 | 3573 | [[package]] 3574 | name = "tracing-core" 3575 | version = "0.1.32" 3576 | source = "registry+https://github.com/rust-lang/crates.io-index" 3577 | checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" 3578 | dependencies = [ 3579 | "once_cell", 3580 | "valuable", 3581 | ] 3582 | 3583 | [[package]] 3584 | name = "tracing-log" 3585 | version = "0.2.0" 3586 | source = "registry+https://github.com/rust-lang/crates.io-index" 3587 | checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" 3588 | dependencies = [ 3589 | "log", 3590 | "once_cell", 3591 | "tracing-core", 3592 | ] 3593 | 3594 | [[package]] 3595 | name = "tracing-subscriber" 3596 | version = "0.3.18" 3597 | source = "registry+https://github.com/rust-lang/crates.io-index" 3598 | checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" 3599 | dependencies = [ 3600 | "matchers", 3601 | "nu-ansi-term", 3602 | "once_cell", 3603 | "regex", 3604 | "sharded-slab", 3605 | "smallvec", 3606 | "thread_local", 3607 | "tracing", 3608 | "tracing-core", 3609 | "tracing-log", 3610 | ] 3611 | 3612 | [[package]] 3613 | name = "treediff" 3614 | version = "4.0.2" 3615 | source = "registry+https://github.com/rust-lang/crates.io-index" 3616 | checksum = "52984d277bdf2a751072b5df30ec0377febdb02f7696d64c2d7d54630bac4303" 3617 | dependencies = [ 3618 | "serde_json", 3619 | ] 3620 | 3621 | [[package]] 3622 | name = "try-lock" 3623 | version = "0.2.5" 3624 | source = "registry+https://github.com/rust-lang/crates.io-index" 3625 | checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" 3626 | 3627 | [[package]] 3628 | name = "typenum" 3629 | version = "1.17.0" 3630 | source = "registry+https://github.com/rust-lang/crates.io-index" 3631 | checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" 3632 | 3633 | [[package]] 3634 | name = "unicode-bidi" 3635 | version = "0.3.14" 3636 | source = "registry+https://github.com/rust-lang/crates.io-index" 3637 | checksum = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416" 3638 | 3639 | [[package]] 3640 | name = "unicode-ident" 3641 | version = "1.0.12" 3642 | source = "registry+https://github.com/rust-lang/crates.io-index" 3643 | checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" 3644 | 3645 | [[package]] 3646 | name = "unicode-normalization" 3647 | version = "0.1.22" 3648 | source = "registry+https://github.com/rust-lang/crates.io-index" 3649 | checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" 3650 | dependencies = [ 3651 | "tinyvec", 3652 | ] 3653 | 3654 | [[package]] 3655 | name = "unicode-segmentation" 3656 | version = "1.10.1" 3657 | source = "registry+https://github.com/rust-lang/crates.io-index" 3658 | checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" 3659 | 3660 | [[package]] 3661 | name = "url" 3662 | version = "2.5.0" 3663 | source = "registry+https://github.com/rust-lang/crates.io-index" 3664 | checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" 3665 | dependencies = [ 3666 | "form_urlencoded", 3667 | "idna", 3668 | "percent-encoding", 3669 | "serde", 3670 | ] 3671 | 3672 | [[package]] 3673 | name = "utf-8" 3674 | version = "0.7.6" 3675 | source = "registry+https://github.com/rust-lang/crates.io-index" 3676 | checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" 3677 | 3678 | [[package]] 3679 | name = "uuid" 3680 | version = "1.6.1" 3681 | source = "registry+https://github.com/rust-lang/crates.io-index" 3682 | checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560" 3683 | dependencies = [ 3684 | "getrandom 0.2.11", 3685 | ] 3686 | 3687 | [[package]] 3688 | name = "valuable" 3689 | version = "0.1.0" 3690 | source = "registry+https://github.com/rust-lang/crates.io-index" 3691 | checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" 3692 | 3693 | [[package]] 3694 | name = "vcpkg" 3695 | version = "0.2.15" 3696 | source = "registry+https://github.com/rust-lang/crates.io-index" 3697 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 3698 | 3699 | [[package]] 3700 | name = "version-compare" 3701 | version = "0.0.11" 3702 | source = "registry+https://github.com/rust-lang/crates.io-index" 3703 | checksum = "1c18c859eead79d8b95d09e4678566e8d70105c4e7b251f707a03df32442661b" 3704 | 3705 | [[package]] 3706 | name = "version-compare" 3707 | version = "0.1.1" 3708 | source = "registry+https://github.com/rust-lang/crates.io-index" 3709 | checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29" 3710 | 3711 | [[package]] 3712 | name = "version_check" 3713 | version = "0.9.4" 3714 | source = "registry+https://github.com/rust-lang/crates.io-index" 3715 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 3716 | 3717 | [[package]] 3718 | name = "vswhom" 3719 | version = "0.1.0" 3720 | source = "registry+https://github.com/rust-lang/crates.io-index" 3721 | checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b" 3722 | dependencies = [ 3723 | "libc", 3724 | "vswhom-sys", 3725 | ] 3726 | 3727 | [[package]] 3728 | name = "vswhom-sys" 3729 | version = "0.1.2" 3730 | source = "registry+https://github.com/rust-lang/crates.io-index" 3731 | checksum = "d3b17ae1f6c8a2b28506cd96d412eebf83b4a0ff2cbefeeb952f2f9dfa44ba18" 3732 | dependencies = [ 3733 | "cc", 3734 | "libc", 3735 | ] 3736 | 3737 | [[package]] 3738 | name = "walkdir" 3739 | version = "2.4.0" 3740 | source = "registry+https://github.com/rust-lang/crates.io-index" 3741 | checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" 3742 | dependencies = [ 3743 | "same-file", 3744 | "winapi-util", 3745 | ] 3746 | 3747 | [[package]] 3748 | name = "want" 3749 | version = "0.3.1" 3750 | source = "registry+https://github.com/rust-lang/crates.io-index" 3751 | checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" 3752 | dependencies = [ 3753 | "try-lock", 3754 | ] 3755 | 3756 | [[package]] 3757 | name = "wasi" 3758 | version = "0.9.0+wasi-snapshot-preview1" 3759 | source = "registry+https://github.com/rust-lang/crates.io-index" 3760 | checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" 3761 | 3762 | [[package]] 3763 | name = "wasi" 3764 | version = "0.11.0+wasi-snapshot-preview1" 3765 | source = "registry+https://github.com/rust-lang/crates.io-index" 3766 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 3767 | 3768 | [[package]] 3769 | name = "wasm-bindgen" 3770 | version = "0.2.89" 3771 | source = "registry+https://github.com/rust-lang/crates.io-index" 3772 | checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e" 3773 | dependencies = [ 3774 | "cfg-if", 3775 | "wasm-bindgen-macro", 3776 | ] 3777 | 3778 | [[package]] 3779 | name = "wasm-bindgen-backend" 3780 | version = "0.2.89" 3781 | source = "registry+https://github.com/rust-lang/crates.io-index" 3782 | checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826" 3783 | dependencies = [ 3784 | "bumpalo", 3785 | "log", 3786 | "once_cell", 3787 | "proc-macro2", 3788 | "quote", 3789 | "syn 2.0.48", 3790 | "wasm-bindgen-shared", 3791 | ] 3792 | 3793 | [[package]] 3794 | name = "wasm-bindgen-futures" 3795 | version = "0.4.39" 3796 | source = "registry+https://github.com/rust-lang/crates.io-index" 3797 | checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12" 3798 | dependencies = [ 3799 | "cfg-if", 3800 | "js-sys", 3801 | "wasm-bindgen", 3802 | "web-sys", 3803 | ] 3804 | 3805 | [[package]] 3806 | name = "wasm-bindgen-macro" 3807 | version = "0.2.89" 3808 | source = "registry+https://github.com/rust-lang/crates.io-index" 3809 | checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2" 3810 | dependencies = [ 3811 | "quote", 3812 | "wasm-bindgen-macro-support", 3813 | ] 3814 | 3815 | [[package]] 3816 | name = "wasm-bindgen-macro-support" 3817 | version = "0.2.89" 3818 | source = "registry+https://github.com/rust-lang/crates.io-index" 3819 | checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283" 3820 | dependencies = [ 3821 | "proc-macro2", 3822 | "quote", 3823 | "syn 2.0.48", 3824 | "wasm-bindgen-backend", 3825 | "wasm-bindgen-shared", 3826 | ] 3827 | 3828 | [[package]] 3829 | name = "wasm-bindgen-shared" 3830 | version = "0.2.89" 3831 | source = "registry+https://github.com/rust-lang/crates.io-index" 3832 | checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f" 3833 | 3834 | [[package]] 3835 | name = "wasm-streams" 3836 | version = "0.3.0" 3837 | source = "registry+https://github.com/rust-lang/crates.io-index" 3838 | checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" 3839 | dependencies = [ 3840 | "futures-util", 3841 | "js-sys", 3842 | "wasm-bindgen", 3843 | "wasm-bindgen-futures", 3844 | "web-sys", 3845 | ] 3846 | 3847 | [[package]] 3848 | name = "web-sys" 3849 | version = "0.3.66" 3850 | source = "registry+https://github.com/rust-lang/crates.io-index" 3851 | checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f" 3852 | dependencies = [ 3853 | "js-sys", 3854 | "wasm-bindgen", 3855 | ] 3856 | 3857 | [[package]] 3858 | name = "webkit2gtk" 3859 | version = "0.18.2" 3860 | source = "registry+https://github.com/rust-lang/crates.io-index" 3861 | checksum = "b8f859735e4a452aeb28c6c56a852967a8a76c8eb1cc32dbf931ad28a13d6370" 3862 | dependencies = [ 3863 | "bitflags 1.3.2", 3864 | "cairo-rs", 3865 | "gdk", 3866 | "gdk-sys", 3867 | "gio", 3868 | "gio-sys", 3869 | "glib", 3870 | "glib-sys", 3871 | "gobject-sys", 3872 | "gtk", 3873 | "gtk-sys", 3874 | "javascriptcore-rs", 3875 | "libc", 3876 | "once_cell", 3877 | "soup2", 3878 | "webkit2gtk-sys", 3879 | ] 3880 | 3881 | [[package]] 3882 | name = "webkit2gtk-sys" 3883 | version = "0.18.0" 3884 | source = "registry+https://github.com/rust-lang/crates.io-index" 3885 | checksum = "4d76ca6ecc47aeba01ec61e480139dda143796abcae6f83bcddf50d6b5b1dcf3" 3886 | dependencies = [ 3887 | "atk-sys", 3888 | "bitflags 1.3.2", 3889 | "cairo-sys-rs", 3890 | "gdk-pixbuf-sys", 3891 | "gdk-sys", 3892 | "gio-sys", 3893 | "glib-sys", 3894 | "gobject-sys", 3895 | "gtk-sys", 3896 | "javascriptcore-rs-sys", 3897 | "libc", 3898 | "pango-sys", 3899 | "pkg-config", 3900 | "soup2-sys", 3901 | "system-deps 6.2.0", 3902 | ] 3903 | 3904 | [[package]] 3905 | name = "webview2-com" 3906 | version = "0.19.1" 3907 | source = "registry+https://github.com/rust-lang/crates.io-index" 3908 | checksum = "b4a769c9f1a64a8734bde70caafac2b96cada12cd4aefa49196b3a386b8b4178" 3909 | dependencies = [ 3910 | "webview2-com-macros", 3911 | "webview2-com-sys", 3912 | "windows 0.39.0", 3913 | "windows-implement", 3914 | ] 3915 | 3916 | [[package]] 3917 | name = "webview2-com-macros" 3918 | version = "0.6.0" 3919 | source = "registry+https://github.com/rust-lang/crates.io-index" 3920 | checksum = "eaebe196c01691db62e9e4ca52c5ef1e4fd837dcae27dae3ada599b5a8fd05ac" 3921 | dependencies = [ 3922 | "proc-macro2", 3923 | "quote", 3924 | "syn 1.0.109", 3925 | ] 3926 | 3927 | [[package]] 3928 | name = "webview2-com-sys" 3929 | version = "0.19.0" 3930 | source = "registry+https://github.com/rust-lang/crates.io-index" 3931 | checksum = "aac48ef20ddf657755fdcda8dfed2a7b4fc7e4581acce6fe9b88c3d64f29dee7" 3932 | dependencies = [ 3933 | "regex", 3934 | "serde", 3935 | "serde_json", 3936 | "thiserror", 3937 | "windows 0.39.0", 3938 | "windows-bindgen", 3939 | "windows-metadata", 3940 | ] 3941 | 3942 | [[package]] 3943 | name = "winapi" 3944 | version = "0.3.9" 3945 | source = "registry+https://github.com/rust-lang/crates.io-index" 3946 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 3947 | dependencies = [ 3948 | "winapi-i686-pc-windows-gnu", 3949 | "winapi-x86_64-pc-windows-gnu", 3950 | ] 3951 | 3952 | [[package]] 3953 | name = "winapi-i686-pc-windows-gnu" 3954 | version = "0.4.0" 3955 | source = "registry+https://github.com/rust-lang/crates.io-index" 3956 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 3957 | 3958 | [[package]] 3959 | name = "winapi-util" 3960 | version = "0.1.6" 3961 | source = "registry+https://github.com/rust-lang/crates.io-index" 3962 | checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" 3963 | dependencies = [ 3964 | "winapi", 3965 | ] 3966 | 3967 | [[package]] 3968 | name = "winapi-x86_64-pc-windows-gnu" 3969 | version = "0.4.0" 3970 | source = "registry+https://github.com/rust-lang/crates.io-index" 3971 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 3972 | 3973 | [[package]] 3974 | name = "windows" 3975 | version = "0.37.0" 3976 | source = "registry+https://github.com/rust-lang/crates.io-index" 3977 | checksum = "57b543186b344cc61c85b5aab0d2e3adf4e0f99bc076eff9aa5927bcc0b8a647" 3978 | dependencies = [ 3979 | "windows_aarch64_msvc 0.37.0", 3980 | "windows_i686_gnu 0.37.0", 3981 | "windows_i686_msvc 0.37.0", 3982 | "windows_x86_64_gnu 0.37.0", 3983 | "windows_x86_64_msvc 0.37.0", 3984 | ] 3985 | 3986 | [[package]] 3987 | name = "windows" 3988 | version = "0.39.0" 3989 | source = "registry+https://github.com/rust-lang/crates.io-index" 3990 | checksum = "f1c4bd0a50ac6020f65184721f758dba47bb9fbc2133df715ec74a237b26794a" 3991 | dependencies = [ 3992 | "windows-implement", 3993 | "windows_aarch64_msvc 0.39.0", 3994 | "windows_i686_gnu 0.39.0", 3995 | "windows_i686_msvc 0.39.0", 3996 | "windows_x86_64_gnu 0.39.0", 3997 | "windows_x86_64_msvc 0.39.0", 3998 | ] 3999 | 4000 | [[package]] 4001 | name = "windows" 4002 | version = "0.48.0" 4003 | source = "registry+https://github.com/rust-lang/crates.io-index" 4004 | checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" 4005 | dependencies = [ 4006 | "windows-targets 0.48.5", 4007 | ] 4008 | 4009 | [[package]] 4010 | name = "windows-bindgen" 4011 | version = "0.39.0" 4012 | source = "registry+https://github.com/rust-lang/crates.io-index" 4013 | checksum = "68003dbd0e38abc0fb85b939240f4bce37c43a5981d3df37ccbaaa981b47cb41" 4014 | dependencies = [ 4015 | "windows-metadata", 4016 | "windows-tokens", 4017 | ] 4018 | 4019 | [[package]] 4020 | name = "windows-core" 4021 | version = "0.52.0" 4022 | source = "registry+https://github.com/rust-lang/crates.io-index" 4023 | checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" 4024 | dependencies = [ 4025 | "windows-targets 0.52.0", 4026 | ] 4027 | 4028 | [[package]] 4029 | name = "windows-implement" 4030 | version = "0.39.0" 4031 | source = "registry+https://github.com/rust-lang/crates.io-index" 4032 | checksum = "ba01f98f509cb5dc05f4e5fc95e535f78260f15fea8fe1a8abdd08f774f1cee7" 4033 | dependencies = [ 4034 | "syn 1.0.109", 4035 | "windows-tokens", 4036 | ] 4037 | 4038 | [[package]] 4039 | name = "windows-metadata" 4040 | version = "0.39.0" 4041 | source = "registry+https://github.com/rust-lang/crates.io-index" 4042 | checksum = "9ee5e275231f07c6e240d14f34e1b635bf1faa1c76c57cfd59a5cdb9848e4278" 4043 | 4044 | [[package]] 4045 | name = "windows-sys" 4046 | version = "0.42.0" 4047 | source = "registry+https://github.com/rust-lang/crates.io-index" 4048 | checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" 4049 | dependencies = [ 4050 | "windows_aarch64_gnullvm 0.42.2", 4051 | "windows_aarch64_msvc 0.42.2", 4052 | "windows_i686_gnu 0.42.2", 4053 | "windows_i686_msvc 0.42.2", 4054 | "windows_x86_64_gnu 0.42.2", 4055 | "windows_x86_64_gnullvm 0.42.2", 4056 | "windows_x86_64_msvc 0.42.2", 4057 | ] 4058 | 4059 | [[package]] 4060 | name = "windows-sys" 4061 | version = "0.48.0" 4062 | source = "registry+https://github.com/rust-lang/crates.io-index" 4063 | checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" 4064 | dependencies = [ 4065 | "windows-targets 0.48.5", 4066 | ] 4067 | 4068 | [[package]] 4069 | name = "windows-sys" 4070 | version = "0.52.0" 4071 | source = "registry+https://github.com/rust-lang/crates.io-index" 4072 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 4073 | dependencies = [ 4074 | "windows-targets 0.52.0", 4075 | ] 4076 | 4077 | [[package]] 4078 | name = "windows-targets" 4079 | version = "0.48.5" 4080 | source = "registry+https://github.com/rust-lang/crates.io-index" 4081 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" 4082 | dependencies = [ 4083 | "windows_aarch64_gnullvm 0.48.5", 4084 | "windows_aarch64_msvc 0.48.5", 4085 | "windows_i686_gnu 0.48.5", 4086 | "windows_i686_msvc 0.48.5", 4087 | "windows_x86_64_gnu 0.48.5", 4088 | "windows_x86_64_gnullvm 0.48.5", 4089 | "windows_x86_64_msvc 0.48.5", 4090 | ] 4091 | 4092 | [[package]] 4093 | name = "windows-targets" 4094 | version = "0.52.0" 4095 | source = "registry+https://github.com/rust-lang/crates.io-index" 4096 | checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" 4097 | dependencies = [ 4098 | "windows_aarch64_gnullvm 0.52.0", 4099 | "windows_aarch64_msvc 0.52.0", 4100 | "windows_i686_gnu 0.52.0", 4101 | "windows_i686_msvc 0.52.0", 4102 | "windows_x86_64_gnu 0.52.0", 4103 | "windows_x86_64_gnullvm 0.52.0", 4104 | "windows_x86_64_msvc 0.52.0", 4105 | ] 4106 | 4107 | [[package]] 4108 | name = "windows-tokens" 4109 | version = "0.39.0" 4110 | source = "registry+https://github.com/rust-lang/crates.io-index" 4111 | checksum = "f838de2fe15fe6bac988e74b798f26499a8b21a9d97edec321e79b28d1d7f597" 4112 | 4113 | [[package]] 4114 | name = "windows-version" 4115 | version = "0.1.0" 4116 | source = "registry+https://github.com/rust-lang/crates.io-index" 4117 | checksum = "75aa004c988e080ad34aff5739c39d0312f4684699d6d71fc8a198d057b8b9b4" 4118 | dependencies = [ 4119 | "windows-targets 0.52.0", 4120 | ] 4121 | 4122 | [[package]] 4123 | name = "windows_aarch64_gnullvm" 4124 | version = "0.42.2" 4125 | source = "registry+https://github.com/rust-lang/crates.io-index" 4126 | checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" 4127 | 4128 | [[package]] 4129 | name = "windows_aarch64_gnullvm" 4130 | version = "0.48.5" 4131 | source = "registry+https://github.com/rust-lang/crates.io-index" 4132 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" 4133 | 4134 | [[package]] 4135 | name = "windows_aarch64_gnullvm" 4136 | version = "0.52.0" 4137 | source = "registry+https://github.com/rust-lang/crates.io-index" 4138 | checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" 4139 | 4140 | [[package]] 4141 | name = "windows_aarch64_msvc" 4142 | version = "0.37.0" 4143 | source = "registry+https://github.com/rust-lang/crates.io-index" 4144 | checksum = "2623277cb2d1c216ba3b578c0f3cf9cdebeddb6e66b1b218bb33596ea7769c3a" 4145 | 4146 | [[package]] 4147 | name = "windows_aarch64_msvc" 4148 | version = "0.39.0" 4149 | source = "registry+https://github.com/rust-lang/crates.io-index" 4150 | checksum = "ec7711666096bd4096ffa835238905bb33fb87267910e154b18b44eaabb340f2" 4151 | 4152 | [[package]] 4153 | name = "windows_aarch64_msvc" 4154 | version = "0.42.2" 4155 | source = "registry+https://github.com/rust-lang/crates.io-index" 4156 | checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" 4157 | 4158 | [[package]] 4159 | name = "windows_aarch64_msvc" 4160 | version = "0.48.5" 4161 | source = "registry+https://github.com/rust-lang/crates.io-index" 4162 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" 4163 | 4164 | [[package]] 4165 | name = "windows_aarch64_msvc" 4166 | version = "0.52.0" 4167 | source = "registry+https://github.com/rust-lang/crates.io-index" 4168 | checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" 4169 | 4170 | [[package]] 4171 | name = "windows_i686_gnu" 4172 | version = "0.37.0" 4173 | source = "registry+https://github.com/rust-lang/crates.io-index" 4174 | checksum = "d3925fd0b0b804730d44d4b6278c50f9699703ec49bcd628020f46f4ba07d9e1" 4175 | 4176 | [[package]] 4177 | name = "windows_i686_gnu" 4178 | version = "0.39.0" 4179 | source = "registry+https://github.com/rust-lang/crates.io-index" 4180 | checksum = "763fc57100a5f7042e3057e7e8d9bdd7860d330070251a73d003563a3bb49e1b" 4181 | 4182 | [[package]] 4183 | name = "windows_i686_gnu" 4184 | version = "0.42.2" 4185 | source = "registry+https://github.com/rust-lang/crates.io-index" 4186 | checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" 4187 | 4188 | [[package]] 4189 | name = "windows_i686_gnu" 4190 | version = "0.48.5" 4191 | source = "registry+https://github.com/rust-lang/crates.io-index" 4192 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" 4193 | 4194 | [[package]] 4195 | name = "windows_i686_gnu" 4196 | version = "0.52.0" 4197 | source = "registry+https://github.com/rust-lang/crates.io-index" 4198 | checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" 4199 | 4200 | [[package]] 4201 | name = "windows_i686_msvc" 4202 | version = "0.37.0" 4203 | source = "registry+https://github.com/rust-lang/crates.io-index" 4204 | checksum = "ce907ac74fe331b524c1298683efbf598bb031bc84d5e274db2083696d07c57c" 4205 | 4206 | [[package]] 4207 | name = "windows_i686_msvc" 4208 | version = "0.39.0" 4209 | source = "registry+https://github.com/rust-lang/crates.io-index" 4210 | checksum = "7bc7cbfe58828921e10a9f446fcaaf649204dcfe6c1ddd712c5eebae6bda1106" 4211 | 4212 | [[package]] 4213 | name = "windows_i686_msvc" 4214 | version = "0.42.2" 4215 | source = "registry+https://github.com/rust-lang/crates.io-index" 4216 | checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" 4217 | 4218 | [[package]] 4219 | name = "windows_i686_msvc" 4220 | version = "0.48.5" 4221 | source = "registry+https://github.com/rust-lang/crates.io-index" 4222 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" 4223 | 4224 | [[package]] 4225 | name = "windows_i686_msvc" 4226 | version = "0.52.0" 4227 | source = "registry+https://github.com/rust-lang/crates.io-index" 4228 | checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" 4229 | 4230 | [[package]] 4231 | name = "windows_x86_64_gnu" 4232 | version = "0.37.0" 4233 | source = "registry+https://github.com/rust-lang/crates.io-index" 4234 | checksum = "2babfba0828f2e6b32457d5341427dcbb577ceef556273229959ac23a10af33d" 4235 | 4236 | [[package]] 4237 | name = "windows_x86_64_gnu" 4238 | version = "0.39.0" 4239 | source = "registry+https://github.com/rust-lang/crates.io-index" 4240 | checksum = "6868c165637d653ae1e8dc4d82c25d4f97dd6605eaa8d784b5c6e0ab2a252b65" 4241 | 4242 | [[package]] 4243 | name = "windows_x86_64_gnu" 4244 | version = "0.42.2" 4245 | source = "registry+https://github.com/rust-lang/crates.io-index" 4246 | checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" 4247 | 4248 | [[package]] 4249 | name = "windows_x86_64_gnu" 4250 | version = "0.48.5" 4251 | source = "registry+https://github.com/rust-lang/crates.io-index" 4252 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" 4253 | 4254 | [[package]] 4255 | name = "windows_x86_64_gnu" 4256 | version = "0.52.0" 4257 | source = "registry+https://github.com/rust-lang/crates.io-index" 4258 | checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" 4259 | 4260 | [[package]] 4261 | name = "windows_x86_64_gnullvm" 4262 | version = "0.42.2" 4263 | source = "registry+https://github.com/rust-lang/crates.io-index" 4264 | checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" 4265 | 4266 | [[package]] 4267 | name = "windows_x86_64_gnullvm" 4268 | version = "0.48.5" 4269 | source = "registry+https://github.com/rust-lang/crates.io-index" 4270 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" 4271 | 4272 | [[package]] 4273 | name = "windows_x86_64_gnullvm" 4274 | version = "0.52.0" 4275 | source = "registry+https://github.com/rust-lang/crates.io-index" 4276 | checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" 4277 | 4278 | [[package]] 4279 | name = "windows_x86_64_msvc" 4280 | version = "0.37.0" 4281 | source = "registry+https://github.com/rust-lang/crates.io-index" 4282 | checksum = "f4dd6dc7df2d84cf7b33822ed5b86318fb1781948e9663bacd047fc9dd52259d" 4283 | 4284 | [[package]] 4285 | name = "windows_x86_64_msvc" 4286 | version = "0.39.0" 4287 | source = "registry+https://github.com/rust-lang/crates.io-index" 4288 | checksum = "5e4d40883ae9cae962787ca76ba76390ffa29214667a111db9e0a1ad8377e809" 4289 | 4290 | [[package]] 4291 | name = "windows_x86_64_msvc" 4292 | version = "0.42.2" 4293 | source = "registry+https://github.com/rust-lang/crates.io-index" 4294 | checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" 4295 | 4296 | [[package]] 4297 | name = "windows_x86_64_msvc" 4298 | version = "0.48.5" 4299 | source = "registry+https://github.com/rust-lang/crates.io-index" 4300 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" 4301 | 4302 | [[package]] 4303 | name = "windows_x86_64_msvc" 4304 | version = "0.52.0" 4305 | source = "registry+https://github.com/rust-lang/crates.io-index" 4306 | checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" 4307 | 4308 | [[package]] 4309 | name = "winnow" 4310 | version = "0.5.33" 4311 | source = "registry+https://github.com/rust-lang/crates.io-index" 4312 | checksum = "b7520bbdec7211caa7c4e682eb1fbe07abe20cee6756b6e00f537c82c11816aa" 4313 | dependencies = [ 4314 | "memchr", 4315 | ] 4316 | 4317 | [[package]] 4318 | name = "winreg" 4319 | version = "0.10.1" 4320 | source = "registry+https://github.com/rust-lang/crates.io-index" 4321 | checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" 4322 | dependencies = [ 4323 | "winapi", 4324 | ] 4325 | 4326 | [[package]] 4327 | name = "winreg" 4328 | version = "0.50.0" 4329 | source = "registry+https://github.com/rust-lang/crates.io-index" 4330 | checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" 4331 | dependencies = [ 4332 | "cfg-if", 4333 | "windows-sys 0.48.0", 4334 | ] 4335 | 4336 | [[package]] 4337 | name = "winreg" 4338 | version = "0.51.0" 4339 | source = "registry+https://github.com/rust-lang/crates.io-index" 4340 | checksum = "937f3df7948156640f46aacef17a70db0de5917bda9c92b0f751f3a955b588fc" 4341 | dependencies = [ 4342 | "cfg-if", 4343 | "windows-sys 0.48.0", 4344 | ] 4345 | 4346 | [[package]] 4347 | name = "wry" 4348 | version = "0.24.7" 4349 | source = "registry+https://github.com/rust-lang/crates.io-index" 4350 | checksum = "6ad85d0e067359e409fcb88903c3eac817c392e5d638258abfb3da5ad8ba6fc4" 4351 | dependencies = [ 4352 | "base64 0.13.1", 4353 | "block", 4354 | "cocoa", 4355 | "core-graphics", 4356 | "crossbeam-channel", 4357 | "dunce", 4358 | "gdk", 4359 | "gio", 4360 | "glib", 4361 | "gtk", 4362 | "html5ever", 4363 | "http", 4364 | "kuchikiki", 4365 | "libc", 4366 | "log", 4367 | "objc", 4368 | "objc_id", 4369 | "once_cell", 4370 | "serde", 4371 | "serde_json", 4372 | "sha2", 4373 | "soup2", 4374 | "tao", 4375 | "thiserror", 4376 | "url", 4377 | "webkit2gtk", 4378 | "webkit2gtk-sys", 4379 | "webview2-com", 4380 | "windows 0.39.0", 4381 | "windows-implement", 4382 | ] 4383 | 4384 | [[package]] 4385 | name = "x11" 4386 | version = "2.21.0" 4387 | source = "registry+https://github.com/rust-lang/crates.io-index" 4388 | checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e" 4389 | dependencies = [ 4390 | "libc", 4391 | "pkg-config", 4392 | ] 4393 | 4394 | [[package]] 4395 | name = "x11-dl" 4396 | version = "2.21.0" 4397 | source = "registry+https://github.com/rust-lang/crates.io-index" 4398 | checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" 4399 | dependencies = [ 4400 | "libc", 4401 | "once_cell", 4402 | "pkg-config", 4403 | ] 4404 | 4405 | [[package]] 4406 | name = "xattr" 4407 | version = "1.2.0" 4408 | source = "registry+https://github.com/rust-lang/crates.io-index" 4409 | checksum = "914566e6413e7fa959cc394fb30e563ba80f3541fbd40816d4c05a0fc3f2a0f1" 4410 | dependencies = [ 4411 | "libc", 4412 | "linux-raw-sys", 4413 | "rustix", 4414 | ] 4415 | 4416 | [[package]] 4417 | name = "zip" 4418 | version = "0.6.6" 4419 | source = "registry+https://github.com/rust-lang/crates.io-index" 4420 | checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" 4421 | dependencies = [ 4422 | "byteorder", 4423 | "crc32fast", 4424 | "crossbeam-utils", 4425 | ] 4426 | --------------------------------------------------------------------------------