Coder Social home page Coder Social logo

Comments (12)

ahyatt avatar ahyatt commented on July 18, 2024

Closed with latest commit. There are still a few divergences with the w3c API, notably that I'm passing frames back to on-message instead of raw text (I think my way is the right way), and I haven't implemented "bufferedAmount" (I don't know how yet).

from emacs-websocket.

tkf avatar tkf commented on July 18, 2024

Wow, now websocket.el speaks RFC6455 and has W3C-like API! This is great.

Now the API is renewed, I guess it is good time to add a version number to websocket.el. Do you have any plan to do that?

from emacs-websocket.

ahyatt avatar ahyatt commented on July 18, 2024

Soon. I want to support extensions first, and improve the documentation.

Are you using this for a project? I'd love to have a real-world user before
declaring that it works by giving it a version number.
On Jun 1, 2012 6:40 AM, "Takafumi Arakaki" <
[email protected]>
wrote:

Wow, now websocket.el speaks RFC6455 and has W3C-like API! This is great.

Now the API is renewed, I guess it is good time to add a version number to
websocket.el. Do you have any plan to do that?


Reply to this email directly or view it on GitHub:
#11 (comment)

from emacs-websocket.

tkf avatar tkf commented on July 18, 2024

Good to hear that!

I am using websocket.el for my Emacs IPython Notebook client:
https://github.com/tkf/emacs-ipython-notebook
Without websocket.el my project does not exist. I haven't tried the new protocol and API but I will do it soon.

from emacs-websocket.

ahyatt avatar ahyatt commented on July 18, 2024

Let me know when you've tried it. I think I've made all the changes I
want to make, unless I decide to implement wss. So I just need
confirmation from you that the current version works, and I'll label
it 1.0.

On Fri, Jun 1, 2012 at 7:24 AM, Takafumi Arakaki
[email protected]
wrote:

Good to hear that!

I am using websocket.el for my Emacs IPython Notebook client:
https://github.com/tkf/emacs-ipython-notebook
Without websocket.el my project does not exist. Β I haven't tried the new protocol and API but I will do it soon.


Reply to this email directly or view it on GitHub:
#11 (comment)

from emacs-websocket.

tkf avatar tkf commented on July 18, 2024

I switched to the new API a few days ago and I have no websocket problem since then.

from emacs-websocket.

ahyatt avatar ahyatt commented on July 18, 2024

Awesome!
On Jun 6, 2012 7:40 AM, "Takafumi Arakaki" <
[email protected]>
wrote:

I switched to the new API a few days ago and I have no websocket problem
since then.


Reply to this email directly or view it on GitHub:
#11 (comment)

from emacs-websocket.

tkf avatar tkf commented on July 18, 2024

Anything you plan to do before the release? :)

from emacs-websocket.

ahyatt avatar ahyatt commented on July 18, 2024

Just saw this comment. The README has some explanation now of what should happen before a 1.0 release. I'm also thinking of switching the API to be based off of eieio, which needs to either happen or not before 1.0. There's a branch that may or may not work I just created, and will be working on in the next few days or weeks.

from emacs-websocket.

tkf avatar tkf commented on July 18, 2024

Yea, I saw your branch. Does it mean you are planning to support server also (Maybe not for 1.0, like 2.0)? Running websocket server in Emacs would be really cool. For example, this package use websocket server (in Node.js) to preview any stuff in browser https://github.com/yukihr/Warp. When you scroll Emacs buffer, preview in browser move along with it. This is very nice. I guess websocket.el can help this kind of package.

EIEIO is nice, but I found EIEIO does not work well with Emacs documenting system, such as describe-function. You can define multiple methods with same name but only one docstring shows up when you use describe-function. To see all docstring, you need to use describe-generic. Also, argument information when using describe-function is useless (it shows just &rest LOCAL-ARGS). I guess this can be drawback when providing a public API. But maybe mentioning about describe-generic in README is enough. Anyway, this is the only drawback I've found when using EIEIO. Probably you already know all of this. I am just mentioning it because I'd want know before using it.

from emacs-websocket.

ahyatt avatar ahyatt commented on July 18, 2024

Supporting server is probably something past 1.0. Shouldn't be too difficult, though, since it's just some wrapper code around functions I already have.

The eieio branch is interestin, since it solves the problem of users storing data much more elegantly, since they can create their own defclass that has the slots they want, inheriting from websocket. On the other hand, eieio is another dependency I'm loath to introduce, and most elisp hackers don't use it. So, I'm still thinking about it... let me know if you have any further opinion on if the eieio would provide a better API for you or not.

from emacs-websocket.

tkf avatar tkf commented on July 18, 2024

If EIEIO is just for additional slot, defstruct already solved the problem because it allows inheritance, if I remember correctly. EIEIO's strong point is that you can extend/override methods and you can do dispatching based on types. I don't know if it helps providing cool APIs. You already implemented w3c-like API and it was enough for me.

from emacs-websocket.

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.