# Breaking changes coming with Secure Cadence release!

**URL:** <https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052>\
**Category:** Uncategorized\
**Created:** [April 27, 2022, 11:12pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052 "2022-04-27T23:12:13Z")\
**Posts on this page:** 7\
**Page:** 2

<div class="post-metadata">

**Author:** ![Babayaga](https://avatars.discourse-cdn.com/v4/letter/b/848f3c/32.png) [@Babayaga](https://forum.flow.com/u/Babayaga)\
**Post date:** [May 23, 2022, 2:24pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/21 "2022-05-23T14:24:53Z")

</div>

> [@Jan](#):
>
> `sh -ci "$(curl -fsSL https://raw.githubusercontent.com/onflow/flow-cli/master/install.sh)" -- v0.33.1-sc-m5`

thanks solved!

---

<div class="post-metadata">

**Author:** ![phill](https://avatars.discourse-cdn.com/v4/letter/p/779978/32.png) [@phill](https://forum.flow.com/u/phill)\
**Post date:** [May 23, 2022, 2:27pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/22 "2022-05-23T14:27:47Z")

</div>

Yep works, thanks @sideninja!!! 😀

---

<div class="post-metadata">

**Author:** ![bjartek](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.flow.com/bjartek/32/143_2.png) [@bjartek](https://forum.flow.com/u/bjartek)\
**Post date:** [May 23, 2022, 4:29pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/23 "2022-05-23T16:29:03Z")

</div>

Is there a flow-cli version that has the 0.34.X changes and stable cadence

---

<div class="post-metadata">

**Author:** ![bjartek](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.flow.com/bjartek/32/143_2.png) [@bjartek](https://forum.flow.com/u/bjartek)\
**Post date:** [June 3, 2022, 6:47am UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/24 "2022-06-03T06:47:35Z")

</div>

> to satisfy the stricter type checking. However, to benefit from the increased safety of this change, it would be preferred to write the above code this way instead:
> 
> ```auto
> pub fun borrowNFT(id: UInt64): &NonFungibleToken.NFT? {
> return &self.ownedNFTs[id] as &NonFungibleToken.NFT?
> }
> 
> ```

To clarify the NFT interface will not change? Having an example of how ExampleNFT would look like for secure cadence would be a great help to very many people.

---

<div class="post-metadata">

**Author:** ![bluesign](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.flow.com/bluesign/32/1359_2.png) [@bluesign](https://forum.flow.com/u/bluesign)\
**Post date:** [June 4, 2022, 2:35pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/25 "2022-06-04T14:35:43Z")

</div>

Btw if returning optional vs returning type (or panic) fight has a clear winner, I somehow wish we could have removed ‘panic’ in contract context with secure cadence.

---

<div class="post-metadata">

**Author:** ![sam](https://avatars.discourse-cdn.com/v4/letter/s/5f9b8f/32.png) [@sam](https://forum.flow.com/u/sam)\
**Post date:** [June 5, 2022, 6:18pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/26 "2022-06-05T18:18:51Z")

</div>

+1, I think @turbolent confirmed that the FT/NFT standards are not going to change for stable cadence. So I suppose that this means that NFT projects defining their own collections to be NonFungibleToken compliant would need to define their borrowNFT function in a bit of a strange way because of the new changes. Something like:

```
pub fun borrowNFT(id: UInt64): &NonFungibleToken.NFT {
    return (&self.ownedNFTs[id] as &NonFungibleToken.NFT?)!
}
```

---

<div class="post-metadata">

**Author:** ![daniel](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.flow.com/daniel/32/77_2.png) [@daniel](https://forum.flow.com/u/daniel)\
**Post date:** [June 13, 2022, 4:59pm UTC](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052/27 "2022-06-13T16:59:02Z")

</div>

@bastian please confirm the assumption is right and the standard won’t change to return `NFT?` instead of `NFT`.

[Previous page](https://forum.flow.com/t/breaking-changes-coming-with-secure-cadence-release/3052.md?page=1)
