-
Notifications
You must be signed in to change notification settings - Fork 151
Feature/iterables #530
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
Feature/iterables #530
Conversation
Not sure how to fix build failures :( |
I believe the build is failing because you have not signed the CLA. Can you please follow the process described here: https://neo4j.com/developer/cla/ |
I did send the email though (today at 15:02 EET, receiver is cla@neotechnology.com). Perhaps, it has not propagate properly yet? |
Oh, I forgot to attach PDF to the email, my bad. |
Seems like it isn't related to CLA, since I've got a direct response from the CLA team with a confirmation just a couple of minutes ago. I can't see any failure messages though, just the fact that the build has failed. No access to TeamCity as well. Could somebody help me with this? |
@parzhitsky It seems that there was an email from the CLA team asking you to respond to an email with |
Thanks @jharris4! I did receive this email yesterday. I've responded with |
Ah ok, she's in California, so I will follow up with her later today to try and get this resolved. Sorry for the delay! |
Hi @parzhitsky, we have not received your CLA. Could you make sure that you followed the template suggested here? You need to also add the CLA pdf in your email. Your changes look good. But could you squish all your commit into one commit with your PR description as commit message? Cheers, |
Are you sure? I mean, don't be mad, I'm happy to do that, but I took extra care to create flat history and atomic reversible commits; if squashed, per-commit reversibility will be lost.
Okay, I'll try it again, carefully. I'm sure, that I've followed the template though (it was basically copy-pasted). |
Hi @parzhitsky, Usually we have one commit per feature. A commit shall be a whole story, including the changes and tests etc. My personal use of the commit is mainly to look in IDE to understand why a line was changed in a certain way. If the commit comes with a nice description like the one you have for this PR, then it will take me 1 mins to understand the change. Otherwise, It might takes me 10 mins or more following your working path to rebuild the whole story. If we ever revert any changes, it is also easier to revert the whole feature in one go, rather than going into the history look each commit what shall be reverted and what not. So be free to squash. Your PR description is very clear about the whole feature. |
ebb5952
to
4ee859d
Compare
Can you also put the PR description in the commit message directly? Thanks a lot. |
Sure, sorry |
This PR adds various iterables to the Record class: values(), entries(), [Symbol.iterator](). The new functionality allows, among other things, getting values lazily, on-demand, and / or in pairs: const queryResult = await session.run(query); for (const record of queryResult.records) for (const [ key, value ] of record.entries()) // do something with 'key' and 'value' for (const record of queryResult.records) for (const value of record) // each queried value is accessible as 'value'
4ee859d
to
6106a5b
Compare
FYI, I've sent my CLA again a couple of days ago |
@parzhitsky Sorry for the delay, I've just added you to the whitelist. The builds should pass the initial whitelist check for you from now on |
Description
This PR adds various iterables to the
Record
class:.values()
— similar toArray.prototype.values
, relatedObject.values
.entries()
— similar toArray.prototype.entries
, related toObject.entries
Symbol.iterator
Usage
The new functionality allows, among other things, getting values lazily, on-demand (which for example allows short-circuiting, if needed), and / or in pairs: