* refactor(captcha): update Cap backend to 2.0.0 API format
* feat(captcha): add Cap version config for 1.x/2.x compatibility
* fix(captcha): change Cap default version to 1.x for backward compatibility
* refactor(captcha): remove Cap 1.x compatibility, keep only 2.x support
* feat(captcha): update field names to Cap 2.0 standard - Site Key and Secret Key
* fix(captcha): update Cap field names in defaults configuration
* Add Cap Captcha support
- Add CaptchaCap type constant in types.go
- Add Cap struct with InstanceURL, KeyID, and KeySecret fields
- Add CapCaptcha method in provider.go to return Cap settings
- Add default settings for Cap captcha in setting.go
- Implement Cap captcha verification logic in middleware
- Expose Cap captcha settings in site API
This adds support for Cap captcha service as an alternative
captcha option alongside existing reCAPTCHA, Turnstile and
built-in captcha options.
* update cap json tags
* Feat: added same-site policy for session options
* Feat: configurations in conf package to control the `SameSite` mode and `Secure` value of the session.
Co-authored-by: AaronLiu <abslant@126.com>
* Feat: retrieve nodes from data table
* Feat: master node ping slave node in REST API
* Feat: master send scheduled ping request
* Feat: inactive nodes recover loop
* Modify: remove database operations from aria2 RPC caller implementation
* Feat: init aria2 client in master node
* Feat: Round Robin load balancer
* Feat: create and monitor aria2 task in master node
* Feat: salve receive and handle heartbeat
* Fix: Node ID will be 0 in download record generated in older version
* Feat: sign request headers with all `X-` prefix
* Feat: API call to slave node will carry meta data in headers
* Feat: call slave aria2 rpc method from master
* Feat: get slave aria2 task status
Feat: encode slave response data using gob
* Feat: aria2 callback to master node / cancel or select task to slave node
* Fix: use dummy aria2 client when caller initialize failed in master node
* Feat: slave aria2 status event callback / salve RPC auth
* Feat: prototype for slave driven filesystem
* Feat: retry for init aria2 client in master node
* Feat: init request client with global options
* Feat: slave receive async task from master
* Fix: competition write in request header
* Refactor: dependency initialize order
* Feat: generic message queue implementation
* Feat: message queue implementation
* Feat: master waiting slave transfer result
* Feat: slave transfer file in stateless policy
* Feat: slave transfer file in slave policy
* Feat: slave transfer file in local policy
* Feat: slave transfer file in OneDrive policy
* Fix: failed to initialize update checker http client
* Feat: list slave nodes for dashboard
* Feat: test aria2 rpc connection in slave
* Feat: add and save node
* Feat: add and delete node in node pool
* Fix: temp file cannot be removed when aria2 task fails
* Fix: delete node in admin panel
* Feat: edit node and get node info
* Modify: delete unused settings