0
0
mirror of https://github.com/neon-mmd/websurfx.git synced 2024-11-23 14:38:21 -05:00
Commit Graph

1004 Commits

Author SHA1 Message Date
neon_arch
c83863608a perf: reduce branch predictions by reducing conditional code branches (#486) 2024-03-01 01:04:35 +03:00
neon_arch
5f0edde549 perf: initialize redis pipeline struct once with the default size of 3 (#486) 2024-02-10 21:57:24 +03:00
neon_arch
d78fd75979 perf: initialize new async connections parallely using tokio spawn tasks (#486) 2024-02-10 21:38:40 +03:00
neon_arch
a56a2f1345 perf: use futureunordered for collecting results fetched from the tokio spawn tasks (#486)
- using the `futureunordered` instead of vector for collecting results
  reduces the time it takes to fetch the results as the results do not
  need to come in specific order so any result that gets fetched first
  gets collected in the `futureunordered` type.

Co-authored-by: Spencerjibz <spencernajib2@gmail.com>
2024-02-09 21:33:46 +03:00
neon_arch
eceaf15b2e build: add the future crate (#486) 2024-02-09 21:31:18 +03:00
neon_arch
52f27655b8 perf: replace hashmaps with vectors for fetching & aggregating results (#486)
- replace hashmaps with vectors for fetching, collecting & aggregating results as it tends to be contigous & cache efficient data structure.
- refactor & redesign algorithms for fetching & aggregating results
  centered around vectors in aggregate function.
2024-02-06 23:56:44 +03:00
neon_arch
1a7675f779 ♻️ refactor: initialize & store the config & cache structs as a constant (#486)
- initializes & stores the config & cache structs as a static constant.
- Pass the config & cache structs as a static reference to all the
  functions handling their respective route.
2024-02-06 21:21:46 +03:00
Scott
280c7e2b5e
🐛 Auto release github action failure due to missing permissions (#506)
* ci: add release.yml to help automate release versions

* ci: add release.yml to help automate release versions - edited file further to cover edge cases

* ci: add release.yml to help automate release versions - I had a typo in a line which pointed at a different variable

* ci: add release.yml to help automate release versions - Fixing the release portion to prepend a v

* ci: add release.yml to help automate release versions. Lowercased V so it looks like v1.1.0 instead of V1.1.0

* ci: changing structure of release.yml to be easier to understand

* ci: #minor changes made

* ci: #minor changes made to make rolling and stable both release branches

* ci: #minor changes to hopefully turn off pre-release

* ci: #minor change - trying to make pre-release suffic set to nothing

* ci: #minor change - removed older release action for a better up to date one

* ci: #minor change

* ci: #minor change to fixed the pre-release issue

* ci: #minor change to fixed the pre-release issue again

* ci: #minor change to fixed the pre-release issue again2

* ci: changed action for tag. I believe it was causing errors

* ci: missing }

* ci: testing some things

* ci: fixing self inflicted error where I forgot to put an ID in

* ci: fixing to make the release branch rolling

* major: testing updating major

* BREAKING CHANGE: removed changelog action

* ci: reset commit and removed changelog

* ci: changed action for tag. I believe it was causing errors

* ci: missing }

* ci: testing some things

* ci: fixing self inflicted error where I forgot to put an ID in

* ci: fixing to make the release branch rolling

* ci: reset commit and removed changelog

* ci: added step to change Cargo.toml app version to the latest tag version without the v

* ci: using echo and double quotes in the appversion variable. Testing now

* ci: testing autocommit

* Apply automatic changes

* ci: testing autocommit further

* ci: testing autocommit: removing tagging since it creates another tag instead of using that tag

* Apply automatic changes

* ci: testing autocommit with branch protection and doing a PR to rolling

* Apply automatic changes

* ci: testing PR create and merge - removed the if that was causing it not to run

* ci: testing PR create and merge - removed the if that was causing it not to run

* Apply automatic changes

* ci: testing PR create and merge - fixed permission issues

* ci: testing PR create and merge - fixed permission issues

* Apply automatic changes

* ci: testing PR create and merge - potentially fixed PR issue

* Apply automatic changes

* ci: testing PR create and merge - potentially fixed PR issue2

* ci: testing PR create and merge - potentially fixed PR issue + fixing what branch it targets

* ci: testing PR create and merge - testing PAT

* ci: testing PR create and merge - testing to see if merge loop stops

* ci: adding in cargo.toml version in auto git commit

* Update Cargo.toml

Co-authored-by: alamin655 <129589283+alamin655@users.noreply.github.com>

* ci: adding in steps to regenerate the Cargo.lock file

* ci: adding in steps to regenerate the Cargo.lock file - fixing commit issue with cargo.toml

* ci: testing permissions

* ci: testing permissions with PAT

* ci: testing permissions with PAT again

---------

Co-authored-by: scottc943 <scottc943@users.noreply.github.com>
Co-authored-by: alamin655 <129589283+alamin655@users.noreply.github.com>
2024-02-03 03:17:38 +00:00
dependabot[bot]
8790f5f719
build(deps): bump actix-files from 0.6.2 to 0.6.5 (#511) 2024-02-02 07:29:35 +00:00
dependabot[bot]
0f19ade40c
build(deps): bump env_logger from 0.10.1 to 0.11.1 (#512) 2024-02-02 07:24:55 +00:00
dependabot[bot]
ae5b3370bc
build(deps): bump smallvec from 1.11.2 to 1.13.1 (#514) 2024-02-02 07:20:11 +00:00
dependabot[bot]
3d76b1bd86
build(deps): bump lightningcss from 1.0.0-alpha.51 to 1.0.0-alpha.52 (#513) 2024-02-02 07:14:54 +00:00
dependabot[bot]
6c3d9ecd50
⬆️ build(deps): bump serde from 1.0.193 to 1.0.196 (#510)
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.193 to 1.0.196.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.193...v1.0.196)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>
2024-02-02 10:10:08 +03:00
dependabot[bot]
57267827f5
build(deps): bump peterjgrainger/action-create-branch (#509) 2024-02-02 06:53:56 +00:00
dependabot[bot]
1909cc36a8
build(deps): bump actions/cache from 3 to 4 (#508) 2024-02-02 06:44:35 +00:00
dependabot[bot]
ca425f9ef5
build(deps): bump hennejg/github-tag-action from 4.3.1 to 4.4.0 (#507) 2024-02-02 06:39:32 +00:00
Scott
a92550e050
👷 GitHub action to automate release based on semantic versioning (#499)
* ci: add release.yml to help automate release versions

* ci: add release.yml to help automate release versions - edited file further to cover edge cases

* ci: add release.yml to help automate release versions - I had a typo in a line which pointed at a different variable

* ci: add release.yml to help automate release versions - Fixing the release portion to prepend a v

* ci: add release.yml to help automate release versions. Lowercased V so it looks like v1.1.0 instead of V1.1.0

* ci: changing structure of release.yml to be easier to understand

* ci: #minor changes made

* ci: #minor changes made to make rolling and stable both release branches

* ci: #minor changes to hopefully turn off pre-release

* ci: #minor change - trying to make pre-release suffic set to nothing

* ci: #minor change - removed older release action for a better up to date one

* ci: #minor change

* ci: #minor change to fixed the pre-release issue

* ci: #minor change to fixed the pre-release issue again

* ci: #minor change to fixed the pre-release issue again2

* ci: changed action for tag. I believe it was causing errors

* ci: missing }

* ci: testing some things

* ci: fixing self inflicted error where I forgot to put an ID in

* ci: fixing to make the release branch rolling

* major: testing updating major

* BREAKING CHANGE: removed changelog action

* ci: reset commit and removed changelog

* ci: changed action for tag. I believe it was causing errors

* ci: missing }

* ci: testing some things

* ci: fixing self inflicted error where I forgot to put an ID in

* ci: fixing to make the release branch rolling

* ci: reset commit and removed changelog

* ci: added step to change Cargo.toml app version to the latest tag version without the v

* ci: using echo and double quotes in the appversion variable. Testing now

* ci: testing autocommit

* Apply automatic changes

* ci: testing autocommit further

* ci: testing autocommit: removing tagging since it creates another tag instead of using that tag

* Apply automatic changes

* ci: testing autocommit with branch protection and doing a PR to rolling

* Apply automatic changes

* ci: testing PR create and merge - removed the if that was causing it not to run

* ci: testing PR create and merge - removed the if that was causing it not to run

* Apply automatic changes

* ci: testing PR create and merge - fixed permission issues

* ci: testing PR create and merge - fixed permission issues

* Apply automatic changes

* ci: testing PR create and merge - potentially fixed PR issue

* Apply automatic changes

* ci: testing PR create and merge - potentially fixed PR issue2

* ci: testing PR create and merge - potentially fixed PR issue + fixing what branch it targets

* ci: testing PR create and merge - testing PAT

* ci: testing PR create and merge - testing to see if merge loop stops

* ci: adding in cargo.toml version in auto git commit

* Update Cargo.toml

Co-authored-by: alamin655 <129589283+alamin655@users.noreply.github.com>

* ci: adding in steps to regenerate the Cargo.lock file

* ci: adding in steps to regenerate the Cargo.lock file - fixing commit issue with cargo.toml

---------

Co-authored-by: scottc943 <scottc943@users.noreply.github.com>
Co-authored-by: alamin655 <129589283+alamin655@users.noreply.github.com>
2024-01-31 07:08:37 +00:00
Jann Marc Villablanca
669e365913
feat: add new helper function to fetch upstream search engine JSON response (#504)
Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>
2024-01-30 13:37:50 +00:00
abdulahad5112
b2cbc5eaa5
📝 Maintained badge/shield status in the readme from stale to yes/maintained #500 (#503)
Co-authored-by: alamin655 <129589283+alamin655@users.noreply.github.com>
2024-01-30 07:20:14 +00:00
abdulahad5112
851ea314a7
🐛 parsed_cet not found in scope error when building the app with the no-cache feature #498 (#502)
Co-authored-by: alamin655 <129589283+alamin655@users.noreply.github.com>
2024-01-30 07:14:31 +00:00
abdulahad5112
fbf73634ee
🐛 Undeclared mini-mocha crate error when building the app with features other than memory-cache #493 (#501) 2024-01-30 07:09:33 +00:00
Yogen P
779908cb11
updated stargazer link (#496) 2024-01-27 16:15:32 +00:00
alamin655
78858b0e04
Merge pull request #492 from spencerjibz/optimize-caching-code
️ Improve page load by optimizing the caching code
2024-01-26 15:08:07 +05:30
Spencer
660f85620d
Merge branch 'rolling' into optimize-caching-code 2024-01-24 23:09:20 +00:00
Spencerjibz
51214dc23a add support for caching N number of key-values pairs instead of only 3 2024-01-24 22:56:11 +00:00
Spencerjibz
29b76be459 dump up package version 2024-01-24 12:47:19 +00:00
Spencerjibz
6b9469e4b3 cache the next, current and previous results in a separate task 2024-01-22 19:29:08 +00:00
Spencerjibz
f5cf5f9151 changed cache_results method to support multiple values 2024-01-22 19:26:35 +00:00
Spencerjibz
c762f9cf8e use redis pipeline to set multiple values at once 2024-01-22 19:20:16 +00:00
alamin655
705ba81026
Merge pull request #491 from Siddh744542/Clippy/Format-checking/linting-GitHub-action-to-analyze-code-for-all-the-features
👷 Clippy/Format checking/linting GitHub action to analyze code for all the features
2024-01-21 16:00:46 +05:30
alamin655
0f717cc976
🔖 chore(release): bump the app version (#491) 2024-01-21 15:56:41 +05:30
alamin655
b2971c1829
🔖 chore(release): bump the app version (#491) 2024-01-21 15:56:16 +05:30
Siddharth Tiwari
99f0cf1113 fixed issue #490 2024-01-21 12:22:15 +05:30
TheNortheWind
c25cd9c3fe
📝 note Highlighting in the readme file (#488)
Changed the Note highlighting from: **Note** to [!Note]

Affected lines: 144, 169, 221
2024-01-16 11:21:12 +03:00
alamin655
388aaf4bfd
Merge pull request #470 from ddotthomas/FIX/463_results_from_different_search_engines_get_cached_as_the_same_key
🐛 Different cache keys when different search engines are selected
2024-01-13 20:34:11 +05:30
ddotthomas
31c9c676ee Change get_safe_search_level logic back 2024-01-12 09:51:31 -07:00
ddotthomas
ca96a76958 change: renamed get_safesearch_level variables 2024-01-11 11:58:09 -07:00
alamin655
326131aac4
Merge branch 'rolling' into FIX/463_results_from_different_search_engines_get_cached_as_the_same_key 2024-01-11 16:47:15 +05:30
Evan Yang
efa8efc6c7
Compression and encryption for the cached search results (#443)
* attempt1

* rough draft

* add features and their optional dependancies

* add encryption and compression error variants

* add  a sample implementation to cache trait

* Update src/cache/cacher.rs

Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>

* adjust comment so feature flag would apply?

* adjust feature flag so it applies?

* formatting

* Update src/cache/cacher.rs

update documentation

Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>

* [features]Add base64 and chacha20 dependencies for compress-cache-results and encrypt-cache-results

* move encryption key and cipher logic to separate sub module

* added cacha20 and cec-results feature

* added cacha20 and cec-results feature

* added compression and encryption helper functions to trait implementations

* added compression and encryption  implementation for inMemoryCache

* base64 is only requried when redis-cache feature is enabled

* add error case for base64 and encryption/compression implementation to redisCache

* Refactor cacher to remove regex dependency

* fmt cache error and cacher

* Update Cargo.toml

disabling the unneeded default-features

Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>

* fix unused import warning for mimalloc

* remove deprecated method

* add doc comments for encryption module

* fix known bugs and use cfg-if module

* make cfg-if an optional dependency

* use feature-flag instead of maco lint

* add comment to explain type complexity

* bump app version

* Update src/cache/encryption.rs

Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>

* fixed type complexity and add docs for types

---------

Co-authored-by: Spencer Najib <spencernajib2@gmail.com>
Co-authored-by: alamin655 <mdalamin655@outlook.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>
Co-authored-by: Spencerjibz <=spencernajib2@gmail.com>
Co-authored-by: spencer <spencer@DESKTOP-SIF13AR>
2024-01-11 11:10:35 +00:00
ddotthomas
80e950de3b refactor: changed Cookie to use Cow to facilitate using references when building 2024-01-10 14:14:14 -07:00
neon_arch
a47e28587c
Merge branch 'rolling' into FIX/463_results_from_different_search_engines_get_cached_as_the_same_key 2024-01-10 07:25:30 +03:00
ddotthomas
d912bff94e change: revert Cookie Strings back to &str 2024-01-08 11:46:21 -07:00
ddotthomas
6e9250c03a fix: safe search url parameter ignored 2024-01-08 09:19:36 -07:00
ddotthomas
7d762b3726 refactor: moved settings parsing out of results 2024-01-07 16:29:39 -07:00
Леонтий Вартанян
33846cee34
💄 style: replace the search button with a magnifying glass (#483)
Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>
2024-01-06 21:17:11 +03:00
ddotthomas
dde117e7e6 modify: changed cache_key format data 2024-01-04 11:05:09 -07:00
ddotthomas
86b0d3d6c9 Moved parsing of cookie_value, config to cache_key 2024-01-02 16:26:04 -07:00
neon_arch
36e2ac93be
Merge branch 'rolling' into FIX/463_results_from_different_search_engines_get_cached_as_the_same_key 2024-01-02 12:29:54 +03:00
dependabot[bot]
3a97a6f621
⬆️ build(deps): bump async-trait from 0.1.75 to 0.1.76 (#481)
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.75 to 0.1.76.
- [Release notes](https://github.com/dtolnay/async-trait/releases)
- [Commits](https://github.com/dtolnay/async-trait/compare/0.1.75...0.1.76)

---
updated-dependencies:
- dependency-name: async-trait
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>
2024-01-02 10:21:40 +03:00
dependabot[bot]
92a141c1c5
⬆️ build(deps): bump redis from 0.23.3 to 0.24.0 (#480)
Bumps [redis](https://github.com/redis-rs/redis-rs) from 0.23.3 to 0.24.0.
- [Release notes](https://github.com/redis-rs/redis-rs/releases)
- [Commits](https://github.com/redis-rs/redis-rs/compare/redis-0.23.3...redis-0.24.0)

---
updated-dependencies:
- dependency-name: redis
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: neon_arch <mustafadhuleb53@gmail.com>
2024-01-02 10:15:12 +03:00