summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2024-10-21bump app's version to 0.13.5HEADv0.13.5mainThang Pham
2024-10-21fix(deps): upgrade dependencies, fixing build error (#108)Julimar Melo
Co-authored-by: Thang Pham <phamducthang1234@gmail.com>
2024-07-13docs: Fix wrong link to config documentation (#103)kalek
Co-authored-by: Thang Pham <phamducthang1234@gmail.com>
2024-02-11Update CD workflows to use use `cross` (#101)LucasFA
* Update CD workflows to use use `cross` * build: local cross compilation With the intention of migrating gh action to native solution with cross Supported targets: aarch-64-linux-gnu, armv7-unknown-linux-gnueabihf Use cross build --target (target) Note: docker base images have been updated. See related documentation: https://github.com/cross-rs/cross/wiki/FAQ#custom-images * build(cd): use cross for CD Update container images along with it. Also a couple actions. Use action-rs/cargo only for the built in support. It is the documented gh actions way in the cross README. Manually would probably increase times significantly. See https://github.com/aome510/spotify-player/pull/343 --------- Co-authored-by: Thang Pham <phamducthang1234@gmail.com>
2023-10-21bump app's version to 0.13.4v0.13.4Thang Pham
2023-10-21Update Hacker News HTML text parsing logic (#99)Thang Pham
## Changes - update parsing logic to reflect new HN Algolia API change regarding the use of `<p>` for paragraph breaks - cleanup parsing codes
2023-10-10Add `--locked` to the cargo installation (#98)zakwan hisham
2023-10-10Add Scoop installation instruction (#96)Rashil Gandhi
2023-10-01update dependenciesThang Pham
2023-09-03Release`v0.13.3` (#95)v0.13.3Thang Pham
- update `CD` workflow to include more targets - update dependencies and bump the app's version to `0.13.3`
2023-08-28Implement Rust native article view as fallback on failed ↵kaoru
`article_parse_command` (#94) ### Summary Implement Rust native article view as fallback on failed `article_parse_command`. ### Context Current implementation will display a link to the [`config.md`](https://github.com/aome510/hackernews-TUI/blob/main/docs/config.md#article-parse-command) file if the `article_parse_command` fails. Almost all of new users will see this error. Instead, we can use the `readable-readability` to provide similar capability as a fallback method. This might be more user friendly and nice default behavior. ### Dependency Added - [`readable-readability`](https://crates.io/crates/readable-readability) ### Screenshots https://news.ycombinator.com/item?id=37214693 |`article_md`|New implementation| |-|-| |![article_md 1](https://github.com/aome510/hackernews-TUI/assets/679719/a85e6f5b-d003-44c4-9270-72555535631d)|![integrated 1](https://github.com/aome510/hackernews-TUI/assets/679719/5edcc5d8-d339-431b-a331-90d51833df46)| Please note that it's not perfect for some pages as below, but I think it'd be acceptable. https://news.ycombinator.com/item?id=25607320 |`article_md`|New implementation| |-|-| |![aritcle_md 2](https://github.com/aome510/hackernews-TUI/assets/679719/87702be2-aa88-4169-8199-f83e677c761a)|![integrated 2](https://github.com/aome510/hackernews-TUI/assets/679719/1302615c-058b-4277-a97a-4d06ff439550)|
2023-06-04bump app's version to 0.13.2v0.13.2Thang Pham
2023-06-04Crate updates, and reverting to tracing 0.1.37 because of yanked release. (#93)Matthias Tarasiewicz
2023-06-04Add example configuration with dark mode palette (#92)Adrian Vollmer
2023-04-26bump app's version to `v0.13.1` (#91)v0.13.1Thang Pham
hot fix: remove a reverse effect from the highlighting style
2023-04-26bump app version to `0.13.0`v0.13.0Thang Pham
2023-04-24Support opening specific comment view on startup (#90)Thang Pham
Resolves #86 - added `--start_id` cli option to open the application in a specific comment view - updated comment view codes to + not require a story to construct a comment view + allow constructing a comment view of either a comment or a story
2023-04-19Add cross-platform default value for `url_open_command` (#88)Thang Pham
2023-02-03bump app's version to 0.12.0v0.12.0Thang Pham
2023-02-03update ROADMAPThang Pham
2023-02-03Voting support follow-ups (#85)Thang Pham
## Changes - added voting visualization - handled voting command asynchronously to avoid blocking - fixed bug (from #84) that made collapsed item's children not hidden - handled multi-paged stories when getting story's - added authentication/voting documentations
2023-02-01Refactor modeling, parsing, and client codes (#84)Thang Pham
## Changes - separated modeling and parsing codes + renamed `client::parser` to `client::model` + added `parser` module + moved parsing codes from `client` to a dedicated `parser` module - split client data models (`client::model`) and HN data models (new `model` module) - split parsing codes into different modules + `html` for parsing HTML text + `article` for parsing web article - and many other cleanups, variable/function naming changes, code refactoring, and more documentation
2023-01-30Add authentication and upvote support (#81)Thang Pham
**Note**: the voting/authentication is not ready yet. This PR is just a first iteration of the feature. ## Changes - added support for voting and authentication functionalities - enabled `cookies` feature for `ureq` (HTTP client) - implemented `HNClient::vote` and `HNClient::login` functions and related helper functions ## TODOs (for follow-up PR) - [ ] update README to add entries for authentication and voting commands - [ ] add visualization (view) for votes
2023-01-30Update dependencies and fix clippy errors (#82)Thang Pham
2022-10-07bump app's version to `0.11.0`, update dependenciesv0.11.0Thang Pham
2022-09-05Expand story view capabilities (#80)Thang Pham
## Changes - introduce story sort mode to replace initial sort "by_date". Story sort mode includes: `None`, `Date`, and `Point`. + update story retrieving/constructing codes to use `sort_mode` as a parameter instead of `by_date` - if `None` sort mode is specified, use a combination of HN Algolia APIs and HN official APIs to retrieve `ask_hn` and `show_hn` stories in the same order as displayed in the http://news.ycombinator.com/ website. + **Related**: #79 ## Breaking changes - rename `toggle_sort_by_date` command to `cycle_sort_mode`
2022-08-12add Binaries install sectionThang Pham
2022-08-11bump app's version to 0.10.2v0.10.2Thang Pham
2022-08-11Use a "forked" `rcdom` module (#78)Thang Pham
- removed `markup5ever_rcdom` to use a "forked" `rcdom` module - re-organized `Cargo.toml`
2022-08-10use `main` for branches in `ci.yml`Thang Pham
2022-08-10Update dependencies (#76)Thang Pham
- updated dependencies - removed `lazy_static`, `substring` - use `git` for `html5ever` and `markup5ever_rcdom` crates
2022-08-10Rewrite CI-CD (#77)Thang Pham
2022-05-28bump `config_parser2` to `v0.1.3`Thang Pham
- added `ConfigParser` default implementation for `Option<T>` - added more tests, cleanup test structure naming
2022-05-22bump app's version to 0.10.1v0.10.1Thang Pham
2022-05-22Merge remote-tracking branch 'origin/main'Thang Pham
2022-05-22bump app's version to 0.10.0Thang Pham
2022-05-22update depsThang Pham
2022-05-21Code refactor and clean part II (#75)Thang Pham
## Brief description of changes - moved UI initialization codes from `main.rs` to `view::mod.rs` - updated application's logging level - renamed functions, added more comments/code documentations - added some code cleanups
2022-05-07Code refactor and cleanup part I (#74)Thang Pham
## Brief description of changes - refactored `view::async_view` codes + added `ResultView`, modified `ErrorView` + used `anyhow::Context` to decorate the encountered error when constructing async views - replaced `view::error_view` module with `view::result_view` - refactored parse functions in `client::parser` + added new structs to represent parsed results/ arguments + cleanup code, updated documents - removed `Article::parsed_content`, replaced `Article::links` with `ArticleView::links` - removed redundant `clones`
2022-05-03fix link indexing for link dialog's link event callbacksThang Pham
2022-05-03Refactor link handler codes (#72)Thang Pham
## Brief description of changes - updated default shortcuts `REAMDE` - added `view::utils.rs` to separate `view` utils with general util functions defined in `utils.rs` - clean imports in files of the `view` module - implemented `LinkDialog` struct (along with traits, keymaps, etc) - changed `on_event` to `on_pre_event` to handle the events before its children receive the events - updated the behaviour of `open_article_in_browser` when the story doesn't have linked article: fallback to `open_story_in_browser` ## Breaking changes - modified the default shortcuts for link opening commands. Look into [here](https://github.com/aome510/hackernews-TUI/pull/72/files#diff-1e51105b268d755430b5c0e75bfa1f216ce542cd5bf95b761bee86043b73fd45L114-L132) for further details
2022-05-02Implement different view traits/helpers Part I (#71)Thang Pham
## Brief description of changes - implemented different view traits (defined in `hackernews_tui/src/view/traits.rs`) + `ListViewContainer` consists of methods to interact with the inner list view (`LinearLayout`) + `ScrollViewContainer` consists of methods to get the inner scroll view + `OnScrollEventView` defines the `on_scroll_events` method that adds callbacks for scrolling events (triggered by new `ScrollKeymap` keymaps) + `AutoScrolling` defines the `scroll` method that automatically scrolls to the inner view's important area - added a `ScrollKeymap` struct defined keybindings for scrolling commands - rewrote `hackernews_tui/src/view/help_view.rs` + added new `Command` and `CommandGroup` structs + defined the `to_*_view` method for the new structs to convert into the corresponding view + constructed the `HelpView` using the new structs instead of `Vec<String, (String, String)>` like previously - updated the example config file ## Breaking changes - removed scrolling commands defined the `ArticleViewKeymap` and `CommandViewKeymap` in favour of commands defined by the new `ScrollKeymap`
2022-04-28update deps, move to 2021 editionThang Pham
2022-04-28project structure cleanupThang Pham
2022-04-28Support multiple keybindings to a single command (#70)Thang Pham
## Brief description of changes - support multiple keybindings to a single command by specifying either **a key string** or **an array of key strings** in the config file - add `[back]` button to the application's footer ## Breaking changes - modify the default shortcuts for - `global_keymap.quit` - `global_keymap.goto_previous_view` - `global_keymap.goto_search_view` - `edit_keymap.move_cursor_left` - `edit_keymap.move_cursor_right` - `edit_keymap.move_cursor_to_begin` - `edit_keymap.move_cursor_to_end`
2022-03-28Update dependencies (#68)Thang Pham
# Brief description of changes - updated config/cache folder initialization logic to follow [`dirs_next`](https://docs.rs/dirs-next/latest/dirs_next/) specifications - updated `README` to indicate new config/cache finding logic - updated the example/default config file - fixed clippy errors - updated dependencies
2022-03-24Fixed TOML syntax in `config.md` (#67)Huy Z
2022-01-16bump app's version to `0.9.1`v0.9.1Thang Pham
2022-01-16Merge remote-tracking branch 'origin/main'Thang Pham
2022-01-16update NOTES and docker build fileThang Pham