iPhone-Drosselung: Klagen gegen Apple werden zusammengeführt

heise online Newsticker - 8. April 2018 - 14:30
Angeschlagene Akkus sorgten bei Apple-Smartphones zu einer Leistungsreduktion – was dem Konzern über 60 Rechtsstreitigkeiten allein in den USA einbrachte. Diese werden nun in Kalifornien kombiniert.

Facebook-Datenskandal: EU-Kommission will mit Facebook sprechen

heise online Newsticker - 8. April 2018 - 13:00
Die EU-Kommission hat für die kommenden Tage Gespräche mit dem US-Konzern angekündigt. Die Bundesjustizministerin hat indessen Facebook scharf gerügt.

l+f: Piep, piep, root

heise online Newsticker - 8. April 2018 - 12:30
Wenn der Lautsprecher des Linux-Servers piept, hat sich vielleicht gerade jemand unerlaubt Root-Rechte verschafft.

Apple: App-Store-Bestand schrumpft erstmals

heise online Newsticker - 8. April 2018 - 11:30
iOS verlor 2017 laut einer Analyse rund fünf Prozent seiner Apps. Grund dürfte auch Apples Vorgehen gegen Spammer und Scammer sein – und 32-Bit-Apps.

Daimler-Chef: Mehr Elektroautos nicht so gut für die Bilanz

heise online Newsticker - 8. April 2018 - 10:00
Der Wandel in der Autoindustrie kostet Zeit und vor allem sehr viel Geld. Daimler-Chef Zetsche warnt die Aktionäre schon mal vorsichtig, was das nach den Bestwerten von 2017 für die kommenden Jahre bedeuten könnte.

Google-Mitarbeiter protestieren gegen Beteiligung an Militär-Projekt

heise online Newsticker - 8. April 2018 - 0:00
Google ist an einem Projekt des US-Verteidigungsministerium beteiligt, in dem es um die automatische Auswertung von Drohnen-Aufnahmen geht. Dagegen wehren sich tausende Mitarbeiter.

Drupal core announcements: Core topic discussions at DrupalCon Nashville

Planet Drupal - 7. April 2018 - 17:51

DrupalCon Nashville includes a full track of core conversations where you can learn about current topics in Drupal core development, and a week of sprints where you can participate in shaping Drupal's future.

In addition to the core conversations, we have a few meetings on specific topics for future core development. These meetings will be very focused, so contact the listed organizer for each if you are interested in participating. There are also birds-of-a-feather (BoF) sessions, which are open to all attendees without notice.

Also be sure to watch Dries' keynote for ideas about Drupal's future! Check out the extended Dries Q&A session on Thursday as well to get even more questions answered.

Time Topic Organizer Monday, 9 April, 10:00 Configuration validation to support REST and JS Wim Leers Tuesday, 10 April, 10:45 Improving Drupal's evaluator experience (BoF) tedbow Tuesday, 10 April, 15:45 Layout Initiative meeting tim.plunkett Wednesday, 11 April, 10:45 Official local development environment (BoF) tedbow Wednesday, 11 April, 14:15 Media roadmap meeting phenaproxima Friday, 13 April, 09:00 Release cycle changes discussion (only core committers) Gábor Hojtsy Friday, 13 April, 11:00 Automated security updates hestenet

Test: D-Link COVR-P2502 Powerline-WLAN-Adapter

heise online Newsticker - 7. April 2018 - 17:00
Das Powerline-Adapterset D-Link COVR-P2502 soll schwache WLANs mit flottem Dualband-Funk ablösen und dabei auch Abdeckungslöcher stopfen. Wie gut das klappt, klärt unser Test.

Dell Vostro 15: günstiges Business-Notebook im Test

heise online Newsticker - 7. April 2018 - 16:30
Für ein günstiges Business-Notebook wirkt das Dell Vostro 15 5568 nicht nur hochwertig, es bietet auch verhältnismäßig gute Technik zu Preisen ab knapp 500 Euro. TechStage hat den Praxistest gemacht.

Astronomietagung EWASS: Wie einzigartig ist das Sonnensystem?

heise online Newsticker - 7. April 2018 - 15:30
Eine Analyse von organischen Molekülen der Rosetta-Mission deutet darauf hin, dass die Entstehung unseres Sonnensystems deutlich komplexer sein könnte als bisher angenommen.

Instagram: Weitere Apple-Watch-App eingestellt

heise online Newsticker - 7. April 2018 - 12:30
In der neuen Version 39.0 der Instagram-Anwendung für iOS fehlt die watchOS-Erweiterung. Die App verschwindet nach Installation direkt von der Uhr.

Ab 2020 vorgeschrieben: elektronische Rechnungen an Behörden

heise online Newsticker - 7. April 2018 - 12:00
Schon bald müssen Auftragnehmer einer Behörde die meisten ihrer Rechnungen in elektronischer Form ausstellen. Jedoch gibt es mit XRechnung und ZUGFeRD konkurrierende Standards.

Mac & i Heft 2/2018 jetzt im Handel

heise online Newsticker - 7. April 2018 - 10:30
Themen: 50 ultimative Mac-Tricks • Retro-Kult • Extern speichern • 360°-Panoramen • HomePod • iOS 11.3, macOS 10.13.4 • Musik programmieren • Top-PC-Spiele auf lahmen Macs • Steuererklärung • iMac Pro mit 10/18 Kernen • Apple-Support

USA: Bildungseinrichtungen sollen "amokfrei" werden

heise online Newsticker - 7. April 2018 - 10:00
Mit neuen architektonischen und digitalen Ideen sollen Schulen und Universitäten in Amerika künftig seltener zu Zielen von schwerbewaffneten Angreifern werden.

Gemüsezucht in der Antarktis – und bald im All?

heise online Newsticker - 7. April 2018 - 9:00
Deutschlands südlichster Schrebergarten steht seit einiger Zeit in der Antarktis. In einem speziellen Gewächshaus sprießt dort frisches Gemüse. Die erste Ernte verlief vielversprechend.

Commerce Guys: Visit the Commerce Saloon at DrupalCon Nashville

Planet Drupal - 7. April 2018 - 8:30

Commerce Guys is joining forces with some of our Technology Partners and several contributing agencies to promote Drupal Commerce at DrupalCon Nashville from April 10-12, 2018.

We are colocating our booths to create the Commerce Saloon, your one stop shop to learn all things Drupal Commerce. Our booths will feature jam band instruments, multiple demos (including a new store theme), exclusive swag, and case studies to help you learn how teams are succeeding with Drupal Commerce.

Come try Drupal Commerce 2.x

DrupalCon Nashville is the perfect time to learn what's new by joining our week long sprint at the "Power Up" tables by the Commerce Saloon. We'll be training new contributors and working on the project together using sprint kits powered by DRUD's ddev local development environment.

We prepared the following sessions to help you learn more about Drupal Commerce and its ecosystem:

  • Contributing to Drupal Commerce (for beginners)
    Tuesday, April 10th, 12:00 PM | Commerce Saloon: "Power Up" Table | By: Matt Glaman
  • Drupal Commerce 2.x Update and Roadmap Planning (add it to your conference schedule)
    Tuesday, April 10th, 3:45 PM | Room: 203A | By: Ryan Szrama / Bojan Zivanovic
  • Marketing and Selling the Drupal Commerce Ecosystem (as seen at DrupalCon Vienna)
    Wednesday, April 11th, 10:45 AM | Commerce Saloon: "Power Up" Table | By: Ryan Szrama
  • Decoupled Drupal Commerce / REST APIs (for developers)
    Wednesday, April 11th, 3:45 PM | Commerce Saloon: "Power Up" Table | By: Matt Glaman
  • Subscriptions and Recurring Billing in Commerce 2.x
    Thursday, April 12th, 10:45 AM | Commerce Saloon: "Power Up" Table | By: Bojan Zivanovic

Hear from every Commerce Saloon sponsor

There's a lot to be said about how Drupal Commerce is making merchant and agency teams more productive, and you don't just have to take our word for it. Each Commerce Saloon sponsor has something unique to teach you about succeeding in eCommerce, and we encourage you to seek them and their sessions out:

  • Acro Media (Booth 803) - Test drive Commerce POS at their booth and hear its business case from Becky and Josh! You can also purchase (for free) a limited edition Drupal Commerce t-shirt through Acro Media's demo site.
  • Authorize.Net (Booth 911) - Authorize.Net offers several payment tools that let merchants get paid securely online. We've joined forces to demo Accept.js, their new drop-in solution for PCI compliant payment.
  • Bluespark (Booth 908) - Bluespark contributed significantly to Commerce 2.x development via their Sport Obermeyer project (check out their awesome case study) and have long promoted Drupal Commerce as a hotel booking solution.
  • Commerce Guys (Booth 809) - Stop by for a demo of Belgrade, our new default store theme for Commerce 2.x, or for a demo of, Lean Commerce Reports, our first SaaS product that offers a plug-n-play sales dashboard for Drupal Commerce.
  • Drupal Commerce Technology Partners (Both 811) - This booth features representatives and demos from Avalara and Lockr. Talk to them about tax automation and about eCommerce security respectively.
  • MailChimp (Booth 813) - MailChimp has revitalized their approach to eCommerce email marketing and has a full integration available for Drupal in the MailChimp eCommerce module. Stop by to learn more!
  • Zivtech (Booth 909) - Zivtech has a long history of implementing eCommerce in Drupal, including joining the Drupal Commerce project in late 2009. Talk to them about using Drupal Commerce as a front-end for third party applications.

Finally, be sure to catch Promet Source's showcase session on helping The Corning Museum of Glass migrate from Commerce 1.x to Commerce 2.x and Rick Manelius's session on the dos and don'ts Drupal Commerce project estimation.

Schedule Time to Meet

If you're heading to DrupalCon, we'd love to chat about Drupal Commerce with you. Use our meeting request form to get on our calendar to discuss a particular project or need, or subscribe to our newsletter to be kept in the loop more generally.

Intel trennt sich von Wind River

heise online Newsticker - 7. April 2018 - 7:30
Knapp neun Jahre nach der Übernahme verkauft Intel den Embedded-Spezialisten an den Investor TPG. Wind River will sich als unabhängiges Unternehmen auf die Bereiche Edge und Cloud konzentrieren.

Dcycle: Fast-track local Drupal 8 core patch development and testing

Planet Drupal - 7. April 2018 - 2:00

The process documented process for setting up a local environment and running tests locally is, in my opinion, so complex that it can be a barrier to even determined developers.

For those wishing to locally test and develop core patches, I think it is possible to automate the process down to a few steps and few minutes; here is an example with a core issue, #2273889 Don’t use one language’s plural index formula with another language’s string in the case of untranslated strings using format_plural(), which, at the time of this writing, results in the number 0 being displayed as 1 in certain cases.

Is it possible to start useful local development on this within 10 minutes on a computer with nothing installed except Docker? Let’s try…

Step 1: install Docker

Install and launch Docker. Everything we need, Apache web server, MySql server, Drush, Drupal, will reside on Docker containers, so we won’t need to install anything locally except Docker.

Step 2: launch a dev environment

I have create a project hosted on GitHub which will help you set up everything you need in Docker contains without local dependencies other than Docker, or any manual steps. Set it up by running:

git clone https://github.com/dcycle/drupal8_core_dev_helper.git && \ cd drupal8_core_dev_helper && \ ./scripts/deploy.sh`

This will create everything you need: a webserver container and database container, and your Drupal core code which will be placed in ./drupal8_core_dev_helper/drupal; near the end of the output of ./scripts/deploy.sh, you will see a login link to your development environment. Confirm you can access that local development environment at an address like http://0.0.0.0:SOME-PORT. (The port is random.)

The first time you run this, it will have to download Docker images with Drupal, MySQL, and install everything you need for local development. Future runs will be a lot faster.

See the project’s README for more details.

In your dev environment, you can confirm that the problem exists (provided the issue has not yet been fixed) by following the instructions in the “To reproduce this problem:” section of the issue description on your local development environment.

Any calls to drush can be run on the Docker container like so:

docker-compose exec drupal /bin/bash -c 'drush ...'

For example:

docker-compose exec drupal /bin/bash -c 'drush en locale language -y'

If you want to run drush directly, you can connect to your container like so:

docker-compose exec drupal /bin/bash

This will result in the following prompt on the container:

root@4744431352a1:/var/www/html#

Now you can run drush commands directly on the container:

drush eval "print_r(\Drupal::translation()->formatPlural(0, '1 whatever', '@count whatevers', array(), array('langcode' => 'fr')) . PHP_EOL);"

Because the drupal8_core_dev_helper project also pre-installs devel on your environment, you can also confirm the problem exists by visiting /devel/php and executing:

dpm((string) (\Drupal::translation()->formatPlural(0, '1 whatever', '@count whatevers', array(), array('langcode' => 'fr'))));

Whether you do this by Drush or /devel/php, the result should be the same if the issue has not been resolved: 1 whatever instead of 0 whatevers.

Step 3: get a local version of the patch and apply it

In this example, we’ll look at the patch in comment #32 of our formatPlural issue, referenced above. If the issue has been resolved since this blog post has been written, follow along with another patch.

cd drupal8_core_dev_helper curl https://www.drupal.org/files/issues/2018-04-07/2273889-31-core-8.5.x-plural-index-no-test.patch -O cd ./drupal && patch -p1 < ../2273889-31-core-8.5.x-plural-index-no-test.patch

You have now patched your local version of Drupal. You can try the “0 whatevers” test again and the bug should be fixed.

Running tests

Now the real fun begins… and the “fast-track” ends.

For any patch to be considered for inclusion in Drupal core, it will need to (a) not break existing tests; and (b) provide a test which, without the patch, confirms that the problem exists.

Let’s head back to comment #32 of issue #2273889 and see if our patch is breaking anything. Clicking on “PHP 7 & MySQL 5.5 23,209 pass, 17 fail” will bring us to the test results page, which at first glance seems indecipherable. You’ll notice that our seemingly simple change to the PluralTranslatableMarkup.php file is causing a number of tests to fail: HelpEmptyPageTest, EntityTypeTest…

Let’s start by finding the test which is most likely to be directly related to our change by searching on the test results page for the string “PluralTranslatableMarkupTest” (this is name of the class we changed, with the word Test appended), which shows that it is failing:

Testing Drupal\Tests\Core\StringTranslation\PluralTranslatableMarkupTest .E

We need to figure out where that file resides, by typing:

cd /path/to/drupal8_core_dev_helper/drupal/core find . -name 'PluralTranslatableMarkupTest.php'

This tells us it is at ./tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php.

Because we have a predictable Docker container, we can relatively easily run this test locally:

cd /path/to/drupal8_core_dev_helper docker-compose exec drupal /bin/bash -c 'cd core && \ ../vendor/bin/phpunit \ ./tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php'

You should now see the test results for only PluralTranslatableMarkupTest:

PHPUnit 6.5.7 by Sebastian Bergmann and contributors. Testing Drupal\Tests\Core\StringTranslation\PluralTranslatableMarkupTest .E 2 / 2 (100%) Time: 16.48 seconds, Memory: 6.00MB There was 1 error: 1) Drupal\Tests\Core\StringTranslation\PluralTranslatableMarkupTest::testPluralTranslatableMarkupSerialization with data set #1 (2, 'plural 2') Error: Call to undefined method Mock_TranslationInterface_4be32af3::getStringTranslation() /var/www/html/core/lib/Drupal/Core/StringTranslation/PluralTranslatableMarkup.php:150 /var/www/html/core/lib/Drupal/Core/StringTranslation/PluralTranslatableMarkup.php:121 /var/www/html/core/tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php:31 ERRORS! Tests: 2, Assertions: 1, Errors: 1.

How to fix this, indeed whether this will be fixed, is a whole nother story, a story fraught with dependency injection, mock objects, method stubs… More an adventure, really, than a story. An adventure which deserves to be told, just not right now.

The process documented process for setting up a local environment and running tests locally is, in my opinion, so complex that it can be a barrier to even determined developers.

Hook 42: Drupal 8 Interviews: Spotlight on NNU's Sarah Maple

Planet Drupal - 6. April 2018 - 22:29

Sarah Maple is the Lead Web Designer at National Nurses United (NNU) and has been at the organization for four years. Her training bridges art and web technology in order to better serve clients with both their technological needs as well as their artistic ones. She provides support with Drupal logistics and project management for the NNU website, which is a full website conversion to Drupal 8.

Nextide Blog: Create a New Content Entity During Module Update

Planet Drupal - 6. April 2018 - 22:24

As Drupal module maintainers, we at Nextide need to be constantly updating our modules to add new features or patch issues.  Whether your module is available for download or is a custom module for a client site, you can't expect users to uninstall and reinstall it to pick up new features.  If you have data or configuration changes, update hooks are mandatory to learn.  This post will show how we created a new content entity in a Drupal update hook.