about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2025-05-13 22:25:00 +0200
committerbptato <nincsnevem662@gmail.com>2025-05-13 22:25:24 +0200
commit9a2bb7b4ac945089b63a771dde872d4cebfbeac3 (patch)
tree2413d59964cf844088bdf7a07125c4175f1d95c2
parenta3d5bf9d55d20cfbecd14cf5fa0cd61163ff4fc7 (diff)
downloadchawan-9a2bb7b4ac945089b63a771dde872d4cebfbeac3.tar.gz
config: print warning for prepend-https
Use prepend-scheme = '' instead.
-rw-r--r--src/config/config.nim15
-rw-r--r--src/local/pager.nim2
2 files changed, 15 insertions, 2 deletions
diff --git a/src/config/config.nim b/src/config/config.nim
index d9a75591..c1abcd73 100644
--- a/src/config/config.nim
+++ b/src/config/config.nim
@@ -50,6 +50,8 @@ type
 
   DeprecatedStyleString* = distinct string
 
+  DeprecatedSchemeBool* = distinct bool
+
   ChaPathResolved* = distinct string
 
   HeadlessMode* = enum
@@ -137,7 +139,7 @@ type
 
   NetworkConfig = object
     maxRedirect* {.jsgetset.}: int32
-    prependHttps* {.jsgetset.}: bool
+    prependHttps*: DeprecatedSchemeBool
     prependScheme* {.jsgetset.}: string
     proxy* {.jsgetset.}: URL
     defaultHeaders* {.jsgetset.}: Table[string, string]
@@ -388,6 +390,8 @@ proc parseConfigValue(ctx: var ConfigParser; x: var StyleString; v: TomlValue;
   k: string): Err[string]
 proc parseConfigValue(ctx: var ConfigParser; x: var DeprecatedStyleString;
   v: TomlValue; k: string): Err[string]
+proc parseConfigValue(ctx: var ConfigParser; x: var DeprecatedSchemeBool;
+  v: TomlValue; k: string): Err[string]
 
 proc typeCheck(v: TomlValue; t: TomlValueType; k: string): Err[string] =
   if v.t != t:
@@ -799,6 +803,15 @@ proc parseConfigValue(ctx: var ConfigParser; x: var DeprecatedStyleString;
   ctx.warnings.add(k & ": stylesheet is deprecated; use user-style instead")
   ctx.parseConfigValue(string(x), v, k)
 
+proc parseConfigValue(ctx: var ConfigParser; x: var DeprecatedSchemeBool;
+    v: TomlValue; k: string): Err[string] =
+  var b: bool
+  ?ctx.parseConfigValue(b, v, k)
+  if not b:
+    ctx.warnings.add(k &
+      ": prepend-https is deprecated; use prepend-scheme='' instead")
+  ok()
+
 proc parseConfig*(config: Config; dir: string; buf: openArray[char];
   warnings: var seq[string]; jsctx: JSContext; name: string;
   laxnames = false): Err[string]
diff --git a/src/local/pager.nim b/src/local/pager.nim
index 4a38ac77..77d31b42 100644
--- a/src/local/pager.nim
+++ b/src/local/pager.nim
@@ -2058,7 +2058,7 @@ proc loadURL(pager: Pager; url: string; contentType = ""; cs = CHARSET_UNKNOWN;
       history = history)
     return
   var urls: seq[URL] = @[]
-  if pager.config.network.prependHttps and
+  if bool(pager.config.network.prependHttps) and
       pager.config.network.prependScheme != "" and url[0] != '/':
     let pageurl = parseURL(pager.config.network.prependScheme & url)
     if pageurl.isSome: # attempt to load remote page