Giter VIP home page Giter VIP logo

Comments (7)

taylorbrooks avatar taylorbrooks commented on July 30, 2024 1

Sorry about that the README docs were outdated as of the 3.x version.

Responses in 3.x return a hash instead of a Hashie::Mash object used previously.

from closeio.

synth avatar synth commented on July 30, 2024 1

Why move from Hashie::Mash to hash? This significantly breaks our integration if we upgrade to 3.x and is preventing us from upgrading until we have a chance to revert to the uglier hash syntax. In fact, its not just dot notation that's an issue. We use symbols as hash keys which worked with Hashie::Mash. Now, Close returns a hash with string keys.

If it's just to remove the dependency on Hashie::Mash, it would be nice to let us opt in as we already have this dependency on our application.

from closeio.

zeeshangulzar avatar zeeshangulzar commented on July 30, 2024

I changed my version to 2.6.10 and it worked as per documentation i.e lead.contacts

from closeio.

taylorbrooks avatar taylorbrooks commented on July 30, 2024

@synth Yep, it was to remove the dependency. We're following SemVer so it shouldn't be a surprise there are breaking changes.

from closeio.

synth avatar synth commented on July 30, 2024

Too bad. This is a regression in usability imo. Also, SemVer doesn't mean that just because you can have breaking changes across major versions, that we should expect them all the time. I didn't see any documentation on this anywhere - so yea, it was a surprise that took digging through this libraries source to figure out.

from closeio.

taylorbrooks avatar taylorbrooks commented on July 30, 2024

Yeah, I could've probably done a release that deprecated Hashie, but still left an option to use it as response middleware. Then fully removed it in the next release -- that would've been a good usability experience.

You're also right there is not any documentation in CHANGELOG.md, I apologize for that and will ensure future releases are documented properly.

I'm trying to think back to my original intent as to why I removed it -- it was two years ago, so hard to remember... I think it was a knee-jerk reaction to these:

Plus my experience in memory bloat in the applications I was maintaining at the time. I know it's not helpful for the situation you're in, but hopefully it provides some context.

from closeio.

synth avatar synth commented on July 30, 2024

Gotcha, thanks for the explanation.

from closeio.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.