Skip to content

Commit

Permalink
docs: wiki and changelog updates for v6.4.0 release (jbsparrow#550)
Browse files Browse the repository at this point in the history
* docs: update changelog

* docs: update changelog

* chore: bump version v6.4.0

* docs: fix `log_level` description

* docs: add special types page

* fix: summary index

* docs: update changelog

* docs: fix references

* docs: fix typo
  • Loading branch information
NTFSvolume authored Feb 1, 2025
1 parent f9a7533 commit a114d69
Show file tree
Hide file tree
Showing 6 changed files with 101 additions and 14 deletions.
29 changes: 26 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ All notable changes to this project will be documented here. For more details, v
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [UNRELEASED]
## [6.4.0] - 2025-01-31

### Added

Expand All @@ -14,13 +14,36 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Add support for https://www.imagebam.com
- Add support for https://comics.8muses.com
- Pornpics.com support
- Twitter images (twimg) support
- Members.luscious.net search support
- Skip slow downloads with `--slow-download-speed`: https://script-ware.gitbook.io/cyberdrop-dl/reference/configuration-options/settings/runtime_options#slow_download_speed
- Support for forums redirect URLs (`/goto/...`, `/posts/...`)

### Changed

- Files in the download queue are saved to the database and can be retried with `--retry-failed`
- CLI `--skip-hosts` and `--only-hosts` values will be added to / removed from config values when passing `+` or `-` as the first argument, respectively. See: https://script-ware.gitbook.io/cyberdrop-dl/reference/configuration-options/special_setting_types#AdditiveArgs
- CLI arguments that accept multiple values can now be used multiple times in the same command
- Forum posts are now processed asynchronously instead of sequentially
- Prettify failures messages
- Stats format

### Removed

- Remove support for ImageBan as the website no longer exists
- Support for ImageBan (website no longer exists)

### Fixed

- ImgBB crawler
- Download path structure (Tokyomotion)
- Empty `download_filename` on database
- Missing tread id on `Last_Scraped_Forum_Post.csv` URLs
- Nudostar Crawler
- Invalid URL parsing (imgur)
- Invalid link confirmation URL parsing (forums)


## [6.3.0] - 2025-01-24
## [6.3.0] - 2025-01-23

### Added

Expand Down
1 change: 1 addition & 0 deletions docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

* [Supported Websites](reference/supported-websites.md)
* [Configuration Options](reference/configuration-options/README.md)
* [Special Type Options](reference/configuration-options/special_setting_types.md)
* [Authentication](reference/configuration-options/authentication.md)
* [Settings](reference/configuration-options/settings/README.md)
* [Browser Cookies](reference/configuration-options/settings/browser_cookies.md)
Expand Down
16 changes: 8 additions & 8 deletions docs/reference/configuration-options/settings/ignore_options.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,19 +42,19 @@ When this is set to `true`, the program will skip post marked as ads by models i

## `skip_hosts`

| Type | Default |
|----------------|----------|
| `list[NonEmptyStr]` | `[]` |
| Type | Default | Additional Info |
|---------------------|----------| --------------- |
| `list[NonEmptyStr]` | `[]` | This is an [`AdditiveArg`](../special_setting_types.md#additiveargs)

You can supply hosts that you'd like the program to skip, to not scrape/download from them. This setting accepts any domain, even if they are no supported. When passing hosts as CLI arguments, if the first host is `+`, any hosts after it will be added to the lists of hosts specified in the config file instead of overriding it. Similarly, if the first hosts is `-`, any hosts after it will be removed from the lists of hosts specified in the config
You can supply hosts that you'd like the program to skip, to not scrape/download from them. This setting accepts any domain, even if they are no supported.

## `only_hosts`

| Type | Default |
|----------------|----------|
| `list[NonEmptyStr]` | `[]` |
| Type | Default | Additional Info |
|---------------------|----------| --------------- |
| `list[NonEmptyStr]` | `[]` | This is an [`AdditiveArg`](../special_setting_types.md#additiveargs

You can supply hosts that you'd like the program to exclusively scrape/download from. This setting accepts any domain, even if they are no supported. When passing hosts as CLI arguments, if the first host is `+`, any hosts after it will be added to the lists of hosts specified in the config file instead of overriding it. Similarly, if the first hosts is `-`, any hosts after it will be removed from the lists of hosts specified in the config
You can supply hosts that you'd like the program to exclusively scrape/download from. This setting accepts any domain, even if they are no supported.

## `filename_regex_filter`

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ These are higher level options that effect the overarching functions of the prog
|----------------|----------|
| `NonNegativeInt` | `10`|

Defines the logging level for messages, according to [Python logging levels](https://docs.python.org/3/library/logging.html#levels). Messages with a level below this threshold will not be logged. Setting a value above 50 will disable logging entirely.
Defines the logging level for messages, according to [Python logging levels](https://docs.python.org/3/library/logging.html#levels). Only messages with a level equal or greater than this setting will be logged, with the exception of `NOTSET` which will disable all logging messages. Setting a value above 50 will also disable logging entirely.

| Level | Value | Description |
|----------------|----------|----------|
| `NOTSET` | 0 | All events are logged |
| `NOTSET` | 0 | Disables all log messages |
| `DEBUG` | 10 | Offers detailed information, typically useful to troubleshoot problems |
| `INFO` | 20 | Provides general information about scrape and download progress|
| `WARNING` | 30 | Highlights a potential issue or something that might need attention (e.g. `Login wasn't provided for <FORUM>`)|
Expand Down
63 changes: 63 additions & 0 deletions docs/reference/configuration-options/special_setting_types.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
description: Configuration settings with special behavior or details.
icon: sparkles
---

# Special Setting Types

## `BoolFlag`

A special kind of `bool`. Within a config file, it can have a `true` or `false` value. However, when used via CLI, the value is assumed from the flag name. The normal name is `true`, and prefixing the name with `--no` means `false`.

### Examples:

| Value you used | Value CDL interpreted |
| -------------------- | --------------------- |
| `--auto-dedupe` | auto-dedupe: `true` |
| `--no-auto-dedupe` | auto-dedupe: `false` |

## `ByteSize`

A special kind of `int` that accepts suffixes like `GB`, `MiB` and `KB`

In conformance with IEC 80000-13 Standard, `1KB` means `1000 bytes`, and `1KiB` means `1024 bytes`. In general, including a middle 'i' will cause the unit to be interpreted as a power of 2, rather than a power of 10.

### Examples:

| Value you used | Value CDL interpreted |
| -------------- | --------------------- |
| `1GB` | `1.000.000.000 bytes` |
| `512` | `512 bytes` |
| `1MiB` | `1.048.576 bytes` |

{% hint style="info" %}
`ByteSize` is also used for some settings to specify speed and it's interpreted as `<value> / second`. ex: `8MB` means `8MB/s`
{% endhint %}


## `AdditiveArgs`

Special type for some settings that accept multiple values as input (`lists` or `sets`). When passing values as CLI arguments, if the first value is `+`, any value after it will be added to the values specified in the config file instead of overriding it. Similarly, if the first value is `-`, any value after it will be removed from the values specified in the config

### Examples:

If you have the following `skip_hosts` setting in you config file:

```yaml
skip_hosts:
- drive.google.com
- youtube.com
- facebook.com
```
You will get the following results:
| Value you used | Value CDL interpreted | Details |
| -------------- | --------------------- | ------- |
| `--skip-host instagram.com` | `[instagram.com]` | config values were overridden by CLI values |
| `--skip-host "+" instagram.com` | `[drive.google.com, youtube.com, facebook.com, instagram.com]` | config values and CLI values were merged |
| `--skip-host "-" drive.google.com youtube.com` | `[facebook.com]` | CLI values were removed from the config values |

{% hint style="info" %}
Always use quotes for "+" and "-" to make sure your shell does not try to parse them as additional flags
{% endhint %}
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ description = "Bulk downloader for multiple file hosts"
license = {text = "GPL-3.0-only"}
readme = "README.md"
requires-python = ">=3.11,<4"
version = "6.3.0.post1"
version = "6.4.0"

[project.scripts]
cyberdrop-dl = "cyberdrop_dl.main:main"
Expand Down

0 comments on commit a114d69

Please sign in to comment.