Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

from appveyor to sourceforge #128

Merged
merged 33 commits into from
Apr 19, 2024
Merged

from appveyor to sourceforge #128

merged 33 commits into from
Apr 19, 2024

Conversation

axtens
Copy link
Member

@axtens axtens commented Apr 18, 2024

No description provided.

@axtens
Copy link
Member Author

axtens commented Apr 19, 2024

Instead of ~ I went for $HOME and that appears to be that. There was a minor but breaking syntax error in one of the cobol proof.ci.cob files that was also attended to. Ive commented out the "noise" in the test runs thanks to various DISPLAY statements left in by the developers.

The tests are randomly failing due to

Cobolcheck not found, try to fetch it.
curl: (22) The requested URL returned error: 403 

@axtens
Copy link
Member Author

axtens commented Apr 19, 2024

Finicky tests. Files must end with LF. Sigh

@ErikSchierboom
Copy link
Member

@axtens CI is still failing:

test.cob: in paragraph 'SQUARE-ROOT':
test.cob:552: error: syntax error, unexpected end of file
square-root: proof solution did not pass the tests

@ErikSchierboom
Copy link
Member

Right. I've made a ton of progress in fixing and cleaning up stuff, but now I get this error:

Checking D:\a\cobol\cobol\exercises\practice\acronym exercise...
Found cobolcheck, using D:\a\cobol\cobol\bin\cobolcheck.exe
Run cobolcheck.
CobolCheck: INFO 2024-04-19T09:31:14.885272[6](https://github.com/exercism/cobol/actions/runs/8751462758/job/24017111030?pr=128#step:7:7)00Z INF001: Attempting to load config from config.properties.
CobolCheck: INFO 2024-04-19T09:31:14.900899[7](https://github.com/exercism/cobol/actions/runs/8751462758/job/24017111030?pr=128#step:7:8)00Z INF002: Loaded config successfully from config.properties.
CobolCheck: INFO 2024-04-19T09:31:14.900[8](https://github.com/exercism/cobol/actions/runs/8751462758/job/24017111030?pr=128#step:7:9)99700Z INF003: Cobol-Check starting
CobolCheck: INFO 2024-04-19T09:31:14.900899700Z INF005: Log level is INFO.
CobolCheck: INFO 2024-04-1[9](https://github.com/exercism/cobol/actions/runs/8751462758/job/24017111030?pr=128#step:7:10)T09:31:14.900899700Z INF006: Configuration settings: production.
CobolCheck: INFO 2024-04-19T09:31:14.900899700Z INF014: Error log for the test suite parser is set to: D:\a\cobol\cobol\exercises\practice\acronym\ParserErrorLog.txt.
CobolCheck: INFO 2024-04-19T09:31:14.900899700Z INF013: Output for generated COBOL test program is set to: D:\a\cobol\cobol\exercises\practice\acronym\test.cob.
CobolCheck: INFO 2024-04-19T09:31:14.900899700Z INF0[12](https://github.com/exercism/cobol/actions/runs/8751462758/job/24017111030?pr=128#step:7:13): Successfully generated COBOL test program for src\acronym.
CobolCheck: INFO 2024-04-19T09:31:14.900899700Z INF004: Cobol-Check terminating: 0
configuration error:
\config\default.conf: No such file or directory
acronym: proof solution did not pass the tests

Any idea?

@axtens
Copy link
Member Author

axtens commented Apr 19, 2024

The Linux tester has a default.conf in /usr/local/share/gnucobol/config/ containing

# GnuCOBOL compiler configuration
#
# Copyright (C) 2001-2012, 2014-2023 Free Software Foundation, Inc.
# Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart,
# Ron Norman
#
# This file is part of GnuCOBOL.
#
# The GnuCOBOL compiler is free software: you can redistribute it
# and/or modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# GnuCOBOL is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GnuCOBOL.  If not, see <https://www.gnu.org/licenses/>.


# Value: any string
name: "GnuCOBOL"

# Value: enum
standard-define			0
# NOTE: see enum cb_std_def, defined in cobc/cobc.h.
#        CB_STD_GC = 0,
#        CB_STD_MF,
#        CB_STD_IBM,
#        CB_STD_MVS,
#        CB_STD_BS2000,
#        CB_STD_ACU,
#        CB_STD_RM,
#        CB_STD_85,
#        CB_STD_2002,
#        CB_STD_2014

# Default source reference-format; values: FIXED, FREE, COBOL85,
# VARIABLE, XOPEN, XCARD, CRT, TERMINAL, COBOLX
format:				auto

# Value: int
tab-width:			8
text-column:			72
# Maximum word-length for COBOL words / Programmer defined words
# Be aware that GC checks the word length against COB_MAX_WORDLEN
# first (currently 63)
word-length:			63

# Maximum literal size in general
literal-length:			8191

# Maximum numeric literal size (absolute maximum: 38)
numeric-literal-length:		38

# Maximum number of characters allowed in the character-string (max. 255)
pic-length:			255

# Enable AREACHECK by default, for reference formats other than {fixed,free}
areacheck:			no

# Default assign type
# Value: 'dynamic', 'external'
assign-clause:			dynamic

# If yes, file names are resolved at run time using
# environment variables.
# For example, given ASSIGN TO "DATAFILE", the file name will be
#  1. the value of environment variable 'DD_DATAFILE' or
#  2. the value of environment variable 'dd_DATAFILE' or
#  3. the value of environment variable 'DATAFILE' or
#  4. the literal "DATAFILE"
# If no, the value of the assign clause is the file name.
#
filename-mapping:		yes

# Alternate formatting of numeric fields
pretty-display:			yes

# Allow complex OCCURS DEPENDING ON
complex-odo:			no

# Adjust position of items following OCCURS DEPENDING
odoslide:			no

# Allow REDEFINES to other than last equal level number
indirect-redefines:		no

# Binary byte size - defines the allocated bytes according to PIC
# Value:         signed  unsigned  bytes
#                ------  --------  -----
# '2-4-8'        1 -  4    same        2
#                5 -  9    same        4
#               10 - 18    same        8
#
# '1-2-4-8'      1 -  2    same        1
#                3 -  4    same        2
#                5 -  9    same        4
#               10 - 18    same        8
#
# '1--8'         1 -  2    1 -  2      1
#                3 -  4    3 -  4      2
#                5 -  6    5 -  7      3
#                7 -  9    8 -  9      4
#               10 - 11   10 - 12      5
#               12 - 14   13 - 14      6
#               15 - 16   15 - 16      7
#               17 - 18   17 - 18      8
#
binary-size:			1-2-4-8

# Numeric truncation according to ANSI
binary-truncate:		yes

# Binary byte order
# Value: 'native', 'big-endian'
binary-byteorder:		big-endian

# Allow larger REDEFINES items other than 01 non-external
larger-redefines:		error

# Allow certain syntax variations (eg. REDEFINES position)
relax-syntax-checks:		no

# Allow zero length reference-modification
# (only checked with active EC-BOUND-REF-MOD)
ref-mod-zero-length:		yes

# Perform type OSVS - If yes, the exit point of any currently
# executing perform is recognized if reached.
perform-osvs:			no

# Compute intermediate decimal results like IBM OSVS
arithmetic-osvs:		no

# MOVE like IBM (mvc); left to right, byte by byte
move-ibm:			no

# SELECT RELATIVE KEY and ASSIGN fields must be in WORKING-STORAGE
select-working:		no

# LOCAL-STORAGE SECTION implies RECURSIVE attribute
local-implies-recursive:		no

# If yes, LINKAGE SECTION items remain allocated
# between invocations.
sticky-linkage:			no

# If yes, allow non-matching level numbers
relax-level-hierarchy:		no

# If yes, evaluate constant expressions at compile time
constant-folding:		yes

# Allow Hex 'F' for NUMERIC test of signed PACKED DECIMAL field
hostsign:			no

# If yes, set WITH UPDATE clause as default for ACCEPT dest-item,
# except if WITH NO UPDATE clause is used
accept-update:			no

# If yes, set WITH AUTO clause as default for ACCEPT dest-item,
# except if WITH TAB clause is used
accept-auto:			no

# If yes, DISPLAYs and ACCEPTs are, by default, done on the CRT (i.e., using
# curses).
console-is-crt:			no

# If yes, allow redefinition of the current program's name. This prevents its
# use in a prototype-format CALL/CANCEL statement.
program-name-redefinition:	yes

# If yes, NO ECHO/NO-ECHO/OFF is the same as SECURE (hiding input with
# asterisks, not spaces).
no-echo-means-secure:		no

# If yes, the first item in a field screen ACCEPT/DISPLAY (e.g. DISPLAY x UPON
# CRT) is located after the previous ACCEPT/DISPLAY (as though LINE 0 COL 0 had
# been specified).
line-col-zero-default:		yes

# If yes, DISPLAY SPACES acts as ERASE EOS, DISPLAY X"01" acts as ERASE EOL,
# DISPLAY X"02" acts as BLANK SCREEEN and DISPLAY X"07" acts as BELL. Note
# DISPLAY LOW-VALUE is excluded from this; it will always just position the
# cursor.
display-special-fig-consts:	no

# If yes, COMP-1 is a signed 16-bit integer and any PICTURE clause is ignored.
binary-comp-1:			no

# If yes, POINTER is handled as BINARY-DOUBLE UNSIGNED instead of its own class
numeric-pointer:		no

# auto-adjust to zero like MicroFocus does
move-non-numeric-lit-to-numeric-is-zero: no

# If yes, implicitly define a variable for an ASSIGN DYNAMIC which does not
# match an existing data item.
implicit-assign-dynamic-var:	yes

# If yes, ACCEPT and DISPLAY statements accept device names using mnemonics
device-mnemonics:			no

# full clauses in XML PARSE - and adjusted XML-EVENTs
xml-parse-xmlss:		yes

# What rules to apply to SCREEN SECTION items clauses
screen-section-rules:		gc

# Whether DECIMAL-POINT IS COMMA has effect in XML/JSON GENERATE
dpc-in-data:			xml

# Bounds against which to check subscripts (full, max, record)
subscript-check:		full

# Functionality of JUSTIFY for INITIALIZE verb and initialization of storage
init-justify:		no

# Dialect features
# Value: 'ok', 'warning', 'archaic', 'obsolete', 'skip', 'ignore', 'error',
#        'unconformable'

alter-statement:			obsolete
comment-paragraphs:			obsolete
control-division:			unconformable
partial-replace-when-literal-src:	obsolete
call-overflow:				archaic
data-records-clause:			obsolete
debugging-mode:				ok
use-for-debugging:			ok
listing-statements:			skip	# may be a user-defined word
title-statement:			skip	# may be a user-defined word
entry-statement:			ok
goto-statement-without-name:		obsolete
label-records-clause:			obsolete
memory-size-clause:			obsolete
move-noninteger-to-alphanumeric:	error
move-figurative-constant-to-numeric:	archaic
move-figurative-space-to-numeric:	error
move-figurative-quote-to-numeric:	obsolete
multiple-file-tape-clause:		obsolete
next-sentence-phrase:			archaic
odo-without-to:				warning
padding-character-clause:		obsolete
section-segments:			ignore
stop-literal-statement:			obsolete
stop-identifier-statement:		obsolete
stop-error-statement:			unconformable
same-as-clause:				ok
type-to-clause:				ok
usage-type:					ok
synchronized-clause:			ok
sync-left-right:			ok	# TODO: implement, now raises PENDING warning
special-names-clause:			ok
top-level-occurs-clause:		ok
value-of-clause:			obsolete
numeric-boolean:			ok
hexadecimal-boolean:			ok
national-literals:			ok
hexadecimal-national-literals:		ok
national-character-literals:		warning
# TO-DO: Add separate config option for H"..." to be unsupported,numeric,non-numeric(acu)
acu-literals:				unconformable
hp-octal-literals:			unconformable
ebcdic-symbolic-characters:		no
word-continuation:			warning
not-exception-before-exception:		ok
accept-display-extensions:		ok
renames-uncommon-levels:		ok
symbolic-constant:			ok
constant-78:				ok
constant-01:				ok
perform-varying-without-by:		ok
reference-out-of-declaratives:		warning
program-prototypes:			ok
call-convention-mnemonic:		ok
call-convention-linkage:		ok
using-optional:		ok
numeric-value-for-edited-item:		ok
incorrect-conf-sec-order:		ok
define-constant-directive:		archaic
free-redefines-position:		warning
records-mismatch-record-clause	warning
record-delimiter:			ok
sequential-delimiters:			ok
record-delim-with-fixed-recs:		ok
missing-statement:			warning
missing-period:				warning #when format not in {fixed,free}
zero-length-literals:			ok
xml-generate-extra-phrases:		ok
continue-after:				ok
goto-entry:				warning
assign-variable:			ok
assign-using-variable:			ok
assign-ext-dyn:				ok
assign-disk-from:			ok
vsam-status:				ignore
self-call-recursive:		warning
record-contains-depending-clause:	unconformable
defaultbyte:		init	# GC inits as INITIALIZE ALL TO VALUE THEN TO DEFAULT,
            		    	# with INDEXED BY variables initialized to 1
picture-l:				ok

# use complete word list; synonyms and exceptions are specified below
reserved-words:		default

# not-reserved:
# Value: Word to be taken out of the reserved words list
not-reserved:	TERMINAL
not-reserved:	EXAMINE
# reserved:
#   Entries of the form word-1=word-2 define word-1 as an alias for default
# reserved word word-2. No spaces are allowed around the equal sign.
reserved:	AUTO-SKIP=AUTO
reserved:	AUTOTERMINATE=AUTO
reserved:	BACKGROUND-COLOUR=BACKGROUND-COLOR
reserved:	BEEP=BELL
reserved:	BINARY-INT=BINARY-LONG
reserved:	BINARY-LONG-LONG=BINARY-DOUBLE
reserved:	CELLS=CELL
reserved:	COLOURS=COLORS
reserved:	EMPTY-CHECK=REQUIRED
reserved:	EQUALS=EQUAL
reserved:	FOREGROUND-COLOUR=FOREGROUND-COLOR
reserved:	HIGH-VALUES=HIGH-VALUE
reserved:	INITIALISE=INITIALIZE
reserved:	INITIALISED=INITIALIZED
reserved:	LENGTH-CHECK=FULL
reserved:	LOW-VALUES=LOW-VALUE
reserved:	ORGANISATION=ORGANIZATION
reserved:	PIXELS=PIXEL
reserved:	SYNCHRONISED=SYNCHRONIZED
reserved:	TIMEOUT=TIME-OUT
reserved:	ZEROES=ZERO
reserved:	ZEROS=ZERO

I'm not at all sure that there is one in the Windows version, especially given

configuration error:
\config\default.conf: No such file or directory

in the windows tests

@ErikSchierboom
Copy link
Member

We're all good now!

@ErikSchierboom ErikSchierboom merged commit 6c84aef into exercism:main Apr 19, 2024
3 checks passed
axtens added a commit that referenced this pull request Apr 19, 2024
* from appveyor to sourceforge

* different server

* 7z

* 7z

* yaml issue fixed

* slashes

* 7z oddities

* directories

* $HOME ?

* atbash tweak

* cache management fix

* commented out extraneous DISPLAY in proof.ci.cob files

* eol issue

* line ends fixed

* strangenesses

* SPACE instead of "" in CUT files

* Trim additional line

* Debug

* Try simplify environment variables

* More debugging

* More tweaking

* Fix path

* Fix path

* Fix path

* Fix env

* Streamline

* eof is lf

* acronym

* acronym

* sqrt

* Fix paths

* Fix cache path

---------

Co-authored-by: Erik Schierboom <[email protected]>
axtens added a commit to kapitaali/exercism-cobol-track that referenced this pull request Apr 19, 2024
* from appveyor to sourceforge

* different server

* 7z

* 7z

* yaml issue fixed

* slashes

* 7z oddities

* directories

* $HOME ?

* atbash tweak

* cache management fix

* commented out extraneous DISPLAY in proof.ci.cob files

* eol issue

* line ends fixed

* strangenesses

* SPACE instead of "" in CUT files

* Trim additional line

* Debug

* Try simplify environment variables

* More debugging

* More tweaking

* Fix path

* Fix path

* Fix path

* Fix env

* Streamline

* eof is lf

* acronym

* acronym

* sqrt

* Fix paths

* Fix cache path

---------

Co-authored-by: Erik Schierboom <[email protected]>
@axtens axtens deleted the appveyor branch April 19, 2024 23:53
axtens added a commit that referenced this pull request Apr 20, 2024
* adding protein-translation

* fixed config.json for protein-translation

* fixing .cut file + proof

* Update exercises/practice/protein-translation/bin/fetch-cobolcheck.ps1

Co-authored-by: Victor Goff <[email protected]>

* Update exercises/practice/protein-translation/src/protein-translation.cob

Co-authored-by: Victor Goff <[email protected]>

* Sync the `scrabble-score` exercise's docs with the latest data. (#126)

* Sync the `all-your-base` exercise's docs with the latest data. (#127)

* Simplify test workflow (#129)

* Format config.json file (#131)

* file patterns (#132)

* Add file patterns

* Update files keys

* Pre-fetch cobolcheck (#130)

* Pre-fetch cobolcheck

* Use home dir

* Fetch cobolcheck on windows

* Allow for pre-installed cobolcheck

* from appveyor to sourceforge (#128)

* from appveyor to sourceforge

* different server

* 7z

* 7z

* yaml issue fixed

* slashes

* 7z oddities

* directories

* $HOME ?

* atbash tweak

* cache management fix

* commented out extraneous DISPLAY in proof.ci.cob files

* eol issue

* line ends fixed

* strangenesses

* SPACE instead of "" in CUT files

* Trim additional line

* Debug

* Try simplify environment variables

* More debugging

* More tweaking

* Fix path

* Fix path

* Fix path

* Fix env

* Streamline

* eof is lf

* acronym

* acronym

* sqrt

* Fix paths

* Fix cache path

---------

Co-authored-by: Erik Schierboom <[email protected]>

* Try fix Windows caching (#133)

* Try fix caching

* Try fix cache path

* Try include cobolcheck

* Try include cobolcheck

* Use home dir

* Use home dir

* Update proof.ci.cob (#135)

function all intrinsic on its own line

* Cache on linux (#134)

* Try install

* CONCAT -> CONCATENATE

* CONCATENATE is two-fer

---------

Co-authored-by: Bruce Axtens <[email protected]>

---------

Co-authored-by: Bruce Axtens <[email protected]>
Co-authored-by: Victor Goff <[email protected]>
Co-authored-by: Erik Schierboom <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants