Skip to content

HAD-V3.3.2

Choose a tag to compare

@batmanpriv batmanpriv released this 20 Jun 18:45
· 6 commits to main since this release
1762b53

🚀 Release Notes - HAD v3.3.2

What's New in v3.3.2

This release brings major new features, significant performance improvements, and a completely redesigned browser extension. Here's everything that's changed:


✨ Major New Features

📺 HLS/M3U8 Streaming Download

Download HTTP Live Streams directly without external tools (though FFmpeg is recommended for best results).

# Download HLS stream
./had -hls https://example.com/stream.m3u8 -o ./videos

# Auto-detects FFmpeg, falls back to pure-Go
./had -hls https://example.com/playlist.m3u8 -t 8

📋 Priority Queue System

Manage downloads with priority-based ordering. Higher numbers = higher priority.

# Download from queue file
./had -queue queue.txt

# Format: URL priority
https://example.com/important.zip 100
https://example.com/normal.zip 50

# Single download with priority
./had -priority 100 https://example.com/urgent-file.zip

⏰ Bandwidth Scheduling

Schedule downloads during specific time windows to avoid peak hours.

# Download only between 2 AM and 6 AM
./had -schedule-from 02:00 -schedule-to 06:00 https://example.com/large-file.zip

# Combined with speed limit
./had -schedule-from 23:00 -schedule-to 07:00 -max-speed 1048576 https://example.com/file.zip

📢 Multi-Channel Notifications

Get notified when downloads complete via Telegram, Discord, or desktop.

# Telegram notification
./had -notify-telegram 123456789 -notify-telegram-bot "your_bot_token" https://example.com/file.zip

# Discord webhook
./had -notify-discord "https://discord.com/api/webhooks/..." https://example.com/file.zip

# Desktop notification (Linux/macOS/Windows)
./had -notify-desktop https://example.com/file.zip

# Multiple channels combined
./had -notify-telegram ... -notify-discord ... -notify-desktop https://example.com/file.zip

🪞 Smart Mirror Selection

Automatically probe and select the fastest mirror via latency testing.

# Auto-select fastest mirror
./had -auto-mirror -mirrors "https://mirror1.com/file.zip,https://mirror2.com/file.zip" https://primary.com/file.zip

# Probes all mirrors and uses the one with lowest latency

🗜️ Post-Processing Automation

Automatically process files after download completes.

# Auto-extract archives
./had -post-extract https://example.com/archive.zip

# Move to specific directory
./had -post-move /completed https://example.com/file.zip

# Rename with patterns ({name}, {time} placeholders)
./had -post-rename "{name}_{time}.zip" https://example.com/file.zip

# Chain multiple operations
./had -post-extract -post-move /processed -post-rename "dl_{time}" https://example.com/archive.zip

🧩 Smart Deduplication

Intelligent duplicate URL detection and filtering.

# Automatically removes duplicate URLs from list
./had https://example.com/file.zip https://example.com/file.zip https://example.com/file2.zip
# Only downloads file.zip once

🎯 Per-file Thread Optimization

Auto-adjusts thread count based on file size:

File Size Threads
> 500 MB 8
> 200 MB 6
> 50 MB 4
> 10 MB 3
> 1 MB 2
< 1 MB 1

🎯 Capture Proxy Improvements

🧠 Enhanced Detection

  • Multi-factor URL scoring (path, query parameters, headers, referer)
  • 0-100% confidence system with weighted signals
  • Better false positive filtering

🔍 Body Scanning

  • Deep inspection of HTML, JSON, and JavaScript
  • Extracts hidden URLs from response bodies
  • Finds URLs in src, href, data-* attributes

📊 Advanced Signals

  • Path keywords detection (/video/, /media/, /download/)
  • Query parameter analysis (video=, file=, source=)
  • CDN host detection (cdn., media., static.)
  • Stream pattern detection (m3u8, mpd, chunklist)
  • Referer analysis from media sites

🎯 Better Deduplication

  • URL normalization (removes tracking parameters)
  • 10-minute dedupe window
  • Intelligent comparison ignoring noise parameters

📝 Richer Metadata

Captures additional information:

  • method (GET, POST, etc.)
  • status_code (HTTP response code)
  • content_type (MIME type)
  • source_url (referer)
  • downloaded status tracking

🔧 Browser Extension Overhaul

The extension has been completely redesigned with new features:

🍪 Cookie Management

  • View all cookies for the current site
  • Edit cookie values inline
  • Delete individual cookies
  • Copy cookies to clipboard
  • Import cookies from JSON, Netscape, or header strings
  • Export cookies as Header String, JSON, or Netscape format
  • Search and filter cookies by name or value
  • Clear all cookies for the site

⚡ Proxy Presets

Quick one-click presets for common configurations:

  • HAD :8085
  • HTTP :8080
  • SOCKS5 :1080
  • TOR :9050

🏃 Auto-Restore

  • Automatically restore proxy on browser startup
  • Persistent configuration storage

📋 Bypass List Management

  • Edit bypass list directly in the extension
  • Hosts bypass the proxy

🔍 Test Connection

  • Test proxy reachability with latency measurement
  • Visual feedback on connection status

🚀 Performance Improvements

Adaptive Buffer Optimization

  • Dynamic buffer sizing (32KB to 4MB)
  • Adjusts based on real-time speed measurements
  • Improves throughput for high-bandwidth connections

Write Buffer Enhancement

  • Asynchronous write operations
  • 4096-depth write buffer queue
  • Reduced disk I/O overhead

Improved Concurrency

  • Better connection pooling
  • Optimized thread management
  • Reduced memory footprint

Mirror Probing

  • Parallel mirror latency testing
  • Automatic fastest mirror selection
  • Reduces download time for multi-mirror setups

🛠️ RPC API Enhancements

New Methods

Method Description
had.addUrls Add multiple URLs at once
had.getFiles List all files with status
had.removeAll Remove all tasks
had.setMaxParallel Set max concurrent downloads
had.setThreads Set threads per file

REST API Endpoints

Endpoint Description
/api/tasks List active tasks
/api/files List all files with status

🔒 Security & Certificate

Improved Certificate Installation

  • Better cross-platform support (Windows, macOS, Linux)
  • Automatic fallback to manual instructions
  • Enhanced error handling and user guidance

Certificate Path

  • Certificate saved as Had.crt (capitalized)
  • Better visibility and user feedback

📦 File Format Changes

Queue File (New)

# Format: URL priority (higher = processed first)
https://example.com/urgent.zip 100
https://example.com/important.zip 75
https://example.com/normal.zip 50
https://example.com/low.zip 10

Enhanced Captured JSON

{
  "url": "https://example.com/video.mp4",
  "file_type": "video",
  "extension": ".mp4",
  "size": 104857600,
  "title": "sample video",
  "source_url": "https://example.com/",
  "timestamp": "2024-01-15T10:30:00Z",
  "confidence": 85,
  "method": "GET",           // NEW
  "status_code": 200,        // NEW
  "content_type": "video/mp4", // NEW
  "downloaded": false        // NEW
}

🔧 New Command Line Options

HLS/Streaming

Option Description
-hls HLS/M3U8 stream URL to download

Queue

Option Description
-queue Queue file with URLs and priorities
-priority Download priority (higher = first)

Bandwidth Scheduling

Option Description
-schedule-from Download window start (HH:MM)
-schedule-to Download window end (HH:MM)

Notifications

Option Description
-notify-telegram Telegram chat ID
-notify-telegram-bot Telegram bot token
-notify-discord Discord webhook URL
-notify-desktop Enable desktop notifications

Post-Processing

Option Description
-post-extract Auto-extract archives
-post-move Move file to directory
-post-rename Rename with pattern

Mirror Selection

Option Description
-mirrors Comma-separated mirror URLs
-auto-mirror Auto-select fastest mirror

🐛 Bug Fixes

  • Fixed memory leak in capture proxy
  • Improved FTP multi-part download reliability
  • Fixed SFTP resume functionality
  • Better handling of malformed URLs
  • Fixed duplicate URL detection
  • Improved certificate installation on Windows
  • Fixed race conditions in thread management
  • Better error handling for network timeouts

🔄 Migration Notes

From v3.2.5 to v3.3.2

  1. Session Files: Compatible, no changes needed
  2. Captured JSON: New fields added (method, status_code, content_type, downloaded) - backward compatible
  3. Configuration: All existing flags still work
  4. Extension: Must reinstall from extensions-had/ folder
  5. Certificate: Will be regenerated as Had.crt (capitalized)

📚 Documentation

Complete documentation available in:


Download v3.3.2: Releases Page

Report Issues: GitHub Issues