Jordan Petridis
3c7ba8c9d9
Feed: Convert index_channel_items to a Future/Steam impl.
2018-04-18 02:49:21 +03:00
Jordan Petridis
049418c2f5
Feed: clean up clunky impl of indexing episodes.
2018-04-17 12:05:10 +03:00
Jordan Petridis
87421ce74d
Cargo fmt
2018-04-13 04:35:50 +03:00
Jordan Petridis
ae25dd65bf
Cargo clippy and fmt.
2018-02-19 09:58:47 +00:00
Jordan Petridis
44ebe46f10
Replace last bail! invocations.
2018-02-05 19:00:31 +02:00
Jordan Petridis
008f57bec4
Create a ParseEpisodeError and replace bail! invocations.
2018-02-05 18:51:21 +02:00
Jordan Petridis
8ba9f928d6
Switch to using DataError instead of failure::Error.
2018-02-05 02:43:56 +02:00
Jordan Petridis
de43cae015
Switch rest stuff of data/downloader to Failure Crate.
2018-02-04 17:36:27 +02:00
Jordan Petridis
d131c279b9
Add batch indexing fallback.
...
If an RSS feed triggered a unique constrains violation, none of it's
items would be indexed resulting in a Podcast without episodes.
This adds a fallback that indexes each item individually if the batch index fails.
2018-02-03 16:02:42 +02:00
Jordan Petridis
92d01ec51a
Feed: enchance get_stuff unit test.
2018-02-03 15:55:26 +02:00
Jordan Petridis
2912bad110
Pipeline: Split the pipeline from the cpu-pool and the tokio-core.
2018-01-26 13:34:04 +02:00
Jordan Petridis
b370af35d4
Feed: Add a bunch of tests.
2018-01-24 18:42:33 +02:00
Jordan Petridis
8095919bbe
This sort of works?
2018-01-23 10:12:32 +02:00
Jordan Petridis
d231cc165f
Fix batch indexing.
2018-01-22 14:51:31 +02:00
Jordan Petridis
66e816fc5f
Upgrade Diesel to 1.1
2018-01-22 11:22:01 +02:00
Jordan Petridis
843feabf25
NewEpisode: Move the parsing tests, delete old xml files.
2018-01-21 13:35:35 +02:00
Jordan Petridis
4ee5888b7f
NewPodcast: Rename into_podcast method -> to_podcast since it now does not take owenership.
2018-01-21 11:04:15 +02:00
Jordan Petridis
df17a10014
Source: refactor into_feed test.
2018-01-20 16:43:32 +02:00
Jordan Petridis
ef52a026bc
Feed: Add Builder pattern.
2018-01-20 08:46:05 +02:00
Jordan Petridis
855b1517a7
Feed: Removee unimplemented! hack to guard against my future stupidity.
2018-01-19 19:20:21 +02:00
Jordan Petridis
46b6c0d27e
hammond-data: Remove leftover synchronous code.
2018-01-19 15:41:37 +02:00
Jordan Petridis
44dbb06dcc
Add benchmarks for the async path.
2018-01-19 13:15:21 +02:00
Jordan Petridis
e6b0cfccb5
Apply clippy suggestions.
2018-01-19 10:32:25 +02:00
Jordan Petridis
9dc555cad7
Feed: Add an index_async implementation.
2018-01-18 18:57:44 +02:00
Jordan Petridis
1394366f91
hammond-data: Delete some dead code.
2018-01-18 17:04:57 +02:00
Jordan Petridis
6abf2535b0
hammond_data: Make index a trait that requires Insert + Update.
2018-01-18 16:33:07 +02:00
Jordan Petridis
098c5755b0
hammond-data: Do batch indexing of new_episodes.
2018-01-18 13:47:40 +02:00
Jordan Petridis
93372a30d0
1.21 Gigawatts. Remove non-future indexing loop.
...
Tried to have a seperate futures loop but it's too confusign having
too write a Trait2, functon2, etc version of everything and keep it together.
Futures are functional sort of, so the synchronous versioun can be removed.
It still needs a ton of work though to be ready, or even get near the perf
of of the sync+rayon version.
2018-01-18 11:38:24 +02:00
Jordan Petridis
574cfae5c6
rustfmt: enable reorder imports.
2018-01-17 08:57:02 +02:00
Jordan Petridis
e707087e72
hammond_data: Split models::queriables into multiple modules.
2018-01-17 08:45:14 +02:00
Jordan Petridis
3a6f6d8931
hammond_data: Split models::insertables into multiple modules.
2018-01-17 08:27:39 +02:00
Jordan Petridis
3766db2b14
hammond_data: Move parse_podcast into a NewEpisode method.
2018-01-17 07:31:24 +02:00
Jordan Petridis
8174fe0bac
hammond_data: Move parse_episode from parser into a NewEpisode method.
2018-01-17 07:16:59 +02:00
Jordan Petridis
978e5a61f6
Dbquerries: add EXIST querries for podcast and episode.
2018-01-16 17:26:41 +02:00
Jordan Petridis
fa03c20b00
Feed: add parse_channel_items_future method.
2018-01-16 14:52:20 +02:00
Jordan Petridis
b3460b15a2
hammond_data::Feed: add parse_podcast_future method.
2018-01-16 13:44:33 +02:00
Jordan Petridis
7f78e87551
hammond_data::Feed: Remove unused parts.
2018-01-16 12:35:08 +02:00
Jordan Petridis
3358fcd0b3
hammond_data::Feed: general cleanup of no longer needed stuff.
2018-01-15 11:03:40 +02:00
Jordan Petridis
1031315cdd
Getting somewhere?
2018-01-14 06:37:47 +02:00
Jordan Petridis
e4d77a6ba4
Cleanup the id() method mess of the diesel models.
2018-01-13 07:46:56 +02:00
Jordan Petridis
ee9cede921
hammond_data: Remove Source dependancy from Feed struct.
2018-01-13 06:08:51 +02:00
Jordan Petridis
785a5f80c6
hammond-data::utils: Small and minor refactor.
2017-12-31 01:42:28 +02:00
Jordan Petridis
ca06a16bd9
Closes #2 . Kudo to @jwykeham for the fix!.
2017-12-29 02:45:02 +02:00
Jordan Petridis
bfb74c4dba
hammond-data: Index_loop does not wait for GET request to finish now.
2017-12-26 18:18:48 +02:00
Jordan Petridis
b528c48e3b
Run rustfmt.
2017-12-09 05:57:16 +02:00
Jordan Petridis
74a1aae168
Upgraded diesel to 0.99 and switched from the git master into crated.io.
...
Also did a cargo upgrade of all the dependancies.
Notable upgrades are r2d2, lazystatic 1.0, loggerv 0.6 and rss 1.2
2017-12-02 01:39:28 +02:00
Jordan Petridis
e4a7a7becf
Add module Doc comments.
2017-11-28 09:38:05 +02:00
Jordan Petridis
34e808182c
Documented a bit hammond-data/src/feed.rs.
2017-11-27 06:06:14 +02:00
Jordan Petridis
cb65782829
Extended the NewModel builder and added a bunch of unit tests.
2017-11-27 04:32:21 +02:00
Jordan Petridis
ee4f08c5cf
Implemented a BuildPattern for NewModels. Swiched stuff to pub(crate).
...
Added a Constructor for NewModels in order to make their fields private.
Also added getter methods that are mainly used in Unit tests.
2017-11-26 23:30:56 +02:00