Language Selection

English French German Italian Portuguese Spanish

Development

Zapcc Caching C++ Compiler Open-Sourced

Filed under
Development

Remember the Zapcc compiler that focused on lightning fast compiler times? It's now been open-sourced.

Zapcc is the LLVM/Clang-based C++ compiler that we have been covering since 2015 when it began promoting itself as a much faster C++ compiler than Clang itself. Zapcc employs aggressive caching and other techniques in an effort to significantly speed up compile times while being a drop-in replacement to GCC or Clang. Last year Zapcc reached the v1.0 milestone, but we haven't heard much since until finding out this weekend that it's been open-sourced.

Read more

BLUI: An easy way to create game UI

Filed under
Development
Gaming

As part of an indie game development studio, I've experienced the perks of using open source plugins on proprietary game engines. One open source plugin, BLUI by Aaron Shea, has been instrumental in our team's development process. It allows us to create user interface (UI) components using web-based programming like HTML/CSS and JavaScript. We chose to use this open source plugin, even though Unreal Engine (our engine of choice) has a built-in UI editor that achieves a similar purpose. We chose to use open source alternatives for three main reasons: their accessibility, their ease of implementation, and the active, supportive online communities that accompany open source programs.

In Unreal Engine's earliest versions, the only means we had of creating UI in the game was either through the engine's native UI integration, by using Autodesk's Scaleform application, or via a few select subscription-based Unreal integrations spread throughout the Unreal community. In all those cases, the solutions were either incapable of providing a competitive UI solution for indie developers, too expensive for small teams, or exclusively for large-scale teams and AAA developers.

After commercial products and Unreal's native integration failed us, we looked to the indie community for solutions. There we discovered BLUI. It not only integrates with Unreal Engine seamlessly but also maintains a robust and active community that frequently pushes updates and ensures the documentation is easily accessible for indie developers. BLUI gives developers the ability to import HTML files into the Unreal Engine and program them even further while inside the program. This allows UI created through web languages to integrate with the game's code, assets, and other elements with the full power of HTML, CSS, JavaScript, and other web languages. It also provides full support for the open source Chromium Embedded Framework.

Read more

Also: Why (some) agile teams fail

Mesa Graphics in Linux

Filed under
Development
Graphics/Benchmarks
Linux
  • Mesa Rolls Out Support For ARB_sample_locations

    Mesa has been plumbed in to support the ARB_sample_locations OpenGL extension and is now exposed with the Nouveau NVC0 Gallium3D driver.

    ARB_sample_locations was part of the "OpenGL 2015" update but hasn't made it into a released version of OpenGL, hence why it wasn't a priority for Mesa developers. But now it's been wired up within core Mesa and is currently flipped on for NVC0 in Mesa 18.2-devel.

  • Mesa's VirGL For OpenGL Within VMs Now Supports Tessellation Shaders

    It was just days ago that the VirGL driver stack -- which is used for supporting OpenGL hardware acceleration within guest VMs that is passed onto the host's driver -- picked up FP64 support while now its latest addition is ARB_tessellation_shader support.

    With the latest Mesa Git and the VirGL renderer library code is updated (as well as your host OpenGL driver supporting GL4), there is now support for tessellation shaders. The support has landed in Mesa 18.2 Git for this popular OpenGL 4.0 feature.

Programming With Python (LWN)

Filed under
Development
  • Unplugging old batteries

    Python is famous for being a "batteries included" language—its standard library provides a versatile set of modules with the language—but there may be times when some of those batteries have reached their end of life. At the 2018 Python Language Summit, Christian Heimes wanted to suggest a few batteries that may have outlived their usefulness and to discuss how the process of retiring standard library modules should work.

    The "batteries included" phrase for Python came from the now-withdrawn PEP 206 in 2006. That PEP argued that having a rich standard library was an advantage for the language since users did not need to download lots of other modules to get real work done. That argument still holds, but there are some modules that are showing their age and should, perhaps, be unplugged and retired from the standard library.

  • Advanced computing with IPython

    If you use Python, there's a good chance you have heard of IPython, which provides an enhanced read-eval-print loop (REPL) for Python. But there is more to IPython than just a more convenient REPL. Today's IPython comes with integrated libraries that turn it into an assistant for several advanced computing tasks. We will look at two of those tasks, using multiple languages and distributed computing, in this article.

    IPython offers convenient access to documentation, integration with matplotlib, persistent history, and many other features that greatly ease interactive work with Python. IPython also comes with a collection of "magic" commands that alter the effect of single lines or blocks of code; for example, you can time your code simply by typing %%time at the prompt before entering your Python statements. All of these features also work when using the Jupyter notebook with the IPython kernel, so you can freely switch between the terminal and the browser-based interface while using the same commands.

Qt and Python

Filed under
Development
  • Qt Contributors’ Summit 2018 wrap-up

    Qt Contributors’ Summit 2018 is over. Two days of presentations and a lot of discussions during presentations, talk of Qt over coffee and lunch and in restaurants in the evening.

  • Qt 6.0 Might Be Coming After Qt 5.14, Could Depend Upon C++17

    Since last year there has been more talk and early planning around the eventual Qt 6.0 milestone. It's looking now like Qt 6.0 might happen after Qt 5.14, or likely in 2020.

    Last year there were developer discussions about starting Qt6 work after Qt 5.11, which was released at the end of May. Previous discussions of Qt6 have entailed QIODevice support, a Qt Quick scene graph, improved accessibility, and a Vulkan back-end for Qt Quick.

  • Qt For Python 5.11 Released As The First Official Build

    The past few months The Qt Company has been overhauled PySide2 as Qt For Python, a big improvement to the Python bindings to the Qt tool-kit. Out today is Qt For Python 5.11 as the first official release under the new branding.

  • Qt for Python 5.11 released

    As the version tag implies, it is based on Qt 5.11 and therefore the first release that supports the Qt 5 series. At large the project will follow the general Qt release schedule and versions. Although this is still a Technical Preview we will support the release with the usual support pattern (except the compatibility one). Unfortunately, earlier versions of Qt than 5.11 are not supported. It is available for open source and commercial Qt for Application Development users. Note that there is only one package for commercial and open source users. We hope we can receive plenty of feedback on what works and what does not. We want to patch early and often.

  • Python 3.7 Release Candidate Arrives, Final Expected At The End Of June

    Python 3.7.0 RC1 is available today as the last step prior to issuing this next feature release of Python 3 at month's end.

    The Python 3.7.0 release candidate was issued today along with the Python 3.6.6 RC1. The current plan is to release both of these new Python versions on 27 June unless some blocker bugs come about that would delay the release.

  • Python 3.7.0rc1

    This release, 3.7.0rc1, is the final planned release preview. Assuming no critical problems are found prior to 2018-06-27, the scheduled release date for 3.7.0, no code changes are planned between this release candidate and the final release.

NSA could have access to data on Microsoft-owned GitHub

Filed under
Development
Microsoft

The NSA could have access to the code repositories residing on GitHub, which is now owned by Microsoft, if past practices of the Redmond-based software giant are any indicator.

Microsoft announced its acquisition of GitHub on 5 June. The company said at the time that GitHub had about 28 million developers working on 80 million repositories. Microsoft has been one of the bigger code contributors to the site.

The reaction from open-source developers to the acquisition was not exactly been salutary as can be seen from comments on Linux Weekly News.

Read more

Programming Leftovers

Filed under
Development
  • This Week in Numbers: Managing JavaScript Packages with NPM and Yarn

    This week we analyze more data from the Node.js Foundation‘s user survey. Almost three-quarters (73 percent) of survey respondents said they use a package manager. NPM was used by 60 percent and Yarn cited by 13 percent. Since Yarn sits on top of NPM, in reality these respondents are referring to an interface or tool they actually use day-to-day. Yarn’s use rose 44 percent compared to last year’s study.

  • RcppZiggurat 0.1.5

    A maintenance release 0.1.5 of RcppZiggurat is now on the CRAN network for R.

  • RcppGSL 0.3.6

    A maintenance update 0.3.6 of RcppGSL is now on CRAN. The RcppGSL package provides an interface from R to the GNU GSL using the Rcpp package.

  • A Gentle Intro to PLT

    Programming Language Theory (PLT) is an extremely rich subject with a relatively high bar to entry. Most of the literature is written for a reader already well versed in the subject; it’s hard to find a tractable introduction. This post will take you through the construction of a simplistic toy programming language (and an interpreter for it) from first principles. I assume no knowledge on your part, aside from general programming experience.

Early PHP 7.3 Performance Benchmarks Are Looking Good

Filed under
Development
Graphics/Benchmarks

Released this week was the first alpha of PHP 7.3 and I decided to take it for a spin with some benchmarks. While not as dramatic as going from PHP5 to PHP 7.0, the performance of PHP7 continues getting better.

PHP 7.3 so far introduces several new functions, finally drops support for BeOS, updates the bundled SQLite version, expands WebP support, improves PHP garbage collection, and other enhancements. PHP 7.3 is tentatively planned for release at the end of November while over the months ahead are more alphas/betas/RCs.

Read more

Programming: GNOME Builder, Eclipse Che, Rust GUI

Filed under
Development
  • A new completion engine for Builder

    Since my initial announcement of Builder at GUADEC in 2014, I’ve had a vision in the back of my mind about how I’d like completion to work in Builder. However, there have been more important issues to solve and I’m just one person. So it was largely put on the back burner because after a few upstream patches, the GtkSourceView design was good enough.

    However, as we start to integrate more external tooling into Builder, the demands and design of what those completion layers expect of the application have changed. And some of that is in conflict with the API/ABI we have in the long-term stable versions of GtkSourceView.

  • Eclipse Che 6.6 Release Notes

    Eclipse Che 6.6 is here!

  • To do a Rust GUI

    Rust Qt Binding Generator (Logo by Alessandro Longo)

    Rust Qt Binding Generator lets you combine Rust code with a Qt1 graphical application. A previous blog shows how to make a simple clock. It’s a good idea to read that post before reading this more advanced post, because in this post we are getting serious.

    This blog post shows how to write a to-do application. The data model is a list of to-do items. The source code for this example is available in the folder examples/todos in the Rust Qt Binding Generator repository.

    Here is a screenshot of the finished application. The to-do application shows the steps to implement the to-do application. This application was the subject of a presentation on Rust Qt Binding Generator.

GeckoLinux updates all ROLLING and STATIC spins

Filed under
Development
Linux
News
SUSE

The GeckoLinux project is pleased to release updated spins of both ROLLING and STATIC editions. GeckoLinux spins are based on the openSUSE distribution, with a focus on polish and out-of-the-box usability on the desktop. A large variety of customized desktop options are available in STATIC (based on openSUSE Leap) and ROLLING (based on openSUSE Tumbleweed) editions. After installation to the hard disk, a GeckoLinux system will continue to receive updates from the openSUSE and Packman infrastructures. An installed system can even be upgraded smoothly to future openSUSE releases while at the same time retaining its unique GeckoLinux configuration.


Read more

Read more

Syndicate content

More in Tux Machines

Red Hat News

  • An Open Source Load Balancer for OpenShift
    A highly-available deployment of OpenShift needs at least two load balancers: One to load balance the control plane (the master API endpoints) and one for the data plane (the application routers). In most on-premise deployments, we use appliance-based load balancers (such as F5 or Netscaler).
  • Red Hat Beefs Up Platform as a Service Suite
    Red Hat has begun shipping Red Hat Fuse 7, the next major release of its distributed, cloud-native integration solution, and introduced a new fully hosted low-code integration platform as a service (iPaaS) offering, Fuse Online. With Fuse 7, the vendor says expanding its integration capabilities natively to Red Hat OpenShift Container Platform, an enterprise Kubernetes platform. Fuse gives customers a unified solution for creating, extending and deploying containerized integration services across hybrid cloud environments.
  • Red Hat ‘Fuses’ Low Code Development and Data Integration
    Red Hat, a provider of open source solutions, has announced Red Hat Fuse 7, the next major release of its distributed, cloud-native integration solution, and introduced a new fully hosted low-code integration platform as a service offering, Fuse Online. With Fuse 7, Red Hat is expanding its integration capabilities natively to Red Hat OpenShift Container Platform, a comprehensive enterprise Kubernetes platform. Fuse gives customers a unified solution for creating, extending and deploying containerized integration services across hybrid cloud environments.
  • The GPL cooperation commitment and Red Hat projects
    As of today, all new Red Hat-initiated open source projects that opt to use GPLv2 or LGPLv2.1 will be expected to supplement the license with the cure commitment language of GPLv3. The cure language will live in a file in the project source tree and will function as an additional permission extended to users from the start. This is the latest development in an ongoing initiative within the open source community to promote predictability and stability in enforcement of GPL-family licenses. The “automatic termination” provision in GPLv2 and LGPLv2.x is often interpreted as terminating the license upon noncompliance without a grace period or other opportunity to correct the error in compliance. When the Free Software Foundation released GPLv2 in 1991, it held nearly all GPL-licensed copyrights, in part a consequence of the copyright assignment policy then in place for GNU project contributions. Long after the Linux kernel and many other non-GNU projects began to adopt the GPL and LGPL, the FSF was still the only copyright holder regularly engaged in license enforcement. Under those conditions, the automatic termination feature of GPLv2 section 4 may have seemed an appropriate means of encouraging license compliance.
  • Monness Believes Red Hat (NYSE: RHT) Still Has Room to Grow
  • Comparing Red Hat (RHT) & Autoweb (AUTO)
  • As Red Hat (RHT) Share Value Rose, Calamos Advisors Upped Its Position by $300,831; Chilton Capital Management Increases Stake in Equinix (EQIX)
  • Blair William & Co. IL Buys 23,279 Shares of Red Hat Inc (RHT)

Total War: WARHAMMER

Red Hat changes its open-source licensing rules

From outside programming circles, software licensing may not seem important. In open-source, though, licensing is all important. So, when leading Linux company Red Hat announces that -- from here on out -- all new Red Hat-initiated open-source projects that use the GNU General Public License(GPLv2) or GNU Lesser General Public License (LGPL)v2.1 licenses will be expected to supplement the license with GPL version 3 (GPLv3)'s cure commitment language, it's a big deal. Read more

Android Leftovers