/post test
Announcing the public preview of GitHub Advanced Security for Azure DevOps
GitHub Advanced Security for Azure DevOps is now available for public preview, making GitHub’s same application security testing tools natively available on Azure Repos. ⌘ Read more
How GitHub Copilot is getting better at understanding your code
With a new Fill-in-the-Middle paradigm, GitHub engineers improved the way GitHub Copilot contextualizes your code. By continuing to develop and test advanced retrieval algorithms, they’re working on making our AI tool even more advanced. ⌘ Read more
Boost Your Local Testing Game With LambdaTest Tunnel Docker Extension
Learn how the LambdaTest Tunnel Docker Extension can streamline your testing workflow. ⌘ Read more
I have not used AI much at all, I have not paid any attention to it. But today I decided to give stablediffusion a test run, I do only have a 1080 card, so it took some tweaking to output 512x256 images, and I must say it works pretty well. I also had to get one of the memory optimized versions. Fun to test.
@funbreaker@twtxt.net no need to feel dumb. This is why testing is nice! That being said - ill make a fix for that too :) this is why I appreciate you taking the time to test, because we have now found many things to improve already 😀
@funbreaker@twtxt.net I tested now against twtxt with a account I created -it segfaulted if you had a / at the end of the server url.. My bad.. works if you remove the slash. I will fix it in the client so that it removes the slash if it’s in the server url.
@funbreaker@twtxt.net I have pushed a fix now to git, I now got rid of the error when I use it on my end. I will create a test account on twtxt later tonight (after dinner and all that) if needed. If you test the latest on your end before that - let me know :) And thanks for your patience.
@lyse@lyse.isobeef.org @prologic@twtxt.net it seems like the ssl verification works now, I enabled it - but also added another option as well that I now saw in the docs, and now it did not fail on my end (which it did before). I will add a ‘enable ssl verification’ checkbox (checked by default) so that those who do not need or want it for testing and such can disable it if they want.
@prologic@twtxt.net yes I will test it :) cloudflare is something I do not have on my end, so I never thought of that, so glad you mention that as a potential issue to solve. Ill check on it.
@funbreaker@twtxt.net okay, so something goes wrong in the response you get. Hm. I see you use twtxt, ill check against there tomorrow and see if I can find the issue (midnight here now). Also ill work on better error output as well when I find the problem.
Thank you for testing!
That reminds me about something, I want to test if I can compile my desktop client on my mangopi riscv board with debian. That would be cool to run on it.
@adi@twtxt.net Nothing really, I tried it in a VM a long time ago, never got to install it on HW, might give it a try again soon (I enjoy to set up my machines with various OS’es and test them etc).
First test post from GTK UI!
Preventing the Unknown: Genetic Testing with Dr. Stuart Kim & Neil deGrasse Tyson ⌘ Read more
Enabling a No-Code Performance Testing Platform Using the Ddosify Docker Extension
Learn about the Ddosify Docker Extension and how use it for performance testing. ⌘ Read more
Low-tech Magazine: The Comic
This is a test to check the margin alignment This is a test to check the margin alignment This is a test to check the margin alignment This is a test to check the margin alignment
Also - did a quick test on linux, it gave a lot of errors with the rapidjson library, so I have to find a way to work around that. I think I’ll pull the latest, then compile it - and then point to that - instead of installing the rapidjson-dev package. Maybe that’ll work.
Docker and Ambassador Labs Announce Telepresence for Docker, Improving the Kubernetes Development Experience
We’re happy to announce Telepresence for Docker, simplifying how teams develop and test on Kubernetes for faster app delivery. ⌘ Read more
@shreyan@twtxt.net first time I’ve seen someone mention gnu taler. Been following it since it was announced:) never used for anything other then testing though.
Okay, so it seems like the label\text I use for statuses does not like the strings from posts.
Especially if they contain html tags and such (which the often do), it just breaks the text.
I wonder what I can do with that.. I kinda want to not have html tags in the json reply.
Have to think a bit about how to solve it. Took a while to figure it out, the text was just garbled.
I created some long example strings with regular letters and such, to see if X number of posts would show up, and they did, but when I then replace my test strings with text from json - it goes all wrong again.
Application security orchestration with GitHub Advanced Security
Learn how teams can leverage the power of GitHub Advanced Security’s code scanning and GitHub Actions to integrate the right security testing tools at the right time. ⌘ Read more
My cheap alternative to Ngrok
Since GoBlog has an Auto-HTTPS feature that can automatically retrieve HTTPS certificates via ACME from e.g. Let’s Encrypt, I need a public IP address with which I can reach my test instance of GoBlog via port 80 and 443. ⌘ Read more
So, progress is going smooth!
No I have compiled libcurl with openssl, and I fetch token already.
so next is creating three functions - one for posting, one for the login and fetching token (now I have just testing login when application starts), and the fetch the timeline. Then I need the gui.
Progressed faster in 2 hours in c++ then days with rust…
Test from ftlk in rust.
@bender@twtxt.net are you testing that from another server?
Do I make it discoverable by enabling the ‘open profile’ setting? or do you mean something else?
@prologic@twtxt.net Running out of time for tonight, but I will test it tomorrow! :) I’ll let you know how it goes tomorrow night.
@prologic@twtxt.net Ah, thank you! I will test this after work today. Thank you!
@bender@twtxt.net Yeah, that is correct :) I use it for testing, but I set it up as any desktop system as close as I can, with all the things I usually use.
I’m really excited about riscv - I have another board as well, which is more like a arduino, but I never got that one to do anything useful, but the mangopo - is as you say more usefull since it’s just like a raspberrypi zero, and works very well.
But I am looking forward to that day I can have a proper desktop system (or laptop) with riscv. There was a board released some time ago that let you do that, but the price was a bit too high for me .So now I wait for the next thing to come out.
I bought a 256GB usb a couple of weeks ago, I now want a OS on it with persistent storage.
I only have 1 drive on my newest laptop at the moment, so I do not want to dualboot and such, so a os on the usb stick is a nice option.
Tonight I’m testing NomadBSD - https://nomadbsd.org/index.html
Will flash it in a couple of minutes, hope it boots fine with my hardware.
just found out about wiregui - https://github.com/Devsfy/wiregui
I have to test this one.
Glad I got my test server that I can play around with. Been messing with docker today, and got nextcloud all set up the way I want, so now I can do the same on my VPS. Getting the hang of this now.
Managing tests (breaking them, fixing them) in my map for code: https://merveilles.town/@akkartik/109742488349122478
@prologic@twtxt.net @movq@www.uninformativ.de this is the default behavior of pass on my machine:
I add a new password entry named example and then type pass example. The password I chose, “test”, is displayed in cleartext. This is very bad default behavior. I don’t know about the other clis you both mentioned but I’ll check them out.
The browser plugin browserpass does the same kind of thing, though I have already removed it and I’m not going to reinstall it to make a movie. Next to each credential there’s an icon to copy the username to the clipboard, an icon to copy the password to the clipboard, and then an icon to view details, which shows you everything, including the password, in cleartext. The screencap in the Chrome store is out of date; it doesn’t show the offending link to show all details, which I know is there because I literally installed it today and played with it.
do anyone know anything about wireguard? I have a VPS, which runs nginx. If I then want tjat to host something from my house, do I then set up vps as wiregiard server, connect from my house to it - and then serve the wireguard client? or do it the other way around? I think I have to look into it this weekend. would be a nice way to test out things.
@prologic@twtxt.net test
@prologic@twtxt.net test
Erlang Solutions: Building a Remote Control Car from Scratch Using Elixir
IntroductionElixir is undoubtedly one of the most comprehensive full stack languages available, offering battle-tested reliability and fault-tolerance on the backend. This is thanks to its origins in Erlang, the BEAM VM and OTP, powerful and agile frontend development thanks to LiveView and the ability to write to hardware with Nerves (not to mention the exciting developments happening in the mac … ⌘ Read more
Testing that mentions are expanding in twtwt: @win0err@kolesnikov.se
Yeah, I figured it wouldn’t have much testing. I’m watching Wisconsin turn a sure 10-0 lead to a 7-3 deficit against Okie State… They seem pretty bad.
I suspect it hasn’t had much testing.
Just setting up a quick Mastodon instance to test some compatibility is a pain. Using test accounts on public instances is also unreliable, because many instances are already overloaded and I don’t want to create spam. So I got a new DigitalOcean account with a $200 starter credit… ⌘ Read more
Tests usually cannot prove absence of defects. But they can show presence of defects I found a bug in SQLite | Hacker News
An interesting read about testing code using nullable states instead of mocks.
https://www.jamesshore.com/v2/projects/testing-without-mocks/testing-without-mocks
An interesting read about testing code using nullable states instead of mocks.
https://www.jamesshore.com/v2/projects/testing-without-mocks/testing-without-mocks
Ignite Realtime Blog: Help us translate Spark and Openfire!
We have started to experiment with an online tool that facilitates the process of translating Spark and Openfire. Both already have a bunch of translations, but none are complete.
I’m looking for people wanting to test the tool and/or provide translations. The aim is to make providing translations become so easy that little technological know-how is required.
If you’re interested, please sign up to [Ignite Realtime localizati … ⌘ Read more
WordPress implemented SQLite support! 😱 (Not merged into Core yet, but you’re able to test it.) ⌘ Read more
WordPress implemented SQLite support! 😱 (Not merged into Core yet, but you’re able to test it.) ⌘ Read more
I should write better tests or at least create some automatic tests. 😬 (But ActivityPub is so complicated to test!) ⌘ Read more
$name$ and then dispatch the hashing or checking to its specific format.
Hold up now, that example hash doesn’t have a
$prefix!
Well for this there is the option for a hash type to set itself as a fall through if a matching hash doesn’t exist. This is good for legacy password types that don’t follow the convention.
func (p *plainPasswd) ApplyPasswd(passwd *passwd.Passwd) {
passwd.Register("plain", p)
passwd.SetFallthrough(p)
}
https://github.com/sour-is/go-passwd/blob/main/passwd_test.go#L28-L31
$name$ and then dispatch the hashing or checking to its specific format.
Hold up now, that example hash doesn’t have a
$prefix!
Well for this there is the option for a hash type to set itself as a fall through if a matching hash doesn’t exist. This is good for legacy password types that don’t follow the convention.
func (p *plainPasswd) ApplyPasswd(passwd *passwd.Passwd) {
passwd.Register("plain", p)
passwd.SetFallthrough(p)
}
https://github.com/sour-is/go-passwd/blob/main/passwd_test.go#L28-L31
$name$ and then dispatch the hashing or checking to its specific format.
Here is an example of usage:
func Example() {
pass := "my_pass"
hash := "my_pass"
pwd := passwd.New(
&unix.MD5{}, // first is preferred type.
&plainPasswd{},
)
_, err := pwd.Passwd(pass, hash)
if err != nil {
fmt.Println("fail: ", err)
}
// Check if we want to update.
if !pwd.IsPreferred(hash) {
newHash, err := pwd.Passwd(pass, "")
if err != nil {
fmt.Println("fail: ", err)
}
fmt.Println("new hash:", newHash)
}
// Output:
// new hash: $1$81ed91e1131a3a5a50d8a68e8ef85fa0
}
This shows how one would set a preferred hashing type and if the current version of ones password is not the preferred type updates it to enhance the security of the hashed password when someone logs in.
https://github.com/sour-is/go-passwd/blob/main/passwd_test.go#L33-L59
$name$ and then dispatch the hashing or checking to its specific format.
Here is an example of usage:
func Example() {
pass := "my_pass"
hash := "my_pass"
pwd := passwd.New(
&unix.MD5{}, // first is preferred type.
&plainPasswd{},
)
_, err := pwd.Passwd(pass, hash)
if err != nil {
fmt.Println("fail: ", err)
}
// Check if we want to update.
if !pwd.IsPreferred(hash) {
newHash, err := pwd.Passwd(pass, "")
if err != nil {
fmt.Println("fail: ", err)
}
fmt.Println("new hash:", newHash)
}
// Output:
// new hash: $1$81ed91e1131a3a5a50d8a68e8ef85fa0
}
This shows how one would set a preferred hashing type and if the current version of ones password is not the preferred type updates it to enhance the security of the hashed password when someone logs in.
https://github.com/sour-is/go-passwd/blob/main/passwd_test.go#L33-L59
Erlang Solutions: Advent of Code 2022 – Every Puzzle Solved in Erlang
Day 1Christmas is getting closer and with that, the annual Advent of Code begins. For those who do not know, Advent of Code is a fun and inclusive event which provides a new programming puzzle every day. The fun is that these puzzles can be solved in any programming language and are accessible for varying levels of coding experience and skills. The real test is in your problem-solving. This year, we’ll be solving each of the problems in … ⌘ Read more
JMP: Writing a Chat Client from Scratch
There are a lot of things that go into building a chat system, such as client, server, and protocol. Even for only making a client there are lots of areas of focus, such as user experience, features, and performance. To keep this post a manageable size, we will just be building a client and will use an existing server and protocol (accessing Jabber network services using the XMPP protocol). We’ll make a practical GUI so we can test things, but not spend too much time on p … ⌘ Read more
November Extensions Roundup: Kubernetes Observability, API Testing, and More
Find out what’s new this month in the Docker Extension Marketplace! ⌘ Read more
The SCREAM Test
One of Lunduke’s Super-Amazing™ Programming Tips ⌘ Read more
I tested ALL the ROCKET PROPELLANTS I could find online ⌘ Read more
I’ll see if I have time tonight, I’ll take a backup of everything, then test a bit. I’ll let you know if I get stuck on anything. thank you for asking :)
Automate API Tests and Debug in Docker With Postman’s Newman Extension
Postman’s Newman Docker Extension helps you run, test, debug, and visualize Postman API calls. Learn how to use this powerful new extension and run collections in Docker Desktop. ⌘ Read more
Prosodical Thoughts: Mutation Testing in Prosody
This is a post about a new automated testing technique we have recently
adopted to help us during our daily development work on Prosody. It’s probably
most interesting to developers, but anyone technically-inclined should be able
to follow along!
If you’re unfamiliar with our project, it’s an open-source real-time messaging
server, built around the XMPP protocol. It’s used by many organizations and
self-hosting hobbyists, and also powers applications such as [Snikke … ⌘ Read more
RT by @mind_booster: „Thorn did not provide EURACTIV with details on the datasets and methods for their tests in time for publication.“ Shocking. 🙄 https://www.euractiv.com/section/digital/news/eu-assessment-of-child-abuse-detection-tools-based-on-industry-data/ href=”https://txt.sour.is/search?q=%23ChatControl”>#ChatControl**
„Thorn did not provide EURACTIV with details on the datasets and methods for their tests in time for publication.“ Shocking. 🙄 [euractiv.com/section/digital…](https://www.euractiv.com/section/digital/news/eu-assessment-of-child-abuse-detect … ⌘ Read more
September Extensions Roundup: Test APIs, Use Oracle SQLcl, and More
Find out what’s new this month in the Docker Extension Marketplace! Access InterSystems, test APIs, use Oracle SQLcl, and backup/share volumes — right from Docker Desktop. ⌘ Read more
Time Test
And that I can silence it without having or go through the full test announcing fire and carbon monox throughout the house.
And that I can silence it without having or go through the full test announcing fire and carbon monox throughout the house.
@movq@www.uninformativ.de test towers for rig equipment on the dock at our office :) the company I work for makes oilrig equipment. I work with simulator development for oilrigs etc.
last test i am done testing now
last test and if this does not work then I just have to run the git commands myself then
test again to see if it works
testing twtxt using jenny
@prologic@twtxt.net Error handling especially in Go is very tricky I think. Even though the idea is simple, it’s fairly hard to actually implement and use in a meaningful way in my opinion. All this error wrapping or the lack of it and checking whether some specific error occurred is a mess. errors.As(…) just doesn’t feel natural. errors.Is(…) only just. I mainly avoided it. Yesterday evening I actually researched a bit about that and found this article on errors with Go 1.13. It shed a little bit of light, but I still have a long way to go, I reckon.
We tried several things but haven’t found the holy grail. Currently, we have a mix of different styles, but nothing feels really right. And having plenty of different approaches also doesn’t help, that’s right. I agree, error messages often end up getting wrapped way too much with useless information. We haven’t found a solution yet. We just noticed that it kind of depends on the exact circumstances, sometimes the caller should add more information, sometimes it’s better if the callee already includes what it was supposed to do.
To experiment and get a feel for yesterday’s research results I tried myself on the combined log parser and how to signal three different errors. I’m not happy with it. Any feedback is highly appreciated. The idea is to let the caller check (not implemented yet) whether a specific error occurred. That means I have to define some dedicated errors upfront (ErrInvalidFormat, ErrInvalidStatusCode, ErrInvalidSentBytes) that can be used in the err == ErrInvalidFormat or probably more correct errors.Is(err, ErrInvalidFormat) check at the caller.
All three errors define separate error categories and are created using errors.New(…). But for the invalid status code and invalid sent bytes cases I want to include more detail, the actual invalid number that is. Since these errors are already predefined, I cannot add this dynamic information to them. So I would need to wrap them à la fmt.Errorf("invalid sent bytes '%s': %w", sentBytes, ErrInvalidSentBytes"). Yet, the ErrInvalidSentBytes is wrapped and can be asserted later on using errors.Is(err, ErrInvalidSentBytes), but the big problem is that the message is repeated. I don’t want that!
Having a Python and Java background, exception hierarchies are a well understood concept I’m trying to use here. While typing this long message it occurs to me that this is probably the issue here. Anyways, I thought, I just create a ParseError type, that can hold a custom message and some causing error (one of the three ErrInvalid* above). The custom message is then returned at Error() and the wrapped cause will be matched in Is(…). I then just return a ParseError{fmt.Sprintf("invalid sent bytes '%s'", sentBytes), ErrInvalidSentBytes}, but that looks super weird.
I probably need to scrap the “parent error” ParseError and make all three “suberrors” three dedicated error types implementing Error() string methods where I create a useful error messages. Then the caller probably could just errors.Is(err, InvalidSentBytesError{}). But creating an instance of the InvalidSentBytesError type only to check for such an error category just does feel wrong to me. However, it might be the way to do this. I don’t know. To be tried. Opinions, anyone? Implementing a whole new type is some effort, that I want to avoid.
Alternatively just one ParseError containing an error kind enumeration for InvalidFormat and friends could be used. Also seen that pattern before. But that would then require the much more verbose var parseError ParseError; if errors.As(err, &parseError) && parseError.Kind == InvalidSentBytes { … } or something like that. Far from elegant in my eyes.
I did a take home software engineering test for a company recently, unfortunately I was really sick (have finally recovered) at the time 😢 I was also at the same time interviewing for an SRE position (as well as Software Engineering).
Got the results of my take-home today and whilst there was some good feedback, man the criticisms of my work were harsh. I’m strictly not allowed to share the work I did for this take-home test, and I really can only agree with the “no unit tests” piece of the feedback, I could have done better there, but I was time pressured, sick and ran out of steam. I was using a lot of libraires to do the work so in the end found it difficult to actually think about a proper set of “Unit Tests”. I did write one (in shell) but I guess it wasn’t seen?
The other points were on my report and future work. Not detailed enough I guess? Hmmm 🤔
Am I really this bad? Does my code suck? 🤔 Have I completely lost touch with software engineering? 🤦♂️
hm, testing latest mobile client, seems like replies does not work. hmm.
testing
Just testing my new fancy twtwt client written in C
6 strategic ways to level up your CI/CD pipeline
From incorporating accessibility testing to implementing blue-green deployment models, here are six practical and strategic ways to improve your CI/CD pipeline. ⌘ Read more
Ignite Realtime Blog: Openfire 4.7.2 released
The Ignite Realtime Community is pleased to announce the release of Openfire version 4.7.2. This version fixes a number of bugs and signifies our efforts to produce a stable 4.7 series of Openfire whilst work continues on the next feature release 4.8.0.
A major highlight of this release is fixing of BOSH bugs found under load testing.
You can find [download artifacts](https://ign … ⌘ Read more
W3C announces Web 3.11 “Web for Workgroups”
“The original code name ‘Everything is an NFT now’ didn’t focus test as well as we thought.” ⌘ Read more
Coronavirus: faced with mounting costs, some ask whether China can afford to maintain mass testing
Extensive mass testing for Covid-19 is extracting a huge toll on regional finances, raising questions over the long-term sustainability of China’s zero-Covid policy. ⌘ Read more
Coronavirus: Indonesia urged to tighten curbs during 4th wave as cases of Omicron subvariants rise
On Tuesday, Indonesia had 2,167 new infections, with at least 143 cases of Omicron BA.4 and BA.5 – a number health experts said was ‘the tip of the iceberg’ due to a lack of testing. ⌘ Read more
Taiwan, US to hold first trade talks under new initiative
Taiwan’s top trade negotiator John Deng and deputy US trade representative Sarah Bianchi will meet virtually after Deng tested positive for Covid-19. ⌘ Read more
Chinese prototype a precursor to hypersonic passenger travel anywhere in the world in 2 hours, says team
Completion of all test flights by 2025 will allow the development of a passenger aircraft that can travel more than 6,000km at Mach 6: researchers. ⌘ Read more
Singapore’s return to tighter Covid rules cannot be ruled out, deputy PM Wong says
The financial hub loosened many pandemic-related rules, including scrapping testing for vaccinated travellers and gathering limits – now average daily infections have jumped to more than 5,500. ⌘ Read more
Coronavirus: Chinese factory hub Shenzhen shuts down Hong Kong border district for 3 days
Wholesale markets, public venues shut in Futian district, with some bus and subway lines suspended and window for Covid-19 test reports halved. ⌘ Read more
China’s space station may get the most precise clock in orbit – if it passes key test
Optical atomic clock will be delivered to Tiangong in October if it clears technical evaluation next week, according to scientist familiar with project. ⌘ Read more
World leaders seek united front for Ukraine at key summits as war rages
Back-to-back summits over the next week will test Western resolve to support Ukraine as rising geopolitical tensions and economic pain cast an increasingly long shadow. ⌘ Read more
North Korea approves ‘stronger war deterrent’ at key military meeting
North Korean leader Kim Jong-un wrapped up a key meeting with top military officials, amid growing speculation that Pyongyang could conduct its first nuclear test in five years. ⌘ Read more
US$156million Russian superyacht in Dubai –test for US, UAE close ties amid sanctions
The 98-metre Madame Gu is moored next to US$200 million megayacht owned by the state’s ruler as Western pressure mounts for US Gulf Arab ally to apply sanctions. ⌘ Read more
Shenzhen tightens Covid-19 controls with 48-hour negative test result required to use public transport after three new cases found
Shenzhen residents will need to present negative nucleic acid test results issued within 48 hours to take the subway, or travel by taxi and other public transport, according to a government notice issued on Thursday. ⌘ Read more
Hong Kong to include Korean in DSE university entrance exam from 2025 amid K-Culture boom
Hong Kong’s testing authority will allow students to submit scores from the Test of Proficiency in Korean in the foreign language category of the city’s university entrance exam starting from 2025. ⌘ Read more
When will China’s Fujian aircraft carrier be ready for active duty?
Observers say the ship’s cutting-edge electromagnetic catapults and other systems will need months of tests. ⌘ Read more
China’s Mars mission on track to lead the world in retrieving Martian rocks by 2031, says programme veteran
China’s timeline is two years ahead of a US-European planned Mars mission to return samples to Earth for laboratory testing, according to Sun Zezhou. ⌘ Read more
Masks, Covid-19 test kits, plastic bottles: more than 9,000kg of litter found on Hong Kong’s hiking trails, seashore last year, green group says
Plastic bottles, bottle lids and buoys top three types of rubbish commonly found on seashore, while cigarettes, tissue paper and food packaging dot hiking trails, green group Ecobus says. ⌘ Read more
Why Ukraine’s request to join is big test for EU
The European Commission will meet Friday to give its fast-tracked opinion on Ukraine’s bid for EU candidacy, a step closer to membership for the country. ⌘ Read more
Coronavirus: crackdown under way on patrons, operators in Hong Kong nightlife sector to enforce new rapid-test rule at bars and clubs
Food and Environmental Hygiene Department director urges businesses not to provide test kits at the door for customers, after reports surface of such acts. ⌘ Read more
Covid-19 in China: latest Beijing outbreak ‘easing’ after millions tested
Cluster linked to Heaven Supermarket bar emerged days after the city had begun lifting curbs. ⌘ Read more
Customers should not take rapid Covid tests on premises of Hong Kong nightspots, health experts warn, as new rule comes into effect
Professor Ricky Chiu warns patrons of bars, pubs, clubs to avoid taking tests on premises, cites risks of coronavirus transmission. ⌘ Read more
Going for a night out? What you need to know about Hong Kong’s new Covid rapid-test rule for bars and clubs
The Post answers questions on authenticity of test results and authorities’ policy direction ⌘ Read more
North Korea expands restoration at nuclear test site to second tunnel: report
South Korean officials said this week that North Korea was poised to conduct a nuclear test “at any time” and that the timing would be decided by Kim. ⌘ Read more