Comments (5)
If you want to manually add America/Montreal back in to the TZInfo::Data countries index, you can do so by modifying data/zone.tab
and then running rake build_tz_modules
. This will read the contents of the data
directory and rewrite all the module files under lib/tzinfo/data/definitions
and lib/tzinfo/data/indexes
.
However, removing America/Montreal from zone.tab was an intentional change made in tzdata v2013e (and therefore also in TZInfo::Data v1.2013.5). Unless you require time zone definitions from before 1970, you should probably swap to America/Toronto instead.
from tzinfo-data.
Now every Rails project will have to keep their own mappings of Montreal -> "America/Toronto" and/or "America/Montreal" -> "America/Toronto" and/or TZInfo::Country.get('CA').zones << TZInfo::Timezone.get("America/Montreal")
from tzinfo-data.
The America/Montreal zone still exists and can still be used. The only difference is that America/Montreal won't appear in the countries index (e.g. in the array returned by TZInfo::Country.get('CA').zones
).
As far as I can see, Rails doesn't actually have a Montreal time zone, so won't be affected directly.
The zone.tab file (and by extension the TZInfo countries index) changes frequently. Please see the comments in zone.tab for the reasoning behind which zones are included. If you are using the countries index to provide a UI for selecting a time zone, this interface should be coded to allow for added and removed zones.
The whole point of TZInfo::Data is to repackage the standard IANA Timezone Database. I am therefore not going to make any changes in TZInfo::Data that haven't first published in the IANA Timezone Database.
from tzinfo-data.
Understood. People can at least find this discussion to understand the issue with Montreal. Thanks.
from tzinfo-data.
After scratching my head for quite a well, found this very, very useful thread. Timezones are a complete mess! The checktab.awk
file has this following line, since a commit done in 2013:
# A special (and we hope temporary) case.
tztab["America/Montreal"] = 1
commit hash for more reference: eggert/tz@2022cdd
As mentioned above by @guyboertje , any application that provides utility functions to return list of zones of countries, will have to keep this explicit mapping of America/Montreal => Canada
.
Just seems so hacky!
And the latest version(2014j) of tz data, has a few more lines like these:
# Some more special cases; these are zones that should probably
# be turned into links.
if (zone_table == "zone1970.tab") {
tztab["America/Antigua"] = 1
tztab["America/Cayman"] = 1
tztab["Pacific/Midway"] = 1
tztab["Pacific/Saipan"] = 1
}
But atleast for these zones, they have an entry in the zone.tab
file.
from tzinfo-data.
Related Issues (17)
- TZInfo::AmbiguousTime: 1895-12-31 23:59:59 UTC is an ambiguous local time. (Asia/Taipei) HOT 3
- test failure HOT 8
- Invalid result when formatting time zone as hour and minute offset from UTC HOT 1
- "The dependency tzinfo-data will be unused" on Ubuntu HOT 7
- Do I need this gem to be enabled if I am running my app under Linux? HOT 1
- ar
- cant update tzinfo-data HOT 5
- Thank you! HOT 2
- Deprecated time zones. HOT 4
- Supporting SystemV time zones HOT 4
- GitHub Pages website out of date HOT 2
- Invalid DST timestamp for America/Santiago time zone. HOT 2
- tzinfo-data dependency unresolvable against tzinfo 0.3 HOT 2
- Hitting TZInfo::DataSourceNotFound: No timezone data source could be found. with a fresh install of rail 4.1.0 HOT 18
- 2015f is out HOT 6
- No source of timezone data could be found. (TZInfo::DataSourceNotFound) HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tzinfo-data.