• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

JuliaLang / julia / #37918
77%

Build:
DEFAULT BRANCH: master
Ran 29 Sep 2024 11:24AM UTC
Jobs 1
Files 360
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

28 Sep 2024 11:02PM UTC coverage: 86.484% (-0.8%) from 87.243%
#37918

push

local

web-flow
add --trim option for generating smaller binaries (#55047)

This adds a command line option `--trim` that builds images where code
is only included if it is statically reachable from methods marked using
the new function `entrypoint`. Compile-time errors are given for call
sites that are too dynamic to allow trimming the call graph (however
there is an `unsafe` option if you want to try building anyway to see
what happens).

The PR has two other components. One is changes to Base that generally
allow more code to be compiled in this mode. These changes will either
be merged in separate PRs or moved to a separate part of the workflow
(where we will build a custom system image for this purpose). The branch
is set up this way to make it easy to check out and try the
functionality.

The other component is everything in the `juliac/` directory, which
implements a compiler driver script based on this new option, along with
some examples and tests. This will eventually become a package "app"
that depends on PackageCompiler and provides a CLI for all of this
stuff, so it will not be merged here. To try an example:

```
julia contrib/juliac.jl --output-exe hello --trim test/trimming/hello.jl
```

When stripped the resulting executable is currently about 900kb on my
machine.

Also includes a lot of work by @topolarity

---------

Co-authored-by: Gabriel Baraldi <baraldigabriel@gmail.com>
Co-authored-by: Tim Holy <tim.holy@gmail.com>
Co-authored-by: Cody Tapscott <topolarity@tapscott.me>

2 of 10 new or added lines in 4 files covered. (20.0%)

1269 existing lines in 41 files now uncovered.

77375 of 89467 relevant lines covered (86.48%)

15490193.44 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
97.32
0.0% stdlib/LinearAlgebra/src/blas.jl
2
36.11
0.0% stdlib/LinearAlgebra/src/lbt.jl
5
74.56
-3.42% base/experimental.jl

Uncovered Existing Lines

Lines Coverage ∆ File
1
86.98
-0.47% base/indices.jl
1
99.09
-0.18% base/complex.jl
1
50.0
-6.25% base/traits.jl
1
95.94
0.0% stdlib/LinearAlgebra/src/diagonal.jl
1
66.67
-6.67% stdlib/OpenBLAS_jll/src/OpenBLAS_jll.jl
1
95.61
-0.88% base/version.jl
1
75.68
-2.7% base/gcutils.jl
1
72.22
-2.78% stdlib/p7zip_jll/src/p7zip_jll.jl
1
86.41
0.0% base/boot.jl
1
90.87
-0.48% base/abstractdict.jl
2
92.83
-0.1% stdlib/LinearAlgebra/src/triangular.jl
2
95.15
-0.23% stdlib/Test/src/Test.jl
2
83.85
-1.24% stdlib/LinearAlgebra/src/adjtrans.jl
3
86.85
-0.33% base/reflection.jl
3
86.94
-0.54% base/gmp.jl
4
89.83
-0.47% base/multidimensional.jl
5
64.71
-14.71% base/ordering.jl
6
88.3
0.31% base/show.jl
7
81.82
-12.73% base/idset.jl
8
83.51
-4.26% base/essentials.jl
8
93.31
-0.75% base/array.jl
8
88.57
-4.44% base/floatfuncs.jl
9
61.78
-5.73% base/libc.jl
10
94.81
-4.33% base/bitset.jl
15
77.85
-3.12% base/float.jl
16
85.56
-2.47% base/mpfr.jl
16
50.0
-18.6% base/rounding.jl
17
37.5
-13.66% base/env.jl
18
93.68
-0.01% stdlib/LinearAlgebra/src/tridiag.jl
18
93.96
0.28% base/strings/io.jl
22
74.89
-1.01% base/loading.jl
45
50.97
-4.13% base/timing.jl
48
87.43
-8.38% base/toml_parser.jl
51
58.74
-35.82% base/abstractset.jl
56
43.48
-35.05% base/sysinfo.jl
57
33.06
-47.11% base/summarysize.jl
77
22.12
-68.86% stdlib/InteractiveUtils/src/macros.jl
79
40.25
-49.69% stdlib/InteractiveUtils/src/InteractiveUtils.jl
167
54.37
-40.52% base/set.jl
201
33.86
-62.97% stdlib/InteractiveUtils/src/codeview.jl
279
57.0
-39.0% base/sort.jl
Jobs
ID Job ID Ran Files Coverage
1 #37918.1 29 Sep 2024 11:24AM UTC 360
86.48
Source Files on build #37918
  • Tree
  • List 360
  • Changed 276
  • Source Changed 0
  • Coverage Changed 74
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 97ecdb85 on github
  • Prev Build on master
  • Next Build on master
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc