Skip to content

The first beta of version 3.0#38

Merged
KidSysco merged 55 commits into
KidSysco:masterfrom
benjamin-albert:master
Jan 20, 2016
Merged

The first beta of version 3.0#38
KidSysco merged 55 commits into
KidSysco:masterfrom
benjamin-albert:master

Conversation

@benjamin-albert
Copy link
Copy Markdown
Collaborator

After two months of research and development, I'm proud to announce that the first beta of the redesigned menu is ready.

Take a look at the beta fiddle.

What I plan to do is have a 2.x branch which we will maintain and support until we see that everything is working smoothly for a couple of months.

NOTE: Please create a 2.x branch in your repo before merging.

I've tested my jQuery UI Button hakes (discussed in #31) in several different jQuery UI builds the versions range from 1.9 up to 1.11.4, and I've added 2 new unit tests.

I also tested it in a beta build of the unreleased version 1.12 of jQuery UI and even version 2.8.3 breaks because of the revamped CSS.

I guess when it gets released and users start to adopt version 1.12 we can write support for the major CSS changes.

Please read the 3.0 Upgrade Guide which explains the changes and the steps the users will need to take to upgrade to version 3.x.

If you any have suggestions (or find any typos) please feel free to improve the 3.0 Upgrade Guide.
I think we can add a link to the version 2.x branch in case people want a specific feature and can't (or don't want to) adjust their code to Version 3.x.

@KidSysco Please see if you can update the outdated image in the projects README, and don't forget to update the fiddle.

I've also added two badges to the projects README:

  1. Travis-CI build status.
  2. Built with Grunt.

So what is Travis-CI?

Each time someone makes a commit to my (or your repo if you sign up and link your repo) it runs npm install and grunt test.

It also runs tests against pull requests, which is awesome especially for people who just want to make a small patch and don't want to clone the repo and download Node.js

If you don't want to sign up and link your repo I guess we can leave the badge to point to my fork's build status.

benjamin-albert and others added 30 commits November 20, 2015 13:49
Makes the month-picker div wrap around the menu.
Conflicts:
	MonthPicker.js
	MonthPicker.min.js
	README.md
	demo/Demo.min.js
Adds an HTML page that allows testing the plugin in different
jQuery UI themes and css.
Conflicts:
	MonthPicker.min.js
	demo/Demo.min.js
to the new jump years buttton structure
The new menu's display is inline-block so that inline menus
won't take up all the space of their parent.

This caused tests that check that the menus topmost div's
display is block to fails in Internet Explorer, because
jQuery's .fadeIn() method didn't apply the display:block; css
to the menu's div.

This commit fixes the tests by checking visibility using the :visible
psudo instead.
when button clicked + version bump
the button while the label is animating
Switches the use of the px unit with em, which makes the menu
better handle other users CSS which might have a different font-size.
Benjamin Albert and others added 14 commits January 14, 2016 14:41
The renaming is done to avoid conflicts with the users existing
CSS.
For example, the user might have defined a .next-year CSS
selector in there CSS which will mess up the menu.

It is also possible that users have applied their own CSS
to the menu to workaround some of the issues the CSS had
in version 2.x, in these cases I don't want the user's CSS to
mess up the new menu which works differently.

previous-year is now month-picker-previous
next-year is now month-picker-next
jump-years is now month-picker-title
@benjamin-albert benjamin-albert changed the title The first bate of version 3.0 The first beta of version 3.0 Jan 19, 2016
Comment thread UPGRADE.md
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@KidSysco Perhaps we should say something here about the update being simple, and in some cases will only require downloading the new minified version.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Benjamin,

Sorry I have not gotten back sooner, I have been looking at this though. It
is a lot of work and it is taking me a while to get my head around
everything here.

I like everything I see so far, everything here was discussed prior. You
set a goal, you worked towards that goal and yea, I think you are just
about there!

I will get back to you shortly when I get through everything.

r.

On Wed, Jan 20, 2016 at 12:59 AM, Benjamin Albert notifications@github.com
wrote:

In UPGRADE.md
#38 (comment)
:

@@ -0,0 +1,67 @@
+# 3.x Upgrade Guide
+
+Version 3.x features a redesigned Month Picker menu which:
+
+1. Looks more consistent with jQuery UI Datepicker.
+2. Turns the Year title into a button which gives the user a "hint" about
+the Jump Years menu when they mouse over it.
+3. Allows the user to return to the year they clicked Jump years at.
+
+See it for yourself at the demo on JSFiddle.
+

@KidSysco https://github.com/KidSysco Perhaps we should say something
here about the update being simple, and in some cases will only require
downloading the new minified version.


Reply to this email directly or view it on GitHub
https://github.com/KidSysco/jquery-ui-month-picker/pull/38/files#r50220346
.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This gives me something to push to kickoff Travic-CI!

good thinking Benjamin!

:D

On Wed, Jan 20, 2016 at 12:59 AM, Benjamin Albert notifications@github.com
wrote:

In UPGRADE.md
#38 (comment)
:

@@ -0,0 +1,67 @@
+# 3.x Upgrade Guide
+
+Version 3.x features a redesigned Month Picker menu which:
+
+1. Looks more consistent with jQuery UI Datepicker.
+2. Turns the Year title into a button which gives the user a "hint" about
+the Jump Years menu when they mouse over it.
+3. Allows the user to return to the year they clicked Jump years at.
+
+See it for yourself at the demo on JSFiddle.
+

@KidSysco https://github.com/KidSysco Perhaps we should say something
here about the update being simple, and in some cases will only require
downloading the new minified version.


Reply to this email directly or view it on GitHub
https://github.com/KidSysco/jquery-ui-month-picker/pull/38/files#r50220346
.

@KidSysco
Copy link
Copy Markdown
Owner

I just signed up for a Travis CI account. It looks like you have included the travis.yml file in your latest pull request.

So I am going to merge now and give it a try!

Great work Benjamin! You are the best thing to happen to this repo. No joke.

KidSysco added a commit that referenced this pull request Jan 20, 2016
The first beta of version 3.0
@KidSysco KidSysco merged commit acbbe10 into KidSysco:master Jan 20, 2016
@benjamin-albert
Copy link
Copy Markdown
Collaborator Author

@KidSysco you forgot to copy the fiddle's CSS.

As a result the input fields are huge (as the user agent stylesheet defines).

As I've explained in #31 and the 3.x Upgrade Guide, the width:60px; on .month-year-input was removed, and you now have to include it in your CSS if you want the plugin to implicitly re-size the fields.

@KidSysco
Copy link
Copy Markdown
Owner

I dont understand what you mean.

Where was I supposed to copy the fiddle CSS to?

On Wed, Jan 20, 2016 at 8:21 AM, Benjamin Albert notifications@github.com
wrote:

@KidSysco https://github.com/KidSysco you forgot to copy the fiddle's
CSS.

As a result the input fields are huge (as the user agent stylesheet
defines).

As I've explained in #31
#31 and the 3.x
Upgrade Guide
https://github.com/KidSysco/jquery-ui-month-picker/blob/master/UPGRADE.md,
the width:60px; on .month-year-input was removed, and you now have to
include it in your CSS if you want the plugin to implicitly re-size the
fields.


Reply to this email directly or view it on GitHub
#38 (comment)
.

@KidSysco
Copy link
Copy Markdown
Owner

Oh you mean in my fiddle?

I was just about to update that next, I was still trying to get the
Travis-CI badge to show that things are building correctly.

And I see this at the bottom of my Travis-CI output and I did not see any
errors in yours.

2.24s$ npm install -g grunt-cli

/home/travis/.nvm/versions/node/v0.12.4/bin/grunt ->
/home/travis/.nvm/versions/node/v0.12.4/lib/node_modules/grunt-cli/bin/grunt

grunt-cli@0.1.13
/home/travis/.nvm/versions/node/v0.12.4/lib/node_modules/grunt-cli

├── resolve@0.3.1

├── nopt@1.0.10 (abbrev@1.0.7)

└── findup-sync@0.1.3 (lodash@2.4.2, glob@3.2.11)
install

27.24s$ npm install

npm WARN package.json jquery-ui-month-picker@3.0.0-beta1 No repository field.

npm WARN package.json jquery-ui-month-picker@3.0.0-beta1 No license field.

npm WARN peerDependencies The peer dependency grunt@>=0.4.0 included
from grunt-contrib-cssmin will no

npm WARN peerDependencies longer be automatically installed to fulfill
the peerDependency

npm WARN peerDependencies in npm 3+. Your application will need to
depend on it explicitly.

npm WARN peerDependencies The peer dependency grunt@>=0.4.0 included
from grunt-contrib-qunit will no

npm WARN peerDependencies longer be automatically installed to fulfill
the peerDependency

npm WARN peerDependencies in npm 3+. Your application will need to
depend on it explicitly.

npm WARN peerDependencies The peer dependency grunt@~0.4.0 included
from grunt-contrib-uglify will no

npm WARN peerDependencies longer be automatically installed to fulfill
the peerDependency

npm WARN peerDependencies in npm 3+. Your application will need to
depend on it explicitly.

npm WARN deprecated npmconf@2.1.1: this package has been reintegrated
into npm and is now out of date with respect to npm

phantomjs@1.9.19 install /home/travis/build/KidSysco/jquery-ui-month-picker/node_modules/grunt-contrib-qunit/node_modules/grunt-lib-phantomjs/node_modules/phantomjs

node install.js

Found PhantomJS at /usr/local/phantomjs/bin/phantomjs ...verifying

Writing location.js file

PhantomJS is already installed on PATH at /usr/local/phantomjs/bin/phantomjs

npm WARN deprecated lodash@0.9.2: lodash@<2.0.0 is no longer
maintained. Upgrade to lodash@^3.0.0

jquery-ui-month-picker@3.0.0-beta1 postinstall /home/travis/build/KidSysco/jquery-ui-month-picker

bower install

bower not-cached git://github.com/components/jqueryui.git#1.9.2

bower resolve git://github.com/components/jqueryui.git#1.9.2

bower not-cached git://github.com/twbs/bootstrap.git#~3.3.6

bower resolve git://github.com/twbs/bootstrap.git#~3.3.6

bower not-cached git://github.com/jquery/qunit.git#1.19.0

bower resolve git://github.com/jquery/qunit.git#1.19.0

bower not-cached git://github.com/jquery/jquery-dist.git#1.9.1

bower resolve git://github.com/jquery/jquery-dist.git#1.9.1

bower download https://github.com/components/jqueryui/archive/1.9.2.tar.gz

bower download https://github.com/jquery/qunit/archive/1.19.0.tar.gz

bower download https://github.com/jquery/jquery-dist/archive/1.9.1.tar.gz

bower extract qunit#1.19.0 archive.tar.gz

bower download https://github.com/twbs/bootstrap/archive/v3.3.6.tar.gz

bower extract jquery#1.9.1 archive.tar.gz

bower resolved git://github.com/jquery/qunit.git#1.19.0

bower deprecated Package jquery is using the deprecated component.json

bower invalid-meta jquery is missing "main" entry in bower.json

bower invalid-meta jquery is missing "ignore" entry in bower.json

bower resolved git://github.com/jquery/jquery-dist.git#1.9.1

bower extract jquery-ui#1.9.2 archive.tar.gz

bower invalid-meta jquery-ui is missing "ignore" entry in bower.json

bower resolved git://github.com/components/jqueryui.git#1.9.2

bower extract bootstrap#~3.3.6 archive.tar.gz

bower resolved git://github.com/twbs/bootstrap.git#3.3.6

bower install qunit#1.19.0

bower install jquery#1.9.1

bower install jquery-ui#1.9.2

bower install bootstrap#3.3.6

qunit#1.19.0 bower_components/qunit

jquery#1.9.1 bower_components/jquery

jquery-ui#1.9.2 bower_components/jquery-ui

└── jquery#1.9.1

bootstrap#3.3.6 bower_components/bootstrap

└── jquery#1.9.1

grunt-contrib-qunit@0.6.0 node_modules/grunt-contrib-qunit

└── grunt-lib-phantomjs@0.6.0 (eventemitter2@0.4.14, semver@1.0.14,
temporary@0.0.8, phantomjs@1.9.19)

grunt@0.4.5 node_modules/grunt

├── which@1.0.9

├── dateformat@1.0.2-1.2.3

├── eventemitter2@0.4.14

├── getobject@0.1.0

├── rimraf@2.2.8

├── colors@0.6.2

├── async@0.1.22

├── grunt-legacy-util@0.2.0

├── hooker@0.2.3

├── exit@0.1.2

├── nopt@1.0.10 (abbrev@1.0.7)

├── minimatch@0.2.14 (sigmund@1.0.1, lru-cache@2.7.3)

├── glob@3.1.21 (inherits@1.0.2, graceful-fs@1.2.3)

├── lodash@0.9.2

├── coffee-script@1.3.3

├── underscore.string@2.2.1

├── iconv-lite@0.2.11

├── findup-sync@0.1.3 (glob@3.2.11, lodash@2.4.2)

├── grunt-legacy-log@0.1.3 (grunt-legacy-log-utils@0.1.1,
underscore.string@2.3.3, lodash@2.4.2)

└── js-yaml@2.0.5 (argparse@0.1.16, esprima@1.0.4)

grunt-contrib-cssmin@0.14.0 node_modules/grunt-contrib-cssmin

├── chalk@1.1.1 (escape-string-regexp@1.0.4, supports-color@2.0.0,
ansi-styles@2.1.0, strip-ansi@3.0.0, has-ansi@2.0.0)

├── clean-css@3.4.9 (commander@2.8.1, source-map@0.4.4)

└── maxmin@1.1.0 (figures@1.4.0, pretty-bytes@1.0.4, gzip-size@1.0.0)

grunt-contrib-uglify@0.6.0 node_modules/grunt-contrib-uglify

├── uri-path@0.0.2

├── chalk@0.5.1 (escape-string-regexp@1.0.4, ansi-styles@1.1.0,
supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0)

├── lodash@2.4.2

├── maxmin@1.1.0 (figures@1.4.0, chalk@1.1.1, pretty-bytes@1.0.4,
gzip-size@1.0.0)

└── uglify-js@2.6.1 (uglify-to-browserify@1.0.2, async@0.2.10,
source-map@0.5.3, yargs@3.10.0)

bower@1.7.2 node_modules/bower

└── semver-utils@1.1.1
before_script

3.98s$ grunt

Running "qunit:all" (qunit) task

Testing test/test.html ..................................OK

280 assertions passed (2171ms)

Running "uglify:production" (uglify) task

1 file created.

Running "uglify:demo" (uglify) task

1 file created.

Running "cssmin:demo" (cssmin) task

2 files created. 8.87 kB → 2.61 kB

Done, without errors.

0.50s$ npm test

jquery-ui-month-picker@3.0.0-beta1 test /home/travis/build/KidSysco/jquery-ui-month-picker

echo "Error: no test specified"

Error: no test specified

The command "npm test" exited with 0.

Done. Your build exited with 0.

On Wed, Jan 20, 2016 at 8:21 AM, Benjamin Albert notifications@github.com
wrote:

@KidSysco https://github.com/KidSysco you forgot to copy the fiddle's
CSS.

As a result the input fields are huge (as the user agent stylesheet
defines).

As I've explained in #31
#31 and the 3.x
Upgrade Guide
https://github.com/KidSysco/jquery-ui-month-picker/blob/master/UPGRADE.md,
the width:60px; on .month-year-input was removed, and you now have to
include it in your CSS if you want the plugin to implicitly re-size the
fields.


Reply to this email directly or view it on GitHub
#38 (comment)
.

@benjamin-albert
Copy link
Copy Markdown
Collaborator Author

If you'r talking about Error: no test specified than I guess you can solve this by adding grunt test in the test scripts property in package.json.

NOTE: If you do this remember to remove the additional call to grunt in .travis.yml.

I just ignored that because the build still runs the tests and they pass, but yah it's not the nicest thing to have in the log and it's also kind of confusing to.

@benjamin-albert
Copy link
Copy Markdown
Collaborator Author

BTW it's not an error (doesn't cause the build to fail) it's just a script that calls the echo command with a message saying that there's not tests.

@KidSysco
Copy link
Copy Markdown
Owner

ok I think I understand. Thank you for getting this going, this CI stuff is
great, I never knew it existed for javascript!

I am going to update the fiddle now.

On Wed, Jan 20, 2016 at 8:43 AM, Benjamin Albert notifications@github.com
wrote:

BTW it's not an error it's just a script that calls the echo command with
a message saying that there's not tests.


Reply to this email directly or view it on GitHub
#38 (comment)
.

@KidSysco
Copy link
Copy Markdown
Owner

Also...

I will update the image tonight to show your nice UI.

On Wed, Jan 20, 2016 at 8:43 AM, Benjamin Albert notifications@github.com
wrote:

BTW it's not an error it's just a script that calls the echo command with
a message saying that there's not tests.


Reply to this email directly or view it on GitHub
#38 (comment)
.

@benjamin-albert
Copy link
Copy Markdown
Collaborator Author

As you've probably noticed that I'm really enthusiastic about this project.

I never thought that contributing to a small open-source project would be such an amazing learning experience.

All of the features I've developed (especially the redesigned menu) and issues I've helped solve really gave me a chance to feel like a rock star!

So I really have to say thanks for the amazing experience.

@KidSysco
Copy link
Copy Markdown
Owner

hahahahah I am so happy you feel this way Benjamin.

Sometimes, it feels better to give than to receive.

And you have really given back to the open source community here. You are
right, it might not be the most popular plugin, but just take a look at the
followers and read the comments. Some folks need this stuff. I really have
no doubt in my mind that this is the best month picker control ever created
on any platform.

Great job!

r.

On Wed, Jan 20, 2016 at 9:09 AM, Benjamin Albert notifications@github.com
wrote:

As you've probably noticed that I'm really enthusiastic about this project.

I never thought that contributing to a small open-source project would be
such an amazing learning experience.

All of the features I've developed (especially this redesigned menu) and
issues I've helped solve really gave me a chance to feel like a rock star!

So I really have to say thanks for the amazing experience.


Reply to this email directly or view it on GitHub
#38 (comment)
.

@KidSysco
Copy link
Copy Markdown
Owner

oh and... I have learned a lot here too. This stuff we have learned, Grunt,
Phantom Js, Travis, will all be quite useful to future projects!

On Wed, Jan 20, 2016 at 9:09 AM, Benjamin Albert notifications@github.com
wrote:

As you've probably noticed that I'm really enthusiastic about this project.

I never thought that contributing to a small open-source project would be
such an amazing learning experience.

All of the features I've developed (especially this redesigned menu) and
issues I've helped solve really gave me a chance to feel like a rock star!

So I really have to say thanks for the amazing experience.


Reply to this email directly or view it on GitHub
#38 (comment)
.

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