Giter Club home page Giter Club logo

Comments (32)

joyeecheung avatar joyeecheung commented on May 18, 2024 4
TODO file line note status
Replace e->ToObject(env->isolate()) with e->ToObject(env->context()).ToLocalChecked() src/node.cc line 592
Replace e->ToObject(env->isolate()) with e->ToObject(env->context()).ToLocalChecked() src/node.cc line 754
Replace er->ToObject(env->isolate()) with er->ToObject(env->context()).ToLocalChecked() src/node.cc line 1485
Replace args[0]->ToObject(env->isolate()) with args[0]->ToObject(env->context()).ToLocalChecked() src/node.cc line 2304
Replace args[1]->ToString(env->isolate()) with args[1]->ToString(env->context()).ToLocalChecked() src/node.cc line 2322
Replace module->Get(exports_string)->ToObject(env->isolate()) with module->Get(exports_string)->ToObject(env->context()).ToLocalChecked() src/node.cc line 2367
Replace process_object->Get(exit_code)->ToInteger(env->isolate()) with process_object->Get(exit_code)->ToInteger(env->context()).ToLocalChecked() src/node.cc line 4340
Replace args[1]->ToString(env->isolate()) with args[1]->ToString(env->context()).ToLocalChecked() src/node_buffer.cc line 609
Replace args[0]->ToString(env->isolate()) with args[0]->ToString(env->context()).ToLocalChecked() src/node_buffer.cc line 680
Replace args[0]->ToString(env->isolate()) with args[0]->ToString(env->context()).ToLocalChecked() src/node_contextify.cc line 624
Replace args[1]->ToObject(env->isolate()) with args[1]->ToObject(env->context()).ToLocalChecked() src/node_file.cc line 1222
Replace e->ToObject(env->isolate()) with e->ToObject(env->context()).ToLocalChecked() src/node_http_parser.cc line 469
Replace args[1]->ToObject(env->isolate()) with args[1]->ToObject(env->context()).ToLocalChecked() src/node_zlib.cc line 181
Replace args[4]->ToObject(env->isolate()) with args[4]->ToObject(env->context()).ToLocalChecked() src/node_zlib.cc line 190
Replace args[0]->ToObject(env->isolate()) with args[0]->ToObject(env->context()).ToLocalChecked() src/process_wrap.cc line 146
Replace chunk->ToString(env->isolate()) with chunk->ToString(env->context()).ToLocalChecked() src/stream_base.cc line 130
Replace chunk->ToString(env->isolate()) with chunk->ToString(env->context()).ToLocalChecked() src/stream_base.cc line 182

This is generated with a script but should be a safe list

from code-and-learn.

joyeecheung avatar joyeecheung commented on May 18, 2024 3

cc @Trott @addaleax

Also, I will be there. Happy to help out with whatever needed.

from code-and-learn.

ronkorving avatar ronkorving commented on May 18, 2024 3

Of course I will be there 👍

from code-and-learn.

vsemozhetbyt avatar vsemozhetbyt commented on May 18, 2024 3

Possible case in tests: nodejs/node#16243 (comment) + next comment: check else if by if replacements when a previous if contains return. Also check else eliminations on similar condition.

from code-and-learn.

devsnek avatar devsnek commented on May 18, 2024 3

can i just say, you guys are doing fantastic stuff here.

from code-and-learn.

jasnell avatar jasnell commented on May 18, 2024 2

This is awesome. Keep in mind that we're also running a small code-and-learn at NodeConf EU at the beginning of November so some of the tasks may adjust after that. We should likely coordinate a bit in advance to make sure we don't end up duplicating any effort! :-) (I totally wish I was able to get to Tokyo this year)

One possible set of tasks that I can suggest for new contributors who are bit more confident in their Node.js skills, would be converting tests to use the new ../common/countdown utility module.

For instance, if you take a look at: https://github.com/nodejs/node/blob/master/test/parallel/test-http2-client-destroy.js, you'll see that there is a remaining counter (https://github.com/nodejs/node/blob/master/test/parallel/test-http2-client-destroy.js#L19). The test then counts down remaining before closing the server. There are quite a large number of tests in our suite that perform similar actions in ways that are rather inconsistent. The ../common/countdown utility was designed to bring some consistency there.

The way the Countdown utility works is straightforward:

const common = require('../common');
const Countdown = require('../common/countdown');

// ...

const countdown = new Countdown(n, common.mustCall(() => {
  // do something here
}));

// Decrement the counter, the callback is called synchronously when
// countdown.dec is called n times.
countdown.dec();

I know that there are quite a few of the http2 tests that can benefit from this, along with a bunch of other http and https tests.

These tasks would be for folks who are a bit more comfortable with their Node.js skills.

from code-and-learn.

MylesBorins avatar MylesBorins commented on May 18, 2024 2

from code-and-learn.

apapirovski avatar apapirovski commented on May 18, 2024 2

@abouthiroppy For my suggestion above, I created a gist with an eslint rule that will let you find all instances of assert.throws(fn, common.expectsError(err));.

from code-and-learn.

joyeecheung avatar joyeecheung commented on May 18, 2024 2

Sorry, accidentally pressed the wrong button

from code-and-learn.

MylesBorins avatar MylesBorins commented on May 18, 2024 2

All of the following files have string concatenation that can be replaced with template strings

Refactor instances of concatenated strings to use template strings as long as the result is less than 80 characters (our max line length). Not all instances of concatenated strings need to be replaced, specifically look out for strings that are using concatenation for variables. If you are unsure please feel free to raise your hand an ask for assistance. Alternatively a collaborator will be able to verify your work when you submit your pull request.

  'test/abort/test-zlib-invalid-internals-usage.js'
  'test/async-hooks/init-hooks.js'
  'tools/doc/json.js'
  'benchmark/zlib/creation.js'
  'doc/api/stream.md'

from code-and-learn.

kt3k avatar kt3k commented on May 18, 2024 2

It was very fun! thank you!

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024 1

@vsemozhetbyt Thank you for your information!

from code-and-learn.

apapirovski avatar apapirovski commented on May 18, 2024 1

Another potential suggestion is replacing assert.throws(fn, common.expectsError(err)); with common.expectsError(fn, err); It's another thing I would like to ideally introduce an eslint rule for (already have it written) but there are currently a ton of instances where we use the former.

I think that's pretty similar in difficulty to the change that was done at Node.js Interactive this year.

from code-and-learn.

AndreasMadsen avatar AndreasMadsen commented on May 18, 2024 1

A simple thing is removing the redundant + from +conf.n in the benchmarks. If the values are integers in the bench(main, conf) object they will be integers in the main(conf) object too.

example: https://github.com/nodejs/node/blob/master/benchmark/assert/deepequal-object.js#L30L31

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024 1

@MylesBorins Thanks!! yep, but I don't know the values session of node interactive. Would you give me this information?

@apapirovski wow, thank you so much 🙇 I'll use it!

from code-and-learn.

fhinkel avatar fhinkel commented on May 18, 2024 1

Also, I will be there. Happy to help out with whatever needed.

from code-and-learn.

yosuke-furukawa avatar yosuke-furukawa commented on May 18, 2024 1

I guess 30 - 50 people.

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024 1

@yosuke-furukawa @joyeecheung @MylesBorins Thank you for your help! I was really happy :)

from code-and-learn.

watilde avatar watilde commented on May 18, 2024

Note: Here is the last time we had - #58

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024

@jasnell @apapirovski @AndreasMadsen Thanks.🙌 I try to summarize that information in Gist.
You should come to Nodefest2017!!

from code-and-learn.

seishun avatar seishun commented on May 18, 2024

I'm on the fence about attending (concerned about the cost mostly).

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024

Sorry for my late reply.

@seishun I think that Node.js Foundation will help with the cost.
@fhinkel Thanks!

from code-and-learn.

Trott avatar Trott commented on May 18, 2024

@seishun I think that Node.js Foundation will help with the cost.

I don't think the foundation typically sends Collaborators to an event simply because it's a Node.js event. It's usually a Collaborator Summit. There have been some exceptions though, like sending particular people to a TC-39 meeting one time.

That said, there's absolutely nothing stopping any Collaborator from requesting funds from the TSC for something by opening an issue in the TSC repository.

from code-and-learn.

MylesBorins avatar MylesBorins commented on May 18, 2024

Have we prepared a list of changes for participants to implement?

How many people are we expecting?

from code-and-learn.

yosuke-furukawa avatar yosuke-furukawa commented on May 18, 2024

Have we prepared a list of changes for participants to implement?
Not yet !! I will create the list asap...

from code-and-learn.

MylesBorins avatar MylesBorins commented on May 18, 2024

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024

a list of changes for participants 

TODO file line note status
Fix typo doc/api/util.md 695 occuring
Add link of ECMAScript 2015 doc/api/buffer.md 2740
Add link to dns.resolve() doc/api/dns.md 632
Use common.hasIntl instead of typeof Intl test/parallel/test-intl-v8BreakIterator.js 6
replace Function with Arrow Function doc/api/util.md 442, 552, 567, 568
test-writeint.js
test-querystring.js
test-assert.js
test-http.js 109, 118, 127, 128
test-http-pause.js
doc/api/vm.md 477
test-timers.js
test-whatwg-url-searchparams-getall.js
test-writeuint.js
test-child-process-send-cb.js
test-zerolengthbufferbug.js
test-domain-top-level-error-handler-clears-stack.js
use === and ' test-whatwg-url-setters.js 43
add ; test-whatwg-url-setters.js 35, 81
make use of const or let test-whatwg-url-setters.js 41 - 49
many files.... find ./ -type f -print | xargs grep var
fix comments test-assert.js 617, 5292
make use of Number.isNaN test-process-emit.js 22
test-readdouble.js
test-readfloat.js
test-writedouble.js
test-writefloat.js

please modify freely!

from code-and-learn.

joyeecheung avatar joyeecheung commented on May 18, 2024

We can try replacing all the google.com or this.hostname.is.invalid etc. references in test/parallel with configurable variables defined in internet.addresses

from code-and-learn.

joyeecheung avatar joyeecheung commented on May 18, 2024

Also there are a few tasks that could be more advanced: find the tests in test/parallel that are making actual dns calls, use mocked lookup functions or put those in test/internet. Searching for DNS error codes like EAI_AGAIN or ENOTFOUND in test/parallel would yield a bunch of tests that try to work around this even though they are not supposed to work around that.

from code-and-learn.

joyeecheung avatar joyeecheung commented on May 18, 2024

There is also nodejs/node#17169 , see nodejs/node#17169 (comment)

from code-and-learn.

watilde avatar watilde commented on May 18, 2024

I've added some to #72 (comment).

from code-and-learn.

hiroppy avatar hiroppy commented on May 18, 2024
TODO file line note status
replaced with template strings
test/async-hooks/init-hooks.js
test/abort/test-zlib-invalid-internals-usage.js 15
tools/doc/json.js 15
doc/api/stream.md 767

from code-and-learn.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.