You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 7, 2023. It is now read-only.
Repository navigation
This repository was archived by the owner on Aug 7, 2023. It is now read-only.
We (@thefourtheye, @ryzokuken and me) are planning to run a code & learn in Bangalore on November 17th (I guess this is the second one in India, after #76).
The exercise will be run as part of the next instance of Polyglot-Languages-Runtimes meetup. IBM office space will be used for the event. Count of expected participants is unknown at the moment.
Request your support in hand-holds and reviews, thanks in advance. Some of the changes we have ear-marked are:
replace instances of typeof 'x' === 'y' constructs in tests with util.isY(x) constructs [ ~600 instances spread across ~200 test files ]
removing instances of deprecated V8 function calls in Node [ based on interest and skill ]
Suggestions on any other useful and interesting refactoring suggestions are appreciated.
[EDIT]:
As of 11/05, 39 people going for the meetup
As of 11/09 : 65
As of 11/11: 102
As of 11/13: 135
As of 11/15: 184
replace instances of typeof 'x' === 'y' constructs in tests with util.isY(x) constructs [ ~600 instances spread across ~200 test files ]
All the relevant util.is*() funcitons are deprecated. I don't think we should be using them in test code. I prefer typeof checks myself. Is there something I'm missing?
I have some leftover tasks from the Vancouver Code & Learn. It's also possible that there will be some leftover after the NodeConf EU Code & Learn. Do you have an idea how many attendees you expect?
If you want to help out ChakraCore, there are tests where they float patches to make them pass with ChakraCore because the error message text is different than provided by V8. In my opinion, we should not rely on error message text that originates from the JS engine as it can change any time we update the engine to a new version. So, a good task might be removing the message text checks and replacing with a simple check that something is a RangeError or TypeError or whatever, or else changing them to regular expression or String.prototype.includes() checks that are unlikely to break.
You'll have to either get the list of tests where this is relevant from @nodejs/node-chakracore or else maybe look at their repo to figure out which tests are modified.
are those the correcting the order or assert parameters?
@gireeshpunathil That's probably a lot of them, maybe even most of them. And I suspect @BridgeAR will be using those at NodeConf EU, so maybe wait until after NodeConf EU to try to see how many are left?
@gireeshpunathil I'll send you a list of tasks later on that are still open from the ones that I created for NodeConf EU but there are only very few left.
In #86 you find a short FAQ for things that are commonly asked. Please feel free to expand that list in case you come among anything new.
I also created #89 as an example how to actually solve the tasks.
As a recommendation: go through the coverage mid next week and create new tasks that people could solve. These have been quite popular and it is nice to have more of these instead of only the super simple ones.
@gireeshpunathil@BridgeAR Thanks for this. By the way, I thought we can also tackle this issue: nodejs/node#22492, in the meet up. It already have list of code blocks, which might need test cases. This in fact, gives the folks an idea to navigate around the codebase and see if a test case is present or not. If not add them (certain things might not be easy). Thoughts? 🤔
If you need issues, especially slightly more challenging ones than the usual initial issues, there are a few PRs that seem really close, but have been abandoned. A couple examples are nodejs/node#21372 and nodejs/node#22315.
Code & Learn BLR about to start in one hour from now. 50 participants in the room to be on-boarded . Request @nodejs/collaborators to support this with reviews and hand-holding. thanks!
New contributors are absolutely excited about this, few of them sent me emails and shared their happiness. Few of them are picking up work items on their own.
Thank you all the mentors who reviewed PRs with absolute receptiveness, approachability and kindness. Your guidance created a great open source experience to them that they can leverage!
Closing this issue as its purpose is met, having most of the PRs in the codebase; and giving way for #92
Reacted by Sakthipriyan Vairamani, antsmartian and Sagir Khan
Activity
Trott commentedon Nov 2, 2018
All the relevant
util.is*()funcitons are deprecated. I don't think we should be using them in test code. I prefertypeofchecks myself. Is there something I'm missing?Trott commentedon Nov 2, 2018
I have some leftover tasks from the Vancouver Code & Learn. It's also possible that there will be some leftover after the NodeConf EU Code & Learn. Do you have an idea how many attendees you expect?
Trott commentedon Nov 2, 2018
If you want to help out ChakraCore, there are tests where they float patches to make them pass with ChakraCore because the error message text is different than provided by V8. In my opinion, we should not rely on error message text that originates from the JS engine as it can change any time we update the engine to a new version. So, a good task might be removing the message text checks and replacing with a simple check that something is a
RangeErrororTypeErroror whatever, or else changing them to regular expression orString.prototype.includes()checks that are unlikely to break.You'll have to either get the list of tests where this is relevant from @nodejs/node-chakracore or else maybe look at their repo to figure out which tests are modified.
gireeshpunathil commentedon Nov 2, 2018
@Trott - thanks, I did not check that
util.is*are deprecated, realized now. So will skip that.are those the correcting the order or
assertparameters? or something else? please let me know, so I will dig those out and see how many are there.sure, I will check with @BridgeAR to see if there are TODO items from those, after that event.
Chakaracore - thanks for the suggestion, I will review that and see if we can include that as well.
count of attendees - at this point I have no idea, will get a clear picture in a week's time.
thanks once again!
Trott commentedon Nov 2, 2018
@gireeshpunathil That's probably a lot of them, maybe even most of them. And I suspect @BridgeAR will be using those at NodeConf EU, so maybe wait until after NodeConf EU to try to see how many are left?
ZYSzys commentedon Nov 5, 2018
@gireeshpunathil Maybe you can promote v8 name spaces with
using v8::insrcdirectory. Things like those nodejs/node#23934, nodejs/node#22641gireeshpunathil commentedon Nov 5, 2018
thanks @ZYSzys ! makes sense, will do! thanks.
gireeshpunathil commentedon Nov 9, 2018
given the RSVP count has reached 65, I am thinking of
test: convert anonymous closure functions into arrow functionsto be used as fillers, in case of scarcity.
/cc @Trott to see if this is indeed a good candidate and has no side effects. (IIRC we used it in the past, but don't remember when)
BridgeAR commentedon Nov 9, 2018
@gireeshpunathil I'll send you a list of tasks later on that are still open from the ones that I created for NodeConf EU but there are only very few left.
In #86 you find a short FAQ for things that are commonly asked. Please feel free to expand that list in case you come among anything new.
I also created #89 as an example how to actually solve the tasks.
As a recommendation: go through the coverage mid next week and create new tasks that people could solve. These have been quite popular and it is nice to have more of these instead of only the super simple ones.
gireeshpunathil commentedon Nov 9, 2018
thanks @BridgeAR - that will be really helpful! #89 looks really impressive, agree that it is a real win-win in terms of satisfaction and quality.
travel fund: update travel fund for @ryzokuken (C+L Bengaluru 2018) (#…
antsmartian commentedon Nov 13, 2018
@gireeshpunathil @BridgeAR Thanks for this. By the way, I thought we can also tackle this issue: nodejs/node#22492, in the meet up. It already have list of code blocks, which might need test cases. This in fact, gives the folks an idea to navigate around the codebase and see if a test case is present or not. If not add them (certain things might not be easy). Thoughts? 🤔
I guess this a win-win situation too.
gireeshpunathil commentedon Nov 13, 2018
@antsmartian - thanks for this insight! definitely looks promising. I will go through it in detail to figure out how to extract PRs from that.
Trott commentedon Nov 15, 2018
If you need issues, especially slightly more challenging ones than the usual initial issues, there are a few PRs that seem really close, but have been abandoned. A couple examples are nodejs/node#21372 and nodejs/node#22315.
gireeshpunathil commentedon Nov 17, 2018
Code & Learn BLR about to start in one hour from now. 50 participants in the room to be on-boarded . Request @nodejs/collaborators to support this with reviews and hand-holding. thanks!
targos commentedon Nov 17, 2018
Code & Learn review mode: ON
gireeshpunathil commentedon Nov 24, 2018
New contributors are absolutely excited about this, few of them sent me emails and shared their happiness. Few of them are picking up work items on their own.
Thank you all the mentors who reviewed PRs with absolute receptiveness, approachability and kindness. Your guidance created a great open source experience to them that they can leverage!
Closing this issue as its purpose is met, having most of the PRs in the codebase; and giving way for #92