Skip to content

Releases: odipar/YMXS

YMXS 0.4.7

Choose a tag to compare

@odipar odipar released this 23 Sep 09:26
b7d164e

Every file a tool is built from stands as 0.4.6 has it, so the five
executables are that release's bytes and the Go module is its source. One
test reads the line a tool reports today.

  • A pipe test read the line before the four formats. PipeTest runs
    the tools one into the next and read not a YM5! or YM6! dump from
    ym-to-ymxs, which 0.4.6 reworded to name YM3! and YM3b; the test now
    reads the line as it stands. It runs where target/classpath.txt
    stands, which bin/run and the workflow write and mvn test alone
    does not, so it and eight others skip on a bare local run: 116 tests
    where the workflow runs 123. 0.4.6 was cut from such a run, and the
    workflow found this after the release was published.

YMXS 0.4.6

Choose a tag to compare

@odipar odipar released this 23 Sep 09:14
27c81ce

ym-to-ymxs reads two formats more, so the five executables differ from
0.4.5's. A structure reads as 0.4.5 has it, every file and every form.

  • A YM3 dump reads. YM3! and YM3b open with the frames: fourteen
    vectors of one register each, R0 to R13, follow the four bytes of the
    format, and under YM3b a long after them is the frame the dump
    repeats to (ym.md 2.6). The frame count is the vectors' length, the
    name and the author are empty, the sample count is 0, the rate is 50
    Hz, and R14 and R15 are zero, so every slot of every frame is off and
    the rows carry registers alone. A loop frame outside the rows falls
    back to row 0, the rule 8.3 already defines for a YM5 dump. YMXR's
    reader has read the two formats since its 0.4.14, so the same file read
    in one repository and ended the reader here with not a YM5! or YM6! dump. Measured on
    capture.ym, a YM3! dump of 921 frames: the Java tree, the Go tree
    and YMXR's reader write the same 42,968 bytes of JSON, and
    ymxs-check reports every rule of SPEC.md 6 satisfied.
  • The lines a table reports are read against both trees. Every line a
    table of SPEC.md, tools.md, json.md, csv.md or ym.md quotes is read
    against the Java tree and the Go tree: the longest run of words between
    the figures a tool writes into a line stands in both, and a table whose
    header names the two trees is read a column a tree. A line reworded in
    one tree and the document, or in the document alone, fails it.
  • README.md opens with what YMXS is, what the five tools do, the
    release to download, a pipe to run on packed.ym, and the terms of
    SPEC.md a reader meets first.

YMXS 0.4.5

Choose a tag to compare

@odipar odipar released this 19 Sep 16:35
e14ad8d

A structure reads as 0.4.4 has it, every file and every form: what moves
is one line a reader reports, and the documents a reader is written
against.

  • A shape of -1 is named among the shapes a row has. The JSON form
    reads -1 as the row that leaves the effect of a timer alone (json.md
    6.2), and the line a reader reported of another value named 0, 1 and 2
    alone. Both trees name -1 now, and json.md's row has the line as it
    stands. The CSV form's cell is 0, 1 or 2, an empty cell being the row
    that acts on no timer, so the line of that form reads as it did.
  • A conformance kit, and two readers of it. doc/conformance is nine
    tunes in the JSON form, the record of one tune of each beside them, and
    the task an implementer receives. Two implementers wrote a recorder
    from SPEC.md and json.md alone and produced every record line for line;
    their notes moved nine places of the two documents, three of them
    contradictions. json.md's reading procedure read version as equal to
    3, where 2.4 reads 4 and the version before it and every tune of the
    kit is version 4: a reader following the procedure stopped on all of
    them. SPEC.md 1.8 read that this version defines one kind of target and
    one kind of source, where 1.1 and 3.1.1 define three of each. And 7.4's
    source is the number in first-start order, where a file numbers its
    sources in file order and only an emitter was bound to the first.
  • A citation of a specification lands on a clause, which SpecTest
    reads over SPEC.md, json.md, csv.md and ym.md: 3.1.1 cited 2.5 for the
    envelope period, which stands in 2.2, and a 2.6 no document has.

YMXS 0.4.4

Choose a tag to compare

@odipar odipar released this 18 Sep 08:33
18b5255

An empty text is not JSON, and a quoted block keeps its words. Every file
a tool is built from stands as 0.4.2 has it - go/, bin/ and every
document - so the five executables are that release's and the Go module is
its bytes. The Java tree gains the reading of an empty text, which the Go
tree already had.

  • An empty text is not JSON. A reader handed an empty input reported
    format is null, and this form requires a text in the Java tree and
    this is not JSON: EOF in the Go tree: the Java reader read the empty
    text as an empty object and then found the keys of that object missing,
    where the Go reader found no JSON at all. The Java reader now reports
    what the Go one does, and the two trees answer an empty input alike.
  • The parity tests read the error paths, which is the gap that hid it:
    each repository of the family read something the others did not, and
    none of the three read an empty input.
  • A code span that wraps is quoted whole. The style check blanked a
    code span a line at a time while the rest of it reads a paragraph
    joined, so a span broken by a wrap was two unpaired backticks and its
    words were read as prose. doc/tools.md 11.2 has such a message, the
    build lock's, and passed because the span fits one line; YMXR wrapped
    the same sentence and the check fired on a word inside it.
  • A fenced block is quoted as a code span is. doc/tools.md 2.1 quotes
    bin/ymxs-check whole, comment and all, and the check reads that script
    where it stands in the tree, under sources, so the fenced copy was a
    second reading of a file the check already has. Over the four
    repositories that is 53 blocks, 106 fences and 188 lines.

YMXS 0.4.3

Choose a tag to compare

@odipar odipar released this 18 Sep 05:41
668eb25

The document checks are one package. Every file a tool is built from stands
as 0.4.2 has it - go/, bin/ and every document - so the five
executables are that release's and the Go module is its bytes.

  • org.ymxs.doc.Documents reads a link that resolves, one wrap width
    and the rows a glossary is read from. Those were written in each of the
    four repositories of the family, and the copies had drifted: this tree
    counted a line with a bare URL in it against the wrap width, where ST4
    left one. The package reads the best of the four, and two of them came
    from here - the line a broken link is written at, and the count of
    documents read that says the check is awake. It is carried from DTX,
    where it is kept, as org.ymxs.style is.
  • ShapeTest reads the two it had.

YMXS 0.4.2

Choose a tag to compare

@odipar odipar released this 18 Sep 04:47
904a0e2

The style check, two calls a reader outside this package reads a dump
through, and a plan that shipped. The tools write the bytes 0.4.1 wrote:
the ten dumps under YMXR's ym/test convert to the structures a build of
the tag before writes, measured.

  • The struck list is a document. The check was a list of 88 phrases in
    a test class, matched as substrings over the documents alone.
    org.ymxs.style reads STRUCK.md - a section a rule of AGENTS.md, an
    entry a name, a pattern and the samples the pattern is and is not in -
    and runs over every document and every code comment. The package is
    carried from DTX, which wrote it, and the four repositories of the family
    run the same 370 lines. Reading comments, which this check never did,
    found 51 lines to reword, and the cleft four more: AGENTS.md has struck
    the cleft since it was written and no list encoded it.
  • Lha.isArchive and Lha.unpack are public. They were
    package-private, so YMXR carried a copy of the whole decoder to read a
    packed dump - 351 lines of code identical to these but for the class
    modifier - beside a Go tree that imports this module and calls the
    exported pair. YMXR's copy goes when it reads this release.
  • doc/plan.md goes. It worked the voice target out before it became a
    clause, and 0.4.0 made it SPEC.md 3.1.1.

YMXS 0.4.1

Choose a tag to compare

@odipar odipar released this 17 Sep 20:38
4f4f155

The order a target writes its registers is the player's. One clause moves
and every other file stands as 0.4.0 has it, so every file of this release
reads under 0.4.0 and the other way round, and the JSON and CSV the tools
write are the bytes 0.4.0 wrote.

  • 3.1.1's table read "registers, in the order it writes them", which
    fixed an order for every target. The sound depends on two of those
    orderings alone, and the text under the table already named both: a
    voice's fine byte before its coarse nibble, so the period standing
    between the two writes is the new fine with the old coarse; and a
    buzzer's shape after its period, since writing the shape restarts the
    generator on the period standing. Where a volume register stands among
    them is unheard.
  • The table is the map from a value of the row to a register now, as its
    column says, and those two orderings stand written out below it. A
    player that writes the rest in another order plays the tune this
    structure defines: YMXR's tick writes the column the marker stands in
    last, which is R8 between R0 and R1 for a voice and R6 after R8 for a
    noise.

YMXS 0.4.0

Choose a tag to compare

@odipar odipar released this 17 Sep 19:04
88a57d2

A target that writes several registers, and a source of several values a
row. The structure's version is 4: a writer writes 4, a reader reads 4 and
3, and a 0.3.6 reader reports a file this writes as an error of the form. A
version-3 file reads here as it read there.

  • targets 14 to 24, each writing its registers in one order and reading one
    value of the row each: setToneA/B/C writes R0 R1, R2 R3, R4 R5;
    setVoiceA/B/C those and the voice's volume; setEnvelope R11 R12;
    setBuzzer those and the shape; setNoiseA/B/C the noise period and one
    voice's volume. An effect runs a voice's period and its volume on one
    timer where it needed two.
  • a source of two or three values a row, whose table is one width from top
    to bottom.
  • a source fits its target by shape and not by a check: Target is sealed
    over OneTarget, TwoTarget and ThreeTarget, a source over Single,
    Pair and Triple, and a start over StartOne, StartPair and
    StartTriple, each pairing a target with the source of that width.
    Timing is the prescaler, the count and the two resets, which Retune
    and every start share.
  • in JSON a row is a number where the source is one value a row and an
    array of two or three where it is more; in CSV a value block names its
    cells value for one and value1, value2, value3 for more.
  • the Go tree mirrors the Java tree interface for interface, and
    ParityTest reads the same files through both.

YMXS 0.3.6

Choose a tag to compare

@odipar odipar released this 17 Sep 06:42
45bb304

A check reads one citation more. The structure, the tools and the two forms
are 0.3.5's, so every file of this release reads under 0.3.5 and the other
way round, and the JSON and CSV the tools write are the bytes 0.3.5 wrote.

  • everyClauseCitedInAnotherDocumentIsDefined read a citation written as
    SPEC.md 7 and passed over one written through a link, the form
    README.md uses, so the clauses a reader follows from there were read by
    no check. The closing bracket is part of the pattern now: 75 citations
    are read where 67 were, and each resolves.
  • ST4, DTX and YMXR read a citation the same way, so one check stands in
    the four repositories of the family.

YMXS 0.3.5

Choose a tag to compare

@odipar odipar released this 16 Sep 21:10
982c3b7

The documents, and the checks that read their figures back. The structure,
the tools and the two forms are 0.3.4's, so every file of this release reads
under 0.3.4 and the other way round, and the JSON and CSV the tools write
are the bytes 0.3.4 wrote.

  • Four checks read a document against the thing it describes. Every line
    tools.md quotes of a run is a line a run writes, figures and all; the tune
    json.md 10.1 and csv.md 8.1 quote is the file beside it, byte for byte;
    the release the documents name is the one pom.xml names; and every
    clause one document cites in another is one that document defines. Each
    failed on the text as it stood.
  • The release the documents named was the one before this. README.md
    fetched github.com/odipar/ymxs/go@v0.3.3 of a module the pom had at
    0.3.4, and tools.md 12.5 and this document showed that tag beside it.
  • A list of tunes became a search. tools.md 11.4 read "each of the seven
    files of doc/tunes" for a list ParityTest wrote out by name, so a tune
    added later crossed neither way; the test finds them now.
  • The check of SPEC.md 6.6 is read line by line. CheckTest counted six
    warnings of doc/tunes/warnings.json; it reads the six lines the clause
    quotes.
  • ym.md 1.4, 1.5 and 1.6 stand in a paragraph each, as every clause
    beside them, and README.md opens its second paragraph without a cleft.