aboutsummaryrefslogtreecommitdiffstats
path: root/inxi.changelog
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2022-06-14 20:11:59 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2022-06-14 20:11:59 -0400
commitaddd4370e53a593777e005cdd0e11c856006f371 (patch)
tree409bc08e462a33b10f95974e36d07d5074ab6ffa /inxi.changelog
parent8725be46d9a64225375831d9021af4c25cabf3c4 (diff)
New upstream version 3.3.18-1.upstream/3.3.18-1
Diffstat (limited to 'inxi.changelog')
-rw-r--r--inxi.changelog351
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: