But the 27-year-old never lost his confidence. Even after bad outings, he insisted he felt good on the mound and the results would come.
He backed up those words on Sunday.
“It finally came together,” Weaver said.
Weaver retired the first 17 batters, Eduardo Escobar homered for the fourth straight game and Arizona beat the Cincinnati Reds 7-0.
Weaver (1-0) took a no-hitter into the seventh inning before giving up a broken-bat single to Eugenio Suárez, whose ground ball found a hole up the middle. The right-hander hit Alex Blandino with a pitch with two outs in the sixth, the first of three baserunners he allowed.
Weaver — who flashed pinpoint command with a mid-90s fastball — needed just 94 pitches over seven innings to carve through Cincinnati’s red-hot lineup, throwing 63 strikes. He struck out eight. The Reds came into the game hitting .312 as a team, which was tops in the majors.
“There was just a lot of confidence right from the get-go,” Weaver said. “Mechanically, seeing the results. Finishing pitches.”
Rookie Matt Peacock pitched the final two innings to complete the two-hitter.
David Peralta hit a three-run homer in the third, his first of the season, to put the Diamondbacks ahead 4-0. Arizona threatened again in the fourth, but Christian Walker struck out with the bases loaded to end the inning.
Escobar added a 2-run shot down the right-field line in the fifth to push the D-backs ahead 6-0. His four-game homer streak is a career best.
José De León (0-1) allowed six runs over 4 1/3 innings. He struck out nine, walked three and gave up eight hits, including the two homers.
Arizona won the three-game series after losing Friday’s opener, cooling off the Reds after a 6-1 start, which was the best opening week for the franchise since 1994.
“It was pretty obvious that Weaver had good stuff,” Reds manager David Bell said. “We had three or four, maybe five, well-hit balls, but that’s going to happen. The other at-bats, he was in command and dominated with his fastball and changeup.
“All game we thought we were going to get runners on and get back in it but it didn’t happen today.”
Suárez and Kyle Farmer had Cincinnati’s only hits.
Weaver led the NL in losses last season with nine and had a 6.58 ERA.
In 2019, he was one of the D-backs’ best pitchers with a 2.94 ERA through 12 starts before injuries cut his season short. He is in his sixth big league season but won’t become a free agent until 2024.
“Last year was a crazy year for everyone,” Arizona manager Torey Lovullo said. “I felt like the stuff was there, it was just about execution. And he executed a great game plan today by locating his fastball.”
Arizona’s Josh VanMeter reached base in all five of his plate appearances. He had a single, a double and three walks. VanMeter played 1 1/2 seasons for the Reds, who traded him to the D-backs last year.
Reds: OF Jesse Winker was out of the starting lineup for a second day in a row after dealing with calf cramps in Friday’s win. He came into the game as a pinch-hitter in the ninth.
Diamondbacks: OF Kole Calhoun got the day off. Lovullo said the team is trying to make sure Calhoun doesn’t overwork his surgically repaired right knee. Calhoun started the first two games of the series.
The Reds head to San Francisco for a three-game series, with Wade Miley (1-0, 0.00 ERA) starting the opener against the Giants’ Aaron Sanchez (0-0, 1.80).
The Diamondbacks send LHP Madison Bumgarner to the mound against Oakland. The four-time All-Star has had a tough start to the season with an 0-1 record and an 11.00 ERA. RHP Chris Bassitt (0-2, 5.56) starts for the Athletics.