Skip to content
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

Porting the codebase from CoffeeScript to JavaScript #429

Open
3 tasks done
cirpo opened this issue Aug 20, 2017 · 9 comments
Open
3 tasks done

Porting the codebase from CoffeeScript to JavaScript #429

cirpo opened this issue Aug 20, 2017 · 9 comments
Labels
enhancement M-T: A feature request for new functionality semver:major

Comments

@cirpo
Copy link

cirpo commented Aug 20, 2017

  • I've read and understood the Contributing guidelines and have done my best effort to follow them.
  • I've read and agree to the Code of Conduct.
  • I've searched for any related issues and avoided creating a duplicate issue.

Description

Porting the codebase to plain JavaScript

Hubot codebase moved away from CoffeeScript, is there any plan for hubot-slack?
Is it worth it to start working on it?

@aoberoi
Copy link
Contributor

aoberoi commented Aug 21, 2017

i absolutely think it makes sense to port from coffeescript to javascript (specifically ES2015). we had already discussed this as a task and wanted to complete it for the next major version bump. the reason its grouped that way is because we'd like to drop support for versions of node that are no longer being maintained and use new javascript features, which may change the API.

@aoberoi
Copy link
Contributor

aoberoi commented Aug 21, 2017

thanks for making an issue for this though, in the next coming weeks i hope to publish a roadmap (in the form of GitHub milestones) to help bring transparency into what we have planned. in order for me to do that, we need to spend some time pruning the backlog of issues, which is no small feat. if you'd like to help, once those milestones are out, it will be easier to see where that help is most useful.

@cirpo
Copy link
Author

cirpo commented Sep 24, 2017

@aoberoi sorry, I've just seen your reply. Let me know if and how I can help, thanks

@aoberoi
Copy link
Contributor

aoberoi commented Oct 5, 2017

just taking notes: https://github.com/decaffeinate/decaffeinate

mbland pushed a commit to mbland/slack-emoji-issues that referenced this issue Nov 5, 2017
Addresses the issue described in #15. In short, hubot-test-helper v1.8.0
depends on hubot-v3.0.0, both are rewrites from CoffeeScript to ES2015,
and consequently hubot-slack adds Robot.react to a CoffeeScript-
compatible wrapper function, leading to smoke and integration test
failures.

The implementation of slackapi/hubot-slack#429 (CoffeeScript-to-ES2015
rewrite) should include a fix that will eliminate the need for this
workaround.
@mbland
Copy link
Contributor

mbland commented Nov 5, 2017

Something to put on the radar for this issue (though happy to file a new issue if desired): the Robot.react method is currently somewhat broken with Hubot v3.0.0 and above, for clients that require its hubot/es2015 module instead of hubot—such as hubot-test-helper v1.8.0 and above.

The gory details are in mbland/slack-emoji-issues#15, but in a nutshell, Robot.react now gets added to the CoffeeScript-compatible wrapper from hubot/index.js, not to the actual Robot class exported by hubot/es2015.js.

There is a workaround, but it seems like the implementation of this issue should obviate the need for it:

require('hubot-slack')
var CoffeeScriptCompatibleHubot = require('hubot')
var Hubot = require('hubot/es2015')
Hubot.Robot.prototype.react = CoffeeScriptCompatibleHubot.Robot.prototype.react

Of course, since I implemented Robot.react in #363, I'm happy to help out however I can.

@aoberoi
Copy link
Contributor

aoberoi commented Nov 7, 2017

@mbland thanks for the context. im hoping to address this issue and help you remove your workaround soon!

@aoberoi aoberoi added the enhancement M-T: A feature request for new functionality label Dec 18, 2017
@joeyguerra
Copy link

Is anyone still interested in a javascript port of hubot-slack? I'm in the process of modernizing Hubot and testing with this adapter, which doesn't work with Coffeescript 2. Thus finding myself at a cross roads.

Does anyone still use this?

@joeyguerra joeyguerra mentioned this issue Jun 4, 2023
2 tasks
@joeyguerra
Copy link

joeyguerra commented Jun 4, 2023

@cirpo @aoberoi @mbland Do ya'll happen to know any of the org owners that could help get this PR reviewed and merged? #652

@cirpo
Copy link
Author

cirpo commented Jun 4, 2023

@joeyguerra unfortunately not sorry

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement M-T: A feature request for new functionality semver:major
Projects
None yet
Development

No branches or pull requests

4 participants