Changelog
Hey all,
Bit of a smaller release than last time but I am going to be on holiday from the 12th to the 19th so I wanted to make sure to have a release out and a day or two to address any potential post release big bug should there be any.
This release brings some important improvements to engines and transport, you will notice the lolcat/4play transport and most engines have an update dependant from this particular degoog version. Make sure to follow that warning as engines will struggle to work properly without the latest codebase.
This was a necessary update in an effort to further prevent detection. Let me know how it feels, everything should work way smoother if you use custom transports now.
features
- Add support for visual search, now an engine can define the type of input needed (text/image) and dropping an image in will allow you to search for it, as long as the engine supports it (for now there's only one, yandex, please read the privacy notes) #134 #6
- Added a whole bunch more compatible searx engines and a way to add any you like from the repo if you want to test/figure out how to implement them. You can still use the env var to add your own custom ones if you so wish for.
- Domain redirect has been fully reinvented, I have also added a regex generator which should help you figure out how to replace things. Full regexes are now supported #332
- Added a way to modularise setting fields in extensions, now you can have different settings depending on a dropdown value, please read the development docs on this, most plugins now use this new schema and plugin configurations (especially ai summary) should feel cleaner now
- Degoog can now be bind to a specific address - Thank you @itzTheMeow
- Add region support to all engines, this will require ALL engines updated in the store, it's a minor update, engines will still work without the update but won't have regional support until they are at the latest version #299
- All engines now support session from the ctx.fetch function (this is for engine developers mostly) you can check the docs for the update, but it's much better
- Revamped settings pages, especially server and indexer. Config modals have also been slightly restyled to be easier to read, this was getting VERY messy, I hope you like the new small changes that should make maintaining your instances a bit less chaotic.
- The store page has been ENTIRELY restyled, it's way easier to navigate and things should make more sense, especially filtering.
- Proxies now have a visible status dot to see if they are available/unavailable in the server tab - Thank you @poulpor for the idea
bugfixes
- Added store placeholders when extension devs don't add an image (can't believe this wasn't a thing, sorry lol) #333
- Retry failed store images once and un-hide repo icons on load - Thank you @Panonim
- Engines now are capable of maintaining sessions/cookies as long as the transport used provide them, this means 4play is accurately keeping your sessions pinned to your proxies. It sounds obvious but it was a ton of work to get right, this works with rotating proxies and it's assigned using random identifiers, the proxy information is only stored in cache (valkey or memory). If you don't use valkey it'll die on every container restart.
- Rotating proxies now have a 10m cooldown when expired, this should help keep sessions healthy, this is PER engine, so if one engine bans a proxy it doesn't mean it won't be used for another one. It should work much better, check discussion #253
- Disabling an extension or removing a store will remove the settings of said extensions. I swear this used to work before the canonical ID migration, I was being too paranoid when I did that a few months back and stopped deleting things to avoid data loss, it's back now #349