Skip to content

Latest commit

 

History

History
893 lines (676 loc) · 47.9 KB

CHANGELOG.md

File metadata and controls

893 lines (676 loc) · 47.9 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.8.0 (2021-05-10)

Chore

  • update version 0.7.1 → 0.8.0
  • add linux musl & i686-gnu targets
  • add custom macOS linker for RWX execution
  • add CI for rust stable
  • use latest macOS iamge (10.15)
  • disable 'i686-apple-darwin' CI Since macOS x86 is now a tier 3 target, the advantages of supporting this target has greatly diminished. For now, it's CI suite will be disabled.
  • update 'cfg-if' dependency
  • use shield badges for Azure
  • simplify target configuration
  • update dependencies

Bug Fixes

  • replace deprecated features
  • remove deprecated '--all' flag
  • 32-bit range calculation overflow
  • replace obsolete 'kernel32-sys' dependency
  • use new 'Protection' constants
  • replace deprecated 'asm!'

Style

  • apply rustfmt

Commit Statistics

  • 18 commits contributed to the release.
  • 624 days passed between releases.
  • 17 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version 0.7.1 → 0.8.0 (07b3465)
    • Apply rustfmt (9c7dcb0)
    • Add unstable feature use of const_fn_trait_bound (44f2111)
    • Replace deprecated features (5bdab40)
    • Remove deprecated '--all' flag (6c1d92c)
    • Add linux musl & i686-gnu targets (5808bed)
    • Add custom macOS linker for RWX execution (6af8b28)
    • Add CI for rust stable (aeadc00)
    • Use latest macOS iamge (10.15) (1aa9cc8)
    • Disable 'i686-apple-darwin' CI (f792981)
    • 32-bit range calculation overflow (ee9f820)
    • Update 'cfg-if' dependency (b840d9e)
    • Replace obsolete 'kernel32-sys' dependency (f2c3f4c)
    • Use shield badges for Azure (d651621)
    • Simplify target configuration (28c0fde)
    • Update dependencies (3f7f55b)
    • Use new 'Protection' constants (e6fa25f)
    • Replace deprecated 'asm!' (eb49d95)

0.7.1 (2019-08-25)

Chore

  • update version 0.7.0 → 0.7.1
  • use azure for all CI
  • add missing 32-bit libs
  • add azure pipelines configuration

New Features

  • add support for scoped visibility
  • test latest udis86
  • update dependencies

Bug Fixes

  • use the latest published libudis86
  • disable GNU targets for azure
  • explicitly drop boxed data
  • use atomic for detour enabled state

Refactor

  • use inner functions for tests
  • prevent 'FreeRegionIter' from being exposed

Commit Statistics

  • 13 commits contributed to the release.
  • 76 days passed between releases.
  • 13 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version 0.7.0 → 0.7.1 (23c7fb4)
    • Use the latest published libudis86 (e2c8866)
    • Use azure for all CI (c41834b)
    • Disable GNU targets for azure (e658cfc)
    • Explicitly drop boxed data (a099038)
    • Add support for scoped visibility (09cda49)
    • Test latest udis86 (03ca7e4)
    • Add missing 32-bit libs (4de8f01)
    • Add azure pipelines configuration (53997fa)
    • Use inner functions for tests (b8170ff)
    • Update dependencies (49cfaf3)
    • Use atomic for detour enabled state (a12175c)
    • Prevent 'FreeRegionIter' from being exposed (e5124e1)

0.7.0 (2019-06-10)

Chore

  • update version 6.0 → 7.0

Documentation

  • add 'MessageBoxW' detour example
  • update comments
  • update macro/detour comments

New Features

  • return '&self' from 'initialize'
  • migrate to '2018' edition
  • implement std 'Error' trait

Bug Fixes

  • add missing 'dyn' specifiers
  • temporarily remove 'musl' CI tests Cargo does not enable OS/cfg specific examples, so the 'cdylib' tests errors when using 'musl' due to not supporting the crate type. Temporarily remove these targets until a workaround can be implemented.
  • use 'dyn' for dynamic dispatches
  • remove 'const_fn' thanks to 2018 macros
  • remove 'ref' prefix
  • iterator for descending regions

Refactor

  • use stabilized range 'contains'
  • use 'expect' prior to 'unwrap'
  • remove 'tap' dependency
  • remove 'Boolinator' dependency
  • simplify 'StaticDetour' API
  • use 'static ref' instead of 'struct'

Style

  • apply rustfmt
  • normalize macro indentation
  • normalize indentation

Commit Statistics

  • 22 commits contributed to the release.
  • 157 days passed between releases.
  • 22 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version 6.0 → 7.0 (7ff857d)
    • Add missing 'dyn' specifiers (03b8db9)
    • Temporarily remove 'musl' CI tests (5e85585)
    • Add 'MessageBoxW' detour example (81ee843)
    • Use 'dyn' for dynamic dispatches (7d799b2)
    • Return '&self' from 'initialize' (10ce422)
    • Update comments (1ba909e)
    • Use stabilized range 'contains' (073e0e7)
    • Remove 'const_fn' thanks to 2018 macros (a4a4172)
    • Apply rustfmt (ab9f22a)
    • Migrate to '2018' edition (6682e77)
    • Use 'expect' prior to 'unwrap' (693abce)
    • Remove 'ref' prefix (1ac7403)
    • Update macro/detour comments (6b7b2f7)
    • Remove 'tap' dependency (80cd96f)
    • Remove 'Boolinator' dependency (dd8dbd0)
    • Simplify 'StaticDetour' API (9a9c143)
    • Use 'static ref' instead of 'struct' (24f2ce1)
    • Normalize macro indentation (46cda10)
    • Implement std 'Error' trait (4ce4112)
    • Iterator for descending regions (eeb82ca)
    • Normalize indentation (7d80778)

0.6.0 (2019-01-03)

Chore

  • update version 0.5 → 0.6 This version greatly decreases the compile time and total number of required dependencies.
  • update dependencies
  • add windows (GNU) to travis config

Bug Fixes

  • remove 'failure' as dependency

Commit Statistics

  • 6 commits contributed to the release.
  • 234 days passed between releases.
  • 4 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version 0.5 → 0.6 (bfa4c41)
    • Update dependencies (4dc337d)
    • Remove 'failure' as dependency (c54bb3c)
    • Add windows (GNU) to travis config (5cd38b5)
    • Update static_detours to support "thiscall" convention (19c88cd)
    • Bump generic-array and tap versions (7af703d)

0.5.0 (2018-05-14)

Chore

  • update editorconfig; matches rustfmt.toml

New Features

  • update version → 0.5

Bug Fixes

  • apply clippy recommendations
  • use local Error type instead of failure

Commit Statistics

  • 4 commits contributed to the release.
  • 49 days passed between releases.
  • 4 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version → 0.5 (8b88bd2)
    • Apply clippy recommendations (25f5cc1)
    • Update editorconfig; matches rustfmt.toml (70931ee)
    • Use local Error type instead of failure (ecb9d87)

0.4.1 (2018-03-26)

Documentation

  • add distinction between travis/appveyor

New Features

  • update version → 0.4.1
  • add clippy config
  • add rustfmt config

Bug Fixes

  • scoping issue with 1.26 nightly

Refactor

  • use doc for attribute test

Style

  • format project using rustfmt

Commit Statistics

  • 9 commits contributed to the release.
  • 20 days passed between releases.
  • 7 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version → 0.4.1 (9e7f222)
    • Add clippy config (a0419ff)
    • Format project using rustfmt (927ab0a)
    • Add rustfmt config (f3d0c05)
    • Use doc for attribute test (f7d34c8)
    • Scoping issue with 1.26 nightly (87fec81)
    • Add distinction between travis/appveyor (31bc37a)
    • Merge branch 'kgv-master' (48de87a)
    • Merge branch 'master' into master (f1a7055)

0.4.0 (2018-03-05)

New Features

  • update version → 0.4
  • update dependencies
  • improve architecture abstraction. This change includes a ton of refactoring that should have been split into multiple atomic commits. The architecture specific code has a much improved abstraction whilst the nightly feature is no longer required.

Bug Fixes

  • use wrapping_add in handle_relative_branch
    • displacement can be negative in some cases

Refactor

  • StaticThunk → FixedThunk
  • Closure → Vec for x64 thunks

Commit Statistics

  • 8 commits contributed to the release.
  • 151 days passed between releases.
  • 8 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version → 0.4 (192ce59)
    • Update dependencies (785e344)
    • StaticThunk → FixedThunk (873270f)
    • Improve architecture abstraction. (254a295)
    • Closure → Vec for x64 thunks (7d20fc0)
    • Use wrapping_add in handle_relative_branch (5d708e9)
    • Static_detours macro parse meta attributes #4 (8eedeba)
    • Generate 'call' method for unsafe types (d11d729)

0.4.0-alpha.3 (2024-10-24)

Commit Statistics

  • 8 commits contributed to the release.
  • 344 days passed between releases.
  • 0 commits were understood as conventional.
  • 6 unique issues were worked on: #41, #50, #53, #54, #55, #61

Commit Details

view details
  • #41
    • Replace udis with iced-x86 (19f2132)
  • #50
    • Fix temp window not disappearing in dxgi present example (6496309)
  • #53
    • Support Detouring Functions With >14 Args (ad52613)
  • #54
    • Fix windows-gnu ci by downgrading mingw version (cde49b9)
  • #55
    • Fix detour not disabling on drop in release mode (3bab630)
  • #61
    • Replace asm! in naked functions with naked_asm! after new nightly update (e063c32)
  • Uncategorized
    • Release retour v0.4.0-alpha.3 (f5f2429)
    • Adjusting changelogs prior to release of retour v0.4.0-alpha.3 (7258db2)

0.4.0-alpha.2 (2023-11-15)

New Features

  • add trailing comma support

Bug Fixes

  • fix: remove feature attribute definition
  • Keep thiscall-abi feature gate for back compat
  • Update docs for required thiscall-abi version

Commit Statistics

  • 4 commits contributed to the release.
  • 63 days passed between releases.
  • 2 commits were understood as conventional.
  • 2 unique issues were worked on: #34, #45

Commit Details

view details
  • #34
    • Remove feature requirement for thiscall (3bf7863)
  • #45
    • Add trailing comma support (faaeec3)
  • Uncategorized

0.4.0-alpha.1 (2023-09-12)

Commit Statistics

  • 12 commits contributed to the release.
  • 98 days passed between releases.
  • 0 commits were understood as conventional.
  • 6 unique issues were worked on: #24, #26, #30, #31, #38, #39

Commit Details

view details

0.3.1 (2023-07-18)

v0.3.0 (2017-10-05)

Bug Fixes

  • use features for latest nightly

New Features

  • update version 0.2 → 0.3

Chore

  • Release retour version 0.3.0

Commit Statistics

  • 2 commits contributed to the release.
  • 21 days passed between releases.
  • 2 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version 0.2 → 0.3 (4e3676f)
    • Use features for latest nightly (9581661)

v0.2.0 (2017-09-14)

New Features

  • update version 0.1.1 → 0.2
  • update dependency versions. Also remove backtrace from error-chain for XP support.

Chore

  • Release retour version 0.2.0
  • squelch various lints

Bug Fixes

  • GenericDetour doesn't accept unsafe fns

Other

  • update ctor

Commit Statistics

  • 4 commits contributed to the release.
  • 83 days passed between releases.
  • 2 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Update version 0.1.1 → 0.2 (7c7a75f)
    • Update dependency versions. (ff71a86)
    • Merge pull request #2 from nick70/master (c585dfd)
    • Fix spelling mistake. (c3c9ee2)

0.1.1 (2017-06-22)

Documentation

  • add badges to Cargo

Bug Fixes

  • warning on 32-bit
  • use volatile cell to prevent inlining

Refactor

  • variant → detour, x86 → arch/x86

Commit Statistics

  • 4 commits contributed to the release.
  • 4 days passed between releases.
  • 4 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized
    • Add badges to Cargo (5f0583b)
    • Warning on 32-bit (ff37447)
    • Use volatile cell to prevent inlining (46ed445)
    • Variant → detour, x86 → arch/x86 (df1764b)

v0.1.0 (2017-06-17)

Chore

  • update version 0.7.1 → 0.8.0
  • add linux musl & i686-gnu targets
  • add custom macOS linker for RWX execution
  • add CI for rust stable
  • use latest macOS iamge (10.15)
  • disable 'i686-apple-darwin' CI Since macOS x86 is now a tier 3 target, the advantages of supporting this target has greatly diminished. For now, it's CI suite will be disabled.
  • update 'cfg-if' dependency
  • use shield badges for Azure
  • simplify target configuration
  • update dependencies
  • update version 0.7.0 → 0.7.1
  • use azure for all CI
  • add missing 32-bit libs
  • add azure pipelines configuration
  • update version 6.0 → 7.0
  • update version 0.5 → 0.6 This version greatly decreases the compile time and total number of required dependencies.
  • update dependencies
  • add windows (GNU) to travis config
  • update editorconfig; matches rustfmt.toml
  • add continous integration

Documentation

  • stylize caption
  • add 'MessageBoxW' detour example
  • update comments
  • update macro/detour comments
  • add distinction between travis/appveyor
  • add badges to Cargo
  • mention type of detour
  • add special mention
  • fix styling
  • fix appendix anchor
  • add readme appendix

New Features

  • add support for scoped visibility
  • test latest udis86
  • update dependencies
  • return '&self' from 'initialize'
  • migrate to '2018' edition
  • implement std 'Error' trait
  • update version → 0.5
  • update version → 0.4.1
  • add clippy config
  • add rustfmt config
  • update version → 0.4
  • update dependencies
  • improve architecture abstraction. This change includes a ton of refactoring that should have been split into multiple atomic commits. The architecture specific code has a much improved abstraction whilst the nightly feature is no longer required.
  • update version 0.2 → 0.3
  • update version 0.1.1 → 0.2
  • update dependency versions. Also remove backtrace from error-chain for XP support.
  • implement proper static detours
  • split InlineDetour → RawDetour/GenericDetour
  • implement static detours
  • update slice-pool → 0.3.4
  • update dependency versions
  • add editorconfig
  • refactor file organisation
  • localize dependencies
  • add test for address range
  • only implement inline detour
  • implemented memory pool
  • add mutex for unique access
  • initial commit

Bug Fixes

  • replace deprecated features
  • remove deprecated '--all' flag
  • 32-bit range calculation overflow
  • replace obsolete 'kernel32-sys' dependency
  • use new 'Protection' constants
  • replace deprecated 'asm!'
  • use the latest published libudis86
  • disable GNU targets for azure
  • explicitly drop boxed data
  • use atomic for detour enabled state
  • add missing 'dyn' specifiers
  • temporarily remove 'musl' CI tests Cargo does not enable OS/cfg specific examples, so the 'cdylib' tests errors when using 'musl' due to not supporting the crate type. Temporarily remove these targets until a workaround can be implemented.
  • use 'dyn' for dynamic dispatches
  • remove 'const_fn' thanks to 2018 macros
  • remove 'ref' prefix
  • iterator for descending regions
  • remove 'failure' as dependency
  • apply clippy recommendations
  • use local Error type instead of failure
  • scoping issue with 1.26 nightly
  • use wrapping_add in handle_relative_branch
    • displacement can be negative in some cases

Refactor

  • use inner functions for tests
  • prevent 'FreeRegionIter' from being exposed
  • use stabilized range 'contains'
  • use 'expect' prior to 'unwrap'
  • remove 'tap' dependency
  • remove 'Boolinator' dependency
  • simplify 'StaticDetour' API
  • use 'static ref' instead of 'struct'
  • use doc for attribute test
  • StaticThunk → FixedThunk
  • Closure → Vec for x64 thunks
  • variant → detour, x86 → arch/x86
  • general improvements

Style

  • apply rustfmt
  • apply rustfmt
  • normalize macro indentation
  • normalize indentation
  • format project using rustfmt

Commit Statistics

  • 24 commits contributed to the release.
  • 24 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details

view details
  • Uncategorized