xref: /Universal-ctags/docs/tracking.rst (revision bb84f88a985e0b87fe4313a43b215269a119c4d1)
1:orphan:
2
3Tracking other projects
4----------------------------------------------------------------------
5
6This is working note for tracking activities other projects,
7especially activity at Exuberant Ctags.
8
9I(Masatake YAMATO) consider tracking activities as the first class
10fruits of this project.
11
12
13Exuberant Ctags
14~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15
16subversion
17......................................................................
18
19* status
20
21  Revisions up to <r815> are merged except:
22
23	NOTHING HERE NOW
24
25  (Mon Sep 22 12:41:32 2014 by yamato)
26
27* howto
28
29  ::
30
31      <svn>
32      => <git: local Universal Ctags repo>
33      => <git: local Universal Ctags repo>
34
35
36  1. prepare your own Universal Ctags repo: a local git repo cloned from github.
37     You may know how to do it :)
38
39     ::
40
41	$ git clone https://github.com/universal-ctags/ctags.git
42
43  2. prepare Exuberant Ctags SVN repo: a local git repo clone from Exuberant Ctags svn tree.
44
45    The original clone is already part of Exuberant Ctags tree.
46
47    To initialize your git repository with the required subversion information do ::
48
49	$ git svn init https://svn.code.sf.net/p/ctags/code/trunk
50	$ git update-ref refs/remotes/git-svn refs/remotes/origin/sourceforge
51
52    and then ::
53
54	$ git svn fetch
55	$ git svn rebase
56
57    to get the latest changes and reflect it to the local copy.
58
59  3. merge
60
61    TODO
62
63  4. cherry-pick
64
65     4.1. Make a branch at local Universal Ctags repo and switch to it.
66
67     4.2. Do cherry-pick like::
68
69	 	$ git cherry-pick -s -x c81a8ce
70
71     You can find commit id on the another terminal
72     <git: local Universal Ctags repo>::
73
74	 	$ git log
75
76     or ::
77
78	 	$ git log --oneline
79
80     If conflicts are occurred in cherry-picking, you can
81     abort/reset cherry-picking with::
82
83	 $ git reset --hard
84
85     <git: local Universal Ctags repo>
86      at the branch for picking.
87
88bugs
89......................................................................
90   <367>  C++11 override makes a C++ member function declaration ignored
91
92	 * fixed in::
93
94	        d4fcbdd
95		#413
96		#405
97
98   <366>  --options=.ctags doesn't work under Windows
99
100	 * fixed in::
101
102	        15cedc6c94e95110cc319b5cdad7807caf3db1f4
103
104   <365>  Selecting Python kinds is broken
105
106	* fixed in::
107
108	         4a95e4a55f67230fc4eee91ffb31c18c422df6d3
109
110	* discussed at #324.
111
112   <364>  Ruby method on self is missing the trailing ? in the generated tag name
113
114	 * fixed in::
115
116	        d9ba5df9f4d54ddaa511bd5440a1a3decaa2dc28
117
118   <363> Invalid C input file causes invalid read / heap overflow
119
120	* it is not reproduced.
121
122	* the test case is imported as parser-c.r/c-heapoverflow-sh-bug-363.d::
123
124   		$ make units UNITS=c-heapoverflow-sh-bug-363 VG=1
125
126   <361> Invalid C input file causes invalid read / heap overflow
127
128	* it is not reproduced.
129
130   <360> Fails to parse annotation's fields with default value
131
132	* fixed in::
133
134		682a7f3b180c27c1196f8a1ae662d6e8ad142939
135
136   <358>  Vim parser: Segmentation fault when reading empty vim file
137
138	 * directly contributed by the original author of bug report and patch::
139
140	   	e0f854f0100e7a3cb8b959a23d6036e43f6b6c85
141
142	 * it is fixed in sf, too::
143
144	   	5d774f6022a1af71fa5866994699aafce0253085
145
146   <356> [python] mistakes module level attribute for class level attribute in module level if
147
148	 * fixed in::
149
150	        ab91e6e1ae84b80870a1e8712fc7f3133e4b5542
151
152   <355> Error when parsing empty file (OCaml)
153
154	 * fixed in::
155
156	   	02ec2066b5be6b129eba49685bd0b17fef4acfa
157
158   <341> Lua: "function f ()" whitespace
159
160	 * fixed in::
161
162	   	8590bbef5fcf70f6747d509808c29bf84342cd0d
163
164   <341> Introducing ctags.conf.d
165
166	 * merged the improved version::
167
168	   	216880c5287e0421d9c49898d983144db61c83aa
169
170   <271> regex callback is broken; <320> [PATCH] fix regex callback match count
171
172	 * merged patch (with updated bug number)::
173
174		a12b3a24b62d6535a968e076675f68bac9ad32ba
175
176   <177> Lua: "function" results in function tag (includes patch)
177
178	 * fixed in::
179
180	   	5606f3f711afeac74587a249650a5f7b416f19be
181
182`patches <https://sourceforge.net/p/ctags/patches/%d>`_
183~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
184
185Tracking the tickets in patch tracker is quite fruitful.
186Patches are always there. So it is easy to evaluate the value:)
187
188   [(<]TICKET#[>)] TITLE
189
190	* STATUS
191
192	  + MORE STATUS
193
194   <TICKET#>
195
196   	means the ticket is closed from the view of Exuberant Ctags tree
197   	developers.  We don't have to take time for this ticket.
198
199   (TICKET#)
200
201   	means the ticket is still opened from the view of Exuberant Ctags
202	tree developers.  We don't have to take time for this ticket.
203
204----
205
206   <85> Add --encoding option to make utf-8 encoded tags file
207
208	* contributed by the original author::
209
210	      b3f670c7c4a3c3570b8d2d82756735586aafc0cb
211
212   <84> C++11 new using semantics
213
214	* solved by another implementation::
215
216	      c93e3bfa05b70d7fbc2539454c957eb2169e16b3
217	      502355489b1ba748b1a235641bbd512ba6da315e
218
219   <83> New full non-regex PHP parser
220
221	* contributed by the original author
222
223   <82> Support for comments in .ctags files
224
225	* contributed by the original author::
226
227	  	cab4735e4f99ce23c52b78dc879bc06af66796fd
228
229   <81> ocaml parser segfaults on invalid files
230
231	* the bug is not reproduced
232
233   <80> Add support for falcon pl
234
235	* contributed by the original author
236
237   <74> protobuf parser
238
239	* Merged after getting approval from the original author
240
241   <67> Objective C language parser
242
243	* This is the implementation we have in Universal Ctags tree.
244
245   <65> absoluteFilename uses strcpy on overlapping strings
246
247	* Fixed in Universal Ctags tree, however the ticket is still open::
248
249   		d2bdf505abb7569deae2b50305ea1edce6208557
250
251   <64> Fix strcpy() misuse
252
253	* Fixed in Universal Ctags tree, however the ticket is still open::
254
255		d2bdf505abb7569deae2b50305ea1edce6208557
256
257   <55> TTCN-3 support
258
259	* contributed by the original author
260
261   <51> Ada support
262
263	* Ada support is now available in Universal Ctags tree::
264
265		4b6b4a72f3d2d4ef969d7c650de1829d79f0ea7c
266
267   <38> Ada support
268
269	* Ada support is now available in Universal Ctags tree::
270
271		4b6b4a72f3d2d4ef969d7c650de1829d79f0ea7c
272
273   <33> Add basic ObjC support
274
275	* This one is written in regexp.
276	* we have better objc parser.
277
278   \(1\) bibtex parser
279
280	* Reject because...
281
282	  + the owner of the ticket is anonymous.
283
284	  + the name of patch author is not written explicitly at
285	    the header of patch.
286
287	* Alternative
288
289	  https://gist.github.com/ptrv/4576213
290
291
292devel mailing list (ctags-devel@sourceforge)
293~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
294
295    <[Ctags] Shebang with python3 instead of python>
296    From: Martin Ueding <dev@ma...> - 2013-01-26 18:36:32
297
298	Added python, python2 and python3 as extensions of
299	python parser::
300
301		bb81485205c67617f1b34f61341e60b9e8030502
302
303
304    <[Ctags-devel] Lack of fnmatch(3) in Windows>
305    From: Frank Fesevur <ffes@us...> - 2013-08-24 20:25:47
306
307	There is no fnmatch() in the Windows C library. Therefore
308	a string comparison is done in fileNameMatched() in
309	strlist.c and patterns are not recognized::
310
311		698bf2f3db692946d2358892d228a864014abc4b
312
313
314    <Re: [Ctags-devel] WindRes parser>
315    From: Frank Fesevur <ffes@unns...> - 2013-08-30 21:23:50
316
317	A parser for Windows Resource files.
318	https://en.wikipedia.org/wiki/Resource_%28Windows%29
319
320	::
321
322	 	95b4806ba6c006e4b7e72a006700e33c720ab9e7
323
324
325    ([Ctags-devel] Skip repeat PATH_SEPARATORs in relativeFilename())
326    From: Seth Dickson <whefxlr@gm...> - 2013-12-24 04:51:01
327
328	Looks interesting.
329
330
331Fedora
332~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
333
334Some patches are maintained in ctags package of Fedora.
335Inventory of patches are
336http://pkgs.fedoraproject.org/cgit/ctags.git/tree/ctags.spec
337
338<ctags-5.7-destdir.patch>
339
340	This patch was merged in Universal Ctags git tree::
341
342		d4b5972427a46cbdcbfb050a944cf62b300676be
343
344<ctags-5.7-segment-fault.patch>
345
346	This patch was merged in Universal Ctags git tree::
347
348		8cc2b482f6c7257c5151893a6d02b8c79851fedd
349
350(ctags-5.8-cssparse.patch)
351
352	Not in Universal Ctags tree.
353
354	The reproducer is attached to the following page:
355	https://bugzilla.redhat.com/show_bug.cgi?id=852101
356
357	However, Universal Ctags doesn't reproduce with it.
358
359	I, Masatake YAMATO, read the patch.  However, I don't
360	understand the patch.
361
362<ctags-5.8-css.patch>
363
364	This patch was merged in Universal Ctags git tree::
365
366		80c1522a36df3ba52b8b7cd7f5c79d5c30437a63
367
368<ctags-5.8-memmove.patch>
369
370	This patch was merged in Exuberant Ctags svn tree.
371	As the result this patch is in Universal Ctags tree::
372
373		d2bdf505abb7569deae2b50305ea1edce6208557
374
375<ctags-5.8-ocaml-crash.patch>
376
377	This patch was merged in Exuberant Ctags svn tree.
378	As the result this patch is in Universal Ctags tree::
379
380		ddb29762b37d60a875252dcc401de0b7479527b1
381
382<ctags-5.8-format-security.patch>
383
384	This patch was merged in Exuberant Ctags svn tree.
385	As the result this patch is in Universal Ctags tree::
386
387		2f7a78ce21e4156ec3e63c821827cf1d5680ace8
388
389Debian
390~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
391
392Some patches are maintained in ctags package of Debian.
393Inventory of patches are
394http://anonscm.debian.org/cgit/users/cjwatson/exuberant-ctags.git/tree/debian/patches/series
395
396<python-disable-imports.patch>
397
398	Universal Ctags tags Y in `import X as Y` and Z in `from X import Y as Z`
399	as definition tags. They are turned on by default.
400	The others are tagged as reference tags. reference tags are recorded only
401	when "r" extra tags are enabled. e.g. `--extras=+r`.
402
403<vim-command-loop.patch>
404
405	This patch was merged as an alternative for
406	7fb36a2f4690374526e9e7ef4f1e24800b6914ec
407
408	Discussed on https://github.com/fishman/ctags/issues/74
409
410	::
411
412	   	e59325a576e38bc63b91abb05a5a22d2cef25ab7
413