Skip to content

8.0.0 #109

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
Jul 21, 2021
Merged

8.0.0 #109

merged 4 commits into from
Jul 21, 2021

Conversation

OmgImAlexis
Copy link

This will be used for the last changes needed to make 8.0.0 ready for release.

@mithunsatheesh anything I've missed?

@OmgImAlexis OmgImAlexis mentioned this pull request Jul 21, 2021
@OmgImAlexis
Copy link
Author

You can see this in action in a node.js environment using this RunKit example. If you are interested to use it in the browser, use this JSFiddle for a quick start.

I think I may need to remove this line from the README.

@mithunsatheesh
Copy link
Owner

| You can see this in action in a node.js environment using this RunKit example. If you are interested to use it in the browser, use this JSFiddle for a quick start.

@OmgImAlexis why? are they not functional now?

@OmgImAlexis
Copy link
Author

The node example will work but it'll be up to the user to bundle it for the web. Maybe we could provide an ES module example since that'll work in all modern browsers without bundling?

@mithunsatheesh mithunsatheesh merged commit 129087b into mithunsatheesh:8.0.0 Jul 21, 2021
@mithunsatheesh
Copy link
Owner

@OmgImAlexis I need to run bit of sanity on node and JS examples before merging to release branch.

Areas we need to validate:

  1. Are changes introduced now, backward compatible with earlier major versions? If not can there be minimal effort to migrate of old samples.
  2. Run examples in the sample folders of the library for node and browser.
  3. Travis seems to have gone down with no support. I would need another CI integration in place to validate commits against test runs automatically.

Would update you.

@OmgImAlexis OmgImAlexis deleted the 8.0.0 branch July 21, 2021 07:21
@OmgImAlexis
Copy link
Author

  1. It's likely breaking as you now need to call new RuleEngine() instead of RuleEngine().
  2. All examples work. I removed the browser ones as it should be a case of getting a module example working and then loading all the node examples into the browser. They should work cross platform. 👍
  3. I've moved it over to GitHub Actions as to make things easier to new devs coming across this. Prevents the need to go off site.

@OmgImAlexis
Copy link
Author

@mithunsatheesh if you have a look at this you'll see the builds all succeed they just get stuck on the coveralls part since it doesn't have a token set. https://github.com/OmgImAlexis/node-rules/actions/runs/1047765610

@mithunsatheesh
Copy link
Owner

@OmgImAlexis Previously we integrated with Travis. But Travis which is ceased from Jun 15th. I am exploring alternates for this. Thanks alot for the contribution around this. As I earlier said, let me spend some time in weekend and check if there is a way to have seemless migration of major versions 7 to 8 and get the CI in place. Should be done by end of this week.

@OmgImAlexis
Copy link
Author

@mithunsatheesh as I mentioned the CI is in place already. I moved it over to GitHub Actions. You'll be able to see the results in the "Actions" tab in this repo once it's merged into master. If you'd like them to run now you just need to update https://github.com/mithunsatheesh/node-rules/blob/8.0.0/.github/workflows/main.yaml to allow it to run on pull_request against 8.0.0.

@OmgImAlexis
Copy link
Author

To have seamless migration you'll want to update the package.json https://nodejs.org/api/packages.html#packages_package_entry_points

Then make a file that does this and have it be the cjs export and use the dist/node-rules.js as the ESM export.

const R = require('node-rules').RuleEngine;
module.exports = function RuleEngine(rules, options) {
    return new R(rules, options);
};

@OmgImAlexis
Copy link
Author

The package.json exports change you'll need will be something like this.

Then I'd add the cjs-shim directory to the files array in package.json so it's bundled in the tgz when npm pack is run.

{
    "exports": {
        "import": "./dist/node-rules.js",
        "require": "./cjs-shim/node-rules.js"
    }
}

@mithunsatheesh
Copy link
Owner

awesome!

@OmgImAlexis
Copy link
Author

@mithunsatheesh what's the go on getting v8.0.0 released?

@mithunsatheesh
Copy link
Owner

mithunsatheesh commented Jan 13, 2022

@OmgImAlexis sorry about the delay. I have added you collaborator access to the repo which should allow you to make sufficient changes and release a new version.

#113 was a bug we addressed which may not be present in the Typescript branch. Also please look at below recent change to node versions supported as well and carry it to the dev branch.
245428c

Let me know if you need any help around it.

@OmgImAlexis
Copy link
Author

@mithunsatheesh adding this to my schedule. Should have the new version released this week after confirming all existing bugs are squashed.

@mithunsatheesh
Copy link
Owner

thanks @OmgImAlexis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants