Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: JuliaIO/LibSerialPort.jl
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.4.0
Choose a base ref
...
head repository: JuliaIO/LibSerialPort.jl
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.5.0
Choose a head ref
  • 3 commits
  • 18 files changed
  • 3 contributors

Commits on Aug 14, 2020

  1. Improvements to interface, testing, and examples (#61)

    * Remove util.jl for #58. Also, JuliaFormatter.
    
    * Remove utils.jl for #58
    
    * Implement Base.isopen method. Rename boolean SerialPort.open field to SerialPort.is_open. Remove Base function name qualifications now that they are imported.
    
    * Rename eof field to is_eof for consistency with is_open.
    
    * Add read_timeout_ms field to SerialPort. Remove open_serial_port which is unused and completely redundant with open.
    
    * Begin overhauling low-level tests
    
    * Add methods for sp_blocking_read and sp_nonblocking_read for #58
    
    * For #58: Add read_timeout_ms field to SerialPort. Remove read methods except for byte reading. Use new nonblocking_read name for old behavior.
    
    * Export nonblocking_read
    
    * Update console.jl for changes to LibSerialPort. See #58
    
    * Update tests for changes to LibSerialPort. See #58
    
    * update runtests.jl
    
    * Return byte counts from blocking read and write functions
    
    * blocking writes no longer require Int conversion. Generalize write() comments.
    
    * Stop writing ADC values by default. Set write_adc = true to go back to old behavior.
    
    * Remove unused test. Adapt for changes to example firmware.
    
    * Allow MCU time to initialize UART.
    
    * Add minimal working example
    
    * Update example in README for #52
    
    * Add configurable delay and a few comments.
    
    * Tests should now pass with either an Arduino running serial_example.ino or a USB-to-UART adapter in loopback mode.
    
    * Document possible HW configs for tests
    
    * Convert SPReturn value to Int as recommended in #61. Rename handle_error -> check.
    
    * Int conversion no longer required for sp_input_waiting
    
    * Fix doc typo in runtests.jl
    
    * Remove unnecessary Cint conversion
    
    * Run JuliaFormatter for consistent indentation. Remove more extraneous conversions.
    
    * Remove unnecessary Csize_t and Cuint conversions in ccall args
    
    * Add get_port_settings methods. For troubleshooting #55, unit testing, and general utility.
    
    * Add tests to test_port_configuration
    
    * Change serial_example to behave like a loopback device.
    
    * Adjust console.jl for changes to serial_example.ino, i.e. to work with any loopback device
    
    * Make error in sp_set_bits more transparent
    
    * Fix tests for #55. Remove port-copying tests, which did not do what I originally thought they did.
    
    * Update header comments in runtests.jl
    andrewadare committed Aug 14, 2020
    Configuration menu
    Copy the full SHA
    46f39f6 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2020

  1. Update testing and version on master (#73)

    * Add Julia 0.5 to testing targets
    * Minor version increment to 0.5.0 on master
    samuelpowell committed Aug 15, 2020
    Configuration menu
    Copy the full SHA
    91fcb67 View commit details
    Browse the repository at this point in the history

Commits on Nov 11, 2020

  1. Add missing timeout implementation from #61 and fixed #72 (missing fl…

    …ow-control setting in tests) (#74)
    
    * fix test_low_level_api() by actually disabling flow control
    
    This test routine claimed in a comment to disable flow control. It
    actually requires the serial port to be transparent for all 256 byte
    values, which in turn requires deactivation of software flow control,
    because otherwise the byte-transparency tests fail for bytes 0x11
    (Ctrl-Q, XON) and 0x13 (Ctrl-S, XOFF) on systems such as Ubuntu Linux
    where software flow control is active by default.
    
    * completed read/write timeout implementation in high-level API
    
    Added new functions to set and clear cumulative timeouts for blocking
    read and write functions, a new `Timeout` exception that will be
    thrown, and time-tracking code in calls to the blocking read/write
    functions. This way, users can now set overall timeouts on other IO
    functions, such as `readuntil`, that make multiple calls to our
    blocking functions.
    
    * change close(::SerialPort) to return nothing
    
    That what other close(::IO) methods in Base do. It looks quite odd in the
    REPL to get the entire closed SerialPort object thrown back at you.
    
    * build HTML documentation using Documenter.jl
    
    also polished some docstrings and fixed a parameter name inconsistency
    
    * split low-level API into separate module (#68)
    
    The low-level API wrappers now sit in a submodule LibSerialPort.Lib.
    
    The high-level API currently still re-exports a few symbols from that
    low-level API module, to preserve backwards compatibility.
    
    This is due to
    
    * my previously started attempt to merge the low and high-level
      APIs for the three functions sp_flush, sp_drain, and sp_output_waiting
    
    * the fact that several high-level APIs currently still refer to
      enum types and constants defined by the low-level API
    
    We may want to phase out either or both in future, for a cleaner
    separation, and a more Julian high-level API.
    
    * documentation typo fixed
    
    * allow arm64 to fail
    
    Arm64 builds have long filed, therefore let's allow them to fail in Travis until that problem is fixed, such that PR authors for other issues do not get build errors that they are not responsible for.
    mgkuhn committed Nov 11, 2020
    2 Configuration menu
    Copy the full SHA
    83b0506 View commit details
    Browse the repository at this point in the history
Loading