diff options
| author | 2022-06-14 20:11:59 -0400 | |
|---|---|---|
| committer | 2022-06-14 20:11:59 -0400 | |
| commit | addd4370e53a593777e005cdd0e11c856006f371 (patch) | |
| tree | 409bc08e462a33b10f95974e36d07d5074ab6ffa /inxi.changelog | |
| parent | 8725be46d9a64225375831d9021af4c25cabf3c4 (diff) | |
New upstream version 3.3.18-1.upstream/3.3.18-1
Diffstat (limited to 'inxi.changelog')
| -rw-r--r-- | inxi.changelog | 351 |
1 files changed, 350 insertions, 1 deletions
diff --git a/inxi.changelog b/inxi.changelog index 534d820..a33b528 100644 --- a/inxi.changelog +++ b/inxi.changelog @@ -1,4 +1,340 @@ ================================================================================ +Version: 3.3.18 +Patch: 00 +Date: 2022-06-13 +-------------------------------------------------------------------------------- +RELEASE NOTES: +-------------------------------------------------------------------------------- + +Bug release, replace 3.3.17 asap, most users will not experience the bug, but if +they do, inxi stops right before the -D line. Failed to do an if defined test on +an array ref that could be undefined or an array ref. That makes Perl very +unhappy! + +-------------------------------------------------------------------------------- +KNOWN ISSUES: + +1. AMD family F, K8 series, will need more granular treatments to get the data +to be more accurate and less generic. We got 2 IDs nailed from raw visual data +confirmations and cpuid values, which leaves many, but good start. We will chip +away (pardon the pun) at these more ambiguous IDs over time, but don't need to +get them all done instantly, just eventually. Thanks slackware person linuxdaddy +for doing really good research and actually looking at the cpu to find dates +etc. + +-------------------------------------------------------------------------------- +BUGS: + +1. Bug, fatal, caused by internal hash/array ref refactor of 3.3.17. Thanks +alaymari github issue #271 for reporting this one. + +-------------------------------------------------------------------------------- +FIXES: + +1. None except for code fixes to try to avoid the cause of the bug in Bugs 1. + +2. Fixed nvidia eol try --gpu, it was showing backwards, with --gpu, not +without, sigh. + +-------------------------------------------------------------------------------- +ENHANCEMENTS: + +1. Added slimski dm data. That's a new fork of SLiM. Also guessing that brzdm +has same version -v output: brzdm version x.xx + +-------------------------------------------------------------------------------- +CHANGES: + +1. None + +-------------------------------------------------------------------------------- +DOCUMENTATION: + +1. Refactors of core docs, ongoing, but will list those next release. + +-------------------------------------------------------------------------------- +CODE: + +1. Cleaned up some array ref handling in subs, returned as: ($var1,$var2) = +@{block_data(...)}, skipped initializing and creating scalar to hold the ref, +just use it directly for DiskItem::block_data(). + +2. Also switched to local ref scalar array in DiskItem::scsi_data(), +DiskItem::block_data(). Not set local array, set local array ref, to keep it +clear. Also made DriveItem::drive_speed() return straight ref, not array then +ref. Same for many other subs, switched to ref assignment so it's the same ref +all through all the sub and return. + +3. Fixed a redundant return \@$data to simply assigning to @$data ref, no return +needed, in DiskItem::smartctl_data(). + +4. Tightened some returns of ref so that tests if good test @$ref, not $ref. +Trying to avoid more cases like issue #271. + +5. Going along with array ref local/return, switched all hash refs to local hash +ref returning ref, and working local with ref. More efficient, avoids creating +new refs over and over, dugh. This made a particularly large difference in CPU +because in certain parts, new references were being created over and over, and +subs were returning like \@arr or \%hash instead of declaring to start: +my $arr = []; my $hash = {}; + +Then working with the data from there on as an array or hash reference, to the +same original reference, rather than creating new ones over and over, which Perl +then has to track til they expire. + +-------------------------------------------------------------------------------- +-- Harald Hope - Mon, 13 Jun 2022 11:22:20 -0700 + +================================================================================ +Version: 3.3.17 +Patch: 01 +Date: 2022-06-10 +-------------------------------------------------------------------------------- +RELEASE NOTES: +-------------------------------------------------------------------------------- + +Rollout of advanced microarchitecture info continues, added AMD/Intel gfx +devices, CPU built dates, process nodes, generation (in some cases, where it +makes sense), etc. + +Please note: the 3.3.16 > 17 releases require manual matching table updates. If +you think disk or ram vendor, CPU or GPU process, release date, generation, etc, +information is not correct: + +* FIRST: do the research, confirm it's wrong, using wikichips, techpowerup, +wikipedia links, but also be aware, sometimes these slightly contradict each- +other, so research. Don't make me do all your work for you. + +* Show the relevant data, like cpu model/stepping, to correct the issue, or +model name string. + +* There are 4 main manually updated matching tables, which use either raw regex +to generate the match based on the model name (ram, disk vendors), or vendor id +matching (ram vendors), product id matching (gpu data), or cpu family / model / +stepping id matching. Each of these has its own matching tool at: + inxi-perl/tools/[tool-name].pl +which is used to generate either raw data used by the functions (ids for gpu +data), or which contains the master copy of the function used to generate the +regex matches (cp_cpu_arch/set_ram_vendors/set_disk_vendors). + +* Please use pinxi and inxi-perl branch for this data, inxi is only released +when next stable is done, all development is done in inxi-perl branch. All +development for the data or functions these tools are made for occurs in the +tools, not in pinxi, and those results are moved into pinxi from the tools. + +* Saying something "doesn't work" is not helpful, provide the required data for +the feature that needs updating, or ideally, find the correct answer yourself +and do the research and then provide the updated data for matching. + +-------------------------------------------------------------------------------- +KNOWN ISSUES: + +1. GPU/CPU process node sizes are marketing, not engineering, terms, but +work-around is to list the fab too so you at least know which set of marketing +terms you're dealing with. As of around 7nm, most of the fabs are not using nm +in their names anymore, TSMC is using n7, Intel 7, for example. While these +marketing terms do reflect changes from the previous process node, more +efficient, faster, faster per watt, and so on, and these changes are often quite +significant, 10-30%, or more, they do not reflect the size of the transistor +gate like they used to up until about 350nm. Intel will move to A20 for the node +after 4 or 5, 2nm, meaning 20 angstroms. + +Intel suggested million transistors per mm^2 as an objective measure (currently +around 300+ million!! as of ~7nm), but TSMC didn't take them up on it. + +GlobalFoundries (GF) stepped away from these ultra small processes at around +14nm, so you won't see GF very often in the data. AMD spun off its chip fabs to +GF aound 2009, so you don't see AMD as foundry after GF was formed. ATI always +used TSMC so GPU data for AMD/ATI is I think all TSMC. Intel has always been its +own foundry. + +2. Wayland drops all its data and can't be detected if sudo or su is used to run +inxi. That's unfortunate, but goes along with their dropping support for > 1 +user, which was one of the points of wayland, same reason you can do desktop +sharing or ssh desktop forwarding etc. This means inxi doesn't show wayland as +Display protocol, it is just blank, if you use su, or sudo start. This makes +some internal inxi wayland triggers then fail. Still looking to see if there is +a fix or workaround for this. + +3. In sensors, a new syntax for k10-pci temp, Tctl, which unfortunately is the +only temp type present for AMD family 17h (zen) and newer cpus, but that is not +an actual cpu temp, it's: +https://www.kernel.org/doc/html/v5.12/hwmon/k10temp.html + +"Tctl is the processor temperature control value, used by the platform to +control cooling systems. Tctl is a non-physical temperature on an arbitrary +scale measured in degrees. It does _not_ represent an actual physical +temperature like die or case temperature." + +Even worse, it replaced Tdie, which was, correctly, temp1_input, and, somewhat +insanely, the non real cpu temp is now temp1_input, and if present, the real +Tdie cpu temp is temp2_input. I don't know how to work around this problem. + +-------------------------------------------------------------------------------- +BUGS: + +1. Fallback test for Intel cpu arch was not doing anything, used wrong variable +name. + +2. A very old bug, thanks mrmazda for spotting this one, runlevel in case of +init 3 > init 5 showed 35, not 5. Doesn't show on systemd stuff often since it +doesn't use runlevels in this way, but this bug has been around a really long +time. + +3. SensorItem::gpu_data was always logging its data, missing the if $b_log. + +-------------------------------------------------------------------------------- +FIXES: + +1. Fixed some disk vendor detection rules. + +2. Failing to return default target for systemd/systemctl when no: + /etc/systemd/system/default.target +file exists. Corrected to use systemctl get-default as fallback if file doesn't +exist. + +3. Fixed indentation for default: runlevel, should be child of runlevel: / +target: + +4. Fixed corner case where systemd has no /proc/1/comm file but is still the +init system. Added fallback check for /run/systemd/units, if that exists, safe +to assume systemd is running init. + +5. Fixed subtle case, -h/--recommends/--version/--version-short should not print +to -y1 width, but rather to the original or modified widths >= 80 cols. +Corrected this in print_basic() by using max-cols-basic. + +6. Forgot to add --pkg, --edid, and --gpu to debugger run_self() tool. + +7. Fixed broken sandisk vendor id. + +-------------------------------------------------------------------------------- +ENHANCEMENTS: + +1. Added AMD and Intel GPU microarchitecture detections for -Gx. These are not +as easy as Nvidia because there is no one reliable data source for product ids. + +2. Going with the -Ga process: .. built: item, -Ca will show process: [node] and +built: years and sometimes gen: if available. Geeky, sure, not always perfect, +or correct, but will generally be close. Due to difficultly in finding reliable +release > build end years for example, not all cpus have all this data. + +Using CPU generation,where that data is available and makes sense. Like AMD +Zen+ is zen gen: 2, for example,. Because Intel microarch names are often +marketing driven, not engineering, it's too difficult to assign gen consistently +based only on model names. Shows for Core intels like: gen: core 3 + +That will cover most consumer Intel CPU users currently. + +3. Added initial Zen 3+ and Zen 4 ids for cp_cpu_arch(). There is very little +info on these yet, so I'm going on what may prove to be incomplete or wrong +data. + +4. Added GPU process, build years for -Ga. + +5. Added fallback test for gpus that we don't have product IDs for yet because +dbs have not been updated. Only used for cases where it's the newest gpu series +and no prodoct IDs have been found. + +6. Added AMD am386 support to cp_cpu_arch... ok ok, inxi takes 9 minutes to +execute on that, but there you have it. + +7. Added unverified Hyprland wayland compositor detection. + +8. By request, added --version-short/--vs, which outputs version info in one +line if used together with other options and if not short form. With any normal +line option, will output version (date) info first line, without any other +option, will output 1 line version info and exit. + +9. More disk vendors, ids! Much easier with new tool disk_vendors.pl. + +-------------------------------------------------------------------------------- +CHANGES: + +1. Deprecated --nvidia/--nv in favor of more consistent --gpu, that's easier to +work with multiple vendors for advanced gpu architecture. Note for non nvidia, +--gpu only adds codename, if available and different from arch name. For nvidia, +it adds a lot more data. + +2. Changed inxi-perl/tools tool names to more clearly reflect what function they +serve. + +3. Going with runlevel fixes, changed 'runlevel:' to be 'target:' if systemd. +Also changed incorrect 'target:' for 'default:'. + +-------------------------------------------------------------------------------- +DOCUMENTATION: + +1. Updated man, help, docs/inxi-data.txt for new gpu data and tools, and to +indicate switch to more generic --gpu trigger for advanced gpu data, instead of +the now deprecated --nvidia/--nv, which probably will go down as the shortest +lasting option documented, though of course inxi always keeps legacy syntax +working, behind the scenes, it's just removed from the -h and man page in favor +of --gpu. Also updated to show AMD/Intel/Nvidia now, since the data now roughly +works for all three main gpus. + +2. Updated pinxi README.txt to reflect the tools and how to use them and what +they are for. + +3. --help, man, updated for target/runlevel, default: changes for init data. + +4. Updated configuration html and man for --fake-data-dir. + +-------------------------------------------------------------------------------- +CODE: + +1. Upgraded tools/gpu_ids.pl to handle nvidia, intel, or amd data, added data +files in tools/lists/ for amd. First changed name from ids.pl to gpu_ids.pl + +2. New data files added for amd/intel pci ids, and a new tool to merge them and +prep them for gpu_ids.pl -j amd|intel handling. All work. Took a while to get +these things sorted, but don't want to get stuck in future with manual updates, +it needs to be automated as much as possible, same as with disk_vendors.pl etc, +if I'm going to try to maintain this over time. + +3. Made all gpu data file names use consistent formats, and made disk data files +also follow this format. + +4. Changed raw_ids.pl to gpu_raw.pl, trying to keep things easy to remember and +consistent here. + +5. Refactored core gpu data logic, now all types use the same sub, and just +assign various data depending on the type. + +6. Changed vendors.pl name to disk_vendors.pl + +7. Big redo of array/hash handling in OutputHandler, was partially by reference, +now is completely by reference. All Items now use and return $rows array ref as +well, from start to finish, unlike previously, where @rows was copied +repeatedly. + +8. Going along with 7, made most internal passing of hash/arrays use hash/array +references instead, where it makes sense, and doesn't make the code harder to +work with. + +9. Refactored WeatherItem, split apart the parts from output to be more like +normal Items in terms of error handling etc. + +10. Added 'ref' return option for reader() and grabber(). Only useful for very +large data sets, added also default 'arr' if no value is provided for that +argument. + +11. Switched some features to use grabber/reader by ref on the off chance that +will dump some execution time. + +12. A few places added qr/.../ precompiled regex, in simple form, for loops, +maybe it helps a little. I don't know. + +13. Added global $fake_data_dir, this can be changed via configuration item: +FAKE_DATA_DIR or one time by --fake-data-dir. + +14. Created data directory, and initial data items. cpu is the fake data used to +test CPU info. More will be added as data is checked and sanitized. + +-------------------------------------------------------------------------------- +-- Harald Hope - Fri, 10 June 2022 13:05:17 -0700 + +================================================================================ Version: 3.3.16 Patch: 00 Date: 2022-05-19 @@ -83,7 +419,7 @@ Used non-existing $size{'output-block'} instead of correct $use{'output-block'} they change internal light shells, but all the docs say they use ash, so now it will show shell: ash (busybox) to make it clear. Hurray!! This means that tinycore users will get this long awaited feature! Ok, ok, long awaited by -probably only me, but since I package inxi for busybox, it was on my todo list. +probably only me, but since I package inxi for TinyCore, it was on my todo list. 7. Cleaned up and re-organized many disk vendor matching rules, made them easier to read and debug, going along with Code 3, vendors.pl development and release. @@ -501,6 +837,9 @@ to not break on 1 character length string matches. concept in terms of adding a new feature during the original inxi 2.9 rewrite, and was never actually touched after that. +5. Added option to reader() to return array ref, if expecting a large file can +be useful. + -------------------------------------------------------------------------------- -- Harald Hope - Thu, 24 Mar 2022 12:01:50 -0800 @@ -3464,6 +3803,16 @@ replaced all of them with 'device[s]'. 4. Subtle fix, for debugger data collectors, added -y1 support, which can be useful at times. +5. Optimized PATH searches, now inxi only adds things to PATH if they exist in +the system, not blindly. + +6. Added to path test /usr/X11R6/bin to defaults, that is needed, if present, by +OpenBSD and maybe other BSDs for tools like glxinfo. + +7. Corrected missing PCI device data requires root message, that should have +shown PCI device, not Device, since sometimes there is USB device data also +next even if no permissions to read PCI device data tool, like in OpenBSD. + -------------------------------------------------------------------------------- ENHANCEMENTS: |
