text:
Tennessee Williams made his reputation with early plays like "The Glass Menagerie" and "A Streetcar Named Desire," but most people stopped paying attention to his work about halfway into his 47-year career.
That said, there's a movement afoot to re-examine the full body of his work, and among those spearheading it is Jef Hall-Flavin, a St. Paul-born director who heads Massachusetts' Provincetown Tennessee Williams Theater Festival. His latest argument for the playwright's place in the pantheon is Gremlin Theatre's production of "A Lovely Sunday for Creve Coeur," which heads to Provincetown this fall.
Presented in a street-level walk-in apartment in South Minneapolis ideal for the play's setting, Gremlin's production is a strong one, even as it wrestles with writing that can be eloquent and affecting one minute and clumsy and chaotic the next.
It's a four-woman drama fueled by class consciousness and clashes between reality and romantic delusions (a Williams staple), but the story is less important than the character studies it offers. Gremlin's cast has mixed success in making these women fascinating companions, but Williams' words grow more poetic and potent when the women open up about their dreams in the second act, making it a far more rewarding evening at the theater than it looks as if it's going to be early on.
The setting is an apartment in 1935 St. Louis (Williams' hometown) that young Memphis belle Dottie shares with her older friend, Bodey. While Bodey is trying to get Dottie interested in her twin brother, the young schoolteacher pines for the principal who recently seduced her and believes their relationship more substantial than it clearly is. Enter a haughty, hostile fellow teacher trying to talk Dottie into fleeing this "squalor" and get a high-end apartment with her and the conflict intensifies, its frazzled tenor exacerbated by a haunted German-speaking neighbor with mental illness.
While Sara Richardson has some fine moments as Dottie, treading similar turf to many another drawling, distracted and deluded Williams heroine, Jane Froiland has a hard time climbing out of the corner into which the author paints her as the very disagreeable faux-bourgeois prospective roommate. A monologue clearly intended to expose the character's vulnerability and make her more sympathetic falls flat despite Froiland's best efforts to make it believable.
But the standout performance in this production comes from Suzanne Warmanen as Bodey. Hers is such a disarmingly natural portrayal that I felt as if a real person may have walked in off the street and taken her place among Williams' highly stylized characters. Warmanen makes Bodey compelling and quite unlike a typical Williams woman in her compassionate manner and straightforward speech.
"A Lovely Sunday for Creve Coeur" was to open last week in a Summit-University house until the venue was deemed to not meet city standards for public performance. But it would be hard to believe that what they had in St. Paul could be a better fit than the space next to Open Eye Figure Theatre in which this production has landed. When the smell of chicken frying on the stove permeated the apartment in which the audience (capacity 40) was sitting, it provided a homey intimacy a typical theater space can't offer.
Rob Hubbard can be reached at email@example.com.
What: Gremlin Theatre's production of "A Lovely Sunday for Creve Coeur"
When: 7:30 p.m. Wednesday-Saturday, 4 p.m. Sunday
Where: Open Eye Figure Theatre Studio, 508 E. 24th St., Minneapolis
Tickets: $25-$12.50, available at 888-718-4253 or gremlin-theatre.org
Capsule: A flawed script, but a fine setting.

subset: commoncrawl


text:
Best trailer of the year (so far)?
0 Members and 1 Guest are viewing this topic.
Killer cover of comfortably numb. Any idea who did it?
pubrick RIP
OK, the images in the trailer, not the trailer itself, make me excited about it. Comfortably Numb doesn't work in the trailer but I know it'll work in the movie.


text:
Taking matters into his own hands
Published 6:30 am, Thursday, November 5, 2009
Movies such as DefianceandInglourious Basterds have dealt with the concept of Jews violently fighting back against anti-Semitism.
In Houston, tough-demeanored Ira Bleiweiss has two hobbies: taking gun practice at a shooting range and combating anti-Semitism in a peaceful way.
For two years on his evening commute, Bleiweiss watched members of the Progressive Action Alliance on the bridge over U.S. 59 at Mandell protesting Israel with virulent signs. Although increasingly bothered by them, he did what most people would do: He silently fumed but didn't act on it.
Then one day in March 2008, fed up with the increasingly anti-Semitic tone of the group's signage, he decided to take action against what he calls "freeway blogging."
"If people don't have the information, if they are bombarded with lies that are repeated often enough, then those lies become credible," Bleiweiss said. "No one was challenging this group and their misleading statements. I knew I would have to be the one to challenge them."
The 54-year-old technology sales manager is the son of Holocaust survivors. As a longtime volunteer docent at the Holocaust Museum Houston, Bleiweiss has led groups of every religious denomination through what he calls "the story of what happens when racism, bigotry and hatred get out of control and no one does anything to stop it."
He has found an ally in community activist Quanell X. The two combined forces in October to challenge a speech in Houston by Holocaust denier David Irving.
"I believe Ira has a sincere desire to bridge the gap between Muslims, Jews and Christians, and I admire his courage to go where others fear to tread," Quanell X said. "He has sacrificed his own safety to challenge hatred. He is doing a noble thing, the right thing, and if more people would follow his example to reach out to develop dialogue, we could stem the tide of hate."
Bleiweiss' most passionate volunteerism of late has been dedicated to countering the public acts of anti-Semitism. He refuses to name the freeway blogging group or its leader in order to deny them any publicity, explaining that "they love any publicity."
"I didn't have to dig very deep to see what these demonstrators were about, and that was hatred of Judaism and the Jewish people rather than hatred of Israel," Bleiweiss said. "They veil their hatred under an anti-Zionist cover, but their sayings come directly from anti-Semitic propaganda such as the Protocols of the Elders of Zion."
Bleiweiss began showing up at the group's demonstrations on the bridge and talked with the members. He asked them why they were singling out Israel for their protests, and questioned why they weren't concerned about the genocide, injustices and oppression in places like Congo or Darfur.
Strictly by word of mouth, he led a first group of 18 people carrying hand-painted messages on boards that included the words "Teach Peace, not Hate" and "Co-Exist" with symbols for the major U.S. religions. For their first counter-demonstration, Bridge Houston members arrived earlier than the anti-Israel protesters and took over the spot on the bridge, showering commuters with their signs promoting tolerance.
"Our message of tolerance and wish for peace is unimpeachable," Bleiweiss said. "It isn't the Jewish way to get in people's faces, but we had to take bold action without being afraid to get our own message out."
In January, the anti-Israel group organized a demonstration outside the Holocaust Museum Houston. A diverse cross-section of people arrived to counter-demonstrate with Bleiweiss and his group — six rabbis, U.S. Rep. John Culberson and 300 people who included Jews, non-Jews, blacks and Hispanics.
"They tried to equate what is happening in Israel as a Holocaust against Palestinians and wore concentration-camp uniforms," Bleiweiss said. "It is the ultimate perversion of the truth."
The Bridge Houston organization of concerned citizens is growing, and as word gets around, he is receiving unsolicited donations from across the country. The group was recently able to bring its message to a billboard along two stretches of heavy commuter traffic on U.S. 59 and Interstate 45. The photo of an Israeli child and a Palestinian child hugging each other says, "Save Gaza from Hamas. Teach peace, not Hate."
The billboards will remain up as long as Bleiweiss and his organization can fund it. He is also tracking other acts of anti-Semitism in Houston and nationwide, hoping to stir others into action.
"I had to do something because I feel that there is no place in my hometown of Houston for unchallenged haters," Bleiweiss said. "This group has taken on a life of its own, and it has become time consuming for me, but I would rather be an 'upstander,' and do something about the hatred, than be a bystander."
For information, visit www.bridgehouston.org.


text:
As part of Rick Ross's master plan, the rapper's sixth studio album, Mastermind, is streaming now on iTunes in advance of its March 4th release date.
Less than two years since the release of God Forgives, I Don't, Rozay has put together an album featuring guest appearances by Kanye West, Jay Z, Lil Wayne, Big Sean, French Montana, Meek Mill, Jeezy, the Weeknd, Sizzla and Mavado. It's a record that starts off with a literal bang as Ross says, "If you love hip-hop, bust some shots," on the album's first full song, "Rich Is Gangsta."
Where Did Rick Ross' 'Rich Forever' Rank on Our List of 2012's Best Albums?
Deeper into the album, however, Ross demonstrates the sort of power a mastermind should possess: He managed to secure a guest appearance by the most-wanted man in hip-hop, Kanye West, on Mastermind cut "Sanctified."
After a gospel sample about being born again – something a Yeezus figure should understand – West raps about how he feels people play up his earlier works and dismiss who he is now. "When Ali turn up and be Ali, you can't ever take that n---a back to Cassius," he raps, before saying that he's not going to sweat it. "Wipe my forehead with a handkerchief and wash my sins in the blood of Jesus," he raps. "People sayin', ''Ye, we need another Yeezus.'" Your move, Ross.


text:
Take on Big Data & Web Sources with Deep Web Technologies
Complement and enhance the content you publish
Augment your search results with related content from Big Data and from Web Sources and bring the world of information to your users through your interface. Big Data sources provide access to specialized content about content — e.g., trends, usage patterns, impact — that is growing exponentially and changing every second. Incorporating Big Data analyses and content from Web Sources allows your researchers to make more informed decisions about their research, increasing the value of the content you provide.
Deep Web Technologies, a leader in providing a single point of access to thousands of information sources, publicly available or available through subscription, offers users one stop access to related content that complements and enhances the scholarly content that you publish.
Article-level related content
Using unique identifiers (e.g., DOI) to retrieve relevant Big Data analyses for articles that a user is reading or key terms from article titles, authors or keywords, we can provide users with a selection of related content:
- Find content similar to the current article in sources used to expand search
- Find more information on the current article such as who is reading the article (Mendeley)
- Search Open Link Data Repository for information related to the current article
- Link to Web of Science (for subscribers) to find articles that cite current article
Expanding search scope
Expand your users' searches to additional sources with results merged with your content or displayed in a separate panel. Searches may be submitted to some of the following information sources or most any desired information source:
- Major Science portals (Science.gov, WorldWideScience.org)
- Science News (Eureka, ScienceOnline)
- Patent Databases (USPTO, EPO, Japan, WIPO)
- Scholar Networks (Mendeley, Research Gate)
- Subscription Sources (Science Direct, Web of Knowledge)
- Public Databases (PubMed, DOE Technical Reports)
- Open Access Journals (DOAJ)
Flexible integration with Explorit search engine
Deep Web Technologies can work with your developers and IT staff to create a customized solution that meets your needs:
- Customize our state-of-the-art user interface to the look-and-feel of your website including visualization of search results, export to citation management tools such as RefWorks, EndNote, Zotero and Mendeley
- Notify users of new research on their topics of interests
- Provide access to our search engine via a powerful standards-based Web Services API
- Integrate into your authentication or authorization sign-on system
- Configure access to sources to be provided on a per-user or per-institution basis


text:
Review by Pete Vack
Don Nunley's new book Steve McQueen: Le Mans in the Rearview Mirror is a personal view of the filming of McQueen's Le Mans epic. Nunley's position as the Property Master in the movie was significant. A Property Master is responsible for making sure there is continuity between scenes – how much water was in the glass, how long was the cigarette ash, etc. and for purchasing, renting, and even manufacturing all props needed for a production; he makes sure they are functional and positioned correctly for each scene; Le Mans required more than 20,000 props. In addition, Nunley helped to market the props, such as the Heuer watches worn by McQueen during the movie.
Nunley saw a lot and knew a lot; he was on the set the entire time. He had previously been the assistant Property Master for Wanted, Dead or Alive, a TV western starring McQueen. McQueen was arrogant even then. "If he disliked something in the script, he would literally start ripping out the pages," recalled Nunley. Bolstered by the success of Bullitt, by 1969 McQueen now had the money and power to create the movie he had dreamt about since 1959, when, according to Nunley, McQueen announced that he would make a racing movie and Brigitte Bardot would be the female lead. [Read more…] about Steve McQueen: Le Mans in the Rearview Mirror


text:
- What does a curator even do? Find out on 9/16 during #AskACurator Day. Get your questions ready, curveballs welcome.
- Do our collections look like the warehouse from Indiana Jones? Not really, but you can join us for #AskaACurator Day tomorrow to find out.
https://twitter.com/CincyMuseum/status/643767473628540929— CincyMuseum (@CincyMuseum)Tue, Sep 15 2015 12:45:00
- David @CincyMuseum Is there a time when aspects of an object's creation, use or provenance led your research to unexpected outcomes? Thanks!
https://twitter.com/mbvoicestudio/status/643949187214802944— MargaretBreidenbaugh (@mbvoicestudio)Wed, Sep 16 2015 00:47:04
- #AskACurator: If money was no concern, what is your wildest dream exhibition you would like to curate?
https://twitter.com/danamuses/status/644113666124705793— dana allen-greil (@danamuses)Wed, Sep 16 2015 11:40:39
- #AskACurator What exhibition (any where in the world) do you wish you had worked on (or could work on)?
https://twitter.com/AskACurator/status/644172969128824832— Ask A Curator (@AskACurator)Wed, Sep 16 2015 11:53:24
- What challenges do you face now that you didn't at the beginning of your career? #AskACurator
https://twitter.com/heyshaelyn/status/644127675318145024— shaelyn amaio (@heyshaelyn)Wed, Sep 16 2015 12:36:19
- @NPGLondon Top tip for someone hoping to become a curator? #AskACurator
https://twitter.com/LeonaArmstrong/status/644136200081686528— Leona Armstrong (@LeonaArmstrong)Wed, Sep 16 2015 13:10:12
- I'd love to hear from any Curator participating in #AskACurator — what is the most ridiculous object someone tried to donate to your museum?
https://twitter.com/FraserMcDonald/status/644141851805634560— Fraser (@FraserMcDonald)Wed, Sep 16 2015 13:32:39
- @CincyMuseum What an intriguing story, David! I never considered that donors might compete with one another. Thank you for sharing.
https://twitter.com/mbvoicestudio/status/644142199924461569— MargaretBreidenbaugh (@mbvoicestudio)Wed, Sep 16 2015 13:34:02
- Our curator David Conzett has a great answer to this one. Stay tuned. 🎵 #AskACurator https://twitter.com/ribekunstmuseum/status/644132722651308032 …
https://twitter.com/CincyMuseum/status/644144789923823616— CincyMuseum (@CincyMuseum)Wed, Sep 16 2015 13:44:20
- @CincyMuseum @AskACurator That's the most impressing answer I have seen! Thank you and greetings from Denmark :D
https://twitter.com/RibeKunstmuseum/status/644146850589712384— Ribe Kunstmuseum (@RibeKunstmuseum)Wed, Sep 16 2015 13:52:31
- What do curator of @CincyMuseum , David Conzett, listen to when working on a project? https://twitter.com/CincyMuseum/status/644146369200918528 …
https://twitter.com/RibeKunstmuseum/status/644147552770764800— Ribe Kunstmuseum (@RibeKunstmuseum)Wed, Sep 16 2015 13:55:18
- Our archivist Christine Engels will be taking your questions next! #AskACurator http://bit.ly/1CuyG06
https://twitter.com/CincyMuseum/status/644149154826969088— CincyMuseum (@CincyMuseum)Wed, Sep 16 2015 14:01:40
- @CincyMuseum @AskACurator YES! Another rock curator is in the house! :D
https://twitter.com/RibeKunstmuseum/status/644151110874234884— Ribe Kunstmuseum (@RibeKunstmuseum)Wed, Sep 16 2015 14:07:09
- Right now @Schmengels is answering your #AskACurator questions. Follow her for a behind the scenes look at a curator's work every day
https://twitter.com/CincyMuseum/status/644152887443070976— CincyMuseum (@CincyMuseum)Wed, Sep 16 2015 14:16:30
- @LandisValley What is the oldest object in your collection? #AskACurator
https://twitter.com/PHMC/status/644155052714782720— PHMC (@PHMC)Wed, Sep 16 2015 14:25:07
#AskACurator Day 2015
We took you behind the scenes with Cincinnati Museum Center's curators during #AskACurator Day on Sept. 16, 2015. Check out their answers to questions from around the world!
byCincinnati Museum Center1,663 Views


text:
International Olympic Committee (IOC) president Jacques Rogge promised on Wednesday the IOC would take any necessary action over allegations made in the BBC TV Panorama programme about bidding for the 2012 Games.
Two senior members of the Olympic movement were shown in a one-hour programme screened on Wednesday night indicating to undercover journalists posing as business agents they could corrupt the 2012 Games bidding process.
A total of four sports agents were also shown claiming they could secure, for a fee, nearly half the votes needed to win the Games when voting takes place next year.
Rogge, who arrived in Athens on Wednesday for the 2004 Games which open on August 13, told reporters before the programme was screened in Britain: "We don't know the details as this tape is going to be shown tonight.
"But, of course, the Ethics Commission will look into that and the IOC will take the necessary action."
The IOC said last week the commission would be examining claims of "inappropriate conduct" into the 2012 bidding process.
In the Panorama programme, which took a year to make, Bulgarian IOC member Ivan Slavkov and sports agent Goran Takac are shown discussing ways to secure votes for 2012.
Slavkov, accused in the Salt Lake scandal but later cleared, has said he and Takac were involved in a reverse-sting operation to catch people trying to entrap Olympic officials.
The programme also showed Olympic Council of Asia (OCA) director general Muttaleb Ahmad explaining how he could influence IOC votes.
The programme, shown on mainstream BBC 1, stirred memories of the Salt Lake City corruption scandal that shook the movement six years ago.
An investigation into Salt Lake led to 10 IOC members resigning or being expelled in connection with bribery and to a tightening of the rules governing contact between IOC members and bidding cities.
London, Paris, New York, Madrid and Moscow are on the shortlist for the 2012 Games. The host city will be named in July 2005 after a vote by IOC members.


text:
Man Breaks World Record for Getting Hit, Thrown By Car
Matthew McKnight holds a death-defying world record that not even the most courageous daredevil would seek to break.
Six years ago, Mr. McKnight of Fayette County was struck by a car doing 70 mph (112 km/h) along Interstate 376 in Monroeville while he was trying to aid two accident victims. He was thrown 118 feet (36 meters) -- about the height of a 12-story building -- and lived to tell the tale.
Mr. McKnight became the holder of a Guinness World Records mark in 2003. And just last month he discovered that his feat -- unsolicited as it was -- finally earned a hard-copy entry in the encyclopedia of superlatives' 2008 edition.
Mr. McKnight remembers nothing but snippets of the first few hours of his ordeal. He spent two weeks in the hospital and another 80 days between two rehabilitation centers. He took his first steps Jan. 14, 2002, and returned to work that April.
"I was devastated. There was talk that I may never walk again," Mr. McKnight said. "I was determined to prove them wrong."
To see Mr. McKnight today, one wouldn't guess that he had once broken his pelvis, shoulder, lower leg and tailbone. He walks without a limp, said he pops only an occasional over-the-counter painkiller and is back to fighting fires and rescuing those in need.
Mr. McKnight said he wouldn't hesitate to stop by the side of the road to help someone again and, in fact, has done so several times.
Source: Post-Gazette
Tags: Matthew McKnight | World Record | Accident | Car | Thrown
Labels: Feats and Record


text:
OK, so I definitely don't recommend having your car sputter to a stop on a hill, forcing you to recognize the mistake of not getting gas earlier.
However, if you're going to run out of gas, do so about here:
Not only was Mr. Munson kind enough to supply me with a couple gallons of gas, but he also gave me a tour of his farm, a historical narrative of the area and a big bunch of fresh greens!
That was the best stupid thing I've done in awhile!


text:
The 'Golden Swing' of Latin American clay-court tournaments is underway. This month, we take an in-depth look at the best clay-court records of the past 52 weeks using the FedEx Reliability ATP Index, with exclusive analysis from past and present ATP World Tour stars.
Sweden's Bjorn Borg, with Rafael Nadal arguably the greatest clay-courter in tennis history, told ATPWorldTour.com what attributes are needed to become a great clay-courter.
"First of all you have to be really fit," said Borg, who compiled a 245-39 career record and six Roland Garros titles on red dirt. "You have to realise that to win you will need to stay on court for many hours. You must be mentally and physically strong and have a great deal of patience. Because today, you have a lot of guys capable of winning long matches."
On a surface where the ball digs into a powdery top dressing and loses a lot of its speed, and where perfect balance and the ability to slide into a ball is a necessity, it isn't a surprise to learn that nine of the Top 10 clay-court match wins leaders since 2000 have been from Spain or South American countries.
Andres Gomez, the 1990 Roland Garros champion, told ATPWorldTour.com, "They grew up on clay [and] they expect to have a better clay-court season than on any other surface. Their schedule is designed that way. When there are players hoping for the [clay] season to finish fast, others have the mentality to tough it out week in and week out."
In that 10-season period, Nadal leads the field with an astonishing 203-16 (.9269) record, but we all know about the qualities of the 'King of Clay'. Yet, remarkably, four other Spaniards who will be plying their trade on Latin American red dirt - Nicolas Almagro, David Ferrer, Juan Carlos Ferrero and Albert Montanes - have also finished among the clay-court match wins leaders in each of the past five years.
Last year, Ferrer (31-7), Ferrero (28-7), Almagro (28-11), Nadal (22-0), Fernando Verdasco (22-7), Montanes (22-12), Thomaz Bellucci (21-10), Juan Ignacio Chela (21-12), Potito Starace (18-13) and Stanislas Wawrinka (17-6) ranked among the best players on red dirt.
There are currently 24 players from Spain or South American in the Top 100 of the South African Airways 2011 ATP Rankings.
"You have to have patience and imagination combined with good control in sliding on the clay," said Gomez, whose 17 of 21 ATP World Tour singles title came on clay courts."The tactics of clay-court tennis haven't changed, but the speed of the game has."
"You have a greater number of aggressive baseliners with the ability to finish points quicker thanks to the lighter balls and better equipment. But the counter-puncher has gotten better too. You have a more attractive game on clay, with the attacking players becoming more of a threat now than in the past ... and that makes for a more interesting game."
This week, the Movistar Open in Santiago, Chile, the first of 22 ATP World Tour clay events in 2011, opened the 'Gira Dorado'.
Juan Monaco, who has a 3-7 record in clay-court finals, told ATPWorldTour.com about the differences between the Latin American tournaments and European clay events.
"In Europe, fans are more impartial [and] educated," said Monaco. "Here, they are also educated but have greater passion. The crowd gets involved with the players. It always feels like Davis Cup atmosphere."
From the fast courts of Santiago and the Brasil Open at Costa do Sauipe, where the fans are patriotic, to the bright orange hue of the Copa Claro in Buenos Aires and the Abierto Mexicano Telcel in Acapulco, where the purists turn out in force, several former Roland Garros champions have plied their traide.
Gustavo Kuerten, Carlos Moya, Albert Costa, Ferrero, Gaston Gaudio and Nadal have each used the 'Golden Swing' as a stepping stone to greatness in Paris. Who will breakthrough this year?


text:
I am finding features to be too buggy for production yet, although I really like what it has to offer. I would like to unlink all the pieces of my site that I had put in a feature, so they're just regular site items, and then I could uninstall the feature followed by the feature module. Is there a way to do this without breaking a site or having to redo all of the work (re-creating content types and so on)?
|User Configuration - Lékárna Hartmann.png
Comment #1yhahn CreditAttribution: yhahn commented
|» Fixed
The easiest way to do this is to override your views, node types, etc (this will store a copy of them in the database) and then simply disable or delete your feature module.
I would recommend taking a backup of your feature module & database just in case.
Comment #5jmseigneur CreditAttribution: jmseigneur commented
+1 Easily unlinking features would be a good improvement. At the moment, it is difficult to uninstall Features once it has been used to import a feature. It is even difficult to disable or override features that are not needed anymore, for example, imagecache presets created with features cannot be disabled or overriden.
Comment #6neofactor CreditAttribution: neofactor commented
Any further progress on this?
We issued features to our users.. but then they heavily modified the content type and view. We fear that we we no longer use features because our users change it away from what we provide.
I am now looking to take existing sites and disconnect the content-type and view without breaking anything when we remove features from their site.
I will play with: "node_type table changing the following fields: module: features->node ; locked: 1->0 ; custom: 0->1; modified 0-> 1"
pulling it down to a local copy to see what breaks.. if anything.
Comment #7Grayside CreditAttribution: Grayside commented
@#neofactor this particular version of this issue is closed, and not really where recent discussion has been taking place.
The fact that your customers are overriding your features has nothing to do with Views-they could override any site that you provide them. It sounds to me like the solution to your problem would actually be some kind of functionality to lock down any UI for values your features provide. That is quite likely to require custom coding with or without Features.
Comment #8neofactor CreditAttribution: neofactor commented
Thanks... but at this point I am trying to understand how to unlink features and let the content type and views keep working.
It looks to me like CCK is the thing being broken when turning off features. I need to figure out how to re-enable the content type with features off.
Comment #9Grayside CreditAttribution: Grayside commented
You need to delete CCK fields in an update function after deleting it from your feature. Anything except explicit field deletion risks data loss for users not trying to delete a field.
Comment #10neofactor CreditAttribution: neofactor commented
I am not sure I am explaining the situation for you.
1) I had built features that users have used in a mulitisite instance.
2) They have modified the delivered content type and views beyond what I provided.
3) I would like to get rid of my features install completely since it is not really being used and is out of date.
4) I would like for the end user's content type and views to keep working when features module is removed.
Any ideas on how to do this?
Comment #11neofactor CreditAttribution: neofactor commented
I guess I am stuck... I will just have to clone each of the views and content types out.. delete the features and then re-apply each.... too bad... this might cause a collision in machine names I fear.
There has to be an easier way to push out pre-built setups / "features" without having a dependency on the created "module".
Comment #12Grayside CreditAttribution: Grayside commented
You are not intended to remove the features module. You are intended to do your best to run the features from code, and need the features module to facilitate that.
As it stands, features is not intended as a method for one-off configuration deployment. Once "features unlinking" is put together as a feature, it will be possible to use Features in that way.
Comment #13neofactor CreditAttribution: neofactor commented
Is "features unlinking" on the books to be implemented?
If so... any insights as to how to manually do it now?
Comment #14Grayside CreditAttribution: Grayside commented
There are a number of issues about it, and I think someone is interested in it, but I can't find the primary issue because it's one of those topics that people think of in different terms and so can't find each other. For example, unlinking vs. severing vs. "remove feature".
I think the most compelling use case is facilitating upgrades #1014522: Upgrade existing features to D7. I believe the Patterns module was written more with simple transferring configuration to another site.
Comment #15neofactor CreditAttribution: neofactor commented
Seems like the Patterns project is being merged into the http://drupal.org/project/configuration project.
Neither are gearing for D7 and are both at beta for D6.
Will look into them... and contribute to try and keep them alive if a similar function will not reside within Features.
Comment #16osopolar CreditAttribution: osopolar commented
|» 6.x-1.x-dev
|Closed (fixed)
|» Active
There is so much activity here ... marking this as active again. For me #1 is not a practical solution. Mark this as duplicate if you found the original one.
Comment #17Grayside CreditAttribution: Grayside commented
What's really called for is a programmatic version of #1.
Comment #18doublejosh CreditAttribution: doublejosh commented
Comment #19infojunkie CreditAttribution: infojunkie commented
+1 my interest is in refactoring features.
Comment #20Wappie08 CreditAttribution: Wappie08 commented
|» Major
I have the same problems.. actually I think this is a major issue since not letting users choose to stop using features is very harsh..
Actually I'm using D7 features Beta 2 and I'm currently overriding as much things as I can in order to be able to disable a big backup-feature without breaking my site.
EDIT: I disabled and uninstalled the feature and almost everything seems fine, the only thing I noticed is that I still cannot delete all of my content types..
Greetings Wappie
Comment #21Maciej Lukianski CreditAttribution: Maciej Lukianski commented
Comment #22atolborg CreditAttribution: atolborg commented
Comment #23Fabianx CreditAttribution: Fabianx commented
I am not absolutely sure that this will work, but there is a little known project called briefcase, which does export to files. If I remember correctly it also works with things run from code. (basically views +all ctools exportables could be supported).
The workflow would then be:
Export all to briefcase, disable feature, import data from briefcase, reorganize.
Best Wishes,
Comment #24Grayside CreditAttribution: Grayside commented
@Fabian that's an interesting workaround, but I think relying on another export-to-code module is clearly a taped together hack.
Looking at how Briefcase handles the data import and applying any lessons to Features directly may be interesting.
Comment #25Fabianx CreditAttribution: Fabianx commented
@Grayside: I do agree, but I posted this as is (and also differently in two issues) as:
a) There are people outside here that need this functionality now
b) Briefcase is a really simple module, which can be used as a model for features
And the important part is getting the import functionality to work in features, which works fine in briefcase.
Best Wishes,
Comment #26Hanno CreditAttribution: Hanno commented
struggling with too much dependency and by uncluttering nodetypes disappear.
Comment #27ar-jan CreditAttribution: ar-jan commented
I'm following the advice as per #1, but I was having trouble to override the content type, because it was "system defined" so it still got deleted upon disabling the feature. (I believe I used a feature that had created the content type in the first place).
Is there a way to override a system-defined node type so it doesn't get deleted? For now (testing) I made a new node type and converted existing nodes to the new type using node_convert.
Comment #28Grayside CreditAttribution: Grayside commented
#27 locked some thoughts into place for me.
drush features-import allows you to specify a feature. Each component of that feature will be saved to the database one at a time. Exported components that do not support being run from the database will be seen as red flags and will not be affected. Similarly, the developer is on their own for non-features export code.
Importing exported node types will probably involve invoking the feature's hook_node_info() implementation and saving the resulting node types to the database using node_type_save().
After the command is run, the feature should be disabled and the cache cleared. Because custom code in the module might need to be moved, the features-import command should not handle the module disabling.
Comment #29Hanno CreditAttribution: Hanno commented
I looked into the database. In the database these node types in the table node_type have the field value 'module = features' while normal ('system defined') node types have the value 'module = node' and locked = 0.
So something like this should probably work:
UPDATE `node_type` SET `module` = 'node', `custom` = '1', `modified` = '1', `locked` = '0' WHERE `node_type`.`type` = 'YOUR_TYPE';
Comment #30earthday47 CreditAttribution: earthday47 commented
I can concur with hanno that changing node_type.type from "feature" to "node" will prevent it from being deleted when the feature is deleted.
Comment #31hefox CreditAttribution: hefox commented
Comment #32Grayside CreditAttribution: Grayside commented
@hefox, this is a specific feature that seems important for the issue you linked. I've been treating #1014522: Upgrade existing features to D7 as a meta issue for which this is one worthy component.
Comment #33Niklas Fiekas CreditAttribution: Niklas Fiekas commented
Comment #34hefox CreditAttribution: hefox commented
A patch for this is in the other issue queue, last I looked at the issue. Should it be transferred here? I'm weary about moving a patch as loose people to review, etc.
However, though this feature may help to fix a bug, being that this is a feature, and features go in 7.x first, does this feature need to go into 7.x first than be backported? Need to ask febbraro or such.
Comment #35perelman.yuval CreditAttribution: perelman.yuval commented
Hi all , i create a module that add to an unlink functionality to features module.
right now we support boxes views and rules.
We will add support for the menus, context, cck in the near future.
The module is still in beta and need testing and code review.
In general what we do is to put all the elements that we remove from the feature in an unlink file (feature_name.version.unlink.inc)
And create an admin page where you can execute the file and import the elements to the DB.
Anyone how could test the module and write is opinion about it is welcome.
perelman yuval.
Comment #36perelman.yuval CreditAttribution: perelman.yuval commented
Hi all , i create a module that add to an unlink functionality to features module.
right now we support boxes views and rules.
We will add support for the menus, context, cck in the near future.
The module is still in beta and need testing and code review.
In general what we do is to put all the elements that we remove from the feature in an unlink file (feature_name.version.unlink.inc)
And create an admin page where you can execute the file and import the elements to the DB.
Anyone how could test the module and write is opinion about it is welcome.
perelman yuval.
Comment #37mrfelton CreditAttribution: mrfelton commented
+1. subscribe. Going to test the briefcast and ftools modules, as well as the manual overriding and disabling workarounds in the time being.
Comment #38donquixote CreditAttribution: donquixote commented
Related issue:
#1367240: A clear mental model on how feature components should act on uninstall/disable
Just asking now:
What happens if I remove everything related to features from the *.info file, and then disable and uninstall?
Will this remove the feature module from my system, without removing whatever functionality it created?
Comment #39perelman.yuval CreditAttribution: perelman.yuval commented
Hi donquixote, in generel if your feature element is on the code, it will be removed from your site.
because the element set in the code and not in the db, so once you disable the feature the element is gone.
featrue dont know to write your feature elements back to the db.
i write a small module that help to unlink features elements so they can be disabled safely.
@see http://drupal.org/project/ftools
we also make a screencast that can help to understand how the uinlinking works.
@see http://www.youtube.com/watch?v=UaGhMgWH8nk
Comment #40donquixote CreditAttribution: donquixote commented
Thanks, this was not obvious to me so far from reading the docs!
Could you add your wisdom on #1367240: A clear mental model on how feature components should act on uninstall/disable ?
It would be great if future docs can be more clear about this.
Comment #41Grayside CreditAttribution: Grayside commented
@perelman.yuval that is only correct for true exportables. Faux-exportables, such as CCK fields and taxonomy terms are stored and run from the database, and will typically get stuck there if the code vanishes... unless it doesn't.
A clean removal of those elements is not simply deleting code.
Comment #42ablommers CreditAttribution: ablommers commented
Having support for unlinking of content_types, including CCK would be extremely helpfull. I need to transport some large contenttypes (many cck_fields) to another site and import is not working for some reason (ends up in WOD). We have been working on several complex sites and only recently discovered the possibilities of features. Due to the iterative development approach we use working with the preferred features workflow (dev->staging->production) does not work for us. We need a kind of roundtrip engineering, where newly developed features on client-sites can be put back into the development site (which acts as a kind of blueprint for client projects). I think features is a great module, but the lack of unlinking feature for content and views makes it more difficult to use. Features tools looks promising, but no content/cck and views support there.
I have tried several scenario's, only #6 has been working for me so far.
Comment #43hefox CreditAttribution: hefox commented
|Unlinking views, items, and so on, from features?
|» Provide way to Import views/true exportables back to the database
|» 7.x-1.x-dev
|» feature
|» Needs review
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch features_663136_hook_features_import.patch. Unable to apply patch. See the log in the details link for more information. View
Moved from #1014522: Upgrade existing features to D7 and altered; added a hook_features_import_status so can tell whether the item can be imported or not.
Comment #44perelman.yuval CreditAttribution: perelman.yuval commented
Hi @ablommers.
Ftools can unlink views elements on D6 and D7(If it dont work for you please open an issue.)
For the content type support i will add it soon (i think i will start with D7 fields, but i know a lot of sites were built in D6 so i will try to find time for that to).
Comment #45perelman.yuval CreditAttribution: perelman.yuval commented
@grayside you are right.
what do think is the right why to unlink CCK/FILEDS elements?
Comment #46damien_vancouver CreditAttribution: damien_vancouver commented
|» Unassigned
|Needs review
|» Needs work
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch features-import_back_to_database-663136-46.patch. Unable to apply patch. See the log in the details link for more information. View
I would like to import features back to the database as well.
My use case is that I started with a multisite setup and both sites were more or less identical at the start, sharing features for content types, views, menus, etc. Over time though, then their needs have diverged, the features are heavily overridden on the second site.
I would now like to refactor my features on the second site (including the stuff that isn't overridden).
So... I re-rolled the patch from #43 for 7.x-1.x-dev. Unfortunately though, I am seeing some errors. Importing a feature with nodes and field groups gets me:
drush fi example_content_types
Attempt to assign property of non-object export.inc:188 [warning]
PHP Fatal error: __clone method called on non-object in /www/sites/all/modules/field_group/field_group.module on line 1529
I also tried with a view, and got a similar error (though not on all the view features I tried, only some):
drush fi example_views
PHP Fatal error: Call to a member function save() on a non-object in /www/sites/all/modules/views/views.module on line 1634
So.. it definitely needs some (or a lot) of work still. I am just exploring my options right now, I might be able to just override each feature as I don't have that many. I may hack on this patch some more if I find myself painted into a corner and desperately needing this functionality.
Re-rolled patch attached. I'm setting this issue to Needs work and unassigning it to febbraro for now, as it's been sitting for quite a while.
Comment #47lex0r CreditAttribution: lex0r commented
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch feature-persist-663136-47.patch. Unable to apply patch. See the log in the details link for more information. View
My 5 cents to this issue. I used an alternative approach (probably not as nice and generic). It does the job and we can save all "hook_default_X" defined items (currently these are images styles, views and page manager pages/handlers) to database. Any feedback is welcome.
I performed some testing and no issues were revealed with this patch.
Comment #48mpotter CreditAttribution: mpotter commented
lex0r: looks like a good start, but I'd like to see a more modular approach that uses drupal hooks to call functions within the specific component *.inc files rather than having a hardcoded select statement. One hook could query a component to find out if it can be persisted (controlling the addition of the Persist option), and another hook could actually perform the work of persisting the component.
Comment #49Jan van Diepen CreditAttribution: Jan van Diepen commented
|» 7.x-2.x-dev
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch features-consolidate-663136-49.patch. Unable to apply patch. See the log in the details link for more information. View
I combined the work done on Upgrade existing features to D7 and Provide way to Import views/true exportables back to the database.
So basically I,
- added links and a tab for consolidating a feature through the ui
- changed the drush aliases from fc (which is already in use) to fco and changed fca to fcoa to be compatible with the other alias and added fco-all to comply with preferred coding practices
- fixed a bug in features.image.inc.
- fixed 2 hook implementations in features.node.inc. Changed node_features_disable to node_features_disable_feature and node_features_enable to node_features_enable_feature. See function _features_restore in features.module.
- fixed function node_features_consolidate(). Somehow the original code failed to update the database. Copied some code from node_features_disable_feature and adapted it for the required purpose.
- fixed a bug when reverting a feature without selecting any components. When clicking "Revert components" on any feature without selecting any components to be reverted all features got reverted. Fixed it in function features_admin_components_revert().
I ran some manual tests on image, field and node.
Some notes on my experiences:
- Node types seem to always be stored in the database unless you remove it through the ui.
- The comment body field instance is added to a comment automagically (with default settings) when it is not provided in the feature. if it is provided in the feature, or an other feature for that matter, the default settings are overwritten by the ones in the feature.
- When reverting a feature with fields the field definitions are stored in the database never to be removed unless you remove them through the ui.
You have to patch against the latest development release 7.x-2.x-dev.
Comment #50Jan van Diepen CreditAttribution: Jan van Diepen commented
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch features-consolidate-663136-50.patch. Unable to apply patch. See the log in the details link for more information. View
The work done on Upgrade existing features to D7 aslo included an include file for views at includes/features.views.inc. Although I do not believe the code should be in the features module, but in the views module, I ran some manual tests on this code. Views are consolidated into the database, but I ran into an old bug that is described at Feature-packages appear overridden when they are not. To be accurate, The views component is overridden initially. Immediately after clearing the cache its status turns to Default. After updating the page the views component is overridden again. When reviewing the overrides the Default for the views component just shows 'FALSE' on Line 1.
There is a simple patch posted in June 2011 in the aforementioned issue. This leads me to conclude that a difference between Default and Overrides is introduced somewhere in the code. However, I was unable to pinpoint it. Maybe there is somebody out there that can help with this?
Please find a new patch against the latest dev 7.x-2.x-dev that also includes features.views.inc.
For what it's worth, I'm thinking of writing some automated tests for the new code.
Comment #51justindodge CreditAttribution: justindodge commented
Just gave the patch in #50 a shot.
Couple things:
- I had to "touch includes/features.views.inc" in order to get the patch to apply, since that file was missing (in this case, touch just made a blank file from the command line). Hopefully that helps someone else playing with it - not sure if that's to be expected or not, but it worked.
- The implementation of hook_features_consolidate() for views wasn't being called for me when clicking the 'consolidate' tabs/links. In features.views.inc I needed to rename the function
views_features_consolidate to
Afterwards I tried consolidating several features with content types, contexts, image styles, and views - everything seemed to work great. I consolidated, then disabled those features and all of the expected components were still present and appeared to be the same version that was active before disabling. It's still pretty early in my testing on a large site to be sure, but so far so good.
One thing that hasn't worked is consolidating a feature with display suite settings/fields/layouts etc - but it looks like there is no handler in place for this yet.
@Jan van Diepen - I'm not sure if I am fully understanding the views bug you're describing in #50, but I don't think I was reproducing it in my testing. At the very least, consolidating a feature with views in it seems to have worked without mishap.
Comment #52RaF7 CreditAttribution: RaF7 commented
Think I've found an alternative solution to get your exported objects back into the database so you can safely disable/remove your features.
1) Export everything you want in the database using CTools Bulk Exporter (admin/structure/bulk-export). Put the module it generates into your modules folder (eg. my_exports_module)
2) Disable the features containing the objects you just exported
3) Enable the module CTools Bulk Exporter created for you
4) Download Drush CTools Export Bonus & enable it
5) Run the following drush command: drush cbsa my_exports_module
6) Disable my_exports_module
Tested this with view modes/fields/... created in Display Suite - everything went better than expected :)
Comment #53axel.rutz CreditAttribution: axel.rutz commented
hmm, what "features-tools unlink" actually does is in essence the same as described in #52.
(difference: features-tools says to handle less exportables)
Comment #54Kevin Davison CreditAttribution: Kevin Davison commented
Yes, and it seems more time consuming to use "features-tools unlink" than to do what #52 suggests. Or am I wrong? Really looking for a better solution here, particularly because I inherit sites that use Features for no reason, and I just want that stuff back in the DB. Either for upgrades from D6 > D7 or for maintenance purposes. Thanks!
Comment #55SocialNicheGuru CreditAttribution: SocialNicheGuru commented
#52 I do not see taxonomy or any field definitions or content types in the list of exportables.
Should they just show up under the bulk exporter tab? Or did I misunderstand?
Comment #56axel.rutz CreditAttribution: axel.rutz commented
@#55 those are faux-exportables and in db anyway.
Comment #57kendouglass CreditAttribution: kendouglass commented
Instead of CTools Bulk Exporter, I used Drush CTools Export Bonus.
Here is what I did on a site today to get rid of all five of my custom features [on a Drupal 7 site]. So far, everything seems to work well. Haven't tried this on a D6 site yet. I was able to delete my features from the modules folder. I also deleted the newly generated ctools exports after importing them to the db. Only do this on a test site:
$ cd .drush
$ drush dl drush_ctex_bonus
$ cd mysite
#export all known ctools exportables of a site to a module:
$ drush ctex mysite_exports
Select to proceed
[0] : Cancel
[1] : Export everything
[2] : Make selection
Successfully written drupal7/sites/all/modules/ctools_export/mysite_exports/...
#see what we got:
$ ls drupal6/sites/all/modules/ctools_export/ctex mysite_exports/
#enable new module
drush -y en mysite_exports
#save all configs to db:
drush -y cbsa mysite_exports
#Done. Don't need it any more:
drush -y dis mysite_exports
drush -y pm-uninstall mysite_exports
rm -rf drupal7/sites/all/modules/ctools_export/mysite_exports
I can now safely disable, uninstall, and delete my custom features!
Note that 'drush dl drush_ctex_bonus' might incorrectly install into your modules folder. It is not a module. Put it in the .drush folder.
This is similar to #52 but I don't understand why he was using both the Drush CTools Export Bonus and the CTools drush bulk export command.
Comment #58Kevin Davison CreditAttribution: Kevin Davison commented
Thanks, Ken. That's about as simple as it seems to get. IMO Features are great for developers, but not so great for clients. Not the best to hand-off to clients w/ features, that is. I used this method, and it works really well. Thanks for sharing the solution with us! -Kevin
Comment #59rjlang CreditAttribution: rjlang commented
Will second the attaboy to kendouglass #57; just tried it, works like a charm.
Comment #60colan CreditAttribution: colan commented
|» Documentation
|Feature request
|» Task
|Issue summary:
|View changes
|Needs work
|» Reviewed & tested by the community
The recipe in #57 should exist somewhere on one of the project's documentation pages. There should also be a link to it from the main project page. Something like this would be good:
To remove features from code contained in Features modules, and instead place them back in the database, follow the [link] recipe.
Comment #62colan CreditAttribution: colan commented
|Needs work
|» Reviewed & tested by the community
Silly bot.
Comment #63hefox CreditAttribution: hefox commented
|Reviewed & tested by the community
|» Needs work
improper use of rtbc, open a new issue if want to create a handbook page and about it for now, but please, can someone reroll the patch so features could easily provide this commonly asked for functionality. It's not a hard patch (I just don't need it) ;_;
Comment #64colan CreditAttribution: colan commented
I suppose Features could implement this, but perhaps it's not necessary given that drush_ctex_bonus already does it? That was my point, but now I'm thinking that the functionality should be part of Features because things that can be built with it should be taken down with it.
Thoughts anyone?
Comment #65justindodge CreditAttribution: justindodge commented
I think features should provide the UI for this process - clean up/garbage collection is usually the responsibility of the one who made the mess. The drush_ctex_bonus is a cool alternative if you like, but the process itself still feels a bit like an unsupported hack when it comes to your features.
Personally, I think the patch in #50 was a great start as well as simple to use.
Lastly, it's worth noting (I believe) that drush_ctex_bonus does not allow all feature types to go back into the ether, so having some control over future improvements might be nice.
Maybe we can utilize the drush_ctex_bonus code in someway - like as the dependency of a sub-module built for this cleanup process, that way it can do a little more and can be maintained on the features side.
Just my thoughts.
Comment #66rjlang CreditAttribution: rjlang commented
Per colan's RFC #64: Anything that makes major changes to a site (and Features is major) that is *potentially* reversible, *should be* reversible. We needed to undo D6 Features before upgrading to D7 (and did, using a "features-consolidate" drush command from a posted patch), and while D7 Features were an invaluable part of our D6->D7 transition, part of the cleanup was removing "temporary" Features (which we did using the script in #57, above). So Features should absolutely implement the reverse action.
Comment #67dsnopek CreditAttribution: dsnopek commented
FAILED: [[SimpleTest]]: [MySQL] 35 pass(es), 5 fail(s), and 3 exception(s). View
Attached is a straight re-roll of the patch from #50 against the latest Features 7.x-2.x. I haven't had a chance to test it and I noticed there were some suggested fixes in #51 and maybe others.
Comment #68dsnopek CreditAttribution: dsnopek commented
|Needs work
|» Needs review
Let's see what the testbot says - does this break anything in features?
Comment #70basvredeling CreditAttribution: basvredeling commented
in reply to #65
If this needs a UI I'd suggest every feature on the features admin page has an extra option under the "actions" column called "consolidate". Pretty simple. The result screen should give a summary of what has been consolidated. Perhaps the feature detail screen (needs review / revert) could possible also give a status of is the "consolidation status" (ie, does the exportable exists only in the database, only in the code or both?).
Comment #71emilianodelau CreditAttribution: emilianodelau commented
This issue with features has become a major impediment to upgrading from 6.x to 7.x. Suggestion #70 is highly needed.
Comment #72basvredeling CreditAttribution: basvredeling commented
rerun of patch #67 still untested (included missing views.inc in patch)
Comment #73basvredeling CreditAttribution: basvredeling commented
|Needs work
|» Needs review
Comment #74basvredeling CreditAttribution: basvredeling commented
|Needs review
|» Needs work
So, the patch passed tests... but it messes up the Feature Update procedure. It writes the hook_views_default_views() to the MYFEATURE.features.inc instead of the MYFEATURE.views_default.inc. Didn't bother to check what else was wrong with it and rolled back the patch to prevent duplicate function declarations.
Comment #75hefox CreditAttribution: hefox commented
mmm, I really don't like the use of consolidate here
1. make (something) physically stronger or more solid.
2.combine (a number of things) into a single more effective or coherent whole.
Comment #76axel.rutz CreditAttribution: axel.rutz commented
(#74)> but it messes up the Feature Update procedure...
that's strange. do you have any idea what to fix?
(#75)> mmm, I really don't like the use of [the term ] "consolidate" here
+1 for a better name.
i suggest we can process these sub-issues
* fixing the patch
* finding the best naming
independently, maybe improving the patch with the "consolidate" strings while keeping in mind to check the naming before a commit.
Comment #77basvredeling CreditAttribution: basvredeling commented
regarding (#74)> no, I've got no idea, might have something to do with changes to hook_views_api() since the upgrade. I'd have to dive into it.
(#75)> renaming is fine by me so long as we can move this issue forward. My suggestions:
- revert to "feature-import" (fi)
- feature-fuse (ff)
- feature-merge (fm)
- feature-persist (fp)
Comment #78Fabianx CreditAttribution: Fabianx commented
As we have feature-export I am all for using feature-import(-all) / fi and fia to keep the common export,update,revert,import scheme.
I don't see the re-import for the ctools backend, yet. Will this come in a later patch?
And nice that ctex_drush_bonus supports something like it.
Comment #79stefan.r CreditAttribution: stefan.r commented
|Needs work
|» Needs review
FAILED: [[SimpleTest]]: [MySQL] Unable to apply patch features-import-663136-79.patch. Unable to apply patch. See the log in the details link for more information. View
Re-rolled and renamed to features-import
Comment #80stefan.r CreditAttribution: stefan.r commented
features.views.inc slipped back in here but won't be needed, the views logic can probably be implemented in features.ctools.inc instead
Comment #81Fabianx CreditAttribution: Fabianx commented
I would RTBC #79, but I really thing this should work also for CTools objects, however I am also fine to do that in Follow-up:
We just need to copy something similar to
to make it work :) to features.ctools.inc.
Comment #82catFighter CreditAttribution: catFighter commented
Any solution doesn't work for me. But move code from Feature to Ctools Export Module (disable then feature) add new posibilty that then we can override settings in database for example Panels and refresh cache dont make revert as is in Features.
Comment #83catFighter CreditAttribution: catFighter commented
Also i try use FTools but also dont save all to database.
Comment #84milos.kroulik CreditAttribution: milos.kroulik commented
sweetprincess: Sorry for my misunderstanding, but i would like to have clear overview of workflow you mention in #82. Is it like:
- Use Ctools export to export Ctools exportables
- use patch in this issue queue to enable re-importing of non-ctools exportables
- disable feature
- re-import Ctools exportables using Drush CTEX
Please correct me, if there's any mistake I've made or if you've any experience with such process.
Comment #85kylebrowning CreditAttribution: kylebrowning commented
|Needs work
|» Needs review
#79 Works great, when can this get reviewed and committed?
Comment #86Inky3d CreditAttribution: Inky3d commented
I have been reading through this thread in great detail, but am still lost to what has been resolved.
I have patched Features 7.x-2.5 from #79 and see that there is a new "Import" tab, but I have no idea what happens when I click on it, or what is supposed to happen. When I do click on "Import", the features page reloads and the only thing that appears in my logs is: Notice: Undefined index: distribution_name in drupal_install_profile_distribution_name() (line 207 of /var/XXX/XXX/includes/install.inc).
I don't use drush, so I don't have the option to use the CTools Bulk Export methods as explained in #52 and #57.
I have a fairly large site on which we want to remove Features, until such time as we do some further major updates.
If the workflow of how this patch can unlink features can be explained, I would be most grateful.
Comment #87mpotter CreditAttribution: mpotter commented
|» Code
|» Normal
Not sure why this is marked as "Documentation" when there is a patch here.
Can somebody summarize where we are with this patch. This issue seems to have deviated from the original post.
I'd like people to use FTools if they want the functionality of "moving" a feature into the database. That's not really the purpose of Features itself. If Features needs to implement something to make this possible in FTools, then submit a patch for that.
Comment #91bettibio CreditAttribution: bettibio as a volunteer commented
Recipe # 57 fails importing field group (label is missing after import in db). All the rest works like a charm.
Comment #92NWOM CreditAttribution: NWOM commented
Here is a rerolled patch of #79 against the newest dev. It is a straight re-roll, but I have not tested it myself yet. Please review.
Edit: I personally couldn't get it to work. I imported via drush with verbosity (-v) and see that everything shows as being imported, however after uninstalling the feature, all of my components got removed with it. A few example components that went missing: Search API indexes, Menu items, Page Manager pages.
Comment #93NWOM CreditAttribution: NWOM commented
|Needs work
|» Needs review
Comment #94joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
The patch by NWOM works and applies correctly. The module enables invocation of the new hook_features_import through both drush and the admin ui. The original author of this patch, has implemented this hook for the following component types: image(styles), node and context. This means we need to add support for all other component types provided by the features module as well.
Comment #95joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
|Needs review
|» Needs work
Comment #96joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
This patch:
- Consolidates the changes from #92
- Change hook_features_import API to be consistent with the other hooks requiring only $module, $component arguments.
- Adds support for ctools exportables.
- Adds recursion support for page_manager_pages.
Really only the items that are allowed to be in "code only" (eg: panels, views, layouts, imagestyles etc...) need to be re-imported. Other entities like nodes, terms and users are required to have database storage, so may be skipped by import.
- We provide page builders with a bootstrap kit, from which they want to import layouts and panels. But must be disabled to prevent features-override.
- Moving components to other features
I hope this patch will get committed, we are pushing it to staging for more testing. If any serious issues arise, I will update the changes here.
Comment #97joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
|Needs work
|» Needs review
Comment #98joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
Comment #99Fabianx CreditAttribution: Fabianx as a volunteer and at Tag1 Consulting commented
#96: Thanks for your work on this.
I also very much look forward to using this functionality in my CMK module.
Comment #100joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
@Fabianx thanks, hope you get around to testing it.
I have forgotten to mention one important piece of behaviour. Imported content will (most likely) be removed from the database again upon export/rebuild. This expansion does not interfere with the workings of the original revert/rebuild/export. Meaning: You should import features, after which you either disable the feature or persist the object into code storage again. Otherwise it will revert back to its code version on rebuild.
Comment #101Fabianx CreditAttribution: Fabianx as a volunteer and at Tag1 Consulting commented
#100 In CMK I never use features rebuild, but just the export functionality of it and hopefully soon the import functionality for reverting, so at least in my contrib module I have complete control about it!
Thanks so much again!
Comment #102joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
The current state of the import is that it will import "defaults" back into the database. I am now looking to create an enhancement to allow users to import the "current" state back into the database. What would be the smartest way to go about this? Render an export for component x and pass it to save?
Comment #103Fabianx CreditAttribution: Fabianx as a volunteer and at Tag1 Consulting commented
#102: Yes, that is what I would do. In CMK I export quite aggressively also by ignoring conflicts (http://cgit.drupalcode.org/cmk/tree/includes/features.inc?id=b27d075#n100), that worked well for me.
Comment #104joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
Thanks fabianx, that is a great place to start looking! What would be the best default behaviour for the import? Import current or default? I'am leaning towards current, to avoid "oops" moments.
Comment #105Fabianx CreditAttribution: Fabianx as a volunteer and at Tag1 Consulting commented
I think there are two use-cases here:
a) You want to revert your site to what is in code, but never use the hook() method, but push everything out to the database. In that case what is in code is the canonical revert.
b) You want to move exported things back into the database, but only if they match. In that case, you probably already have an override in the DB, so might be prudent to just ignore that. However I think features does not have the granularity as CMK has, so probably your idea to just take what export would provide and save it is best here.
Both a) and b) are unfortunately very valid, however you can reach a) by first reverting all, then run b) and vice versa, so maybe it is more a documentation issue.
Comment #106ajfasano CreditAttribution: ajfasano commented
Applied the patch from #96 and ran into two issues.
When running import from the GUI I got a warning "Warning: Illegal offset type in features_get_default() (line 825 " and "Warning: Illegal offset type in isset or empty in features_get_default() (line 833" and none of the objects were imported.
When running the import using drush fi, I received the following error: Undefined property: stdClass::$in_code_only features.ctools.inc:242
Looked up the error received when using drush and there was a similar issue with the Strongarm module back in 2012 #1402576. The patch was relatively simple.
Original Line 242 ctools_features_inc:
if ($object && $object->in_code_only ) {
Modified Line 242 ctools features.inc:
if ($object && !empty($object->in_code_only) ) {
The import succeeded and the objects were imported into the DB.
Found the same issue on line 380 of the same.
The feature in question uses components for block settings, content types, dependencies, field bases, field instances, flag, permissions, rules configurations, strongarm, and views.
As I am not all that familiar with the whole protocol of posting patches, I did not create one, but I figured I should bring this to your attention as there is renewed activity on this issue.
Comment #107arlinsandbulte CreditAttribution: arlinsandbulte as a volunteer commented
Is this issue duplicating the effort from the Features Tools module?
In particular, look at the feature Unlink directions for this module.
Comment #108NWOM CreditAttribution: NWOM commented
@arlinsandbulte the Features Tools module is missing a lot of commonly used fields and isn't being actively updated. This patch has progressed further than Features Tools.
Comment #109mpotter CreditAttribution: mpotter commented
In order to get this into Features itself, it would need to support all core feature types and also include tests for all of this new functionality. This is such a huge change that I'm very uncertain about putting it into the current Features branch, especially since this isn't needed at all in D8 and right now all new Features development is happening in D8 and the D7 version is just being minimally supported.
Since the Features Tools module was created to add stuff like this, I'd suggest trying to update it there. If that module isn't active then somebody can go through the process to become a co-maintainer.
Or, you can just keep working on the patch here and let sites interested in using it reference it in their make files.
Comment #110axel.rutz CreditAttribution: axel.rutz commented
Note: I have a module that helps debugging D7 exportables by showing exactly which hook and which alter changes what.
it includes a vbo-like "Re-save settings to the database".
Originally i created it as the features tools "unlink file" seemed to cumbersome to me.
I'm open for help (with docs too ;-), patches and improvements.
Comment #111joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
Hi guys,
Heres the updated patch which contains working admin GUI and also support entity import by the entity exportable controllers.
@mpotter: that is good to hear! I need my most used modules in D8 before I can consider moving. But sharing is better than hoarding right? If I get around to it I will port this to its own module.
Comment #112joostpluijmers CreditAttribution: joostpluijmers as a volunteer commented
I noticed that during my own build, the new file features.entity.inc was missing. Git diff doesn't add new files unless they were git add-ed, live and learn.
Comment #113Fabianx CreditAttribution: Fabianx as a volunteer and at Tag1 Consulting commented
Good work on #112! :)
Comment #114dshields CreditAttribution: dshields at Canadian Blood Services commented
I've been testing #112 with a number of inherited bloated features and am seeing terrific results!
Comment #115Yuriy Mudriy CreditAttribution: Yuriy Mudriy as a volunteer and at DEWEB Studio for Drupal Ukraine Community commented
|Needs review
|» Needs work
Excellent #112 work for views but a am seeing this error for panels:
Notice: Undefined property: stdClass::$in_code_only in page_manager_pages_features_import() (line 380 of /home/vagrant/project.local/docroot/sites/all/modules/contrib/features/includes/features.ctools.inc).
Comment #116dshields CreditAttribution: dshields at Canadian Blood Services commented
I'm not able to reproduce that error. Yuriy, might you provide instructions on how to trigger this notice.
Comment #117milos.kroulik CreditAttribution: milos.kroulik commented
If I try to import feature using #112, which contains field group, it leaves it in overridden state - most of the settings are deleted, as you can see from the attached features diff screenshot.
Comment #118dshields CreditAttribution: dshields at Canadian Blood Services commented
So using this with the field group module needs testing..
Comment #119dalin CreditAttribution: dalin at Advomatic for Annenberg Foundation commented
A few things:
* /admin/structure/features/%feature/import needs a confirmation form. Otherwise it's an CSRF vulnerability.
* Needs some user feedback after it's been successfully (or not) imported.
Comment #120Rafal Lukawiecki CreditAttribution: Rafal Lukawiecki commented
I have used the patch mentioned in #112 and I can confirm that it seems to have worked. Import allowed me to get the previously large and incomprehensible feature back into the db, except for image styles. Those appeared as Overridden. Site seems OK after disabling the feature, but more testing on its way. Thank you for a very useful patch.
As our site will remain in D7 for the foreseeable future, and it is still under development, this is a very useful function for deploying changes from dev->stage->prod. If anyone wishes to suggest a different D7 way, please let me know. Thank you.
Comment #121couloir007 CreditAttribution: couloir007 commented
I applied the patch to 7.x-2.x-dev, but when I click on import I get redirected back to the features landing page. Nothing seems to happen.
Comment #12275th Trombone CreditAttribution: 75th Trombone commented
Another resounding success for #112 here. Thank you!
EDIT: Actually, no it's not. Having the same field_group issues as others.
Comment #12375th Trombone CreditAttribution: 75th Trombone commented
I've got a patch to the field_group module at #2882785: field_group_pack sometimes called on already-packed groups that fixes group importing.
Comment #124HLopes CreditAttribution: HLopes commented
Can confirm,
(different line though, here it was L369)
#112 and #123
seem to have done the trick for me.


text:
Anyone going out of town?
We are getting ready to drive to St Louis. It's about a five hr trip if we don't stop. I used to make this trip several times a yr with my big kids. But not so much since I had Liam. I'm not really looking forward to this trip at all. But my grandmother is 92 and would be all alone if we didn't go. She was always difficult to handle but as she gets older, it's harder. She doesn't process things correctly anymore and therefore you end up irritating her even though you're bending over backwards to try and make her happy. It's just hard.
Dh is planning on keeping out LO out and about as much as possible. I'm afraid he might just be too much for her. So wish us luck!!
Sounds like you're going to have your hands full. Lots of luck to you!!!
My great-grandma turned 91 this year and she's still pretty clear-headed. She's always been a fireball though and I love that about her.
We're just driving to my grandma's house ...... it's just an hour drive. Today I'm baking rolls and blackberry cobbler to take with us. My daughter's the youngest in the family but my aunt's sons are 5 and 12 and they ADORE HER. So they'll probably be following her around and playing with her, allowing me to take a break from keeping a constant watch on her. I wish those 2 boys lived nearby ...... my grandma always tells them to stop bugging my daughter but I'm like, hey! bug away! It's exactly what she needs ..... people to keep her from zoning out.
Not this weekend- but next weekend we are driving 5.5 hours to visit my family in Texas.
No we don't my family comes to my house.
We drove 2 hours to my parents house and will be coming home Friday night :)
Hugs Mama! Good luck! Traveling is always hard with our kiddos! And your grandma situation does sound to add an additional challenge.
We are not traveling. Both our families live 5 minutes away. We'll still have our share of drama though! Lol!


text:
Regional Reviews: Cleveland & Akron
War Horse
War Horse started its life as a novel in 1983. Michael Morpurgo wrote the story of a boy and his horse, which is laced with sentimentality and has echoes of the boy-and-his-dog books that were once so popular (think of the Lassie series).
War Horse deals with a young teenager, Albert Narracott, whose father buys Joey, a horse, at an auction. The family needed a horse that could pull the plow. But Joey had good blood lines and didn't want to be trained to pull a plow. Albert and Joey become best friends.
At the start of World War I, the English military bought horses to help with the war effort. Albert's father sold Joey to the military, breaking Albert's heart. Albert attempted to join the military to be with his horse, but he was rejected because he was too young. The story takes the horse through battles to peace time, when an old, worn out Joey returns to Albert.
When War Horse opened on Broadway the production received five Tony Awards: Best Play, Scenic Design, Lighting Design, Sound Design and Directors. A special Tony was awarded to the Handspring Puppet Company, which helped make the horses so life like. Certainly, a story of a poor family in England and scenes of war does not call for bright costumes. However, everyone seems dressed in the same dark colors, making identification of the characters by color impossible.
The audience favorite here is Andrew May, who plays Captain Friedrich Muller. May worked in Cleveland with the Great Lakes Theater for a number of years. He is known for his ability to play any type of role, but he is usually cast as the handsome, romantic interest. He left Cleveland to make his way to Broadway. On opening night the Cleveland audience cheered for May and for the performers who managed the horse puppets.
This is an excellent production of a wonderful story. The battle scenes may be too much for some children. But the moment when a boy and his horse are reunited brings tears of joy to everyone who has owned a pet.
The touring production of War Horse, at the Palace Theatre in PlayhouseSquare through April 21, 2013. Ticket Information: 216-241-6000. The production moves to the Ohio Theatre in Columbus, Ohio, for a run April 23 through April 28, 2013. For more information on the tour, visit warhorseonstage.com/tickets/us_tour.
The next show in the Cleveland Broadway Series will be Guys and Dolls, May 1 through June 30, 2013, in the Hanna Theatre.
Joey as a foal: Mairi Babb, Catherine Gowl, Nick Lamedica
- David Ritchey


text:
Ruger and Talo have partnered to produce a variant of the 22/45 Lite. Called the Blacklite, this limited-edition dealer-exclusive run of just 3,000 22/45s takes the Lite and upgrades it with a new finish and checkered laminate grips. Talo released a sneak peek of the gun on their Facebook page.
The Blacklite's finish is, naturally, black. The standard Ruger 22/45 has a gold-anodized finish that makes it stand out—and was simultaneously praised for doing something different and criticized for doing something ugly. Many people enjoyed it for what it is, an extremely lightweight all-purpose .22 plinker based on a well-established and highly-reliable design with a huge aftermarket, and either just ignored the gold or had it re-finished.
The Blacklite doesn't have that shortcoming, if that's your taste. It is black on black with grey double-diamond grips. It still has all the other Ruger 22/45 Lite features, including the polymer grip frame, the aircraft-grade aluminum receiver with cutouts to keep the weight down as much as possible, the fully-adjustable raised target sights and threaded barrel that's good to go for silencers.
In addition to clearing an attached suppressor, the sights are raised to co-witness with a low-profile optic, which you can attach easily because the receiver is drilled and tapped for an (included) Weaver rail.
The 22/45 Lite really is an all-purpose rimfire handgun. By cutting down the weight it can be carried for long hikes and hunts, it's ready for just about any accessory you could want on a pistol and it is mechanically identical to the proven Ruger Mark III standard.
From our own review of the original 22/45 Lite: "If I were considering a new .22 auto today, the Ruger 22/45 Lite might be it. I like how this gun feels. The Lite aspect makes it more attractive to anyone who would want a full sized .22 LR pistol for backpacking, which I do a lot of. And the slight reduction in weight gives the Lite a nice balance."
"Shooting the 22/45 Lite, especially with a silencer, is so much fun. MSRP is $469, but can be found for around $400."
One nice thing about the Blacklite is that it doesn't command a price premium over standard 22/45 Lite. In fact, it's already getting out to stores now, and we've seen it priced under $400.
So if you were thinking that you'd like to try out Ruger's new Lite but put off by the champagne finish, start calling around. Talo's gone and fixed it for you.


text:
A vintage train journey across Mallorca's high mountains transports passengers to a more leisurely age. Climb aboard the tiny Vitamin C Express...
The attractive young Dutchman and I are swapping travellers' tales when the deafening noise of the first tunnel rudely snatches away our conversation. We jam our hands over our ears as the train's clatter bounces off stone walls six inches from the open window, a slap of subterranean chill ousting the warm, lazy air. Then, just as suddenly, the din stops, and the cold black walls revert to blue sky and cinnamon-coloured fields.
We're heading straight for the forbidding wall of rocky mountains that stretches across northern Mallorca, the Serra de Tramuntana. Fifteen minutes ago, when we trundled out of Palma, it all seemed innocent fun – tootling along city streets then rolling through pretty fields sprouting almond trees. But now, seeing those brutal-looking peaks dead ahead, no one on board quite believes this quaint little choo choo is going to make it to the lush valleys and honeyed beaches on the other side.
For one thing, our train is 80 years old. It looks like it belongs in an Agatha Christie novel, not bashing its way through steep Mediterranean mountains. Polished brass lamps gleam above the brown leather seats, neatly surrounded by walls of mahogany. It's suitable transport for a journey of adventure, I admit. But will it actually get us to our destination, without any Orient-Express-style murders in the 13 dark tunnels en route?
This dinky narrow-gauge line was built in 1912 to connect Palma with Sóller on Mallorca's north coast. Vitamin C was big news back then, newly discovered as a health boon, and a rail line was the fastest way to haul oranges from the lush groves of Soller to the thirsting mouths in Palma. Genteel passenger carriages were imported from England in 1929 (hence the Christie-era chic) and have never been replaced. Which is handy, as they have saved the whole line from obsolescence. New roads quickened the fruit haulage, but what leisure traveller wants to drive through the mountains when you can rattle through them on a little piece of history?
The people warming the leather seats around me now are a mixture of locals and northern-European tourists – the usual cash-rich but sun-poor nationalities who flock year-round to 'la isla bonita'. Each of us is gripped by the views beyond the vintage window-frames: gentle valleys dotted with villas, sugarloaf hills fringed by palm trees, appalling vertical crags looming ahead.
As we climb and climb, mist blurs the steep terraces of olive trees skirted by drystone walls, and nimble goats pick their way across bone-coloured rock sprouting at crazy diagonals. I worry that a train can't possibly clamber across such high, uneven terrain – not safely anyway. An elderly Mallorcan in a flat cap, seeing the unease on my face, leans forward and confides, "Sometimes the train breaks down, you know."
"Oh?" I contrive a cheery nonchalance. "What happens then?"
"We get out and walk," he says, his leathery face stoic and deadpan. My smile evaporates.
"Of course not! Don't worry!" He barks a huge laugh, delighted to have teased a pale northern girl for a moment. Then he grows serious again, his voice lower. "But you know, people do go walking high in these mountains. Very beautiful. Lots of paths. But the weather, it can change so quickly. Mountain weather, you know. More than one time someone has died up here." Explosively, another tunnel clatters away our talk, the cold air inside smelling of wet soil.
Thrown back into daylight, an arresting space yawns from the left side of our train -a vast valley-basin, lushly carpeted with green. Way, way down at the bottom, the thin white spikes of a cathedral poke up from a town. It must be Sóller. But it's like viewing it from an aeroplane. How do we get all the way down there from up here? Disorientingly, Soller suddenly appears on the right of the train, then on the left again. I realise we're somehow zigzagging down the steep valley wall, and silently applaud the engineers who cleverly plotted this route.
When we finally alight from the train into the sunshine in Sóller, I'm dazed from the journey. The surreal feeling isn't helped when an orange tram, an original wooden 1930s one from San Francisco, pulls up near the station. I squeeze aboard, and we clatter through fruit groves and back gardens, tempted by reachable oranges and washing dangling from clotheslines. when we swing onto the near-circular bay of Port de Sóller, I know that a hotel here awaits me and my holiday is about to begin. But right now I'm more excited thinking about the last day, when I can catch the tram and that amazing train back to Palma.
Palma-Sóller: six departures every day, return fare €14.
Where to stay
Carrer Castanyer 2, Soller
This is a charming and friendly little hotel conveniently located beside Soller's modest rail station. Rooms are simple and tasteful, in an early 20th-century style. Many offer views of the Tramuntana mountains. There's a pretty courtyard lined with flowerpots, and a dining room with beamed ceilings. Double rooms €84.
Calle Antonio Montis, Port de Soller
This fortified 17th-century mansion - with its distinctive tower - sits in tranquil gardens a short stroll from the sea. Rooms are pretty and very reasonably priced. There's a handsome outdoor pool, and an indoor spa offering thalassotherapy treatments. Double rooms from €48.
Where to eat
Restaurant Es Faro
Cap Gros de Moleta, Port de Soller; +34 971 633 752
Yeah, there's great local cooking and excellent service, but this place is really all about the view. It's spectacular. All of Soller's magnificent, near-circular bay expands far below, while the jagged peaks of the Tramuntana worry the sky beside you. It's not a cheap place to eat, but you'll never forget that vista.
Best of the rest
Good restaurants in Palma include Forn de Sant Joan, La Paloma and Es Molí d'es Comte. In Soller, go for Restaurant El Guia. And in Port de Soller, Restaurant-Bar Agapanto is also recommended.
Getting there
British Airways, easyJet and bmi baby all fly to Mallorca from the UK.


text:
PrincipalPermissionAttribute Class
Allows security actions for the PrincipalPermission class to be applied to code by using declarative security. This class cannot be inherited.
Assembly: mscorlib (in mscorlib.dll)
The PrincipalPermissionAttribute type exposes the following members.
|Initializes a new instance of the PrincipalPermissionAttribute class with the specified security action.
|Gets or sets a security action. (Inherited from SecurityAttribute.)
|Gets or sets a value that indicates whether the current principal has been authenticated by the underlying role-based security provider.
|Gets or sets the name of the identity associated with the current principal.
|Gets or sets membership in a specified security role.
|When implemented in a derived class, gets a unique identifier for this Attribute. (Inherited from Attribute.)
|Gets or sets a value indicating whether full (unrestricted) permission to the resource protected by the attribute is declared. (Inherited from SecurityAttribute.)
|Creates and returns a new PrincipalPermission object. (Overrides SecurityAttribute.CreatePermission().)
|Infrastructure. Returns a value that indicates whether this instance is equal to a specified object. (Inherited from Attribute.)
|Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
|Returns the hash code for this instance. (Inherited from Attribute.)
|Gets the Type of the current instance. (Inherited from Object.)
|When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class. (Inherited from Attribute.)
|When overridden in a derived class, returns a value that indicates whether this instance equals a specified object. (Inherited from Attribute.)
|Creates a shallow copy of the current Object. (Inherited from Object.)
|Returns a string that represents the current object. (Inherited from Object.)
|Maps a set of names to a corresponding set of dispatch identifiers. (Inherited from Attribute.)
|Retrieves the type information for an object, which can be used to get the type information for an interface. (Inherited from Attribute.)
|Retrieves the number of type information interfaces that an object provides (either 0 or 1). (Inherited from Attribute.)
|Provides access to properties and methods exposed by an object. (Inherited from Attribute.)
PrincipalPermissionAttribute can be used to declaratively demand that users running your code belong to a specified role or have been authenticated. Use of Unrestricted creates a PrincipalPermission with Authenticated set to true and Name and Role set to null.
The scope of the declaration that is allowed depends on the SecurityAction that is used. PrincipalPermissionAttribute cannot be applied at the assembly level.
The security information declared by a security attribute is stored in the metadata of the attribute target and is accessed by the system at run time. Security attributes are used only for declarative security. For imperative security, use the corresponding permission class.
Before you use this class to demand principal permission, you must set the current application domain's principal policy to the enumeration value WindowsPrincipal. By default, the principal policy is set to UnauthenticatedPrincipal. If you do not set the principal policy to WindowsPrincipal, a demand for principal permission will fail. The following code should be executed before the principal permission is demanded: AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal).
The following example demonstrates how the PrincipalPermissionAttribute class is used declaratively to demand that the current user be an administrator.
In Windows Vista and later versions of the Windows operating system, User Account Control (UAC) determines the privileges of a user. If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. By default, you are in the standard user role. To execute the code that requires you to be an administrator, you must first elevate your privileges from standard user to administrator. You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.
using System; using System.Threading; using System.Security.Permissions; using System.Security.Principal; class SecurityPrincipalDemo { public static void Main() { try { // PrincipalPolicy must be set to WindowsPrincipal to check roles. AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal); // Check using the PrincipalPermissionAttribute CheckAdministrator(); // Check using PrincipalPermission class. PrincipalPermission principalPerm = new PrincipalPermission(null, "Administrators"); principalPerm.Demand(); Console.WriteLine("Demand succeeded."); } catch (Exception e) { Console.WriteLine(e.Message); } } [PrincipalPermission(SecurityAction.Demand, Role = "Administrators")] static void CheckAdministrator() { Console.WriteLine("User is an administrator"); } }
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.


text:
The wic_update_en_1000_1009.exe file you have requested: Official Patches / v1009 / World in Conflict v1.009 US Patch - 96.24mb is not available. Perhaps try browsing all files for the game World in Conflict and upload any files you want to share or are missing. This is the only information we could locate:
World in Conflict Update Update #009 This is a hotfix to update 8 for World in Conflict. - Fixed a bug where the Special Abilities buttons stopped responding to mouse clicks. - Fixed a bug that increased the loading times before map cycle A patch has been released updating the US edition of World in Conflict to v1.009.
We recommend you return to the download list and browse the links from there. If the problem persists, contact us with the details.


text:
& other Bookish Natterings
by Bud Webster
NEW from Bud Webster! Past Masters and Other Bookish Natterings collects some of the very best of Bud Webster's columns and author profiles drawn from a broad knowledge of the field of literary science fiction and fantasy. Bud is the final word on genre scholarship, and that has never been more evident than in this collection.
Leigh Brackett • Clifford D. Simak • Murray Leinster • Cyril M. Kornbluth • H. Beam Piper • Eric Frank Russell • R.A. Lafferty • Fredric Brown • Hal Clement • Tom Reamy • Catherine L. Moore • Nelson Bond • Zenna Henderson • Cordwainer Smith • Edgar Pangborn • Henry Kuttner • Judith Merril • William Tenn • Stanley G. Weinbaum • plus many Curiosities and other Natterings
Introduction by Mike Resnick
Now available for order below. Read the book Preface here.
"Bud Webster's celebrations of science fiction's past are glorious!"
– Gordon Van Gelder, editor,
The Magazine of Fantasy & Science Fiction
"Bud Webster, a Present Master, has given his soul to historical reconstruction, an area our beloved field needs more than ever. He manages this gorgeously. Irreplaceably."
– Barry Malzberg, author and critic
"I can guarantee that everyone with an interest in science fiction will find things they want to know in this work. I sure did. Good reading."
– Jerry Pournelle, author and essayist
400 pages! Only $19.95 + $3.00 shipping (US)
$19.95 _ $5.00 shipping (non-US)


text:
Canucks tap MacTavish as AHL coach
The Vancouver Canucks officially announced on Monday that Craig MacTavish will be the coach of their American Hockey League affiliate, the Chicago Wolves.
"We are thrilled to have Craig join our organization," Canucks president and general manager Mike Gillis said in a statement. "He brings a wealth of knowledge and experience that will be invaluable as we continue to develop our players and create a winning environment in Chicago."
MacTavish, 52, spent eight seasons as the head coach of the Edmonton Oilers before being let go in the spring of 2009.
MacTavish compiled an NHL coaching record with the Oilers of 301-252-47, with 56 ties. Edmonton reached the Stanley Cup Final in 2006.
Since he was fired, MacTavish has been busy. He coached Canadian teams at international tournaments for Hockey Canada, worked as a broadcaster, and completed a master's degree in business from Queen's University.
It was also revealed that he has battled a form of cancer in recent years.
MacTavish was reportedly considered for head coaching jobs this spring with the Minnesota Wild and Winnipeg Jets.
After retiring in 1997 following 17 years and 1,000 games as an NHL forward, MacTavish spent time as an assistant coach with the New York Rangers and then the Oilers.