Skip to content

Project Euler - Problem 16 #745

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

Merged
merged 4 commits into from
Oct 8, 2021

Conversation

lvlte
Copy link
Contributor

@lvlte lvlte commented Oct 5, 2021

Welcome to JavaScript community

Open in Gitpod know more

Describe your change:

  • Add an algorithm?
  • Fix a bug or typo in an existing algorithm?
  • Documentation change?

Checklist:

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new JavaScript files are placed inside an existing directory.
  • All filenames should use the UpperCamelCase (PascalCase) style. There should be no spaces in filenames.
    Example:UserProfile.js is allowed but userprofile.js,Userprofile.js,user-Profile.js,userProfile.js are not
  • All new algorithms have a URL in its comments that points to Wikipedia or other similar explanation.
  • If this pull request resolves one or more open issues then the commit message contains Fixes: #{$ISSUE_NO}.

@lvlte lvlte requested a review from raklaptudirm as a code owner October 5, 2021 16:14
@raklaptudirm raklaptudirm added algorithm Adds or improves an algorithm changes required This pull request needs changes feature Adds a new feature ESM required Convert code to ECMAScript Modules (ESM) Reviewed labels Oct 6, 2021
@lvlte lvlte requested a review from raklaptudirm October 6, 2021 12:58
@defaude
Copy link
Contributor

defaude commented Oct 8, 2021

Hi folks - I've just now stumbled upon this discussion. @lvlte, I do understand the frustration and am sorry if there's a bit confusion going on right now.

TBH there have been several different styles how algorithm implementation code is supposed to look and how it's supposed to be run (i.e. tested):

  • Simple JS files containing the algorithm itself + "test driver" code that outputs the results to the cconsole. Those algorithms are tested by simply running the whole JS file in node (CommonJS style.)
  • JS files with doctest comments (we just got rid of those)
  • JS files that adhere to ESM + dedicated test files. Tests are run through Jest, which picks up the babel config.
  • ... and a bit of a wild mix altogether ;)

We discussed this in #720 where we decided that, the code shall be more consistent. Going forward, it makes sense to push towards ESM only (eventually just add the "type": "module" property in the package.json and remove the need for babel altogether. But we're not there yet ;)

So please try to write new additions ESM-style, without console.log, with export function myAlgorithm etc. + tests written in Jest. While this may be inconsistent at this moment with previous contributions, we're pushing towards migrating all existing code into the targeted style.

@raklaptudirm raklaptudirm removed changes required This pull request needs changes ESM required Convert code to ECMAScript Modules (ESM) labels Oct 8, 2021
@raklaptudirm raklaptudirm merged commit 46d6855 into TheAlgorithms:master Oct 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
algorithm Adds or improves an algorithm feature Adds a new feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants