Conquest 1.5.0e released

  • Hi Conquest users and friends,


    This is the 1.5.0e release. It fixes some bugs.


    You can download the release here:


    https://www.natura-ingenium.nl…erver/dicomserver150e.zip


    This is the corresponding Github commit for 1.5.0e:


    https://github.com/marcelvanhe…63fcba8864a2bb0ed4b84af7e


    As usual you can update by extracting dgate.exe or dgate64.exe and conquestdicomserver.exe, but also quite a few other files have changed - mainly in the web interface and lua code. The web interface no longer supports cgi, but uses PhP instead.


    The latest source code (1.5.0e+) can be browsed on: https://github.com/marcelvanherk/Conquest-DICOM-Server


    Please report bugs and successes!


    Marcel van Herk

    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

    Edited 7 times, last by marcelvanherk: Sneak in bug fix ().

  • This is the buglist, starting with leftover bugs from earlier versions, per category:


    GUI bugs:

    G1) browse tab does not work if user of server service and server gui are differerent.


    Web interface bugs:


    DICOM Communication bugs:

    C1) Multiple instance matching incomplete


    Installer bugs or limitations (low priority):

    I1) last line of dicom.ini does not read if no CR - futured

    I2) web installer should copy OHIF (in github) and luiz html folders and compile servertask

    I3) Web installer on windows does not offer a 'regen' by itself

    I4) Fedora uses /var/www, and nohup has an issue. Therefore provide specific web install scripts for other linux flavours, e.g. fedora.sh. Fedora also requires "sudo setenforce Permissive" for the web server and install to work; also acrnema.map must be copied locally to the cgi-bin/newweb folder rather than pointing to the server folder.

    I5) Oracle linux issues see below; add mysql/mariadb option

    I6) Running ConquestDicomserver from wine with dgate as linux service issues, replace c: temp filenames with z:/


    Unconfirmed bugs:

    U1) I was also expecting DicomObject:Read('stu\ser\sop') to work with virtual servers but I tested it again and sadly no luck there

    U2) Show header in wadoviewer (wado text) open sometimes as dgate.exe downloads

    U3) App/newweb may add HTML header to zip files if using userlogin (not confirmed)

    U4) Random ***No valid presentation contexts/transfer syntax found in 0 candidates, in dicomget from web interface


    Open bugs:

    Below ---- newly found bugs for 1.5.0e will be collected (also see above)

    N1) Too long queries do not give a proper error message in GUI

    N2) Dicom printing from script or gui fails for compressed images

    N3) print text from lua should fail gracefully for too long output

    N4) Internal networking is unreliable on Centos7

    N5) data processed though incoming has CallingAE of 16 spaces in ImportConverter

    N6) export:xx,,,,binary does not work

    N7) Change or modify should not allow empty patientIDs

    N8) Update license to Apache

    N9) The GUI ignores ACRNemaMap in dicom.ini

    N10) The supplied postgress DLL uses a deprecated login method can use libcrypto-3-x64.dll; libiconv-2.dll; libintl-9.dll; libpq(64).dll; libssl-3-x64.dll; libwinpthread-1.dll from recent release

    N11) I think autodelete only works when there is a single MAG device (-ff option).

    N12) the filenames in overview.lua are only suitable for windows

    N13) update or remove outdated or unused viewer start files (e.g. weasis)

    N14) support minimal download eg without sources

    N15) deleting e.g. a RTPLAN from a study does not update StudyModality. Will not fix.

    N16) The clonedb: test command requires VirtualServerFor0 to be defined

    N17) document that you must pass empty string (not nil) to changeuid to parameter if you want to use stage

    N18) * in query does not match empty data; lua:if Data.AccessionNumber=='*' then Data.AccessionNumber = '' end

    N19) User had difficulty blocking C-GET functionality. Confirmed 1.2.840.10008.5.1.4.1.2.2.3 is not checked in dgatesop.lst

    N20) group lenghts of groups with sequences are not stored correctly (lsp). Suggest to no longer store group lenghts in files

    N21) Level and window fix crashed on non-image objects: sneaked fix into 1.5.0e (fix on git and release).


    ----- 1.5.0e release -----

    N22) ohiftop as in ohiftop.7z contains an unsafe link to polyfill.io that must be removed. (fixed on github)

    N23) Dos Moonen: Fixed some copy-paste errors that didn't replace `CalledApTitle` with `CallingApTitle` (PR #42) (manually merged on github)

    n24) Need to add 64 bit lua51 stub to use wxlua (wx.dll) (added on github)

    N25) mukoya: conquest refuses to make association with lossy lpeg-ls - is forced to lossless

    N26) mukoya: jl20 causes image corruption

    N27) The Wado viewer of conquest version 1.5.0e displaces a black image for MRI studies when using the present window level provided by the dicom metadata (pixelrepresentation ignored).

    N28) The error in line 148 is due to my a bug in code. The anonymize_script.lua script expects a variable command_line, and I should have caught if that is missing. (fix on github)

    N29) Made mis-encoded pixel data a warning (on github)


    Please tell me of any bugs you find.

  • Feature requests:


    1) Add: " { 0x0010, 0x21d0, "LastMenstrualDate", 8, SQL_C_DATE, DT_DATE, "---" }, "

    I am a bit reluctant to do this as this may require a database update when updating.


    2) Add tag editor. Have started on integrating wxwidgets to allow lua scripting complex user interfaces. WIP.


    3) Let newdicomobject accept a binary string to load a dicom object from memory.


    4) Change the PostgreSQL Authentication Method to md5: Update the pg_hba.conf file to use md5 instead of scram-sha-256 for the relevant connections

    Code: host all all 127.0.0.1/32 md5

    Set password_encryption to md5 in PostgreSQL: In the postgresql.conf file, set the following parameter: password_encryption = md5

    Restart PostgreSQL and update the user password.


    Marcel

  • I forgot to document the new install script for Linux. If you want to try Conquest on Linux, this is an absolute minimal automatic install script.


    It does require that the logged in user is in the /etc/sudoers file, do not run the script as root.


    Code
    sudo apt install lua5.1
    wget https://raw.githubusercontent.com/marcelvanherk/Conquest-DICOM-Server/master/install/installer.lua
    lua5.1 installer.lua


    It will first ask to install required prerequisites. If you allow that, then after it completes you must again run:


    Code
    lua5.1 installer.lua


    to complete the setup of the server, running as service and with access to the web interface.


    Marcel

    Marcel van Herk is developer of the Conquest DICOM server together with Lambert Zijp.

    Edited 2 times, last by marcelvanherk: State that user needs to be added to sudoers ().

  • Maybe I'm looking in the wrong place? I do not see a [lua] section in my dicom.ini. This is what I see:


    # This file contains configuration information for the DICOM server

    # Do not edit unless you know what you are doing


    [sscscp]

    MicroPACS = sscscp


    # Network configuration: server name and TCP/IP port#

    MyACRNema = CONQUEST1

    TCPPort = 5678


    # Host, database, username and password for database

    SQLHost = localhost

    SQLServer = C:\Users\Username123\Conquest150e\dicomserver150e\Data\dbase\conquest.db3

    Username =

    Password =

    SqLite = 1

    DoubleBackSlashToDB = 0

    UseEscapeStringConstants = 0


    # Configure server

    ImportExportDragAndDrop = 1

    ZipTime = 05:

    UIDPrefix = 1.2.826.0.1.3680043.2.135.739216.7899

    EnableComputedFields = 1


    FileNameSyntax = 4


    # Configuration of compression for incoming images and archival

    DroppedFileCompression = un

    IncomingCompression = un

    ArchiveCompression = as


    # For debug information

    PACSName = CONQUEST1

    OperatorConsole = 127.0.0.1

    DebugLevel = 0


    # Configuration of disk(s) to store images

    MAGDeviceFullThreshold = 30

    MAGDevices = 1

    MAGDevice0 = C:\Users\Username123\Conquest150e\dicomserver150e\Data\

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!