News for hackers. Stuff that matters.
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @07:13AM (#29011664)
It’s a proposed convention. A specification. But it’s not a standard.
Re:Go 1.18 will embed source version information into binaries by capableweb on Wednesday October 27, 2021 @07:22AM (#29011737)
Foxboron wrote "Reproducible Builds has standardized". Going to the website, they write "SOURCE_DATE_EPOCH is a standardised environment variable" and it links to https://reproducible-builds.org/specs/source-date-epoch/ which is a specification to standardize something.

So it's accurate to say that "Reproducible Builds has standardized" that since they only talk about their own organization, not that it has been accepted to IETF or something like that.

Re:Go 1.18 will embed source version information into binaries by Foxboron on Wednesday October 27, 2021 @08:40AM (#29012496)
Man, if people just took the time to read the link and not the comment :)
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @10:45AM (#29013961)
I actually did and the link just references a specification, not a standard.

Something being “standardised” requires more than just a specification and just because the specification throws the term “standard” around it doesn’t mean it has been formally standardised.

This doesn’t mean people shouldn’t still follow the specification. Plenty of specifications exist that have not been standardised. For example, there is an RFC specification for CSVs but not formal standard.

So by all means push this specification as a de facto standard but please don’t mislead people saying it has been standardised when it has not.

Re:Go 1.18 will embed source version information into binaries by password4321 on Wednesday October 27, 2021 @10:31AM (#29013786)
It usually takes less than 30 seconds to copy+paste quote the portion of the linked content that's actually relevant. Doing so greatly improves the effectiveness of communication.
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @10:43AM (#29013938)
That’s a specification. Just because the specification says it’s standardised it doesn’t mean it is. Where’s the corresponding approval from ISO, ANSI or other standards authority?

There’s nothing wrong with a specification or even a reference implementation but they are not themselves standards. And that’s exactly what this is: a widely respected specification.

You shouldn’t have to lie about this being standardised for it still to be relevant.

Re:Go 1.18 will embed source version information into binaries by capableweb on Wednesday October 27, 2021 @11:01AM (#29014194)
You don't need to get approval from ISO, ANSI or any other entity in order to standarize something _within your own organization_. Again, the SOURCE_DATE_EPOCH variable has been standarized within the Reproducible Builds organization, and no one can say otherwise.
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @11:04AM (#29014257)
But that doesn’t still make the specification “standardised” for anyone else.

I hate arguing semantics because it’s usually a worthless argument. But the problem here is people are specifically arguing that Reproducible Builds have standardised something when they have not. If you still want to use their specification then that’s grand. You don’t need a specification standardised for it to be relevant.

However on the very specific point of whether this is a standard, I’m yet to see any proof that anyone has actually standardised the specification. All I’m reading is “but they say it is” and frankly that’s not enough to make a standard.

Re:Go 1.18 will embed source version information into binaries by capableweb on Wednesday October 27, 2021 @11:13AM (#29014382)
> But that doesn’t still make the specification “standardised” for anyone else.

Of course not, and no one has claimed that this is a globally recognized standard. The only thing that has been claimed is that they have standarized it for _themselves_.

It's important to get semantics right, and it's equally important to really read and understand what's being said, and not assume something "more" is being said than what is really said.

Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @01:45PM (#29016535)
> Of course not, and no one has claimed that this is a globally recognized standard.

> > Reproducible Builds has standardized "SOURCE_DATE_EPOCH" for exactly this usecase.

> It's important to get semantics right, and it's equally important to really read and understand what's being said

I’d say either you’re wrong or the GP was unclear in his statement. Either way I don’t buy your attempt to shift the responsibility of error into me.

Re:Go 1.18 will embed source version information into binaries by Foxboron on Wednesday October 27, 2021 @11:11AM (#29014353)
I wrote "Reproducible Builds has standardized". I made no assertions how this is recognized in the wider ecosystem.

However, a couple hundred projects heed this standard along with most distributions. Does your nitpicking really matter?

Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @02:02PM (#29016762)
It does when you tersely react to other people’s comments stating they should follow “standards” (which you now finally agree are not a standard).

If your comment wasn’t so rude from the outset then I wouldn’t have nitpicked your statement. I think there’s some “law” people often quite about people who correct other people that applies to your post.

Re:Go 1.18 will embed source version information into binaries by cpuguy83 on Wednesday October 27, 2021 @09:45AM (#29013207)
It's used by rpmbuild and dpkg-buildpackage (and The stuff underneath). That's pretty well standardized.
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @10:51AM (#29014051)
No, that makes it a common implementation or even a de facto standard. It does not make it standardised because Reproducible Builds is not a recognised standards authority.
Re:Go 1.18 will embed source version information into binaries by diabonas on Wednesday October 27, 2021 @11:57AM (#29014994)
There is no such thing as a "recognised standards authority". Who would be the root standards authority to appoint other standards authorities? ;) And why can't the Reproducible Builds project be one of them?
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @01:54PM (#29016657)
> There is no such thing as a "recognised standards authority".

Yes there is

> Who would be the root standards authority to appoint other standards authorities?

You’re thinking of signing authorities.

> And why can't the Reproducible Builds project be one of them?

You could also flip The argument on its head and say why should every committee that throws a specification up be considered a standards authority when half the time specifications are incomplete, contradict other specifications or flat out don’t work.

Anyway, I’ll make this my last post on the subject. I have no interest to waste any more time explaining the difference between a standard and a specification to people who are unwilling to consider there might be a difference.

Re:Go 1.18 will embed source version information into binaries by diabonas on Thursday October 28, 2021 @06:50AM (#29024492)
> Yes there is

> You’re thinking of signing authorities.

No, I don't. I was asking for a list of authorities that you would consider authoritative (which invariably will be subjective, but would be interesting nonetheless).

> You could also flip The argument on its head and say why should every committee that throws a specification up be considered a standards authority when half the time specifications are incomplete, contradict other specifications or flat out don’t work.

Oh sure, specifications always suck™. But that is unfortunately quite independent from the organisation, happens all the time with ISO standards, IETF RFCs, or whatever you would consider "recognised" bodies.

> I have no interest to waste any more time explaining the difference between a standard and a specification to people who are unwilling to consider there might be a difference.

You haven't explained anything. All you have been saying in this thread is "I don't recognise the Reproducible Builds project as a standards authority, because I only believe in my personal list of authorities that I won't reveal".

The point is, a standard does not become a standard because it is published by a "competent authority". A standard becomes a standard when people in the respective field converge on using it.

And yes, there are of course certain fields where this convergence can be enforced e.g. through local law, professional associations etc. However, software development is generally not one of these fields: who will reprimand you if you write a C compiler that does not follow ISO/IEC 9899, or in this case one that does not respect SOURCE_DATE_EPOCH?

Re:Go 1.18 will embed source version information into binaries by cpuguy83 on Wednesday October 27, 2021 @02:06PM (#29016813)
You just said "it's not a standard, it is a standard". De-facto vs formal body does not matter.
Re:Go 1.18 will embed source version information into binaries by IshKebab on Wednesday October 27, 2021 @11:41AM (#29014764)
Why would you not follow their convention? That's how we've ended up with CLICOLOR and NO_COLOR. The NO_COLOR guy decided "nah it's not a standard". :/
Re:Go 1.18 will embed source version information into binaries by laumars on Wednesday October 27, 2021 @01:47PM (#29016563)
You’ve missed the point. I’m not saying we shouldn’t have a specification not an agreed convention. I’m saying the GP shouldn’t get so argumentative about Reproducible Builds being a standard when it’s just a specification.