summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/luatex/barracuda/PLANNER.txt
blob: f6f613ddbae5de50f5f884ffbc8c8634800eef58 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
Development Planner and Task History
====================================

Basic rules
-----------

+ Every new version will be uploaded to CTAN network
+ For each single task there will be a single commit

Hypothetical development task list:
-----------------------------------

20__-__-__: [dev] TiKz driver
20__-__-__: [dev] debug driver, ga stream pretty printing
20__-__-__: [dev] make thing happen: font property for text
20__-__-__: [dev] develop LaTeX user package
20__-__-__: [dev] coherent error management
20__-__-__: [dev] proportional options
20__-__-__: [dev] a number parameter can be a string? unit measure...
20__-__-__: [prj] a command line program to print barcodes
20__-__-__: [dev] make optional file name in all the Driver methods
20__-__-__: [prj] test l3build for testing and CTAN files packaging
20__-__-__: [dev] load barcode parameters from an external file
20__-__-__: [dev] new Parameter Class
202_-__-__: [dev][barcode] new `alias` feature
202_-__-__: [dev][barcode] new `preset` feature
202_-__-__: [project][build] make a Lua script to easily create the CTAN upload
          : compressed files
202_-__-__: [dev] statistical data on how many barcode symbols was printed
202_-__-__: [upc] UPC-E barcode symbology

Scheduled task list for Data Matrix 2D symbology implementation:
----------------------------------------------------------------

202_-__-__: [dmx] data matrix first run
202_-__-__: [dmx] ecc200 error correction code
202_-__-__: [svg] opcode for grids
202_-__-__: [pdf] opcode for grids
202_-__-__: [ga] ga new grid opcode
202_-__-__: [geo] grid vector object
202_-__-__: [dev] init source file encoder for Data Matrix

Ongoing Scheduler:
==================
-------------------------------------------------------------------------------
202_-__-__: [milestone] version 0.1
202_-__-__: [test] update test files with recent changes
202_-__-__: [dev][ean] fix the `ean:checksum()` to include ISBN and ISSN variant
202_-__-__: [dev] control the method call on the right class
202_-__-__: [code128] add human readeable text
202_-__-__: [breaking change] refactor Text libgeo object
202_-__-__: [project] adhere to semver specification
202_-__-__: [doc] API reference
202_-__-__: [doc] barcode symbologies reference: code39

-------------------------------------------------------------------------------
2022-06-22: [code128] fix a bug in the encoder (complete rewriting)
-------------------------------------------------------------------------------
2020-05-03: [barcode] debug_bbox option
2020-05-03: [libgeo] optional tx, ty moving point for encode_<object>
2020-04-06: [driver] new methods for gaCanvas class and default style graphic
2020-03-20: [upc] new UPC-A barcode symbology
2020-03-13: [barcode] new method get_code() and get_hri()
2020-03-11: [breaking change][barcode] new `draw()` method
2020-03-07: [ga] new <dash-pattern> and <reset-pattern> opcodes
2020-03-06: [doc] new section explains `Vbar`
2020-03-02: [doc] add a chess example for `ga` stream

[merge]<--------+
                |
    2020-03-02: [doc] put ga-asm-spec together with the manual
                |
[doc-basic-ref]-+

2020-02-27:*[dev][i2of5] human readeable text for i2of5 and ITF14

[merge]<--------+
                |
    2020-02-26: [ean] guard text in EAN symbology
    2020-02-25: [libgeo][gaCanvas] Polyline object test file
    2020-02-25: [libgeo][gaCanvas] new Polyline object
                |
[Polyline]------+

2020-02-22: [dev] new methods _process_char() and _process_digit()
2020-02-09: [dev] new constructor `Barcode:new()`

[merge]<--------+
                |
    2020-02-17: [libgeo] delete `Vbar_archive` in favour of `Archive`
    2020-02-16: [libgeo] arithmetic of new object `Queue`
    2020-02-12: [libgeo] new class `Archive`
    2020-02-12: [dev][libgeo] add method `Vbar_archive:add_space()`
    2020-02-12: [dev][libgeo] refactor `Vbar_archive:push_queue()` method
    2020-02-12: [dev][ean] refactor ean to use `Vbar_archive`
    2020-02-11: [dev][i2to5] refactor i2of5 to use `Vbar_archive`
    2020-02-10: [dev][code128] refactor code128 to use `Vbar_archive`
    2020-02-09: [dev][libgeo] refactor code39 to use `Vbar_archive`
    2020-02-06: [dev][libgeo] new `Vbar_archive` class in libgeo
                |
[vbar_archive]--+

2020-02-05: [dev][libgeo][breaking change] return `ok, err` instead of `err`
            for canvas methods
2020-02-04: [dev][ean] new function `encoder:_init_parse_state()`, and EAN
          : family adoption;
          : [dev][i2of5] `encoder:_init_parse_state()` adoption for ITF14
          : variant
          : [project] update version number in preparation of the next version
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
2020-02-04: [milestone] version <v0.0.10> completed task/commit list:
-------------------------------------------------------------------------------
2020-02-04: [dev][ean] ISSN support
2020-02-03: [dev][ean] move out of `_config()` `finalize()` method as in i2of5
2020-02-02: [dev][i2of5] new ITF14 variant, plan for the next version
2020-02-01: [dev] new semantic for barcode parameter: alternative family
          : parameters definition for a variant, via `_par_def_<variant>` field
2020-02-01: [dev] rewrite code for the filter option in
          : `Barcode:param_ord_iter()` and execute a test on it
2020-01-31: [dev] add filter option on `Barcode:param_ord_iter()`
2020-01-18: [dev][breaking change] rename config() private method to _config(),
          : encoders can now decide if variant argument is mandatory or not,
          : update to year 2020 copyright notes
2020-01-08: [dev][ean family] complete the ISBN support
2019-12-29: [dev] a new data structure for encoder parameter ordering
2019-12-29: [dev][ean family] inital ISBN support
2019-12-28: [api][barcode] new Barcode method `:get_code()`
2019-12-27: [api][breaking change] rename the `get_barcode_class()` method
          : to the more simple `barcode()`
          : [api][breaking change] new encoder naming convention
          : reuse or create a new encoder object in barracuda:hbox() and
          : barracuda:save() methods
-------------------------------------------------------------------------------

Task history and previous version:
==================================

[🎉] <v0.0.9.1> 2019-12-04: prelude to version v0.1
09.15: 2019-11-29: [prj] upload to CTAN version v0.0.9.1 (under CTAN rules)
09.14: 2019-11-29: [prj] upload to CTAN version v0.0.9
09.13: 2019-11-26: [man] say something about barracuda.sty
09.12: 2019-11-26: [man] edit the section 'A more deep look' for clearness
09.11: 2019-11-26: [prj] reformat todo file: no more date at line end
09.10: 2019-11-26: [svg] take dimensions as scaled point and then mm
09.09: 2019-11-26: [prj] every dev task ends with a repository commit
09.08: 2019-11-25: [prj] .gitignore .out file
09.07: 2019-11-25: [svg] support for text
09.06: 2019-11-25: [man] time to get an usable manual even if minimal
09.05: 2019-11-23: [chk] some new test files
09.04: 2019-11-23: [dev] new barracuda methods save() and hbox()
09.03: 2019-11-20: [svg] driver first run
09.02: 2019-11-10: [dev] implement ga opcode for line-join style and line-cap style
09.01: 2019-11-10: [prj] make lib-parseopt a separated project

<Version 0.0.8> move costructors to the barcode abstract class     🎉 2019-11-09
Task   8.5: adopted new Barcode costructors in the EAN encoder        2019-11-09
Task   8.4: adopted new Barcode costructors in the ITF encoder        2019-11-09
Task   8.3: adopted new Barcode costructors in the Code128 encoder    2019-11-09
Task   8.2: adopted new Barcode costructors in the Code39 encoder     2019-11-04
Task   8.1: new costructor method in the barcode superclass           2019-11-04

<Version 0.0.7> code refactoring for ga-canvas                     🎉 2019-11-02
Task   7.5: recompile all the test files                              2019-11-02
Task   7.4: new functions canvas:encode_<obj>()                       2019-11-02
Task   7.3: text position options for Code39 became two indipendent   2019-11-02
Task   7.2: added a new code39 test file (and bugs fixed)             2019-11-02
Task   7.1: added subdirectories in the test tree                     2019-11-02

<Version 0.0.6> implement Interleaved 2 of 5 encoder               🎉 2019-07-02
Task   6.4: test files                                                2019-07-02
Task   6.3: add bearer bars for itf encoder                           2019-07-02
Task   6.2: check digit capability for itf 2 of 5 encoder             2019-07-02
Task   6.1: implement basic Interleaved 2 of 5 encoder                2019-06-29

<Version 0.0.5> implement Code128 and EAN family encoders          🎉 2019-01-27
Task   5.5: test file                                                 2019-01-27
Task   5.4: implement EAN2 variant                                    2019-01-26
Task   5.3: implement EAN5 variant                                    2019-01-26
Task   5.2: new family encoder concept                                2019-01-25
Task   5.1: implement EAN13 encoder                                   2019-01-12
Task   4.4: refactoring param iterator                                2018-12-30
Task   4.3: test the local system of option set up for Code128        2018-12-30
Task   4.2: test the local system of option set up for Code39         2018-12-30
Task   4.1: test for ga-canvas                                        2018-12-29
Task   3.3: opt in Code 39 and Code 128 symbol constructors           2018-12-24
Task   3.2: focus on a new constructor in Barcode Class for
            better encoder implementation                             2018-12-21
Task   3.1: import and refactoring previous Code128 encoder code      2018-12-16

<Version 0.0.2>                                                    🎉 2018-12-11
Task   2.5: option text_gap for code39                                2018-12-11
Task   2.4: resolved the horizontal correction in spaced text         2018-12-11
Task   2.3: further text option for the Code39 encoder                2018-12-06
Task   2.2: include minimal text ability to the system
Task   2.1: design and implement a basic framework

<Version 0.0.1> open 0.0.1 alpha dev master branch                 🎉 2018-11-30