Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.29.1 Upgrade Guide #3415

Closed
kedashoe opened this issue Oct 5, 2023 · 11 comments
Closed

0.29.1 Upgrade Guide #3415

kedashoe opened this issue Oct 5, 2023 · 11 comments

Comments

@kedashoe
Copy link
Contributor

kedashoe commented Oct 5, 2023

v0.29.0...v0.29.1

πŸ’₯ Breaking Changes:
None

πŸ†• Added:
None

πŸ’‘ Changes:

⭐ Miscellaneous

πŸ“‹ Documentation fixes: #3368 #3373 #3391 #3398 #3402


Many thanks to all the contributors supporting this release.

We'd also like to call out to all those who submitted issues or PRs that we've chosen not to include. It's often easy to forget that the attempts that fail are often just as important to long-term success as those that succeed. Thank you for all your great work! πŸŽ†

@tacomanator
Copy link
Contributor

tacomanator commented Oct 5, 2023

This says no breaking changes, but upgrading from 0.29.0 to 0.29.1, I'm getting type errors in my project related to propEq(). Is this just an out-of-date type in the types library, or is there an actual breaking change?

update: looks like it was indeed a small difference in types? Had to change an instance of propEq(value, 'field') to propEq<string | null, string>(value, 'field').

@kedashoe
Copy link
Contributor Author

kedashoe commented Oct 5, 2023

looks like it was indeed a small difference in types

ty for the update. This is a good point though, it would be good to coordinate more carefully with the types when cutting releases going forward

@CrossEye
Copy link
Member

CrossEye commented Oct 6, 2023

This is great! Thank you, @kedashoe !

@akshayjai1
Copy link

i am also getting 28 types errors

node_modules/types-ramda/es/index.d.ts:4453:22 - error TS1139: Type parameter declaration expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                          ~~~~~

node_modules/types-ramda/es/index.d.ts:4453:34 - error TS1005: ',' expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                      ~~~~~~~

node_modules/types-ramda/es/index.d.ts:4453:51 - error TS1005: ',' expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                       ~

node_modules/types-ramda/es/index.d.ts:4453:79 - error TS1005: ',' expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                   ~

node_modules/types-ramda/es/index.d.ts:4453:82 - error TS1005: ',' expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                      ~

node_modules/types-ramda/es/index.d.ts:4453:89 - error TS1005: ')' expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                             ~

node_modules/types-ramda/es/index.d.ts:4453:91 - error TS1434: Unexpected keyword or identifier.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                               ~~~~~

node_modules/types-ramda/es/index.d.ts:4453:96 - error TS1128: Declaration or statement expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                    ~

node_modules/types-ramda/es/index.d.ts:4453:97 - error TS1128: Declaration or statement expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                     ~

node_modules/types-ramda/es/index.d.ts:4453:159 - error TS1005: ';' expected.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                                                                                   ~~~~~~~

node_modules/types-ramda/es/index.d.ts:4453:167 - error TS1434: Unexpected keyword or identifier.

4453 export function pick<const Names extends readonly [PropertyKey, ...PropertyKey[]]>(names: Names): <U extends Record<ElementOf<Names>, any>>(obj: U) => string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                                                                                           ~~~~~

node_modules/types-ramda/es/index.d.ts:4454:25 - error TS1139: Type parameter declaration expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                             ~~~~~

node_modules/types-ramda/es/index.d.ts:4454:37 - error TS1005: ',' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                         ~~~~~~~

node_modules/types-ramda/es/index.d.ts:4454:54 - error TS1005: ',' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                          ~

node_modules/types-ramda/es/index.d.ts:4454:61 - error TS1005: ',' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                 ~

node_modules/types-ramda/es/index.d.ts:4454:67 - error TS1003: Identifier expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                       ~

node_modules/types-ramda/es/index.d.ts:4454:74 - error TS1005: ')' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                              ~

node_modules/types-ramda/es/index.d.ts:4454:75 - error TS1128: Declaration or statement expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                               ~

node_modules/types-ramda/es/index.d.ts:4454:78 - error TS1005: ';' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                  ~

node_modules/types-ramda/es/index.d.ts:4454:79 - error TS1109: Expression expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                   ~

node_modules/types-ramda/es/index.d.ts:4454:86 - error TS1005: ')' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                          ~

node_modules/types-ramda/es/index.d.ts:4454:98 - error TS1005: ';' expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                      ~

node_modules/types-ramda/es/index.d.ts:4454:100 - error TS1434: Unexpected keyword or identifier.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                        ~

node_modules/types-ramda/es/index.d.ts:4454:101 - error TS1128: Declaration or statement expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                         ~

node_modules/types-ramda/es/index.d.ts:4454:102 - error TS1128: Declaration or statement expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                          ~

node_modules/types-ramda/es/index.d.ts:4454:104 - error TS1434: Unexpected keyword or identifier.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                            ~~~~~~

node_modules/types-ramda/es/index.d.ts:4454:111 - error TS1128: Declaration or statement expected.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                                   ~~~~~~~

node_modules/types-ramda/es/index.d.ts:4454:119 - error TS1434: Unexpected keyword or identifier.

4454 export function pick<U, const Names extends readonly [keyof U, ...(keyof U)[]]>(names: Names, obj: U): string extends keyof U ? Record<string, U[keyof U]> : Pick<U, ElementOf<Names>>;
                                                                                                                           ~~~~~


Found 28 errors in the same file, starting at: node_modules/types-ramda/es/index.d.ts:4453

@klepek42
Copy link

I'm getting the same 28 type errors in node_modules when updating from @types/ramda from 0.29.5 to 0.29.6.

@char0n
Copy link
Contributor

char0n commented Oct 11, 2023

I can confirm - getting reports of failed builds as well: swagger-api/swagger-js#3176 (because of using ramda as transitive dep).

@char0n
Copy link
Contributor

char0n commented Oct 11, 2023

@akshayjai1, @klepek42 created a new discussion for the invalid typings at DefinitelyTyped/DefinitelyTyped#67032

@kedashoe
Copy link
Contributor Author

@Harris-Miller any thoughts on this? I do not believe there were any related code changes, so I would guess people are seeing these issues simply because a new version of ramda resulted in people also getting the newest version of the types which had changes they were not expecting?

@Harris-Miller
Copy link
Contributor

RE: type errors

Although we have brought maintaining the type definitions in-house with the ramda/types repo, they still are served through @types/ramda. For that reason, do understand that the types are not yet directly tied to the main lib and are still updated separately, and like any @types/ definitions, it may take time to align the type definitions with changes made to the source lib.

It is something that I'll get on ASAP.

To address the main error brought up around pick in this thread. That is not directly related to ramda@0.29.1 at all. It was part of this release last week: https://github.com/ramda/types/releases/tag/v0.29.5. That error only presents itself if you are using typescript@<5. We had marked @types/ramda that it requires typescript@5 back for 0.29.0 (see here: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/ramda/index.d.ts#L8) as to continue to best support the typings of ramda we needed latest syntax. It was only with the types-ramda@0.29.5 update that typescript@5 syntax was introduced where users were seeing issues with still being on typescript@4.

Just update to typescript@5, and that issue will go away. If you cannot for some reason, you can force npm to use types-ramda@0.29.4 by adding this to your package.json

"overrides": {
    "types-ramda": "0.29.4"
}

This issue was brought up last week at ramda/types as well: ramda/types#64

@Harris-Miller
Copy link
Contributor

Harris-Miller commented Oct 12, 2023

Changes from 0.29.1 and what needs to happen in types-ramda:

@Harris-Miller
Copy link
Contributor

MR for modifyPath update: ramda/types#68

Wxh16144 added a commit to Wxh16144-forks/issues-helper that referenced this issue Oct 23, 2023
xrkffgg pushed a commit to actions-cool/issues-helper that referenced this issue Oct 24, 2023
Wxh16144 added a commit to Wxh16144-forks/segmented that referenced this issue Dec 7, 2023
morganick added a commit to infinitered/reactotron that referenced this issue Jan 24, 2024
[skip ci]

The goal of this PR is to have an example app inside the project to
improve developer experience and exercise reactotron's capabilities.
Currently, you need to have an application configured for Reactotron
outside of the project to test. If you want to test the client
libraries, you'd have to setup copying those dependencies into your
application as an additional step.

By adding an example application into the monorepo, we get the following
benefits:

- Faster feedback loop on client library development
- All inclusive reactotron development experience (No external
application required; though still supported.)
- An application for people to reproduce bugs in shortening time to
resolution.
- Show examples of usage and conifguration

In this PR, I've additionally done the following in support of this
effort:

- Upgraded Ramda to 0.28.0. I could not go to latest as we are still
using Typescript 4.9.5.
(ramda/ramda#3415 (comment))
- Upgraded mobx and mobx-state-tree so that our dev dependencies are
using the latest versions.
- Updated the documentation

---------

Co-authored-by: Mark Rickert <mjar81@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants