Jordan Petridis
39aa86157b
Switch rest of the tests to point to the internet archive urls.
2018-01-26 17:25:35 +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
46b6c0d27e
hammond-data: Remove leftover synchronous code.
2018-01-19 15:41:37 +02:00
Jordan Petridis
e6b0cfccb5
Apply clippy suggestions.
2018-01-19 10:32:25 +02:00
Jordan Petridis
5c5faafc72
Source: Move around code and change some methods signature.
...
request_constructor is now a Source method.
update_etags now takes &mut self instead of mut self.
update_etags now uses source setters methods instead of raw fields.
changed the naming of into_feed to to_feed according to rust convention.
2018-01-19 07:51:55 +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
3358fcd0b3
hammond_data::Feed: general cleanup of no longer needed stuff.
2018-01-15 11:03:40 +02:00
Jordan Petridis
2f7a22355f
Minor cleanup of the mess.
2018-01-14 08:27:50 +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
955845110b
Merge branch 'master' into 33-downloader-re-work
2018-01-09 12:06:38 +02:00
Jordan Petridis
eef83fc98c
EpisodeWidget: Implement API to update the progress bar.
2018-01-08 05:11:37 +02:00
Jordan Petridis
81b1ec810c
Apply clippy suggestions.
2018-01-07 08:36:02 +02:00
Jordan Petridis
e290ae223e
Pixbuf cache: use rwlock where possible.
2018-01-07 07:49:16 +02:00
Jordan Petridis
29837ad39a
Default to using Arc instead of Rc with composite structs of GtkWidgets.
2018-01-04 17:05:05 +02:00
Jordan Petridis
f873278a96
hammond_gtk: Move the gtk callback to an Application channel action.
2018-01-04 16:16:34 +02:00
Jordan Petridis
f30c645596
hammond_gtk: Refactor refresh_feed func to use the Application channel.
2018-01-04 16:05:42 +02:00
Jordan Petridis
ce08d49107
Headerbar: Added update indication.
2017-12-29 22:58:20 +02:00
Jordan Petridis
fdd63afdfe
hammond-gtk: Create Application wide actions.
2017-12-29 16:05:10 +02:00
Jordan Petridis
ca06a16bd9
Closes #2 . Kudo to @jwykeham for the fix!.
2017-12-29 02:45:02 +02:00
Jordan Petridis
55b6fccefd
Make it explicit to run some tests.
2017-12-28 23:46:09 +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
e7185d2cd3
Visual tweaks, and other minor stuff.
...
Added margins bottom margins on EpisodesView and ShowWidget.
Added some comment's to the code.
Silenced needless_pass_by_value clippy warning.
Updated TODO.md.
2017-12-23 16:56:03 +02:00
Jordan Petridis
e416bca963
Implemented a pixbuf cache mechanism.
...
Since gdk_pixbuf::Pixbuf is refference counted and every episode,
use the cover of the Podcast Feed/Show, We can only create a Pixbuf
cover per show and pass around the Rc pointer.
GObjects do not implement Send trait, so SendCell is a way around that.
Also lazy_static requires Sync trait, so that's what the mutexes are.
2017-12-21 17:36:07 +02:00
Jordan Petridis
2e06205eda
Define a new Diesel Model for PodcastCover querries.
...
Define new Diesel Model and impl From<Podcast> trait,
Change the signature of downloader::cache_image function,
Change and merge hammond-gtk::utils::get_pixbuf_from_path functions.
2017-12-20 18:19:31 +02:00
Jordan Petridis
914cad72f5
EpisodesView: Custom Diesel model not really necessary.
2017-12-19 20:45:40 +02:00
Jordan Petridis
895591f628
EpisodesView: Use show cover image.
2017-12-19 13:19:38 +02:00
Jordan Petridis
35009e2574
Added an auto-updater that runs each hour.
2017-12-17 13:44:00 +02:00
Jordan Petridis
c74153f56a
Initial implementation of the new ShowWidget.
2017-12-15 18:42:49 +02:00
Jordan Petridis
01310ee7fa
Working non-state machine stack implementation.
...
Removed the stack state-machines. It was confusing trying to both
implement statemachines and re-design the stack architecture at the same time.
2017-12-12 16:01:19 +02:00
Jordan Petridis
ddb195db3c
Wired up refresh button.
2017-12-11 13:51:16 +02:00
Jordan Petridis
d7af108833
WIP markup to html parser func.
2017-12-07 06:41:10 +02:00
Jordan Petridis
8bd48a09a6
Groupd stack manipulation functions into content module.
2017-12-02 08:58:28 +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
91ac2c6445
Minor cleanups.
2017-12-01 06:40:32 +02:00
Jordan Petridis
94879b4256
Move get_pixbuf_from_path into hammond_gtk/src/utils.rs module.
2017-11-30 21:38:21 +02:00
Jordan Petridis
b32e35c574
Rename podcasts_view module.
2017-11-30 21:10:05 +02:00
Jordan Petridis
866904a687
Use generic IntoIterator instead of &[foo] slices.
2017-11-26 07:03:21 +02:00
Jordan Petridis
9bc6df2cba
Made Disel NewModels private.
2017-11-22 05:50:25 +02:00
Jordan Petridis
0ce4107be4
Revert back to using an Arc<Mutex<Connection>> instead of the pool.
2017-11-20 18:09:53 +02:00
Jordan Petridis
e07683c046
partially-fixed the tests and benchmarks.
2017-11-20 01:08:34 +02:00
Jordan Petridis
5ad52fa4b2
Refactored to remove from Database refferences.
2017-11-19 23:32:37 +02:00
Jordan Petridis
6894f33895
Renamed hammond-data/src/index_feeds.rs module into feed.rs.
2017-11-18 14:32:58 +02:00
Jordan Petridis
450643371c
Renamed index_feeds and fetch_feeds functions.
2017-11-18 14:24:52 +02:00
Jordan Petridis
1ec4370c7b
Moved Database type-alias into hammond-data/src/lib.rs.
2017-11-17 21:37:55 +02:00
Jordan Petridis
54a0f17588
Initial draft of hammond-data/src/index_feed.rs API redesign.
2017-11-17 13:26:39 +02:00
Jordan Petridis
4e6ed416ee
Disabled http refers.
2017-11-07 10:28:04 +02:00
Jordan Petridis
ab5802cca7
Implemented updater_on_startup and refresh_feed sleep.
2017-11-04 14:40:36 +02:00
Jordan Petridis
a9dec8dbe8
Refactored refresh_feed.
2017-11-04 13:56:23 +02:00
Jordan Petridis
7a1b272d9e
Removed code duplication and combined refresh_feed and refresh_db.
2017-11-04 13:36:25 +02:00
Jordan Petridis
72ac709cda
Removed the multiple declarations of the clone macro.
2017-11-03 17:42:48 +02:00
Jordan Petridis
8a313c145b
Made a type allias for Arc<Mutex<SqliteConnection>.
2017-10-23 12:29:04 +03:00
Jordan Petridis
0e5d976514
Database optimizations.
2017-10-23 10:47:54 +03:00
Jordan Petridis
9beea21a4f
Code cleanup.
...
Converted rest of .clone() s on ref pointer to use the macro instead.
Stopped ignoring clippy clone_on_ref_pointer warnings since there shouldn't
be any, anymore.
2017-10-23 07:37:07 +03:00
Jordan Petridis
539a5eae2f
Implemented the recommended clone macro from gtk-rs docs.
2017-10-23 07:09:23 +03:00
Jordan Petridis
02cce8b915
I hate Arcs and Rcs.
2017-10-22 05:15:41 +03:00
Jordan Petridis
6ffacaa6d8
Final2, I swear, when dealing with Arc/rc always use references.
2017-10-22 04:51:34 +03:00
Jordan Petridis
cbe50c9163
OK OK, neat trick, clone on &A/RC<T> gives back A/RC<T>.
2017-10-22 04:32:03 +03:00
Jordan Petridis
28a10ac462
Async update refinements, Stack transition refinements.
2017-10-21 23:27:53 +03:00
Jordan Petridis
2077215491
Changed arguments Arc<T> to bepassed by value, clone on arc just copies the refference anyway.
2017-10-21 22:53:04 +03:00
Jordan Petridis
7b0a8f0e25
Added a probably terrible way to update podcast_view async.
2017-10-21 22:34:20 +03:00
Jordan Petridis
f58ad6bd8c
applied some clippy suggestions.
2017-10-21 21:24:19 +03:00
Jordan Petridis
5f3d2d5bdd
Minor readability imprvments.
2017-10-21 21:21:06 +03:00
Jordan Petridis
90c637ed53
Cleaned up unnecessary clone() calls.
2017-10-21 09:08:03 +03:00
Jordan Petridis
5fb783c0c0
Favor explicit refference cloning, as suggested by clippy.
2017-10-21 05:35:54 +03:00
Jordan Petridis
048d4800da
Improved of hanling of some Result types in hammond-data crate.
2017-10-21 04:58:15 +03:00
Jordan Petridis
486e0ff5e4
Now Upon feed addition only that feed is indexed/updated.
2017-10-21 00:12:24 +03:00
Jordan Petridis
753cdae08f
Minor podcast_view tweak.
2017-10-20 22:56:05 +03:00
Jordan Petridis
63af61d9f6
Update podcast view after db refresh.
2017-10-20 20:09:36 +03:00
Jordan Petridis
ff31ad668f
Overall impromvment into episode_widget.
...
Parse html into plain text for the episode widget.
Implement on per episode/child description evaluation.
Minor episode_widget tweaks.
2017-10-20 04:51:02 +03:00
Jordan Petridis
590e99b7e8
Small refinements, handling of unwraps, addin of TODOs and other Notes.
2017-10-19 17:22:17 +03:00
Jordan Petridis
70d1f44147
podcasts_view further refactoring.
2017-10-18 22:24:05 +03:00
Jordan Petridis
b6d2be3ff5
Split stuff into a utils.rs module.
2017-10-18 18:49:35 +03:00