Skip to content

Commit

Permalink
Release v1.1.1 (#35)
Browse files Browse the repository at this point in the history
- deps: bump all to latest
- style: automated code formatting with prettier
- populate [files] in package.json
- doc(CONTRIBUTORS): added
- doc: mv Changes.md CHANGELOG.md
  • Loading branch information
msimerson authored Jan 22, 2025
1 parent fb08c8b commit af7bf69
Show file tree
Hide file tree
Showing 14 changed files with 403 additions and 355 deletions.
8 changes: 4 additions & 4 deletions .codeclimate.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
engines:
eslint:
enabled: true
channel: "eslint-8"
channel: 'eslint-9'
config:
config: ".eslintrc.yaml"
config: 'eslint.config.mjs'

checks:
return-statements:
Expand All @@ -13,5 +13,5 @@ checks:
threshold: 10

ratings:
paths:
- "**.js"
paths:
- '**.js'
22 changes: 0 additions & 22 deletions .eslintrc.yaml

This file was deleted.

9 changes: 4 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
name: CI

on: [ push, pull_request ]
on: [push, pull_request]

env:
CI: true

jobs:

lint:
uses: haraka/.github/.github/workflows/lint.yml@master

ubuntu:
needs: [ lint ]
needs: [lint]
uses: haraka/.github/.github/workflows/ubuntu.yml@master

windows:
needs: [ lint ]
needs: [lint]
uses: haraka/.github/.github/workflows/windows.yml@master
if: ${{ false }} # disabled, until Redis for GHA Windows exists
if: ${{ false }} # disabled, until Redis for GHA Windows exists
6 changes: 3 additions & 3 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
name: "CodeQL"
name: 'CodeQL'

on:
push:
branches: [ master ]
branches: [master]
pull_request:
branches: [ master ]
branches: [master]
schedule:
- cron: '18 7 * * 4'

Expand Down
1 change: 0 additions & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,3 @@ jobs:
publish:
uses: haraka/.github/.github/workflows/publish.yml@master
secrets: inherit

2 changes: 2 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
singleQuote: true
semi: false
2 changes: 1 addition & 1 deletion .release
25 changes: 15 additions & 10 deletions Changes.md → CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,16 @@
# Changelog

#### N.N.N - YYYY-MM-DD
The format is based on [Keep a Changelog](https://keepachangelog.com/).

### Unreleased

### [1.1.1] - 2025-01-22

- deps: bump all to latest
- style: automated code formatting with prettier
- populate [files] in package.json
- doc(CONTRIBUTORS): added
- doc: mv Changes.md CHANGELOG.md

### [1.1.0] - 2023-12-12

Expand All @@ -9,55 +19,50 @@
- ci(publish): only when package.json modified
- ci: use shared workflows


#### 1.0.9 - 2022-05-28

- restore a plugin = this, context demands it
- add .release submodule


### 1.0.8 - 2022-05-24

- feat(redis): compatibility with redis 4
- dep(eslint): 4 -> 8
- dep(pi-redis): * -> 2
- dep(pi-redis): \* -> 2
- ci: replace travis/appveyor with GHA
- lint: prefer-template
- doc(README): badge updates
- style: plugin -> this


### 1.0.7 - 2019-03-16

- assure already_matched has 'this' in context.
- add some es6 interpoled strings


### 1.0.6 - 2018-12-06

- move declarations up to restore `var` variable hoisting behavior


### 1.0.5 - 2018-11-16

- reduce severity of log message when no passing dkim results


### 1.0.4 - 2018-11-16

- quit redis conn after last test
- add skeleton support for TLS validation
- travis: remove node 4, add node 8 CI testing


### 1.0.3 - 2016-02-06

- inherit redis config from redis.ini
- add tests for get_recipient_domains_by_txn


### 1.0.2 - 2016-02-06

- inherit from haraka-plugin-redis (vs redis)

[1.1.0]: https://github.com/haraka/haraka-plugin-known-senders/releases/tag/1.1.0
[1.1.1]: https://github.com/haraka/haraka-plugin-known-senders/releases/tag/v1.1.1
[1.0.8]: https://github.com/haraka/haraka-plugin-known-senders/releases/tag/1.0.8
[1.0.9]: https://github.com/haraka/haraka-plugin-known-senders/releases/tag/1.0.9
9 changes: 9 additions & 0 deletions CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Contributors

This handcrafted artisinal software is brought to you by:

| <img height="80" src="https://avatars.githubusercontent.com/u/261635?v=4"><br><a href="https://github.com/msimerson">msimerson</a> (<a href="https://github.com/haraka/haraka-plugin-known-senders/commits?author=msimerson">53</a>) |
| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |

<sub>this file is generated by [.release](https://github.com/msimerson/.release).
Contribute to this project to get your GitHub profile included here.</sub>
13 changes: 2 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
[![Build Status][ci-img]][ci-url]
[![Code Climate][clim-img]][clim-url]

[![NPM][npm-img]][npm-url]

# haraka-plugin-known-senders

Increase the reputation of domains you exchange email with by sending them email.

## Synopsis

Known Senders is based on the premise that domains users send email to are domains they also want to receive email from. By maintaining lists of domains that local users send email to, a weak but helpful form of automatic whitelisting is obtained.
Known Senders is based on the premise that domains users send email to are domains they also want to receive email from. By maintaining lists of domains that local users send email to, a weak but helpful form of trust is obtained.

## How it works

Expand All @@ -25,35 +23,28 @@ Such a karma rule would look like this:

`280 = known-senders | pass | length | gt 0 | 5 | Known Sender`


## Authentication

Inbound messages are only checked against the known-senders list when the sender's Organizational Domain can be validated against a form of domain authentication.

There has currently three authentication mechanisms that can validate that a sending host has authority to send on behalf of the [purported] sending domain:
The current authentication mechanisms that can validate that a sending host has authority to send on behalf of the [purported] sending domain are:

- FCrDNS: [Forward Confirmed reverse DNS](https://en.wikipedia.org/wiki/Forward-confirmed_reverse_DNS)
- SPF: [Sender Policy Framework](https://en.wikipedia.org/wiki/Sender_Policy_Framework)
- DKIM: [DomainKeys Identified Mail](https://en.wikipedia.org/wiki/DomainKeys_Identified_Mail)


## Ideas for additional authentication mechanisms

Mechanisms need not be 100% effective to be useful.

- TLS certficate names
- GeoLocation


## Limitations

This plugin can boost the reputation of most marginally deliverable ham. Where it doesn't help is for messages coming from a Windows Exchange server (no DKIM signing support without $$$ 3rd party plugin) on a lame ISPs network that doesn't let them configure reverse DNS and whose admins haven't the clue to set up SPF properly.



[ci-img]: https://github.com/haraka/haraka-plugin-known-senders/actions/workflows/ci.yml/badge.svg
[ci-url]: https://github.com/haraka/haraka-plugin-known-senders/actions/workflows/ci.yml
[clim-img]: https://codeclimate.com/github/haraka/haraka-plugin-known-senders/badges/gpa.svg
[clim-url]: https://codeclimate.com/github/haraka/haraka-plugin-known-senders
[npm-img]: https://nodei.co/npm/haraka-plugin-known-senders.png
[npm-url]: https://www.npmjs.com/package/haraka-plugin-known-senders
28 changes: 28 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import globals from 'globals'
import path from 'node:path'
import { fileURLToPath } from 'node:url'
import js from '@eslint/js'
import { FlatCompat } from '@eslint/eslintrc'

const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename)
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all,
})

export default [
...compat.extends('@haraka'),
{
languageOptions: {
globals: {
...globals.node,
...globals.mocha,
},
},
rules: {
'no-unused-vars': ['warn', { caughtErrorsIgnorePattern: '^ignore' }],
},
},
]
Loading

0 comments on commit af7bf69

Please sign in to comment.