Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(main): release 3.0.0 #2

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

github-actions[bot]
Copy link

@github-actions github-actions bot commented Jan 5, 2025

🤖 I have created a release beep boop

3.0.0 (2025-01-05)

Features

  • add "postal:update" task (b35eea6)
  • add health server and prometheus metrics to worker (a2eb70e)
  • add helm env var config exporter (8938988)
  • add option to delay starting processes until all migrations are run (1c5ff5a)
  • add prometheus metrics to smtp server (2e7b36c)
  • add prometheus metrics to worker (bea7450)
  • add sha256 signatures to outgoing http requests (#2874) (96d7365)
  • automatically remove queued messages with stale locks (#2872) (d84152e)
  • configurable trusted proxies for web requests (3785c99)
  • include list-unsubscribe-post header in dkim signatures (e1bae60), closes #2789 #2788
  • load signing key path from POSTAL_SIGNING_KEY_PATH (4a46f69)
  • more consistent logging (044058d)
  • new background work process (dc8e895)
  • new configuration system (and schema) (#2819) (0163ac3)
  • only accept RFC-compliant End-of-DATA sequence (0140dc4)
  • openid connect support (#2873) (5ed94f6)
  • privacy mode (15f9671)
  • prometheus: add postal_message_queue_latency metric (ee8d829)
  • remove strip_received_headers config option (ed2e62b)
  • support for additional SMTP client options (0daa667)
  • support for configuring postal with environment variables (854aa5e)
  • worker: allow number of threads to be configured (7e2accc)
  • worker: scale connection pool with worker threads (ea542a0)

Bug Fixes

  • add ruby platform to gemfile (1fceef7)
  • adds new connection pool which will discard failed clients (54306a9), closes #2780
  • default to listening on all addresses when using legacy config (48f6494)
  • don't override paths in dockerfile (9399e32)
  • don't use authentication on org & server deletion (be45652)
  • don't use indifferent access for job params (2bad645), closes #2477 #2714 #2476 #2500
  • duplicate string before modifying it to prevent frozen string errors (f0a8aca)
  • ensure encoding is set for message db (ae30cc7)
  • explicitly disable TLS & starttls for unknown SSL modes (42ab5b3), closes #2564
  • extract x-postal-tag before holding (6b2bf90), closes #2684
  • fix postal version command (4fa88ac)
  • fix bug in smtp server when exceptions occur (9dd00f6)
  • fix bug with received header in SMTP server (ba5bfbd)
  • fix issue running message pruning task (3a33e53)
  • fix issue with sending mail when smtp relays are configured (6dd6e29)
  • fix smtp TLS (defb511)
  • fixed typo (rfc number) (2f62baa)
  • fixes postal default-dkim-record (58dddeb)
  • fixes error messages in web ui (71f51db)
  • fixes issue starting application in production mode (4528a14)
  • fixes issue with SMTP sender with address endpoints (2621a19)
  • fixes potential issue if machine hostname cannot be determined (0fcf778)
  • fixes typo in on track domains page (77bd77b)
  • ignore message DB migrations in autoloader (3fb40e4)
  • legacy-api: allow _expansions to be provided as true to return all expansions (39f704c), closes #2932
  • mail view encoding issue #2462 (#2596) (59f4478)
  • match IPv4 mapped IPv6 addresses when searching for SMTP-IP credentials (8b525d0)
  • message-dequeuer: ability to disable batching (4fcb9e9)
  • message-dequeuer: ensure SMTP endpoints are sent to SMTP sender appropriately (e2d642c), closes #2853
  • move tracking middleware before host authorization (49cceaa), closes #2415
  • raise an error if MX lookup times out during sending (fadca88), closes #2833
  • raise NotImplementedError when no call method on a scheduled task (2b0919c)
  • re-add reconnect: true to database (7bc5230)
  • remove support for setting the 'ssl' option for app-level smtp use (658aa71)
  • remove user email verification (e05f0b3)
  • retry mysql connections on message DB pool (f9f7fb3)
  • set correct component in health server log lines (a7a9a18)
  • smtp-sender: ensure relays without a host are excluded (3a56ec8)
  • smtp-sender: fixes SMTPSender.smtp_relays (b3264b9)
  • smtp-server: add additional information to cram-md5 log entries (9982bb8)
  • smtp-server: fixes proxy protocol (9240612)
  • smtp-server: listen on all interfaces by default (d1e5b68), closes #2852
  • smtp-server: remove ::ffff: from the start of ipv4 addresses (0dc7359)
  • smtp-server: reset ansi sequence after logging (9bf6152)
  • translate unicode domain names to Punycode for compatibility with DNS (#2823) (be0df7b)
  • truncate output and details in deliveries to 250 characters (694240d), closes #2831
  • typo in the credentials page (fd3c7cc)
  • ui: fixes typo on queue page (33513a7)
  • unescape in URLs which are stored for tracking (1da1182), closes #2568 #907 #115
  • update raw headers after changing messages to during parsing (2834e2c), closes #2816
  • update wording about tracking domain cnames (0d3eccb), closes #2808
  • upgrade nokogiri (f05c2e4)
  • use correct method for disconnecting smtp connections (7c23994)
  • use local resolver for DNS tests (github actions blocks DNS seemingly) (a4d039c)
  • use utc timestamps when determining raw table names (ce19bf7)
  • web-server: allow for trusted proxies not be set (4e1deb2)

Documentation

  • add message_db.encoding to config docs (0c1f925)
  • add new repo readme welcome image (afa1726)
  • add quick contributing instructions (8d21adc)
  • update docs for how IP address allocation works (07eb152), closes #2209
  • update readme (df096ab)
  • update SECURITY policy (cfc1c9b)

Styles

  • rubocop: disable complexity cops for now (930cf39)
  • rubocop: disable Style/SpecialGlobalVars (be97f43)
  • rubocop: disable Style/StringConcatenation cop (d508772)
  • rubocop: Layout/* (0e0aca0)
  • rubocop: Layout/EmptyLineAfterMagicComment (0e4ed5c)
  • rubocop: Layout/EmptyLines (0cf35a8)
  • rubocop: Layout/EmptyLinesAroundBlockBody (cfd8d63)
  • rubocop: Layout/LeadingCommentSpace (59f299b)
  • rubocop: Layout/LineLength (e142d0d)
  • rubocop: Layout/MultilineMethodCallBraceLayout (a5d5ba5)
  • rubocop: Lint/DuplicateBranch (a1dc0f7)
  • rubocop: Lint/DuplicateMethods (bab6346)
  • rubocop: Lint/IneffectiveAccessModifier (6ad56ee)
  • rubocop: Lint/MissingSuper (4674e63)
  • rubocop: Lint/RedundantStringCoercion (12a5ef3)
  • rubocop: Lint/ShadowedException (0966b44)
  • rubocop: Lint/ShadowingOuterLocalVariable (7119e86)
  • rubocop: Lint/SuppressedException (278ef08)
  • rubocop: Lint/UnderscorePrefixedVariableName (ec7dcf4)
  • rubocop: Lint/UnusedBlockArgument (ee94e4e)
  • rubocop: Lint/UselessAssignment (7590a46)
  • rubocop: Naming/FileName (919a601)
  • rubocop: Naming/MemoizedInstanceVariableName (9563f30)
  • rubocop: relax method length and block nexting for now (b0ac9ef)
  • rubocop: remaining offences (ec63666)
  • rubocop: Security/YAMLLoad (389ea77)
  • rubocop: Style/AndOr (b9f3f31)
  • rubocop: Style/ClassAndModuleChildren (e896f46)
  • rubocop: Style/For (04a3483)
  • rubocop: Style/FrozenStringLiteralComment (6ab36c0)
  • rubocop: Style/GlobalStdStream (75be690)
  • rubocop: Style/GlobalVars (157d114)
  • rubocop: Style/HashEachMethods (c995027)
  • rubocop: Style/HashExcept (83ac764)
  • rubocop: Style/IdenticalConditionalBranches (6a58ecf)
  • rubocop: Style/MissingRespondToMissing (ffcb707)
  • rubocop: Style/MultilineBlockChain (c6326a6)
  • rubocop: Style/MutableConstant (129dffa)
  • rubocop: Style/NumericPredicate (c558f1c)
  • rubocop: Style/PreferredHashMethods (013b3ea)
  • rubocop: Style/SafeNavigation (00a02f2)
  • rubocop: Style/SelectByRegexp (9ce28a4)
  • rubocop: Style/StringLiterals (b4cc812)
  • rubocop: Style/TrailingCommaInArrayLiteral (4e13577)
  • rubocop: Style/WordArray (bd85920)
  • rubocop: update rubocop rules (6d4dea7)
  • rubocop: use _ when not using a variable in helm config exporter (2c20ba6)

Miscellaneous Chores

  • add annotations to factories and models specs (ed6da11)
  • add arm64 platform (de88201)
  • add binstubs for bundle and rspec (41f6cf4)
  • add script for generating smtp TLS certificates (6eb16c3)
  • add script to send html emails to a local SMTP server (8794a2f)
  • allow config location message to be suppressed (f760cdb)
  • annotate models (6214892)
  • build: fixes docker login action credentials (8810856)
  • build: improve build process, add release please (#2414) (5222263)
  • config-docs: update docs for latest oidc defaults (364eba6)
  • config-docs: update proxy protocol to mention v1 (45dd8aa)
  • consolidate platforms in Gemfile (7963c8a)
  • container: add the branch name to the container (bee5098)
  • gha: upgrade github checkout action, don't create arm images for CI, add qemu (a9ade3c)
  • github-actions: add 'docs' label to exclude from staleness checks (57b72fb)
  • github-actions: add action to close stale issues and PRs (d90a456)
  • github-actions: allow stale action to be run on demand (559b08d)
  • github-actions: don't generate commit- tags (d65bbe0)
  • github-actions: don't run for dependabot or release-please PRs and fetch whole repo (adaf2b0)
  • github-actions: include a version string on branch-*/latest images (64bc7dc)
  • hide further config messages (1c67f72)
  • main: release 2.1.5 (#2461) (64cab2e)
  • main: release 2.1.6 (#2765) (26aae29)
  • main: release 2.2.0 (#2766) (ff901e9)
  • main: release 2.2.1 (#2773) (304828a)
  • main: release 2.2.2 (#2783) (19e3bc2)
  • main: release 2.3.0 (b8bab1b)
  • main: release 2.3.1 (#2812) (18ba714)
  • main: release 2.3.2 (343292b)
  • main: release 3.0.0 (7030fd5)
  • main: release 3.0.1 (7fd538d)
  • main: release 3.0.2 (93cbe31)
  • main: release 3.1.0 (4acfffd)
  • main: release 3.1.1 (#2859) (4c27bae)
  • main: release 3.2.0 (#2867) (8e71dd0)
  • main: release 3.2.1 (#2877) (144af20)
  • main: release 3.2.2 (#2878) (6a1ff56)
  • main: release 3.3.0 (#2887) (eded789)
  • main: release 3.3.1 (#2890) (a3fab36)
  • main: release 3.3.2 (#2892) (c12f30e)
  • main: release 3.3.3 (#2933) (d510499)
  • main: release 3.3.4 (#3014) (da90e75)
  • reduce threads for bundling in docker (5b022b9)
  • regenerate config docs (5d8213a)
  • release 3.0.0 (47b203c)
  • remove -j4 from bundle install as it shouldn't be needed (0b468f9)
  • remove non-breaking spaces from comments (27b7ced)
  • remove old example messages (9db781c), closes #2635 #2627
  • removing arm64 support until we can get a reasonable build pipeline sorted (e8e44f5)
  • silence message DB migrations during provisioning (c83601a)
  • suppress config location on default-dkim-record (aa76aae)
  • ui: display branch in footer if present (1823617)
  • update CHANGELOG about v3 (fd33e21)
  • update MIT-LICENCE (dbd0e27)
  • update release please to include more categories in changelog (e156c21)
  • upgrade bundler to 2.5.6 (1ae8ef6)
  • upgrade puma (3f1343b)
  • upgrade rails to 6.1.7.6 (409a4a2)
  • upgrade rails to 7.0 and other dependencies (ecd09a2)
  • upgrade ruby to 3.2.2 and nodejs to 20.x (72715fe)

Code Refactoring

  • be less verbose with message DB migrations (90d3a3f)
  • change domain used for dns resolver testing (87d35d7)
  • move app/util/* to app/lib/ (eb246bb)
  • move lib/postal/received_header to app/lib/received_header (e3bc9da)
  • move lib/postal/reply_separator to app/lib/reply_separator (5cc9eb3)
  • move lib/postal/smtp_server to app/lib/smtp_server (321ab95)
  • move lib/postal/user_creator to app/util/user_creator (64b2704)
  • move Postal::BounceMessage to app/models/bounce_message (05d2ec4)
  • move Postal::DKIMHeader to app/util/dkim_header (77faf88)
  • move Postal::QueryString to app/util/query_string (870b26c)
  • move senders in to app/senders/ (73a55a5)
  • move tracking middleware (b8ad732)
  • move worker from lib/worker to app/lib/worker (93fc120)
  • refactor DNS resolution (1a41586)
  • refactor log use within SMTP server (cae4b63), closes #2794 #2791
  • refactor the SMTP sender (633c509)
  • refactor webhook deliveries (e0403ba)
  • refactors message dequeueing (#2810) (a44e1f9)
  • remove explicit autoload (0f9882f)
  • remove moonrope but maintain legacy API actions (#2889) (4d9654d)
  • remove Postal::Job.perform method (990b575)
  • remove Postal.database_url (96ba4b8)
  • remove reloading on the smtp server (c3c304e)
  • remove token logins (b89e0a9)
  • remove unnecessary modules (38465de)
  • remove unused UserController#join method (1ca18db)
  • switch to use SecureRandom for random strings (ce30c07)
  • versioning: improve how current version and branch is determined and set (07c6b31)

Tests

  • add initial tests for Postal::SMTPServer::Client (dece1d4)
  • add smtp sender test for MX lookup timeouts (e4638a0)
  • add test for multiline headers (77e818a)
  • add tests for DNSResolver (8765d8e)
  • add tests for message unqueueing (b4016f6)
  • add tests for Server model (2023200)
  • add tests for the legacy API (3d208d6)
  • additional tests for batched messages when unqueueing messages (8b61100)
  • FactoryBot.lint will lint all registered factories (25d7d66)
  • fix test that was failing due to time differences (465f4d8)
  • move Postal::RpecHelpers to spec/helpers (ee86311)
  • move TestLogger to spec/helpers (3bbbc70)
  • remove FACTORIES_EXCLUDED_FROM_LINT (1cf665a)
  • rename database spec file (b9edcf5)
  • smtp-sender: add more tests for AUTH LOGIN (22dcd49)

This PR was generated with Release Please. See documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants