TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Cypress.io Blocking of Sorry Cypress and Currents

78 pointsby madmax108over 1 year ago

18 comments

supriyo-biswasover 1 year ago
While I see a number of comments mentioning disdain for the move by Cypress, I&#x27;d like to know the core issue claimed by them due to which they state they&#x27;re &quot;defending their intellectual property&quot;.<p>After all, just intercepting certain API calls to report to a different service instead of the one chosen by the developers is ultimately legal; in most jurisdictions there are laws that allow for compatible implementations to be developed as long as it is done using clean-room techniques.<p>If that&#x27;s not considered legal, it&#x27;s probably even problematic to run AWS CLI to a self-hosted Minio instance or one of the S3 compatible service; using the Sentry SDK to report errors to Glitchtip (a similar API-compatible service), and so on and so forth.
评论 #37849390 未加载
fezzezover 1 year ago
If you look at their leadership. They have no one who knows how to code &amp; understand&#x27;s their core product at the helm. No one in their leadership team could use cypress themselves.<p>Decision like this come from the leadership team, and I don&#x27;t think they have people with enough sense of what they&#x27;re actually doing -- breaking trust with their end customers to understand this is terrible idea.<p>It smells a lot like what happened with Unity a few weeks ago. It&#x27;s the same story. Leadership team weren&#x27;t actually users of the product, they didn&#x27;t understand that the company&#x27;s key value was the trust they&#x27;ve built with the customers and they broke it.
评论 #37846548 未加载
评论 #37845745 未加载
agg23over 1 year ago
Disclaimer: I previously worked at Cypress for a relatively short period, though I don&#x27;t really think that affects my thinking on this matter.<p>Optically this looks very bad, and I don&#x27;t think there&#x27;s any way around that. I would argue, however, that other companies choosing to replicate Cypress&#x27;s service with Cypress&#x27;s (open source) project is in bad taste. When I first read about the issue, I was pretty annoyed with Cypress, but after reading about the other companies profiting off of the project, I felt they were probably justified.<p>Obviously given the MIT licensing, people can do whatever they want with the project, including start a business, and I&#x27;m perfectly fine with that. But I also think it&#x27;s within the company&#x27;s rights to discourage such behavior, particularly when the businesses are just trying to undercut Cypress&#x27;s only funding model. People who are particularly aggrieved can fork it, and go on with no hard feelings, but stewardship of a OSS project comes with a significant ability to guide its direction, and saying &quot;don&#x27;t kill us&quot; doesn&#x27;t seem unreasonable.<p>----<p>On the other hand, Cypress&#x27;s funding model is completely stagnant (from what little I know) and they have been unsuccessful at differentiating their paid offerings, other than by coercion (you must pay us for distributed CI, etc). In that way it would be sensible for other companies to provide new functionality&#x2F;features, but not while drawing on the company&#x27;s resources&#x2F;goodwill, _and_ when some of them don&#x27;t actually differentiate, they just replicate.<p>_I_ would almost never make this decision with my own product, but then again, I&#x27;ve never accepted VC funding or had many employees to look after.
评论 #37845813 未加载
评论 #37846525 未加载
评论 #37846665 未加载
评论 #37845824 未加载
msoadover 1 year ago
Playwright is MIT licensed and as far as I see they won&#x27;t try to lock anyone into Microsoft offering like Cypress is doing.<p>Playwright is built on top of Chrome Developer Tools Protocol[1] by the ex-Chrome folks and the API is far superior than Cypress. It gives you so much more flexibility and stability compared to Cypress.<p>I am having a blast switching our e2e test suite from Cypress to Playwright. Things just work and debugging is much more easier.<p>[1] <a href="https:&#x2F;&#x2F;chromedevtools.github.io&#x2F;devtools-protocol&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;chromedevtools.github.io&#x2F;devtools-protocol&#x2F;</a>
评论 #37850268 未加载
评论 #37846948 未加载
mmmeffover 1 year ago
Someone maintaining a dependency of cypress itself should add a dependency on cypress-debugger out of protest. Every single cypress installation would begin failing en masse
martypittover 1 year ago
Can someone with a little more context expand here?<p>Cypress is MIT licensed, so I don&#x27;t understand what Currents were doing that was so bad?
评论 #37845042 未加载
评论 #37844302 未加载
the_gipsyover 1 year ago
Tough reminder to chose carefully for what projects&#x2F;products you decide to pour your efforts into. If some VC backed company can pull the rug anytime, maybe reconsider.
doctorpanglossover 1 year ago
These weird in-between self-hosted and cloud companies. RudderStack too is guilty. Is Sentry fully, truly self hosted? What about PostHog? IMO, the test is, &quot;is there a Kubernetes operator for it?&quot; But a Kubernetes operator for X <i>is</i> the entirety of the business.
cebertover 1 year ago
If you haven’t given it a try, I think Playwright is a much nicer open source offering for e2e testing and general web automation tasks. It’s the first such tool that I actually enjoy using.
crabboneover 1 year ago
Recently, we hat to add some front-end tests for the admin panel of the product. QA jointly with front-end team decided to use Cypress. I think, front-end were already using it for unit tests (aptly named by Cypress end-to-end tests), and QA decided to piggy-back on that...<p>I was involved with some automation process where I also had to touch the contents of these tests. Dear lord... I never liked Selenium, but this thing... it&#x27;s so hilariously bad. Well, maybe I&#x27;ve not touched anything front-end related for a while, so I&#x27;m getting out of touch with the depth of stupidity modern Web development plunged into.<p>But... if this decision (of blocking someone) adversely affects Cypress and helps them disappear, I will only be happier. This is just an insanely bad product with insanely bad ideas. I struggle to comprehend how something like this gets so much attention and so much work put into it.
评论 #37880856 未加载
ramesh31over 1 year ago
The writing has been on the wall for Cypress since 12.0, where they started funneling everything into the cloud SaaS workflow. It sucks because Cypress was 10x better than the nightmare (literally) we had before. Hopefully Playwright doesn&#x27;t go down the same road.
评论 #37846109 未加载
jasonlaster11over 1 year ago
Cypress also blocked deploysentinel.com which introduced Session Replay for Cypress and Playwright tests last fall.<p>If Cypress users want to view a dashboard or session replay of their failed or flaky tests, they&#x27;ll need to pay for Cypress Cloud which can easily be 6 figures.<p>I&#x27;m hopeful that after the dust settles, Cypress will clarify their stance on the ecosystem. It&#x27;s clear that Playwright has the momentum, but Cypress can still be successful if they are able to innovate alongside their community and rationalize their pricing.
评论 #37847825 未加载
LunaSeaover 1 year ago
Good ole cartel oriented programming
jmondiover 1 year ago
This is most likely going to be the push I need to get me over to Playwright. I really like the Cypress API, particularly `cy.intercept`, compared to some of the Playwright equivalents. I&#x27;m sure that is just because I am used to Cypress now, and eventually I&#x27;ll feel the same about Playwright.
评论 #37846659 未加载
gurchikover 1 year ago
They&#x27;re implementing technical controls to scan what NPM packages you have installed and refuse to run if you have some &quot;unsupported&quot; ones installed. Their repo still appears to be MIT licensed though. Why not change their license like Terraform recently did? What&#x27;s stopping someone from having a synchronized fork of cypress but with this commit removed? The blog article doesn&#x27;t discuss licensing or why ending support was the option chosen.
trumpet_erover 1 year ago
Cypress cannot claim they are open-source, to be fair.<p>They are injecting arbitrary proprietary code into the binary app, which is different from what the public MIT-licensed repo.<p>I don&#x27;t understand why don&#x27;t they just change the license.
dvngnt_over 1 year ago
sad move from cypress. they make you pay just for the ability to run tests in parallel on your own hardware.<p>this combined with performance, iframe, tab support, and others is why playwright has been eating cypress&#x27; lunch<p>Microsoft can afford an open source testing tool whereas a VC backed Cypress must engage in enshittification
评论 #37845095 未加载
评论 #37844264 未加载
veidrover 1 year ago
I think Cypress.io is a tool in its death throes. So like, wildly out-of-touch responses like this, and wacky new pricing&#x2F;lock-in monetization schemes should be expected. Think Myspace or AOL near the end.<p>Where I work, there was a guy in 2018 who made an internal video presentation about how awesome Cypress was, and how many of our projects might benefit from adopting it.<p>And at the end of last year, since that guy was me, I sort of felt obligated to do a follow up internal presentation about my team&#x27;s experiences with it (very good at first, very bad by the end), why no project should adopt Cypress anymore, and the reasons that projects using it should consider switching to Playwright.<p>It&#x27;s not just that Playwright works better, in every conceivable way, than the open-source parts of Cypress. Although that is also true.<p>It&#x27;s that that no-longer-up-to-par[1] E2E web testing implementation is <i>also</i> tied to this obvious &quot;let&#x27;s ramp-up the lock-in and increase prices&quot; strategy. I love paying for stuff that saves my development team time, but we&#x27;re paying Cypress thousands of dollars a year and if we kept using Cypress it would keep going up and up and up, because Cypress wants you to pay for <i>parallelization</i>.<p>Flaky test identification, possibly-redundant time-wasting analysis... those are (to me) valid things to pay extra for — or <i>not</i> pay for, if the budget gets tight. Paying extra for <i>simply running your tests in parallel</i>, or being locked into one provider for it, is a huge red flag. It means that the better your test coverage gets, the more you have to pay.<p>But pay-to-parallelize is just crap. It&#x27;s table stakes, and has to be part of the open-source component, not the premium tier. (NOTE: To be clear, Cypress makes you pay to parallelize on <i>your own instances</i>. If they had a Cypress cloud that also provided the CI instances running the test, I wouldn&#x27;t have a problem with paying... although I suspect in that case, I would have a problem with price-gouging, because they still presumably wouldn&#x27;t open source that part.)<p>Contrast with Playwright: you just append &quot;--shard=1&#x2F;30&quot; (if you have 30 instances). It&#x27;s not as sophisticated as Cypress Dashboard&#x27;s dispatcher which... <i>waves hands</i> coordinates in realtime and feeds instances tests as soon as they become idle (?). But it is open source, free, and if one shard fails in CI you can run the Playwright command locally with the same shard number to debug it.<p>So, if you use one of the services affected by this move, well ouch, but OTOH you probably shouldn&#x27;t be using Cypress in the first place. So maybe take this as a final nudge that least freeze your Cypress tests and start writing new tests in something not only more open, but also just... better.<p>[1]: Off the top of my head, the critical flaws that make Cypress not as good as its 2023 competition:<p>- A model for async that is not based on — and not compatible with — standard async&#x2F;await (promises). You have to use this bizarre alternative &quot;Cypress.Chainable&quot; thing instead, and it makes debugging a failing test much harder than the same test in Playwright (or anything that uses normal JavaScript async). Many people have complained about this, and to me it is a no-brainer, but Cypress basically doubled down on it like &quot;No no, sure async&#x2F;await is OK, but Cypress Chainable is better because hage hige hoge...&quot;<p>- Colocating Cypress in the same browser instance as your app, and using an iframe to &quot;isolate&quot; the app under test. IRL this results in &quot;Cypress-only&quot; test flake (things happen in Cypress that never happen otherwise) and just outright &quot;the browser crashed during CI&quot;.<p>- Slow. As. Dog. Shit. (It wasn&#x27;t slower than the competition a few years ago. But the competition has gotten dramatically faster (at executing tests, I mean), and Cypress has not.)<p>- Due to the above things, presumably, our Cypress tests exhibit a much higher level of flake, and therefore maintenance cost, than our post-Cypress tests (mainly Playwright). This, though, could be partly due to just being older tests. For instance, Cypress response mocking support was first bad, then OK, and now I dunno but maybe it is good. All our tests that need to use response mocking have failed and needed some engineer to fondle their balls and whisper sweet nothings into their ear to coax them back to functionality... but that maybe wouldn&#x27;t happen if they&#x27;d been written with Cypress 13 instead of Cypress 3 or whatever. So only blaming Cypress partially for this.