#EAS for Adams, #CO; #Weld, #CO: National Weather Service: #TORNADO WARNING in this area until 6:15 PM MDT. Take shelter now in a basement or an interior room on the lowest floor of a sturdy building. If you are outdoors, in a mobile home, or in a vehicle, move to the closest substantial shelter and protect yourself from flying debris. Check media. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#EAS for Adams, ##CO; ##Weld, ##CO: National Weather Service: #TORNADO WARNING in this area until 6:15 PM MDT. Take shelter now in a basement or an interior room on the lowest floor of a sturdy building. If you are outdoors, in a mobile home, or in a vehicle, move to the closest substantial shelter and protect yourself from flying debris. Check media. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#EAS for Logan, #CO; #Morgan, #CO; #Weld, #CO: National Weather Service: SEVERE THUNDERSTORM WARNING in effect for this area until 5:30 PM MDT for DESTRUCTIVE three inch size hail. Take shelter in a sturdy building, away from windows. People and animals outdoors will be severely injured. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#EAS for Logan, #CO; #Weld, #CO: National Weather Service: #TORNADO WARNING in this area until 7:15 PM MDT. Take shelter now in a basement or an interior room on the lowest floor of a sturdy building. If you are outdoors, in a mobile home, or in a vehicle, move to the closest substantial shelter and protect yourself from flying debris. Check media. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#EAS for Logan, #CO; #Weld, #CO: National Weather Service: #TORNADO WARNING in this area until 7:15 PM MDT. Take shelter now in a basement or an interior room on the lowest floor of a sturdy building. If you are outdoors, in a mobile home, or in a vehicle, move to the closest substantial shelter and protect yourself from flying debris. Check media. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#EAS for Morgan, #CO; #Weld, #CO: National Weather Service: #TORNADO WARNING in this area until 5:15 PM MDT. Take shelter now in a basement or an interior room on the lowest floor of a sturdy building. If you are outdoors, in a mobile home, or in a vehicle, move to the closest substantial shelter and protect yourself from flying debris. Check media. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#EAS for Adams, ##CO; ##Weld, ##CO: National Weather Service: #TORNADO WARNING in this area until 3:00 PM MDT. Take shelter now in a basement or an interior room on the lowest floor of a sturdy building. If you are outdoors, in a mobile home, or in a vehicle, move to the closest substantial shelter and protect yourself from flying debris. Check media. Source: NWS Denver CO** DO NOT RELY ON THIS FEED FOR LIFE SAFETY, SEEK OUT OFFICIAL SOURCES ***
#NASA 📆 April 2020 #Micrometeoroids and #SpaceDebris will strike an #orbiting Station throughout its lifetime, as is evident on the #ISS, where several #solar arrays show #damage caused by micrometeoroids. The #hope is that the #meteoroids will not hit any #critical areas and cause #emergency #evacuation of the structure. Damage from meteoroids may include damage to #habitation 💤 modules.
#Welding is one of the best ways to create hermetic seals. The ability to #weld these structures without waiting for new equipment may limit the #risks to #astronauts in the event of damage.This ability for rapid #repair may also become more significant as orbiting Stations such as #Gateway move further from #Earth and the associated #cost of shipping parts increases. It is important to #develop these technologies now.
#NASA has recently funded work on #development of #spacewelding 🎇 capabilities https://ntrs.nasa.gov/api/citations/20200002259/downloads/20200002259.pdf
#NASA #micrometeoroids #spacedebris #orbiting #iss #solar #damage #hope #meteoroids #critical #emergency #evacuation #habitation #welding #weld #risks #astronauts #repair #gateway #earth #cost #develop #development #spacewelding #humanspaceflightsecurity #spacemaintenance #spaceagency
My biggest difficulty with linkers is… understanding their errors! I know I'm not alone.
That's why `weld` must be exemplary on errors, period.
Please welcome `weld-errors`, https://github.com/Hywan/weld/compare/b7fde2dbf9fb523dccb041063bfd030967f5e814...4a41bd666c6dc8b76a59bf7c127247312e84127e.
What's new?
* Any error contains a code, a (formatted) message, and a help message,
* `weld` pretty prints those errors,
* `weld --explain <error_code>` gives detailed diagnostics,
* Automatic awesome documentation.
See the screenshots.
#weld #rustlang #error #diagnostics #friendly #linker
`weld` now takes a `--target <triple>` argument. `weld` is designed to be cross-platform entirely, hence it's legit to be able to specify a target triple, https://github.com/Hywan/weld/commit/b7fde2dbf9fb523dccb041063bfd030967f5e814.
Based on the provided target triple, `weld` will use a particular linker strategy (e.g Elf, MachO, Coff, Wasm etc.).
$ weld --target x86-64-unknown-linux <input> -o <output> # = Elf
$ weld --target aarch64-apple-darwin <input> -o <output> # = MachO
Cool huh?
#weld #rustlang #targetlexicon #crossplatform #linker
ˋweld-object` is now able to disassemble x86 instructions when debugging an object file (with the ˋdebug-x86` feature turned on), https://github.com/Hywan/weld/commit/043e16d731108ac1a7cade05de209a18e0591959.
It’s really handy :-)!
It’s based on the excellent iced-x86 crate, https://github.com/icedland/iced.
❓📣 If you know an equivalent for ARM, please let me know!
#weld #rustlang #disassembly #assembly #x86
A little improvement on the scheduler to make it more system friendly.
`ThreadPool` no longer takes a ˋpool_sizeˋ but a ˋdesired_pool_sizeˋ. The system might not have all the expected available parallelism resources. Maybe it is busy, maybe it is limited. So now, the pool size is clamped, https://github.com/Hywan/weld/commit/8590fa4f5c80b5c827c0e928226d5b5bbd231f2c. The documentation provides more details.
Hopefully Rust has a standard function for that: `std::thread::available_parallelism`. How neat!
To be fast, weld needs to link objects concurrently & simultaneously. A few days ago, I’ve implemented a simple `ThreadPool` type, in the new `weld-scheduler` crate, https://github.com/Hywan/weld/blob/ea792c808887306acc6985bd71910fc35051a530/crates/scheduler/src/lib.rs.
It’s able to send `Future`s on various threads where async workers execute them.
It’s done with smol, a light & flexible set of crates to implement custom async runtimes, https://github.com/smol-rs/smol.
Next step: “Linker Strategy” to link things for real!
#weld #rustlang #parallelism #concurrency #thread
Later on, I've added a new patch to make the `FileReader` trait thread-safe, https://github.com/Hywan/weld/commit/3078ab77176b333fb9db0820c24f7c0d09ac23f8.
Just a detail, because something funnier is coming :-).
To be able to link many object files, we must be able to read them! Of course, there is `std::fs`, but we want to be fast right? So let's use mmap.
Oh, it's not available everywhere. So let's use a file picker, don't you mind, which will select the best implementation for your platform.
And here is `weld-file`, https://github.com/Hywan/weld/compare/7556abeb5d80f015e92634d8b9a6c1494e815b9e...f19d8bae61ef61c443d974bcf3d0a3101a69e7b3.
So far, it supports `std::fs` and `mmap`, more is coming
There is a `FileReader` trait, that reads the content async.
#weld #rustlang #file #mmap #fs