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

[pull] master from uniconproject:master #139

Open
wants to merge 60 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
f65ccd2
Document the fourth parameter of spawn() in the language reference
Don-Ward Oct 22, 2024
1842481
Fix bug in u_read()
Don-Ward Oct 26, 2024
a543033
Merge pull request #488 from Don-Ward/u_read-bug
Jafaral Oct 28, 2024
87d5de3
Merge pull request #486 from Don-Ward/spawn-doc
Jafaral Nov 8, 2024
6a067e1
ulsp: abstract jsonrpc
Jafaral Nov 4, 2024
127790e
ulsp: add json-rpc test
Jafaral Nov 10, 2024
c90c3be
Merge pull request #489 from Jafaral/jrpc
Don-Ward Nov 10, 2024
e9c9177
Correct f6620ef5 (Remove a development diagnostic from the Unicon com…
Don-Ward Nov 15, 2024
aeb6469
Merge pull request #491 from Don-Ward/fix-f6620ef5
Jafaral Nov 15, 2024
f4b55fc
Correct the use of find_method in the plugin api method.
Don-Ward Nov 19, 2024
767fecf
Merge pull request #492 from Don-Ward/fix-api
Jafaral Nov 19, 2024
1857447
Fix build failure on macOS with Apple's arm processor.
Don-Ward Dec 12, 2024
8fee0b2
Merge pull request #493 from Don-Ward/fix-apple-M4-build
Jafaral Dec 12, 2024
54a352c
Document auto-unlock when leaving critical regions.
Don-Ward Dec 12, 2024
b110662
ci: enable build for Apple silicon
Jafaral Dec 12, 2024
333e0f5
Test program for Auto unlock of critical regions.
Don-Ward Dec 14, 2024
2bf7080
Auto unlock when leaving critical regions.
Don-Ward Dec 12, 2024
bda0a0e
runtime: fix pthread coswitch
Jafaral Dec 18, 2024
c9af946
ci: install extra build deps for ubuntu 24.04, add riscv64
Jafaral Dec 18, 2024
15c1591
Fix new mesa dependency on newer platforms
Jafaral Dec 20, 2024
5bed5a4
tests: disable tester tests for now
Jafaral Dec 21, 2024
5616d36
Merge pull request #494 from Jafaral/apple-m
Don-Ward Dec 21, 2024
9f609be
Merge pull request #495 from Don-Ward/auto-unlock-critical
Jafaral Dec 22, 2024
1fc82e9
tests: Disable the one FxPt test that crashes; enable the rest.
Don-Ward Dec 22, 2024
816ab8f
Merge pull request #496 from Don-Ward/FxPt-test
Jafaral Dec 23, 2024
d00406a
runtime: fix typo, drop unnecessary line and fix associated comment
Jafaral Jan 2, 2025
10dbbd3
Merge pull request #497 from Jafaral/coswitch-typo
Don-Ward Jan 2, 2025
6d50011
runtime: fix null pointer deference on a window close
Jafaral Jan 5, 2025
a4056ac
Merge pull request #498 from Jafaral/fix-wclose
Don-Ward Jan 5, 2025
f47bf59
ci: disable iconc test on Windows until glob is fixed
Jafaral Feb 4, 2025
9b56a7d
Merge pull request #503 from Jafaral/win-ci
Jafaral Feb 4, 2025
753d85d
ci: add native ARM test
Jafaral Feb 3, 2025
ad0dfe0
Merge pull request #500 from Jafaral/arm-ci
Don-Ward Feb 4, 2025
838fbb2
config: update with new autoconf, fix freebsd timezone error
Jafaral Feb 4, 2025
9333422
ci: add freebsd coverage
Jafaral Feb 3, 2025
ca7137c
Add FreeBSD build instructions
Jafaral Feb 4, 2025
279c346
use a variable instead of an explicit call to make
Jafaral Feb 4, 2025
6b8fc73
tests: skip pty_uni test on FreeBSD
Jafaral Feb 4, 2025
cf12c21
Merge pull request #501 from Jafaral/freebsd
Don-Ward Feb 5, 2025
6e2f545
Adding native coswitch for aarch64/macOS
ianmclinden Feb 22, 2025
065130e
Merge pull request #506 from ianmclinden/coswitch-arm64-macos
Jafaral Feb 23, 2025
efe705a
Introduce Unicon Unit Test Framework
IanTrudel Apr 20, 2024
1f19cc8
Tests for TestSuite run() and failure tests
IanTrudel Apr 27, 2024
e43d66b
Adding total time elapsed while running tests
IanTrudel Apr 29, 2024
d8a481e
Summary now returns a record summary
IanTrudel Apr 29, 2024
209c837
Add UTR for the Unicon Unit Testing Framework
IanTrudel May 25, 2024
5717eb0
runtime: don't change string in place
Jafaral Feb 26, 2025
562e352
Merge pull request #509 from Jafaral/fix-listen
Don-Ward Feb 26, 2025
9c438f7
Merge pull request #507 from IanTrudel/unit-test
Jafaral Mar 4, 2025
835b046
Add LSIF functionality and rename workspace.icn to file_handler.icn
nshapiro4 Feb 28, 2025
45724c7
Merge pull request #510 from nshapiro4/lsif-implementation
Jafaral Mar 7, 2025
34c5c30
tests: enable coexpr and lib tests
Jafaral Mar 12, 2025
c6eadc8
uni: add missing file
Jafaral Mar 12, 2025
e6ac4ea
Merge pull request #511 from Jafaral/unittest
Don-Ward Mar 12, 2025
26f7177
Add symbol and folding request handling
nshapiro4 Mar 13, 2025
7f8e566
Merge pull request #512 from nshapiro4/lsp-expansion
Jafaral Mar 15, 2025
1ba3cdc
Add log level change notification to ULSP
nshapiro4 Mar 20, 2025
c45a272
Merge pull request #513 from nshapiro4/lsp-expansion
Jafaral Mar 21, 2025
03e5379
Add a -printAST option to the compiler
Don-Ward Mar 24, 2025
d2c329f
Merge pull request #514 from Don-Ward/printAST
Jafaral Mar 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 60 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
strategy:
matrix:
cfg:
- { os: windows-latest, name: 'Windows 64-bit', pkg: 'Windows_64-bit', opt: '--enable-werror' }
- { os: windows-latest, name: 'Windows 64-bit', pkg: 'Windows_64-bit', opt: '--disable-iconc --enable-werror' }
#- { os: windows-latest, name: 'Windows 32-bit', opt: '--build=i686-w64-mingw32 --host=i686-w64-mingw32' }

defaults:
Expand Down Expand Up @@ -79,7 +79,8 @@ jobs:
strategy:
matrix:
cfg:
- { os: macos-13, name: 'macOS', opt: '--enable-werror CC=clang CXX=clang++' }
- { os: macos-13, name: 'macOS x86', opt: '--enable-werror CC=clang CXX=clang++' }
- { os: macos-latest, name: 'macOS arm', opt: 'CC=clang CXX=clang++' }
steps:
- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -125,7 +126,7 @@ jobs:
case "${{ matrix.cfg.os }}" in
ubuntu*|debian*)
apt-get update -q -y
DEBIAN_FRONTEND="noninteractive" apt-get install -q -y build-essential make autotools-dev libc6 libgcc1 libgl1-mesa-glx
DEBIAN_FRONTEND="noninteractive" apt-get install -q -y build-essential make autotools-dev libc6 libgcc1 libgl1-mesa-dev
DEBIAN_FRONTEND="noninteractive" apt-get install -q -y libssl-dev libx11-dev libjpeg-dev libpng-dev libglu1-mesa-dev libxft-dev
DEBIAN_FRONTEND="noninteractive" apt-get install -q -y libopenal-dev libalut-dev libogg-dev libvorbis-dev unixodbc-dev libfreetype6-dev
;;
Expand Down Expand Up @@ -173,15 +174,21 @@ jobs:
strategy:
matrix:
platform:
- { arch: aarch64 }
- { arch: armv7 }
- { arch: aarch64 } # emulated
- { arch: armv7 } # emulated
- { arch: riscv64 } # emulated
- { arch: x86 }
steps:
- name: Install extra dependencies
shell: 'sh'
run: |
sudo apt update && sudo apt install -y binfmt-support

- name: alpine
uses: jirutka/setup-alpine@v1
with:
arch: ${{ matrix.platform.arch }}
branch: v3.19
branch: v3.20
packages: >
build-base
diffutils
Expand Down Expand Up @@ -225,13 +232,15 @@ jobs:
- { os: ubuntu-latest, name: 'Heap Test', opt: '--enable-debugheap --enable-verifyheap --enable-werror' }
- { os: ubuntu-latest, name: 'Thin Build', opt: '--enable-thin --enable-werror' }
- { os: ubuntu-latest, name: 'Dev Mode', opt: '--enable-devmode' }
- { os: ubuntu-24.04-arm, name: 'Ubuntu ARM', opt: '--enable-werror' }
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install dependencies
run: |
sudo apt-get update -q -y
sudo apt install -y binfmt-support
if [[ "${{ matrix.cfg.name }}" = "Ubuntu 32-bit" ]]
then
# Install tools to cross compile 32-bit
Expand Down Expand Up @@ -270,6 +279,51 @@ jobs:
cat unicon-config.log
cat unicon-features.log

FreeBSD:
runs-on: ubuntu-latest
name: FreeBSD

steps:
- uses: actions/checkout@v4
- name: Start FreeBSD VM
id: vm
uses: vmactions/freebsd-vm@v1
with:
usesh: true # default shell is csh, switch to sh
prepare: |
pkg install -y -f autoconf gmake lang/gcc git

- name: Configure
shell: freebsd {0}
run: |
cd $GITHUB_WORKSPACE
git config --global --add safe.directory $GITHUB_WORKSPACE
./configure

- name: Make
shell: freebsd {0}
run: cd $GITHUB_WORKSPACE && gmake

- name: HtmlDoc
shell: freebsd {0}
run: cd $GITHUB_WORKSPACE && gmake htmldoc

- name: Test
shell: freebsd {0}
run: cd $GITHUB_WORKSPACE && gmake Test

- name: TestReport
shell: freebsd {0}
run: cd $GITHUB_WORKSPACE && gmake -C tests Report

- name: Summary
shell: freebsd {0}
run: |
cd $GITHUB_WORKSPACE
cat unicon-config.log
cat unicon-features.log


DebianPkg:
runs-on: ${{ matrix.cfg.os }}
name: ${{ matrix.cfg.name }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
strategy:
matrix:
cfg:
- { os: windows-latest, name: 'Windows_64-bit', opt: '' }
- { os: windows-latest, name: 'Windows_64-bit', opt: '--disable-iconc' }
#- { os: windows-latest, name: 'Windows_32-bit', opt: '--build=i686-w64-mingw32 --host=i686-w64-mingw32' }

defaults:
Expand Down
17 changes: 15 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ Most of these libraries are listed below for common Linux distibutions.

Debian/Ubuntu:
```
apt install libgl1-mesa-glx libssl-dev libx11-dev libjpeg-dev libpng-dev libglu1-mesa-dev
apt install libgl1-mesa-dev libssl-dev libx11-dev libjpeg-dev libpng-dev libglu1-mesa-dev
libxft-dev libopenal-dev libalut-dev libogg-dev libvorbis-dev unixodbc-dev
libfreetype6-dev
```
Expand All @@ -97,7 +97,7 @@ dnf install libjpeg-turbo-devel libpng-devel libX11-devel mesa-libGL-devel mesa-
Go into the Unicon directory and run:
```
./configure
make
make -j
```
After that you can add `unicon/bin` to the $PATH environment variable or install Unicon instead:
```
Expand All @@ -115,6 +115,19 @@ explicitly set the compiler as follows:
If you want access to the graphics facilities of Unicon, you also need to download
and install the XQuartz package from https://www.xquartz.org/.

### *BSD

installl build dependencies. Make sure to use GNU `gmake` when building.
```
pkg install -y -f autoconf gmake lang/gcc git
```

Configure, make, and optionally install unicon:
```
./configure
gmake -j
gmake install
```

### Windows
There are two possibilities depending on the choice of the C runtime library. You can choose
Expand Down
Loading