@profullstack/nichedb 0.39.0 → 0.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/index.js +5 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@profullstack/nichedb",
3
- "version": "0.39.0",
3
+ "version": "0.40.0",
4
4
  "description": "CLI and MCP bridge for NicheDB: browse collections, manage sources and feeds, search items, from any deployment",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
package/src/index.js CHANGED
@@ -15,7 +15,7 @@ import { homedir, tmpdir } from 'node:os';
15
15
  import { join } from 'node:path';
16
16
  import { createInterface } from 'node:readline';
17
17
 
18
- export const VERSION = '0.39.0';
18
+ export const VERSION = '0.40.0';
19
19
  const GEO_FLAGS = ['lat', 'long', 'radius', 'unit', 'bbox', 'sort', 'offset'];
20
20
  const DEFAULT_API = process.env.NICHEDB_API ?? 'https://nichedb.dev';
21
21
  const CONFIG_DIR = join(process.env.XDG_CONFIG_HOME ?? join(homedir(), '.config'), 'nichedb');
@@ -240,7 +240,7 @@ export const COMMANDS = [
240
240
  name: 'reputation',
241
241
  usage: 'reputation <ip-or-domain>',
242
242
  summary:
243
- 'Is an IP or a domain on a blocklist? nichedb /traffic (human-reviewed bans), abuse.ch malware feeds and SURBL in one answer. Exits 1 when listed.',
243
+ 'Is an IP or a domain on a blocklist? nichedb /traffic (human-reviewed bans), abuse.ch malware feeds, SURBL and live DNS blocklists (Spamhaus ZEN/DBL, SpamCop, PSBL, Mailspike, URIBL) in one answer; a domain is also checked on each address it resolves to. Exits 1 when listed.',
244
244
  options: ['--json'],
245
245
  },
246
246
  {
@@ -1072,6 +1072,9 @@ export async function run(
1072
1072
  }
1073
1073
  out(`${r.query}: ${r.listed ? `LISTED, score ${r.score}/100` : 'not listed'}`);
1074
1074
  for (const reason of r.reasons) out(` ${reason}`);
1075
+ for (const a of r.addresses ?? [])
1076
+ out(` resolves to ${a.ip}: ${a.listed ? 'LISTED' : 'not listed'}`);
1077
+ if (r.unknown?.length) out(` could not ask: ${r.unknown.join(', ')}`);
1075
1078
  if (r.note) out(` ${r.note}`);
1076
1079
  out(` checked: ${r.checked.map((c) => c.name).join('; ')}`);
1077
1080
  out(` deeper: ${r.deeper.url}`);