Comments (5)
This is likely related to the issues with importing anime in the new queue. The cross-references are already made when it's matched, and the episodes should be available at this point.
@da3dsoul can correct me if I'm wrong.
from shokoserver.
It's possible. I cannot confirm or deny without experimenting
from shokoserver.
Just quickly confirming... I continue to get this behaviour in the most recent build, 6f910d9.
A trimmed log is available as per the below (with the errors thrown by my own plugin being initially triggered by the OnFileMatched
event).
example.log
from shokoserver.
@fearnlj01 starting in ecc1917 you can use the IReadOnlyList<IVideoCrossReference> CrossReferences
on the IVideo
to check if the cross-references has been made, and also get the episode ids to look out for in the episode updated event (when filtering the UpdateReason Reason
to UpdateReason.Added
or UpdateReason.Updated
on the event), if the episodes are empty on the file matched event data. I don't think we can guarantee that the episode/anime metadata is available when the matched event is dispatched, but now you can at least react to it.
Alternatively since IReadOnlyList<IVideoCrossReference> CrossReferences
has also been added to the IEpisode
interface then you can store the video ED2K hashes that didn't have the episode events, then later in the episode updated event look for them to "resume" what you were going to do once the cross-references were available.
Either way, it should be even easier to handle when the cross-references are made but before the episodes are added now compared to before.
from shokoserver.
I don't think we can guarantee that the episode/anime metadata is available when the matched event is dispatched
In hindsight, it's more surprising that this information was seemingly always available given when you would logically expect a file match event to be fired.
The alterations as you've described should be more than enough to suit my needs.
Unless there were any plans on deferring the OnFileMatched
event to a point in time after cross references are acquired (which wouldn't really make sense...) then I can't see any reason that this issue would remain open, so I'll close this as a happy resolution.
Thanks for the changes!
from shokoserver.
Related Issues (20)
- MySQL Database Connection Error on First Installation of Shoko Server HOT 5
- Sort the directories in the "Select Import Folder" of the WebUI by name (human-readable preferably) HOT 2
- Integrity Check HOT 1
- Blue Exorcist Not Grouping Properly HOT 2
- "Remove Missing Files (Keep in MyList)" action removes entries from MyList HOT 2
- v3/Series/Search Not Returning Results for Search Term: 86 HOT 1
- TypeError: exclusions.split is not a function HOT 2
- Feature Request: Configure number of workers from WebUI HOT 4
- Feature request: Add receive timeout to UDP AniDBSocketHandler HOT 3
- Crash when attempting to index an open read/only file HOT 1
- Feature Request: Ability to decide which sites to use for connectivity testing. HOT 3
- Change/feature request - Sorting of Groups in Webui file summary endpoint HOT 3
- Server not piciking certain anime when scanned. (Armitage III) HOT 5
- Remove deprecated "Import.Hash_*" settings from json config
- v3 API Series Search Failing with Japanese Search Queries HOT 1
- Condition addition for delete by preference - based on ImportFolder
- [feature request] Make filehash single threaded HOT 4
- Filter: "Has Missing Episodes" Returning Some Results Without Missing Episodes
- Download MediaInfo libraries on build instead of versioning binaries.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from shokoserver.