pure_greeks 0.1.0 → 0.1.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 918296785f22c79dac0dbf36cc96ba5cab3e31364678b2000346dc118e7a2d35
4
- data.tar.gz: 536611801714363ee38eb8ea07eab8c041237138bb78566aaa9340b52d9ec9b0
3
+ metadata.gz: 5e44bcbd751cac43cd63823abc384c1631b44347fa71fba328ae34d0e1bff6b6
4
+ data.tar.gz: 46ebbf40fcae124be29c17ed4f255f461de43058943b2a818bb783df76e80abd
5
5
  SHA512:
6
- metadata.gz: 34dafaf69f927d47690e6606c34bf75bd45a37e71ff349f282e7651a6fee71498d50e3b0a81c086365a9bbf28ac5b1ba446f54776bfcdcd2d12265aef18b2ad4
7
- data.tar.gz: 2c49149f21e39c69332b11abdecdacce14f4f8623e2cd7dd59f4f3f1653903632218a92552d02ee1c9597ea8b7ec00cf338acc4f85936de3660cd138eea47a35
6
+ metadata.gz: de09f7a07b4b7ef66abc637e87d9c2c1e54ac8da2db8fe9b778506b78d6b67f1b907c4aab9336ac4a0dcd28bcee3fdc8ce1261870d159ded31c6604f36840d1c
7
+ data.tar.gz: 6a6dff43e8df46ecbe6d9db42e696585ab2822ed117cdcf5512cf74845b888811fba2f9e4fa823dd187559bd712bf2d31986f40e64942d7df2ba8e17d7cd3017
data/CHANGELOG.md CHANGED
@@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.1.1] - 2026-04-28
10
+
11
+ ### Fixed
12
+
13
+ - Patch `documentation_uri` metadata so it points at https://jayravaliya.com/ruby-pure-greeks/ (the canonical docs URL). 0.1.0's metadata pointed at https://jayrav13.github.io/ruby-pure-greeks/, which 404s. RubyGems metadata is immutable per published version, so this required a patch release even though the gemspec on `main` was already correct (fixed in PR #2).
14
+
9
15
  ## [0.1.0] - 2026-04-26
10
16
 
11
17
  Initial release.
data/CLAUDE.md ADDED
@@ -0,0 +1,45 @@
1
+ # CLAUDE.md — pure_greeks
2
+
3
+ ## The rule
4
+
5
+ Any change that affects public behavior, performance, validation, or
6
+ metadata **must** update every relevant doc surface **in the same PR**.
7
+ Docs that go stale silently are worse than docs that are missing —
8
+ readers learn not to trust them.
9
+
10
+ `PLAN.md` is frozen historical context from the v0.1 build-out and is
11
+ **not** maintained. Don't edit it on new changes.
12
+
13
+ ## Which doc owns which kind of change
14
+
15
+ | Change | Update |
16
+ |---|---|
17
+ | New or changed public API (constructor args, accessors, errors raised) | `docs/usage.md` (constructor table + relevant section), `CHANGELOG.md` |
18
+ | New engine, fallback rule, or numerical method change | `docs/engines.md`, plus `docs/usage.md` if it surfaces in the public API |
19
+ | Performance change (faster, slower, new optimization, default-step change) | `BENCHMARKS.md` (re-run benches and update the tables + v0.2 backlog), `CHANGELOG.md` if user-visible |
20
+ | New known limitation discovered (e.g. unsupported regime) | `docs/limitations.md` |
21
+ | Validation methodology / regression tolerance change | `REGRESSION_REPORT.md` and `docs/validation.md` (Hull tolerances live in the unit specs themselves; if those change, mention it in the report) |
22
+ | RubyGems metadata change (runtime deps, license, URLs, summary) | `pure_greeks.gemspec`, the `## Releasing` section if the flow changes, and `CHANGELOG.md` |
23
+ | Release workflow or CI workflow change | The relevant `.github/workflows/*.yml`, plus `README.md` "Releasing" section if it changes the user-facing flow |
24
+
25
+ If a change clearly touches multiple categories, all of them apply. If
26
+ it touches none of them (refactors, internal cleanup with no behavior
27
+ change), no docs change is required — but write that in the PR
28
+ description so it's intentional, not an oversight.
29
+
30
+ ## Docs site URL
31
+
32
+ The Pages docs render at https://jayravaliya.com/ruby-pure-greeks/ —
33
+ not at the github.io URL. The reason that domain is shared and how
34
+ routing works there is documented at:
35
+
36
+ https://github.com/jayrav13/jayrav13.github.io/blob/main/CLAUDE.md
37
+
38
+ Don't duplicate the routing rules here; just remember that when you
39
+ visit the docs to verify a change, that's the URL.
40
+
41
+ ## Default test command
42
+
43
+ `bundle exec rspec` runs the unit suite and excludes the regression
44
+ suite. Use `bundle exec rake regression` (or `RUN_REGRESSION=1 rspec`)
45
+ when you specifically want to run the Tenor golden-dataset comparison.
data/README.md CHANGED
@@ -6,7 +6,15 @@
6
6
 
7
7
  Pure-Ruby options Greeks (delta, gamma, theta, vega, rho), pricing, and implied volatility for vanilla European and American options. No Python, no QuantLib system dep, no native code.
8
8
 
9
- **Documentation, examples, and engine internals: https://jayrav13.github.io/ruby-pure-greeks/**
9
+ **Documentation, examples, and engine internals: https://jayravaliya.com/ruby-pure-greeks/**
10
+
11
+ ## Author's note
12
+
13
+ Hi folks! I've been working on some options-related projects recently and came across the need to calculate options greeks in Ruby. The solution was to invoke a Python script from a Rails app to generate these numbers and then ingest. That was fine, but I saw that there was a vacuum in this type of library in the Ruby world, so I decided to pair with Claude and make it.
14
+
15
+ Check out the great details available on the Pages site about the different strategies available. Contributions welcome!
16
+
17
+ ---
10
18
 
11
19
  ## Installation
12
20
 
@@ -41,7 +49,7 @@ option.price # => 4.27
41
49
  option.delta # => 0.42
42
50
  ```
43
51
 
44
- For the full API, the implied-volatility solver, how the three engines fall back to one another, validation methodology, and limitations, see the [documentation site](https://jayrav13.github.io/ruby-pure-greeks/).
52
+ For the full API, the implied-volatility solver, how the three engines fall back to one another, validation methodology, and limitations, see the [documentation site](https://jayravaliya.com/ruby-pure-greeks/).
45
53
 
46
54
  ## Development
47
55
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PureGreeks
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pure_greeks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jay Ravaliya
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-04-27 00:00:00.000000000 Z
11
+ date: 2026-04-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: distribution
@@ -78,6 +78,7 @@ files:
78
78
  - ".ruby-version"
79
79
  - BENCHMARKS.md
80
80
  - CHANGELOG.md
81
+ - CLAUDE.md
81
82
  - LICENSE.txt
82
83
  - PLAN.md
83
84
  - README.md
@@ -113,7 +114,7 @@ metadata:
113
114
  homepage_uri: https://github.com/jayrav13/ruby-pure-greeks
114
115
  source_code_uri: https://github.com/jayrav13/ruby-pure-greeks
115
116
  changelog_uri: https://github.com/jayrav13/ruby-pure-greeks/blob/main/CHANGELOG.md
116
- documentation_uri: https://jayrav13.github.io/ruby-pure-greeks/
117
+ documentation_uri: https://jayravaliya.com/ruby-pure-greeks/
117
118
  post_install_message:
118
119
  rdoc_options: []
119
120
  require_paths: