1 | # FCM Changes |
---|
2 | |
---|
3 | Go to https://github.com/metomi/fcm/milestones?state=closed |
---|
4 | for a full listing of issues for each release. |
---|
5 | |
---|
6 | -------------------------------------------------------------------------------- |
---|
7 | |
---|
8 | ## 2021.05.0 (2021-05-20) |
---|
9 | |
---|
10 | FCM release 43. |
---|
11 | |
---|
12 | ### Noteworthy Changes |
---|
13 | |
---|
14 | [260](https://github.com/metomi/fcm/pull/260) |
---|
15 | Fix bug where fcm would ignore modules that begin with function/subroutine. |
---|
16 | |
---|
17 | -------------------------------------------------------------------------------- |
---|
18 | |
---|
19 | ## 2019.09.0 (2019-09-30) |
---|
20 | |
---|
21 | FCM release 42. |
---|
22 | |
---|
23 | ### Noteworthy Changes |
---|
24 | |
---|
25 | [#256](https://github.com/metomi/fcm/pull/256): |
---|
26 | fcm make: build: correctly support Fortran submodule. A submodule depends on |
---|
27 | its parent module at compile time, but a parent module depends on its |
---|
28 | submodules at link time. This change also ensures that other modern syntax |
---|
29 | used in module/submodule definitions are handled correctly. |
---|
30 | |
---|
31 | -------------------------------------------------------------------------------- |
---|
32 | |
---|
33 | ## 2019.05.0 (2019-05-03) |
---|
34 | |
---|
35 | FCM release 41. |
---|
36 | |
---|
37 | ### Noteworthy Changes |
---|
38 | |
---|
39 | [#253](https://github.com/metomi/fcm/pull/253): |
---|
40 | fcm make: build: fix handling of Fortran program unit tail comment. Fortran |
---|
41 | dependency analysis was not handling tail comment of a program unit correctly. |
---|
42 | This change fixes the issue. |
---|
43 | |
---|
44 | -------------------------------------------------------------------------------- |
---|
45 | |
---|
46 | ## 2017.10.0 (2017-10-03) |
---|
47 | |
---|
48 | FCM release 40. |
---|
49 | |
---|
50 | ### Noteworthy Changes |
---|
51 | |
---|
52 | [#247](https://github.com/metomi/fcm/pull/247): |
---|
53 | fcm make: build: partially revert [#245](https://github.com/metomi/fcm/pull/245) |
---|
54 | so the link task will, as before, create a temporary dependent object library |
---|
55 | before linking the main object to it. However, users can now specify the |
---|
56 | `build.prop{link-without-ar}` setting in the configuration to prevent it from |
---|
57 | creating the temporary dependent object library, and put the full list of |
---|
58 | dependent object files in the linker command line instead. |
---|
59 | |
---|
60 | -------------------------------------------------------------------------------- |
---|
61 | |
---|
62 | ## 2017.09.0 (2017-09-27) |
---|
63 | |
---|
64 | FCM release 39. |
---|
65 | |
---|
66 | ### Noteworthy Changes |
---|
67 | |
---|
68 | [#246](https://github.com/metomi/fcm/pull/246): |
---|
69 | fcm make: new `description` setting to allow users to specify any string to |
---|
70 | describe the current make. |
---|
71 | |
---|
72 | [#245](https://github.com/metomi/fcm/pull/245): |
---|
73 | fcm make: build: a link task for creating an executable will no longer create |
---|
74 | an archive library with the `ar` command before calling the linker. The linker |
---|
75 | command will contain the full list of object files instead. |
---|
76 | |
---|
77 | -------------------------------------------------------------------------------- |
---|
78 | |
---|
79 | ## 2017.02.0 (2017-02-24) |
---|
80 | |
---|
81 | FCM release 38. |
---|
82 | |
---|
83 | ### Noteworthy Changes |
---|
84 | |
---|
85 | [#243](https://github.com/metomi/fcm/pull/243): |
---|
86 | fcm switch: fix Perl warning. This happened on an unexpected usage. A user has |
---|
87 | checked out an entire project tree, and then run `fcm switch trunk` on it. |
---|
88 | Clearly it did not work, but the added Perl warning was not helpful either. |
---|
89 | |
---|
90 | -------------------------------------------------------------------------------- |
---|
91 | |
---|
92 | ## 2016.12.0 (2016-12-06) |
---|
93 | |
---|
94 | FCM release 37. |
---|
95 | |
---|
96 | ### Noteworthy Changes |
---|
97 | |
---|
98 | [#241](https://github.com/metomi/fcm/pull/241): |
---|
99 | fcm branch-delete: fix Perl warning on branches in a Rosie repository. |
---|
100 | |
---|
101 | [#240](https://github.com/metomi/fcm/pull/240): |
---|
102 | fcm make: fix implementation of `build.prop{ignore-missing-dep-ns}`. |
---|
103 | |
---|
104 | -------------------------------------------------------------------------------- |
---|
105 | |
---|
106 | ## 2016.10.0 (2016-10-07) |
---|
107 | |
---|
108 | FCM release 36. |
---|
109 | |
---|
110 | ### Noteworthy Changes |
---|
111 | |
---|
112 | [#239](https://github.com/metomi/fcm/pull/239): |
---|
113 | fcm conflicts: handle tree conflict: |
---|
114 | *local file edit, incoming file replace upon merge*. |
---|
115 | |
---|
116 | [#238](https://github.com/metomi/fcm/pull/238): |
---|
117 | fcm make: use `TMPDIR` (if defined in the environment) for temporary files on |
---|
118 | load/dump of `ctx.gz`, instead of `/tmp/`. |
---|
119 | |
---|
120 | -------------------------------------------------------------------------------- |
---|
121 | |
---|
122 | ## 2016.09.0 (2016-09-19) |
---|
123 | |
---|
124 | FCM release 35. Minor bug fix, and minor update to admin utilities. |
---|
125 | |
---|
126 | ### Noteworthy Changes |
---|
127 | |
---|
128 | [#235](https://github.com/metomi/fcm/pull/235): |
---|
129 | fcm make: build: fix `sprintf` redundant argument warning on Perl 5.22+. |
---|
130 | |
---|
131 | -------------------------------------------------------------------------------- |
---|
132 | |
---|
133 | ## 2016.05.1 (2016-05-19) |
---|
134 | |
---|
135 | FCM release 34. Minor update to admin utilities, nothing noteworthy for users. |
---|
136 | |
---|
137 | -------------------------------------------------------------------------------- |
---|
138 | |
---|
139 | ## 2016.05.0 (2016-05-05) |
---|
140 | |
---|
141 | FCM release 33. Minor bug fix and update. |
---|
142 | |
---|
143 | ### Noteworthy Changes |
---|
144 | |
---|
145 | [#229](https://github.com/metomi/fcm/pull/229): |
---|
146 | fcm commit, branch-create, branch-delete, etc: the default graphical editor for |
---|
147 | commit message is modified from `gedit` to `gvim -f`, as `gedit` is not |
---|
148 | reliable for running in the foreground. |
---|
149 | |
---|
150 | [#227](https://github.com/metomi/fcm/pull/227): |
---|
151 | fcm make: on gunzip of the context file, pass a file handle rather than a path |
---|
152 | to the `gunzip` function to work around problems when files are made read-only |
---|
153 | via ACL. |
---|
154 | |
---|
155 | -------------------------------------------------------------------------------- |
---|
156 | |
---|
157 | ## 2016.02.0 (2016-02-11) |
---|
158 | |
---|
159 | FCM release 32. Minor bug fix and update. |
---|
160 | |
---|
161 | ### Noteworthy Changes |
---|
162 | |
---|
163 | [#222](https://github.com/metomi/fcm/pull/222): |
---|
164 | Configuration file: fix variable substitution of value 0. A (environment) |
---|
165 | variable value of `0` was previously lost on substitution. This fixes the |
---|
166 | problem. |
---|
167 | |
---|
168 | [#219](https://github.com/metomi/fcm/pull/219): |
---|
169 | fcm make: extract: fix target status on conflict. On conflict, the target |
---|
170 | status was recorded incorrectly as unchanged. This caused incremental extracts |
---|
171 | to succeed in error. This change fixes the problem. |
---|
172 | |
---|
173 | [#215](https://github.com/metomi/fcm/pull/215): |
---|
174 | Improvements to version related functionality: |
---|
175 | * fcm version: now displays FCM_HOME location. |
---|
176 | * fcm make: new `require-version=MIN-VERSION [MAX-VERSION]` declaration. |
---|
177 | If this declaration is specified and the current version is below |
---|
178 | `MIN-VERSION` or if a `MAX-VERSION` is specified and the current version is |
---|
179 | above it, the command will fail immediately. |
---|
180 | |
---|
181 | -------------------------------------------------------------------------------- |
---|
182 | |
---|
183 | ## 2015.12.0 (2015-12-09) |
---|
184 | |
---|
185 | FCM release 31. Minor update. |
---|
186 | |
---|
187 | ### Noteworthy Changes |
---|
188 | |
---|
189 | [#214](https://github.com/metomi/fcm/pull/214): |
---|
190 | fcm make: `build.prop` declarations: modifiers such as `dep.include`, `dep.o`, |
---|
191 | `no-dep.include` and `no-dep.o` are now supported with namespaces that are |
---|
192 | target names. |
---|
193 | |
---|
194 | -------------------------------------------------------------------------------- |
---|
195 | |
---|
196 | ## 2015.11.0 (2015-11-17) |
---|
197 | |
---|
198 | FCM release 30. Minor update. |
---|
199 | |
---|
200 | ### Noteworthy Changes |
---|
201 | |
---|
202 | [#208](https://github.com/metomi/fcm/pull/208): |
---|
203 | fcm make: build: now recognises more patterns as indicators of the existence of |
---|
204 | a main program in a C source file. |
---|
205 | |
---|
206 | [#207](https://github.com/metomi/rose/pull/207): |
---|
207 | fcm test-battery: now runs correctly in the absence of site/user configuration |
---|
208 | on recent Ubuntu distros. |
---|
209 | |
---|
210 | -------------------------------------------------------------------------------- |
---|
211 | |
---|
212 | ## 2015.10.0 (2015-10-15) |
---|
213 | |
---|
214 | FCM release 29. Minor update. |
---|
215 | |
---|
216 | ### Noteworthy Changes |
---|
217 | |
---|
218 | [#205](https://github.com/metomi/fcm/pull/205): |
---|
219 | fcm make: build: new setting `build.prop{checksum-method}=md5|sha1|...` allows |
---|
220 | users to choose MD5 or one of SHA algorithms in Perls' `Digest::SHA` to |
---|
221 | calculate the checksums of source and target files. |
---|
222 | |
---|
223 | [#204](https://github.com/metomi/fcm/pull/204): |
---|
224 | fcm branch-create: allow `--bob` as a synonym of `--branch-of-branch`. |
---|
225 | |
---|
226 | -------------------------------------------------------------------------------- |
---|
227 | |
---|
228 | ## 2015.09.0 (2015-09-28) |
---|
229 | |
---|
230 | FCM release 28. Minor update to admin utilities, nothing noteworthy for users. |
---|
231 | |
---|
232 | -------------------------------------------------------------------------------- |
---|
233 | |
---|
234 | ## 2015.08.0 (2015-08-19) |
---|
235 | |
---|
236 | FCM release 27. Minor update to admin utilities, nothing noteworthy for users. |
---|
237 | |
---|
238 | -------------------------------------------------------------------------------- |
---|
239 | |
---|
240 | ## 2015.07.0 (2015-07-09) |
---|
241 | |
---|
242 | FCM release 26. |
---|
243 | |
---|
244 | ### Noteworthy Changes |
---|
245 | |
---|
246 | [#197](https://github.com/metomi/fcm/pull/197): |
---|
247 | fcm make: build: fix target select modifier. |
---|
248 | * The `category` modifier should now work. |
---|
249 | * The `ns` modifier never worked, and is removed. |
---|
250 | Instead `task` and `category` selection can now be filtered by name-space. |
---|
251 | |
---|
252 | [#196](https://github.com/metomi/fcm/pull/196): |
---|
253 | pre/post commit: improve changeset size diagnostic |
---|
254 | * pre-commit: log (but don't email) >1MB transactions |
---|
255 | * post-commit: report pre-commit size threshold (normally 10MB) for any >1MB |
---|
256 | changesets |
---|
257 | |
---|
258 | [#192](https://github.com/metomi/fcm/pull/192): |
---|
259 | Primary location keyword: trailing slashes in values of primary location |
---|
260 | keywords will now removed automatically. |
---|
261 | |
---|
262 | [#191](https://github.com/metomi/fcm/pull/191): |
---|
263 | fcm (branch-)diff --graphical: will now use the option |
---|
264 | `--config-option config:working-copy:exclusive-locking-clients=` to prevent the |
---|
265 | client from being locked. |
---|
266 | |
---|
267 | -------------------------------------------------------------------------------- |
---|
268 | |
---|
269 | ## 2015.05.0 (2015-05-28) |
---|
270 | |
---|
271 | FCM release 25. |
---|
272 | |
---|
273 | ### Highlighted Changes |
---|
274 | |
---|
275 | [#188](https://github.com/metomi/fcm/pull/188): |
---|
276 | fcm make: allow multiple runs in same directory. A make can now be named, so |
---|
277 | multiple non-overlapping makes can work in the same directory. It is worth |
---|
278 | noting that once you have used this version of `fcm make` on a directory, older |
---|
279 | version of FCM will no longer work in incremental mode on the same directory. |
---|
280 | See also [metomi/rose#1604](https://github.com/metomi/rose/pull/1604). |
---|
281 | |
---|
282 | ### Noteworthy Changes |
---|
283 | |
---|
284 | [#190](https://github.com/metomi/fcm/pull/190): |
---|
285 | fcm make: new `--archive` option. If archive mode is specified, TAR-GZIP these |
---|
286 | items by default: |
---|
287 | * `.fcm-make/cache/extract/` |
---|
288 | * `build/include/` |
---|
289 | * `build/o/` |
---|
290 | |
---|
291 | where `extract` and `build` are names of extract and build steps. |
---|
292 | Users can configure what to TAR-GZIP under `build/`. |
---|
293 | |
---|
294 | [#189](https://github.com/metomi/fcm/pull/189): |
---|
295 | fcm make: correctly support relocation of a make. |
---|
296 | |
---|
297 | -------------------------------------------------------------------------------- |
---|
298 | |
---|
299 | ## 2015.03.0 (2015-03-26) |
---|
300 | |
---|
301 | FCM release 24. |
---|
302 | |
---|
303 | ### Noteworthy Changes |
---|
304 | |
---|
305 | [#183](https://github.com/metomi/fcm/pull/183): |
---|
306 | Use of Subversion 1.6 with FCM is no longer recommended. |
---|
307 | |
---|
308 | [#181](https://github.com/metomi/fcm/pull/181): |
---|
309 | fcm make: source file find: ignore hidden paths only if paths are under |
---|
310 | the source root directory, i.e. it is now OK for the source root directory to |
---|
311 | be a hidden path itself. |
---|
312 | |
---|
313 | [#178](https://github.com/metomi/fcm/pull/178): |
---|
314 | fcm make: `.fcm-make/log` symbolic links are now relative. This should make it |
---|
315 | easier to relocate a build. |
---|
316 | |
---|
317 | -------------------------------------------------------------------------------- |
---|
318 | |
---|
319 | ## 2015.02.0 (2015-02-10) |
---|
320 | |
---|
321 | FCM release 23. |
---|
322 | |
---|
323 | ### Noteworthy Changes |
---|
324 | |
---|
325 | [#176](https://github.com/metomi/fcm/pull/176): |
---|
326 | fcm make: build: fix creation of Fortran interface files where procedure |
---|
327 | arguments declared with `EXTERNAL` statements were incorrectly matched in |
---|
328 | case-sensitive mode. |
---|
329 | |
---|
330 | [#170](https://github.com/metomi/fcm/pull/170): |
---|
331 | fcm commit: now works in a working copy with *externals*. |
---|
332 | |
---|
333 | [#169](https://github.com/metomi/fcm/pull/169): |
---|
334 | fcm branch-delete: now fails if bad arguments specified. |
---|
335 | |
---|
336 | [#168](https://github.com/metomi/fcm/pull/168): |
---|
337 | fcm branch-diff: `--trac` now works correctly. The `/intertrac/` syntax did not |
---|
338 | appear to work any more. Use `/search?q=` syntax instead. |
---|
339 | |
---|
340 | -------------------------------------------------------------------------------- |
---|
341 | |
---|
342 | ## 2014.12.0 (2014-12-08) |
---|
343 | |
---|
344 | FCM release 22. |
---|
345 | |
---|
346 | ### Noteworthy Changes |
---|
347 | |
---|
348 | [#164](https://github.com/metomi/fcm/pull/164): |
---|
349 | fcm build: fix fortran interface generation, broken by |
---|
350 | [#156](https://github.com/metomi/fcm/pull/156). |
---|
351 | |
---|
352 | [#163](https://github.com/metomi/fcm/pull/163): |
---|
353 | fcm merge --reverse: improve logic. It now works with non-standard layout. The |
---|
354 | `--revision=[M:]N` option is no longer compulsory. It now uses the last changed |
---|
355 | revision of the working copy by default. |
---|
356 | |
---|
357 | [#162](https://github.com/metomi/fcm/pull/162): |
---|
358 | fcm-manage-trac-env-session: fix session logic. If a user already has some |
---|
359 | entries in the `session_attribute` table, the old logic will not insert a new |
---|
360 | `name` or `email` for the user. The new logic will only skip the `name` or |
---|
361 | `email` attribute if already set correctly. |
---|
362 | |
---|
363 | -------------------------------------------------------------------------------- |
---|
364 | |
---|
365 | ## 2014.11.0 (2014-11-25) |
---|
366 | |
---|
367 | FCM release 21. |
---|
368 | |
---|
369 | ### Noteworthy Changes |
---|
370 | |
---|
371 | [#161](https://github.com/metomi/fcm/pull/161): |
---|
372 | post-commit-bg-notify-who: use branch creator as branch owner if it cannot be |
---|
373 | determined by the branch name. |
---|
374 | |
---|
375 | [#159](https://github.com/metomi/fcm/pull/159), |
---|
376 | [#160](https://github.com/metomi/fcm/pull/160): |
---|
377 | FCM's Subversion wrappers: display error messages when `svn info` commands |
---|
378 | fail. |
---|
379 | |
---|
380 | [#158](https://github.com/metomi/fcm/pull/158): |
---|
381 | fcm make: extract: improve checking of primary location in inherited mode. |
---|
382 | Compare old value with normalised version of new value. E.g. use of location |
---|
383 | keywords and extra slashes at the end of the path will no longer result in a |
---|
384 | configuration conflict. |
---|
385 | |
---|
386 | [#156](https://github.com/metomi/fcm/pull/156): |
---|
387 | fcm extract and fcm build: fix warnings from Perl 5.12+ when parsing |
---|
388 | configuration file. |
---|
389 | |
---|
390 | [#155](https://github.com/metomi/fcm/pull/155): |
---|
391 | fcm make: fix report of no such config file. |
---|
392 | |
---|
393 | [#150](https://github.com/metomi/fcm/pull/150): |
---|
394 | fcm-manage-trac-env-session: improve removal logic. |
---|
395 | |
---|
396 | [#149](https://github.com/metomi/fcm/pull/149): |
---|
397 | svnperms.py: fix bug, alter message override, and add tests. |
---|
398 | |
---|
399 | [#148](https://github.com/metomi/fcm/pull/148): |
---|
400 | Reverse `commit.conf` logic. To verify branch owner, specify |
---|
401 | `verify-branch-owner`. To notify branch owner, specify `notify-owner`. |
---|
402 | `post-commit-bg` now supports owner notification on trunk commit. |
---|
403 | |
---|
404 | [#147](https://github.com/metomi/fcm/pull/147): |
---|
405 | Use `dd conv=fsync` to create backup and dump to ensure that backup and dump |
---|
406 | data is written to disk before returning a good status. |
---|
407 | |
---|
408 | [#146](https://github.com/metomi/fcm/pull/146): |
---|
409 | fcm merge: basic support for `meld`. |
---|
410 | |
---|
411 | -------------------------------------------------------------------------------- |
---|
412 | |
---|
413 | ## 2014.09.0 (2014-09-17) |
---|
414 | |
---|
415 | FCM release 20. |
---|
416 | |
---|
417 | ### Highlighted Changes |
---|
418 | |
---|
419 | [#138](https://github.com/metomi/fcm/pull/138): |
---|
420 | fcm make: build: continue on failure. |
---|
421 | * The build system will continue as much as possible after a failure, and |
---|
422 | only repeat failed tasks in incremental modes. |
---|
423 | * This change also fixes a problem where the system could lose information |
---|
424 | after a failure. Tasks that would be run after the failed task would not get |
---|
425 | their context recorded correctly. In a subsequent incremental build, the |
---|
426 | system would end up doing more work than necessary. |
---|
427 | |
---|
428 | [#135](https://github.com/metomi/fcm/pull/135): |
---|
429 | fcm make: multiple config files and search paths. |
---|
430 | * You can now specify multiple `-F PATH` options to specify the search paths |
---|
431 | for locating configuration files specified as relative paths. |
---|
432 | * You can now specify multiple `-f FILE` options. |
---|
433 | * New `include-path` configuration declaration for specifying the search path |
---|
434 | for configuration files specified as relative paths. |
---|
435 | * Improve CLI argument diagnostics. |
---|
436 | * The command dies if an argument is missing an equal sign. |
---|
437 | * Suggest command line syntax if argument ends with `.cfg`. |
---|
438 | |
---|
439 | [#129](https://github.com/metomi/fcm/pull/129), |
---|
440 | [#136](https://github.com/metomi/fcm/pull/136), |
---|
441 | [#143](https://github.com/metomi/fcm/pull/143), |
---|
442 | [#144](https://github.com/metomi/fcm/pull/144): |
---|
443 | Major improvements to the admin sub-system: |
---|
444 | * Improve hook installation. |
---|
445 | Write, store and housekeep hook logs at `$REPOS/log/`. |
---|
446 | Clean options for hook installation. |
---|
447 | Install `svnperms.conf` from repository root. |
---|
448 | `TZ=UTC` for all hook scripts. |
---|
449 | * Improve diagnostics for hooks. |
---|
450 | Custom configuations per repositories. |
---|
451 | Configurable `pre-revprop-change` permissions. |
---|
452 | Hooks to work best under Subversion 1.8+. |
---|
453 | Add modified `svnperms.py` in distribution. |
---|
454 | Trac 0.12+ changeset added and modified notification. |
---|
455 | * Trac URL template. |
---|
456 | * `fcm-add-trac-env`: add Trac comment edit permission. |
---|
457 | * Separate `InterTrac` configurations from `trac.ini` into `intertrac.ini`. |
---|
458 | * Fix usage of `FCM_CONF_PATH` for admin. |
---|
459 | * Improve documentation and logic for admin configuration. |
---|
460 | * Get user info via LDAP or traditional Unix password file. |
---|
461 | * New admin commands: |
---|
462 | * `fcm-add-svn-repos-and-trac-env` |
---|
463 | * `fcm-add-svn-repos` |
---|
464 | * `fcm-manage-trac-env-session` |
---|
465 | * `pre-commit`: optionally block branch create with bad owner. |
---|
466 | * `post-commit-bg`: rename repository dump. |
---|
467 | * `post-commit-bg`: optionally notify branch owner if author is not owner. |
---|
468 | * `post-*` hooks: configurable notification `From:` field. |
---|
469 | * Test batteries for hooks, and selected admin utilities. |
---|
470 | |
---|
471 | ### Noteworthy Changes |
---|
472 | |
---|
473 | [#140](https://github.com/metomi/fcm/pull/140): |
---|
474 | fcm mkpatch: Changes required for use with svn 1.8 + other minor bug fixes. |
---|
475 | |
---|
476 | [#139](https://github.com/metomi/fcm/pull/139): |
---|
477 | fcm commit: fail a commit if it includes the `#commit_message#` file. |
---|
478 | |
---|
479 | [#137](https://github.com/metomi/fcm/pull/137): |
---|
480 | fcm merge: basic support for `kdiff3`. |
---|
481 | |
---|
482 | [#129](https://github.com/metomi/fcm/pull/129): |
---|
483 | `fcm commit`/`fcm branch-rm`: fix branch owner test to use correct user ID. |
---|
484 | |
---|
485 | -------------------------------------------------------------------------------- |
---|
486 | |
---|
487 | ## 2014.06.0 (2014-06-10) |
---|
488 | |
---|
489 | ### Highlighted Changes |
---|
490 | |
---|
491 | -none- |
---|
492 | |
---|
493 | ### Noteworthy Changes |
---|
494 | |
---|
495 | [#125](https://github.com/metomi/fcm/pull/125): |
---|
496 | fcm make: build: handle adjacent cyclic dependency correctly. |
---|
497 | |
---|
498 | [#128](https://github.com/metomi/fcm/pull/128): |
---|
499 | Remove unnecessary `-r`, `-w` and `-x` tests to avoid ACL problems. |
---|
500 | Use Perl's `filetest` pragma where necessary to correctly handle ACL. |
---|
501 | |
---|
502 | -------------------------------------------------------------------------------- |
---|
503 | |
---|
504 | ## 2014-04 (2014-04-23) |
---|
505 | |
---|
506 | ### Highlighted Changes |
---|
507 | |
---|
508 | [#114](https://github.com/metomi/fcm/pull/#114), |
---|
509 | [#117](https://github.com/metomi/fcm/pull/#117), |
---|
510 | [#118](https://github.com/metomi/fcm/pull/#118): |
---|
511 | fcm make: build: now recognises statements with Fortran |
---|
512 | OpenMP sentinels that affect build dependencies. |
---|
513 | These dependencies are normally ignored. |
---|
514 | However, if a relevant `build.prop{fc.flag-omp}` property is specified, the |
---|
515 | build system will treat these statements as normal dependency statements. |
---|
516 | |
---|
517 | ### Noteworthy Changes |
---|
518 | |
---|
519 | [#121](https://github.com/metomi/fcm/pull/#121): |
---|
520 | fcm make: extract via SSH: improve performance by using `find -printf` |
---|
521 | instead of `find -exec stat`. |
---|
522 | |
---|
523 | [#120](https://github.com/metomi/fcm/pull/#120): |
---|
524 | fcm make: build will now correctly handle C source files that has camel |
---|
525 | case names and `main` functions. |
---|
526 | |
---|
527 | [#111](https://github.com/metomi/fcm/pull/#111): |
---|
528 | fcm make: build in inherit mode: fix incorrect success in repeated |
---|
529 | incremental mode. |
---|
530 | |
---|
531 | [#105](https://github.com/metomi/fcm/pull/#105): |
---|
532 | `FCM_CONF_PATH`: new environment variable that can be used to override |
---|
533 | site/user configuration paths. |
---|
534 | |
---|
535 | [#103](https://github.com/metomi/fcm/pull/#103): |
---|
536 | fcm make: extract: detect diff trees that are the same as the base tree. |
---|
537 | |
---|
538 | -------------------------------------------------------------------------------- |
---|
539 | |
---|
540 | ## 2014-03 (2014-03-03) |
---|
541 | |
---|
542 | ### Highlighted Changes |
---|
543 | |
---|
544 | [#96](https://github.com/metomi/fcm/pull/#96): |
---|
545 | fcm make: arguments as extra configurations. This change allows the |
---|
546 | `fcm make` command to accept command line arguments. Each argument will be |
---|
547 | appended in order as a new line in the current `fcm-make.cfg`. This allows |
---|
548 | users to override the configuration on the command line. |
---|
549 | |
---|
550 | ### Noteworthy Changes |
---|
551 | |
---|
552 | [#101](https://github.com/metomi/fcm/pull/#101): |
---|
553 | fcm make: do not inherit `steps` if it is already set in the current |
---|
554 | configuration. This allows `steps=` to be declared before `use=`. |
---|
555 | |
---|
556 | [#100](https://github.com/metomi/fcm/pull/#100): |
---|
557 | fcm make: reduce memory usage in incremental mode. Invoking `fcm make` |
---|
558 | with many steps was causing Perl to exit with SIGSEGV previously. |
---|
559 | |
---|
560 | [#98](https://github.com/metomi/fcm/pull/#98): |
---|
561 | fcm make: extract: fix ssh location efficiency. |
---|
562 | |
---|
563 | [#93](https://github.com/metomi/fcm/pull/#93): |
---|
564 | fcm make: fix `use=` properties override. This change allows `use=` |
---|
565 | declarations to be placed anywhere in an `fcm-make.cfg` without interfering |
---|
566 | other `*.prop` declarations. |
---|
567 | |
---|
568 | [#92](https://github.com/metomi/fcm/pull/#92): |
---|
569 | fcm branch-create/list: support alternate username using information in |
---|
570 | users' `~/.subversion/servers` file. |
---|
571 | |
---|
572 | [#91](https://github.com/metomi/fcm/pull/#91): |
---|
573 | fcm make: remove config-on-success on failure. |
---|
574 | |
---|
575 | -------------------------------------------------------------------------------- |
---|
576 | |
---|
577 | ## 2014-02 (2014-02-03) |
---|
578 | |
---|
579 | ### Highlighted Changes |
---|
580 | |
---|
581 | [#83](https://github.com/metomi/fcm/pull/#83): |
---|
582 | fcm make: build: an initial attempt to support some Fortran 2K features. |
---|
583 | * Recognise `iso_fortran_env` as an intrinsic module. |
---|
584 | * Recognise `use, intrinsic ::` statements. |
---|
585 | * Recognise `class`, `double complex` and `procedure` as types. |
---|
586 | * Recognise new type declaration attributes. |
---|
587 | * Recognise `abstract interface` blocks. |
---|
588 | * Recognise `impure elemental` as a valid function or subroutine attribute. |
---|
589 | * Recognise `submodule` blocks. |
---|
590 | |
---|
591 | ### Noteworthy Changes |
---|
592 | |
---|
593 | [#89](https://github.com/metomi/fcm/pull/#89): |
---|
594 | fcm merge, fcm switch, etc: Subversion 1.8 `svn upgrade` command may |
---|
595 | not write a `.svn/entries` file at the working copy root. Several FCM wrappers |
---|
596 | were failing because they were unable to determine the working copy root. This |
---|
597 | is fixed by using the new entry available in Subversion 1.8 `svn info` to |
---|
598 | determine the working copy root. |
---|
599 | |
---|
600 | [#87](https://github.com/metomi/fcm/pull/#87): |
---|
601 | fcm make: build: print sources to targets diagnostics on `-vv` mode and |
---|
602 | in the log. |
---|
603 | |
---|
604 | -------------------------------------------------------------------------------- |
---|
605 | |
---|
606 | ## 2014-01 (2014-01-20) |
---|
607 | |
---|
608 | ### Highlighted Changes |
---|
609 | |
---|
610 | -none- |
---|
611 | |
---|
612 | ### Noteworthy Changes |
---|
613 | |
---|
614 | [#81](https://github.com/metomi/fcm/pull/#81): |
---|
615 | fcm make: build: fix cyclic dependency logic. |
---|
616 | |
---|
617 | [#80](https://github.com/metomi/fcm/pull/#80): |
---|
618 | fcm make: extract: support `extract.location` declarations reset. |
---|
619 | |
---|
620 | [#79](https://github.com/metomi/fcm/pull/#79): |
---|
621 | fcm make: extract: SSH location: ignore dot files. |
---|
622 | |
---|
623 | -------------------------------------------------------------------------------- |
---|
624 | |
---|
625 | ## 2013-12 (2013-12-02) |
---|
626 | |
---|
627 | ### Highlighted Changes |
---|
628 | |
---|
629 | -none- |
---|
630 | |
---|
631 | ### Noteworthy Changes |
---|
632 | |
---|
633 | [#77](https://github.com/metomi/fcm/pull/#77): |
---|
634 | fcm make: mirror and build: fix etc files install. This was broken by |
---|
635 | [#65](https://github.com/metomi/fcm/pull/#65) |
---|
636 | which causes etc files to be installed to `bin/`. |
---|
637 | |
---|
638 | [#74](https://github.com/metomi/fcm/pull/#74): |
---|
639 | Handle date in `svn log --xml`, which may have trailing spaces and lines. |
---|
640 | |
---|
641 | -------------------------------------------------------------------------------- |
---|
642 | |
---|
643 | ## 2013-11 (2013-11-22) |
---|
644 | |
---|
645 | ### Highlighted Changes |
---|
646 | |
---|
647 | [#65](https://github.com/metomi/fcm/pull/#65): |
---|
648 | fcm make: support declaration of class default properties using the |
---|
649 | syntax e.g. `build.prop{class,fc}=my-fc`. |
---|
650 | |
---|
651 | [#65](https://github.com/metomi/fcm/pull/#65): |
---|
652 | fcm make: build: support target name as name-space for target properties, |
---|
653 | e.g. `build.prop{fc}[myprog.exe]=my-fc`. N.B. Dependency properties are |
---|
654 | regarded as source properties, and so are not supported by this change. |
---|
655 | |
---|
656 | ### Noteworthy Changes |
---|
657 | |
---|
658 | [#73](https://github.com/metomi/fcm/pull/#73): |
---|
659 | fcm mkpatch: use `/usr/bin/env bash` in generated scripts. |
---|
660 | |
---|
661 | [#72](https://github.com/metomi/fcm/pull/#72): |
---|
662 | fcm conflicts: fix incompatibility with SVN 1.8. |
---|
663 | |
---|
664 | [#70](https://github.com/metomi/fcm/pull/#70): |
---|
665 | fcm CLI: support new SVN 1.8 commands. |
---|
666 | |
---|
667 | [#68](https://github.com/metomi/fcm/pull/#68): |
---|
668 | sbin/fcm-backup-\*: hotcopy before verifying the hotcopy. |
---|
669 | |
---|
670 | [#63](https://github.com/metomi/fcm/pull/#63): |
---|
671 | fcm make: log file improvements. Print FCM version in beginning of log |
---|
672 | file. |
---|
673 | |
---|
674 | [#63](https://github.com/metomi/fcm/pull/#63): |
---|
675 | fcm --version: new command to print FCM version. |
---|
676 | |
---|
677 | [#63](https://github.com/metomi/fcm/pull/#63): |
---|
678 | FCM is no longer dependent on the `HTTP::Date` Perl module. |
---|
679 | |
---|
680 | -------------------------------------------------------------------------------- |
---|
681 | |
---|
682 | ## 2013-10 (2013-10-30) |
---|
683 | |
---|
684 | ### Highlighted Changes |
---|
685 | |
---|
686 | Changes that have significant impact on user experience. |
---|
687 | |
---|
688 | [#52](https://github.com/metomi/fcm/pull/#52): |
---|
689 | fcm make: build: new properties for C++ source files, separated from |
---|
690 | C source files. File extension for C and C++ source files is rationalised to |
---|
691 | follow what is documented in the GCC manual. |
---|
692 | |
---|
693 | [#50](https://github.com/metomi/fcm/pull/#50), |
---|
694 | [#54](https://github.com/metomi/fcm/pull/#54): |
---|
695 | fcm make: build/preprocess.prop: include-paths/lib-paths/libs: |
---|
696 | New build properties to specify a list of include paths for compile |
---|
697 | tasks, and library paths and libraries for link tasks. |
---|
698 | |
---|
699 | ### Noteworthy Changes |
---|
700 | |
---|
701 | Bug fixes and minor enhancements: |
---|
702 | |
---|
703 | [#59](https://github.com/metomi/fcm/pull/#59): |
---|
704 | fcm make: fix invalid cyclic dependency error when `build.prop{dep.o}` is |
---|
705 | declared on the root name-space. |
---|
706 | |
---|
707 | [#58](https://github.com/metomi/fcm/pull/#58): |
---|
708 | fcm make: build: improve diagnostics for duplicated targets and bad values |
---|
709 | in `build.prop{ns-dep.o}` declarations. |
---|
710 | |
---|
711 | [#55](https://github.com/metomi/fcm/pull/#55): |
---|
712 | fcm make: extract: can now extract from a location that is accessible via |
---|
713 | `ssh` and `rsync`. |
---|
714 | |
---|
715 | [#53](https://github.com/metomi/fcm/pull/#53): |
---|
716 | fcm make: `.fcm-make/log` can now be accessed as `fcm-make.log`. |
---|
717 | |
---|
718 | [#51](https://github.com/metomi/fcm/pull/#51): |
---|
719 | FCM documentation: style updated using Bootstrap. |
---|
720 | |
---|
721 | -------------------------------------------------------------------------------- |
---|
722 | |
---|
723 | ## 2013-09 (2013-09-26) |
---|
724 | |
---|
725 | ### Highlighted Changes |
---|
726 | |
---|
727 | Changes that have significant impact on user experience. |
---|
728 | |
---|
729 | -None- |
---|
730 | |
---|
731 | ### Noteworthy Changes |
---|
732 | |
---|
733 | Bug fixes and minor enhancements: |
---|
734 | |
---|
735 | [#45](https://github.com/metomi/fcm/pull/#45): |
---|
736 | An attempt to allow FCM to work under a case insensitive file system. |
---|
737 | |
---|
738 | [#39](https://github.com/metomi/fcm/pull/#39), |
---|
739 | [#40](https://github.com/metomi/fcm/pull/#40), |
---|
740 | [#41](https://github.com/metomi/fcm/pull/#41): |
---|
741 | CM commands are now tested under Subversion 1.8. |
---|
742 | |
---|
743 | [#37](https://github.com/metomi/fcm/pull/#37): |
---|
744 | fcm make: build: fixed hanging of `ext-iface` tasks when there is an |
---|
745 | unbalanced quote or bracket in a relevant Fortran source file. |
---|
746 | |
---|
747 | [#20](https://github.com/metomi/fcm/pull/#20): |
---|
748 | fcm make: build: allow separate linker command and add ability to keep |
---|
749 | the intermediate library archive while linking an executable. |
---|
750 | |
---|
751 | [#19](https://github.com/metomi/fcm/pull/#19): |
---|
752 | added test suite for code management commands to the distribution. |
---|
753 | |
---|
754 | r4955: fcm extract: fix failure caused by the checking of latest version of a |
---|
755 | deleted branch. |
---|
756 | |
---|
757 | -------------------------------------------------------------------------------- |
---|
758 | |
---|
759 | ## FCM-2-3-1 and Prior Releases |
---|
760 | |
---|
761 | See <http://metomi.github.io/fcm/doc/release_notes/>. |
---|