1099 Commits

Author SHA1 Message Date
Joseph Milazzo
584348c6ad
Special Marker Changes (#306)
* SP# is now a way to force the file to be a special rather than pushing it into a Specials folder.

* Made it so if there is a Special (for any Parse call), volume and chapters will be ignored.

* Fixed a unit test missing Theory and fixed a regex case
2021-06-14 21:12:37 -05:00
Joseph Milazzo
46b60405b1
Special Markers (#305)
* Removed "Anthology" from being a special parsing keyword as series are being found where "Anthology" is in the series name.

* SP# is now a way to force the file to be a special rather than pushing it into a Specials folder.
2021-06-14 17:35:13 -05:00
Joseph Milazzo
f8aba21acd
Removed "Anthology" from being a special parsing keyword as series are being found where "Anthology" is in the series name. (#304) 2021-06-14 17:21:01 -05:00
Joseph Milazzo
16a77fa8d6
Download Support (#298)
* Implemented the ability to download files (series, volume, chapter)

* Added RBS checks to ensure user is either an admin or has download role

* Added the ability to change a users feature RBS. Changed the Role seed to use reflection
2021-06-10 07:47:35 -05:00
Kizaing
4ae9f078b0
Feature/docker stable setup (#296)
* Added stable docker workflow

* Changed webui pull to develop
2021-06-09 10:10:06 -05:00
Robbie Davis
b61da7eb08
Update nightly-docker.yml (#295)
Added discord notification action to nightly-docker workflow.

https://github.com/marketplace/actions/discord-webhook-notify
2021-06-08 13:54:52 -05:00
Kizaing
560b0c9cb5
Feature/docker setup (#294)
* Github Action for Docker Integration on merge into develop

Co-authored-by: Chris Plaatjes <chris.p@boxbrite.com>
2021-06-08 13:20:36 -05:00
Joseph Milazzo
8d8e7ce93b
Book Grouping (#292)
* Implemented the ability to group books by series if certain calibre tags are in the epub.
2021-06-08 12:33:54 -05:00
Robbie Davis
d261449275
Adding releases to be sent to discord (#291)
Uses: https://github.com/marketplace/actions/discord-styled-releases-patch-notes
2021-06-08 12:16:31 -05:00
Robbie Davis
4f29cf7cc7
Bugfix/manga reader pad zeros (#288)
* Switched to using existing NaturalSortComparer for ordering filenames before we reprocess them to ensure they are in the correct natural reading order.

Co-authored-by: Joseph Milazzo <joseph.v.milazzo@gmail.com>
2021-06-08 08:59:47 -05:00
Joseph Milazzo
7dae1da92f
Logging Enhancements (#285)
* If the user is on Debug, allow logging DB params to the logger. Implemented the ability to change logger from UI and to keep the DB settings of LogLevel and Port in sync with appsettings.

* Exclude a lot more clutter from hitting Sentry

* Removed github action

* Small cleanup
2021-06-07 17:52:11 -05:00
Joseph Milazzo
6f124b6f8a
Add try catch on Parser MinimumNumberFromRange in case something weird gets put in here. (#283) 2021-06-07 16:12:07 -05:00
Kizaing
d00cf7de92
Merged Dockerfiles (#282)
* Dockerfile re-imagined to handle all flavors in one script.
2021-06-07 16:04:08 -05:00
Joseph Milazzo
41a5d1bf2c
Fixed a bug on getting next/previous chapters where if chapters were … (#281)
* Fixed a bug on getting next/previous chapters where if chapters were not inserted into the DB in the natural order, then the next/prev chapter would be skewed.

* Make GetNextChapterId static
2021-06-07 14:49:38 -05:00
Joseph Milazzo
5259a1484a
Implemented the ability to configure the default port for non-docker users. Docker users will always be 5000. (#280) 2021-06-07 14:36:35 -05:00
Joseph Milazzo
4606b54603
Removed the SeriesMetadata migration since users have updated to v0.4.1. Any other users will require a scan to get the SeriesMetadata generated. (#275) 2021-06-07 13:16:50 -05:00
Joseph Milazzo
e4a9c468fe Version bump and reduced some sentry logs 2021-06-07 11:32:26 -05:00
Joseph Milazzo
f0f74e867e
Fixed the constraint issue with Metadata and ensure we log parameters on development modes. (#273) v0.4.1.1 2021-06-06 16:13:07 -05:00
Joseph Milazzo
b5bd618280
v0.4.1 merge to stable (#272)
* Fix directory issue when building all the packages where directory got skewed. (#98)

* Bump version for patch release due to bug in continue fuctionality. (#104)

* Chore/version bump (#106)

* Bump version for patch release due to bug in continue fuctionality.

* Added develop branch for github actions

* Updated readme to have an image and support link. (#107)

* Feature/readme (#109)

* Updated readme to have an image and support link.

* Updated readme

* Fixed a bug where if a chapter had multiple archive files, they wouldn't all be extracted due to short circuit in ExtractArchive. Now I add the file id then flatten afterwards. (#113)

* Bugfix/multiple file extract (#116)

* Fixed a bug where if a chapter had multiple archive files, they wouldn't all be extracted due to short circuit in ExtractArchive. Now I add the file id then flatten afterwards.

* Fixed a bug where due to how we were extracting for multiple files, the single file extractions failed.

* Bumped release for 3.5 release

* Comic Support (#119)

* Implemented some basic regex for comic support

* Implemented support for comics

* empty filenames, like .test.jpg shouldn't be counted as image types.

* Fixed some regex for Manga's with commas or version tags in parenthesis.

* More cases for parsing regex

* Lots of Parsing Enhancements (#120)

* More cases for parsing regex

* Implemented the ability to parse "Special" keywords.

* Commented out some unit tests

* More parsing cases

* Fixed unit tests

* Fixed typo in build script

* Parsing Enhancements (#126)

* More cases for parsing regex

* Implemented the ability to parse "Special" keywords.

* Commented out some unit tests

* More parsing cases

* Fixed unit tests

* Fixed typo in build script

* Fixed a bug where if there was a series with same name, but different capitalization, we wouldn't process it's infos.

* Tons of regex updates to handle more cases.

* More regex tweaking to handle as many cases as possible.

* Bad merge caused the comic parser to break. Fixed with some better regex.

* Parser Enhancement: Fallback to Folder name (#129)

* More cases for parsing regex

* Implemented GetFoldersTillRoot for falling back on parsing when we can't get anything from the filename.

* Implemented a fallback strategy. Not tested on large libraries yet.

* Fallback tested and working great.

* Removed a test case that won't pass and added some trims

* Update README.md

Added build steps

* Update README.md (#130)

Added docker link

* Special Grouping (#134)

* More cases for parsing regex

* Implemented a change to fix old special grouping. Added some TODOs as well for a future enhancement

* Don't go to archive file if it hasn't updated since last scan (#135)

* Skip archive work unless the file has actually changed since last scan.

* In Progress Activity Stream Fixes (#136)

* Fixed a bug in In-Progress where it wasn't properly fetching series.

* Fixed a bug where chapter cover images weren't being updated due to a missed not.

* Removed a piece of code that was needed for upgrading, since all beta users agreed to wipe db.

* Fixed InProgress to properly respect order and show more recent activity first. Issue is with IEntityDate LastModified not updating in DataContext.

* Updated dependencies to lastest stable.

* LastModified on Volumes wasn't updating, validated it does update when data is changed.

* In Progress Query Update (#145)

* Fixed a bug where chapter cover images weren't being updated due to a missed not.

* Removed a piece of code that was needed for upgrading, since all beta users agreed to wipe db.

* Fixed InProgress to properly respect order and show more recent activity first. Issue is with IEntityDate LastModified not updating in DataContext.

* Updated dependencies to lastest stable.

* LastModified on Volumes wasn't updating, validated it does update when data is changed.

* Performance, Scan Loop, Specials, and cleanup (#150)

* More cases for parsing regex

* Fixed a bug where chapter cover images weren't being updated due to a missed not.

* Removed a piece of code that was needed for upgrading, since all beta users agreed to wipe db.

* Fixed InProgress to properly respect order and show more recent activity first. Issue is with IEntityDate LastModified not updating in DataContext.

* Updated dependencies to lastest stable.

* LastModified on Volumes wasn't updating, validated it does update when data is changed.

* Rewrote a check to avoid a small heap object warning.

* Ensure UpdateSeries checks all libraries for unique name.

* Took care of some todos, removed unused imports, on dev go ahead and schedule reoocuring jobs since LiteDB caused the locking issue.

* No Tracking when we aren't using entities.

* Added code to remove abandoned progress rows after a chapter gets deleted.

* RefreshMetadata uses one large query rather than many trips to DB for updating metadata. Significantly faster.

* Fixed a bug where UpdateSeries would always complain about a unique name even when we weren't updating name.

* Files that are linked to a series but can't parse out Vol/Chapter information are properly grouped like other Specials.

* Refresh metadata on UI should call the task directly

* Fixed a bug on updating series to make sure we don't complain if we aren't trying to update the name to an existing name.

* Fixed #142 - Library cards should be sorted.

* Refactored the name of some variables to be more agnostic to comics.

* Implemented ScanLibrary but abandoning it.

* Code Cleanup & removing ScanSeries code.

* Some more tests and new Comparators for natural sorting.

* Fixed #137 - When performing I/O on archives, ignore __MACOSX folders completely.

* Fixed #137 - When performing I/O on archives, ignore __MACOSX folders completely.

* All entities that will show under specials tab should be marked special, rather than just what has a special keyword.

* Don't let specials generate cover images

* Don't let specials generate cover images

* SearchResults should send LocalizedName back since we are searching against it.

* Added some tests around macosx folders found from my actual server.

* Put extra notes about a case where duplicates come about, logger will now tell user about this issue.

* Missed a build issue somehow...

* Some code smells

* Bugfixes! (#157)

* More cases for parsing regex

* Fixed a bug where chapter cover images weren't being updated due to a missed not.

* Removed a piece of code that was needed for upgrading, since all beta users agreed to wipe db.

* Fixed InProgress to properly respect order and show more recent activity first. Issue is with IEntityDate LastModified not updating in DataContext.

* Updated dependencies to lastest stable.

* LastModified on Volumes wasn't updating, validated it does update when data is changed.

* Fixed #152 - Sorting issue when finding cover image.

* Fixed #151 - Sort files during scan.

* Fixed #161 - Remove files that don't exist from chapters during scan.

* Fixed #155 - Ignore images that start with !, expand cover detection by checking for the word cover as well as folder, and some code cleanup to make code more concise.

* Fixed #153 - Ensure that we persist series name changes and don't override on scanning.

* Fixed a broken unit test

* Version bump

* I keep fixing this but it keeps reverting (#158)

* Fixed #165 - Login and Registration will allow case-insensitive usernames now. (#169)

* Cover Image - First and tests (#170)

* Changed how natural sort works to cover more cases

* Changed the name of CoverImage regex for Parser and added more cases.

* Changed how we get result from Task.Run()

* Defer execution of a loop till we really need it and added another TODO for later this iteration.

* Big refactor to cover image code to unify between IOCompression and SharpCompress. Both use methods to find the correct file. This results in one extra loop through entries, but simplifies code signficantly.

In addition, new unit tests for the methods that actually do the logic on choosing cover file and first file.

* Removed dead code

* Added missing doc

* Feature/unit tests (#171)

* Removed a duplicate loop that was already done earlier in method.

* Normalize now replaces underscores

* Added more Parser cases, Added test case for SeriesExtension (Name in List), and added MergeNameTest and some TODOs for where tests should go

* Added a test for removal

* Fixed bad merge

Co-authored-by: Andrew Song <asong641@gmail.com>

* Feature/bugfix and regex (#174)

* Fixed #172

* Fixes #164

* Added a parse test for [Hidoi]_Amaenaideyo_MS_vol01_chp02.rar

* Fix annoying warning about SplitQuery on GetLibraryDtosForUsernameAsync

* Scan Bugfixes (#177)

* Added way  more logging for debugging issue #163.

Fixed #175

* Removed some comment that isn't needed

* Fixed a enumeration issue due to removing while enumerating

* EPUB Support (#178)

* Added book filetype detection and reorganized tests due to size of file

* Added ability to get basic Parse Info from Book and Pages.

* We can now scan books and get them in a library with cover images.

* Take the first image in the epub if the cover isn't set.

* Implemented the ability to unzip the ebup to cache. Implemented a test api to load html files.

* Just some test code to figure out how to approach this.

* Fixed some merge conflicts

* Removed some dead code from merge

* Snapshot: I can now load everything properly into the UI by rewriting the urls before I send them back. I don't notice any lag from this method. It can be optimized further.

* Implemented a way to load the content in the browser not via an iframe.

* Added a note

* Anchor mappings is complete. New anchors are updated so references now resolve to javascript:void() for UI to take care of internally loading and the appropriate page is mapped to it. Anchors that are external have target="_blank" added so they don't force you out of the app and styles are of course inlined.

* Oops i need this

* Table of contents api implemented (rough) and some small enhancements to codebase for books.

* GetBookPageResources now only loads files from within the book. Nested chapter list support and images now use html parsing instead of string parsing.

* Fonts now are remapped to load from endpoint.

* book-resources now uses a key, ensuring the file is in proper format for lookup. Changed chapter list based on structure with one HEADER and nested chapters.

* Properly handle svg resource requests and when there are part anchors that are clickable, make sure we handle them in the UI by adding a kavita-page handler.

* Add Chapter group page even if one isn't set by using first page (without part) from nestedChildren.

* Added extra debug code for issue #163.

* Added new user preferences for books and updated the css so we scope it to our reading section.

* Cleaned up style code

* Implemented ability to save book preferences and some cleanup on existing apis.

* Added an api for checking if a user has read something in a library type before.

* Forgot to make sure the has reading progress is against a user lol.

* Remove cacheservice code for books, sine we use an in-memory method

* Handle svg images as well

* Enhanced cover image extraction to check for a "cover" image if the cover image wasn't set in OPF before falling back to the first image.

* Fixed an issue with special books not properly generating metadata due to not having filename set.

* Cleanup, removed warmup task code from statup/program and changed taskscheduler to schedule tasks on startup only (or if tasks are changed from UI).

* Code cleanup

* Code cleanup

* So much code. Lots of refactors to try to test scanner service. Moved a lot of the queries into Extensions to allow to easier test, even though it's hacky. Support @font-face src:url swaps with ' and ". Source summary information from epubs.

* Well...baseURL needs to come from BE and not from UI lol.

* Adjusted migrations so default values match Entity

* Removed comment

* I think I finally fixed #163! The issue was that when i checked if it had a parserInfo, i wasn't considering that the chapter range might have a - in it (0-6) and so when the code to check if range could parse out a number failed, it treated it like a special and checked range against info's filename.

* Some bugfixes

* Lots of testing, extracting code to make it easier to test. This code is buggy, but fixed a bug where 1) If we changed the normalization code, we would remove the whole db during a scan and 2) We weren't actually removing series properly.

Other than that, code is being extracted to remove duplication and centralize logic.

* More code cleanup and test cleanup to ensure scan loop is working as expected and matches expectaions from tests.

* Cleaned up the code and made it so if I change normalization, which I do in this branch, it wont break existing DBs.

* Some comic parser changes for partial chapter support.

* Added some code for directory service and scanner service along with python code to generate test files (not used yet). Fixed up all the tests.

* Code smells

* Book Feedback and small bugs (#183)

* Remove automatic retry for scanLibraries as if something fails, it wont pass magically. Catch exceptions when opening books for parsing and swallow to ignore the file.

* Delete extra attempts

* Switched to using FirstOrDefault for finding existing series. This will help avoid pointless crashes.

* Updated message when duplicate series are found (not sure how this happens)

* Fixed a negation for deleting volumes where files still exist.

* Implemented the ability to automatically scale the manga reader based on screen size.

* Feature/feedback (#185)

* Remove automatic retry for scanLibraries as if something fails, it wont pass magically. Catch exceptions when opening books for parsing and swallow to ignore the file.

* Delete extra attempts

* Switched to using FirstOrDefault for finding existing series. This will help avoid pointless crashes.

* Updated message when duplicate series are found (not sure how this happens)

* Fixed a negation for deleting volumes where files still exist.

* Implemented the ability to automatically scale the manga reader based on screen size.

* Default to automatic scaling

* Fix an issue where malformed epubs wouldn't be readable due to incorrect keys in the OPF. We now check if key is valid and if not, try to correct it. This makes a page load about a second on malformed books.

* Fixed #176. Refactored the recently added query to be restricted to user's access to libraries.

* Fixed a one off bug with In Progress series

* Implemented the ability to refresh metadata of just a single series directly

* Book Feedback (#190)

* Remove automatic retry for scanLibraries as if something fails, it wont pass magically. Catch exceptions when opening books for parsing and swallow to ignore the file.

* Delete extra attempts

* Switched to using FirstOrDefault for finding existing series. This will help avoid pointless crashes.

* Updated message when duplicate series are found (not sure how this happens)

* Fixed a negation for deleting volumes where files still exist.

* Implemented the ability to automatically scale the manga reader based on screen size.

* Default to automatic scaling

* Fix an issue where malformed epubs wouldn't be readable due to incorrect keys in the OPF. We now check if key is valid and if not, try to correct it. This makes a page load about a second on malformed books.

* Fixed #176. Refactored the recently added query to be restricted to user's access to libraries.

* Fixed a one off bug with In Progress series

* Implemented the ability to refresh metadata of just a single series directly

* Fixed a parser case where Series c000 (v01) would fail to parse the series

* Fixed #189. In Progress now returns data properly for library access and in multiple libraries.

* Fixed #188 by adding an extra message for bad login and updating UI

* Generate a fallback for table of contents by parsing the toc file (if we can find one)

* Bugfixes/misc (#196)

* Removed an error log statment which wasn't valid. Was showing error when a comicinfo.xml was not found in a directory.

* Fixed #191. Don't overwrite summary information if we already have something set from UI.

* Fixes #192

* Fixed #194 by moving the Take to after the query runs, so we take only distinct series.

* Added another case for Regex parsing for VanDread-v01-c01.zip

* Tap to Paginate User Pref (#197)

* Fixed In Progress and removed comments

* Tap to Paginate user setting is implemented. Fixes #193

* Implemented the ability to move between volumes (reading) automatically without existing the app. (#198)

* Feature/tech debt (#199)

* Added an icon for building the exe

* Technical debt

* Updated Readme for recruitment

* Regex addition (#200)

* Implemented Dark Mode (#203)

* Fixed #204. Raised max password to 32 characters (#205)

* Fixed #206 (#207)

* Sentry Integration (#212)

* Fixed a parsing case

* Integrated Sentry into the solution with anonymous users. Fixed some parsing issues and added BuildInfo into a separate project.

* Fixed some bad parser regex

* Removed bad reference to NLog

* Cleanup of some files not needed

* Bugfix/parser (#214)

* Fixed #211

* Fixed #213. Somehow a + 1 got removed

* Tell sentry to ignore some noisy messages, add a bounds check on an API, and tweak some ERRORs to be WARNINGs to better reflect their severity. (#216)

* Implemented the ability to change the JWT key on runtime. (#217)

* Implemented the ability to change the JWT key on runtime.

* Added .7z file extension support

* Cleanup

* Added Feathub link

* Code cleanup

* Fixed up a build issue on CI

* Reverted a NPE check to better support reflection method

* More regex! Bonus is now a keyword for specials (#220)

* Bugfixes (#221)

* More regex! Bonus is now a keyword for specials

* Regex enhancement, Sort chapters on next/prev chapter to ensure they always in proper order, and don't set JWT on starup when in development mode.

* MinimumNumberFromRange exception (#222)

* More regex! Bonus is now a keyword for specials

* Regex enhancement, Sort chapters on next/prev chapter to ensure they always in proper order, and don't set JWT on starup when in development mode.

* Fixes KAVITA-H. Check to ensure non numeric characters are not in range string before attempting to parse a float out.

* Added Dockerfiles to main repo (#225)

* Added Dockerfiles

* Updated README with Docker instructions (#226)

* Add arm dockerfile

* Added Docker instructions

* Bugfix: Flatten wasn't consistent (#227)

* Ensure that when caching, the order of the cached files remains the same way as if we manually navigated through nested folders.

* Fixed #224. Sort before getting a First?Last() chatper

* Fixed #224. Sort before getting a First?Last() chatper (#228)

* More build flavors for Raspberry Pi users and updated Install since we don't need users to set their own JWT Token Key. Update a typo in appsettings.json file for prod.

* Bugfix/appsettings (#229)

* More build flavors for Raspberry Pi users and updated Install since we don't need users to set their own JWT Token Key. Update a typo in appsettings.json file for prod.

* Collection Support (#234)

* Readme refactored to be more clean and clear, taking inspiration from wiki.js's readme.

* Initial backend for Collections and basic metadata implemented.

* More build flavors for Raspberry Pi users and updated Install since we don't need users to set their own JWT Token Key. Update a typo in appsettings.json file for prod.

* Fixed #224. Sort before getting a First?Last() chatper

* The rough ability to add and get series metadata and tags.

* Fix a bug on getting metadata for when it doesn't exist.

* Fixed a bug where flattening directories with some unique filenames could cause reading order of images to be out of order.

* Added a seed code to ensure all series have SeriesMetdata

* Ensure all instances of opening an epub is using "using" so we don't lock the file. When we have a malformed html file, log the issues and inform the user we can't open the file.

* Book reader now handles @Import "" statements in CSS and inlines the css into css file that references them. This allows for them to be scoped. In addition, if the html or body tag had classes, we now send back a single div with those classes.

* Fixed GetSeriesDtoForCollectionAsync which was not properly returning series

* Implemented cover image for collection tag. Fixed an issue in metadata update call.

* Add check for user access when resolving series for a collection tag. When asking for all tags, if the user is not an admin, only give promotoed tags back.

* Implemented updateTag api

* Implemented the ability to update series the tags have access to.

* Cleanup, sorting, and null check

* More sorting changes

* Ensure we can delete tags when editing a series tags

* Fix order of update to make sure a tag is properly deleted

* Code smells

* TokenKey Generation (#235)

* Fixed #223. Now we generate a 128 byte JWT token key (recommendation) for user on first run.

* Reduce Unauthenticated Errors in Sentry (#238)

* Updated README to be explicit that kavita.db needs to be writable.

* Implemented a new Exception type that is for throwing a message to UI without logging in Sentry.

* CB7 Support (#241)

* Added CB7 file extension support

* Bugfix/sentry and fixes (#243)

* Generate SeriesMetadata when creating Series from Scanner.

* Ignore errors from BookService

* Fixed a case where we used First() when it should have been FirstOrDefault() to fail when there are no cover images (or images)

* Chore/docker build (#245)


* Added a docker script for nightly builds.

* fix: wrong password length validation when registering a new user or resetting password (#247)

#244

Co-authored-by: leo2d <contato.leonardod@yahoo.com>

* Docker Build Turn off (#248)

Turn off the Docker Build CI stuff, will look into it later.

Changed pagination default to 30 and version bump.

* Added book reader reading direction preference (#249)

* fix: error when resetting password of a non admin user (#252)

Fixes #246

* feat: remove Webtoon option from Library Types (#254)

Fixes #251

* Book Reading Progress Enhancement (#259)

* Added book reader reading direction preference

* Adds a new marker to the AppUserProgress to capture nearest anchor for resuming scroll point when reading books. Refactored bookmark api to return a BookmarkDto which includes this new data.

* Bugfix/anchor rewriting (#260)

* Added book reader reading direction preference

* Adds a new marker to the AppUserProgress to capture nearest anchor for resuming scroll point when reading books. Refactored bookmark api to return a BookmarkDto which includes this new data.

* Fixed the readme image displaying issue and changed up a bit more of the layout.

* Recently Added Page (#261)

- Updated route task for 'recently-added'.
- Refactored GetRecentlyAdded task instead of creating new API task. This way is more efficient and prevents bloat.
- Adding pageSize to UserParams.cs (got lost in PRs).

* Don't log exceptions to Sentry when debugging locally. Fixed a constraint issue with collection tags that prevented deleting series. Ensure when we scan we add SeriesMetadata objects to existing series. (#265)

* Set Version to v0.4.0

* Fixed a critical crash in Scan library where Series Metadata was getting regenerated and unique constraint failed. (#269)

Co-authored-by: Andrew Song <asong641@gmail.com>
Co-authored-by: Kizaing <kizaing@gmail.com>
Co-authored-by: Leonardo Dias <leo.rock14@gmail.com>
Co-authored-by: leo2d <contato.leonardod@yahoo.com>
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
2021-06-06 15:25:50 -05:00
Joseph Milazzo
ee3cb9ede8 Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-06-06 09:08:10 -05:00
Joseph Milazzo
cdd01ee919 Merged develop into main 2021-06-06 09:01:19 -05:00
Joseph Milazzo
8175ddf517
Fixed a critical crash in Scan library where Series Metadata was getting regenerated and unique constraint failed. (#269) 2021-06-05 16:30:50 -05:00
Joseph Milazzo
8211f1ce0e Set Version to v0.4.0 v0.4.1 2021-06-05 14:12:05 -05:00
Joseph Milazzo
aa7439178c
Don't log exceptions to Sentry when debugging locally. Fixed a constraint issue with collection tags that prevented deleting series. Ensure when we scan we add SeriesMetadata objects to existing series. (#265) 2021-06-04 17:49:19 -05:00
Robbie Davis
606e4c8b12
Recently Added Page (#261)
- Updated route task for 'recently-added'.
- Refactored GetRecentlyAdded task instead of creating new API task. This way is more efficient and prevents bloat.
- Adding pageSize to UserParams.cs (got lost in PRs).
2021-06-04 10:09:33 -05:00
Joseph Milazzo
e6cfa4feca
Bugfix/anchor rewriting (#260)
* Added book reader reading direction preference

* Adds a new marker to the AppUserProgress to capture nearest anchor for resuming scroll point when reading books. Refactored bookmark api to return a BookmarkDto which includes this new data.

* Fixed the readme image displaying issue and changed up a bit more of the layout.
2021-06-03 18:33:24 -05:00
Joseph Milazzo
4910f1d1d0
Book Reading Progress Enhancement (#259)
* Added book reader reading direction preference

* Adds a new marker to the AppUserProgress to capture nearest anchor for resuming scroll point when reading books. Refactored bookmark api to return a BookmarkDto which includes this new data.
2021-06-03 18:33:13 -05:00
Leonardo Dias
c12879cda9
feat: remove Webtoon option from Library Types (#254)
Fixes #251
2021-06-03 15:46:57 -05:00
Leonardo Dias
b38ea8186e
fix: error when resetting password of a non admin user (#252)
Fixes #246
2021-06-03 12:17:57 -05:00
Joseph Milazzo
03c9b7a11d
Added book reader reading direction preference (#249) 2021-06-03 09:05:07 -05:00
Joseph Milazzo
ec0327272f Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-06-03 08:31:40 -05:00
Joseph Milazzo
863bc57e87
Docker Build Turn off (#248)
Turn off the Docker Build CI stuff, will look into it later.

Changed pagination default to 30 and version bump.
2021-06-03 08:31:23 -05:00
Leonardo Dias
16d6b26c63
fix: wrong password length validation when registering a new user or resetting password (#247)
#244

Co-authored-by: leo2d <contato.leonardod@yahoo.com>
2021-06-03 07:16:32 -05:00
Joseph Milazzo
6c67f73898
Chore/docker build (#245)
* Added a docker script for nightly builds.
2021-06-02 07:49:33 -05:00
Joseph Milazzo
215dbde4db Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-06-02 07:27:51 -05:00
Joseph Milazzo
5083608f24
Bugfix/sentry and fixes (#243)
* Generate SeriesMetadata when creating Series from Scanner.

* Ignore errors from BookService

* Fixed a case where we used First() when it should have been FirstOrDefault() to fail when there are no cover images (or images)
2021-06-01 19:42:43 -05:00
Joseph Milazzo
a025225b09 Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-06-01 08:38:26 -05:00
Joseph Milazzo
ce35c4f84a
CB7 Support (#241)
* Added CB7 file extension support
2021-06-01 08:37:46 -05:00
Joseph Milazzo
d3ce3d9eee Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-06-01 08:30:36 -05:00
Joseph Milazzo
aaad82cb7a
Reduce Unauthenticated Errors in Sentry (#238)
* Updated README to be explicit that kavita.db needs to be writable.

* Implemented a new Exception type that is for throwing a message to UI without logging in Sentry.
2021-06-01 06:57:46 -05:00
Joseph Milazzo
b0b371cebb Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-05-31 10:17:03 -05:00
Joseph Milazzo
0a39a17407
TokenKey Generation (#235)
* Fixed #223. Now we generate a 128 byte JWT token key (recommendation) for user on first run.
2021-05-31 10:14:39 -05:00
Joseph Milazzo
7e976a1fc0 Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-05-31 09:25:51 -05:00
Joseph Milazzo
d7d7f9b529
Collection Support (#234)
* Readme refactored to be more clean and clear, taking inspiration from wiki.js's readme.

* Initial backend for Collections and basic metadata implemented.

* More build flavors for Raspberry Pi users and updated Install since we don't need users to set their own JWT Token Key. Update a typo in appsettings.json file for prod.

* Fixed #224. Sort before getting a First?Last() chatper

* The rough ability to add and get series metadata and tags.

* Fix a bug on getting metadata for when it doesn't exist.

* Fixed a bug where flattening directories with some unique filenames could cause reading order of images to be out of order.

* Added a seed code to ensure all series have SeriesMetdata

* Ensure all instances of opening an epub is using "using" so we don't lock the file. When we have a malformed html file, log the issues and inform the user we can't open the file.

* Book reader now handles @Import "" statements in CSS and inlines the css into css file that references them. This allows for them to be scoped. In addition, if the html or body tag had classes, we now send back a single div with those classes.

* Fixed GetSeriesDtoForCollectionAsync which was not properly returning series

* Implemented cover image for collection tag. Fixed an issue in metadata update call.

* Add check for user access when resolving series for a collection tag. When asking for all tags, if the user is not an admin, only give promotoed tags back.

* Implemented updateTag api

* Implemented the ability to update series the tags have access to.

* Cleanup, sorting, and null check

* More sorting changes

* Ensure we can delete tags when editing a series tags

* Fix order of update to make sure a tag is properly deleted

* Code smells
2021-05-30 17:24:23 -05:00
Joseph Milazzo
5784bad22a Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-05-20 18:16:23 -05:00
Joseph Milazzo
3c375da10c
Bugfix/appsettings (#229)
* More build flavors for Raspberry Pi users and updated Install since we don't need users to set their own JWT Token Key. Update a typo in appsettings.json file for prod.
2021-05-20 18:16:00 -05:00
Joseph Milazzo
f7e071dd34 More build flavors for Raspberry Pi users and updated Install since we don't need users to set their own JWT Token Key. Update a typo in appsettings.json file for prod. 2021-05-20 18:10:14 -05:00
Joseph Milazzo
68268f567b Merge branch 'develop' of https://github.com/Kareadita/Kavita into develop 2021-05-20 18:09:56 -05:00
Joseph Milazzo
50af2f8ca5
Fixed #224. Sort before getting a First?Last() chatper (#228) 2021-05-20 18:09:15 -05:00
Joseph Milazzo
a0d0f6d699 Fixed #224. Sort before getting a First?Last() chatper 2021-05-20 18:02:41 -05:00