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

Upgrade Julia from 1.6 to 1.10 #2000

Draft
wants to merge 9 commits into
base: main
Choose a base branch
from
Draft

Upgrade Julia from 1.6 to 1.10 #2000

wants to merge 9 commits into from

Conversation

LilithHafner
Copy link
Member

When running locally I got a bunch of "closewrite" not defined errors and the website didn't renter properly. After running

julia --project -e 'using Pkg; Pkg.upgrade_manifest(); Pkg.update()'

Everything worked fine. This PR commits the changes produced by running that line.

Before:

x@fedora:~/.julia/dev/www.julialang.org$ git checkout main Manifest.toml
Updated 1 path from 7e9e83908
x@fedora:~/.julia/dev/www.julialang.org$ julia --project
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.10.0 (2023-12-25)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> import Pkg

julia> Pkg.instantiate()
┌ Warning: The active manifest file is an older format with no julia version entry. Dependencies may have been resolved with a different julia version.
└ @ ~/.julia/dev/www.julialang.org/Manifest.toml:0
Precompiling project...
  8 dependencies successfully precompiled in 9 seconds. 10 already precompiled. 1 skipped during auto due to previous errors.
  1 dependency had output during precompilation:
┌ Franklin
│  ✘ Couldn't find node.js (``node` -v` failed).
│  → It is required for pre-rendering KaTeX and highlight.js but is not necessary to run Franklin (cf docs).
│  ✘ Couldn't find highlight.js (``node` -e "require('highlight.js')"` failed).
│  → It is required for pre-rendering highlight.js but is not necessary to run Franklin (cf docs).
│  → After installing any missing component, please re-build the package (cf docs).
│  WARNING: method definition for #reprocess#167 at /home/x/.julia/packages/Franklin/X69Nd/src/converter/latex/latex.jl:74 declares type variable T but does not use it.
└  

julia> using Franklin

julia> serve()
  Activating project at `~/.julia/dev/www.julialang.org`
→ Initial full pass...
→ Starting the server...
✓ LiveServer listening on http://localhost:8000/ ...
  (use CTRL+C to shut down)
WARNING: both IOExtras and Base export "closewrite"; uses of it in module ConnectionPool must be qualified
WARNING: both IOExtras and Base export "closewrite"; uses of it in module Servers must be qualified
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
^C┌ Error: error handling request
│   exception =
│    UndefVarError: `closewrite` not defined
│    Stacktrace:
│     [1] (::HTTP.Servers.var"#13#14"{LiveServer.var"#12#17"{HTTP.Handlers.RequestHandlerFunction{LiveServer.var"#10#15"{Bool, LiveServer.SimpleWatcher}}}, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}, HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.ConnectionPool.Transaction{Sockets.TCPSocket}}})()
│       @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:411
└ @ HTTP.Servers ~/.julia/packages/HTTP/hbs7O/src/Servers.jl:413
ERROR: UndefVarError: `closewrite` not defined
Stacktrace:
 [1] close(t::HTTP.ConnectionPool.Transaction{Sockets.TCPSocket})
   @ HTTP.ConnectionPool ~/.julia/packages/HTTP/hbs7O/src/ConnectionPool.jl:424
 [2] serve(fw::LiveServer.SimpleWatcher; host::String, port::Int64, dir::String, verbose::Bool, coreloopfun::Franklin.var"#236#239"{…}, inject_browser_reload_script::Bool, launch_browser::Bool)
   @ LiveServer ~/.julia/packages/LiveServer/4Y1VV/src/server.jl:331
 [3] serve (repeats 2 times)
   @ ~/.julia/packages/LiveServer/4Y1VV/src/server.jl:268 [inlined]
 [4] 
   @ Franklin ~/.julia/packages/Franklin/X69Nd/src/manager/franklin.jl:132
 [5] serve()
   @ Franklin ~/.julia/packages/Franklin/X69Nd/src/manager/franklin.jl:49
 [6] top-level scope
   @ REPL[4]:1
Some type information was truncated. Use `show(err)` to see complete types.

After:

x@fedora:~/.julia/dev/www.julialang.org$ julia --project
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.10.0 (2023-12-25)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> import Pkg

julia> Pkg.instantiate()

julia> using Franklin

julia> serve()
  Activating project at `~/.julia/dev/www.julialang.org`
→ Initial full pass...
→ Starting the server...
✓ LiveServer listening on http://localhost:8000/ ...
  (use CTRL+C to shut down)
^C
⋮ shutting down LiveServer… ✓
→ Use Pkg.activate() to go back to your main environment.        

Copy link

Once the build has completed, you can preview your PR at this URL: https://julialang.netlify.app/previews/PR2000/ in ~15 minutes

@giordano
Copy link
Contributor

I think you want to either use julia v1.6 locally, or update

to v1.10.0, otherwise you break the deployment here.

@giordano
Copy link
Contributor

otherwise you break the deployment here.

Which is what just happened: https://github.com/JuliaLang/www.julialang.org/actions/runs/7371299165/job/20058535468?pr=2000#step:10:25

@LilithHafner
Copy link
Member Author

Seems like the setup-julia action reads 1.10 as 1.1

https://github.com/JuliaLang/www.julialang.org/actions/runs/7371401678/job/20058748837?pr=2000#step:8:21

julia version 1.1.1

Co-authored-by: Mosè Giordano <giordano@users.noreply.github.com>
@LilithHafner LilithHafner changed the title Upgrade manifest and update deps Upgrade Julia from 1.6 to 1.10 Dec 31, 2023
@giordano
Copy link
Contributor

Which is what just happened: JuliaLang/www.julialang.org/actions/runs/7371299165/job/20058535468?pr=2000#step:10:25

Ok, that specific error is still happening now after upgrading to Julia v1.10.0, but using Julia v1.6 with a manifest for Julia v1.10 caused loads of warnings during precompilation: https://github.com/JuliaLang/www.julialang.org/actions/runs/7371299165/job/20058535468?pr=2000#step:9:23.

I guess updating some of the packages in the environment screwed up building one of the pages.

@LilithHafner
Copy link
Member Author

Strange. When I run julia --project -e 'import Pkg; Pkg.instantiate(); using Franklin; serve()' locally, the page http://localhost:8000/blog/2019/01/fluxdiffeq/ looks fine and I get no errors. I don't doubt that if the preview fails then deployment will fail too, though.

@LilithHafner
Copy link
Member Author

The issue is that Franklin doesn't know about the math language and so, in old versions, renders

```math
u' = A*u^3
```

as generic text while in new versions it gives a warning which we then identify and escalate to an error.

@LilithHafner
Copy link
Member Author

Removing this tag should be a no-op from a served-html perspective. This should be verified by comparing u' = A*u^3 on the page https://julialang.org/blog/2019/01/fluxdiffeq/ vs on the preview page once the preview loads.

@LilithHafner
Copy link
Member Author

The page https://julialang.netlify.app/previews/pr2000/blog/ renders poorly now. Most blog posts are untitled.

@ViralBShah
Copy link
Member

@tlienart Can we request you to take a look here?

@ViralBShah ViralBShah marked this pull request as draft April 9, 2024 13:45
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.

None yet

4 participants