Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update main with latest develop #298

Merged
merged 35 commits into from
Apr 20, 2024
Merged

Update main with latest develop #298

merged 35 commits into from
Apr 20, 2024

Conversation

aaronleopold
Copy link
Collaborator

Another massive diff. I'll leave this up for a week-ish while I continue to do some testing, then merge when I am ready to release 0.0.2. The changelog will highlight all of the features, so I'll be brief here:

  • Rewrite scanner and job system
  • Migrate to yarn from pnpm
  • Add ability to hide libraries from specific users
  • Massive POC mobile app 🥲 @LRotenberger
  • Continuous vertical scroll reader
  • Redesign file explorer and put it in more places
  • Support age rating metadata in EPUB files
  • Misc structural changes and dev things

I'm not necessarily following semver yet, as a patch version change certainly shouldn't have this much content. Keep that in mind, I'll try my best to find any issues in the nightly build

aaronleopold and others added 30 commits February 9, 2024 18:23
* 🎉 Start stateful job rewrite

scuffed

* 🚧 Restore job state

Lots of foundational work

* woof

* Fix incorrect schema items

* Update serde and tokio

* Add worker count config variable

* Add dunder directory for personal progress

* More progress

* Further JobManager progress

* Additional structuing on new manager.

* Additional logic for worker

* Update cargo lock

* Create thumbnail job example

* Add job manager to context and prune context struct.

* General cleanup

* nothing but scuff

* roughing out scanner with new system

* comment

* little bit by little bit

* Tweak scanner logic and add bench

* WIP use criterion for benches

* Benchmarks work!

* WIP subtasks

* WIP persist completed state and main run loop

* WIP use new impl

* WIP progress emitting

* WIP convert thumbnail job

* Push up last nights marathon

* Live log viewer

* Add migration

* WIP get UI job tracking functional again

* WIP cleanup and refactor

* WIP pause/resume

* WIP cleanup and refactor

* Refactor, reorg, clean

* Fix warning

* WIP: start using jms thumbnail manager

* Use the thumbnail manager during job

* WIP impl for missing series_job task

* WIP: consolidate

* WIP: consolidate

* Commit and push cleanup from last night, prep for experimental

---------

Co-authored-by: Joseph Micheli <[email protected]>
* WIP: replace pnpm with yarn

* Replace all pnpm usages

* Fix emoji-mart error

* Add missed generated types

* fix yarn in CI

* fix yarn in CI

* fix yarn in CI

* fix yarn in CI

* fix yarn in CI
* Try fix dockerfile

* Reduce platforms for experimental

* Update base image
* adds expo project

* adds ts

* changes name

* adds tailwindcss using nativewind

* tsconfig fix

* fixes monorepo paths

* adds nativewind + connect screen + auth wip

* connect + login wip

* Adds redirect to home or connect depending on user state

* formatting

* connecting and logging into stump

* pnpm magic

* removes debug console logs

* final poc

* fix cyclic requires

* add fixme comment

* adds expo project

* adds ts

* changes name

* adds tailwindcss using nativewind

* tsconfig fix

* fixes monorepo paths

* adds nativewind + connect screen + auth wip

* connect + login wip

* Adds redirect to home or connect depending on user state

* formatting

* connecting and logging into stump

* removes debug console logs

* final poc

* prettified a bunch of files

* rebase on mobile-app

* rebase

* adds nativewind + connect screen + auth wip

* connect + login wip

* chore(dev): loosen pre-commit hook

* completed migration to primitive components

* 128 appropriate routing setup eg tabs and stack navigators (#130)

* log in goes back to connect. Home does NOT go back to log in.

* Fixes login screen push path

* from settings can go back to home

* Adds logout in the settings

* Miscellaneous UI fixes on Phones and Tablets

* UI Fixes + media support

* WIP: get mobile app working

* almost have something usable

* AH

* kicking screaming crying sobbing pooping

* very basic stack navigation, framework for building first app release

* WIP local storage alternative

* Revert "WIP local storage alternative"

This reverts commit 4b2d422.

* Try (and fail) to fix zustand for RN

* fix zustand? 🙏

* Created basic tab navigation with icons for mobile app

* messing around

* created navigation from libraries -> series -> books

* Add wrapper Link and example hook usage

* Add some supporting components

* Generalizing some components and routes

* added support for comic reader on android + started supporting landscape mode

* continued development on explore/library pages

* added barebones appearance settings

* fix lints

---------

Co-authored-by: Daniele Cambi <[email protected]>
Co-authored-by: Daniele Cambi <[email protected]>
* WIP: vertical scroll reader and full epub search

* Quick fixes from regressions introduced by #271

* ✨ Search entire EPUB text

#269

* WIP: toolbar for vertical reader, incognito reading

* Search results with chapter info, misc cleanup

* Fix merge imports
* Add discord notification for experimental build

* WIP: unify image-based readers a bit

* Stylistic tweaks

* Fix Yomu reader

* Improve preloading options

Relates to #210

* Touchups
* Fix dead docs links

* WIP explorer refactor

* WIP explorer refactor, focus on styles

* 📱 Redesign file explorer and isolate to shared component

Also some bug fixes and optimizations

* Fix clippy lint
Reorganized a bit of the reader screen to account for future readers a bit better, and added a really bare-bones EPUB reader. This frankly will not hold up in time, IMO, and I'll likely either have to move off of epubjs in favor of an alternative that works well with RN or just build something in house.
* WIP findings and fixes

Added new config for live refetch

* Update docs a little

* Migration

* ✨ Additional EPUB metadata

* Small fixes, adjust settings routing

* Fix clippy lint
An enormous amount of changes incoming, currently what is on the `experimental` tag that will be the new `nightly` shortly. I'm on a bug hunt of sorts, and will leave this PR in draft until I feel more confident. A brief overview:

- PNPM -> Yarn
- Scanner rewrite
- Hide libraries from specific users
- Search full text in EPUB
- Vertical continuous scrolling
- Redesign the file explorer and integrate it into more places
- Basic RN app functional!
* New translations en.json (Chinese Simplified)

* New translations en.json (Romanian)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Afrikaans)

* New translations en.json (Arabic)

* New translations en.json (Catalan)

* New translations en.json (Czech)

* New translations en.json (Danish)

* New translations en.json (German)

* New translations en.json (Greek)

* New translations en.json (Finnish)

* New translations en.json (Hebrew)

* New translations en.json (Hungarian)

* New translations en.json (Italian)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Dutch)

* New translations en.json (Norwegian)

* New translations en.json (Polish)

* New translations en.json (Portuguese)

* New translations en.json (Russian)

* New translations en.json (Serbian (Cyrillic))

* New translations en.json (Swedish)

* New translations en.json (Turkish)

* New translations en.json (Ukrainian)

* New translations en.json (Chinese Traditional)

* New translations en.json (Vietnamese)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (French)

* New translations en.json (French)

* New translations en.json (French)

* New translations en.json (Romanian)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Afrikaans)

* New translations en.json (Arabic)

* New translations en.json (Catalan)

* New translations en.json (Czech)

* New translations en.json (Danish)

* New translations en.json (German)

* New translations en.json (Greek)

* New translations en.json (Finnish)

* New translations en.json (Hebrew)

* New translations en.json (Hungarian)

* New translations en.json (Italian)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Dutch)

* New translations en.json (Norwegian)

* New translations en.json (Polish)

* New translations en.json (Portuguese)

* New translations en.json (Russian)

* New translations en.json (Serbian (Cyrillic))

* New translations en.json (Swedish)

* New translations en.json (Turkish)

* New translations en.json (Ukrainian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations en.json (English)

* New translations en.json (Vietnamese)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Portuguese)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (German)

* New translations en.json (German)

* 🎨 Isolate `i18n` to separate package

* New translations en.json (French)

* New translations en.json (French)
* Get doctests passing again

* Fix clippy lints

---------

Co-authored-by: Aaron Leopold <[email protected]>
* New translations en.json (Romanian)

* New translations en.json (French)

* New translations en.json (Afrikaans)

* New translations en.json (Arabic)

* New translations en.json (Catalan)

* New translations en.json (Czech)

* New translations en.json (Danish)

* New translations en.json (Greek)

* New translations en.json (Finnish)

* New translations en.json (Hebrew)

* New translations en.json (Hungarian)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Dutch)

* New translations en.json (Norwegian)

* New translations en.json (Polish)

* New translations en.json (Portuguese)

* New translations en.json (Serbian (Cyrillic))

* New translations en.json (Swedish)

* New translations en.json (Turkish)

* New translations en.json (Ukrainian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations en.json (English)

* New translations en.json (Vietnamese)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Portuguese)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Simplified)
* Get doctests passing again

* Fix clippy lints

* Add opds tests and doc comments
* New translations en.json (Polish)

* New translations en.json (Polish)
Fix a small UI issue for mobile/tablet viewports that caused the top-bar to be smaller than it should and the pagination controls on some pages hidden out of frame
via the shared `Pagination` component
Fixed the warning, but the fact that something was even 1000 percent was sus
0.0.2 bug hunting
* 🚧 Arrangeable side-bar and home screen

* WIP: fixed animation

* sync sidebar with arrangement config

* sync topbar with arrangement config

* add migration

* Fix lints, doc comments, hide certain items
* Bump package versions

* Address todos

* More crate version bumps

* Update toolchain to `1.77.2`

* fix check warnings

* fix clippy lints

* fix nit-picks

* Update builder layer to `1.77.2-slim-buster`

* Update pdfium to `6406`

* fix node engine resolution

---------

Co-authored-by: Aaron Leopold <[email protected]>
A somewhat legacy bug is the root cause. Very old user accounts might not have their `user_id` fk set on their associated `user_preferences`. The root is fixed, but the error would crop up for those old accounts. Ideally a future migration will remove the issue entirely, but this will fix the immediate bug as a start
At least what I noticed
* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Polish)

* New translations en.json (Romanian)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Afrikaans)

* New translations en.json (Arabic)

* New translations en.json (Catalan)

* New translations en.json (Czech)

* New translations en.json (Danish)

* New translations en.json (German)

* New translations en.json (Greek)

* New translations en.json (Finnish)

* New translations en.json (Hebrew)

* New translations en.json (Hungarian)

* New translations en.json (Italian)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Dutch)

* New translations en.json (Norwegian)

* New translations en.json (Portuguese)

* New translations en.json (Russian)

* New translations en.json (Serbian (Cyrillic))

* New translations en.json (Swedish)

* New translations en.json (Turkish)

* New translations en.json (Ukrainian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations en.json (English)

* New translations en.json (Vietnamese)

* New translations en.json (Portuguese, Brazilian)
@aaronleopold aaronleopold marked this pull request as ready for review April 20, 2024 20:07
@aaronleopold aaronleopold merged commit dfb6bb8 into main Apr 20, 2024
6 checks passed
@aaronleopold aaronleopold mentioned this pull request Apr 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants