Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under
Development

  • LLVM Prepares New ThreadSanitizer Runtime That Is Faster, Lower Memory Use - Phoronix

    LLVM developers have been working recently to land their new ThreadSanitizer run-time. The TSan as a reminder is the compiler instrumentation with associated run-time library for being able to detect data races.

    ThreadSanitizer is successful at detecting data race conditions even within large and complex code-bases. But unfortunately it's quite burdensome to enable with performance slowing down in the range of 5~15x while the run-time memory overhead can be in the range of 5~10x.

  • xcrun: error: invalid active developer path - buildVirtual
  • Why PHP Is Getting a Foundation and Why That Matters - FOSS Force

    The PHP Foundation is an effort by 10 key PHP vendors to assure adequate funding to keep the popular scripting language viable.

  • Qt 5.12.12 Released

    We have released Qt 5.12.12 today. This is the last release from Qt 5.12 LTS series and the standard support of Qt 5.12 LTS ends in December 2021.

    Qt 5.12.12 contains ~ 30 bug fixes compared to the Qt 5.12.11. Please check details about the release from Qt 5.12.12 Release Note.

    Note that Qt 5.12 LTS standard support ends in December 2021. It has been quite a long journey with it; big thanks to everyone involved!

  • LWJGL - The Lightweight Java Game Library Version 3.3 Released

    The part to note in this definition is that LWJGL provides access to native APIs through Java. That it is a wrapper over the APIs doesn't mean that you should not be familiar with the semantics of the underlying API. Hence to get the most out of LWJGL a good understanding of the native APIs is essential too.

    At this point it is important to disambiguate between a library and a framework. LWJGL is a library and as such is low level; it is not a gamedev framework like libgdx (which itself uses LWJGL under the covers!) or a gamedev engine like GoDot which provide higher level of abstractions. For this reason, it is not recommended for novice programmers to start out writing games with it.

    And, of course, it is debatable whether Java is a good language for gamedev over the classic value of C++. Some advantages of using Java are its support of multiple operating systems and, of course, the easy learning curve in comparison to C++. Minuses could be garbage collection, performance and a smaller dev community. In any case, it depends on the use case; as they say, choose the best tool for the job at hand.

  • Bitrot resistance of next-generation image formats

    What happens when a single bit gets corrupted in an image file you cherish? The results can range from absolutely nothing to an imperceptible visual change to a complete loss of the image. The hero image below is somewhere in the middle of the scale; where the top half of the image is perfect, and the lower half is reduced to meaningless digital noise.

    Whether due to mechanical failure or transmission interference like cosmic radiation: bitrot happens. A rotted bit, or flipped bit, is when one bit of RAM or persistent storage unintentionally flips its state between zero and one. You can only do so much to protect your system from random failure. Multiple backups and data verification is the only proven strategy to protect against it.

    Traditional JPEG images (referred to as JPEG troughing the article as opposed to JXL), especially with progressive encoding, handle bitrot remarkably well. You might see a single pixel shift its color almost imperceptibly, or one of the encoding layers may shift slightly. The effects are so well understood that you can even find free software that can automatically recover corrupted JPEG photos.

    However, the next-generation image formats pack data much more densely than in the legacy image formats. There’s isn’t just less redundancy, but every single bit means more to the complete image. This means the effects of bitrot produce a much greater loss of visual fidelity and decodes to more abstract results. The newer encoding techniques include predictive models that can get thrown off completely by a single bit out of place. The digital hellfire in the lower half of the above hero image is a perfect example of this.

  • OpenFaaS: How to Add Python Requirements and Dependencies - Anto ./ Online

    This guide will show you how to add requirements and dependencies for a Python project using OpenFaaS.

    Python dependencies are software components that your project needs for it to work. You can manually use PyPI (the Python Package Index) to provide packages that you need, but OpenFaaS can automate this for you.

  • Perl Weekly Challenge 140: Add Binary
  • My Favorite Warnings: experimental | Tom Wyant [blogs.perl.org]

    Perl has had experimental features ever since I started using it at about version 5.6. These were things that were considered useful, but about which there was doubt -- about their final form, whether a satisfactory implementation existed, or whatever.

    Until Perl 5.18, experimental features were simply documented as experimental. At that point, an experimental warning category was added, with sub-categories experimental::lexical_subs, experimental::lexical_topic, experimental::regex_sets, and experimental::smartmatch.

    Most of the features covered by the original Perl 5.18 warning categories were actually introduced in Perl 5.10 as back-ports from Raku (or Perl 6, as it was then called), and not documented as experimental. My impression was that the relevant experimental:: warnings were introduced becaue the corresponding features were recognized as being more experimental than originally believed. Programmers already familiar with a feature might not notice an extra sentence in the documentation, but they will surely notice if their code starts spitting out experimental warnings.

More in Tux Machines

Flatpak App of the Week: QPrompt – Teleprompter Software for Video Creators

Meet QPrompt (the successor of Imaginary Teleprompter), an open-source teleprompter software for video creators, designed to work across several popular platforms, including Linux and macOS, as well as to be compatible with both mobile and desktops. Written in C++ and QML, QPrompt leverages the Qt and Kirigami frameworks to provide users with a fast, easy to use and flexible GUI with a jitter free experience, which works with cellphones, webcams, tablet teleprompters, and PC-based studio teleprompters. Read more

Today in Techrights

today's leftovers

  • Fedora Server 36 Could Make It Easier To Manage NFS & Samba File Sharing - Phoronix

    Red Hat with the Fedora community have been working for years now to make Cockpit very capable for a web-based interface for administering Linux servers. In addition to this year working on shifting their Anaconda installer to a web-based interface that makes use of Cockpit, from this web management portal they are wanting to make it easier to setup file sharing with NFS and Samba. A Fedora 36 change proposal has been submitted to ship a new Cockpit module to make file sharing with Samba and NFS easier. This new module would provide a graphical web interface for provisioning and maintenance of NFS and Samba shares that can complement the existing command-line based controls for NFS and Samba servers.

  • Emma Kidney: Fedora IoT Web Page - Initial Ideas

    Just an update on what I've been working on :) Click through to see my process and progress starting to create a web page mock-up for Fedora IoT as part of the Fedora Website Revamp! As part of the Fedora Website Revamp, I got tasked with creating a mock-up of the Fedora IoT web page. I reference the Fedora IoT logo a lot here. I was unable to locate high quality SVGs, so I just made some quick vectors as placeholders.

  • I'm Thinking About You Right Now!

    My sole role at Debian alongside my teammate, aided by our mentors, is to facilitate the Node.js 16 and Webpack 5 Transitioning. What exactly does that mean? Node.js 16, as of the time of this writing, is the active LTS release from the Node.js developers while Webpack 5 is also the current release from the Webpack developers. At Debian we have to work towards supporting these packages. Debian as an OS comes with a package manager coined Advanced Package Tool or simply APT on which command-line programs specific to Debian and it's many-flavored distributions, apt, apt-get, apt-cache are based. This means before the conception of yarn and npm, the typical JavaScript developer's package managers, apt has been. Debian unlike yarn and npm, ideally only supports one version of a software at any point in time and on edge cases may have to support an extra one as noted in this chat between my mentor and a member.

  • Running OpenWRT x86 in qemu

    Sometimes it's nice for testing purpose to have the OpenWRT userland available locally. Since there is an x86 build available one can just run it within qemu.

  • Tiger Lake-U system offers 2.5GbE and dual GbE with PoE

    Arbor’s fanless, rugged “ARES-1980” runs Ubuntu or Win 10 on Intel’s 11th Gen U-series CPUs with up to 64GB DDR4, 2.5-inch SATA, triple display support, 2.5GbE, 2x GbE with PoE, 4x USB 3.2 Gen2, 4x serial, DIO, 2x M.2, and mini-PCIe. Arbor has launched a rugged, 210 x 180 x 60mm ARES-1980 embedded PC designed for industrial and in-vehicle applications. The system, which follows earlier ARES-branded Arbor computers such as the Apollo Lake based ARES-5310, runs Ubuntu 20.04 or Windows 10 IoT on Intel’s 11th Gen Tiger Lake-U processors.

  • Google Open Source Programs Office: The business impact of open source

    Amanda Casari is an open source scientist with the Google Open Source Programs Office where she leads Google’s research and engineering work with Project OCEAN. Open source programs offices (OSPOs) are established in organizations as a means to centralize policies, strategies, and guidance, and to ensure common practices across complex teams working on open source projects. Amanda offers some structure for any organization working with open source that is considering starting an OSPO of their own.

  • Mozilla Privacy Blog: European Parliament green-lights crucial new rulebook for Big Tech

    Today the European Parliament adopted its report on the draft Digital Services Act, the EU’s flagship proposal to improve internet health. Today’s vote is a crucial procedural step on the road to bringing the draft rules to reality, and we commend Members of Parliament for their efforts.

  • LibreOffice developer community - LibreOffice Development Blog

    Do you want to contribute to the LibreOffice development, but you don’t know enough about the LiberOffice code internals? Do you want to enhance the application or fix a bug in LibreOffice, but you don’t know how to do that? LibreOffice developer community can help you not only for at the beginning, but by helping you focus on the right aspect of the code. Reviewers will review your code that eventually will be part of the LibreOffice code!

  • Louis-Philippe Véronneau - Montreal Subway Foot Traffic Data, 2021 edition

    For the third time now, I've asked Société de Transport de Montréal, Montreal's transit agency, for the foot traffic data of Montreal's subway. I think this has become an annual thing now :)

  • Google sours on G Suite freeloaders, demands fee or flee • The Register

    Google has served eviction notices to its legacy G Suite squatters: the free service will no longer be available in four months and existing users can either pay for a Google Workspace subscription or export their data and take their not particularly valuable businesses elsewhere. "If you have the G Suite legacy free edition, you need to upgrade to a paid Google Workspace subscription to keep your services," the company said in a recently revised support document. "The G Suite legacy free edition will no longer be available starting May 1, 2022."

  • On DEI Research: Why the Linux Foundation? Why now? [Ed: Linux Foundation may struggle to justify its very own existence]

    The open source community is working on many simultaneous challenges, not the least of which is addressing vulnerabilities in the core of our projects, securing the software supply chain, and protecting it from threat actors. At the same time, community health is equally as important as the security and vitality of software code. We need to retain talented people to work on complex problems. While we work urgently on implementing security best practices such as increasing SBOM adoption to avoid another Log4J scenario, we can’t put the health of our communities on the open source back burner, either. Our communities are ultimately made up of people who contribute, have wants and needs, and have feelings and aspirations. So while having actionable data and metrics on the technical aspects of open source projects is key to understanding how they evolve and mature, the human experience within project communities also requires close examination.

  • A Desktop Environment For The Web Browser?!?! - Invidious

    Have you ever wanted to do everything inside of the web browser, well imagine if you have an entire desktop environment inside of your web browser, well that's DaedelOS

  • Linux Action News 224

    We explain SUSE Liberty Linux and contemplate why the community seems to be selecting distributions with newer kernels.

  • Building A Silent Linux Desktop For 2022 With The Streacom DB4 Review - Phoronix

    The long time Phoronix reader, with an excellent long-term memory, may remember an odd article from back in August 2017 on buying a passively cooled computer. It tells the tale of the consumer who decided to buy a rather niche, fanless, therefore passively cooled computer. Well, that was been my computer for four and a half years. Even though the I7-7700T the article portrayed has served me well. It did start to show age a little. Especially as of late, it will sometimes spontaneously reboot. It does so very rarely, without prior warning and seemingly unprovoked. Its a bit of a nuisance. While I wrote that article in 2017 I had also come to learn of the existence of the Streacom DB4 The DB4, of all computer cases that allow for their innards to be passively cooled, has since always been the proverbial unattainable love to me: Stunning, exciting, exclusive and she knows it.

Kernel and Graphics: AMD, Zink, and Openwashing of GPUs

  • AMD Preps for Zen 4: Different Types of Cores Now Supported in Linux | Tom's Hardware

    Perhaps, a more intriguing innovation is a new Scalable Machine Check Architecture (SMCA) of some future AMD platforms that could use different types of SMCA and therefore cores. "Future AMD systems will have different bank type layouts between logical CPUs," wrote Yazen Ghannam, an AMD engineer. "So having a single system-wide cache of the layout won't be correct. […] Patch 1 adds new bank types and error descriptions used in future AMD systems. Patch 2 adjusts how SMCA bank information is cached." So far, AMD has not announced a single hybrid processor that integrates different types of cores, though the company has never completely excluded such a possibility. Since AMD will have Zen 4 and Zen 4C cores next year, perhaps this is the time when the company might consider a CPU with both big and smaller cores. Alternatively, a new SMCA may indicate that Zen 4C will have a different machine check architecture than other Zen cores, which is why AMD needs to implement its support into Linux.

  • Zink 4ever

    After weeks of hunting for the latest rumors of jekstrand’s future job prospects, I’ve finally done it: zink now supports more extensions than any other OpenGL driver in Mesa. That’s right. Check it on mesamatrix if you don’t believe me. A couple days ago I merged support for the external memory extensions that I’d been putting off, and today we got sparse textures thanks to Qiang Yu at AMD doing 99% of the work to plumb the extensions through the rest of Mesa. There’s even another sparse texture extension, which I’ve already landed all the support for in zink, that should be enabled for the upcoming release.

  • Zink OpenGL-on-Vulkan Now Offers Broader OpenGL Coverage Than RadeonSI, Intel - Phoronix

    When it comes to OpenGL extension support, the Zink generic OpenGL-on-Vulkan implementation now has as robust coverage as core Mesa offers and what is implemented by the LLVMpipe software driver, RadeonSI Gallium3D, and the Intel i965 drivers. Zink has already offered OpenGL 4.6 support but now after recently adding some additional extensions that aren't mandated by version 4.6, it is now on-par with the other drivers for the raw number of extensions exposed and exceeds the other drivers for non-core extensions. Zink along with core Mesa / LLVMpipe / RadeonSI / i965 are at 160 extensions exposed while being the set of open-source drivers supporting OpenGL 4.6.

  • Radeon AOMP 14.0-1 Released Along WIth New GPUOpen Tool Updates - Phoronix

    A handful of new AMD Radeon open-source GPU sofware releases were made today for developers. First up, AOMP 14.0-1 is out. AOMP is AMD's downstream of LLVM/Clang targeting OpenMP offloading for Radeon GPUs. AOMP is one of several downstreams maintained at AMD and this one is all about carrying the latest Radeon OpenMP GPU offloading work until it is all upstreamed -- or in other cases, patches that are experimental or not applicable for upstreaming.