BAGHDAD (AP) — Young Iraqis who drove mass protests demanding sweeping political reforms are worried that the conflict between the U.S. and Iran, which is playing out in part on Iraqi soil, is killing their momentum.
Even before the U.S. drone attack that killed Iranian Gen. Qassem Soleimani, the 4-month-old protests against government corruption, poor services and rising Iranian influence in state affairs were beset by internal divisions. A violent security crackdown heightened tensions, leading to hundreds of deaths and thousands of injuries as well as targeted killings of sympathizers.
And in the stormy aftermath of the U.S. drone strike that also killed top Iraqi militia commander Abu Mahdi al-Muhandis, avoiding another war in Iraq became a top priority for state officials as they scrambled to contain hostilities between Washington and Tehran.
“We are afraid that the uprising is being forgotten and (officials) are focusing on things we don’t want, not our main goals,” said Noor, an activist in Baghdad’s Tahrir Square who asked to be identified only by her first name, fearing reprisal, like all other protesters interviewed for this story. “On the other hand, we are trying to be calm and keep people on the street to make the point that we are not with the Americans or the Iranians. We are with Iraq.”
There are hopeful signs as Iran and the U.S. appeared to back down — at least in the short term — after Tehran retaliated for Soleimani’s killing by firing missiles at two Iraqi bases housing American troops. No one was seriously injured and Iran was unexpectedly forced to shift gears to manage the fallout from its accidental downing of a Ukrainian airliner filled with Iranians.
Nevertheless, the issue of U.S. troop withdrawal in response to the attack that killed Soleimani minutes after he landed at Baghdad airport has monopolized Iraqi politics, with caretaker Prime Minister Adel Abdul-Mahdi openly calling for their ouster.
“Everyone is busy with America and Iran, but we are still facing attacks on the street,” said Zaid, a protester in Baghdad. “Now we’ve become an easy goal for the militias; they can harm us because no one is focusing on them.”
The rejection of Iranian influence over Iraqi state affairs was a core component of the protest movement and demonstrators fear that as tensions between Tehran and Washington ease, Iranian-backed militias will turn on them for vengeance.
The protests began Oct. 1, when thousands took to the streets in Baghdad and in the country’s predominantly Shiite south. Since then, about 500 people have been killed, most of them shot by security forces who also used tear gas to disperse crowds.
While Friday protests brought out thousands countrywide, the turnout was lower than expected. Adding to their worries, two local journalists known for their coverage of the anti-government protests were found shot dead in a car parked near a Basra police station. And more people were wounded in clashes Saturday between protesters and security forces in Karbala, in southern Iraq, when police fired into the crowd.
“Protesters are certainly more afraid now than they were a few weeks ago but at the same time they want to maintain their ground,” said Ruba Ali Hassan, a researcher at York University in Toronto. “They’ve had such great momentum over the past three plus months and there’s great fears this momentum might die down. People are trying to show great support and make sure that the protesters can still move forward but they’re on shaky ground unfortunately.”
A growing concern among protesters is their belief that Iran-backed militias are seizing on some demonstrators’ refusal to grieve over Soleimani as an excuse to attack them. In turn, the attacks fuel the differences of opinion over Soleimani, deepening the rifts between the demonstrators and distracting them from their original purpose.
In the southern city of Nasiriyah, for instance, protesters refused to let a symbolic funeral procession for the Iranian general enter the square where they were camped. Violence broke out and at least one protester was killed and three wounded when an Iran-backed militia fired on crowds. Demonstrators then burned the headquarters of Popular Mobilization Forces, an umbrella organization for multiple militia groups and part of the Iraqi security forces.
“Political parties and militias have attempted to create discord within the demonstration square in the center of Nasiriyah — they took advantage of the rifts between protesters,” said Ali, a protester based in the city. “We have concerns the emotions arising from his death will rob the protests of its true aims.”
The events in Nasiriyah have spooked protesters in Baghdad’s Tahrir Square, the epicenter of the movement, who fear similar attacks, several activists said.
Since Soleimani’s death, protest organizers have been trying to refocus attention on their movement, three activists said. With that in mind, they issued a statement last week saying their goals had not changed.
At the top of their list is preventing Abdul-Mahdi, who has headed a caretaker government since his resignation in December, from being renamed prime minister, which many suspect the country’s political elites would like.
“All the news is about America and Iran, and the elites are trying to make the people forget about the protests in Iraq, and our goal for change and we don’t want that,” said the protester, Noor. “We are trying to be calm and study what is going on around us. We are telling everyone, stay with Iraq. This is not our war.”
___
Associated Press writer A. J. Naddaff in Beirut contributed to this report.
VATICAN CITY (AP) — The Vatican cardinal who co-authored a bombshell book with Emeritus Pope Benedict XVI reaffirming priestly celibacy on Tuesday strongly denied he manipulated the retired pope into publishing.
Guinean Cardinal Robert Sarah, who heads the Vatican’s liturgy office, spoke out after news reports quoting “sources close to Benedict” claimed the retired pope never saw or approved the finished product.
Sarah reproduced letters from Benedict making clear the 92-year-old pope had written the text and approved of publishing it as a book. “These defamations are of exceptional gravity,” Sarah tweeted.
The controversy underscores the conservative-progressive battle lines that have deepened in the Catholic Church following Benedict’s 2013 decision to retire, and his successor Pope Francis’ more reform-minded papacy.
Benedict’s involvement in the book, “From the Depths of Our Hearts,” had the appearance of being an attempt to interfere with Pope Francis’ ministry. Francis has said he will publish a document in the coming weeks that is expected to touch on whether married men could be ordained priests in the Amazon, to deal with a priest shortage there.
Benedict’s reaffirmation of the “necessity” of priestly celibacy implied that the former pope was trying to influence the thinking of the current one.
His intervention was all the more surprising, given he had vowed to live “hidden from the world” when he retired in 2013, specifically to avoid any suggestion that he still wielded papal authority.
The book includes an introduction and a conclusion, said to be written jointly by Benedict and Sarah, as well as a chapter apiece. The Associated Press obtained galleys of the English text after the French daily Le Figaro published excerpts Sunday.
After the first reports, Francis’ supporters quickly alleged Benedict had been manipulated by members of his right-wing entourage into writing something that amounted to a frontal attack on Francis. Some claimed it was evidence of elder abuse, given Benedict’s 92 years and increasing frailty.
Conservatives, many of whom long for Benedict’s orthodoxy, argued it was no such thing and noted that Francis too has reaffirmed the “gift” of priestly celibacy.
The Vatican tried to tamp down the furor by insisting the book was a mere “contribution” to the discussion about priestly celibacy written by two bishops in “filial obedience” to Francis.
Sarah denied there was any manipulation on his part and said Benedict was very much a part of the process. He spoke out after Spanish daily ABC, citing “sources very close to Benedict” reported the retired pope had nothing to do with the project and had been manipulated. Argentine daily La Nacion carried a similar report.
Sarah tweeted three 2018 letters from Benedict making clear the retired pope had provided him the text and participated in discussions about publishing it. As he wrote in the book, Benedict said he had begun writing “some reflections on the priesthood” before Sarah even proposed the book in September, but had put the project aside because of his waning strength.
In a statement Tuesday, Sarah chronicled all his interactions with Benedict and said the retired pope had approved the final text, including the joint introduction, conclusion and cover.
He quoted his own correspondence to Benedict saying: “I imagine that you might think your reflections might not be opportune because of the polemics they might provoke in newspapers, but I am convinced that the whole church needs this gift, which could be published around Christmas or the start of 2020.”
Sarah reproduced a letter from Benedict, dated Nov. 25, that reads: “From my side, the text can be published in the form you have foreseen.”
“I sincerely forgive all those who defamed me or wanted to put me in opposition to Pope Francis,” Sarah said in his statement. “My attachment to Benedict XVI remains intact and my filial obedience to Pope Francis absolute.”
The “sources close to Benedict” who suggested that the retired pope hadn’t co-authored the book have not been identified. But Benedict’s entourage is small, and is headed by his longtime secretary, Archbishop Georg Gaenswein, who also is head of Francis’ papal household.
Benedict’s letters to Sarah make clear the retired pope had written a text prior to Francis’ Amazon synod, in which a majority of bishops backed ordaining married men as priests. After the synod concluded, Francis announced he would write his own reflections on its outcome.
The U.S. publisher of the book, Ignatius Press, which has been Benedict’s English-language publisher since before he became pope, has defended the book and Benedict’s participation in it.
The Rev. Joseph Fessio, Ignatius’ founder and editor, said he had read the text in French and English, and said only Benedict could have written it.
“Is it really believable that Sarah would perpetrate a fraud?” Fessio asked in an email. “Or alter something from Benedict? Or claim that Benedict didn’t collaborate and agree to the intro and epilogue?”
Ignatius in November published another book by Sarah, “The Day is Now Far Spent,” in which the cardinal — a hero to liturgical purists and conservatives and a quiet critic of Francis — again defended priestly celibacy.
In the book, Sarah criticized the proposal to ordain married men in the Amazon, saying it actually showed disdain for the indigenous population and suggested God couldn’t find real priests among them willing to make the sacrifice of celibacy.
WASHINGTON (AP) — For all of the Trump administration’s insistence that the threat of an “imminent” attack led to the American drone strike on Iran’s top general, U.S. officials behind the scenes say the strike was motivated as much, if not more, by a broader effort to rein in a dangerously emboldened Iran.
Secretary of State Mike Pompeo and Attorney General William Barr gave voice to the broader rationale on Monday, saying deterrence was a key component of the strike. But they, like other U.S. officials interviewed by The Associated Press, stopped short of saying definitively that no specific plot was broken up.
Still, the shifting rationale has raised questions about the nature and credibility of the threat posed by Gen. Qassem Soleimani, the architect of a decades-long reign of terror in which Iranian proxy fighters killed hundreds of Americans and contributed to the deaths of hundreds of thousands in the region. Critics of President Donald Trump’s decision say he should have consulted Congress before taking an action that brought the United State and Iran to the brink of war.
As lawmakers protested, the Trump administration seized on the “imminent threat” rationale, though Pompeo later said he didn’t know the time frame for Soleimani’s next attack and other officials indicated that there was no clear sense of the next targets either. Trump on Friday told Fox News that the threat was against four American embassies, but two days later Defense Secretary Mark Esper said he’d seen no such evidence.
In the latest round of confusion, the president maintained Monday that there was no contradiction in their comments.
In recent days a clearer picture of the decision-making process leading up to the strike has emerged. While U.S. officials stopped short of saying definitively that there was no specific plot disrupted by Soleimani’s death, they have acknowledged in recent days that the long-considered operation had a more fundamental purpose: breaking up what they viewed to be a perilous cycle of violence that could have brought the United States and Iran even closer to hostilities.
Soleimani was undoubtedly planning other potentially deadly operations against American interests as he had for decades, the officials said. But a driving concern was that the Trump administration feared a loss of “deterrence” with Iran, according to three senior administration officials who spoke on the condition of anonymity to discuss sensitive internal deliberations surrounding the strike and its aftermath.
Two of Trump’s most prominent Cabinet officials echoed that message on Monday.
“Our ability to deter attacks had obviously broken down,” Barr said . Pompeo said, “President Trump and those of us in his national security team are re-establishing deterrence – real deterrence ‒ against the Islamic Republic.”
Trump himself implicitly acknowledged the deterrence aim, telling reporters Monday that the strike against Soleimani “should have been done 20 years ago.” And he implied as much in a tweet that day: “The Fake News Media and their Democrat Partners are working hard to determine whether or not the future attack by terrorist Soleimani was “imminent” or not, & was my team in agreement,” he tweeted. “The answer to both is a strong YES., but it doesn’t really matter because of his horrible past!”
Concerns about increasingly brazen attacks by Iran and its proxies, including the downing of an American drone and strikes on Saudi Arabian oil field last year, have mounted within the U.S. national security community for months, the officials said. Trump had decided against military retaliation to those attacks, which damaged equipment but did not result in loss of life, but U.S. officials worried that Iran might confuse its restraint with weakness.
Soleimani, the officials said, had been identified as the target for potential U.S. lethal action months ago, at least since the aftermath of Trump’s September decision to call off what was seen to be an imminent strike on Iran. Military planners and other officials viewed a targeted strike at Soleimani as a potentially more agreeable option for the president, who publicly expressed concerns for the collateral damage predicted for the September option.
Those fears, the officials said, led them to view the broader matrix of threats from Iran and its proxies with greater severity, an assessment compounded by the swiftness with which the Iranian proxy in Iraq, Kata’ib Hezbollah, helped organize the siege of the U.S. Embassy after the Dec. 29 U.S. strike against the group believed responsible for killing a U.S. contractor on Dec. 27.
Soleimani had been in the crosshairs of the U.S. before — at least once in 2007 — but two administrations had rejected operations to kill him, wary of the consequences of striking down Iranian military leader. The final go-ahead to strike Soleimani came two weeks ago, once it became apparent that there was a window of opportunity because of new intelligence on his travel plans.
The strike against Soleimani, among the most powerful figures in Iran, was deliberately disproportionate to reset the cycle of violence and reinstate “deterrence” by demonstrating that the U.S. could respond overwhelmingly and decisively at its choosing, the officials said in relating how the strike was conceived.
The killing was a risky move that brought the two nations closer to war than at any point in recent memory. Iran’s ballistic missile strikes last week on two Iraqi bases that house American troops was one of the most directs attacks by Iran on the U.S. since the 1979 U.S. Embassy hostage taking in Tehran.
Even as tensions appear to cool, the long-term effects of the strike are unclear and will likely be difficult to predict, given the wide breadth and capabilities of Iran’s network of proxies.
Still, U.S. officials defend the strike as restoring a check on Iran’s aggression. Speaking to CNN on Sunday, Esper quoted CIA Director Gina Haspel, who, on a secure video conference, had summed up the stakes for the president: “The risk of inaction is greater than risk of action.”
___
Associated Press writers Matthew Lee, Robert Burns and Michael Balsamo contributed to this report.
WASHINGTON (AP) — Senate Republicans signaled they would reject the idea of simply voting to dismiss the articles of impeachment against President Donald Trump as the House prepares to send the charges to the chamber for the historic trial.
“I think our members, generally are not interested in the motion to dismiss. They think both sides need to be heard,” Sen. Roy Blunt, R-Mo., who is part of GOP leadership, said Monday.
It will be only the third presidential impeachment trial in American history, a serious and dramatic endeavor coming amid the backdrop of a politically divided nation and the start of an election year.
Speaker Nancy Pelosi has not set the timing for the House vote that will launch the Senate action. Trump was impeached by the Democratic-led House last month on charges of abuse of power over pushing Ukraine to investigate Democratic rival Joe Biden and obstruction of Congress in the probe. Democrats said the vote could be Wednesday.
With the impeachment trial starting in a matter of days, senators are still debating the rules of the proceedings. GOP senators are conferring privately about whether to allow a motion to dismiss the charges against the president or to call additional witnesses for testimony.
Trump suggested over the weekend he might prefer simply dismissing the charges rather than giving legitimacy to charges from the House, which he considers a “hoax.”
It was an extraordinary suggestion, but one being proposed by Trump allies with support from some GOP senators, including Majority Leader Mitch McConnell.
But it is clear McConnell does not have the votes needed from his GOP majority to do that.
One key Republican, Sen. Susan Collins of Maine, said she, too, would oppose a motion to dismiss the charges.
Collins is leading an effort among some Republicans, including Sens. Mitt Romney of Utah and Lisa Murkowski of Alaska, to ensure the ground rules include plans to eventually consider voting to call witnesses.
“My position is that there should be a vote on whether or not witnesses should be called,” Collins said.
Romney said he wants to hear from John Bolton, the former national security adviser at the White House, who others have said raised alarms about the alternative foreign policy toward Ukraine being run led by Trump’s personal lawyer Rudy Giuliani.
“I’ve said I’d like to hear from John Bolton,” Romney told reporters Monday. “I expect that barring some kind of surprise, I’ll be voting in favor of hearing from witnesses after those opening arguments.”
Democrats have been pushing Republicans, who have the majority in the Senate, to consider new testimony, arguing that fresh information has emerged during Pelosi’s monthlong delay in transmitting the charges.
McConnell is drafting an organizing resolution that will outline the steps ahead. Approving it will be among the first votes senators take after they are sworn as jurors by Supreme Court Chief Justice John Roberts for the Court of Impeachment.
Republicans control the chamber, 53-47, and are all but certain to acquit Trump. McConnell is hesitant to call new witnesses who would prolong the trial. He prefers to model Trump’s trial partly on the process used for then-President Bill Clinton’s trial in 1999.
It takes just 51 votes during the impeachment trial to approve rules or call witnesses. Just four GOP senators could form a majority with Democrats to insist on new testimony. It also would take only 51 senators to vote to dismiss the charges against Trump.
Most Republicans appear willing to go along with McConnell’s plan to start the trial first then consider witnesses later, rather than upfront, as Democrats want.
Collins is pushing to have at least the promise of witness votes included in the organizing resolution. She and the others appear to be gathering support.
“I’ve been working to make sure that we will have a process that we can take a vote on whether or not we need additional information, and yes, that would include witnesses,” Murkowski told reporters.
McConnell is expected to huddle privately with senators at their weekly lunch Tuesday.
House Majority Leader Steny Hoyer told reporters the House vote might come Wednesday. “Could be,” he said.
___
Associated Press writers Matthew Daly, Andrew Taylor and Padmananda Rama contributed to this report.
BEIJING (AP) — A bus plunged into a sinkhole on a city street in northwestern China, killing at least six people and leaving four missing, authorities said.
Some 1,000 emergency workers and 30 vehicles were sent to the site, the emergency management bureau in the city of Xining said. A crane was called in to lift the bus above the sinkhole so rescue workers could look for victims.
Video apparently shot by security cameras just after the accident showed the bus gradually settling into the hole while people nearby scrambled for safety.
Other video showed the bus tipped more than halfway into the chasm that had opened up at a bus stop just outside a health clinic. Light and smoke were coming to the surface, possibly as a result of the rupture of gas or electricity lines. Workers using backhoes, dump trucks and other equipment excavated earth around the collapse.
The collapse Monday afternoon left 16 people in the hospital. The the emergency management bureau said the bus had been raised from the collapsed 80-square-meter (860-square-foot) section into which it had fallen.
The hilly city of Xining is the capital of Qinghai province, one of China’s poorest regions, sitting atop the Tibetan Plateau.
The expedited building of roads, tunnels, bridges and other infrastructure to keep China’s economy strong has often led to corner-cutting on safety, causing fatal workplace and industrial accidents. Mining had also caused instability in the ground in many areas after years of barely restricted mineral extraction.
TEHRAN, Iran (AP) — Iran said Tuesday that authorities have made arrests for the accidental shootdown of a Ukrainian passenger plane, which killed all 176 people on board and set off protests in the country demanding accountability after officials initially concealed the cause of the crash.
Iran’s Judiciary spokesman Gholamhossein Esmaili said “some individuals” were arrested after “extensive investigations.” His statement on the judiciary’s website did not say how many people had been detained or name those arrested.
Iran at first dismissed allegations that a missile had brought down the plane, but in the face of mounting evidence officials acknowledged on Saturday — three days after — that its Revolutionary Guard had shot down the plane by mistake as the force braced for a possible military confrontation with the United States.
The plane, en route from Tehran to the Ukrainian capital of Kyiv, was carrying 167 passengers and nine crew members from several countries, including 82 Iranians and 57 Canadians, many of whom were Iranians with dual citizenship. There were several children among the passengers, including an infant.
Iran’s president on Tuesday called for a special court with “a ranking judge and dozens of experts” to be set up to probe the incident.
“The responsibility falls on more than just one person,” President Hassan Rouhani said in a televised speech, adding that those found culpable “should be punished.”
“There are others, too, and I want that this issue is expressed honestly,” he said, without elaborating.
Rouhani called the incident “a painful and unforgivable” mistake and promised that his administration would pursue the case “by all means.”
“This is not an ordinary case. The entire the world will be watching this court,” he said.
Tensions have been escalating since President Donald Trump pulled the U.S. out of Iran’s 2015 nuclear deal with world powers, then reimposed sanctions that had been lifted under the accord.
The deal has quickly unraveled since then, with Iran steadily breaking away from limits on its nuclear program and Europe unable to find ways to keep Tehran committed.
The U.S. sanctions have devastated Iran’s economy.
On Tuesday, Britain, France and Germany triggered the so-called “dispute mechanism” action that paves way for possible further sanctions in response to Iran’s moves.
Tensions sharply escalated further after on Jan. 3, when a U.S. airstrike killed Iran’s most powerful commander, Revolutionary Guard Gen. Qassem Soleimani, in Baghdad.
In response, Iran launched ballistic missiles on military bases housing U.S. troops in Iraq to avenge Soleimani’s killing. The Ukrainian plane was shot down in Tehran as Iranian forces were on alert for possible U.S. retaliation.
While Rouhani pointed to mistakes and negligence, he also repeated the government’s line that the plane tragedy was ultimately rooted in U.S. aggression.
“It was the U.S. that made for an agitated environment. It was the U.S. that created an unusual situation. It was the U.S. that threatened and took our beloved (Soleimani),” he said.
Rouhani called the government’s admission that Iranian forces shot down the plane a “first good step.”
He added that Iranian experts who retrieved the Ukrainian plane’s flight recorder, the so-called black box, have sent it to France for analysis.
Gen. Amir Ali Hajizadeh, the head of the Guard’s aerospace division, said over the weekend his unit accepts full responsibility for the shootdown. He said when he learned about the downing of the plane, “I wished I was dead.”
The incident raised questions about why Iran did not shut down its international airport or airspace the day it was on alert for U.S. military retaliation.
The shootdown and the lack of transparency around it has reignited anger in Iran at the country’s leadership. Online videos appeared to show security forces firing live ammunition and tear gas to disperse protests in the streets.
Also Tuesday, Iran’s judiciary said that 30 people had been detained in the protests, and that some were released, without elaborating further. An Iranian film director who’d called for protests in Tehran’s Azadi, or Freedom, Square is among those released.
Iranian authorities briefly arrested British Ambassador Rob Macaire on Saturday evening. He’s said he went to a candlelight vigil to pay his respects for the victims of the Ukrainian plane shootdown and left as soon as the chanting began and it turned into a protest.
Iran’s Foreign Ministry summoned the British ambassador on Sunday to protest what it said was his presence at an illegal protest. Britain, in turn, summoned Iran’s ambassador on Monday “to convey our strong objections” over the weekend arrest.
Iran’s top prosecutor, Mohammad Javad Montazeri, was quoted in local media Tuesday saying the British ambassador must be expelled from the country as soon as possible.
___
Batrawy reported from Dubai, United Arab Emirates.
Your daily look at late-breaking news, upcoming events and the stories that will be talked about today:
1. GOP WEIGHS IMPEACHMENT TRIAL OPTIONS Republican senators are conferring privately about whether to allow a motion to dismiss the charges against President Trump or to call additional witnesses for testimony.
2. TRUMP ADMINISTRATION SHIFTS RATIONALE ON IRAN GENERAL’S KILLING Secretary of State Mike Pompeo and Attorney General William Barr give voice to the broader rationale, saying deterrence was a key component of the strike.
3. FALLOUT FROM DOWNED JETLINER CONTINUES Iran’s judiciary says arrests have been made for the accidental shootdown of a Ukrainian passenger plane that killed all 176 people on board just after takeoff from Tehran last week.
4. 2020 PRIMARY HEATS UP WITH IOWA DEBATE The prime-time faceoff comes just 20 days before the state’s caucuses as polls suggest the nomination is truly up for grabs.
5. PHILIPPINE VOLCANO RESTIVE Tens of thousands of people flee as the Taal volcano near Manila spews lava into the sky and trembles constantly, raising fears of a more dangerous eruption.
6. ’I CAN’T GIVE UP UNTIL I FIND HIM’ An Australian villager whose small community was devastated by wildfires is not giving up hope of finding his “little man,” a dog named Kozi.
7. ‘I THOUGHT A WOMAN COULD WIN; HE DISAGREED’ Elizabeth Warren says Bernie Sanders told her during a private meeting two years ago that he didn’t think a woman could win the White House, an accusation Sanders denies.
8. RUSSIANS HACK COMPANY KEY TO UKRAINE SCANDAL A U.S. cybersecurity company says Russian military agents hacked Burisma Holdings, the Ukrainian gas company at the center of the scandal that led to Trump’s impeachment.
9. LSU BEATS CLEMSON FOR TITLE Joe Burrow throws five touchdown passes, capping one of the greatest seasons in college football history by leading No. 1 LSU to a 42-25 victory against No. 3 Clemson to win the national championship.
10. BASEBALL PUNISHES ASTROS IN SIGN-STEALING SCANDAL Houston fires their manager and general manager after the pair were suspended by Major League Baseball for a sign-stealing scheme during the Astros’ run to the 2017 World Series title.
NERRIGUNDAH, Australia (AP) — Ash Graham’s dog, Kozi, wakes him at 8 a.m., eager for his morning walk. Then Graham realizes he was dreaming, and gets up from the one-man tent he’s been sleeping in each night since a wildfire swept through his village on New Year’s Eve.
Graham, a volunteer firefighter, resumes his weary search for Kozi: hiking south down the dried-up creek bed, past the wallabies that were burned to death as they fled the fire, knocking on doors, trying to keep track of the grids he’s already covered.
Graham’s Austrian wife, Melanie, died from cancer a year or so ago, and his house burned down in the Dec. 31 fire. His truck and his few belongings are with him in the yard of the fire station, the last place he saw Kozi. Graham had left his dog at the station and was driving around warning people to leave when 3-year-old Kozi bolted as flames approached the building.
“He’s my little man. He’s been there for me,” Graham said, his face crumpling. “I can’t give up, really, until I find him.”
Graham’s tiny village of Nerrigundah in southeastern Australia has been among the places hardest hit by the country’s devastating wildfires, with about two-thirds of the homes destroyed. A man in his 70s who lived near the village was killed in the disaster — one of the 27 lives claimed by the wildfires, which also have destroyed more than 2,000 homes.
Like many small communities in Australia that have been scorched by the wildfires, Nerrigundah will never be the same.
Once a thriving gold mining town with over 1,000 people, the village, located in New South Wales state, has lately been home to just a few dozen who love the peace of the Australian bush, a place far from the bustling cities where dogs can run free. But now a landmark building that was once a store has burned down. The village’s old schoolhouse is also gone, and so is the building that used to be the church.
The wildfire caught Nerrigundah by surprise, after it was expected to hit a day or two later. And nobody could believe its ferocity.
The Threlfall family home was one of only a half dozen houses to survive. Outside stands an exploded gas canister, its sides peeled open like arms seeking an embrace. The stone sculptures made by Ron Threlfall, the fire captain, that depict people in anguish now have scorch marks running up their sides.
Skye Threlfall, 21, who was home for the Christmas holidays along with her two siblings, said she woke up at 4 a.m. on New Year’s Eve.
“My mum was screaming to us, and then we all ran out and looked up at the sky over here and it was just red,” she said. “You could see the flames up in there, and it was just roaring.”
She said the fire closed in like a storm. She screamed at her sister to come to the car, terrified she wouldn’t make it.
Across the other side of town, Lyle Stewart, 65, was retching from the thick black smoke as he tried to save his house by dousing it with water. Then his hose caught fire.
“I thought, ‘Time’s come,’” Stewart said.
But he and his buddy made it to Stewart’s car. The air conditioning helped filter the gunk they were breathing. It took them 90 minutes to drive the short distance to the fire station as they used a chainsaw to cut through a half dozen flaming trees that had fallen across the road.
Skye Threlfall and her sister also made it to the fire station. But inside, the howling winds buckled the roller doors off their supports.
“Embers were just flying through,” Threlfall said.
Residents leaned up against the doors, trying to keep the fire out. Marilyn Brennan poured water on the embers as they blasted through, then retreated to a back room with some of the others.
“Down on the ground, hugging each other, hoping like hell we’d get out,” she said.
Townsfolk credit the sprinkler system installed on the exterior of the fire station a few years back for saving them. Such sprinklers aren’t standard at rural fire stations, but the town had raised money for its own.
Residents are still coming to terms with what they have lost. Stewart, who moved here in 1985, had just finished restoring a caravan that has been reduced to ash. Then there are the thousands of comics his son had collected and that he was storing. What really irks him, he jokes, is the carton of Victoria Bitter beer he’d just bought and hadn’t taken a single drink from.
“This is everything we’ve worked for for the last 35 years, gone,” he said.
He doesn’t know whether he’ll return.
“My wife and I don’t want to leave here. But when you get older it’s a bit different, too. I’m not as fit as what I was when I was 35,” he said.
Brennan and her husband, Colin, said they’re planning to rebuild.
“I’ll be back,” Colin Brennan said. “This is home. This is where I live. This is me, here. I’ve got a life.”
Skye Threlfall said she hopes the community survives and rebuilds, but she knows that quite a few people won’t return.
“It’s just scary, because you don’t want to go through this again,” she said.
Graham said he plans to cut down some trees on his property to make it safe so he can set up his camp trailer. He keeps meaning to leave from the fire station yard, although he can’t quite bring himself to do it just yet. And he said that Nerrigundah is home.
“I’ll never move,” he said.
But then he considers it a bit more. A roofer by trade, Graham worked all sorts of jobs before spending six years caring for his wife before she died. He said maybe he could spend some time in Austria, where Melanie is buried, or maybe in Australia’s Snowy Mountains, where the air is cooler.
TAGAYTAY, Philippines (AP) — A volcano near the Philippine capital spewed lava into the sky and trembled constantly Tuesday, possibly portending a bigger and more dangerous eruption, as tens of thousands of people fled villages darkened and blanketed by heavy ash.
Government work was suspended and schools were closed in a number of towns and cities, including Manila, because of health risks from the ash. Hundreds of flights were canceled or delayed, affecting tens of thousands of passengers.
The continued restiveness of the Taal volcano and several new fissures in the ground nearby likely mean magma is rising and may lead to further eruptive activity, the Philippine Institute of Volcanology and Seismology said.
The volcano was spurting fountains of red-hot lava 800 meters (half a mile) into the sky, and the massive column of ash and volcanic debris at times lit up with streaks of lightning.
The alert level since the eruption began Sunday has been 4, indicating a hazardous eruption is possible in hours to days. Level 5, the highest, means such an eruption is underway.
About 50 volcanic earthquakes were detected over eight hours Tuesday, indicating rising magma, the institute said. It also warned that heavy and prolonged ash fall was possible in nearby villages.
“The speed in the rise of magma is important (in determining) when the volcano will have a strong eruption and if it will slow down and freeze,” said Renato Solidum, who heads the institute. “As of now, we don’t see activities slowing down and the earthquakes still continue.”
The picturesque volcano in the middle of a lake in Batangas province south of Manila rumbled to life Sunday in a powerful explosion that blasted a 15-kilometer (9-mile) column of ash, steam and rock into the sky. Clouds of volcanic ash blowing over Manila, 65 kilometers (40 miles) to the north, closed the country’s main airport Sunday and part of Monday until the ash fall eased.
More than 500 international and domestic flights were canceled or delayed due to the overnight airport closure, affecting about 80,000 passengers, airport manager Ed Monreal told The Associated Press.
“Hopefully the wind direction does not change. As long as the ash fall does not reach us, then we can be back to normalcy,” Monreal said.
The disaster-response agency counted more than 40,000 evacuees in Batangas and nearby Cavite provinces who took shelter in nearly 200 evacuation centers. Officials expected the number to swell.
Solidum warned residents from returning to high-risk villages based on perceptions that the eruption was easing. He warned of pyroclastic flows, super-heated material from the volcano that can travel at great speed and incinerate anything in their path.
Solidum said it would take time for Taal’s restiveness to ease and the lives of affected villagers to return to normal but added it’s difficult to predict the volcano’s behavior with certainty.
“We have to make sure that people understand and, of course, government, that this is not an activity that will just be a short while,” Solidum told a news conference.
President Rodrigo Duterte visited hard-hit Batangas, which has been declared a calamity zone for faster disbursement of emergency funds. Accompanied by top disaster-response officials and Cabinet members, he promised the national government would help with the cleanup and reconstruction of the devastated province once the eruption ends.
The government disaster-response agency has not provided details of damage but journalists saw dozens of houses ruined by heavy ash and frequent quakes in two Batangas areas.
At least six people have been taken to a hospital in Tagaytay city in Cavite due to respiratory ailments caused by the ash, Health Secretary Francisco Duque III said.
The eruption has not directly caused deaths or major damage. The death of a driver in a crash on an ash-covered road was linked to slippery conditions.
The small island where the 1,020-foot (311-meter) volcano lies has long been designated a “permanent danger zone,” though fishing villages have long existed there. Those villages were all evacuated, though volcanology officials have called for a total evacuation of endangered communities within a 14-kilometer (8.7-mile) radius of Taal.
Taal’s last disastrous eruption, in 1965, killed hundreds of people. It is the second-most restive of about two dozen active volcanoes in the Philippines, which lies along the Pacific “Ring of Fire,” where much of the world’s seismic activity occurs.
A long-dormant volcano, Mount Pinatubo, blew its top north of Manila in 1991 in one of the biggest volcanic eruptions of the 20th century, killing hundreds of people.
___
Gomez reported from Manila. Associated Press journalists Celine Rosario and Kiko Rosario in Manila and Aaron Favila in Tagaytay contributed to this report.
BRUSSELS (AP) — Britain, France and Germany ratcheted up pressure on Iran Tuesday to cease its violations of a landmark nuclear deal, stressing that they want to resolve differences through talks while starting the clock on a process that could result in a so-called “snapback” of United Nations sanctions.
The three countries, which signed the international agreement in 2015 along with the United States, Russia and China, said in a letter to the European Union’s foreign policy chief that they had no choice but to trigger the deal’s “dispute mechanism,” given Iran’s ongoing transgressions.
The three said they rejected Tehran’s argument that Iran was justified in violating the deal because the United States broke the agreement by pulling out unilaterally in 2018.
“We have therefore been left with no choice, given Iran’s actions, but to register today our concerns that Iran is not meeting its commitments,″ the countries said in a joint statement.
EU foreign policy chief Josep Borrell, who coordinates the agreement on behalf of the world powers, said the pressure on Iran from Europe does not mean international sanctions will automatically be slapped on the Islamic Republic.
The aim of the move by France, Germany and Britain is “to find solutions and return (Iran) to full compliance within the framework of this agreement. he said.
Hours later, Iran’s Foreign Ministry warned of a “serious and strong response” to the European move.
However, Foreign Ministry spokesman Abbas Mousavi said Iran was is “fully ready to answer any good will and constructive effort” that preserves the nuclear deal. He was quoted Tuesday by the official IRNA news agency.
The Europeans stressed that they want to “resolve the impasse through constructive diplomatic dialogue” and made no threat of sanctions in their statement.
They also specifically distanced themselves from sanctions imposed by the U.S., which Washington has said is part of a “maximum pressure” campaign against Tehran.
“Our three countries are not joining a campaign to implement maximum pressure against Iran,” they said. “Our hope is to bring Iran back into full compliance with its commitments.”
The 2015 nuclear deal, known as the Joint Comprehensive Plan of Action, or JCPOA, seeks to prevent Iran from producing a nuclear weapon — something Iran insists it does not want to do — by putting curbs on its atomic program in exchange for economic incentives.
Under its dispute resolution mechanism, countries have 30 days to resolve their problem, though that can be extended. If it cannot be solved, the matter could be brought before the U.N. Security Council and could then result in the snapback of sanctions that had been lifted under the deal.
U.S. President Donald Trump unilaterally pulled the U.S. out in May 2018, saying the pact was insufficient and should be re-negotiated because it didn’t address Iran’s ballistic missile program or its involvement in regional conflicts. Since then he has reinstated American sanctions, which have been having a devastating effect on Iran’s economy.
In response, Iran has rolled back its commitments in stages to try and pressure the other countries involved to provide economic incentives to offset the American sanctions, but efforts from them so far have been insufficient.
China and Russia had been against invoking the dispute mechanism, but German Foreign Minister Heiko Maas said in a statement that the three European countries “could no longer leave the growing Iranian violations of the nuclear agreement unanswered.”
“Our goal is clear: we want to preserve the accord and come to a diplomatic solution within the agreement,” Maas readded. “We will tackle this together with all partners in the agreement. We call on Iran to participate constructively in the negotiation process that is now beginning.”
Following the announcement, Russia’s ambassador to international organizations in Vienna, Mikhail Ulyanov, tweeted that he hoped the decision wouldn’t “complicate the situation further.”
After its top general was killed in a U.S. drone attack earlier this month, Iran announced what it said was its fifth and final step in violating the deal, saying it no longer will abide by any limitation to its enrichment activities. At the same time it again said all of its violations were reversible if it gets the economic relief it wants.
With the growing skepticism that the deal will be able to saved, British Prime Minister Boris Johnson on Tuesday suggesting that maybe the agreement could be somehow re-worked to address some of the concerns raised by Trump when he pulled the U.S. out.
“Let’s work together to replace the JCPOA with the Trump deal,” he told the BBC.
Borrell refused to comment on the suggestion, but again emphasized that the remaining signatories to the deal, which took years to negotiate, feel it is the best solution to limiting Iran’s nuclear ambitions.
“We have to preserve the nuclear deal and work to go back to full and effective implementation,” Borrell told reporters in Strasbourg, France. He described the pact as a “significant achievement” and underlined that “there is no alternative to this agreement.”
Britain’s Foreign Secretary Dominic Raab told Parliament that “the government in Iran has a choice.”
“The regime can take the steps to de-escalate tensions and adhere to the basic rules of international law. Or sink deeper and deeper into political and economic isolation,” he said. “We urge Iran to work with us to save the deal.”
___
Rising reported from Beirut. Danica Kirka in London, Frank Jordans and Geir Moulson in Berlin and Daria Litvinova in Moscow contributed.
NEW YORK (AP) — White evangelical support for President Donald Trump has sparked debate for years -- particularly this winter, with his impeachment trial looming. But for all the focus it commands, uncertainty continues to surround Trump’s bond with a religious constituency that has long leaned GOP.
Trump won a clear majority of white evangelical Protestant votes in 2016, and about 8 in 10 of that group approved of his job performance in an AP-NORC poll conducted last month. But those evangelicals’ alignment with the Republican Party predated Trump and has risen steadily since 2009, according to data from the nonpartisan Pew Research Center.
Given that Trump has not greatly outperformed his GOP predecessors with white evangelicals, why has his presidency drawn outsize attention to a relatively small religious bloc? It’s partly because conservative evangelical leaders have amassed notable influence in Trump’s administration. But another reason the relationship is scrutinized is that Trump’s political vulnerability could grow if more white evangelicals sour on him over perceived moral missteps.
“Their support for Trump just doesn’t match the story they’ve been telling about themselves since their evolution as a kind of active political group among conservatives,” said Robert Jones, CEO of the Public Religion Research Institute, an independent Washington-based nonprofit.
The prospect of white evangelicals defecting from Trump in greater numbers is an appealing one to his critics, including the Lincoln Project, an anti-Trump Republican group that last week tried to undercut his evangelical appeal in a video that asked whether he is “the best American Christians can do.” Democrats also have grounded some arguments against Trump in moral values as they court voters of faith, including evangelicals.
Mike Madrid, a California-based adviser to the Lincoln Project, said that white evangelicals have been the strongest element of Trump’s base but are starting to show signs of weakness.
“That’s literally the only voter segment that he is holding onto,” Madrid said. “We’re going right at it.”
But challenging Trump’s hold on white evangelicals who have proven stalwart conservatives since the Reagan era may require flawed assumptions about their decision-making.
Evangelicals are generally defined by several traits, including a “born again” connection to their faith, an emphasis on sharing the gospel through evangelism or other activity, a view of the Bible as an essentially authoritative text, and a belief in the centrality of Jesus Christ’s sacrifice through crucifixion. A majority of self-described white evangelicals have leaned GOP since Pew began its surveys in 1994, with about 6 in 10 identifying with or leaning toward the Republican Party starting with President Bill Clinton’s administration. That proportion grew from 63% in 2009 to 77% in 2017.
Some who have bolstered the twice-divorced, occasionally profane Trump’s credentials with white evangelicals warn against underestimating the current president’s connection with those born-again Christian voters.
Conservative strategist Ralph Reed, among Trump’s most prominent evangelical allies, said those who argue “erroneously and unconvincingly” that the president’s support from that bloc “somehow represents a contradiction and hypocrisy” are missing the keys to his appeal.
Evangelical voters look for a candidate who aligns with their approach to key policies, Reed said, noting that “Trump was solid on the issues and remains so.” Reed also singled out one quality that might appear to be a liability with religious voters -- Trump’s “counter-puncher” persona -- as valuable in a bitterly partisan political environment.
“Does he occasionally say or tweet something evangelicals prefer he would not? Yes, he does,” Reed said. “But in an overarching way, they believed many of the other people who ran against him weren’t tough enough to withstand what they were going to get from the media and the Democrats.”
Andrew Whitehead, an associate professor at Clemson University who studies Christian nationalism, said that Trump has achieved “a lot of” evangelical priorities, “no matter what he’s done personally or whether he fits in line with their religious beliefs. He’s privileged Christ in the public sphere and provided them access to those levers of power they’ve sought for decades.”
Among the most frequently touted areas where Trump has made progress on evangelicals’ goals are restricting funding for abortion access and installing new conservative judges on the federal bench.
Trump is already reminding his evangelical supporters of his record ahead of his reelection bid, an effort that took on new urgency following last month’s Christianity Today editorial calling for his removal. At this month’s launch of an “Evangelicals for Trump” coalition, the president cast himself as a peacemaker in “the federal government’s war on religion.”
What’s harder to gauge, though, is whether the same criticisms of Trump’s moral compass that have shown scant signs of fraying his popularity among self-described white evangelicals could bear fruit with other devout voters.
White evangelical Protestants account for just 16% of U.S. adults, according to Pew’s data. But as that group’s affinity for Trump propels more activism on the religious left -- and makes the evangelical label itself more politically polarizing -- some other voters of faith may be receptive to a case that Trump-era conservatives are not governing in accordance with Christian values.
“Are we evangelistic? Yes. Are we motivated by a political agenda that has come to define the word evangelical? No,” said Mark Wingfield, associate pastor at the Dallas-area Wilshire Baptist Church, which made news in November 2016 by voting to allow full membership by LGBTQ people.
“What we’re all casting about now is, what’s a new word for those of us who want to call people into a saved relationship with God but don’t want that to be associated with a political agenda,” Wingfield added.
Christianity Today’s president said the evangelical magazine saw a “significant net gain” in subscribers following its anti-Trump editorial, which focused on his impeachment by the House of Representatives last month.
The anti-Trump Lincoln Project also sees room for its new religion-focused digital ad to pick off more than just evangelical voters. Madrid, the group’s adviser, said that the ad’s messaging can also move college-educated white suburban women who helped Democrats take back the House in the 2018 midterm elections.
Pew’s study shows that while evangelicals continue to comprise a majority of white Protestants, their share of the nation’s total population has fallen amid lower affiliation with Christianity in general. Black evangelicals have typically leaned heavily toward the Democratic Party, while Latino evangelicals -- whom Trump’s team is courting ahead of the general election -- made up about one-quarter of the total Latino vote in 2018, according to AP’s VoteCast data, and have split between the parties.
—-
Associated Press writer Kathleen Ronayne contributed from Sacramento, Calif., and Associated Press writer Hannah Fingerhut contributed from Washington.
__
Associated Press religion coverage receives support from the Lilly Endowment through the Religion News Foundation. The AP is solely responsible for this content.
WASHINGTON (AP) — The Trump administration is dropping its designation of China as a currency manipulator in advance of the signing Wednesday of a Phase 1 U.S.-China trade agreement.
The preliminary pact that the two sides are set to sign includes a section that’s intended to prevent China from manipulating its currency to gain trade advantages.
The action announced Monday comes five months after the Trump administration had branded China a currency manipulator — the first time that any country had been so named since 1994 during the Clinton administration.
Even while removing China from its currency black list, the Treasury Department does name China as one of 10 countries it says require placement on a watch list that will mean their currency practices will be closely monitored. In addition to China, the countries on that monitoring list are Germany, Ireland, Italy, Japan, South Korea, Malaysia, Singapore, Switzerland and Vietnam.
Treasury Secretary Steven Mnuchin said the administration had dropped China’s designation as a currency manipulator because of commitments in the Phase 1 trade agreement that President Donald Trump is to sign with China on Wednesday at the White House.
“China has made enforceable commitments to refrain from competitive devaluation, while promoting transparency and accountability,” Mnuchin said in a statement accompanying the current report.
The Treasury Department is required to report to Congress twice a year in April and October on whether any countries are manipulating their currencies to gain unfair trade advantages against U.S. businesses and workers.
The new report is technically three months late, apparently because the Trump administration had delayed its release until it had achieved the currency Phase 1 commitments from China.
The initial decision to brand China as a manipulator had come in a surprise announcement in August which reversed a Treasury finding in May that no country was manipulating its currency. The United States had not put any country on the manipulation blacklist since the Clinton administration branded China a manipulator 26 years ago.
The designation is largely symbolic. It requires the United States to enter into negotiations to resolve the currency problem and could ultimately lead to the imposition of economic sanctions such as higher tariffs on Chinese goods, something the Trump administration was already doing in its tit-for-tat trade war with China.
HOUSTON (AP) — Astros manager AJ Hinch and general manager Jeff Luhnow were fired Monday after the pair were suspended by Major League Baseball for the team’s use of electronics for sign-stealing during Houston’s run to the 2017 World Series title and again in the 2018 season.
In U.S. sports’ largest scandal since the New England Patriots’ “Spygate,” Commissioner Rob Manfred announced the discipline Monday and strongly hinted that current Boston manager Alex Cora — the Astros bench coach in 2017 — will face equal or more severe punishment. Manfred said Cora developed the sign-stealing system used by the Astros. The Red Sox are under investigation for sign-stealing in Cora’s first season as manager in 2018, when Boston won the World Series.
Houston was fined $5 million, the maximum allowed under the Major League Constitution. The Astros will forfeit their next two first- and second-round amateur draft picks.
The investigation found that the Astros used the video feed from the center-field camera to see and decode the opposing catcher’s signs. Players banged on a trash can to signal to batters what was coming. Knowing what pitch is coming improves a batter’s odds of getting a hit.
Sign-stealing is a legal and time-honored part of baseball as long as it is done with the naked eye — say, by a baserunner standing on second. Using technology is prohibited.
Astros players disputed whether knowing the pitches seconds in advance helped batters. Houston had fewer wins at home than on the road, winning 94 home games and 110 on the road during the two seasons. There was no sign-stealing system on the road.
“While it is impossible to determine whether the conduct actually impacted the results on the field, the perception of some that it did causes significant harm to the game,” Manfred said.
Manfred, in his most significant action since becoming commissioner five years ago, said Hinch failed to stop the sign stealing and that Luhnow was responsible for the players’ conduct even though he made the dubious claim he was not aware. Manfred said owner Jim Crane was not informed.
An hour after MLB announced its decision, Crane opened a news conference by saying Hinch and Luhnow were fired.
“I have higher standards for the city and the franchise, and I’m going above and beyond, MLBs penalty,” he said. “We need to move forward with a clean slate.”
Houston was a big league-best 204-120 during the two years in question, winning its first title. Hinch, a 45-year-old former catcher with a degree from Stanford, was the most successful manager in the history of the Astros, who have won two of the last three AL pennants and came within one victory of another World Series title. Luhnow, 53, earned an MBA at Northwestern and fostered an analytic-based culture during eight seasons as Astros GM, but also a toxic one with high turnover.
“It is very clear to me that the culture of the baseball operations department, manifesting itself in the way its employees are treated, its relations with other clubs, and its relations with the media and external stakeholders, has been very problematic,” Manfred wrote in a nine-page statement. “At least in my view, the baseball operations department’s insular culture -- one that valued and rewarded results over other considerations, combined with a staff of individuals who often lacked direction or sufficient oversight, led ... finally, to an environment that allowed the conduct described in this report to have occurred.”
Crane, who hired Luhnow weeks after buying the Astros, denied a widespread problem, saying “I think there was some isolated situations.”
Hinch and Luhnow did not respond to phone messages and texts from The Associated Press.
Baseball’s response was far greater than that of the NFL to a similar infraction. New England coach Bill Belichick was fined $500,000 in 2007 and the Patriots were fined $250,000 for using video to capture an opponent’s signals. In the scandal known as Spygate, the Patriots also were stripped of a first-round draft choice. They were penalized again for $1 million eight years later for deflating footballs used in the AFC championship game. The NFL took away a first-round draft pick and suspended quarterback Tom Brady for four games.
Manfred said Hinch was aware of the system but did not tell Luhnow.
“As the person with responsibility for managing his players and coaches, there simply is no justification for Hinch’s failure to act,” Manfred said.
The GM told Major League Baseball he was unaware of the system, but Manfred held him accountable for the team’s actions.
“Although Luhnow denies having any awareness that his replay review room staff was decoding and transmitting signs, there is both documentary and testimonial evidence that indicates Luhnow had some knowledge of those efforts.”
Current New York Mets manager Carlos Beltrán, then a player with the Astros, was among the group involved. Manfred said no Astros players will be disciplined because he decided in September 2017 to hold a team’s manager and GM responsible.
“Virtually all of the Astros’ players had some involvement or knowledge of the scheme, and I am not in a position based on the investigative record to determine with any degree of certainty every player who should be held accountable.”
Baseball’s investigation began when former Astros pitcher Mike Fiers, now with Oakland, made the allegations in a report by The Athletic on Nov. 12.
Sign stealing has a long history in baseball — the New York Giants used a military field scope and buzzer during their 1951 tiebreaker playoff against the Brooklyn Dodgers. While decoding with the naked eye is allowed, MLB has enacted increasingly stringent prohibitions in recent years against the use of electronics to spy on opponents.
MLB’s Department of Investigations interviewed 27 witnesses, including 23 current and former Houston players, and reviews tens of thousands of emails, Slack communications, text messages, video clips and photographs.
Astros employees in the team’s video replay room started to decode signs using the center field camera at the start of the 2017 season. A player would act as a runner to bring the information to the dugout, where a runner on second would be signaled. The runner would decode the catcher’s sign and signal the batter. At times, an employee in the replay room would convey the information by text message to the watch or phone of a staff member in the dugout.
Cora began calling the replay room for the information early in the season. After a group of players that included Beltrán discussed how to improve the system about two months into the season, Cora arranged for a video monitor of the center field camera to be installed next to the dugout and players would communicate pitches by banging a bat or massage gun on a trash can. Two bangs usually were used for off-speed pitches and no sound for fastballs.
Manfred said the banging system was not used in 2018 but that signs were stolen by the replay room and communicated to the dugout during at least part of that season. There was no evidence signs were stolen during the 2018 playoffs.
The Mets and Beltrán declined to comment, spokesman Harold Kaufman said.
Also Monday, former Astros assistant GM Brandon Taubman was suspended through the World Series for his conduct during last year’s AL Championship Series, when his profane remarks directed at female reporters led to his firing by Houston, which at first denied the incident and later apologized.
Taubman can apply to Manfred for reinstatement after the World Series, and any future violations of Major League Rules would lead to a lifetime ban.
___
Blum reported from New York.
___
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP_Sports
DALLAS (AP) — A subtle design feature of the AR-15 rifle has raised a technical legal question that is derailing cases against people who are charged with illegally buying and selling the gun’s parts or building the weapon.
At issue is whether a key piece of one of America’s most popular firearms meets the definition of a gun that prosecutors have long relied on.
For decades, the federal government has treated a mechanism called the lower receiver as the essential piece of the semiautomatic rifle, which has been used in some of the nation’s deadliest mass shootings. Prosecutors regularly bring charges based on that specific part.
But some defense attorneys have recently argued that the part alone does not meet the definition in the law. Federal law enforcement officials, who have long been concerned about the discrepancy, are increasingly worried that it could hinder some criminal prosecutions and undermine firearms regulations nationwide.
“Now the cat is out of the bag, so I think you’ll see more of this going on,” said Stephen Halbrook, an attorney who has written books on gun law and history. “Basically, the government has gotten away with this for a long time.”
Cases involving lower receivers represent a small fraction of the thousands of federal gun charges filed each year. But the loophole has allowed some people accused of illegally selling or possessing the parts, including convicted felons, to escape prosecution. The issue also complicates efforts to address so-called ghost guns, which are largely untraceable because they are assembled from parts.
Since 2016, at least five defendants have challenged the government and succeeded in getting some charges dropped, avoiding prison or seeing their cases dismissed entirely. Three judges have rejected the government’s interpretation of the law, despite dire warnings from prosecutors.
Federal regulations define a firearm’s “frame” or “receiver” as the piece considered to be the gun itself. But in an AR-15, the receiver is split into upper and lower parts — and some of the components listed in the definition are contained in the upper half. That has led judges to rule that a lower receiver alone cannot be considered a gun.
The lower receiver sits above the pistol grip, holds the trigger and hammer, and has a slot for the magazine. By itself, it cannot fire a bullet. But by treating the piece as a firearm, the Bureau of Alcohol, Tobacco, Firearms and Explosives is able to regulate who can obtain it. Because authorities consider the part to be a gun, people prohibited from having firearms have been charged for possessing them.
In 2018, prosecutors said a ruling against the government would “seriously undermine the ATF’s ability to trace and regulate firearms nationwide.” CNN first reported the case and its implications.
Last month, a federal judge in Ohio dealt the latest blow, dismissing charges against two men accused of making false statements to buy lower receivers.
“Any public citizen would be concerned about this loophole that we exploited,” said attorney Thomas Kurt, who represented defendant Richard Rowold. “As a citizen, I hope the ATF corrects this. As Mr. Rowold’s attorney, I’m grateful the judge followed the law in getting to the correct result.”
The gun industry estimates there are more than 17 million AR-15-style rifles in circulation, and the National Rifle Association once dubbed it “America’s rifle.” AR-15-style weapons were used in attacks in Newtown, Connecticut, Las Vegas and Parkland, Florida.
In the case of Rowold, who is prohibited from buying or possessing firearms because of felony convictions, the government claimed that he used another man as a proxy to purchase 50 lower receivers. The 2018 indictment also charged him with having 15 lower receivers. Kurt declined to comment on why his client had the parts.
The case rested on the ATF’s claim that the components were legally firearms. Judge James Carr called that a “plainly erroneous” reading of the law and said the agency has a duty to fix the problem.
“Misapplying the law for a long time provides no immunity from scrutiny,” Carr wrote in his order to dismiss.
Federal prosecutors in Rowold’s case and several others declined to comment. An ATF spokeswoman would not answer questions posed by The Associated Press but said the agency is “keenly assessing” Carr’s decision.
The problem has attracted attention at the highest levels of law enforcement.
In 2016, then-Attorney General Loretta Lynch wrote a letter to House Speaker Paul Ryan after a judge dismissed a case in Northern California involving a man with a felony record who was accused of buying an unmarked AR-15 lower receiver from an undercover agent.
Prosecutors argued that the case against Alejandro Jimenez should proceed even if the part “does not perfectly fit” the legal definition. The judge dismissed the charges.
The decision prompted Lynch to write that if the ATF wants an AR-15 lower receiver to be considered a firearm under the law, then it should pursue “regulatory or administrative action.” But there’s no public record of the ATF taking such a step.
“I can’t imagine why no one has taken the initiative to correct this,” said Dan O’Kelly, a former senior ATF agent and director of a gun-training company known as International Firearm Specialist Academy. His testimony has guided several defense attorneys.
Since Lynch’s letter, such prosecutions have continued to secure prison sentences.
In April, for instance, an Oklahoma man was charged with illegally possessing a firearm after police who pulled him over found loaded high-capacity magazines and the lower receiver of an AR-15-style rifle in his truck.
Jason Scott Pedro, a 37-year-old with a felony record for domestic violence, was sentenced in November to seven years in prison.
There’s no evidence in court records that Pedro’s lawyer challenged whether the lower receiver was rightly considered a gun. The attorney did not respond to requests for comment but has filed a notice of appeal.
“I think the criminal defense bar has kind of let their clients down for letting this go on for all these years,” Halbrook said.
In one case, an ATF expert testified that the same principle could apply to many other firearms. Prosecutors worry that more rulings against the government could allow people prohibited from having guns to purchase weapons piece by piece with no regulation or background check.
Franklin Zimring, a professor at the University of California, Berkeley School of Law, is skeptical of that claim and said the same behavior could often be prosecuted under state laws.
The AR-15 is a popular model for gun enthusiasts to legally build at home. The rifles are sometimes constructed out of partially machined receivers, often called “80% receivers,” which can be bought and sold without background checks and need not have serial numbers because they are unfinished.
If federal officials want to maintain control in this growing do-it-yourself gun market they need to first establish functional regulation of lower receivers, said Kristen Rand, legislative director at the Washington, D.C.-based Violence Policy Center.
“From a public safety standpoint,” she said, ”this is very important and isn’t just an in-the-weeds legal definitional problem.”
___
Dazio reported from Los Angeles. Associated Press Writer Lisa Marie Pane in Boise, Idaho, and researcher Jennifer Farrar in New York City contributed to this report.
DES MOINES, Iowa (AP) — Democrat Cory Booker dropped out of the presidential race Monday, ending a campaign whose message of unity and love failed to resonate in a political era marked by chaos and anxiety.
His departure now leaves a field that was once the most diverse in history with just one remaining African American candidate, former Massachusetts Gov. Deval Patrick, who is struggling to register in the polls amid a late entry into the race.
Since launching his campaign last February, Booker, a U.S. senator from New Jersey, struggled to raise the type of money required to support a White House bid. He was at the back of the pack in most surveys and failed to meet the polling requirements needed to participate in Tuesday’s debate. Booker also missed last month’s debate and exits the race polling in low single digits in the early primary states and nationwide.
In an email to supporters, Booker said that he “got into this race to win” and that his failure to make the debates prevented him from raising raise the money required for victory.
“Our campaign has reached the point where we need more money to scale up and continue building a campaign that can win -- money we don’t have, and money that is harder to raise because I won’t be on the next debate stage and because the urgent business of impeachment will rightly be keeping me in Washington,” he said.
For African Americans, Booker’s exit is more meaningful than just being one less option to consider.
“It means that we don’t count,” said Helen Moore, a member of the Detroit-based Keep the Vote-No Takeover grassroots organization. “Now, we can’t look forward to any black candidate being considered from now until it’s time to vote. They are completely out of the picture.”
Booker had warned that the looming impeachment trial of President Donald Trump would deal a “big, big blow” to his campaign by pulling him away from Iowa in the final weeks before the Feb. 3 Iowa caucuses. He hinted at the challenges facing his campaign last week in an interview on The Associated Press’ “Ground Game” podcast.
“If we can’t raise more money in this final stretch, we won’t be able to do the things that other campaigns with more money can do to show presence,” he said.
In his email to supporters, Booker pledged to do “everything in my power to elect the eventual Democratic nominee for president,” though his campaign says he has no immediate plans to endorse a candidate in the primary.
It’s a humbling finish for someone who was once lauded by Oprah Winfrey as the “rock star mayor” who helped lead the renewal of Newark, New Jersey. During his seven years in City Hall, Booker was known for his headline-grabbing feats of local do-goodery, including running into a burning building to save a woman, and his early fluency with social media, which brought him 1.4 million followers on Twitter when the platform was little used in politics. His rhetorical skills and Ivy League background often brought comparisons to President Barack Obama, and he’d been discussed as a potential presidential contender since his arrival in the Senate in 2013.
Now, Massachusetts Sen. Elizabeth Warren has mastered the art of the selfie on social media. Another former mayor, Pete Buttigieg of South Bend, Indiana, is seen as the freshest face in the field. Former Vice President Joe Biden has built a strong base of support with black voters. And Booker’s message of hope and love seemed to fall flat during an era characterized perhaps most strongly by Democratic fury over the actions of the Trump administration.
An early focus on building out a strong and seasoned campaign operation in Iowa and South Carolina may have hampered his campaign in the long run, as the resources he spent early on staff there left him working with a tight budget in the later stages of the primary, when many of his opponents were going on air with television ads. That meant that even later in the campaign, after he had collected some of the top endorsements in Iowa and visited South Carolina almost more than any other candidate, a significant portion of the electorate in both states either said they were unfamiliar with his campaign or viewed him unfavorably.
On the stump, Booker emphasized his Midwestern connections — often referencing the nearly 80 family members he has still living in Iowa when he campaigned there — and delivered an exhortation to voters to use “radical love” to overcome what he considered Trump’s hate. But he rarely drew a contrast with his opponents on the trail, even when asked directly, and even some of Booker’s supporters worried his message on Trump wasn’t sharp enough to go up against a Republican president known for dragging his opponents into the mud.
Booker struggled to land on a message that would resonate with voters. He’s long been seen as a progressive Democrat in the Senate, pushing for criminal justice reform and marijuana legalization. And on the campaign trail, he proposed establishing a $1,000 savings account for every child born in the U.S. to help close the racial wealth gap.
He was among the first candidates to release a gun control plan, and at the time it was the most ambitious in the field, as it included a gun licensing program that would have been seen as political suicide just a decade before. He also released an early criminal justice reform plan that focused heavily on addressing sentencing disparities for drug crimes.
But he also sought to frame himself as an uplifting, unifying figure who emphasized his bipartisan work record. That didn’t land in a Democratic primary that has often rewarded candidates who promised voters they were tough-minded fighters who could take on Trump.
Booker’s seat is up for a vote this year, and he will run for reelection to the Senate. A handful of candidates has launched campaigns for the seat, but Booker is expected to have an easy path to reelection.
Booker’s exit from the presidential race further narrows the once two dozen-strong field, which now stands at 12 candidates.
___
Associated Press writer Corey Williams in Detroit contributed to this report.
___
Catch up on the 2020 election campaign with AP experts on our weekly politics podcast, “Ground Game.”
WASHINGTON (AP) — The U.S. sent home 21 Saudi military students following an investigation into a deadly shooting last month by one of their fellow trainees at the Pensacola Naval Air Station, an attack that Attorney General William Barr said was an act of terrorism driven by some of the same motivations of the Sept. 11 plot.
The trainees who were removed had jihadist or anti-American sentiments on social media pages or had “contact with child pornography,” including in internet chat rooms, officials said. None is accused of having had advance knowledge of the shooting or helped the 21-year-old gunman carry it out.
The Justice Department reviewed whether any of the trainees should face charges, but concluded that the conduct did not meet the standards for federal prosecution, Barr said.
The Dec. 6 shooting at the base in Pensacola in which Saudi Air Force officer Mohammed Alshamrani killed three U.S. sailors and injured eight other people focused public attention on the presence of foreign students in American military training programs and exposed shortcomings in the screening of cadets. Monday’s resolution singled out misconduct by individual students but also allows for continued training of pilots from Saudi Arabia, an important ally in the Middle East.
“The Kingdom of Saudi Arabia gave complete and total support for our counter-terrorism investigation, and ordered all Saudi trainees to fully cooperate,” Barr said. “This assistance was critical to helping the FBI determine whether anyone assisted the shooter in the attack.”
Barr said the kingdom has agreed to review the conduct of all 21 to see if they should face military discipline and to send back anyone the U.S. later determines should face charges.
Separately, the attorney general on Monday asked Apple to help extract data from two iPhones that belonged to the gunman, including one that authorities say Alshamrani damaged with a bullet after being confronted by law enforcement.
Law enforcement officials left no doubt that Alshamrani was motivated by jihadist ideology, saying he visited a New York City memorial to the attacks of Sept. 11, 2001, over the Thanksgiving holiday weekend and posted anti-American and anti-Israeli messages on social media just two hours before the shooting. Last Sept. 11, Barr said, Alshamrani posted a message that said “the countdown has started.”
Officials had earlier said that Alshamrani hosted a party before the shooting, where he and others watched videos of mass shootings. Alshamrani, who also traveled back and forth between Saudi Arabia and the U.S., was undergoing flight training at Pensacola, where foreign military members routinely receive instruction.
On the morning of Dec. 6, the gunman walked into a building on the grounds of the Navy base and shot his victims “in cold blood” as Marines who heard the gunfire from outside yanked a fire extinguisher off the wall and rushed to confront him. He was ultimately killed by a sheriff’s deputy during the rampage.
The gunman shot at a photo of President Donald Trump and another former U.S. president and witnesses reported he was making statements “critical of American military actions overseas” during the attack, FBI Deputy Director David Bowdich said.
The December shooting raised questions about how well international military students are screened before they attend training at American bases. Some lawmakers, including a top Republican ally of Trump, have called for Saudi Arabia to be suspended from the American military training program.
Trump called for the program to be reviewed. But Sen. Lindsey Graham, R-S.C., said the program needed to be reevaluated after the attack.
National security adviser Robert O’Brien said Sunday in an interview on Fox News that the shooting “showed that there had been errors in the way that we vetted” the students. The actions being taken by the Justice Department and Defense Department to remove the Saudi students are to “protect our service men and women,” he said.
The Pentagon has done a broad review of the vetting process for international students, and officials have said they are likely to increase the Defense Department’s role in the screening.
Navy Capt. Brook DeWalt, a Pentagon spokesman, said Monday that Defense Secretary Mark Esper has the results of the vetting review and the department will release appropriate information in the near future.
Twelve of the trainees who were removed were assigned to the base in Pensacola and nine others were assigned to Air Force bases in the U.S., including in Mississippi, Texas and Oklahoma, a senior Justice Department official said. The trainees were all removed from the U.S. on a Saudi government aircraft on Monday, the official said.
Of the 21 sent home, 17 had social media containing jihadi or anti-American content. Fifteen had some kind of contact with child pornography. One of the trainees had possessed over 100 images of child pornography and had searched for the material but the U.S. attorney’s office determined there wasn’t enough evidence to warrant federal prosecution.
In a statement, the Saudi embassy called the shooter a “disturbed and radicalized” individual who acted alone and who does not represent the values of Saudi Arabia or the hundreds of thousands of Saudis who have lived and studied in the U.S. over the decades. It said it had cooperated with the investigation and would continue to do so.
“It is worth noting that the military training that the US provides to Saudi military personnel has enabled Saudi soldiers, pilots and sailors to fight along their American counterparts and against our common foes,” the statement said.
Investigators, meanwhile, have been trying to access two of Alshamrami’s devices — an iPhone 7 and an iPhone 5 — but have been unable to access them because the phones are locked and encrypted, according to a letter from the FBI’s general counsel, Dana Boente. The FBI has received a court authorization to search the phones and the devices have been sent to the bureau’s lab in Quantico, Virginia, he said.
The investigation is considered a “high-priority national security matter,” Boente said in the letter.
FBI officials have sought help from other federal agencies and other experts, and investigators have been trying to guess the passwords, but those efforts have been unsuccessful, according to the letter.
Apple said in a statement Monday that it rejected any characterization it had not provided substantive assistance in the investigation. It said it has “produced a wide variety of information” as part of the probe, including iCloud backups, account information and other data about transactions.
While Apple and the FBI have been in discussions over the last week, Apple has not yet told the Justice Department whether the company has the capability of accessing the phones, another senior Justice Department official said. The official spoke on condition of anonymity to discuss an ongoing investigation.
Apple said it only learned last week that the gunman had a second iPhone and that the FBI had been unable to access the devices. The company said its engineers had a call with the FBI to “provide additional technical assistance” and it would continue to cooperate with investigators.
___
This story corrects an earlier version to reflect that authorities now say that Alshamrani shot the phone himself.
Actress Issa Rae was ready with her quip, as if she had predicted the Oscar nominations that were announced Monday. “Congratulations to those men,” she said dryly, as the best director nominees — yes, five men — were announced.
Rae’s expertly thrown shade echoed through social media as observers took stock of what was, yet again, a pretty bad day for diversity and inclusion in Hollywood. Not only were there no female nominees in directing for the 87th time in Oscar history — a direct snub to Greta Gerwig, director of the acclaimed “Little Women,” as well as several other worthy candidates. There was also only one person of color, Cynthia Erivo, among the 20 acting nominees.
Those slights overshadowed the happier news that across all categories, a record 62 women (about a third of nominees) were nominated.
They also had people asking: Why is this happening again, when diversity has been on the front burner for years now, and the Academy has taken steps to overhaul its overwhelmingly white, male membership? And what will it take to accomplish real change?
“So here we are again,” said Stacy L. Smith, director of the USC Annenberg Inclusion Initiative at the University of Southern California, of the nominations. She said the results were particularly frustrating because 2019 was a breakout year for female directors.
“They were out in strong numbers. This was the year of the highest percentage of female directors that we’ve seen,” she said. “And yet they’re not allowed to be lauded by these cultural institutions for their directing prowess.”
There’s a “complete disconnect,” Smith added, “between objective criteria of merit and what we are seeing in the nominations for directing at the Academy Awards.”
In terms of race and ethnicity, there was disappointment that only Erivo’s nomination for “Harriet” prevented an entirely white slate in all four categories — a scenario that first happened in 2015, resulting in the #OscarsSoWhite hashtag, and again in 2016.
The Academy sought thereafter to diversity its ranks. Since 2015, the group’s overall female membership has grown from 25% to 32%, and overall membership of people of color has doubled, from 8% to 16%.
Erivo, a double nominee for both best actress and best original song, said in an interview from Japan that she hoped this year would be a “stepping stone to opening the doors” to honoring the work of a more diverse group of artists. She paid special tribute to “so much good work specifically by women” like Gerwig and other female directors who were overlooked.
Gil Robertson, president of the African American Film Critics Association, said he wished the acting nominations had been more diverse, but he felt hopeful they were more of a blip than a slide backwards. “I think we’re making strides in the right direction,” he said.
Among the most glaring snubs was that of Jennifer Lopez, who had been seen as a virtual shoo-in for a supporting actress nod for playing a stripper in “Hustlers.” In the lead actress category, Awkwafina, who a week ago won a Golden Globe, was denied a nod for her role in “The Farewell.” She would have become just the second Asian American nominated for best actress (the first, 1936 nominee Merle Oberon, hid her South Asian heritage).
The omission was a reflection of the difficulty Asian Americans in Hollywood have long had in cracking the acting categories in particular.
“It’s been a long, slow battle,” said Chris Tashima, an actor-director and a member of the Academy Asians Action Committee, an informal group of Asian and Pacific Islander members of the Academy. “We’ve been very much absent. We’ve been trying to create opportunities for years. But you can’t even get nominated if you don’t get the roles.”
Tashima added, though, that progress is happening, albeit slowly — with television leading the way in terms of new opportunities. “It’s night and day from five years ago,” he said.
Smith said that for women directors, the key problem is an outmoded view that some Academy members have of what a leader is — a very masculine view.
“What needs to change is that stereotypical view of WHO can lead,” Smith said. “And until that changes, this is going to keep happening.”
She added: “Research globally suggests that when people think ‘manager,’ they think male. We found the exact same thing with directors. ... The research is very clear. Women aren’t being considered for top leadership positions, and when they are, they are often criticized more sharply. We’re seeing that playing out right now in the awards process.”
At Time’s Up, the Hollywood-based organization devoted to fighting sexual harassment and sexual assault, Chief Operating Officer Rebecca Goldman pledged to work for change.
“This is why TIME’S UP exists — to ensure women in entertainment and across industries get the opportunities and recognition they deserve,” she said. “And we won’t stop fighting until they do.”
SAN DIEGO (AP) — A U.S. judge ruled Monday that the Trump administration is operating within its authority when separating families stopped at the Mexico border, rejecting arguments that it was quietly returning to widespread practices that drew international condemnation.
The American Civil Liberties Union argued that the administration was splitting families over dubious allegations and minor transgressions including traffic offenses.
It asked the judge in July to rule on whether the government was justified in separating 911 children during the first year after the judge halted the general practice in June 2018.
U.S. District Judge Dana Sabraw indicated he was uncomfortable second-guessing government decisions to separate children on grounds that parents were considered unfit or dangerous, or in other limited circumstances like criminal history, communicable diseases and doubts about parentage. He found no evidence that the government was abusing its discretion.
“It is an invitation that is potentially massive in scope, invades an area that is particularly within the province of the executive branch to secure the nation’s border, and goes beyond this court’s class certification and preliminary injunction orders, which were focused on the administration’s practice of separating families at the border for the purpose of deterring immigration, and failing to reunify those families,” Sabraw wrote in a 26-page decision.
In a partial victory for the ACLU, the judge said the government must settle any doubts about parentage before separating families by using DNA tests that deliver results in about 90 minutes.
The ruling was a rare instance of the San Diego judge siding with the administration. In June 2018, he halted the practice of separating families under a “zero tolerance” policy to deter illegal immigration and ordered that about 2,800 children be quickly reunited with family. Lack of adequate tracking systems at the time made reunification a monumental task.
The judge later ordered the administration to identify more than 1,500 additional children who were separated earlier in Trump’s presidency, starting in July 2017. The government is providing information to the ACLU, which, in some cases, has volunteers going door to door in Guatemala.
The ACLU said it was considering its next move.
“The court strongly reaffirmed that the Trump administration bears the burden if it attempts to separate families based on an accusation that the adult is not the child’s parent,” said ACLU attorney Lee Gelernt. “We are evaluating the decision to determine next steps on how to ensure that children are not separated from their parents based on minor infractions.”
The Justice Department didn’t immediately respond to a request for comment.
The judge noted that the administration acknowledged it erred by separating a mother who needed emergency surgery and a father who was HIV-positive. He rejected the ACLU’s contention that some accusations of gang affiliation were unfounded, saying that the government relies on “objective evidence, not allegations or intuition.”
Days before the judge halted the widespread practice of separating families in 2018, Trump retreated under extraordinary criticism by exempting families from his “zero tolerance” policy to criminally prosecute every adult who crosses the border illegally.
WASHINGTON (AP) — Elizabeth Warren said Monday that fellow Democratic presidential candidate Bernie Sanders told her he didn’t think a woman could win the White House when they met privately in 2018.
Sanders has denied telling Warren that a woman couldn’t win. But the Massachusetts senator said in a statement that during their two-hour meeting to discuss the 2020 election, “among the topics that came up was what would happen if Democrats nominated a female candidate. I thought a woman could win; he disagreed.”
The dispute marked an extraordinary turning point in a Democratic primary that, with few exceptions, has been characterized by genial differences over domestic issues such as health care. The feud brewing between Warren and Sanders will likely change the tone of the campaign going into Tuesday’s debate and comes less than three weeks before the Iowa caucuses launch the Democratic contest. It also marks a jarring split between the two longtime progressive allies, potentially giving an opening for a more moderate rivals such as former Vice President Joe Biden to attempt unifying the party.
In her statement, Warren said she and Sanders “have far more in common than our differences on punditry.”
“I’m in this race to talk about what’s broken in this country and how to fix it -- and that’s what I’m going to continue to do,” she said. “I know Bernie is in the race for the same reason. We have been friends and allies in this fight for a long time, and I have no doubt we will continue to work together to defeat Donald Trump and put our government on the side of the people.”
CNN first reported Sanders’ comment earlier Monday, based on the accounts of anonymous people with knowledge of the meeting. That drew a swift and strong denial from Sanders, a Vermont senator, who said, “It is ludicrous to believe that at the same meeting where Elizabeth Warren told me she was going to run for president, I would tell her that a woman couldn’t win.”
Sanders aides then accused Warren’s campaign of leaking what they said was an inaccurate description of what was said during the meeting.
That helped prompt Warren’s statement hours later. Jeff Weaver, a senior adviser to Sanders, then seemed to try and defuse the situation, refusing to refute Warren’s version and instead saying only on CNN on Monday night that “those conversations can sometimes get misconstrued.”
Still, the controversy is likely to revive anxiety among Democrats about whether — nearly four years after Hillary Clinton lost her White House bid — voters are willing to support another woman running for president. Such questions have dogged Warren and other female candidates throughout the 2020 campaign.
Hawaii Rep. Tulsi Gabbard tweeted Monday night that she had also met with Sanders before announcing her presidential campaign. “In that meeting, he showed me the greatest respect and encouragement, just as he always has,” Gabbard wrote.
The clash between Sanders and Warren comes on the eve of a Democratic presidential debate in Iowa, the last before that state kicks off the Democratic primary with its leadoff caucuses on Feb. 3. Warren and Sanders, both of whom support universal health care, tuition-free public college and raising the minimum wage, have for months competed for their party’s most liberal wing while refraining from attacking each other.
But following a Politico story over the weekend that reported the Sanders campaign had instructed some volunteers to characterize Warren as a candidate for wealthy and well-educated voters in conversations with undecided voters, Warren issued a rare critique of her opponent. She said she was “disappointed” Sanders was instructing staffers to “trash” her.
That set the stage for Monday’s hours of additional squabbling -- and may well spell a lively debate Tuesday.
Stephanie Taylor and Adam Green, co-founders of the Progressive Change Campaign Committee, which has at times praised both Warren and Sanders, released its own statement Monday night saying they “believe that a back-and-forth about this private meeting is counter-productive for progressives.”
“In this pivotal moment of the campaign, progressives must work together to defeat Donald Trump,” Taylor and Green said.
___
Catch up on the 2020 election campaign with AP experts on our weekly politics podcast, “Ground Game.”
NEW ORLEANS (AP) — The latest from the College Football Playoff championship game between No. 1 LSU and No. 3 Clemson in New Orleans (all times local):
10:45 p.m.
No. 1 LSU has extended its lead to 42-25 over No. 3 Clemson early the fourth quarter in the College Football Playoff championship game.
LSU had already scored more points against Clemson than any other team this season before Burrow hit Terrace Marshall Jr. with a 24-yard TD pass.
Burrow is 29 of 45 passing for 442 yards and four touchdowns, giving him an NCAA record 60 in a season. Burrow also is LSU’s leading rusher with 60 yards and a TD on 13 rushes.
Chase has nine catches for 221 yards and two TDs, while Thaddeus Moss also has two TD catches.
Trevor Lawrence entered the fourth quarter 16 of 32 for 201 yards and no touchdowns, but rushed for the opening score of the game.
___
10:20 p.m.
Joe Burrow’s magical season continues as the Heisman Trophy winner has set an NCAA record in the College Football Playoff championship game.
The quarterback’s 4-yard touchdown pass to Thaddeus Moss has given No. 1 LSU a 35-25 lead over No. 3 Clemson in the third quarter of the national championship game.
The throw also gave Burrow an NCAA single-season record 59 TD passes. It was also the second touchdown catch of the game for Moss, the son of Hall-of-Fame NFL receiver Randy Moss.
Moss’ first TD came at the end of the first half from 6 yards out.
LSU’s latest score was set up Ja’Marr Chase’s 43-yard gain on a catch-and-run on third-and 11. That gave Chase, who also has two touchdowns, 218 yards receiving on eight catches.
Shortly after, Clemson’s leading tackler James Skalski, was ejected for targeting after his hit on LSU receiver Justin Jefferson. The linebacker’s personal foul set up LSU on the Clemson 4.
Clemson had cut LSU’s 11-point halftime lead to 28-25 earlier in the quarter on Louisiana native Travis Etienne’s 3-yard run, followed by Trevor Lawrence’s pass to Amari Rodgers
___
9:25 p.m.
The College Football Playoff championship hasn’t disappointed after a long layoff.
Joe Burrow’s 6-yard touchdown pass to Thaddeus Moss, set up by the quarterback’s 29-yard, third down scramble, has given No. 1 LSU a 28-17 lead over No. 3 Clemson at halftime of Monday night’s title game.
After a slow start that saw LSU fail to cross its own 11 on its first two series, Burrow and Co. found their rhythm. LSU finished the second quarter with three unanswered touchdowns to erase a 10-point deficit that was its largest this season.
The Heisman Trophy winner is 16 of 28 for 270 yards with three TDs to go with 55 yards and a touchdown on eight rushes. Burrow enters the second half tied with ex-Hawaii QB Colt Brennan for the NCAA single-season record for TD passes in a season with 58.
Burrrow’s top target has been New Orleans native Ja’Marr Chase, who has six catches for 162 yards and two touchdowns. Two of his catches have gone for more than 50 yards.
Clemson scored first on Trevor Lawrence’s short TD run and went up 17-7 on receiver Tee Higgins’ 36-yard run on a reverse in second quarter.
LSU, which won the toss and elected to kick off, will receive the kickoff to start the second half.
___
8:45 p.m.
The national championship game is turning into the shootout many expected between No. 1 LSU and No. 3 Clemson.
After Clemson scored 10 straight points on B.T. Potter’s 52-yard field goal and Tee Higgins 36-yard touchdown run, LSU answered on Joe Burrow’s 3-yard scoring run to cut the lead to 17-14 in the second quarter.
The 17 points put up by both teams were scored in less than five minutes.
Potter’s field goal was his career best. Higgins took the handoff, faked a reverse and rolled through several LSU defenders near the goal line to finish in the end zone.
The 10-point deficit was the largest LSU had faced all season.
8:05 p.m.
Joe Burrow’s 52-yard pass to Ja’Marr Chase has tied the national championship game at 7-7.
Clemson’s defense didn’t allow No. 1 LSU to cross its own 11 on its first two possessions and LSU still hadn’t crossed midfield when it took possession for the fourth time in the game late in the first quarter.
With the help of a couple of tough runs by Clyde Edwards-Helaire, LSU finally found its rhythm.
Still, this national title performance so far stands in stark contrast to the semifinal against Oklahoma in the Peach Bowl, when Burrow passed for seven TDs in the first half.
___
7:50 p.m.
Clemson is on the scoreboard first — although it took longer than may have been expected.
The third-ranked Tigers scored on a 1-yard touchdown run by Trevor Lawrence to take a 7-0 lead on No. 1 LSU with 6:34 left in the first quarter.
It is LSU’s first time trailing in 25 quarters.
The game was billed as a high-scoring, back-and-forth affair. But the teams each punted twice on the their opening two possessions.
LSU’s potent offense has only six yards after its first two series.
___
7:20 p.m.
Thunderous applause and chants of “Four More Years” welcomed President Donald Trump and first lady Melania Trump as they took the field at the New Orleans Superdome before college football’s championship game between LSU and Clemson.
The crowd also broke into chants of “USA, USA.”
The president and first lady walked onto the field Monday night for the singing of the national anthem.
Trump won a nearly 20-point victory in Louisiana in the 2016 presidential election.
LSU then won the coin toss and kicked off to Clemson, which was forced to punt on its first possession.
___
6:55 p.m.
President Donald Trump has arrived at the New Orleans Superdome to watch No. 1 LSU and No. 3 Clemson battle square off in the College Football Playoff championship game.
Trump arrived at the domed stadium shortly before the game’s scheduled kickoff. He was accompanied by his wife, first lady Melania Trump and South Carolina U.S. senators Lindsey Graham and Tim Scott. Graham and Scott are Republican, like the president.
Trump predicted that it will be a “great game” as he departed the White House.
Trump is familiar with LSU. He took attended a November game in Tuscaloosa, Alabama, when the Tigers beat the Crimson Tide.
The president hosted many of Clemson’s players and coaches at the White House in January 2019 after the team won the 2018 national championship.
___
2:45 p.m.
The College Football Playoff has extended the contract of executive director Bill Hancock.
The 11 university presidents and chancellors that make up the Board of Managers unanimously approve the extension Monday, a few hours before the national championship game in New Orleans between Clemson and LSU.
Terms were not disclosed. Hancock’s current three-year deal was set to expire in June.
Hancock has been executive director of the playoff since its start in 2014 and helped craft the current postseason system through the transition from the Bowl Championship Series.
“It’s a rolling agreement, so I intend to be here as long as they’ll have me and as long as I want to,” Hancock said. “I’m having a blast. I’m honored and delighted to get to do what I do.”
Hancock was the first executive director of the BCS, appointed in 2009 after working as an administrator for the FBS conference commissioners who manage the postseason.
___
1 p.m.
Top-ranked LSU faces No. 3 Clemson for the college football national championship Monday night at the Superdome in New Orleans.
Both sets of Tigers are 14-0, seeking to cap a perfect season. President Donald Trump is expected to be among those in attendance.
It’s practically a home game for LSU. Its campus is just 90 minutes away and purple-and-gold clad supporters could be found all around New Orleans.
There were plenty of orange-wearing Clemson fans on the streets, hoping their team wins a second straight national championship. A second-story veranda near Jackson Square boasted Clemson flags from its 2016 and 2018 national titles, along with an inflatable Tiger figure.
Clemson is after its third crown in four seasons and its 30th straight victory.
LSU is seeking its first national championship since 2007 and first in the CFP era.
___
More AP college football: https://apnews.com/APTop25CollegeFootballPoll and https://apnews.com/Collegefootball and https://twitter.com/AP_Top25
WASHINGTON (AP) — Defense Secretary Mark Esper and other administration officials joined President Donald Trump in trying to draw attention to dissent in Iran instead of lingering questions about the scale of the threat used to justify a drone strike on Iran’s top military leader.
Esper added to the uncertainty over the intelligence behind this month’s killing of Gen. Qassem Soleimani when he said Sunday that he had seen no hard evidence that four American embassies had been under possible threat. Trump said last Friday that Soleimani had been planning such an attack.
In appearances on Sunday news shows, both Esper and national security adviser Robert O’Brien said they agreed that Iran might have hit more than just the U.S. Embassy in the Iraqi capital. “It is certainly consistent with the intelligence to assume that they would have hit embassies in at least four countries,” O’Brien said.
But Esper, when asked whether there was a specific piece of evidence, replied: “I didn’t see one with regard to four embassies.″ And in response to a question about whether Trump was “embellishing″ the threat, Esper said, ”I don’t believe so.”
In a tweet both defiant and dismissive, Trump turned his attention again to supporting Iranian protesters and warning the Iranian government not to attack them or to pursue nuclear weapons. He tweeted: “National Security Adviser suggested today that sanctions & protests have Iran ‘choked off’, will force them to negotiate. Actually, I couldn’t care less if they negotiate. Will be totally up to them but, no nuclear weapons and ‘don’t kill your protesters.’
O’Brien had suggested the United States sees this moment as an opportunity to further intensify pressure on Iran’s leaders, with whom the U.S. has been at odds for four decades. Iran’s leaders already are under enormous strain from economic sanctions that have virtually strangled Iran’s main source of income — oil exports. Esper said street protests in Tehran show the Iranian people are hungry for a more accountable government after leaders denied, then admitted shooting down a Ukrainian passenger plane.
“You can see the Iranian people are standing up and asserting their rights, their aspirations for a better government — a different regime,” Esper said.
Trump’s order to strike at Soleimani came as he was already under pressure ahead of an impeachment trial in the Senate. Many in Congress complained that the administration did not consult them in advance and did not adequately brief members afterward.
After the U.S. killed Soleimani in Baghdad, it appeared the backlash in Iran and elsewhere had helped Tehran by shifting the focus away from its internal problems. The strike also seemed to divert attention away from domestic unrest in Iraq over government corruption, and it intensified efforts by Iraqi politicians to expel American and other foreign forces.
But the shootdown of the Ukrainian plane on the night of the Soleimani strike, killing all 176 people aboard, opened a new avenue of pressure for the Trump administration.
“I think the regime is having a very bad week,” O’Brien said.
“This was a regime that’s reeling from maximum pressure, they’re reeling from their incompetence in this situation and the people of Iran are just fed up with it,” he said, adding that regime change is not U.S. policy.
“The people of Iran are going to hopefully have the ability at some point to elect their own government and to be governed by the leaders they choose,” O’Brien said.
In Tehran, Iran’s security forces deployed in large numbers on Sunday. Demonstrators defied the heavy police presence to protest their country’s days of denials that it shot down the Ukrainian plane. Videos posted online showed protesters shouting anti-government slogans and moving through subway stations and sidewalks.
Iranians have expressed anger over the downing of the Ukrainian flight and the misleading explanations from senior officials in the immediate aftermath. Later the government took the blame for the shootdown, saying it was caused by human error.
Reviewing the dramatic sequence of events that preceded the downing of the Ukrainian jetliner Wednesday, Esper justified the U.S. killing of Soleimani as an act of self defense, and he said the U.S. foresees no more Iranian military attacks in retaliation for that. Even so, the leader of the Lebanese militant group Hezbollah, which is closely aligned with Iran, said Sunday that Iran’s missile attacks on two bases in Iraq housing U.S. forces last week were only the start of the retaliation.
Hassan Nasrallah described Iran’s military response, which caused no casualties, as a “slap” at the U.S. He called it the “first step down a long path” that will ensure U.S. troops withdraw from the region.
Democratic Sen. Chris Coons of Delaware, a member of the Senate Foreign Relations Committee, said he was concerned that “Iran has lots of ways that they can take action against us, both overt and covert, and I don’t think they’re done trying to seek revenge.″
Esper spoke hopefully of getting the NATO alliance more involved in Iraq to help train Iraqi security forces. He said this could allow him to reduce the number of American troops in Iraq, currently numbering more than 5,200, but he did not say any reduction was in the works yet.
Esper appeared on CBS’ “Face the Nation″ and CNN’s “State of the Union.″ O’Brien appeared on ABC’s ”This Week,″ “Fox News Sunday” and NBC’s “Meet the Press.” Coon was on Fox.
___
This story has been corrected to show the general’s killing was this month, not last week.
DUBAI, United Arab Emirates (AP) — The demonstrations that erupted after Iran admitted to accidentally shooting down a passenger plane during a tense standoff with the United States last week are the latest of several waves of protest going back to the 1979 Islamic Revolution — all of which have been violently suppressed.
Iranians were shocked and appalled by the shootdown of the Ukrainian jetliner, which killed all 176 people on board, mostly Iranians. Many are also angry at the government’s misleading statements in the wake of the tragedy, which it initially blamed on a technical problem.
Iranians are also suffering from an economic crisis exacerbated by severe sanctions imposed by President Donald Trump after he withdrew the U.S. from Iran’s 2015 nuclear deal with world powers.
Trump has encouraged the protests — even as he has long embraced other autocrats who smother dissent. His administration hopes that the demonstrations, along with crippling U.S. sanctions, will bring about fundamental change in a longtime adversary.
But large numbers of Iranians still support the clerically led government, as seen by the massive turnout for the funeral of Gen. Qassem Soleimani, Iran’s top general, who was killed in a U.S. airstrike in Baghdad. Even many critics of the government saw him as a war hero who had helped defeat the Islamic State group and resisted Western hegemony in the Middle East.
Iran’s security forces have shown in the past that they will use deadly force against anyone threatening the Islamic Republic, most recently in November, when rights groups say hundreds of people were killed in demonstrations sparked by a hike in gasoline prices.
Here is a look at past protests in Iran, and how its theocracy prevailed.
___
THE ISLAMIC REVOLUTION
The 1979 Islamic Revolution began with broad-based mass protests that eventually forced the Western-backed monarchy from power. But in the resulting chaos, hard-line followers of Ayatollah Ruhollah Khomeini quickly moved to sideline left-wing and moderate opposition groups, forcing many Iranians into prison or exile and establishing a firm foundation for clerical rule. Iran also suppressed a rebellion from among its Kurdish minority in a yearslong military campaign. In 1988, at the close of the disastrous Iran-Iraq war, Iran is believed to have executed thousands of political prisoners, something authorities have yet to publicly acknowledge.
___
A STUDENT UPRISING
The closure of a reformist newspaper in 1999 ignited a week of student protests. On July 9, security forces and hard-line vigilantes stormed a student dormitory at Tehran University. At least three people were killed and 1,200 were arrested in the unrest, which spread to other cities. The protests unfolded amid a power struggle between President Mohammad Khatami, a popular reformist, and hard-liners who dominate the Revolutionary Guard and the security apparatus. The hard-liners eventually prevailed, and the resulting crackdown set back reform efforts for a decade.
___
THE GREEN MOVEMENT
The largest and most sustained protests since the Islamic Revolution erupted in the summer of 2009, after the reformist opposition disputed the re-election of hard-line President Mahmoud Ahmadinejad. Millions of Iranians took part in months of protests in several major cities. Green Movement leaders did not call for the overthrow of the system, but for the reversal of the allegedly rigged election, greater social freedoms and the reining in of the security forces.
Authorities nevertheless responded with a massive crackdown. The Revolutionary Guard and its volunteer force, the Basij militia, opened fire on protesters and launched a wave of arrests. Opposition leaders were placed under house arrest and silenced in the largely state-run media.
Among those killed was Neda Agha Soltan, a 27-year-old woman who became an icon of the protest movement after she was shot and bled to death in a video seen by millions on social media.
President Barack Obama came under criticism for not offering a full-throated endorsement of the protests. But it’s unclear if that would have made a difference, and it might have fed into hard-liners’ allegations that the protests were part of a Western plot.
___
ECONOMIC PROTESTS
Since withdrawing from the 2015 nuclear agreement between Iran and world powers, Trump has imposed “maximum” sanctions on Iran that he says are aimed at countering its nuclear program and its support for armed groups across the region. The sanctions, including those targeting the vital oil industry, have eviscerated Iran’s economy, wiping away many people’s life savings and fueling high unemployment.
In the 18 months since the U.S. began restoring sanctions, Iran has seen waves of sporadic, leaderless protests initially focused on economic grievances and perceived corruption among the clerical elite and the Revolutionary Guard. Each time, the protests rapidly escalated into chants against Supreme Leader Ayatollah Ali Khamenei and calls for the end of clerical rule.
The protests have often turned violent and security forces have responded with deadly force. In the most recent and deadly wave of protests, in November, authorities shut down the internet for several days, making it difficult to discern the scale of the protests and the resulting crackdown.
Amnesty International estimates that more than 300 people were killed.
___
Follow Joseph Krauss on Twitter at www.twitter.com/josephkrauss .
Your daily look at late-breaking news, upcoming events and the stories that will be talked about today:
1. IRAN CRACKS DOWN ON PROTESTERS Videos verified by The Associated Press show police and security forces firing live ammunition and tear gas to disperse demonstrators protesting against the Islamic Republic’s initial denial that it shot down a Ukrainian jetliner.
2. PRESIDENT’S SUGGESTION FOR HIS LOOMING IMPEACHMENT TRIAL Donald Trump says the Senate should simply dismiss the impeachment case against him, a reversal from suggesting his own ideas for trial witnesses.
3. PHILIPPINE VOLCANO ERUPTS GUSHING RED-HOT LAVA More than 13,000 villagers have moved to evacuation centers in the hard-hit provinces of Batangas and Cavite, but officials expect the number to swell.
4. WHO THE US IS SENDING HOME AFTER FATAL SHOOTING More than a dozen Saudi military students could be removed from a military training program after an investigation into a deadly shooting by a Saudi aviation student at a Florida navy base last month
5. NO CLEAR FRONT-RUNNER AS IOWA CAUCUSES NEAR A poll released Friday by The Des Moines Register and CNN found the four leading Democrat contenders, Bernie Sanders, Elizabeth Warren, Joe Bid and Pete Buttigieg share similar levels of support.
6. TRUMP ADMINISTRATION FOCUSES ON TEHRAN DISSENT Top officials have joined the president in trying to draw attention to protests in Iran rather than answering questions about uncertainty over the intelligence behind the killing of Gen. Qassem Soleimani.
7. ‘RANGE OF POSSIBILITIES’ TO BE DISCUSSED AT ROYAL FAMILY SUMMIT Britain’s Queen Elizabeth II seeks to contain the fallout from Prince Harry and his wife Meghan’s decision to walk away from their royal roles.
8. DEMOCRATS STRUGGLE WITH HOW MUCH CHANGE IS TOO MUCH It is a question that has plagued candidates and voters alike over the last year in the Democratic Party’s quest to identify the person best positioned to defeat Trump in November
9. “JOKER,” “THE IRISHMAN” LEAD OSCAR NOMINATIONS Nine movies are nominated for best picture at the 92nd Academy Awards.
10. GREEN BAY IS ONE STEP CLOSER TO SUPER BOWL AFTER DIVISIONAL WIN OVER SEATTLE The Packers have reached the NFC championship game by beating the Seattle Seahawks 28-23.
VATICAN CITY (AP) — The Vatican on Monday sought to downplay the decision by retired Pope Benedict XVI to reaffirm the “necessity” of a celibate priesthood at the same time that Pope Francis is considering ordaining married men, calling his book a mere contribution that was written in full obedience to Francis.
The Vatican’s editorial director, Andrea Tornielli, penned an editorial that sought to put Benedict’s bombshell book in the context of a continuity between the two popes. He noted that Francis, too, has upheld the “gift” of priestly celibacy and refused to make it optional across the board.
The French daily Le Figaro late Sunday published excerpts of the book “From the Depths of Our Hearts: Priesthood, Celibacy and the Crisis of the Catholic Church,” co-authored with conservative Cardinal Robert Sarah; The Associated Press obtained galleys of the English edition, which is being published Feb. 20 by Ignatius Press.
Benedict’s intervention was extraordinary, given he had promised to remain “hidden from the world” when he retired in 2013, and pledged his obedience to the new pope. He has largely held to that pledge, though he penned an odd essay last year that blamed the sexual abuse crisis on the sexual revolution of the 1960s.
His reaffirmation of priestly celibacy, however, gets to the heart of a fraught policy issue that Francis is expected to weigh in on in the coming weeks, and could well be considered a public attempt by the former pope to sway the thinking of the current one.
The implications for such an intervention are grave, given that conservative and traditionalist Catholics nostalgic for Benedict’s orthodoxy are already deeply opposed to Francis, with some even considering Benedict’s resignation illegitimate.
The book is likely to fuel renewed anxiety about the wisdom of Benedict’s decision to call himself “emeritus pope,” rather than merely a retired bishop, and create the unprecedented situation of a former pope living in the Vatican gardens near a current one, and wearing the white cassock of the papacy.
In that light, it is significant that the English edition of the book lists the author as “Benedict XVI,” with no mention of his emeritus papal status on the cover.
The authors clearly anticipated the potential interpretation of their book as criticism of the current pope, and stressed in their joint introduction that they were two bishops penning it “in a spirit of filial obedience, to Pope Francis.” But they also said that the current “crisis” in the church required they not remain silent.
Francis has said he will write a document based on the outcome of the October 2019 synod of bishops on the Amazon. A majority of bishops at the meeting called for the ordination of married men to address the priest shortage in the Amazon, where the faithful can go months without having a Mass.
Francis has expressed sympathy with the Amazonian plight, though it is not clear how he will come down on the issue. While he has long reaffirmed the gift of a celibate priesthood in the Latin rite church, he has stressed that celibacy is a tradition, not doctrine, and therefore can change.
Speaking to reporters last January en route home from Panama, he noted that theologians had debated pastoral reasons to allow for an exception in a particular place. But he said his decision at that time was to say “no.”
“I don’t feel able to put myself before God with this decision,” he said.
In his editorial on Vatican News, entitled “A contribution on priestly celibacy in filial obedience to the pope,” Tornielli recalled Francis’ words from Panama, and noted that Francis didn’t refer to the issue at all when he addressed the Amazon synod at its conclusion.
The Catholic Church already has married priests in its eastern rites, and Benedict himself made it easier for Anglicans to convert to Catholicism — including married Anglican priests who are allowed to remain married. But he has long held that Latin, or Roman rite, priests must be celibate.
Benedict addresses the issue head-on in his chapter in the brief book, explaining in scholarly and biblical terms what he says is the “necessary” criterion for the celibate priesthood that dates from the times of the apostles.
“The priesthood of Jesus Christ causes us to enter into a life that consists of becoming one with him and renouncing all that belongs only to us,” he writes. “For priests, this is the foundation of the necessity of celibacy but also of liturgical prayer, meditation on the Word of God and the renunciation of material goods.”
Marriage, he writes, requires man to give himself totally to his family. “Since serving the Lord likewise requires the total gift of a man, it does not seem possible to carry on the two vocations simultaneously.”
The jointly written introduction and conclusion of the book makes the case even more strongly. Dedicating the book to priests of the world, the two authors urge them to persevere, and for all faithful to hold firm and support them in their celibate ministry.
“It is urgent and necessary for everyone — bishops, priests and lay people — to stop letting themselves be intimidated by the wrong-headed pleas, the theatrical productions, the diabolical lies and the fashionable errors that try to put down priestly celibacy,” they write.
The book is being published at a moment of renewed interest in — and confusion about — the nature of the relationship between Francis and Benedict, thanks to the Netflix drama “The Two Popes.”
The film stars Anthony Hopkins as Benedict and Jonathan Pryce as Francis — both received Oscar nominations on Monday for their roles. It imagines a days-long conversation between the two men before Benedict announced his historic resignation Feb. 11, 2013 — conversations in which their different views of the state of the church become apparent.
Those meetings never happened, and the two men didn’t know one another well before Francis was elected pope. But while the film takes artistic liberties for the sake of narrative, it gets the point across that Francis and Benedict indeed have some very different ideas.
Catholic social media was abuzz Monday after Benedict’s bombshell, with Francis’ supporters saying it showed the problems of having an “emeritus pope” seemingly undermining the current one, and suggesting that Benedict — at age 92 and increasingly feeble — was being manipulated by his conservative entourage.
“Not only there is no canon law concerning the situation created by an incapacitated pope,” tweeted Villanova theologian Massimo Faggioli. “The Catholic Church evidently also needs a law concerning the situation created by an incapacitated ‘pope emeritus’ and his entourage.”
Mark Brumley, the president of Ignatius Press, however, denounced such conspiracies and said Benedict isn’t being used.
“Why some folks choose to interpret the new book by Pope Emeritus Benedict and Cardinal Sarah in anti-Pope Francis ways speaks volumes,” he tweeted. “Let’s pray for healing for the critics that they can rejoice in a new work from two great churchmen of our time, including a major theologian.”
Female filmmakers were shut out, “Parasite” made history and “The Joker” just edged out “The Irishman,” “1917” and “Once Upon a Time ... in Hollywood” in Monday’s Oscar nominations.
Todd Phillips’ R-rated superhero smash “Joker” topped all films with 11 nominations, while Martin Scorsese’s elegiac crime epic “The Irishman,” Quentin Tarantino’s 1960s Los Angeles fairy tale “Once Upon a Time ... in Hollywood” and Sam Mendes’ continuous World War I tale “1917” all trailed close behind with 10 nods apiece.
Those four were among the nine films nominated for best picture, in nominations to the 92nd Academy Awards. The others were: Greta Gerwig’s Louisa May Alcott adaptation “Little Women,” Noah Baumbach’s divorce drama “Marriage Story,” Taika Waititi’s Nazi Germany romp “Jojo Rabbit,” James Mangold’s racing drama “Ford v Ferrari” and Bong Joon Ho’s class satire “Parasite” — the first Korean film to nominated and only the 11th non-English best-picture nominee.
While “Joker,” which gives the DC Comics villain an antihero spin cribbed from Scorsese, was expected to do well Monday, the academy’s overwhelming support for a movie that was far from a critical favorite was unexpected. The film’s nominations included best actor for Joaquin Phoenix and best director for Phillips.
Though a record 62 women (or about a third of nominees) were nominated Monday, the Academy of Motion Pictures Arts and Sciences put the most weight behind a handful of swaggering male-driven and man-made movies predicated on virtuosity, spectacle and celebrity. For the 87th time, the directors category was all male.
Hollywood, in the midst of a streaming upheaval, also gave Netflix more nominations, 24, than ever before. The 10 nominations for “The Irishman” tied the most for a Netflix film, following “Roma” last year. Scorsese, a one-time winner for “The Departed,” was nominated for best director for the ninth time. The film also won nods for Al Pacino, Joe Pesci and its de-aging special effects. “We put all of ourselves into this picture,” said Scorsese in a statement.
“1917” followed up its Golden Globes win and strong opening weekend at the box office with nominations not just for its technical achievement (including Mendes’ directing and Roger Deakins’ cinematography) but for best screenplay, too.
“Once Upon a Time ... in Hollywood” was nominated in just about every category it was expected to, including Tarantino for directing and screenplay, best actor for Leonardo DiCaprio and best supporting actor for Brad Pitt.
Despite a year in which women made historic gains behind the camera, female directors were again shut out of best director. The most likely candidate was Greta Gerwig (“Little Women”), who was the last woman nominated, two years ago for “Lady Bird.”
“Congratulations to those men,” said Issa Rae, who presented the nominees alongside John Cho.
There were many surprises. Awkwafina, who was poised to become just the second Asian American nominated for best actress (the first, 1936 nominee Merle Oberon, hid her South Asian heritage), wasn’t nominated for her acclaimed leading performance in “The Farewell.” Also overlooked for best animated film was “Frozen 2,” the highest grossing animated film ever; Beyonce, for her “Lion King” song; and the hit documentary “Apollo 11.”
Most glaringly, Jennifer Lopez, long considered a supporting actress front-runner for her performance in “Hustlers,” was also denied her first Oscar nomination.
Those oversights left the Oscars with their least diverse field since the fallout of #OscarsSoWhite pushed the film academy to diversify its membership. The only actor of color nominated was Cynthia Erivo, the British actress, for her Harriet Tubman in “Harriet.” Last week, the British film academy nominated only white performers, leading Erivo to decline an invitation to perform.
Bong Joon Ho’s “Parasite,” however, made history for South Korea. It’s not only the first Korean film to be nominated for best international film but it became just the 11th non-English movie nominated for best picture. “Parasite,” which won the Palme d’Or at last year’s Cannes Film Festival, also won nods for Bong’s direction, best editing and best production design.
No filmmaking couple has had an Oscar nominations morning quite like Gerwig and Noah Baumbach, director of the divorce drama “Marriage Story.” Their movies were each nominated for best picture, best screenplay (adapted for Gerwig; original for Baumbach) and six nominations in total.
Nominations for “Marriage Story” included nods for its leads, Adam Driver and Scarlett Johansson, and Laura Dern for best supporting actress. Johansson, also nominated for her supporting turn in “Jo Jo Rabbit,” became the first two-time acting nominee since Cate Blanchett managed the feat in 2007.
Also nominated for best actress was Renée Zellweger, considered the front-runner for her Judy Garland in “Judy,” Charlize Theron (“Bombshell”) and Soairse Ronan (“Little Women”). Just 25 years old, Ronan now has four Oscar nominations.
Joining Driver, DiCaprio and Phoenix for best actor were Antonio Banderas, who plays a semi-fictionalized version of director Pedro Almodovar in “Pain and Glory”; and Jonathan Pryce, who stars as Pope Francis in “The Two Popes.”
Tom Hanks received his first Oscar nomination since “Cast Away” 19 years ago for his Mister Rogers in “A Beautiful Day in the Neighborhood.” But Pitt is the overwhelming favorite among the supporting actor nominees. Joining Pacino and Pesci was Pryce’s papal co-star, Anthony Hopkins.
Along with Dern and Johnson, the nominees for best supporting actress were Kathy Bates (“Richard Jewell”), Florence Pugh (“Little Women”) and Margot Robbie (“Bombshell”).
“American Factory,” the first film from Barack and Michelle Obama’s recently launched production company, Higher Ground, was nominated for best documentary. Said Obama: “It’s the kind of story we don’t see often enough and it’s exactly what Michelle and I hope to achieve with Higher Ground.”
“Honeyland,” about a bee keeper in rural Macedonia, became the first film ever nominated for both best documentary and best international film.
Also up for best documentary are: “For Sama,” “The Edge of Democracy” and the Syrian Civil War film “The Cave.” Feras Fayyad, director of “The Cave,” was nominated in 2018 for his “Last Men in Aleppo” but was unable to attend the Oscars when his visa was rejected because of President Donald Trump’s travel ban.
The other nominees for best international film were “Pain and Glory” from Spain, “Les Miserables” from France and “Corpus Christi” from Poland.
The nominees for best animated feature film: “How to Train a Dragon: The Hidden World”; “Toy Story 4”; “I Lost My Body”; “Klaus”; “Missing Link.”
After the most dominant box-office year in Hollywood history, the Walt Disney Co.’s top films — including the record-setting Marvel blockbuster “Avengers: Endgame” — were largely relegated to categories like best visual effects. The studio, which has never won a best picture Academy Award, does have a few contenders via its acquisition in April of 20th Century Fox: best-picture nominees “Ford v Ferrari” and “Jojo Rabbit.”
The 92nd Academy Awards will take place Feb. 9 in Los Angeles at the Dolby Theatre. ABC will again broadcast the show, viewership for which last year rose 12% to 29.6 million. Like last year, this year’s ceremony will go without a host.
___
Follow AP Film Writer Jake Coyle on Twitter at: http://twitter.com/jakecoyleAP
WASHINGTON (AP) — President Donald Trump says the Senate should simply dismiss the impeachment case against him, an extraordinary suggestion as the House prepares to transmit the charges to the chamber for the historic trial.
The Republican president is giving mixed messages ahead of the House’s landmark vote that will launch the Senate proceedings in a matter of days, only the third presidential impeachment trial in American history. Trump faces charges that he abused power by pushing Ukraine to investigate Democratic rival Joe Biden and then obstructed Congress.
First Trump was suggesting his own ideas for trial witnesses, then he said almost the opposite Sunday by tweeting that the trial shouldn’t happen at all.
“Many believe that by the Senate giving credence to a trial” over charges he calls a hoax, Trump tweeted, “rather than an outright dismissal, it gives the partisan Democrat Witch Hunt credibility that it otherwise does not have. I agree!”
The idea of dismissing the charges against Trump is as unusual as it is unlikely. Senate Majority Leader Mitch McConnell signed on to an outlier proposal circulating last week among conservative senators, but he does not have enough support in the Republican-held chamber to actually do it. It would require a rare rules change similar to the approach McConnell used for Supreme Court confirmations.
Speaker Nancy Pelosi warned Sunday that senators will “pay a price” if they block new witness testimony with a trial that Americans perceive as a “cover-up” for Trump’s actions.
“It’s about a fair trial,” Pelosi told ABC’s “This Week.” “The senators who are thinking now about voting for witnesses or not, they will have to be accountable.”
She said, “Now the ball is in their court to either do that or pay a price.”
Voters are divided over impeachment largely along the nation’s deeply partisan lines and the trial is becoming a high-stakes undertaking at the start of a presidential election year.
A House vote to transmit the articles to the Senate will bring to a close a standoff between Pelosi and McConnell over the rules for the trial. The House voted to impeach Trump last month.
Yet ending one showdown merely starts another across the Capitol as the parties try to set the terms of debate over high crimes and misdemeanors.
Democrats want new testimony, particularly from former White House national security adviser John Bolton, who has indicated he will defy Trump’s orders and appear if subpoenaed.
Trump doesn’t want his brash former aide to testify. Republican allies led by McConnell, R-Ky., are ready to deliver swift acquittal without new testimony.
Trump first said Sunday it’s Pelosi and House Intelligence Committee Chairman Adam Schiff who should both testify, which would be unlikely.
The president said he shouldn’t have to carry the “stigma” of impeachment because he’s done nothing wrong. Pelosi said the House vote last month means Trump will be “impeached forever” and “for life.”
McConnell is reluctant to enter a divisive Senate debate over witnesses that could split his party and prolong a trial that is already expected to consume weeks of floor time.
He is seeking a speedy acquittal and has proposed a process similar to the presidential impeachment trial of Bill Clinton in 1999, which would start the proceedings and then vote later on hearing new testimony.
One leading Republican, Sen. Lindsey Graham of South Carolina, has already predicted that the trial would end ”in a matter of days.″ Graham and Sen. Josh Hawley, R-Mo. are leading the effort to dismiss the charges against Trump.
Trump delayed nearly $400 million in aide as Ukraine battled Russia on its border while he pushed the country’s new president to investigate political rival Joe Biden. Trump pays close attention to a conspiracy theory pushed by his personal lawyer Rudy Giuliani about Biden and his son Hunter Biden, who served on the board of a gas company in Ukraine while his father was vice president. No evidence of wrongdoing by the Bidens has emerged.
Some GOP senators want to turn the impeachment trial away from the Democrats’ case and toward the theories being pursued by Giuliani. GOP Sen. Rick Scott of Florida said Sunday he wants to hear from the Bidens “and find out — get to the bottom of that.”
At least one Republican up for reelection, Sen. Susan Collins of Maine, said last week she was in talks with GOP colleagues on a process that would allow them to hear more testimony as Democrats want.
The Democratic-run House has not yet set the timing for this week’s vote to transmit the impeachment articles to the Senate. Pelosi will meet behind closed doors with House Democrats to decide next steps on Tuesday morning ahead of the party’s presidential primary debate that evening, the last before the Iowa caucuses Feb. 3.
Once the Republican-led Senate receives the charges, the trial is expected to begin swiftly.
While some Democrats have grumbled about the delay, Pelosi and other party leaders defended the strategy, saying it produced new potential evidence and turned public attention on the upcoming trial.
“One of the things that holding on to the articles has succeeded doing is fleshing out McConnell and the president’s desire to make this a cover up,” Schiff, D-Calif., said on CBS’ “Face the Nation.”
Bolton’s remarks, which were recalled by witnesses in the House investigation, could cut different ways in testimony. He was said to have compared the Ukraine actions to a “drug deal” he wanted no part of and warned that Giuliani was a “hand grenade” about to go off.
House Democrats, who did not issue a subpoena for Bolton last year, did not rule out doing so now. Pelosi also left open the door to filing more articles of impeachment against Trump.
“Let’s be optimistic about the future ... a future that will not have Donald Trump in the White House, one way or another. Ten months from now we will have an election, if we don’t have him removed sooner,” she said.
WASHINGTON (AP) — The Supreme Court on Monday left in place the conviction of a Massachusetts woman who sent her boyfriend text messages urging him to kill himself.
Michelle Carter is serving a 15-month sentence after being convicted of involuntary manslaughter in the 2014 death of her boyfriend, Conrad Roy III. A judge determined that Carter, who was 17, caused the death of the 18-year-old Roy when she ordered him in a phone call to get back in his carbon monoxide-filled truck that he’d parked in a Kmart parking lot.
The phone call wasn’t recorded, but the judge relied on a text Carter sent her friend in which she said she told Roy to get back in. In text messages sent in the days leading up to Roy’s death, Carter also encouraged Roy to follow through with his suicide plan and chastised him when he didn’t, Massachusetts courts found.
The case has garnered national attention and sparked legislative proposals in Massachusetts to criminalize suicide coercion.
Carter’s lawyers argued in their Supreme Court appeal that the conviction should be thrown out because it was an “unprecedented” violation of her free speech rights that raised crucial questions about whether “words alone” are enough to hold someone responsible for another person’s suicide.
The lawyers also argued there was simply not enough evidence to prove Carter urged Roy to to get back in his truck to die, or that he would have lived if she had called for help or taken other actions to try and save his life.
Joseph Cataldo, one of Carter’s lawyers, said Monday’s decision was an “injustice” and that the legal team is weighing its next steps. He didn’t elaborate.
“The U.S. Supreme Court not accepting Michelle Carter’s petition at this time is unfortunate,” he said in a statement. “Clearly many legal scholars and many in the legal community understand the dangers this precedent created by the Massachusetts courts.”
Carter has been serving her sentence at the Bristol County House of Correction in Dartmouth, Massachusetts.
She was initially set to be released in May, but now may be released in March, if not sooner. Jail officials said Carter has accrued enough “good time” credits for good behavior and attending programs while incarcerated after she was denied parole last September.
The jail declined to provide an updated release date Monday.
“Ms. Carter continues to attend programs, is getting along with other inmates, is polite to our staff and volunteers, and we’ve had no discipline issues at all,” Jonathan Darling, a spokesman for the Bristol County Sheriff’s Office, said in an email.
DES MOINES, Iowa (AP) — Democrat Cory Booker dropped out of the presidential race Monday, ending a campaign whose message of unity and love failed to resonate in a political era marked by chaos and anxiety.
His departure now leaves a field that was once the most diverse in history with just one remaining African American candidate, former Massachusetts Gov. Deval Patrick.
Since launching his campaign last February, Booker, a U.S. senator from New Jersey, struggled to raise the type of money required to support a White House bid. He was at the back of the pack in most surveys and failed to meet the polling requirements needed to participate in Tuesday’s debate. Booker also missed last month’s debate and exits the race polling in low single digits in the early primary states and nationwide.
In an email to supporters, Booker said that he “got into this race to win” and that his failure to make the debates prevented him from raising raise the money required for victory.
“Our campaign has reached the point where we need more money to scale up and continue building a campaign that can win -- money we don’t have, and money that is harder to raise because I won’t be on the next debate stage and because the urgent business of impeachment will rightly be keeping me in Washington,” he said.
Booker had warned that the looming impeachment trial of President Donald Trump would deal a “big, big blow” to his campaign by pulling him away from Iowa in the final weeks before the Feb. 3 Iowa caucuses. He hinted at the challenges facing his campaign last week in an interview on The Associated Press’ “Ground Game” podcast.
“If we can’t raise more money in this final stretch, we won’t be able to do the things that other campaigns with more money can do to show presence,” he said.
In his email to supporters, Booker pledged to do “everything in my power to elect the eventual Democratic nominee for president,” though his campaign says he has no immediate plans to endorse a candidate in the primary.
It’s a humbling finish for someone who was once lauded by Oprah Winfrey as the “rock star mayor” who helped lead the renewal of Newark, New Jersey. During his seven years in City Hall, Booker was known for his headline-grabbing feats of local do-goodery, including running into a burning building to save a woman, and his early fluency with social media, which brought him 1.4 million followers on Twitter when the platform was little used in politics. His rhetorical skills and Ivy League background often brought comparisons to President Barack Obama, and he’d been discussed as a potential presidential contender since his arrival in the Senate in 2013.
Now, Massachusetts Sen. Elizabeth Warren has mastered the art of the selfie on social media. Another former mayor, Pete Buttigieg of South Bend, Indiana, is seen as the freshest face in the field. Former Vice President Joe Biden has built a strong base of support with black voters. And Booker’s message of hope and love seemed to fall flat during an era characterized perhaps most strongly by Democratic fury over the actions of the Trump administration.
An early focus on building out a strong and seasoned campaign operation in Iowa and South Carolina may have hampered his campaign in the long run, as the resources he spent early on staff there left him working with a tight budget in the later stages of the primary, when many of his opponents were going on air with television ads. That meant that even later in the campaign, after he had collected some of the top endorsements in Iowa and visited South Carolina almost more than any other candidate, a significant portion of the electorate in both states either said they were unfamiliar with his campaign or viewed him unfavorably.
On the stump, Booker emphasized his Midwestern connections — often referencing the nearly 80 family members he has still living in Iowa when he campaigned there — and delivered an exhortation to voters to use “radical love” to overcome what he considered Trump’s hate. But he rarely drew a contrast with his opponents on the trail, even when asked directly, and even some of Booker’s supporters worried his message on Trump wasn’t sharp enough to go up against a Republican president known for dragging his opponents into the mud.
Booker struggled to land on a message that would resonate with voters. He’s long been seen as a progressive Democrat in the Senate, pushing for criminal justice reform and marijuana legalization. And on the campaign trail, he proposed establishing a $1,000 savings account for every child born in the U.S. to help close the racial wealth gap.
He was among the first candidates to release a gun control plan, and at the time it was the most ambitious in the field, as it included a gun licensing program that would have been seen as political suicide just a decade before. He also released an early criminal justice reform plan that focused heavily on addressing sentencing disparities for drug crimes.
But he also sought to frame himself as an uplifting, unifying figure who emphasized his bipartisan work record. That didn’t land in a Democratic primary that has often rewarded candidates who promised voters they were tough-minded fighters who could take on Trump.
Booker’s seat is up for a vote this year, and he will run for reelection to the Senate. A handful of candidates has launched campaigns for the seat, but Booker is expected to have an easy path to reelection.
Booker’s exit from the presidential race further narrows the once two dozen-strong field, which now stands at 12 candidates.
___
Catch up on the 2020 election campaign with AP experts on our weekly politics podcast, “Ground Game.”
Good luck finding any team in the country that notches a better pair of road wins in the same week than Baylor, which followed up a victory at Texas Tech by invading Allen Fieldhouse and thumping Kansas on its home floor.
As a result? The Bears leapfrogged the Jayhawks and Duke into the second spot in The Associated Press men’s college basketball poll on Monday. They finished with 1,567 points in voting by 65 media members who regularly cover the game, just seven back of top-ranked Gonzaga — even though Baylor had 31 first-place votes and the Bulldogs had 30.
“I think to have a special team you first need to have that work ethic, you need to have that character, but most of all you have to have guys that buy into roles and celebrate each other’s success,” Bears coach Scott Drew explained. “As the year has gone on we’ve done better and better at that. We call it ‘playing with joy.’ If you do that, good things happen.”
Great things, as a matter of fact. Baylor (13-1, 3-0 Big 12) hasn’t lost since playing Washington in Alaska in its second game of the season. Along the way, the boys from Waco, Texas, have notched nonconference wins over ranked teams Villanova, Arizona and Butler along with league wins over the Red Raiders, the Jayhawks and Texas.
The win over Kansas was the first for Baylor in 18 tries at Allen Fieldhouse and the first over a top-five team on the road.
“We came with the expectation to win, the expectation to do great things in the Big 12,” Baylor guard Jerad Butler said, “and it shows when you expect to win versus just trying to survive.”
The Blue Devils fell to third in the AP poll, followed by unbeaten Auburn and Butler. The Jayhawks were next with another unbeaten, San Diego State, staying at No. 7. Oregon, Florida State and Kentucky rounded out the top 10.
The Wildcats climbed four spots by squeezing out tougher-than-expected wins over Georgia and Alabama.
“I’m telling you, I believe in every one of these kids. I wouldn’t have recruited them here. But I’ll tell you, it’s really hard here,” Kentucky coach John Calipari said. “Every game we play is someone’s Super Bowl.”
The biggest climb came from Wichita State, which jumped seven spots to No. 16 after soundly beating new No. 22 Memphis and turning back Connecticut in double overtime. The Shockers’ only loss came against No. 12 West Virginia in the championship game of the Cancun Classic in late November.
“We are at 15 wins now and I don’t even know when we got that last year, so the jump has been crazy,” said Shockers guard Erik Stevenson, who leads the team in scoring. “National recognition is cool and all, but we feel like we’ve been slept on for a while now. We feel like we could beat anybody in the country.”
The biggest fall by a team that remains in the poll came from Ohio State, whichdropped two more games — to Maryland and Indiana — to make it four consecutive losses. The Buckeyes were once in the top five but are now No. 21.
“We have to find a way to figure some things out here quickly,” Ohio State coach Chris Holtmann said. “You know, I think it’s a work in progress right now. I think we definitely have some offensive issues that we have to work out.”
Here are some other takeaways from the latest edition of the college basketball poll:
RISING
West Virginia climbed five spots to No. 12 by following a tough road loss to Kansas with wins over Oklahoma State and Texas Tech. Colorado also jumped five spots to No. 20 after the Buffaloes throttled Utah 91-52 in its only game of the week.
FALLING
Ohio State wasn’t the only Big Ten team to take a tumble. Michigan State dropped seven spots to No. 15 after the Spartans were pounded 71-42 at Purdue, and Penn State fell from No. 20 all the way out of the poll after the Nittany Lions lost consecutive games to unranked teams in Wisconsin and Rutgers.
IN/OUT
Seton Hall returned to the poll at No. 18 thanks to back-to-back wins over Xavier and Marquette that ran the Pirates’ record to 4-0 in the Big East. A pair of newcomers in Illinois and Creighton rounded out the Top 25, and Virginia and Arizona joined the Nittany Lions in falling out. The Cavaliers lost to Boston College and the Wildcats fell to Oregon State last week.
___
More AP college basketball: https://apnews.com/Collegebasketball and https://twitter.com/AP_Top25
The U.S. budget deficit through the first three months of this budget year is up 11.8% from the same period a year ago, putting the country on track to record its first $1 trillion deficit in eight years.
In its monthly budget report, the Treasury Department said Monday that the deficit from October through December totaled $356.6 billion, up from $318.9 billion for the same period last year.
Both government spending and revenues set records for the first three months of this budget year but spending rose at a faster clip than tax collections, pushing the deficit total up.
The Congressional Budget Office is projecting that the deficit for the current 2020 budget year will hit $1 trillion and will remain over $1 trillion for the next decade. The country has not experienced $1 trillion annual deficits since the period from 2009 through 2012 following the 2008 financial crisis.
The actual deficit for the 2019 budget year, which ended Sept. 30, was $984.4 billion, up 26% from the 2018 imbalance, reflecting the impact of the $1.5 trillion tax cut President Donald Trump pushed through Congress in 2017 and increased spending for military and domestic programs that Trump accepted as part of a budget deal with Democrats.
The projections of trillion-dollar deficits are in contrast to Trump’s campaign promise in 2016 that even with his proposed tax cuts, he would be able to eliminate future deficits with cuts in spending and growth in revenues that would result from a stronger economy.
For the first three months of the 2020 budget year, revenues have totaled $806.5 billion, up 4.8% from the same three months a year ago, while government spending has totaled $948.9 billion, an increase of 6.3% from a year ago.
Both the spending amounts and revenue amounts are records for the first three months of a budget year. The deficit in December totaled $13.3 billion, slightly lower than the $13.5 billion deficit in December 2019.
前面介绍了分发文件管理、前端反向代理与管理后台服务器的配置操作,今天介绍下前端负载与APP服务器(用户与商家)、官网、FTP服务器的配置操作
yum install pcre-devel zlib-devle openssl-devel gcc-c++ –y
编译安装nginxcd /download/tools/
wget http://nginx.org/download/nginx-1.12.1.tar.gz
tar zxf nginx-1.12.1.tar.gz
cd nginx-1.12.1
./configure --prefix=/app/nginx-1.12.1
make && make install
[root@centos ~]# cd /app/
[root@centos app]# ln -s nginx-1.12.1 nginx
[root@centos ~]# cd /app/nginx/conf/
[root@centos conf]# mkdir extra
[root@centos conf]# cp nginx.conf nginx.conf.bak
在nginx.conf文件后增加下面的配置include extra/*.conf;
[root@centos conf]# cd extra/
[root@centos extra]# vim user.app.conf
#
# HTTPS server configuration
#
upstream userapp {
server 10.0.0.4:8080;
server 10.0.0.4:8081;
}
server {
listen 80;
server_name app.mingongge.com;
location / {
proxy_pass http://userapp;
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
}
[root@centos conf]# cd extra/
[root@centos conf]# vim sj.app.conf
#
# HTTPS server configuration
#
upstream sjapp {
server 10.0.0.5:8080;
server 10.0.0.5:8081;
}
server {
listen 80;
server\_name sjapp.mingongge.com;
location / {
proxy_pass http://sjapp;
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
}
}
2、后端APP服务器配置[root@centos tools]# ll
total 181168
-rw-r--r-- 1 root root 185515842 Sep 20 15:52 jdk-8u144-linux-x64.tar.gz
[root@centos tools]# tar zxf jdk-8u144-linux-x64.tar.gz -C /usr/local/
[root@centos tools]# ln -s /usr/local/jdk1.8.0_144 /usr/local/jdk
[root@centos tools]# cat >>/etc/profile<<EOF
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
EOF
[root@centos tools]# tail -3 /etc/profile
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.CLASSPATH:/lib/dt.jar:/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
[root@centos tools]# source /etc/profile
[root@centos tools]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
后端tomcat 配置wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-8/v8.5.20/bin/apache-tomcat-8.5.20.tar.gz
[root@centos tools]# tar zxf apache-tomcat-8.5.20.tar.gz -C /usr/local/
[root@centos tools]# ln -s /usr/local/apache-tomcat-8.5.20 /usr/local/tomcat
[root@centos tools]# cd /usr/local/apache-tomcat-8.5.20/conf/
[root@centos conf]# vim server.xml
-------------此处省略N行--------------
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
**<Context path="" docBase="/www/userapp" debug="0" reloadable="true" crossContext="true" />**
#增加上述站点目录
[root@centos conf]# mkdir /www/userapp -p
echo "this is the frist userapp server" >/www/userapp/index.html
[root@centos conf]# ../bin/startup.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-8.5.20
Using CATALINA_HOME: /usr/local/apache-tomcat-8.5.20
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.20/temp
Using JRE_HOME: /usr/local/jdk
Using CLASSPATH: /usr/local/apache-tomcat-8.5.20/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.20/bin/tomcat-juli.jar
Tomcat started.
[root@centos conf]# lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 1587 root 48u IPv6 18137 0t0 TCP *:webcache (LISTEN)
另外一台用户APP 服务器按上述的配置进行[root@centos conf]# mkdir /www/userapp -p
echo "this is the second userapp ">/www/userapp/index.html
[root@centos conf]# mkdir /www/sjapp -p
echo "this is the frist sjapp ">/www/userapp/index.html
echo "this is the second sjapp ">/www/userapp/index.html
接下来测试下负载均衡[root@centos conf]# curl http://10.0.0.1
this is the userapp server
[root@centos conf]# curl http://10.0.0.1
this is the second userapp
[root@centos conf]# curl http://app.mingongge.com
this is the userapp server
[root@centos conf]# curl http://app.mingongge.com
this is the second userapp
[root@centos extra]# curl http://sjapp.mingongge.com
this is the first sjapp server
[root@centos extra]# curl http://sjapp.mingongge.com
this is the second sjapp
浏览器访问测试10.0.0.1 app.mingongge.com
10.0.0.1 sjapp.mingongge.com
[root@centos extra]# vim web.mingongge.conf
#
# HTTPS server configuration
#
server {
listen 80;
server_name www.mingongge.com;
location / {
proxy_pass http://10.0.0.8;
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
}
}
[root@centos extra]# vim ftp.mingongge.com
#
# HTTPS server configuration
#
server {
listen 80;
server\_name ftp.mingongge.com;
location / {
proxy_pass http://10.0.0.8:88;
proxy_connect_timeout 600;
proxy_read_timeout 600;
proxy_send_timeout 600;
}
}
后端WEB服务器配置[root@centos html]# vim index.html
welcome to mingongge.s web stie!!!!!!!!!!!!!
[root@centos ~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@centos ~]# /usr/local/nginx/sbin/nginx
[root@centos ~]# curl 10.0.0.8
welcome to mingongge.s web stie!!!!!!!!!!!!!
FTP这块的配置其实是就是管理后台通过应用程序上传图片,前面用户通过nginx能访问到正确的页面即可,由于线下测试环境,不可能拿生产代码来做实验,因此管理后台上传图片无法模拟,过程就是后台上传图片是通过FTP的功能上传到指定的目录,然后前端通过nginx来调用这个图片去显示[root@centos conf]# cd extra/
[root@centos extra]# vim ftp.mingongge.conf
server {
listen 88;
server_name localhost;
location / {
root /www/ftp;
}
上传图片进行测试原文链接:Writing memory efficient software applications in Node.js
const fs = require('fs');
let fileName = process.argv[2];
let destPath = process.argv[3];
fs.readFile(fileName, (err, data) => {
if (err) throw err;
fs.writeFile(destPath || 'output', data, (err) => {
if (err) throw err;
});
console.log('New file has been created!');
});
这段代码简单地根据输入的文件名和路径,在尝试对文件读取后把它写入目标路径,这对于小文件来说是不成问题的。$ node basic_copy.js cartoonMovie.mkv ~/Documents/bigMovie.mkv
然后在 Ubuntu(Linux )系统下我得到了这段报错:/home/shobarani/Workspace/basic_copy.js:7
if (err) throw err;
^
RangeError: File size is greater than possible Buffer: 0x7fffffff bytes
at FSReqWrap.readFileAfterStat [as oncomplete] (fs.js:453:11)
正如你看到的那样,由于 NodeJS 最大只允许写入 2GB 的数据到它的缓冲区,导致了错误发生在读取文件的过程中。为了解决这个问题,当你在进行 I/O 密集操作的时候(复制、处理、压缩等),最好考虑一下内存的情况。let buffer = new Buffer(10); # 10 为 buffer 的体积
console.log(buffer); # prints <Buffer 00 00 00 00 00 00 00 00 00 00>
在新版本的 NodeJS (>8)中,你也可以这样写。let buffer = new Buffer.alloc(10);
console.log(buffer); # prints <Buffer 00 00 00 00 00 00 00 00 00 00>
如果我们已经有了一些数据,比如数组或者别的数据集,我们可以为它们创建一个 buffer。let name = 'Node JS DEV';
let buffer = Buffer.from(name);
console.log(buffer) # prints <Buffer 4e 6f 64 65 20 4a 53 20 44 45 5>
Buffers 有一些如 buffer.toString()
和 buffer.toJSON()
之类的重要方法,能够深入到其所存储的数据当中去。Stream API (尤其是 stream.pipe()
方法)的一个重要目标是将数据缓冲限制在可接受的水平,这样不同速度的源和目标就不会阻塞可用内存。
.pipe()
方法是一个非常基本的方法,用于连接可读流和可写流。如果你不明白上面的示意图,也没关系,在看完我们的例子以后,你可以回到示意图这里来,那个时候一切都会显得理所当然。管道是一种引人注目的机制,下面我们用两个例子来说明它。streams_copy_basic.js
/*
A file copy with streams and events - Author: Naren Arya
*/
const stream = require('stream');
const fs = require('fs');
let fileName = process.argv[2];
let destPath = process.argv[3];
const readabale = fs.createReadStream(fileName);
const writeable = fs.createWriteStream(destPath || "output");
fs.stat(fileName, (err, stats) => {
this.fileSize = stats.size;
this.counter = 1;
this.fileArray = fileName.split('.');
try {
this.duplicate = destPath + "/" + this.fileArray[0] + '_Copy.' + this.fileArray[1];
} catch(e) {
console.exception('File name is invalid! please pass the proper one');
}
process.stdout.write(`File: ${this.duplicate} is being created:`);
readabale.on('data', (chunk)=> {
let percentageCopied = ((chunk.length * this.counter) / this.fileSize) * 100;
process.stdout.clearLine(); // clear current text
process.stdout.cursorTo(0);
process.stdout.write(`${Math.round(percentageCopied)}%`);
writeable.write(chunk);
this.counter += 1;
});
readabale.on('end', (e) => {
process.stdout.clearLine(); // clear current text
process.stdout.cursorTo(0);
process.stdout.write("Successfully finished the operation");
return;
});
readabale.on('error', (e) => {
console.log("Some error occured: ", e);
});
writeable.on('finish', () => {
console.log("Successfully created the file copy!");
});
});
在这段程序中,我们接收用户传入的两个文件路径(源文件和目标文件),然后创建了两个流,用于把数据块从可读流运到可写流。然后我们定义了一些变量去追踪文件复制的进度,然后输出到控制台(此处为 console)。与此同时我们还订阅了一些事件:$ time node streams_copy_basic.js cartoonMovie.mkv ~/Documents/4kdemo.mkv
然而,当我们通过任务管理器观察程序在运行过程中的内存状况时,依旧有一个问题。17.16s user 25.06s system 21% cpu 3:16.61 total
streams_copy_efficient.js
/*
A file copy with streams and piping - Author: Naren Arya
*/
const stream = require('stream');
const fs = require('fs');
let fileName = process.argv[2];
let destPath = process.argv[3];
const readabale = fs.createReadStream(fileName);
const writeable = fs.createWriteStream(destPath || "output");
fs.stat(fileName, (err, stats) => {
this.fileSize = stats.size;
this.counter = 1;
this.fileArray = fileName.split('.');
try {
this.duplicate = destPath + "/" + this.fileArray[0] + '_Copy.' + this.fileArray[1];
} catch(e) {
console.exception('File name is invalid! please pass the proper one');
}
process.stdout.write(`File: ${this.duplicate} is being created:`);
readabale.on('data', (chunk) => {
let percentageCopied = ((chunk.length * this.counter) / this.fileSize) * 100;
process.stdout.clearLine(); // clear current text
process.stdout.cursorTo(0);
process.stdout.write(`${Math.round(percentageCopied)}%`);
this.counter += 1;
});
readabale.pipe(writeable); // Auto pilot ON!
// In case if we have an interruption while copying
writeable.on('unpipe', (e) => {
process.stdout.write("Copy has failed!");
});
});
在这个例子中,我们用一句代码替换了之前的数据块写入操作。readabale.pipe(writeable); // Auto pilot ON!
这里的 pipe 就是所有魔法发生的原因。它控制了磁盘读写的速度以至于不会阻塞内存(RAM)。$ time node streams_copy_efficient.js cartoonMovie.mkv ~/Documents/4kdemo.mkv
我们复制了同一个大文件(7.4 GB),让我们来看看内存利用率。12.13s user 28.50s system 22% cpu 3:03.35 total
由于 NodeJS 流和管道,内存负载减少了98.68%,执行时间也减少了。这就是为什么管道是一个强大的存在。
const readabale = fs.createReadStream(fileName);
readable.read(no_of_bytes_size);
除了本地文件的复制以外,这个技术还可以用于优化许多 I/O 操作的问题:本书的主要目标是向你展示领域驱动设计战略模式的 PHP 代码实例。如果你想了解更多战略模式和领域驱动设计的核心,你最好去读 Vaughn Vernon 的《领域驱动设计精简版》和 Eric Evans 的《领域驱动设计参考:定义和模式摘要》。
就上下文而言
现在设想一个限界上下文就是一个系统内的概念边界,边界内的通用语言是有其特殊含义的,而边界外的上下文概念可能有不同的含义。
Symfony
或者 Laravel
这样的框架来简单处理你的业务逻辑。微服务架构风格是把单个应用的开发分解为一个个小的服务的方法,每个服务都有自己独立的进程和轻量的通信机制,通常是用 HTTP 资源的 API。这些服务都是围绕其业务能力构建,可独立部署自动升级,去中心管理。服务可以用不同的程序语言编写,使用不同的数据存储技术。
自包含系统是关注将功能分离至许多独立系统的一种架构,由这些独立系统相互协作来提供一个完整的逻辑系统。这可以避免单体系统不断成长导致最后变得不可维护的问题。纵观过去的几年里,我们看到许多中型和大型项目受益于此。这个思路是把一个大型系统分解为一些更小的自包含系统,依照下列确定的规则(官网上同样有阐明自包含系统 的七个特征):
16 位图形用户界面
16 位和 32 位混合图形用户界面
32 位操作系统
64 位操作系统
移动设备操作系统
市场占有率概览(参照 2019 年 7 月 Net Applications 和 StatCounter 的数据)
通过这个市场占有率的数据,我们可以看到 WIndows 7 仍然占据着很大的市场,而国内的第三方数据公司提供的数据显示,Windows 7 的占有率仍占据 50% 以上。
部分参考资料:1.维基百科:Microsoft Windows
2.放毒:Win7 再见了~~~
3.腾讯数码:【争议】Windows 7该升级到Windows 10吗?该!
4.钛媒体App:再见Win7!微软正式停止Windows 7操作系统更新
5.昆仑联通:Windows 7停服在即,升级Windows 10刻不容缓!
package main
import (
"fmt"
"math/rand"
"sync"
"time"
)
func main() {
// 创建一个 100 个空匿名结构的数组
var times [100]struct{}
// 创建一个缓冲长度为 3 的 channel
conccuryChan := make(chan struct{}, 3)
// wait group
var wg sync.WaitGroup
// 循环 times
for k := range times {
// push 一个空数组到 channel 中,当
conccuryChan <- struct{}{}
// wait group add 1
wg.Add(1)
go func(index int) {
defer func() {
// 完成后从 channel 取出一个,下一个可以添加 channel
<-conccuryChan
}()
fmt.Println("=>>>>>>>>>> ", index)
// 模拟随机时长的逻辑
time.Sleep(time.Duration((rand.Intn(3) + 1)) * time.Second)
// 标记完成一次
wg.Done()
}(k)
}
close(conccuryChan)
wg.Wait()
}
不过,Windows 7作为一款已经问世十年的操作系统,用户基数依旧庞大。据市场调查机构Netmarketshare发布的报告显示,2019年12月,Windows 10系统市场份额占比达到54.62%,而Windows 7位居第二,为26.64%。
在国内,这部分人群尤其庞大,截至2019年10月份,依然有超过57%的用户在使用Windows 7。
Windows 7诞生于2009年,2015年1月14日微软停止了Windows 7的主流支持,不再添加新特性功能。同年7月,Windows 10面市,随后微软就一直在劝说用户升级系统,但是很多用户都已经习惯了Windows 7甚至Windows XP的使用。
按照Windows 10国内市场份额2019年才超过Windows 7的速度,Windows 10要收获国内超一半用户的芳心,可能还需要一定的时间。
技术升级和变化不可避免,Windows 7的停更,或许就是Windows 10的最佳时机。但如何让用户更愿意接受和转移,对微软来说是个挑战。
微软官方给的建议是:保持安全的最好方式是采用 Windows 10。使用新电脑是体验Windows 10 的最佳方式。虽然可以在旧设备上安装 Windows 10,但不推荐。
- MP4
- MKV
- WebM
- AVI
$ ffmpeg -formats
- H.262
- H.264
- H.265
- VP8
- VP9
- AV1
- MP3
- AAC
$ ffmpeg -codecs
- libx264:最流行的开源 H.264 编码器
- NVENC:基于 NVIDIA GPU 的 H.264 编码器
- libx265:开源的 HEVC 编码器
- libvpx:谷歌的 VP8 和 VP9 编码器
- libaom:AV1 编码器
- libfdk-aac
- aac
$ ffmpeg -encoders
$ ffmpeg {1} {2} -i {3} {4} {5}
- 全局参数
- 输入文件参数
- 输入文件
- 输出文件参数
- 输出文件
$ ffmpeg \
[全局参数] \
[输入文件参数] \
-i [输入文件] \
[输出文件参数] \
[输出文件]
$ ffmpeg \
-y \ # 全局参数
-c:a libfdk_aac -c:v libx264 \ # 输入文件参数
-i input.mp4 \ # 输入文件
-c:v libvpx-vp9 -c:a libvorbis \ # 输出文件参数
output.webm # 输出文件
$ ffmpeg -i input.avi output.mp4
-c
:指定编码器
-c copy
:直接复制,不经过重新编码(这样比较快)
-c:v
:指定视频编码器
-c:a
:指定音频编码器
-i
:指定输入文件
-an
:去除音频流
-vn
: 去除视频流
-preset
:指定输出的视频质量,会影响文件的生成速度,有以下几个可用的值 ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow。
-y
:不经过确认,输出时直接覆盖同名文件。
libx264
,所以只需指定输出文件的视频编码器即可。
$ ffmpeg -i [input.file] -c:v libx264 output.mp4
$ ffmpeg -i [input.file] -c:v libx265 output.mp4
$ ffmpeg -i input.mp4 -c copy output.webm
-c copy
指定直接拷贝,不经过转码,这样比较快。
$ ffmpeg \
-i input.mp4 \
-minrate 964K -maxrate 3856K -bufsize 2000K \
output.mp4
$ ffmpeg \
-i input.mp4 \
-vf scale=480:-1 \
output.mp4
$ ffmpeg \
-i input.mp4 \
-vn -c:a copy \
output.aac
-vn
表示去掉视频,-c:a copy
表示不改变音频编码,直接拷贝。
$ ffmpeg \
-i input.aac -i input.mp4 \
output.mp4
$ ffmpeg \
-y \
-i input.mp4 \
-ss 00:01:24 -t 00:00:01 \
output_%3d.jpg
$ ffmpeg \
-ss 01:23:45 \
-i input \
-vframes 1 -q:v 2 \
output.jpg
-vframes 1
指定只截取一帧,-q:v 2
表示输出的图片质量,一般是1到5之间(1 为质量最高)。
$ ffmpeg -ss [start] -i [input] -t [duration] -c copy [output]
$ ffmpeg -ss [start] -i [input] -to [end] -c copy [output]
$ ffmpeg -ss 00:01:50 -i [input] -t 10.5 -c copy [output]
$ ffmpeg -ss 2.5 -i [input] -to 10 -c copy [output]
-c copy
表示不改变音频和视频的编码格式,直接拷贝,这样会快很多。Continue reading "Metaflow: The New Open Source Data Science Framework from Netflix"
The post Metaflow: The New Open Source Data Science Framework from Netflix appeared first on CMARIX.
Continue reading "Open-Source Data Science Frameworks: How to Use Them in Software Projects?"
The post Open-Source Data Science Frameworks: How to Use Them in Software Projects? appeared first on CMARIX.
Continue reading "JavaScript private class fields and the TypeScript private modifier"
The post JavaScript private class fields and the TypeScript private modifier appeared first on Valentino Gagliardi.
完美阅读及吐槽,请猛击:https://linux.cn/article-11782-1.html?utm_source=qqmail&utm_medium=qqmail
# vi /opt/script/user-password-expiry.sh
#!/bin/sh
/tmp/user-expiry-1.txt
/tmp/user-expiry.txt
echo "-------------------------------------------------"
echo "UserName The number of days the password expires"
echo "-------------------------------------------------"
for usern in u1 u2 u3 u4
do
today=$(date +%s)
userexpdate=$(chage -l $usern | grep 'Password expires' |cut -d: -f2)
passexp=$(date -d "$userexpdate" "+%s")
exp=`expr \( $passexp - $today \)`
expday=`expr \( $exp / 86400 \)`
echo "$usern $expday" >> /tmp/user-expiry.txt
done
cat /tmp/user-expiry.txt | awk '$2 <= 10' > /tmp/user-expiry-1.txt
cat /tmp/user-expiry-1.txt | column -t
将文件 user-password-expiry.sh
设置为可执行的 Linux 文件权限。# chmod +x /opt/script/user-password-expiry.sh
你将得到如下输出,但用户与天数可能不同。# sh /opt/script/user-password-expiry.sh
-------------------------------------------------
UserName The number of days the password expires
-------------------------------------------------
u1 -25
u2 9
u3 3
u4 5
# vi /opt/script/user-password-expiry-mail.sh
#!/bin/sh
SUBJECT="Information About User Password Expiration on "`date`""
MESSAGE="/tmp/user-expiry.txt"
MESSAGE1="/tmp/user-expiry-1.txt"
TO="magesh.m@rentacenter.com"
echo "-------------------------------------------------" >> $MESSAGE1
echo "UserName The number of days the password expires" >> $MESSAGE1
echo "-------------------------------------------------" >> $MESSAGE1
for usern in u1 u2 u3 u4
do
today=$(date +%s)
userexpdate=$(chage -l $usern | grep 'Password expires' |cut -d: -f2)
passexp=$(date -d "$userexpdate" "+%s")
exp=`expr \( $passexp - $today \)`
expday=`expr \( $exp / 86400 \)`
echo "$usern $expday" >> $MESSAGE
done
cat $MESSAGE | awk '$2 <= 10' >> $MESSAGE1
mail -s "$SUBJECT" "$TO" < $MESSAGE1
rm $MESSAGE
rm $MESSAGE1
将文件 user-password-expiry-mail.sh
设置为可执行的 Linux 文件权限。# chmod +x /opt/script/user-password-expiry-mail.sh
最后,添加一个 cronjob 去自动执行脚本。每天早上 8 点运行一次。# crontab -e
0 8 * * * /bin/bash /opt/script/user-password-expiry-mail.sh
你将收到一封与第一个脚本输出类似的电子邮件。
完美阅读及吐槽,请猛击:https://linux.cn/article-11781-1.html?utm_source=qqmail&utm_medium=qqmail
学习如何使用 Python 的 Pygame 模块编程电脑游戏,并开始操作引力。
Player
类中添加一个 gravity
函数: def gravity(self):
self.movey += 3.2 # 玩家掉落的多快
这是一个简单的函数。首先,不管你的玩家是否想运动,你设置你的玩家垂直运动。也就是说,你已经编程你的玩家总是在下降。这基本上就是引力。 player.gravity() # 检查引力
player.update()
启动你的游戏来看看会发生什么。要注意,因为它发生的很快:你是玩家从天空上下落,马上掉出了你的游戏屏幕。if
语句。gravity
函数看起来像这样: def gravity(self):
self.movey += 3.2 # 玩家掉落的多快
if self.rect.y > worldy and self.movey >= 0:
self.movey = 0
self.rect.y = worldy-ty
然后,启动你的游戏。你的精灵仍然下落,但是它停在屏幕的底部。不过,你也许不能看到你在地面层之上的精灵。一个简单的解决方法是,在精灵碰撞游戏世界的底部后,通过添加另一个 -ty
到它的新 Y 位置,从而使你的精灵弹跳到更高处: def gravity(self):
self.movey += 3.2 # 玩家掉落的多快
if self.rect.y > worldy and self.movey >= 0:
self.movey = 0
self.rect.y = worldy-ty-ty
现在你的玩家在屏幕底部弹跳,恰好在你地面精灵上面。#!/usr/bin/env python3
# draw a world
# add a player and player control
# add player movement
# add enemy and basic collision
# add platform
# add gravity
# GNU All-Permissive License
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved. This file is offered as-is,
# without any warranty.
import pygame
import sys
import os
'''
Objects
'''
class Platform(pygame.sprite.Sprite):
# x location, y location, img width, img height, img file
def __init__(self,xloc,yloc,imgw,imgh,img):
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(os.path.join('images',img)).convert()
self.image.convert_alpha()
self.rect = self.image.get_rect()
self.rect.y = yloc
self.rect.x = xloc
class Player(pygame.sprite.Sprite):
'''
Spawn a player
'''
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.movex = 0
self.movey = 0
self.frame = 0
self.health = 10
self.score = 1
self.images = []
for i in range(1,9):
img = pygame.image.load(os.path.join('images','hero' + str(i) + '.png')).convert()
img.convert_alpha()
img.set_colorkey(ALPHA)
self.images.append(img)
self.image = self.images[0]
self.rect = self.image.get_rect()
def gravity(self):
self.movey += 3.2 # how fast player falls
if self.rect.y > worldy and self.movey >= 0:
self.movey = 0
self.rect.y = worldy-ty-ty
def control(self,x,y):
'''
control player movement
'''
self.movex += x
self.movey += y
def update(self):
'''
Update sprite position
'''
self.rect.x = self.rect.x + self.movex
self.rect.y = self.rect.y + self.movey
# moving left
if self.movex < 0:
self.frame += 1
if self.frame > ani*3:
self.frame = 0
self.image = self.images[self.frame//ani]
# moving right
if self.movex > 0:
self.frame += 1
if self.frame > ani*3:
self.frame = 0
self.image = self.images[(self.frame//ani)+4]
# collisions
enemy_hit_list = pygame.sprite.spritecollide(self, enemy_list, False)
for enemy in enemy_hit_list:
self.health -= 1
print(self.health)
ground_hit_list = pygame.sprite.spritecollide(self, ground_list, False)
for g in ground_hit_list:
self.health -= 1
print(self.health)
class Enemy(pygame.sprite.Sprite):
'''
Spawn an enemy
'''
def __init__(self,x,y,img):
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(os.path.join('images',img))
#self.image.convert_alpha()
#self.image.set_colorkey(ALPHA)
self.rect = self.image.get_rect()
self.rect.x = x
self.rect.y = y
self.counter = 0
def move(self):
'''
enemy movement
'''
distance = 80
speed = 8
if self.counter >= 0 and self.counter <= distance:
self.rect.x += speed
elif self.counter >= distance and self.counter <= distance*2:
self.rect.x -= speed
else:
self.counter = 0
self.counter += 1
class Level():
def bad(lvl,eloc):
if lvl == 1:
enemy = Enemy(eloc[0],eloc[1],'yeti.png') # spawn enemy
enemy_list = pygame.sprite.Group() # create enemy group
enemy_list.add(enemy) # add enemy to group
if lvl == 2:
print("Level " + str(lvl) )
return enemy_list
def loot(lvl,lloc):
print(lvl)
def ground(lvl,gloc,tx,ty):
ground_list = pygame.sprite.Group()
i=0
if lvl == 1:
while i < len(gloc):
ground = Platform(gloc,worldy-ty,tx,ty,'ground.png')
ground_list.add(ground)
i=i+1
if lvl == 2:
print("Level " + str(lvl) )
return ground_list
def platform(lvl,tx,ty):
plat_list = pygame.sprite.Group()
ploc = []
i=0
if lvl == 1:
ploc.append((0,worldy-ty-128,3))
ploc.append((300,worldy-ty-256,3))
ploc.append((500,worldy-ty-128,4))
while i < len(ploc):
j=0
while j <= ploc[2]:
plat = Platform((ploc[0]+(j*tx)),ploc[1],tx,ty,'ground.png')
plat_list.add(plat)
j=j+1
print('run' + str(i) + str(ploc))
i=i+1
if lvl == 2:
print("Level " + str(lvl) )
return plat_list
'''
Setup
'''
worldx = 960
worldy = 720
fps = 40 # frame rate
ani = 4 # animation cycles
clock = pygame.time.Clock()
pygame.init()
main = True
BLUE = (25,25,200)
BLACK = (23,23,23 )
WHITE = (254,254,254)
ALPHA = (0,255,0)
world = pygame.display.set_mode([worldx,worldy])
backdrop = pygame.image.load(os.path.join('images','stage.png')).convert()
backdropbox = world.get_rect()
player = Player() # spawn player
player.rect.x = 0
player.rect.y = 0
player_list = pygame.sprite.Group()
player_list.add(player)
steps = 10 # how fast to move
eloc = []
eloc = [200,20]
gloc = []
#gloc = [0,630,64,630,128,630,192,630,256,630,320,630,384,630]
tx = 64 #tile size
ty = 64 #tile size
i=0
while i <= (worldx/tx)+tx:
gloc.append(i*tx)
i=i+1
enemy_list = Level.bad( 1, eloc )
ground_list = Level.ground( 1,gloc,tx,ty )
plat_list = Level.platform( 1,tx,ty )
'''
Main loop
'''
while main == True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit(); sys.exit()
main = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT or event.key == ord('a'):
print("LEFT")
player.control(-steps,0)
if event.key == pygame.K_RIGHT or event.key == ord('d'):
print("RIGHT")
player.control(steps,0)
if event.key == pygame.K_UP or event.key == ord('w'):
print('jump')
if event.type == pygame.KEYUP:
if event.key == pygame.K_LEFT or event.key == ord('a'):
player.control(steps,0)
if event.key == pygame.K_RIGHT or event.key == ord('d'):
player.control(-steps,0)
if event.key == pygame.K_UP or event.key == ord('w'):
print('jump')
if event.key == ord('q'):
pygame.quit()
sys.exit()
main = False
world.blit(backdrop, backdropbox)
player.gravity() # check gravity
player.update()
player_list.draw(world)
enemy_list.draw(world)
ground_list.draw(world)
plat_list.draw(world)
for e in enemy_list:
e.move()
pygame.display.flip()
clock.tick(fps)
( ↓↓ —— 未完 —— ↓↓ )
完美阅读及吐槽,请猛击:https://linux.cn/article-11780-1.html?utm_source=qqmail&utm_medium=qqmail
Super + ,
、Super + .
)Super+Shift+,
、Super+Shift+.
)Super + f
)Super + r
)
完美阅读及吐槽,请猛击:https://linux.cn/article-11779-1.html?utm_source=qqmail&utm_medium=qqmail
Create React App is a tool built by developers at Facebook to help you build React applications. It saves you from time-consuming setup and configuration. You simply run one command and create react app sets up the tools you need to start your React project . — Guil Hernandez
npx create-react-app my-app --template typescript
This spins up a new React app in TypeScript configuration. For TypeScript users, this is great news. This has already been possible for a while now; however, the initial --typescript
has been removed and now replaced with --template typescript
, as you see above. Starting a new app the way you know, it works perfectly:npx create-react-app my-app
React community members can now create their own templates too and get it added in the list of templates.var street = user.address && user.address.street;
Also, many APIs return either an object or null/undefined, and one may want to extract a property from the result only when it is not null:var fooInput = myForm.querySelector('input[name=foo]')
var fooValue = fooInput ? fooInput.value : undefined
According to the TC39 proposal, the Optional Chaining Operator allows a developer to handle many of those cases without repeating themselves or assigning intermediate results in temporary variables:var street = user.address?.street
var fooValue = myForm.querySelector('input[name=foo]')?.value
When some other value than undefined
is desired for the missing case, this can usually be handled with the Nullish coalescing operator:// falls back to a default value when response.settings is missing or nullish
// (response.settings == null) or when response.settings.animationDuration is missing
// or nullish (response.settings.animationDuration == null)
const animationDuration = response.settings?.animationDuration ?? 300;
The call variant of Optional Chaining is useful for dealing with interfaces that have optional methods:iterator.return?.() // manually close an iterator
or with methods not universally implemented:if (myForm.checkValidity?.() === false) { // skip the test in older web browsers
// form validation fails
return;
}
CRA 3.3 now supports these operators and if your TypeScript version is not up to date, you will have to update it for these new operator changes to be accessible to you.// Optional chaining
a?.(); // undefined if `a` is null/undefined
b?.c; // undefined if `b` is null/undefined
// Nullish coalescing
undefined ?? 'some other default'; // result: 'some other default'
null ?? 'some other default'; // result: 'some other default'
'' ?? 'some other default'; // result: ''
0 ?? 300; // result: 0
false ?? true; // result: false
Also, for IDEs like VS Code you have to also update it to understand these new operators when you code.1000000000; // Is this a billion? a hundred million? Ten million?
101475938.38; // what scale is this? what power of 10?
1_000_000_000; // Ah, so a billion
101_475_938.38; // And this is hundreds of millions
Separators like underscores between digits can be used to ensure that numeric literals are always readable and not be so difficult to parse with the eye.const FEE = 12300;
// is this 12,300? Or 123, because it's in cents?
const AMOUNT = 1234500;
// is this 1,234,500? Or cents, hence 12,345? Or financial, 4-fixed 123.45?
Using underscores (_
, U+005F) as separators helps improve readability for numeric literals, both integers and floating-point (and in JS, it's all floating-point anyway):1_000_000_000 // Ah, so a billion
101_475_938.38 // And this is hundreds of millions
let fee = 123_00; // $123 (12300 cents, apparently)
let fee = 12_300; // $12,300 (woah, that fee!)
let amount = 12345_00; // 12,345 (1234500 cents, apparently)
let amount = 123_4500; // 123.45 (4-fixed financial)
let amount = 1_234_500; // 1,234,500
Also, this works on the fractional and exponent parts, too:0.000_001 // 1 millionth
1e10_000 // 10^10000 -- granted, far less useful / in-range...
{
"extends": "react-app",
"rules": {
"no-unexpected-multiline": "warn"
}
}
react-dev-utils
outside of Create React App, you will have to update the webpack dev server dependency to 3.9.0npm install --save --save-exact react-scripts@3.3.0
or for Yarn:yarn add --exact react-scripts@3.3.0
with patch('tempfile._TemporaryFileWrapper') as mock_ntf:
mock_ntf.side_effect = OSError()
Inside tempfile.NamedTemporaryFile, the error handling misses the possibility that _TemporaryFileWrapper will fail (source):(fd, name) = _mkstemp_inner(dir, prefix, suffix, flags, output_type)
try:
file = _io.open(fd, mode, buffering=buffering,
newline=newline, encoding=encoding, errors=errors)
return _TemporaryFileWrapper(file, name, delete)
except BaseException:
_os.unlink(name)
_os.close(fd)
raise
If _TemporaryFileWrapper fails, the file descriptor fd is closed, but the file object referencing it still exists. Eventually, it will be garbage collected, and the file descriptor it references will be closed again.
But file descriptors are just small integers which will be reused. The failure in bug 915 is that the file descriptor did get reused, by SQLite. When the garbage collector eventually reclaimed the file object leaked by NamedTemporaryFile, it closed a file descriptor that SQLite was using. Boom.
There are two improvements to be made here. First, the user code should be mocking public functions, not internal details of the Python stdlib. In fact, the variable is already named mock_ntf as if it had been a mock of NamedTemporaryFile at some point.
NamedTemporaryFile would be a better mock because that is the function being used by the user’s code. Mocking _TemporaryFileWrapper is relying on an internal detail of the standard library.
The other improvement is to close the leak in NamedTemporaryFile. That request is now bpo39318. As it happens, the leak had also been reported as bpo21058 and bpo26385.
Lessons learned:I named Robert Xiao at the top, but lots of people chipped in effort to help get to the bottom of this. ikanobori posted it to Hacker News in the first place. Chris Caron reported the original #915 and stuck with the process as it dragged on. Thanks everybody.
- Hacker News can be helpful, in spite of the tangents about shell redirection, authorship attribution, and GitHub monoculture.
- There are always people more skilled at debugging. I had no idea you could script gdb.
- Error handling is hard to get right. Edge cases can be really subtle. Bugs can linger for years.
loop_index = 0
while loop_index < 5:
print(loop_index)
loop_index += 1
PseudocodeSet loop index to 0
Loop while loop index is less than 5
print loop index
Increase loop index by 1
Pseudocode is more readable to humans, too. It’s not actually much different from code, it just avoids using language-specific syntax. And using it it worked! They gave me the job. But of course, before I arrived I had to actually learn the language.mechanize
, cookielib
, urlib
, urlib2
, and csv
extensively. If you're looking at a machine-learning project, pay attention to libraries like TensorFlow, Numpy, and Keras.C:\Users\Scott\Desktop>dir &!Yori also support updating itself with "ypm -u" which is clever. Other lovely Yori-isms that will make you smile?
Job 2: c:\Program Files\Yori\ydir.exe
C:\Users\Scott\Desktop>job
Job 1 (completed): c:\Program Files\Yori\ydir.exe
Job 2 (executing): c:\Program Files\Yori\ydir.exe
Job 2 completed, result 0: c:\Program Files\Yori\ydir.exe
{Great stuff!
"acrylicOpacity": 0.85000002384185791,
"closeOnExit": true,
"colorScheme": "Lovelace",
"commandline": "c://Program Files//Yori//yori.exe",
"cursorColor": "#00FF00",
"cursorHeight": 25,
"cursorShape": "vintage",
"fontFace": "Cascadia Code",
"fontSize": 20,
"guid": "{7d04ce37-c00f-43ac-ba47-992cb1393215}",
"historySize": 9001,
"icon": "ms-appdata:///roaming/cmd-32.png",
"name": "DOS but not DOS",
"padding": "0, 0, 0, 0",
"snapOnInput": true,
"startingDirectory": "C:/Users/Scott/Desktop",
"tabTitle": "DOS, Kinda",
"useAcrylic": true
},
using System.Text.Json;I use Json Serialization in Newtonsoft.Json and have talked before about how much I like C# Type Aliases. Since I used J as an alias for all my Attributes, that made this code easy to convert, and easy to read. Fortunately things like JsonIgnore didn't have their names changed so the namespace was all that was needed there.
using System.Text.Json.Serialization;
NOTE: The commented out part in these snippets is the Newtonsoft bit so you can see Before and After
//using J = Newtonsoft.Json.JsonPropertyAttribute;I was using Newtonsoft's JsonConvert, so I changed that DeserializeObject call like this:
using J = System.Text.Json.Serialization.JsonPropertyNameAttribute;
/* SNIP */
public partial class Sponsor
{
[J("id")]
public int Id { get; set; }
[J("name")]
public string Name { get; set; }
[J("url")]
public Uri Url { get; set; }
[J("image")]
public Uri Image { get; set; }
}
//public static v2ShowsAPIResult FromJson(string json) => JsonConvert.DeserializeObject<v2ShowsAPIResult>(json, Converter.Settings);In other classes some of the changes weren't stylistically the way I'd like them (as an SDK designer) but these things are all arguable either way.
public static v2ShowsAPIResult FromJson(string json) => JsonSerializer.Deserialize<v2ShowsAPIResult>(json);
return await JsonSerializer.DeserializeAsync<List<Sponsor>>(await res.Content.ReadAsStreamAsync());But one way to fix this (if this kind of use of ReadAsAsync is spread all over your app) is to make your own extension class:
//return await res.Content.ReadAsAsync<List<Sponsor>>();
public static class HttpContentExtensionsMy calls to JsonConvert.Serialize turned into JsonSerializer.Serialize:
{
public static async Task<T> ReadAsAsync<T>(this HttpContent content) =>
await JsonSerializer.DeserializeAsync<T>(await content.ReadAsStreamAsync());
}
//public static string ToJson(this List<Sponsor> self) => JsonConvert.SerializeObject(self);And the reverse of course with JsonSerializer.Deserialize:
public static string ToJson(this List<Sponsor> self) => JsonSerializer.Serialize(self);
//public static Dictionary<string, Shows2Sponsor> FromJson(string json) => JsonConvert.DeserializeObject<Dictionary<string, Shows2Sponsor>>(json);All in all, far easier than I thought. How have YOU found System.Text.Json to work in your apps?
public static Dictionary<string, Shows2Sponsor> FromJson(string json) => JsonSerializer.Deserialize<Dictionary<string, Shows2Sponsor>>(json);
process where process_name == "mshta.exe" and descendant of [process where process_name == "outlook.exe"]
sequence by unique_pid [process where subtype.create and process_name in ("mshta.exe", "regsvr32.exe", "rundll32.exe", "wmic.exe")] [network where process_name in ("mshta.exe", "regsvr32.exe", "rundll32.exe", "wmic.exe")]One of the more interesting takeaways when reviewing offensive tooling is finding the different artifacts that get left behind unintentionally. All it takes is one “loud” artifact, such as a file or registry modification that sticks out, to quickly find suspicious activity.
file where process_name in ("mshta.exe","regsvr32.exe", "rundll32.exe", "wmic.exe") and subtype.create and file_path == "*Content.IE5*"
macro KOADIC_DISCOVERY(name) name in ( "arp.exe", "findstr.exe", "hostname.exe", "ipconfig.exe", "nbtstat.exe", "net.exe", "net1.exe", "netsh.exe", "nltest.exe", "ping.exe", "systeminfo.exe", "tasklist.exe", "tracert.exe", "whoami.exe" )The Elastic Endpoint Resolver view below helps provide some context about how Koadic spawns child processes. By using the Koadic module (exec_cmd), and running a natively supported command such as “whoami /groups”, we can see the Rundll32.exe application was invoked by WmiPrvse.exe and passes instructions down to the command prompt before launching the Whoami.exe application.
sequence by user_name with maxspan=10m [process where subtype.create and KOADIC_DISCOVERY(process_name)] [process where subtype.create and KOADIC_DISCOVERY(process_name)] [process where subtype.create and KOADIC_DISCOVERY(process_name)] | unique user_nameThe query above is fully-functional and can be used as a generic detection for initial discovery and enumeration. But what if we had some reason to tighten the logic around Koadic specifically? Understanding the process genealogy of Koadic at the endpoint level, we can leverage different process relationship tracking functions in EQL such as child of and descendant of.
sequence by user_name with maxspan=10m [process where child of [process where parent_process_name == "rundll32.exe"] and KOADIC_DISCOVERY(process_name) and descendant of [process where parent_process_name == "wmiprvse.exe"]] [process where child of [process where parent_process_name == "rundll32.exe"] and KOADIC_DISCOVERY(process_name) and descendant of [process where parent_process_name == "wmiprvse.exe"]] | unique user_name
sequence with maxspan=10s [registry where length(bytes_written_string) > 0 and key_type in ("sz", "expandSz") and key_path == "*\\mscfile\\shell\\open\\command\\" and user_name != "SYSTEM"] [process where process_path == "C:\\Windows\\System32\\CompMgmtLauncher.exe"] [process where process_name in ("mshta.exe","rundll32.exe") and integrity_level == "high"]
file where file_name == "*.txt" and event of [process where process_name == "cmd.exe" and command_line == "*>*"]
sequence with maxspan=5s by unique_pid [process where subtype.create and process_name == "cmd.exe" and command_line == "*>*" and descendant of [process where process_name == "wmiprvse.exe"]] [file where subtype.create and wildcard(file_name, "*.txt", "*.log")]
$ git clone --filter=blob:none --no-checkout /your/repository/here
--no-checkout
which tells Git to avoid checking out the repository entirely.$ git clone --filter=blob:none --no-checkout /your/repository/here repo
$ cd repo
$ cat >.git/info/sparse-checkout <<EOF
/*
!/*
EOF
$ git config core.sparseCheckout 1
$ git checkout .
git sparse-checkout
git sparse-checkout
:$ git clone --filter=blob:none --sparse /your/repository/here repo
git sparse-checkout
command is simple: allow users to play with partial clones and sparse-checkouts as easily as possible. It can do four things: set the list of paths to checkout, print the current list, and enable or disable sparse checkouts entirely. (Note: That’s the set
, list
, enable
, and disable
subcommands, respectively)..gitignore
patterns into .git/info/sparse-checkout
, git sparse-checkout
handles the work for you. To checkout a new path, simply execute the following:$ git sparse-checkout set /path/to/check/out
git sparse-checkout
again comes to our rescue with “cone mode”. When working in cone mode (opted into by running git config core.sparseCheckoutCone
, the set of allowed patterns becomes more restrictive. Instead of arbitrary .gitignore patterns, you can specify whether all paths, or all files (within a given subdirectory) should be checked out.A/B/C
, within a large repository and C is where you do most of your work, you’ll probably want to have C fully checked out. You’ll also want to have A and B checked out enough so that you can get to C, but not much more. When in cone mode, git sparse-checkout set A/B/C
will do exactly that. To learn more about cone mode, check out the documentation.git sparse-checkout
command is experimental, and its behavior is subject to change. Likewise, many providers (including GitHub) are still experimenting with partial clone support and it’s not yet generally available. We’ll make sure to keep you updated with the progress of both.--rebase-merges
option, which is used to preserve the branch structure of your repository when rebasing. In v2.22.0 the option that --rebase-merges
replaced, --preserve-merges
, was deprecated. This release takes that deprecation even further by removing all mentions of --preserve-merges
from the help text for git rebase
.git rebase --preserve-merges
, this release is a good time to update them.Subject:
header in the cover-letter email. To tell Git to do this, use git format-patch --cover-from-description subject
.git apply --3way
and the merge.conflictStyle
setting. You may have used git apply
to apply a *.patch
file to your repository, and perhaps even the --3way
option to leave yourself in a conflict resolution state when the patch didn’t apply cleanly. Likewise, the latter configuration value is used to control how Git formats merge conflicts for you to resolve.git apply
honors the conflict style you’ve set when it encounters patches that require merge conflict resolution before applying.git <diff|grep> --show-function
and --function-context
. (To use these, you’ll need to mark the file type using one of your repository’s .gitattributes
files).git add
, git commit
, git reset
and so on understand a new option --pathspec-from-file
. If you have many pathspecs to pass to one of these commands, you might write git add $(cat your-pathspecs)
. If your-pathspecs
is too long, you might instead use xargs
, which works fine in this example since xargs
will simply run git add more than once. However, what if your command is git commit
, in which case running it more than once no longer works?git commit --pathspec-from-file=your-pathspecs
and add as many pathspecs as arguments as you desire, which can be handy if you’re scripting around Git in especially large repositories.git add
. One particularly neat way to use this command that you may not have learned is with that same option we were discussing earlier, -i
.-i
, git add
splits the changes you’re trying to stage into piece (colloquially, “hunks”) and asks you whether or not you want to stage each one. This is really useful if you want to split the changes from your working copy into multiple commits.git add -i
in C, like the majority of the rest of Git. Cooler still is that this project is from an Outreachy internship. This work is still waiting on a few remaining changes to make git add -p
feature-complete, but expect those features soon.git log --graph
to look at an ASCII rendering of the graph of history in your repository. If you’ve ever used this on a particularly large repository with a lot of long-running branches, the output may have filled the width of your terminal.git log --graph
while still being faithful to the structure of history.git log
tidbit? If you wanted more, here’s another one. Back when Git 2.22 was released, we talked about ways to change the output of your log with git log --format=....
In Git 2.25, --format
learned the verb l/L
, to use the part of an email address preceding the @
[1].git log --format='%h %C(cyan)%al %C(yellow)%s
on one of your company’s repositories..mailmap
translation(s).