Live data from Hacker News

We now consider Moment.js to be a legacy project in maintenance mode

momentjs.com

241–250 of 266 posts

Re: We now consider Moment.js to be a legacy project in maintenance mode

#241

Earlier quoted context omitted.

You might benefit from flipping this around and asking yourself why you're not able to ship software that remains shipped without intervention. And why you can't even imagine a world where that would be possible. If you spend some time and effort removing whatever obstacles you have in place that are keeping you from being able to do that, you'll have a lot more free time to spend building new things. For what it's w…

So your projects have no dependencies? You just write everything from scratch? Your code is perfect the first time you write it? I'm utterly confused by this comment.

There are plenty of projects which do not need to change once written as long as you leave web-based things. Some examples:

I recently found my old GPS logger, and wanted to pull data from it. I installed "mtkbabel" package and it worked wonderfully. This code was last updated in 2013 [0].

I was recently copying some files from one of my embedded boxes. It had rsync 3.1.2, released in 2015. Still works and no need to upgrade (the page lists some security vulnerabilities for this version, but this is only for "untrusted server" scenarios, which I never have)

The embedded systems not connected to internet will generally work forever without any updates. I do have a 20 year old MP3 player and it still works fine.

[0] https://metadata.ftp-master.debian.org/changelogs//main/m/mt...

Re: We now consider Moment.js to be a legacy project in maintenance mode

#242
Another JS dependency I didn't quite get around to using before its status changed in a way that greatly alters the calculus of choosing whether to use it.

... and folks kept telling me I was wasting time writing my own time and date stuff in JS.

Re: We now consider Moment.js to be a legacy project in maintenance mode

#243
post #117

Earlier quoted context omitted.

Why do your dependencies break your project all the time that it needs updates itself?

Changing the pinning of dependencies is still a change to a project, if only a minor change.

Fair. Guess shows that I spent a lot of time recently in C and C++ lands, where that's not yet as common to even have.

Re: We now consider Moment.js to be a legacy project in maintenance mode

#244

Earlier quoted context omitted.

> If you spend some time and effort removing whatever obstacles you have in place that are keeping you from being able to do that This is literally impossible for many JS libraries. Chromium / NodeJS / other JS environments are themselves constantly changing. Irrespective of the evolving timezone info, the core MomentJS can only be "done" for a particular set of browser versions. Each bug pertaining to dates, like ht…

This is true, but also it would be good if the JS environments stopped doing that.

If the Web, browsers, the JS lang, sandboxing, Internet protocols, TLS, etc. were all perfect and done, then JS envs would be too.

Re: We now consider Moment.js to be a legacy project in maintenance mode

#245

Earlier quoted context omitted.

So your projects have no dependencies? You just write everything from scratch? Your code is perfect the first time you write it? I'm utterly confused by this comment.

If you want stable, long lifespan software, this is exactly how you do it. You are also careful to only build on layers of abstraction that are also designed with this mindset. Yes, it limits what you can do and which features you can rely on, but it is an achievable goal for many critical lower level libraries.

> it limits what you can do

Yep. For example you have to basically air-gap your software, no input/output, especially nothing that touches crypto/TLS/networks/protocols, usually no support for fancy file formats either.

Or you can just go ahead and implement all those by hand. Perfectly.

I mean it's possible, but bumping BoringSSL/Libre/OpenSSL version every few months seems easier.

¯\_(ツ)_/¯

Re: We now consider Moment.js to be a legacy project in maintenance mode

#246
post #241

Earlier quoted context omitted.

So your projects have no dependencies? You just write everything from scratch? Your code is perfect the first time you write it? I'm utterly confused by this comment.

There are plenty of projects which do not need to change once written as long as you leave web-based things. Some examples: I recently found my old GPS logger, and wanted to pull data from it. I installed "mtkbabel" package and it worked wonderfully. This code was last updated in 2013 [0]. I was recently copying some files from one of my embedded boxes. It had rsync 3.1.2, released in 2015. Still works and no need to…

This is security (and thus stability) by obscurity basically. By being an obscure userbase, a niche.

Browsers, compilers, SSL/TLS libraries, operating systems and so on doesn't have this luxury, and thus this has a knock-on effect.

Re: We now consider Moment.js to be a legacy project in maintenance mode

#247

Earlier quoted context omitted.

A project can't be more stable than its dependencies and tooling, but that doesn't mean that the only way to be stable is to have no dependencies. Some programming languages make guarantees that old code will build in new versions (eg, ISO C even refuses to introduce new warnings for code that would previously build without warnings), while others will introduce backwards incompatible changes in minor releases. How m…

> A project can't be more stable than its dependencies Sure it can; there's no reason a project has to take every upstream update, if, for instance, it vendors dependencies, or otherwise doesn't directly depend on the remotely maintained source.

Someone has to mull over whether to apply the update or not. Usually this is a by default "not" for most projects. (And that's not necessarily a bad stance.)

Stability is great as long as you have the luxury of no pressure for new features or better security. (Eg. operating systems, browsers, compilers, critical libraries don't.)

Re: We now consider Moment.js to be a legacy project in maintenance mode

#248

Earlier quoted context omitted.

Library and framework maintainers will eventually stop updating previous major versions. So you manage to tread water just fine till your major version reaches EOL, then you've found yourself in the position of having to change over to a completely new API on a schedule set by the maintainer of the dependency.

It depends on the language. Fortran last broke backwards compatibility with F90. F77 code is still 100% supported. C is similar.

As far as I know Java too. That doesn't mean it's still best practice to write code that uses unsafe/deprecated constructs.

Re: We now consider Moment.js to be a legacy project in maintenance mode

#249
post #229

Earlier quoted context omitted.

Wow! What software is this that is complete and doesn’t need maintenance? Based on my experience, it must be either very simple or very uninteresting.

You mean like TeX?

How do people use TeX nowadays? Is that part of the whole LaTeX ecosystem? How big is the userbase?

Re: We now consider Moment.js to be a legacy project in maintenance mode

#250
Someone recently added moment to our project to parse some dates. More recently, I decided to use it to parse and format some dates somewhere else, and I immediately got flak for it.

This is, all I need moment for, is simple date.formatAs('DD-MM-YYYY') and date.parse(date, 'YYYY-MM-DD') stuff. moment is overkill for that, but js Date somehow doesn't do it. It would probably be quicker to write one myself than to find a library that does just that.

Post reply on HN