Giter VIP home page Giter VIP logo

sakura's Introduction

github-snake

Majorly procrastinating and not doing anything productive 😃

About me

I am a 19 year old hobbyist programmer from Finland.

I'm currently working on a manga reader and tracker called Sakura.

Languages and tools

rust logo tauri logo nuxtjs logo typescript logo

This list does not indicate my skill level or everything I do know how to use.

Socials

sakura's People

Contributors

dependabot[bot] avatar phoeenix05 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

sakura's Issues

[Bug] : Testing the bug report template

What happened?

No bugs. Just testing the issue template.

System Information

[✔] Environment
- OS: Mac OS 13.4.1 X64
✔ Xcode Command Line Tools: installed
✔ rustc: 1.70.0-nightly (7b4f48927 2023-03-12)
✔ Cargo: 1.70.0-nightly (7d3033d2e 2023-03-08)
✔ rustup: 1.25.2 (17db695f1 2023-02-01)
✔ Rust toolchain: nightly-aarch64-apple-darwin (default)
- node: 20.5.0
- pnpm: 8.6.12
- yarn: 1.22.19
- npm: 9.8.0

[-] Packages
- tauri [RUST]: 1.4.1
- tauri-build [RUST]: 1.4.0
- wry [RUST]: 0.24.3
- tao [RUST]: 0.16.2
- @tauri-apps/api [NPM]: 1.4.0
- @tauri-apps/cli [NPM]: 1.4.0

[-] App
- build-type: bundle
- CSP: unset
- distDir: ../.output/public
- devPath: http://localhost:3000/
- framework: Vue.js (Nuxt)
- bundler: Webpack

Enable Tauri application updater

Enable and configure the updater for automatic updates upon new version is released.

{
    "tauri": {
        "updater": {
            "active": false, // Change to true
            ...
        },
    }
}

Fix badges on project README

Tauri and Nuxt badges don't seem to have links to their homepages.

In the markdown they seem to have links set so I don't know whats going on.

![Static Badge](https://img.shields.io/badge/tauri-333333?style=for-the-badge&logo=tauri&link=https%3A%2F%2Ftauri.app)
![Static Badge](https://img.shields.io/badge/NuxtJS-%2300DC82?style=for-the-badge&logo=nuxtjs3&link=https%3A%2F%2Fnuxt.com%2F)

Optimize image loading

The loading time for the high resolution images for chapters is really slow in my testing.

There is a constant value you can change in src/pages/chapter/[id].vue called high_res.

const high_res = false

I will implement a toggle for this when I make the settings page(s).

Better name for this app

This issue is mainly for me to put name ideas for this application. But anyone can leave a suggestion here if they have one.

Manga card data loading

The issue is in the code of this commit 164bbc0.

Data logged in the manga card data fetching function (useAsyncData) is as follows.
fetch.png
SCR-20230826-u5v.png

Data logged in the image url constructor function is as follows.
image.png
SCR-20230826-u66.png

Sync data between multiple devices

This would require an authentication system, a database (I probably would go with Planetscale).

Best choice currently for the authentication provider is GitHub.

I think for this feature it would be best to wait for Tauri mobile to come out of alpha, though it is not necessarily required to wait for that.

WASM not supported by default / Can't find OpenSSL installation directory

Problem surfaced when I added tauri/http-all as a dependency for the frontend.

       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/target: Ignore(IgnoreMatch(Gitignore(Glob { from: Some("/Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/.gitignore"), original: "/target/", actual: "target", is_whitelist: false, is_only_dir: true })))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/.gitignore: Ignore(IgnoreMatch(Hidden))
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
     Running [tauri_cli::dev] BeforeDevCommand (`trunk serve`)
   Compiling getrandom v0.2.9
   Compiling openssl-sys v0.9.88
   Compiling markup5ever v0.10.1
   Compiling server_fn_macro v0.3.0 (https://github.com/leptos-rs/leptos.git#53efcb98)
   Compiling tao v0.16.2
   Compiling treediff v4.0.2
   Compiling proc-macro-utils v0.5.2
   Compiling typed-builder v0.14.0
error: the wasm*-unknown-unknown targets are not supported by default, you may need to enable the "js" feature. For more information see: https://docs.rs/getrandom/#webassembly-support
   --> /Users/antonfredriksson/.cargo/registry/src/index.crates.io-6f17d22bba15001f/getrandom-0.2.9/src/lib.rs:281:9
    |
281 | /         compile_error!("the wasm*-unknown-unknown targets are not supported by \
282 | |                         default, you may need to enable the \"js\" feature. \
283 | |                         For more information see: \
284 | |                         https://docs.rs/getrandom/#webassembly-support");
    | |________________________________________________________________________^

error[E0433]: failed to resolve: use of undeclared crate or module `imp`
   --> /Users/antonfredriksson/.cargo/registry/src/index.crates.io-6f17d22bba15001f/getrandom-0.2.9/src/lib.rs:337:9
    |
337 |         imp::getrandom_inner(dest)?;
    |         ^^^ use of undeclared crate or module `imp`

For more information about this error, try `rustc --explain E0433`.
error: could not compile `getrandom` (lib) due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
error: failed to run custom build command for `openssl-sys v0.9.88`

Caused by:
  process didn't exit successfully: `/Users/antonfredriksson/GitHub/mangadex-reader/target/debug/build/openssl-sys-8a94047ffddea988/build-script-main` (exit status: 101)
  --- stdout
  cargo:rerun-if-env-changed=WASM32_UNKNOWN_UNKNOWN_OPENSSL_LIB_DIR
  WASM32_UNKNOWN_UNKNOWN_OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_LIB_DIR
  OPENSSL_LIB_DIR unset
  cargo:rerun-if-env-changed=WASM32_UNKNOWN_UNKNOWN_OPENSSL_INCLUDE_DIR
  WASM32_UNKNOWN_UNKNOWN_OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_INCLUDE_DIR
  OPENSSL_INCLUDE_DIR unset
  cargo:rerun-if-env-changed=WASM32_UNKNOWN_UNKNOWN_OPENSSL_DIR
  WASM32_UNKNOWN_UNKNOWN_OPENSSL_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_DIR
  OPENSSL_DIR unset
  cargo:rerun-if-env-changed=OPENSSL_NO_PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_wasm32-unknown-unknown
  cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_wasm32_unknown_unknown
  cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_ALLOW_CROSS
  cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS
  cargo:rerun-if-env-changed=PKG_CONFIG_wasm32-unknown-unknown
  cargo:rerun-if-env-changed=PKG_CONFIG_wasm32_unknown_unknown
  cargo:rerun-if-env-changed=TARGET_PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_wasm32-unknown-unknown
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_wasm32_unknown_unknown
  cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_SYSROOT_DIR
  cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
  run pkg_config fail: pkg-config has not been configured to support cross-compilation.

  Install a sysroot for the target platform and configure it via
  PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_PATH, or install a
  cross-compiling wrapper for pkg-config and set it via
  PKG_CONFIG environment variable.

  --- stderr
  thread 'main' panicked at '

  Could not find directory of OpenSSL installation, and this `-sys` crate cannot
  proceed without this knowledge. If OpenSSL is installed and this crate had
  trouble finding it,  you can set the `OPENSSL_DIR` environment variable for the
  compilation process.

  Make sure you also have the development packages of openssl installed.
  For example, `libssl-dev` on Ubuntu or `openssl-devel` on Fedora.

  If you're in a situation where you think the directory *should* be found
  automatically, please open a bug at https://github.com/sfackler/rust-openssl
  and include information about your system as well as this message.

  $HOST = aarch64-apple-darwin
  $TARGET = wasm32-unknown-unknown
  openssl-sys = 0.9.88

  ', /Users/antonfredriksson/.cargo/registry/src/index.crates.io-6f17d22bba15001f/openssl-sys-0.9.88/build/find_normal.rs:190:5
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 0 literals, 1 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/Cargo.toml: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/tauri.macos.conf.json: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/tauri.conf.json: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/target: Ignore(IgnoreMatch(Gitignore(Glob { from: Some("/Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/.gitignore"), original: "/target/", actual: "target", is_whitelist: false, is_only_dir: true })))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/Cargo.lock: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/build.rs: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/.gitignore: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/icon.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square30x30Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square150x150Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/icon.icns: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/StoreLogo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square107x107Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square89x89Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square310x310Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/icon.ico: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square142x142Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/128x128.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square284x284Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/32x32.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square44x44Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/Square71x71Logo.png: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons/[email protected]: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/src/main.rs: Ignore(IgnoreMatch(Override(Glob(UnmatchedIgnore))))
        Info [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri for changes...
       Debug [globset] built glob set; 0 literals, 3 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 3 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 5 literals, 2 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [globset] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 0 suffixes, 0 required extensions, 0 regexes
       Debug [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/Cargo.toml for changes...
       Debug [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/tauri.macos.conf.json for changes...
       Debug [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/tauri.conf.json for changes...
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/target: Ignore(IgnoreMatch(Gitignore(Glob { from: Some("/Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/.gitignore"), original: "/target/", actual: "target", is_whitelist: false, is_only_dir: true })))
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/Cargo.lock: Ignore(IgnoreMatch(Gitignore(Glob { from: Some("/var/folders/p2/61cbgnxd1fzd4nyxdmcwvp4w0000gn/T/.tauri-dev/.gitignore"), original: "Cargo.lock", actual: "**/Cargo.lock", is_whitelist: false, is_only_dir: false })))
       Debug [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/build.rs for changes...
       Debug [ignore::walk] ignoring /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/.gitignore: Ignore(IgnoreMatch(Hidden))
       Debug [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/icons for changes...
       Debug [tauri_cli::interface::rust] Watching /Users/antonfredriksson/GitHub/mangadex-reader/src-tauri/src for changes...
�[0m�[0m�[1m�[32m   Compiling�[0m tauri-app v0.0.0 (/Users/antonfredriksson/GitHub/mangadex-reader/src-tauri)
�[0m�[0m�[1m�[36m    Building�[0m [=======================> ] 308/309: tauri-app(bin)              
�[K�[0m�[0m�[1m�[32m    Finished�[0m dev [unoptimized + debuginfo] target(s) in 1.29s
       Debug [ureq::stream] connecting to raw.githubusercontent.com:443 at [2606:50c0:8001::154]:443
       Debug [rustls::client::hs] No cached session for DnsName(DnsName(DnsName("raw.githubusercontent.com")))
       Debug [rustls::client::hs] Not resuming any session
       Debug [rustls::client::hs] Using ciphersuite TLS13_AES_256_GCM_SHA384
       Debug [rustls::client::tls13] Not resuming
       Debug [rustls::client::tls13] TLS1.3 encrypted extensions: [ServerNameAck]
       Debug [rustls::client::hs] ALPN protocol is None
       Debug [rustls::client::tls13] Ticket saved
       Debug [ureq::stream] created stream: Stream(RustlsStream)
       Debug [ureq::unit] sending request GET https://raw.githubusercontent.com/tauri-apps/tauri/dev/tooling/cli/metadata.json
       Debug [ureq::unit] writing prelude: GET /tauri-apps/tauri/dev/tooling/cli/metadata.json HTTP/1.1
Host: raw.githubusercontent.com
User-Agent: ureq/2.5.0
Accept: */*
accept-encoding: gzip
       Debug [ureq::response] Body entirely buffered (length: 99)
       Debug [ureq::pool] adding stream to pool: https|raw.githubusercontent.com|443 -> Stream(RustlsStream)
       Debug [ureq::unit] response 200 to GET https://raw.githubusercontent.com/tauri-apps/tauri/dev/tooling/cli/metadata.json
       Debug [ureq::stream] dropping stream: Stream(RustlsStream)

Implement IndexedDB

Switch data storage to IndexDB from localStorage.

Reason for this change is that localStorage has a quite small data limit unlike IndexedDB.

Tauri issues

There is currently some issues with tauri running on macos sonoma. They don't seem to be anything bad, but will affect and probably break somethings.

Manga page: Deserializing response fails

When opening the chapter page the page fetches and deserializes the data successfully.

Fetching the data works just fine the problem lies in deserializing that data.

[Error] Unhandled Promise Rejection: RuntimeError: Unreachable code should not be executed (near '...e__h56875eda74031bdc(arg0, arg1, addHeap...')
	<?>.wasm-function[__rust_start_panic] (tauri-app-ui-451a6cf88759b469.js:227:135)
	<?>.wasm-function[rust_panic]
	<?>.wasm-function[std::panicking::rust_panic_with_hook::h039f5419503f0164]
	<?>.wasm-function[std::panicking::begin_panic_handler::{{closure}}::h7325d367fef07b2d]
	<?>.wasm-function[std::sys_common::backtrace::__rust_end_short_backtrace::h53520acd8fe8aebc]
	<?>.wasm-function[rust_begin_unwind]
	<?>.wasm-function[core::panicking::panic_fmt::h4dd928da5b37757b]
	<?>.wasm-function[core::panicking::panic::h9c6576f483d1a11b]
	<?>.wasm-function[core::option::Option<T>::unwrap::h7c8b891edcabd96e]
	<?>.wasm-function[tauri_app_ui::routes::manga::Manga::__Manga::{{closure}}::{{closure}}::{{closure}}::{{closure}}::{{closure}}::h94b39d629cb9e1b4]
	<?>.wasm-function[leptos_dom::components::fragment::Fragment::lazy::h314b7746c55e47f1]
	<?>.wasm-function[tauri_app_ui::routes::manga::Manga::__Manga::{{closure}}::{{closure}}::{{closure}}::{{closure}}::h9db8436a3465f5fa]
	<?>.wasm-function[core::ops::function::FnOnce::call_once{{vtable.shim}}::he48a3a420f641975]
	<?>.wasm-function[<alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hd20b31c57126e8cc]
	<?>.wasm-function[leptos_router::components::link::A::__A::inner::hc9f43f6e96460070]
	<?>.wasm-function[leptos_router::components::link::A::__A::h0f4128d5cbb8b63e]
	<?>.wasm-function[leptos_router::components::link::A::{{closure}}::h85b6a3352a7f02e5]
	<?>.wasm-function[<leptos_dom::components::Component<F,V> as leptos_dom::IntoView>::into_view::{{closure}}::{{closure}}::h83e5eaf3811afcb3]
	<?>.wasm-function[leptos_reactive::scope::Scope::untrack::{{closure}}::h3dddf8e6fa03aa84]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::{{closure}}::hf7e1879bc2e75401]
	<?>.wasm-function[std::thread::local::LocalKey<T>::try_with::he2da240b3a34fca1]
	<?>.wasm-function[std::thread::local::LocalKey<T>::with::h81734b4542134d23]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::hc9e013a588bc54c6]
	<?>.wasm-function[leptos_reactive::scope::Scope::untrack::h653f5243b040883b]
	<?>.wasm-function[<leptos_dom::components::Component<F,V> as leptos_dom::IntoView>::into_view::{{closure}}::hee5589ca457a29f4]
	<?>.wasm-function[leptos_reactive::runtime::RuntimeId::run_scope_undisposed::{{closure}}::h05e75cb7a84750ee]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::{{closure}}::h1c3df017e1038193]
	<?>.wasm-function[std::thread::local::LocalKey<T>::try_with::haa57a18ace343796]
	<?>.wasm-function[std::thread::local::LocalKey<T>::with::h6cb060a696759b6b]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::hb391be7c5831df39]
	<?>.wasm-function[leptos_reactive::runtime::RuntimeId::run_scope_undisposed::h1687b159ef701fdc]
	<?>.wasm-function[leptos_reactive::scope::Scope::run_child_scope::hfc2b49a75d192fed]
	<?>.wasm-function[<leptos_dom::components::Component<F,V> as leptos_dom::IntoView>::into_view::had275b79ad764a0d]
	<?>.wasm-function[tauri_app_ui::routes::manga::Manga::__Manga::{{closure}}::{{closure}}::{{closure}}::h31655f1e50dcaf40]
	<?>.wasm-function[leptos_dom::components::fragment::Fragment::lazy::h6ddc531830ab3115]
	<?>.wasm-function[tauri_app_ui::routes::manga::Manga::__Manga::{{closure}}::{{closure}}::h257eafebc208caba]
	<?>.wasm-function[core::iter::adapters::map::map_fold::{{closure}}::h3be0300149ffbf9e]
	<?>.wasm-function[core::iter::traits::iterator::Iterator::fold::h00895b45543985ce]
	<?>.wasm-function[<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold::hc2211fa0a1200689]
	<?>.wasm-function[core::iter::traits::iterator::Iterator::for_each::h4e883c640822cb09]
	<?>.wasm-function[alloc::vec::Vec<T,A>::extend_trusted::hff4a295d62f07e7a]
	<?>.wasm-function[<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend::h961ba6128f48f2f2]
	<?>.wasm-function[<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter::hcabf9e78e818b52c]
	<?>.wasm-function[alloc::vec::in_place_collect::<impl alloc::vec::spec_from_iter::SpecFromIter<T,I> for alloc::vec::Vec<T>>::from_iter::hfd578151de73fb21]
	<?>.wasm-function[<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter::hbd0626c62be0e3c8]
	<?>.wasm-function[core::iter::traits::iterator::Iterator::collect::hddc5d62701eae7b4]
	<?>.wasm-function[tauri_app_ui::routes::manga::Manga::__Manga::{{closure}}::h3b959c47244f125d]
	<?>.wasm-function[<leptos_dom::components::dyn_child::DynChild<CF,N> as leptos_dom::IntoView>::into_view::{{closure}}::hb267e7b6f05ef50f]
	<?>.wasm-function[<alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h9f54bbd0a13ac1b8]
	<?>.wasm-function[<leptos_dom::components::dyn_child::DynChild<CF,N> as leptos_dom::IntoView>::into_view::create_dyn_view::{{closure}}::{{closure}}::h15886ba175799d28]
	<?>.wasm-function[leptos_reactive::runtime::RuntimeId::run_scope_undisposed::{{closure}}::hc4ab4c78e129f673]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::{{closure}}::hc41c6e8936c51c74]
	<?>.wasm-function[std::thread::local::LocalKey<T>::try_with::h25f3a814fd8fb75a]
	<?>.wasm-function[std::thread::local::LocalKey<T>::with::h7c16e65813308fee]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::h03fe38bd0b372b32]
	<?>.wasm-function[leptos_reactive::runtime::RuntimeId::run_scope_undisposed::h7d785d3843bc84e1]
	<?>.wasm-function[leptos_reactive::scope::Scope::run_child_scope::h187e7d73e7c3c2d8]
	<?>.wasm-function[<leptos_dom::components::dyn_child::DynChild<CF,N> as leptos_dom::IntoView>::into_view::create_dyn_view::{{closure}}::hcb4c1f29f8c8150a]
	<?>.wasm-function[<leptos_reactive::effect::Effect<T,F> as leptos_reactive::effect::AnyComputation>::run::h371f9ba29fa2292d]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::update::{{closure}}::haecff5fb0c5eeeb2]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::with_observer::ha464a55626c20133]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::update::h8cf8e9fea0caa897]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::update_if_necessary::h365b4c8a4f3f267a]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::run_your_effects::h2dacd3a4d8dfaa79]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::run_effects::{{closure}}::hbd75f6cdfa3c8525]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::{{closure}}::h7681193392bbae91]
	<?>.wasm-function[std::thread::local::LocalKey<T>::try_with::he32f77d4350bb2d0]
	<?>.wasm-function[std::thread::local::LocalKey<T>::with::h8c260c302e45d176]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::haee2d75ce87f600d]
	<?>.wasm-function[leptos_reactive::runtime::Runtime::run_effects::h1c196b55e216d083]
	<?>.wasm-function[leptos_reactive::signal::<impl leptos_reactive::node::NodeId>::update::{{closure}}::hab6c2c8584be73dc]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::{{closure}}::h0fb87bc827cc1828]
	<?>.wasm-function[std::thread::local::LocalKey<T>::try_with::h957a2b7f970a52eb]
	<?>.wasm-function[std::thread::local::LocalKey<T>::with::hfacd402af1bfad0d]
	<?>.wasm-function[leptos_reactive::runtime::with_runtime::h113dd289e3332e08]
	<?>.wasm-function[leptos_reactive::signal::<impl leptos_reactive::node::NodeId>::update::hc526d8c26258959b]
	<?>.wasm-function[<leptos_reactive::signal::WriteSignal<T> as leptos_reactive::signal::SignalUpdate<T>>::update::h5e61dbcd80a148ab]
	<?>.wasm-function[leptos_reactive::resource::ResourceState<S,T>::load::{{closure}}::{{closure}}::hcc6b5b617c5e9cdd]
	<?>.wasm-function[wasm_bindgen_futures::task::singlethread::Task::run::h6929925e1e1395e0]
	<?>.wasm-function[wasm_bindgen_futures::queue::QueueState::run_all::hd49b82193eef35cc]
	<?>.wasm-function[wasm_bindgen_futures::queue::Queue::new::{{closure}}::hf690a5ef75b226e1]
	<?>.wasm-function[<dyn core::ops::function::FnMut<(A,)>+Output = R as wasm_bindgen::closure::WasmClosure>::describe::invoke::h56875eda74031bdc]
	wasm-stub
	__wbg_adapter_38 (tauri-app-ui-451a6cf88759b469.js:227:135)
	real (tauri-app-ui-451a6cf88759b469.js:204)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.