rcv icon indicating copy to clipboard operation
rcv copied to clipboard

Handling versions in config files, test files, and CDF output

Open HEdingfield opened this issue 6 years ago • 6 comments

ResultsWriter.generateCdfJson() has a line that says outputJson.put("Version", "1.0.0"). Can we verify that this is a CDF / NIST format version, and not the version of our app?

If the former is true, I recommend that we change the entry("Application", line to include the version number of our tabulator there, in addition to the change I made in PR #326.

In that case, though, TabulatorTests.compareJsons() will give us trouble as the versions change. Well also run into the same problem once we start including the version number in the config files, per our discussion in #43.

We need a way to parameterize version number in there (or have the line ignored) when doing the comparison for tests.

HEdingfield avatar Jul 04 '19 17:07 HEdingfield

If this is just about CDF versioning, I don't think it's relevant to the current certification work, right?

tarheel avatar Jul 04 '19 19:07 tarheel

That part isn't, but the whole idea of adding version to config files makes this still relevant (see second two paragraphs).

HEdingfield avatar Jul 04 '19 19:07 HEdingfield

Yeah, confirmed this is the cdf file format version. We really shouldn't spend time on cdf support, certainly not for this release. As for unit tests breaking when versions change, that's true. Shouldn't be hard to fix when the time comes.

moldover avatar Jul 04 '19 19:07 moldover

Future application versions can decide how to handle this.

moldover avatar Jul 06 '19 19:07 moldover

Related to my original comment here, but distinct: now that the version is in our config files, this requires us to update every test each time we increment the version, which is a pain (since the CLI is blocked if application version doesn't match config version).

I propose that we create a CLI parameter to migrate the config files to the application version. It would essentially replicate what opening the file and then saving it in the GUI would do, but faster.

Also wondering: what if someone loads a newer config in an older version of the tabulator? We'll have to think about how to deal with that situation too eventually.

HEdingfield avatar Jul 08 '19 08:07 HEdingfield

I believe everything in this issue is addressed now (given #426), except for one last point from above:

Also wondering: what if someone loads a newer config in an older version of the tabulator? We'll have to think about how to deal with that situation too eventually.

HEdingfield avatar Mar 25 '20 05:03 HEdingfield