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

The People Deserve A New Rivets Release! #560

Closed
Duder-onomy opened this issue Feb 1, 2016 · 36 comments
Closed

The People Deserve A New Rivets Release! #560

Duder-onomy opened this issue Feb 1, 2016 · 36 comments

Comments

@Duder-onomy
Copy link
Collaborator

Hi All,

@Leeds-eBooks and I have spoken, we want to start the conversation about a new release. @Leeds-eBooks and I are the most recently added core contributors and we seem to be the only active 2 right now (he more than I). Rivets has had a TON of new activity lately this is great and very healthy! In order to keep everyone interested and willing to help, we we must push things forward even in the absence of the original developer @mikeric.

In the coming days we will revisit all (currently 37) open pull requests. When this is done I will report back to this thread and we can all give our arguments for or against moving forward with the accepted PR's representing the new feature set.

Anyone following rivets with decent opensource experience please chime in. We need your help to ensure we dont mess things up and upset people.

If anyone knows @mikeric can you personally reach out to him and ask him to give some of us access to publish to NPM. (we cannot publish new version to NPM without it.)

@mikeric
Copy link
Owner

mikeric commented Feb 1, 2016

@Duder-onomy, @Leeds-eBooks What are your guys' npm usernames? Will add you as collaborators to the rivets and sightglass packages right away. I've already added you to the sightlgass GitHub repo.

@benadamstyles
Copy link
Collaborator

Hey @mikeric good to hear from you, my npm username is benstyles

@jccazeaux
Copy link
Contributor

i think people (and Rivets!) deserve a 1.0 version. I'm using Rivets since almost two years on production mobile and desktop applications. I think it's stable enough to consider a 1.0 in short or medium term.
@Duder-onomy Do you have a roadmap in mind?

@jccazeaux
Copy link
Contributor

@Duder-onomy @Leeds-eBooks
This new version will be built from master in coffeeScript or from the ES6 branch?
I didn't take time to take a look at the branch. It seems to be the future Rivets. If so we need to merge recent PR in this branch. I can help if necessary.

@benadamstyles
Copy link
Collaborator

I agree, although it will initially be a bit more work, it seems to make a lot more sense to work on the es6 branch from now on.

@Duder-onomy
Copy link
Collaborator Author

@mikeric Awesome! Nice to hear from you.
My NPM user name is: greglarrenaga

@stalniy
Copy link
Contributor

stalniy commented Feb 3, 2016

@Duder-onomy, @Leeds-eBooks, @mikeric guys I believe it'd be nice to setup a plan (set of features) which we plan to add in the new version or at least deadline. So, it won't look like everything stopped again.

Github allows to create a task list, so probably this is what we need. So that, everybody is aware about the progress and can help to move in the "right" direction.

@stalniy
Copy link
Contributor

stalniy commented Feb 3, 2016

one of the MUST features in my opinion should be:

  • tests running on travis CI. So, each commit to repo will be checked
  • eslint or similar tool for checking code style issues

@stalniy
Copy link
Contributor

stalniy commented Feb 3, 2016

@Leeds-eBooks a tool which can help us to migrate to es6: https://github.com/decaffeinate/decaffeinate

@benadamstyles
Copy link
Collaborator

@stalniy We already have an es6 branch that is working, and decaffeinate is described as not ready for production use. Why not work directly in the es6 branch?

@stalniy
Copy link
Contributor

stalniy commented Feb 4, 2016

@Leeds-eBooks, @mikeric, @Duder-onomy, @blikblum, @jccazeaux

We stuck with this rewriting of cofeescript to es6 instead we could move rivets further the road of modern web development.

Rewriting to ES6 doesn't provide any benefits (tell me at least one), you will use just another transpiler. There are 4 contributors including me who actively do changes in rivets using CoffeScript (I've never used it in production, just quick googling + docs). So, the question why ES6 matters?

P.S.: decaffeinate can be used for semi-automatic way of converting Coffee -> ES6. I tried it works

@benadamstyles
Copy link
Collaborator

The initial reason for moving to es6 was to remove the barrier to entry for new contributors. I think that reason still holds true. In any case, it's not es6 any more, it's es2016 now. In a few years we won't need transpilers for the majority of es2016 features in modern browsers. I am personally not able to spend time learning the idiosyncracies of coffeescript just to work on rivets.

@stalniy
Copy link
Contributor

stalniy commented Feb 4, 2016

We are now. Not in the future. Rivets has contributers who do the stuff in Coffee. Let's concentrate on features not transpilers.

So, no benefits from es6 or es7 at the moment.

Update: don't understand this in a wrong way. I like ES6/7 but currently this won't provide any benefits for us. What I want is to see memory leaks being fixed and new features being merged.

@benadamstyles
Copy link
Collaborator

I am going to stick my neck out on this one and say that Rivets 1.0 should not be in CoffeeScript. We know my view and yours @stalniy, what are other people's?

@stalniy
Copy link
Contributor

stalniy commented Feb 4, 2016

@Leeds-eBooks what is the reason of your opinion?

You said that it will involve more contributions to rivets but there are contributions and they are not processed. So, is it really a point?

@benadamstyles
Copy link
Collaborator

That's an entirely different issue, the speed at which @Duder-onomy and I get to PRs is not good but I personally am going as fast as I can with limited time and I'm sure Greg is too – the ideal would be getting more people with push/merge access who have the time to review PRs. I don't think that has anything to do with this question.

The reason I hold this opinion is personal – I only joined in because it was being rewritten in JavaScript. At the time this decision was made, there were other people who held this opinion too. But it is also not personal in that if I felt this way, then I imagine other people will too. I find reading and writing CoffeeScript slow and painful – I am not paid to contribute to rivets and so it needs to be fun. CoffeeScript is not fun, JavaScript is fun. That's all my opinion is based on. But I would like to see what other people think.

@jccazeaux
Copy link
Contributor

I must say i'm not comfortable with CoffeeScript. I'm a fan of rivets so i learnt CoffeeScript but it's still painful ;(. So i agree with @Leeds-eBooks, the 1.0 version must be in javascript. Ok it's another transpiler but it's a javascript to javascript transpiler. This reason is good enough for me.

Still i think we must not wait to finalize ES2016 version to release some new Rivets versions. Recent activity has provided some interesting commits and ideas such as components improvements (#553) and ability to call functions (#554 and #557)
Maybe we can consider a 0.9 version based on CoffeeScript version. Reports are pretty easy for now.

@Leeds-eBooks @Duder-onomy : Do you have an idea (approximatively) of when ES2016 will be stable enough to be release candidate ?

@benadamstyles
Copy link
Collaborator

I like this idea. 0.9 in coffeescript, 1.0 in javascript. This is a good compromise, I think. We can use the tests in 0.9 to make sure everything is there in 1.0.

I think it's nearly there. Do you have a complex app with tests that you can clone and drop in the es6 branch to try it out?

@jccazeaux
Copy link
Contributor

I have one. That'll be a good test.

@benadamstyles
Copy link
Collaborator

Great! Start new issues for anything you find.

@Duder-onomy
Copy link
Collaborator Author

Hi All
I second @Leeds-eBooks Lets make our 0.9 in coffee script. Then 1.0 in es2016.

This will let us get all the features we feel are necessary into the 0.9. We migrate the test suite over to the es6 branch, then everyone fixes their issues in the es6 branch.

Lets start a list / roadmap.
I am curious to find out what people want to see in a new release.

Personally, I think having it be well tested with Travis CI integration is important. And Very thorough docs with inline examples is important.

Lets discuss the roadmap in this issue. When we all agree, lets make a new thread so we can update it as we go along.

I will start with

  • Travis CI integration with git hooks for pre-push and pre-commit This also includes a travis CI badge on the home page. ( I will champion this one if no one else wants to)
  • Update docs to be incredibly thorough, should have inline embedded jsfiddles. ( I will take this one as well)

Please feel free to reach out to me directly if I am not responsive enough. (greglarrenaga@gmail.com)

@Duder-onomy
Copy link
Collaborator Author

Another item for the 0.9 release

And its already done!

@jccazeaux
Copy link
Contributor

After some tests on ES6 branch, I encountered two issues

I'll run some more tests and keep you informed

@jccazeaux
Copy link
Contributor

jccazeaux commented Feb 11, 2016

Here i'm trying to list what has been done on master since 0.8.1

What's still open

Maybe i missed some

@Duder-onomy @Leeds-eBooks @blikblum When do you think 0.9 will be ready?

@benadamstyles
Copy link
Collaborator

Great idea to summarise this. I think, when those 3 "still open" PRs are merged, we can release 0.9.

@benadamstyles
Copy link
Collaborator

Just added "Documentation" to your list

@blikblum
Copy link
Contributor

#558 are just ideas. No code yet. Also they are breaking changes

@benadamstyles
Copy link
Collaborator

@blikblum thanks, I've crossed it out, I think memory improvements should wait until maybe 0.9.1 or something.

@Namek
Copy link
Contributor

Namek commented Mar 31, 2016

Guys, please release in small steps. Today I had to build rivets myself because I needed executeFunctions configuration. And who knows when "component enhancements" will be done. Also IMO no release needs to wait for documentation, docs can come later.

About versioning, don't try to stretch between 0.8.x and 1.0.0 as if there was only 0.9.x available. 0.10.x, 0.11.x, etc. are OK, too. IMO some version should be released ASAP.

@jccazeaux
Copy link
Contributor

@Namek 👍

@aliakakis
Copy link

Hello, just wanted to say keep up the good work and whether you have a possible release date for a new version.

@jccazeaux
Copy link
Contributor

@Leeds-eBooks @Duder-onomy
I think it's ready for a 0.9. Don't you? Let's release it !

@benadamstyles
Copy link
Collaborator

Yeah let's do it. Shall we discuss in https://gitter.im/mikeric/rivets how we go about doing it? I'm not familiar with the process for this lib.

@benadamstyles
Copy link
Collaborator

benadamstyles commented May 15, 2016

Is it just a case of npm version minor && npm publish? Or do we need to commit a gulp build too?

@jccazeaux
Copy link
Contributor

The gulp build must be commited and taged

@benadamstyles
Copy link
Collaborator

0.9.0 has been released! Closing this for now. I think the next big job is documentation.

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

No branches or pull requests

8 participants