mirror of
https://github.com/the-djmaze/snappymail.git
synced 2025-01-06 14:58:19 +08:00
f36cb72b82
moment js update
368 lines
13 KiB
Markdown
368 lines
13 KiB
Markdown
A lightweight javascript date library for parsing, validating, manipulating, and formatting dates.
|
|
|
|
# [Documentation](http://momentjs.com/docs/)
|
|
|
|
Upgrading to 2.0.0
|
|
==================
|
|
|
|
There are a number of small backwards incompatible changes with version 2.0.0.
|
|
|
|
[See them and their descriptions here](https://gist.github.com/timrwood/e72f2eef320ed9e37c51#backwards-incompatible-changes)
|
|
|
|
Changed language ordinal method to return the number + ordinal instead of just the ordinal.
|
|
|
|
Changed two digit year parsing cutoff to match strptime.
|
|
|
|
Removed `moment#sod` and `moment#eod` in favor of `moment#startOf` and `moment#endOf`.
|
|
|
|
Removed `moment.humanizeDuration()` in favor of `moment.duration().humanize()`.
|
|
|
|
Removed the lang data objects from the top level namespace.
|
|
|
|
Duplicate `Date` passed to `moment()` instead of referencing it.
|
|
|
|
Travis Build Status
|
|
===================
|
|
|
|
Develop [![Build Status](https://travis-ci.org/moment/moment.png?branch=develop)](https://travis-ci.org/moment/moment)
|
|
|
|
Master [![Build Status](https://travis-ci.org/moment/moment.png?branch=master)](https://travis-ci.org/moment/moment)
|
|
|
|
For developers
|
|
==============
|
|
|
|
You need [node](http://nodejs.org/), use [nvm](https://github.com/creationix/nvm) or [nenv](https://github.com/ryuone/nenv) to install it.
|
|
|
|
Then, in your shell
|
|
|
|
```bash
|
|
git clone https://github.com/moment/moment.git
|
|
cd moment
|
|
npm install -g grunt-cli
|
|
npm install
|
|
git checkout develop # all patches against develop branch, please!
|
|
grunt # this runs tests and jshint
|
|
```
|
|
|
|
Changelog
|
|
=========
|
|
|
|
### 2.6.0 [See changelog](https://gist.github.com/ichernev/10544682)
|
|
|
|
* languages
|
|
* [#1529](https://github.com/moment/moment/issues/1529) Serbian-Cyrillic (sr-cyr)
|
|
* [#1544](https://github.com/moment/moment/issues/1544), [#1546](https://github.com/moment/moment/issues/1546) Khmer Cambodia (km)
|
|
|
|
* features
|
|
* [#1419](https://github.com/moment/moment/issues/1419), [#1468](https://github.com/moment/moment/issues/1468), [#1467](https://github.com/moment/moment/issues/1467), [#1546](https://github.com/moment/moment/issues/1546) better handling of timezone-d moments around DST
|
|
* [#1462](https://github.com/moment/moment/issues/1462) add weeksInYear and isoWeeksInYear
|
|
* [#1475](https://github.com/moment/moment/issues/1475) support ordinal parsing
|
|
* [#1499](https://github.com/moment/moment/issues/1499) composer support
|
|
* [#1577](https://github.com/moment/moment/issues/1577), [#1604](https://github.com/moment/moment/issues/1604) put Date parsing in moment.createFromInputFallback so it can be properly deprecated and controlled in the future
|
|
* [#1545](https://github.com/moment/moment/issues/1545) extract two-digit year parsing in moment.parseTwoDigitYear, so it can be overwritten
|
|
* [#1590](https://github.com/moment/moment/issues/1590) (see [#1574](https://github.com/moment/moment/issues/1574)) set AMD global before module definition to better support non AMD module dependencies used in AMD environment
|
|
* [#1589](https://github.com/moment/moment/issues/1589) remove global in Node.JS environment (was not working before, nobody complained, was scheduled for removal anyway)
|
|
* [#1586](https://github.com/moment/moment/issues/1586) support quarter setting and parsing
|
|
|
|
* 18 bugs fixed
|
|
|
|
### 2.5.1
|
|
|
|
* languages
|
|
* [#1392](https://github.com/moment/moment/issues/1392) Armenian (hy-am)
|
|
|
|
* bugfixes
|
|
* [#1429](https://github.com/moment/moment/issues/1429) fixes [#1423](https://github.com/moment/moment/issues/1423) weird chrome-32 bug with js object creation
|
|
* [#1421](https://github.com/moment/moment/issues/1421) remove html entities from Welsh
|
|
* [#1418](https://github.com/moment/moment/issues/1418) fixes [#1401](https://github.com/moment/moment/issues/1401) improved non-padded tokens in strict matching
|
|
* [#1417](https://github.com/moment/moment/issues/1417) fixes [#1404](https://github.com/moment/moment/issues/1404) handle buggy moment object created by property cloning
|
|
* [#1398](https://github.com/moment/moment/issues/1398) fixes [#1397](https://github.com/moment/moment/issues/1397) fix Arabic-like week number parsing
|
|
* [#1396](https://github.com/moment/moment/issues/1396) add leftZeroFill(4) to GGGG and gggg formats
|
|
* [#1373](https://github.com/moment/moment/issues/1373) use lowercase for months and days in Catalan
|
|
|
|
* testing
|
|
* [#1374](https://github.com/moment/moment/issues/1374) run tests on multiple browser/os combos via SauceLabs and Travis
|
|
|
|
### 2.5.0 [See changelog](https://gist.github.com/ichernev/8104451)
|
|
|
|
* New languages
|
|
* Luxemburish (lb) [1247](https://github.com/moment/moment/issues/1247)
|
|
* Serbian (rs) [1319](https://github.com/moment/moment/issues/1319)
|
|
* Tamil (ta) [1324](https://github.com/moment/moment/issues/1324)
|
|
* Macedonian (mk) [1337](https://github.com/moment/moment/issues/1337)
|
|
|
|
* Features
|
|
* [1311](https://github.com/moment/moment/issues/1311) Add quarter getter and format token `Q`
|
|
* [1303](https://github.com/moment/moment/issues/1303) strict parsing now respects number of digits per token (fix [1196](https://github.com/moment/moment/issues/1196))
|
|
* 0d30bb7 add jspm support
|
|
* [1347](https://github.com/moment/moment/issues/1347) improve zone parsing
|
|
* [1362](https://github.com/moment/moment/issues/1362) support merideam parsing in Korean
|
|
|
|
* 22 bugfixes
|
|
|
|
### 2.4.0
|
|
|
|
* **Deprecate** globally exported moment, will be removed in next major
|
|
* New languages
|
|
* Farose (fo) [#1206](https://github.com/moment/moment/issues/1206)
|
|
* Tagalog/Filipino (tl-ph) [#1197](https://github.com/moment/moment/issues/1197)
|
|
* Welsh (cy) [#1215](https://github.com/moment/moment/issues/1215)
|
|
* Bugfixes
|
|
* properly handle Z at the end of iso RegExp [#1187](https://github.com/moment/moment/issues/1187)
|
|
* chinese meridian time improvements [#1076](https://github.com/moment/moment/issues/1076)
|
|
* fix language tests [#1177](https://github.com/moment/moment/issues/1177)
|
|
* remove some failing tests (that should have never existed :))
|
|
[#1185](https://github.com/moment/moment/issues/1185)
|
|
[#1183](https://github.com/moment/moment/issues/1183)
|
|
* handle russian noun cases in weird cases [#1195](https://github.com/moment/moment/issues/1195)
|
|
|
|
### 2.3.1
|
|
|
|
Removed a trailing comma [1169] and fixed a bug with `months`, `weekdays` getters [#1171](https://github.com/moment/moment/issues/1171).
|
|
|
|
### 2.3.0 [See changelog](https://gist.github.com/ichernev/6864354)
|
|
|
|
Changed isValid, added strict parsing.
|
|
Week tokens parsing.
|
|
|
|
### 2.2.1
|
|
|
|
Fixed bug in string prototype test.
|
|
Updated authors and contributors.
|
|
|
|
### 2.2.0 [See changelog](https://gist.github.com/ichernev/00f837a9baf46a3565e4)
|
|
|
|
Added bower support.
|
|
|
|
Language files now use UMD.
|
|
|
|
Creating moment defaults to current date/month/year.
|
|
|
|
Added a bundle of moment and all language files.
|
|
|
|
### 2.1.0 [See changelog](https://gist.github.com/timrwood/b8c2d90d528eddb53ab5)
|
|
|
|
Added better week support.
|
|
|
|
Added ability to set offset with `moment#zone`.
|
|
|
|
Added ability to set month or weekday from a string.
|
|
|
|
Added `moment#min` and `moment#max`
|
|
|
|
### 2.0.0 [See changelog](https://gist.github.com/timrwood/e72f2eef320ed9e37c51)
|
|
|
|
Added short form localized tokens.
|
|
|
|
Added ability to define language a string should be parsed in.
|
|
|
|
Added support for reversed add/subtract arguments.
|
|
|
|
Added support for `endOf('week')` and `startOf('week')`.
|
|
|
|
Fixed the logic for `moment#diff(Moment, 'months')` and `moment#diff(Moment, 'years')`
|
|
|
|
`moment#diff` now floors instead of rounds.
|
|
|
|
Normalized `moment#toString`.
|
|
|
|
Added `isSame`, `isAfter`, and `isBefore` methods.
|
|
|
|
Added better week support.
|
|
|
|
Added `moment#toJSON`
|
|
|
|
Bugfix: Fixed parsing of first century dates
|
|
|
|
Bugfix: Parsing 10Sep2001 should work as expected
|
|
|
|
Bugfix: Fixed wierdness with `moment.utc()` parsing.
|
|
|
|
Changed language ordinal method to return the number + ordinal instead of just the ordinal.
|
|
|
|
Changed two digit year parsing cutoff to match strptime.
|
|
|
|
Removed `moment#sod` and `moment#eod` in favor of `moment#startOf` and `moment#endOf`.
|
|
|
|
Removed `moment.humanizeDuration()` in favor of `moment.duration().humanize()`.
|
|
|
|
Removed the lang data objects from the top level namespace.
|
|
|
|
Duplicate `Date` passed to `moment()` instead of referencing it.
|
|
|
|
### 1.7.2 [See discussion](https://github.com/timrwood/moment/issues/456)
|
|
|
|
Bugfixes
|
|
|
|
### 1.7.1 [See discussion](https://github.com/timrwood/moment/issues/384)
|
|
|
|
Bugfixes
|
|
|
|
### 1.7.0 [See discussion](https://github.com/timrwood/moment/issues/288)
|
|
|
|
Added `moment.fn.endOf()` and `moment.fn.startOf()`.
|
|
|
|
Added validation via `moment.fn.isValid()`.
|
|
|
|
Made formatting method 3x faster. http://jsperf.com/momentjs-cached-format-functions
|
|
|
|
Add support for month/weekday callbacks in `moment.fn.format()`
|
|
|
|
Added instance specific languages.
|
|
|
|
Added two letter weekday abbreviations with the formatting token `dd`.
|
|
|
|
Various language updates.
|
|
|
|
Various bugfixes.
|
|
|
|
### 1.6.0 [See discussion](https://github.com/timrwood/moment/pull/268)
|
|
|
|
Added Durations.
|
|
|
|
Revamped parser to support parsing non-separated strings (YYYYMMDD vs YYYY-MM-DD).
|
|
|
|
Added support for millisecond parsing and formatting tokens (S SS SSS)
|
|
|
|
Added a getter for `moment.lang()`
|
|
|
|
Various bugfixes.
|
|
|
|
There are a few things deprecated in the 1.6.0 release.
|
|
|
|
1. The format tokens `z` and `zz` (timezone abbreviations like EST CST MST etc) will no longer be supported. Due to inconsistent browser support, we are unable to consistently produce this value. See [this issue](https://github.com/timrwood/moment/issues/162) for more background.
|
|
|
|
2. The method `moment.fn.native` is deprecated in favor of `moment.fn.toDate`. There continue to be issues with Google Closure Compiler throwing errors when using `native`, even in valid instances.
|
|
|
|
3. The way to customize am/pm strings is being changed. This would only affect you if you created a custom language file. For more information, see [this issue](https://github.com/timrwood/moment/pull/222).
|
|
|
|
### 1.5.0 [See milestone](https://github.com/timrwood/moment/issues?milestone=10&page=1&state=closed)
|
|
|
|
Added UTC mode.
|
|
|
|
Added automatic ISO8601 parsing.
|
|
|
|
Various bugfixes.
|
|
|
|
### 1.4.0 [See milestone](https://github.com/timrwood/moment/issues?milestone=8&state=closed)
|
|
|
|
Added `moment.fn.toDate` as a replacement for `moment.fn.native`.
|
|
|
|
Added `moment.fn.sod` and `moment.fn.eod` to get the start and end of day.
|
|
|
|
Various bugfixes.
|
|
|
|
### 1.3.0 [See milestone](https://github.com/timrwood/moment/issues?milestone=7&state=closed)
|
|
|
|
Added support for parsing month names in the current language.
|
|
|
|
Added escape blocks for parsing tokens.
|
|
|
|
Added `moment.fn.calendar` to format strings like 'Today 2:30 PM', 'Tomorrow 1:25 AM', and 'Last Sunday 4:30 AM'.
|
|
|
|
Added `moment.fn.day` as a setter.
|
|
|
|
Various bugfixes
|
|
|
|
### 1.2.0 [See milestone](https://github.com/timrwood/moment/issues?milestone=4&state=closed)
|
|
|
|
Added timezones to parser and formatter.
|
|
|
|
Added `moment.fn.isDST`.
|
|
|
|
Added `moment.fn.zone` to get the timezone offset in minutes.
|
|
|
|
### 1.1.2 [See milestone](https://github.com/timrwood/moment/issues?milestone=6&state=closed)
|
|
|
|
Various bugfixes
|
|
|
|
### 1.1.1 [See milestone](https://github.com/timrwood/moment/issues?milestone=5&state=closed)
|
|
|
|
Added time specific diffs (months, days, hours, etc)
|
|
|
|
### 1.1.0
|
|
|
|
Added `moment.fn.format` localized masks. 'L LL LLL LLLL' [issue 29](https://github.com/timrwood/moment/pull/29)
|
|
|
|
Fixed [issue 31](https://github.com/timrwood/moment/pull/31).
|
|
|
|
### 1.0.1
|
|
|
|
Added `moment.version` to get the current version.
|
|
|
|
Removed `window !== undefined` when checking if module exists to support browserify. [issue 25](https://github.com/timrwood/moment/pull/25)
|
|
|
|
### 1.0.0
|
|
|
|
Added convenience methods for getting and setting date parts.
|
|
|
|
Added better support for `moment.add()`.
|
|
|
|
Added better lang support in NodeJS.
|
|
|
|
Renamed library from underscore.date to Moment.js
|
|
|
|
### 0.6.1
|
|
|
|
Added Portuguese, Italian, and French language support
|
|
|
|
### 0.6.0
|
|
|
|
Added _date.lang() support.
|
|
Added support for passing multiple formats to try to parse a date. _date("07-10-1986", ["MM-DD-YYYY", "YYYY-MM-DD"]);
|
|
Made parse from string and single format 25% faster.
|
|
|
|
### 0.5.2
|
|
|
|
Bugfix for [issue 8](https://github.com/timrwood/underscore.date/pull/8) and [issue 9](https://github.com/timrwood/underscore.date/pull/9).
|
|
|
|
### 0.5.1
|
|
|
|
Bugfix for [issue 5](https://github.com/timrwood/underscore.date/pull/5).
|
|
|
|
### 0.5.0
|
|
|
|
Dropped the redundant `_date.date()` in favor of `_date()`.
|
|
Removed `_date.now()`, as it is a duplicate of `_date()` with no parameters.
|
|
Removed `_date.isLeapYear(yearNumber)`. Use `_date([yearNumber]).isLeapYear()` instead.
|
|
Exposed customization options through the `_date.relativeTime`, `_date.weekdays`, `_date.weekdaysShort`, `_date.months`, `_date.monthsShort`, and `_date.ordinal` variables instead of the `_date.customize()` function.
|
|
|
|
### 0.4.1
|
|
|
|
Added date input formats for input strings.
|
|
|
|
### 0.4.0
|
|
|
|
Added underscore.date to npm. Removed dependencies on underscore.
|
|
|
|
### 0.3.2
|
|
|
|
Added `'z'` and `'zz'` to `_.date().format()`. Cleaned up some redundant code to trim off some bytes.
|
|
|
|
### 0.3.1
|
|
|
|
Cleaned up the namespace. Moved all date manipulation and display functions to the _.date() object.
|
|
|
|
### 0.3.0
|
|
|
|
Switched to the Underscore methodology of not mucking with the native objects' prototypes.
|
|
Made chaining possible.
|
|
|
|
### 0.2.1
|
|
|
|
Changed date names to be a more pseudo standardized 'dddd, MMMM Do YYYY, h:mm:ss a'.
|
|
Added `Date.prototype` functions `add`, `subtract`, `isdst`, and `isleapyear`.
|
|
|
|
### 0.2.0
|
|
|
|
Changed function names to be more concise.
|
|
Changed date format from php date format to custom format.
|
|
|
|
### 0.1.0
|
|
|
|
Initial release
|
|
|
|
License
|
|
=======
|
|
|
|
Moment.js is freely distributable under the terms of the MIT license.
|