sorbet-baml 0.3.0 → 0.5.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 (121) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +59 -0
  3. data/README.md +32 -11
  4. data/lib/sorbet_baml/dspy_tool_converter.rb +2 -2
  5. data/lib/sorbet_baml/dspy_tool_extensions.rb +1 -1
  6. data/lib/sorbet_baml/type_mapper.rb +14 -2
  7. data/lib/sorbet_baml/version.rb +1 -1
  8. data/lib/sorbet_baml.rb +4 -2
  9. metadata +3 -115
  10. data/.idea/.gitignore +0 -8
  11. data/.idea/inspectionProfiles/Project_Default.xml +0 -5
  12. data/.rspec +0 -3
  13. data/docs-site/.gitignore +0 -48
  14. data/docs-site/Gemfile +0 -5
  15. data/docs-site/Gemfile.lock +0 -140
  16. data/docs-site/Rakefile +0 -3
  17. data/docs-site/bridgetown.config.yml +0 -15
  18. data/docs-site/config/initializers.rb +0 -9
  19. data/docs-site/config/puma.rb +0 -9
  20. data/docs-site/config.ru +0 -5
  21. data/docs-site/esbuild.config.js +0 -11
  22. data/docs-site/frontend/javascript/index.js +0 -22
  23. data/docs-site/frontend/styles/index.css +0 -61
  24. data/docs-site/package.json +0 -18
  25. data/docs-site/postcss.config.js +0 -6
  26. data/docs-site/server/roda_app.rb +0 -9
  27. data/docs-site/src/_components/head.liquid +0 -26
  28. data/docs-site/src/_components/nav.liquid +0 -68
  29. data/docs-site/src/_layouts/default.liquid +0 -27
  30. data/docs-site/src/_layouts/doc.liquid +0 -39
  31. data/docs-site/src/advanced-usage.md +0 -598
  32. data/docs-site/src/getting-started.md +0 -170
  33. data/docs-site/src/index.md +0 -183
  34. data/docs-site/src/troubleshooting.md +0 -317
  35. data/docs-site/src/type-mapping.md +0 -236
  36. data/docs-site/tailwind.config.js +0 -85
  37. data/sorbet/config +0 -6
  38. data/sorbet/rbi/annotations/.gitattributes +0 -1
  39. data/sorbet/rbi/annotations/rainbow.rbi +0 -269
  40. data/sorbet/rbi/gems/.gitattributes +0 -1
  41. data/sorbet/rbi/gems/anthropic@1.5.0.rbi +0 -21252
  42. data/sorbet/rbi/gems/ast@2.4.3.rbi +0 -585
  43. data/sorbet/rbi/gems/async@2.27.3.rbi +0 -9
  44. data/sorbet/rbi/gems/benchmark@0.4.1.rbi +0 -619
  45. data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +0 -9
  46. data/sorbet/rbi/gems/byebug@11.1.3.rbi +0 -37
  47. data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +0 -424
  48. data/sorbet/rbi/gems/connection_pool@2.5.3.rbi +0 -9
  49. data/sorbet/rbi/gems/console@1.33.0.rbi +0 -9
  50. data/sorbet/rbi/gems/date@3.4.1.rbi +0 -75
  51. data/sorbet/rbi/gems/diff-lcs@1.6.2.rbi +0 -1134
  52. data/sorbet/rbi/gems/dry-configurable@1.3.0.rbi +0 -672
  53. data/sorbet/rbi/gems/dry-core@1.1.0.rbi +0 -1729
  54. data/sorbet/rbi/gems/dry-logger@1.1.0.rbi +0 -1317
  55. data/sorbet/rbi/gems/dspy@0.19.1.rbi +0 -6677
  56. data/sorbet/rbi/gems/erb@5.0.2.rbi +0 -878
  57. data/sorbet/rbi/gems/erubi@1.13.1.rbi +0 -155
  58. data/sorbet/rbi/gems/ffi@1.17.2.rbi +0 -2174
  59. data/sorbet/rbi/gems/fiber-annotation@0.2.0.rbi +0 -9
  60. data/sorbet/rbi/gems/fiber-local@1.1.0.rbi +0 -9
  61. data/sorbet/rbi/gems/fiber-storage@1.0.1.rbi +0 -9
  62. data/sorbet/rbi/gems/google-protobuf@4.32.0.rbi +0 -9
  63. data/sorbet/rbi/gems/googleapis-common-protos-types@1.20.0.rbi +0 -9
  64. data/sorbet/rbi/gems/informers@1.2.1.rbi +0 -1875
  65. data/sorbet/rbi/gems/io-console@0.8.1.rbi +0 -9
  66. data/sorbet/rbi/gems/io-event@1.12.1.rbi +0 -9
  67. data/sorbet/rbi/gems/json@2.13.2.rbi +0 -2087
  68. data/sorbet/rbi/gems/language_server-protocol@3.17.0.5.rbi +0 -9
  69. data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +0 -240
  70. data/sorbet/rbi/gems/logger@1.7.0.rbi +0 -963
  71. data/sorbet/rbi/gems/metrics@0.13.0.rbi +0 -9
  72. data/sorbet/rbi/gems/netrc@0.11.0.rbi +0 -159
  73. data/sorbet/rbi/gems/onnxruntime@0.10.0.rbi +0 -304
  74. data/sorbet/rbi/gems/openai@0.16.0.rbi +0 -68055
  75. data/sorbet/rbi/gems/opentelemetry-api@1.6.0.rbi +0 -9
  76. data/sorbet/rbi/gems/opentelemetry-common@0.22.0.rbi +0 -9
  77. data/sorbet/rbi/gems/opentelemetry-exporter-otlp@0.30.0.rbi +0 -9
  78. data/sorbet/rbi/gems/opentelemetry-registry@0.4.0.rbi +0 -9
  79. data/sorbet/rbi/gems/opentelemetry-sdk@1.8.1.rbi +0 -9
  80. data/sorbet/rbi/gems/opentelemetry-semantic_conventions@1.11.0.rbi +0 -9
  81. data/sorbet/rbi/gems/parallel@1.27.0.rbi +0 -291
  82. data/sorbet/rbi/gems/parser@3.3.9.0.rbi +0 -5535
  83. data/sorbet/rbi/gems/polars-df@0.20.0.rbi +0 -9
  84. data/sorbet/rbi/gems/pp@0.6.2.rbi +0 -368
  85. data/sorbet/rbi/gems/prettyprint@0.2.0.rbi +0 -477
  86. data/sorbet/rbi/gems/prism@1.4.0.rbi +0 -41732
  87. data/sorbet/rbi/gems/psych@5.2.6.rbi +0 -2469
  88. data/sorbet/rbi/gems/racc@1.8.1.rbi +0 -164
  89. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +0 -403
  90. data/sorbet/rbi/gems/rake@13.3.0.rbi +0 -3031
  91. data/sorbet/rbi/gems/rbi@0.3.6.rbi +0 -6893
  92. data/sorbet/rbi/gems/rbs@3.9.4.rbi +0 -6976
  93. data/sorbet/rbi/gems/rdoc@6.14.2.rbi +0 -12688
  94. data/sorbet/rbi/gems/regexp_parser@2.11.2.rbi +0 -3845
  95. data/sorbet/rbi/gems/reline@0.6.2.rbi +0 -2441
  96. data/sorbet/rbi/gems/rexml@3.4.1.rbi +0 -5240
  97. data/sorbet/rbi/gems/rspec-core@3.13.5.rbi +0 -11250
  98. data/sorbet/rbi/gems/rspec-expectations@3.13.5.rbi +0 -8189
  99. data/sorbet/rbi/gems/rspec-mocks@3.13.5.rbi +0 -5350
  100. data/sorbet/rbi/gems/rspec-support@3.13.4.rbi +0 -1630
  101. data/sorbet/rbi/gems/rspec@3.13.1.rbi +0 -83
  102. data/sorbet/rbi/gems/rubocop-ast@1.46.0.rbi +0 -7764
  103. data/sorbet/rbi/gems/rubocop-sorbet@0.10.5.rbi +0 -2386
  104. data/sorbet/rbi/gems/rubocop@1.79.2.rbi +0 -63321
  105. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +0 -1318
  106. data/sorbet/rbi/gems/sorbet-result@1.4.0.rbi +0 -242
  107. data/sorbet/rbi/gems/sorbet-schema@0.9.2.rbi +0 -743
  108. data/sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi +0 -48
  109. data/sorbet/rbi/gems/spoom@1.6.3.rbi +0 -6985
  110. data/sorbet/rbi/gems/stringio@3.1.7.rbi +0 -9
  111. data/sorbet/rbi/gems/tapioca@0.16.11.rbi +0 -3628
  112. data/sorbet/rbi/gems/thor@1.4.0.rbi +0 -4399
  113. data/sorbet/rbi/gems/tokenizers@0.5.5.rbi +0 -754
  114. data/sorbet/rbi/gems/traces@0.17.0.rbi +0 -9
  115. data/sorbet/rbi/gems/unicode-display_width@3.1.5.rbi +0 -132
  116. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +0 -251
  117. data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +0 -435
  118. data/sorbet/rbi/gems/yard@0.9.37.rbi +0 -18379
  119. data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +0 -1429
  120. data/sorbet/tapioca/config.yml +0 -13
  121. data/sorbet/tapioca/require.rb +0 -4
@@ -1,11 +0,0 @@
1
- const esbuildOptions = {
2
- target: "es2020",
3
- minify: process.argv.includes("--minify"),
4
- bundle: true,
5
- entryPoints: ["frontend/javascript/index.js"],
6
- outdir: "output/_bridgetown/static",
7
- entryNames: "index.[hash]",
8
- publicPath: "/sorbet-baml/_bridgetown/static",
9
- }
10
-
11
- module.exports = esbuildOptions
@@ -1,22 +0,0 @@
1
- import "../styles/index.css"
2
- import Plausible from 'plausible-tracker'
3
-
4
- // Initialize Plausible Analytics
5
- const plausible = Plausible({
6
- domain: 'vicentereig.github.io'
7
- })
8
-
9
- // Track page views automatically
10
- plausible.trackPageview()
11
-
12
- // Mobile menu toggle
13
- document.addEventListener('DOMContentLoaded', function() {
14
- const mobileMenuButton = document.getElementById('mobile-menu-button');
15
- const mobileMenu = document.getElementById('mobile-menu');
16
-
17
- if (mobileMenuButton && mobileMenu) {
18
- mobileMenuButton.addEventListener('click', function() {
19
- mobileMenu.classList.toggle('hidden');
20
- });
21
- }
22
- });
@@ -1,61 +0,0 @@
1
- @tailwind base;
2
- @tailwind components;
3
- @tailwind utilities;
4
-
5
- @layer base {
6
- html {
7
- font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
8
- }
9
-
10
- body {
11
- line-height: 1.6;
12
- color: #374151;
13
- }
14
-
15
- h1, h2, h3, h4, h5, h6 {
16
- font-weight: 600;
17
- line-height: 1.25;
18
- }
19
- }
20
-
21
- @layer components {
22
- .nav-link {
23
- @apply block px-3 py-2 text-gray-700 hover:text-blue-600 hover:bg-blue-50 rounded-md transition-colors;
24
- }
25
-
26
- .nav-link.active {
27
- @apply text-blue-600 bg-blue-50;
28
- }
29
-
30
- .code-block {
31
- @apply bg-gray-900 text-gray-100 p-4 rounded-lg overflow-x-auto;
32
- }
33
-
34
- .prose code {
35
- @apply text-sm;
36
- }
37
-
38
- .prose pre {
39
- @apply bg-gray-900 text-gray-100;
40
- }
41
-
42
- .prose pre code {
43
- @apply text-gray-100;
44
- }
45
- }
46
-
47
- /* Syntax highlighting */
48
- .highlight {
49
- @apply rounded-lg;
50
- }
51
-
52
- .highlight pre {
53
- @apply m-0 p-4 bg-gray-900 text-gray-100 overflow-x-auto;
54
- }
55
-
56
- .highlight .k { color: #c678dd; } /* Keyword */
57
- .highlight .s { color: #98c379; } /* String */
58
- .highlight .c { color: #5c6370; } /* Comment */
59
- .highlight .n { color: #e06c75; } /* Name */
60
- .highlight .nb { color: #61afef; } /* Builtin */
61
- .highlight .nf { color: #61afef; } /* Function */
@@ -1,18 +0,0 @@
1
- {
2
- "name": "sorbet-baml-docs",
3
- "private": true,
4
- "scripts": {
5
- "dev": "bridgetown start",
6
- "build": "bridgetown build"
7
- },
8
- "devDependencies": {
9
- "@tailwindcss/typography": "^0.5.0",
10
- "autoprefixer": "^10.4.0",
11
- "esbuild": "^0.19.0",
12
- "postcss": "^8.4.0",
13
- "tailwindcss": "^3.3.0"
14
- },
15
- "dependencies": {
16
- "plausible-tracker": "^0.3.9"
17
- }
18
- }
@@ -1,6 +0,0 @@
1
- module.exports = {
2
- plugins: {
3
- tailwindcss: {},
4
- autoprefixer: {},
5
- },
6
- }
@@ -1,9 +0,0 @@
1
- class RodaApp < Bridgetown::Rack::Roda
2
- route do |r|
3
- # Handle static assets first
4
- r.public
5
-
6
- # Handle Bridgetown routes
7
- r.bridgetown
8
- end
9
- end
@@ -1,26 +0,0 @@
1
- <title>{% if title %}{{ title }} | {% endif %}{{ site.title }}</title>
2
- <meta charset="utf-8" />
3
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
4
- <meta name="description" content="{% if description %}{{ description }}{% else %}{{ site.description }}{% endif %}" />
5
- <meta name="author" content="{{ site.author }}" />
6
-
7
- <!-- Open Graph tags -->
8
- <meta property="og:title" content="{% if title %}{{ title }} | {% endif %}{{ site.title }}" />
9
- <meta property="og:description" content="{% if description %}{{ description }}{% else %}{{ site.description }}{% endif %}" />
10
- <meta property="og:type" content="website" />
11
- <meta property="og:url" content="{{ site.url }}{{ site.base_path }}{{ page.url }}" />
12
- <meta property="og:site_name" content="{{ site.title }}" />
13
-
14
- <!-- Twitter Card tags -->
15
- <meta name="twitter:card" content="summary" />
16
- <meta name="twitter:title" content="{% if title %}{{ title }} | {% endif %}{{ site.title }}" />
17
- <meta name="twitter:description" content="{% if description %}{{ description }}{% else %}{{ site.description }}{% endif %}" />
18
-
19
- <!-- Links -->
20
- <link rel="canonical" href="{{ site.url }}{{ site.base_path }}{{ page.url }}" />
21
-
22
- {% if site.base_path %}
23
- <link rel="stylesheet" href="{{ site.base_path }}/_bridgetown/static/index.QMORYXZK.css">
24
- {% else %}
25
- <link rel="stylesheet" href="/_bridgetown/static/index.QMORYXZK.css">
26
- {% endif %}
@@ -1,68 +0,0 @@
1
- <nav class="bg-white border-b border-gray-200 sticky top-0 z-50">
2
- <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
3
- <div class="flex justify-between h-16">
4
- <div class="flex items-center">
5
- <a href="{{ '/' | relative_url }}" class="flex items-center">
6
- <span class="text-xl font-bold text-gray-900">sorbet-baml</span>
7
- </a>
8
- </div>
9
-
10
- <!-- Desktop navigation -->
11
- <div class="hidden md:flex items-center space-x-8">
12
- <a href="{{ '/' | relative_url }}" class="nav-link {% if page.url == '/' %}active{% endif %}">
13
- Home
14
- </a>
15
- <a href="{{ '/getting-started/' | relative_url }}" class="nav-link {% if page.url contains 'getting-started' %}active{% endif %}">
16
- Getting Started
17
- </a>
18
- <a href="{{ '/type-mapping/' | relative_url }}" class="nav-link {% if page.url contains 'type-mapping' %}active{% endif %}">
19
- Type Mapping
20
- </a>
21
- <a href="{{ '/advanced-usage/' | relative_url }}" class="nav-link {% if page.url contains 'advanced-usage' %}active{% endif %}">
22
- Advanced Usage
23
- </a>
24
- <a href="{{ '/troubleshooting/' | relative_url }}" class="nav-link {% if page.url contains 'troubleshooting' %}active{% endif %}">
25
- Troubleshooting
26
- </a>
27
- <a href="https://github.com/vicentereig/sorbet-baml" class="text-gray-500 hover:text-gray-700 p-1" target="_blank" rel="noopener" title="GitHub Repository">
28
- <svg style="width: 16px; height: 16px;" fill="currentColor" viewBox="0 0 20 20" aria-hidden="true">
29
- <path fill-rule="evenodd" d="M10 0C4.477 0 0 4.484 0 10.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0110 4.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.203 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.942.359.31.678.921.678 1.856 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0020 10.017C20 4.484 15.522 0 10 0z" clip-rule="evenodd"></path>
30
- </svg>
31
- </a>
32
- </div>
33
-
34
- <!-- Mobile menu button -->
35
- <div class="md:hidden flex items-center">
36
- <button type="button" class="text-gray-500 hover:text-gray-700 focus:outline-none focus:text-gray-700" id="mobile-menu-button">
37
- <svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
38
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h16M4 18h16" />
39
- </svg>
40
- </button>
41
- </div>
42
- </div>
43
- </div>
44
-
45
- <!-- Mobile menu -->
46
- <div class="md:hidden hidden" id="mobile-menu">
47
- <div class="px-2 pt-2 pb-3 space-y-1 sm:px-3 bg-white border-t border-gray-200">
48
- <a href="{{ '/' | relative_url }}" class="nav-link {% if page.url == '/' %}active{% endif %}">
49
- Home
50
- </a>
51
- <a href="{{ '/getting-started/' | relative_url }}" class="nav-link {% if page.url contains 'getting-started' %}active{% endif %}">
52
- Getting Started
53
- </a>
54
- <a href="{{ '/type-mapping/' | relative_url }}" class="nav-link {% if page.url contains 'type-mapping' %}active{% endif %}">
55
- Type Mapping
56
- </a>
57
- <a href="{{ '/advanced-usage/' | relative_url }}" class="nav-link {% if page.url contains 'advanced-usage' %}active{% endif %}">
58
- Advanced Usage
59
- </a>
60
- <a href="{{ '/troubleshooting/' | relative_url }}" class="nav-link {% if page.url contains 'troubleshooting' %}active{% endif %}">
61
- Troubleshooting
62
- </a>
63
- <a href="https://github.com/vicentereig/sorbet-baml" class="nav-link" target="_blank" rel="noopener">
64
- GitHub
65
- </a>
66
- </div>
67
- </div>
68
- </nav>
@@ -1,27 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- {% render "head", title: title, description: description %}
5
- </head>
6
- <body class="bg-gray-50 min-h-screen">
7
- {% render "nav" %}
8
-
9
- <main class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
10
- {{ content }}
11
- </main>
12
-
13
- <footer class="bg-white border-t border-gray-200 mt-16">
14
- <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
15
- <div class="text-center text-gray-600">
16
- <p>&copy; 2025 <a href="mailto:hey@vicente.services" class="text-blue-600 hover:text-blue-800">Vicente Reig</a>. MIT License.</p>
17
- <p class="mt-2">
18
- <a href="https://github.com/vicentereig/sorbet-baml" class="text-blue-600 hover:text-blue-800">GitHub</a> •
19
- <a href="https://rubygems.org/gems/sorbet-baml" class="text-blue-600 hover:text-blue-800">RubyGems</a>
20
- </p>
21
- </div>
22
- </div>
23
- </footer>
24
-
25
- <script src="{% asset_path js %}" defer></script>
26
- </body>
27
- </html>
@@ -1,39 +0,0 @@
1
- ---
2
- layout: default
3
- ---
4
-
5
- <div class="lg:grid lg:grid-cols-4 lg:gap-8">
6
- <!-- Sidebar navigation -->
7
- <div class="lg:col-span-1">
8
- <div class="sticky top-20">
9
- <nav class="space-y-1">
10
- <h3 class="text-lg font-semibold text-gray-900 mb-4">Documentation</h3>
11
- <a href="{{ '/getting-started/' | relative_url }}" class="nav-link {% if page.url contains 'getting-started' %}active{% endif %}">
12
- Getting Started
13
- </a>
14
- <a href="{{ '/type-mapping/' | relative_url }}" class="nav-link {% if page.url contains 'type-mapping' %}active{% endif %}">
15
- Type Mapping
16
- </a>
17
- <a href="{{ '/advanced-usage/' | relative_url }}" class="nav-link {% if page.url contains 'advanced-usage' %}active{% endif %}">
18
- Advanced Usage
19
- </a>
20
- <a href="{{ '/troubleshooting/' | relative_url }}" class="nav-link {% if page.url contains 'troubleshooting' %}active{% endif %}">
21
- Troubleshooting
22
- </a>
23
- </nav>
24
- </div>
25
- </div>
26
-
27
- <!-- Main content -->
28
- <div class="lg:col-span-3 mt-8 lg:mt-0">
29
- <div class="bg-white rounded-lg shadow-sm border border-gray-200 p-8">
30
- {% if title %}
31
- <h1 class="text-3xl font-bold text-gray-900 mb-6">{{ title }}</h1>
32
- {% endif %}
33
-
34
- <div class="prose prose-lg max-w-none">
35
- {{ content }}
36
- </div>
37
- </div>
38
- </div>
39
- </div>