-
Notifications
You must be signed in to change notification settings - Fork 35
Comparing changes
Open a pull request
base repository: prismicio-community/ruby-kit
base: master
head repository: FrameworkComputer/prismic-ruby-kit
compare: main
- 13 commits
- 8 files changed
- 3 contributors
Commits on Jun 13, 2023
-
chore: run Ruby specs on GitHub actions
ensures that on PR and push there's a test suite running to verify changes are passing
Configuration menu - View commit details
-
Copy full SHA for 41c439e - Browse repository at this point
Copy the full SHA 41c439eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5db5c2a - Browse repository at this point
Copy the full SHA 5db5c2aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8824e5f - Browse repository at this point
Copy the full SHA 8824e5fView commit details -
chore(deps): update rspec dev-dep
gets on latest ver to support modern rubies
Configuration menu - View commit details
-
Copy full SHA for c47d8f2 - Browse repository at this point
Copy the full SHA c47d8f2View commit details -
Merge pull request #1 from FrameworkComputer/gh-actions-ci
chore: run Ruby specs on GitHub actions
Configuration menu - View commit details
-
Copy full SHA for 3cb35f3 - Browse repository at this point
Copy the full SHA 3cb35f3View commit details -
fix: ref without label raises NoMethodError
Bug scenario from @faresd: > If you create a Release without a description, which is possible by > Publishing a document and choosing "Publish at a specific date and > time", the ref returned by Prismic's API will have a null label and the > Prismic client will fail to parse the entire response. Because of how the hash construction works, it needs a value for the key. This makes it fall back to the id of the ref which should always be present in the scenario where the label is null/nil. fixes #116 More details: - https://community.prismic.io/t/release-without-description-causes-error-in-prismic-ruby-client/7514/4
Configuration menu - View commit details
-
Copy full SHA for 4cf741b - Browse repository at this point
Copy the full SHA 4cf741bView commit details -
refactor lib/prismic/api.rb #parse_api_response
Co-authored-by: Alistair Holt <hello@alistairholt.co.uk>
Configuration menu - View commit details
-
Copy full SHA for fbb16c1 - Browse repository at this point
Copy the full SHA fbb16c1View commit details -
fix: null label fallback (release w/o name)
this undoes the suggestion in d54dfec since it's fundamentally different behavior. `fetch` only fallsback to the second param if the key is missing. but there is a `label` key in our hash, so it returns `nil`, persisting the `nil.downcase` call. This makes it so the value properly falls back when `nil`. It also doesn't downcase the id since that may actually be case sensitive. I tested this fix against a codebase reproing the issue and all appears well.
Configuration menu - View commit details
-
Copy full SHA for 22ad116 - Browse repository at this point
Copy the full SHA 22ad116View commit details -
Merge pull request #2 from FrameworkComputer/release-without-descript…
…ion-fix-2 fix: null label fallback (release w/o name)
Configuration menu - View commit details
-
Copy full SHA for 109de71 - Browse repository at this point
Copy the full SHA 109de71View commit details
Commits on Jul 23, 2026
-
Merge remote-tracking branch 'upstream/master'
# Conflicts: # Gemfile.lock
Configuration menu - View commit details
-
Copy full SHA for 3015cbf - Browse repository at this point
Copy the full SHA 3015cbfView commit details -
Drops the hashery runtime dependency, which was pulled in solely for its LRUHash. Ruby's built-in Hash has preserved insertion order since 1.9, so the LRU cache can be implemented directly on top of it: reads and writes reinsert the entry at the tail, and eviction removes the head. Removing hashery shrinks the gem's dependency surface with no change in caching behaviour.
Configuration menu - View commit details
-
Copy full SHA for 479d809 - Browse repository at this point
Copy the full SHA 479d809View commit details -
Fix memory allocation issues in StructuredText
StructuredText::Block::Text#as_html walked the text one character at a time, escaping each character and concatenating it with +=, so every character produced a fresh intermediate String and every position hit the span hashes again. On large rich-text documents this dominated allocations and GC time. It now walks span boundaries instead of characters, appending whole text segments into a single mutable buffer, and hoists the HTML-escape table and pattern into frozen constants. The generated HTML is identical. The LRU eviction is also switched to Hash#shift to avoid allocating a full keys array on every insert.
Configuration menu - View commit details
-
Copy full SHA for 1ddf27c - Browse repository at this point
Copy the full SHA 1ddf27cView commit details -
Define span_parser once instead of on every parse
Extracts span_parser out of structured_text_parser so it is defined a single time at load. It was declared as a nested `def self.span_parser`, so every StructuredText fragment parsed redefined the singleton method on the JsonParser module, invalidating Ruby's global method cache on each call and churning method-object bookkeeping. Behavior is unchanged: same body, still public, still delegating to the sibling link_parser.
Configuration menu - View commit details
-
Copy full SHA for f613fd1 - Browse repository at this point
Copy the full SHA f613fd1View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...main