Wednesday, May 31, 2023

"ticking" noise when recording audio

Hello all,

I am trying to record audio from a USB device. I successfully
get audio from it, however, there is a constant "ticking" sound
that happens whether or not audio is actually playing through
the device. Here's the device from the dmesg:

uvideo0 at uhub0 port 7 configuration 1 interface 0 "MACROSIL AV TO
USB2.0" rev 2.00/1.21 addr 2
video0 at uvideo0
uaudio0 at uhub0 port 7 configuration 1 interface 3 "MACROSIL AV TO
USB2.0" rev 2.00/1.21 addr 2
uaudio0: class v1, high-speed, sync, channels: 0 play, 1 rec, 2 ctls
audio1 at uaudio0

I enabled kern.audio.record, have tried aucat and ffmpeg to record
the audio to file, but they both suffer the same issue. Tried monitoring
with this command:

$aucat -f snd/1 -d -r 96000 -o - | aucat -i -
stdout: rec, chan 0:1, 48000Hz, s24le4msb
snd/1: 48000Hz, rec 0:1, 18 blocks of 480 frames
stdout: started
started
stdout: stopped

I can hear the audio I expect but behind the "ticking" noise.
I'm using this device to get audio/video from a VCR, I can confirm
it is not the VCR or this device since they both work fine with OBS
studio on Linux. Any help is much appreciated.

Courtney

Re: NFS mounted but shows nothing even df -h has it

On Thu, Jun 01, 2023 at 06:15:35AM +0800, Jazzi Hong wrote:

> Fixed, thanks Otto. I checked this drive and found an error of "BAD
> SUPER BLOCK: MAGIC NUMBER WRONG", it's fixed in the end. So I changed
> the last option of the fstab file from ZERO to TWO thus the command
> fsck can check it automatically. Thank you all for the great help, I
> am so happy my little NAS works again. The OpenBSD community is so
> helpful and there are so many nice people here, hopefully I can serve
> you all a cup of the tea I made from the mountain, actually I am
> making tea today.
>
> > $ doas fsck -v -t ffs sd0i
> start sd0i wait fsck_ffs sd0i
> ** /dev/sd0i (sd0i)
>
> BAD SUPER BLOCK: MAGIC NUMBER WRONG
>
> LOOK FOR ALTERNATE SUPERBLOCKS? [Fyn?] y
> USING ALTERNATE SUPERBLOCK AT 256
>
> ** File system is already clean
> ** Last Mounted on
> ** Phase 1 - Check Blocks and Sizes
> ** Phase 2 - Check Pathnames
> ** Phase 3 - Check Connectivity
> ** Phase 4 - Check Reference Counts
> ** Phase 5 - Check Cyl groups
> FREE BLK COUNT(S) WRONG IN SUPERBLK
> SALVAGE? [Fyn?] y
> 32580 files, 68466851 used, 40554992 free (312 frags, 5069335 blocks,
> 0.0% fragmentation)
> UPDATE STANDARD SUPERBLOCK? [Fyn?] y
>
> ***** FILE SYSTEM WAS MODIFIED *****
>
> ===============================
> Check the drive after fsck
> ===============================
> ibox$ doas mount /mnt/hdd
> ibox$ ls /mnt/hdd
> Book Picture ???????????????????????

Good. Some background info: soomething corrupted the standard
(primary) superblock. You might want to think what that could be.

ffs and ffs2 have extra copies of the of the superblock available and
fskc used the 1st alternate to fix the primary superblock. Only the
summary information then has to be updated, as only the primary
superbock records summary information. This is done by computing a new
summary based on the actual disk contents.

Please use 2 as the last number in fstab lines (except for the root
fs, which whould be 1), unless you have a very good reason to use 0.

-Otto


>
> On Wed, May 31, 2023 at 10:41 PM Otto Moerbeek <otto@drijf.net> wrote:
> >
> > On Wed, May 31, 2023 at 10:25:06PM +0800, Jazzi Hong wrote:
> >
> > > Thanks for all the help. Hereby is the result of command `disklabel
> > > sd0`, seems the drive is well detected by failed mounted:
> > >
> > > > $ doas disklabel sd0
> > > # /dev/rsd0c:
> > > type: SCSI
> > > disk: SCSI disk
> > > label: SAMSANG ST1000LM
> > > duid: 2b6c2b5b929f9a55
> > >
> > > 16 partitions:
> > > # size offset fstype [fsize bsize cpg]
> > >
> > > c: 1953525168 0 unused
> > > i: 1758185664 64 4.2BSD 8192 65536 52270 # /mnt/hdd
> >
> > In your fstab, sd0i is marked ar "do not run fsck on it" (last zero in
> > its fstab line). That is bad.
> >
> > Try running fsck on sd0i. It might be that the filesystem is damaged
> > so mount does not like it, but fsck still has a chance to repair it.
> >
> > -Otto
> >
> > >
> > > On Wed, May 31, 2023 at 7:56 PM Otto Moerbeek <otto@drijf.net> wrote:
> > > >
> > > > On Wed, May 31, 2023 at 11:21:15AM +0100, Zé Loff wrote:
> > > >
> > > > > On Wed, May 31, 2023 at 05:25:07PM +0800, Jazzi Hong wrote:
> > > > > > You made the point, thank you Maksim.
> > > > > > I checked /mnt/hdd and nothing there.
> > > > > > > # cat /etc/fstab
> > > > > > 1593ab2ee369c420.b none swap sw
> > > > > > 1593ab2ee369c420.a / ffs rw 1 1
> > > > > > 1593ab2ee369c420.e /var ffs rw,nodev,nosuid 1 2
> > > > > > 2b6c2b5b929f9a55.i /mnt/hdd ffs rw,noexec,nosuid,nodev 0 0
> > > > > > > # doas sysctl hw.disknames
> > > > > > hw.disknames=sd0:2b6c2b5b929f9a55,sd1:1593ab2ee369c420
> > > > > > > # doas fdisk sd0
> > > > > > Disk: sd0 geometry: 121601/255/63 [1953525168 Sectors]
> > > > > > Offset: 0 Signature: 0xAA55
> > > > > > Starting Ending LBA Info:
> > > > > > #: id C H S - C H S [ start: size ]
> > > > > > -------------------------------------------------------------------------------
> > > > > > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > > > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > > > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > > > *3: A6 0 1 2 - 121601 80 63 [ 64: 1953525104 ] OpenBSD
> > > > > > ============
> > > > > > So /dev/sd0 is my NFS share hard disk, and when I tried to mount it manually:
> > > > > > > # doas mount /mnt/hdd
> > > > > > mount_ffs: 2b6c2b5b929f9a55.i on /mnt/hdd: Invalid argument
> > > > > > +++++++++++
> > > > > > The error message mentioned about "Invalid argument" of mount, anything wrong?
> > > > > > So the problem now is why can not mount the drive even it's detected?
> > > > >
> > > > > It can detect the drive, but it doesn't find the i partition. What does
> > > > > disklabel sd0 say?
> > > >
> > > > Or it can find the i partition but mount_ffs does not like it for some reason.
> > > > By convention i partitions are often FAT. But we need the dislabel to
> > > > see what type it has.
> > > >
> > > > -Otto
> > >
> > >
> > >
> > > --
> > > jazzi
> > >
> > > Best Regard,
>
>
>
> --
> jazzi
>
> Best Regard,

Re: [new] sysutils/lsblk

On 2023/05/31 19:12, Benjamin Stürz wrote:
> On 31.05.23 15:29, Laurent Cheylus wrote:
> > On Tue, 30 May 2023 17:28:00 +0200, Benjamin Stürz wrote:
> >
> > > lsblk(8) is a simple tool to list attached block devices.
> > > This specifically is a clone of the one in util-linux.
> > >
> > > This is actually my second attempt of submitting this port.
> > > This time I reworked most of it, fixed all bugs (hopefully :),
> > > incorporated feedback, added a few options and a manual,
> > > and added support for RAID through bio(4).
> >
> > NOK, lsblk SegFault on openbsd-current/amd64 (VM with VirtualBox on Linux/
> > Debian)
> >
> > $ doas /usr/obj/ports/lsblk-1.2.3/fake-amd64/usr/local/sbin/lsblk
> > Segmentation fault
> While trying to install OpenBSD 7.3 on VirtualBox,
> I can't get past "Installing bsd".
> I get a "fatal protection fault in supervisor mode" in OpenBSD.
> Essentially a kernel panic, after which it reboots.
> I'm trying this on Fedora 38.
>
> Unfortunately I can't reproduce your error.
> Could you please run with gdb and tell me where it breaks?
> Or better send me a core dump.

Sending core dumps are problematic, you won't have matching libc due to
the boot-time reordering.


> > Excerpt of my dmesg: only one disk wd0
> >
> > OpenBSD 7.3-current (GENERIC) #1143: Mon May 22 08:36:54 MDT 2023
> > deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
> > real mem = 2130640896 (2031MB)
> > avail mem = 2046590976 (1951MB)
> > random: good seed from bootblocks
> > mpath0 at root
> > scsibus0 at mpath0: 256 targets
> > mainbus0 at root
> > bios0 at mainbus0: SMBIOS rev. 2.5 @ 0xe1000 (10 entries)
> > bios0: vendor innotek GmbH version "VirtualBox" date 12/01/2006
> > bios0: innotek GmbH VirtualBox
> > acpi0 at bios0: ACPI 4.0
> > acpi0: sleep states S0 S5
> > acpi0: tables DSDT FACP APIC SSDT
> > acpi0: wakeup devices
> > acpitimer0 at acpi0: 3579545 Hz, 32 bits
> > acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
> > cpu0 at mainbus0: apid 0 (boot processor)
> > cpu0: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz, 3399.94 MHz, 06-3c-03
> > cpu0:
> > FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,PCID,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,RDRAND,NXE,RDTSCP,LONG,LAHF,ABM,ITSC,FSGSBASE,BMI1,AVX2,BMI2,INVPCID,MELTDOWN
> > cpu0: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 256KB 64b/
> > line 8-way L2 cache, 8MB 64b/line 16-way L3 cache
> > cpu0: smt 0, core 0, package 0
> > (...)
> > cpu0: using Broadwell MDS workaround
> > pci0 at mainbus0 bus 0
> > pchb0 at pci0 dev 0 function 0 "Intel 82441FX" rev 0x02
> > pcib0 at pci0 dev 1 function 0 "Intel 82371SB ISA" rev 0x00
> > pciide0 at pci0 dev 1 function 1 "Intel 82371AB IDE" rev 0x01: DMA,
> > channel 0 configured to compatibility, channel 1 configured to
> > compatibility
> > wd0 at pciide0 channel 0 drive 0: <VBOX HARDDISK>
> > wd0: 128-sector PIO, LBA, 40960MB, 83886080 sectors
> > wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
> >
> > Laurent
> >
>

Re: NFS mounted but shows nothing even df -h has it

Fixed, thanks Otto. I checked this drive and found an error of "BAD
SUPER BLOCK: MAGIC NUMBER WRONG", it's fixed in the end. So I changed
the last option of the fstab file from ZERO to TWO thus the command
fsck can check it automatically. Thank you all for the great help, I
am so happy my little NAS works again. The OpenBSD community is so
helpful and there are so many nice people here, hopefully I can serve
you all a cup of the tea I made from the mountain, actually I am
making tea today.

> $ doas fsck -v -t ffs sd0i
start sd0i wait fsck_ffs sd0i
** /dev/sd0i (sd0i)

BAD SUPER BLOCK: MAGIC NUMBER WRONG

LOOK FOR ALTERNATE SUPERBLOCKS? [Fyn?] y
USING ALTERNATE SUPERBLOCK AT 256

** File system is already clean
** Last Mounted on
** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
** Phase 3 - Check Connectivity
** Phase 4 - Check Reference Counts
** Phase 5 - Check Cyl groups
FREE BLK COUNT(S) WRONG IN SUPERBLK
SALVAGE? [Fyn?] y
32580 files, 68466851 used, 40554992 free (312 frags, 5069335 blocks,
0.0% fragmentation)
UPDATE STANDARD SUPERBLOCK? [Fyn?] y

***** FILE SYSTEM WAS MODIFIED *****

===============================
Check the drive after fsck
===============================
ibox$ doas mount /mnt/hdd
ibox$ ls /mnt/hdd
Book Picture ???????????????????????

On Wed, May 31, 2023 at 10:41 PM Otto Moerbeek <otto@drijf.net> wrote:
>
> On Wed, May 31, 2023 at 10:25:06PM +0800, Jazzi Hong wrote:
>
> > Thanks for all the help. Hereby is the result of command `disklabel
> > sd0`, seems the drive is well detected by failed mounted:
> >
> > > $ doas disklabel sd0
> > # /dev/rsd0c:
> > type: SCSI
> > disk: SCSI disk
> > label: SAMSANG ST1000LM
> > duid: 2b6c2b5b929f9a55
> >
> > 16 partitions:
> > # size offset fstype [fsize bsize cpg]
> >
> > c: 1953525168 0 unused
> > i: 1758185664 64 4.2BSD 8192 65536 52270 # /mnt/hdd
>
> In your fstab, sd0i is marked ar "do not run fsck on it" (last zero in
> its fstab line). That is bad.
>
> Try running fsck on sd0i. It might be that the filesystem is damaged
> so mount does not like it, but fsck still has a chance to repair it.
>
> -Otto
>
> >
> > On Wed, May 31, 2023 at 7:56 PM Otto Moerbeek <otto@drijf.net> wrote:
> > >
> > > On Wed, May 31, 2023 at 11:21:15AM +0100, Zé Loff wrote:
> > >
> > > > On Wed, May 31, 2023 at 05:25:07PM +0800, Jazzi Hong wrote:
> > > > > You made the point, thank you Maksim.
> > > > > I checked /mnt/hdd and nothing there.
> > > > > > # cat /etc/fstab
> > > > > 1593ab2ee369c420.b none swap sw
> > > > > 1593ab2ee369c420.a / ffs rw 1 1
> > > > > 1593ab2ee369c420.e /var ffs rw,nodev,nosuid 1 2
> > > > > 2b6c2b5b929f9a55.i /mnt/hdd ffs rw,noexec,nosuid,nodev 0 0
> > > > > > # doas sysctl hw.disknames
> > > > > hw.disknames=sd0:2b6c2b5b929f9a55,sd1:1593ab2ee369c420
> > > > > > # doas fdisk sd0
> > > > > Disk: sd0 geometry: 121601/255/63 [1953525168 Sectors]
> > > > > Offset: 0 Signature: 0xAA55
> > > > > Starting Ending LBA Info:
> > > > > #: id C H S - C H S [ start: size ]
> > > > > -------------------------------------------------------------------------------
> > > > > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > > *3: A6 0 1 2 - 121601 80 63 [ 64: 1953525104 ] OpenBSD
> > > > > ============
> > > > > So /dev/sd0 is my NFS share hard disk, and when I tried to mount it manually:
> > > > > > # doas mount /mnt/hdd
> > > > > mount_ffs: 2b6c2b5b929f9a55.i on /mnt/hdd: Invalid argument
> > > > > +++++++++++
> > > > > The error message mentioned about "Invalid argument" of mount, anything wrong?
> > > > > So the problem now is why can not mount the drive even it's detected?
> > > >
> > > > It can detect the drive, but it doesn't find the i partition. What does
> > > > disklabel sd0 say?
> > >
> > > Or it can find the i partition but mount_ffs does not like it for some reason.
> > > By convention i partitions are often FAT. But we need the dislabel to
> > > see what type it has.
> > >
> > > -Otto
> >
> >
> >
> > --
> > jazzi
> >
> > Best Regard,



--
jazzi

Best Regard,

Update: ruby-haml 6.1.1

Update to the current version of haml, as the current ports version was
over a decade old. Changelog at
https://github.com/haml/haml/blob/main/CHANGELOG.md

From a ports perspective, the main change is that the port now has 3
dependencies, 1 one of which was not in ports (ruby-temple). I've
attached a port for that. haml now includes a C extension for
improved performance (which is now a good reason to have haml in
ports). Also, haml stopped shipping tests in the gem.

OK for import of ruby-temple and update of ruby-haml?

Thanks,
Jeremy

Index: Makefile
===================================================================
RCS file: /cvs/ports/textproc/ruby-haml/Makefile,v
retrieving revision 1.19
diff -u -p -r1.19 Makefile
--- Makefile 11 Mar 2022 20:03:27 -0000 1.19
+++ Makefile 31 May 2023 20:45:59 -0000
@@ -1,23 +1,20 @@
COMMENT= HTML Abstraction Markup Language for Ruby

-DISTNAME= haml-3.1.7
-REVISION = 1
+DISTNAME= haml-6.1.1
CATEGORIES= textproc

-HOMEPAGE= http://haml.hamptoncatlin.com/
+HOMEPAGE= https://haml.info/

# MIT
PERMIT_PACKAGE= Yes

MODULES= lang/ruby

-CONFIGURE_STYLE= ruby gem
+CONFIGURE_STYLE= ruby gem ext

-MODRUBY_TEST= rake
-
-# Remove tests that depend on Rails
-pre-test:
- rm ${WRKSRC}/test/haml/template_test.rb \
- ${WRKSRC}/test/haml/helper_test.rb
+RUN_DEPENDS = devel/ruby-thor,${MODRUBY_FLAVOR} \
+ devel/ruby-temple,${MODRUBY_FLAVOR}>=0.8.2 \
+ devel/ruby-tilt,${MODRUBY_FLAVOR}
+BUILD_DEPENDS = ${RUN_DEPENDS}

.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/textproc/ruby-haml/distinfo,v
retrieving revision 1.6
diff -u -p -r1.6 distinfo
--- distinfo 14 Jan 2013 18:42:24 -0000 1.6
+++ distinfo 31 May 2023 20:42:05 -0000
@@ -1,2 +1,2 @@
-SHA256 (haml-3.1.7.gem) = 1qfKtCNMyYmArDsl8bme/tLsUKy9C2shO2iFbRTom8c=
-SIZE (haml-3.1.7.gem) = 373248
+SHA256 (haml-6.1.1.gem) = yOSOJtlPEUClqmz5ebWOjaMUx/SKXgFGSFgvtxkvme0=
+SIZE (haml-6.1.1.gem) = 76288
Index: patches/patch-test_test_helper_rb
===================================================================
RCS file: patches/patch-test_test_helper_rb
diff -N patches/patch-test_test_helper_rb
--- patches/patch-test_test_helper_rb 11 Mar 2022 20:03:27 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,17 +0,0 @@
---- test/test_helper.rb.orig Fri Jan 11 11:06:33 2013
-+++ test/test_helper.rb Fri Jan 11 11:07:27 2013
-@@ -1,14 +1,9 @@
- lib_dir = File.dirname(__FILE__) + '/../lib'
--require File.dirname(__FILE__) + '/linked_rails'
-
- require 'test/unit'
- require 'fileutils'
- $:.unshift lib_dir unless $:.include?(lib_dir)
- require 'haml'
--
--require 'haml/template'
--Haml::Template.options[:ugly] = false
--Haml::Template.options[:format] = :xhtml
-
- class Test::Unit::TestCase
- def assert_warning(message)
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/textproc/ruby-haml/pkg/PLIST,v
retrieving revision 1.8
diff -u -p -r1.8 PLIST
--- pkg/PLIST 11 Mar 2022 20:03:27 -0000 1.8
+++ pkg/PLIST 31 May 2023 20:46:40 -0000
@@ -1,467 +1,83 @@
${GEM_BIN}/haml${GEM_BIN_SUFFIX}
-${GEM_BIN}/html2haml${GEM_BIN_SUFFIX}
${GEM_LIB}/cache/${DISTNAME}.gem
${GEM_LIB}/gems/${DISTNAME}/
+${GEM_LIB}/gems/${DISTNAME}/.github/
+${GEM_LIB}/gems/${DISTNAME}/.github/FUNDING.yml
+${GEM_LIB}/gems/${DISTNAME}/.github/workflows/
+${GEM_LIB}/gems/${DISTNAME}/.github/workflows/test.yml
+${GEM_LIB}/gems/${DISTNAME}/.gitignore
${GEM_LIB}/gems/${DISTNAME}/.yardopts
-${GEM_LIB}/gems/${DISTNAME}/CONTRIBUTING
+${GEM_LIB}/gems/${DISTNAME}/CHANGELOG.md
+${GEM_LIB}/gems/${DISTNAME}/FAQ.md
+${GEM_LIB}/gems/${DISTNAME}/Gemfile
${GEM_LIB}/gems/${DISTNAME}/MIT-LICENSE
${GEM_LIB}/gems/${DISTNAME}/README.md
-${GEM_LIB}/gems/${DISTNAME}/REVISION
+${GEM_LIB}/gems/${DISTNAME}/REFERENCE.md
${GEM_LIB}/gems/${DISTNAME}/Rakefile
-${GEM_LIB}/gems/${DISTNAME}/VERSION
-${GEM_LIB}/gems/${DISTNAME}/VERSION_NAME
${GEM_LIB}/gems/${DISTNAME}/bin/
-${GEM_LIB}/gems/${DISTNAME}/bin/haml
-${GEM_LIB}/gems/${DISTNAME}/bin/html2haml
-${GEM_LIB}/gems/${DISTNAME}/extra/
-${GEM_LIB}/gems/${DISTNAME}/extra/update_watch.rb
-${GEM_LIB}/gems/${DISTNAME}/init.rb
+${GEM_LIB}/gems/${DISTNAME}/bin/bench
+${GEM_LIB}/gems/${DISTNAME}/bin/console
+${GEM_LIB}/gems/${DISTNAME}/bin/ruby
+${GEM_LIB}/gems/${DISTNAME}/bin/setup
+${GEM_LIB}/gems/${DISTNAME}/bin/stackprof
+${GEM_LIB}/gems/${DISTNAME}/bin/test
+${GEM_LIB}/gems/${DISTNAME}/exe/
+${GEM_LIB}/gems/${DISTNAME}/exe/haml
+${GEM_LIB}/gems/${DISTNAME}/haml.gemspec
${GEM_LIB}/gems/${DISTNAME}/lib/
${GEM_LIB}/gems/${DISTNAME}/lib/haml/
${GEM_LIB}/gems/${DISTNAME}/lib/haml.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/buffer.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/ambles.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/attribute_builder.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/attribute_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/attribute_parser.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/cli.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/
${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/children_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/comment_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/doctype_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/script_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/silent_script_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/compiler/tag_compiler.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/dynamic_merger.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/engine.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/error.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/exec.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/escape.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/escape_any.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/
${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/helpers/
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/base.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/cdata.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/coffee.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/css.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/erb.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/escaped.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/javascript.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/less.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/markdown.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/plain.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/preserve.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/ruby.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/sass.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/scss.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/text_base.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/filters/tilt_base.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/force_escape.rb
+@so ${GEM_LIB}/gems/${DISTNAME}/lib/haml/haml.so
${GEM_LIB}/gems/${DISTNAME}/lib/haml/helpers.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/helpers/action_view_extensions.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/helpers/action_view_mods.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/helpers/rails_323_textarea_fix.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/helpers/xss_mods.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/html/
${GEM_LIB}/gems/${DISTNAME}/lib/haml/html.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/html/erb.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/identity.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/object_ref.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/parser.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/rails_helpers.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/rails_template.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/railtie.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/root.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/shared.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/template/
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/ruby_expression.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/string_splitter.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/template.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/template/options.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/template/patch.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/haml/template/plugin.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/temple_line_counter.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/util.rb
${GEM_LIB}/gems/${DISTNAME}/lib/haml/version.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/sass/
-${GEM_LIB}/gems/${DISTNAME}/lib/sass.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/sass/plugin.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/sass/rails2_shim.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/sass/rails3_shim.rb
-${GEM_LIB}/gems/${DISTNAME}/rails/
-${GEM_LIB}/gems/${DISTNAME}/rails/init.rb
-${GEM_LIB}/gems/${DISTNAME}/test/
-${GEM_LIB}/gems/${DISTNAME}/test/benchmark.rb
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.0.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.0.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.1.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.1.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.2.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.2.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.3.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-2.3.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-3.0.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-3.0.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-3.1.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-3.1.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-3.2.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-3.2.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-xss-2.3.x
-${GEM_LIB}/gems/${DISTNAME}/test/gemfiles/Gemfile.rails-xss-2.3.x.lock
-${GEM_LIB}/gems/${DISTNAME}/test/haml/
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/LICENSE
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/README.md
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/lua_haml_spec.lua
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/perl_haml_test.pl
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/ruby_haml_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml-spec/tests.json
-${GEM_LIB}/gems/${DISTNAME}/test/haml/engine_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/erb/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/erb/_av_partial_1.erb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/erb/_av_partial_2.erb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/erb/action_view.erb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/erb/standard.erb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/helper_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/html2haml/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/html2haml/erb_tests.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/html2haml_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/markaby/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/markaby/standard.mab
-${GEM_LIB}/gems/${DISTNAME}/test/haml/mocks/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/mocks/article.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/content_for_layout.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/eval_suppressed.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/filters.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/helpers.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/helpful.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/just_stuff.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/list.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/nuke_inner_whitespace.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/nuke_outer_whitespace.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/original_engine.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/partial_layout.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/partials.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/render_layout.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/silent_script.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/standard.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/tag_parsing.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/very_basic.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/results/whitespace_handling.xhtml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/spec/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/spec/README.md
-${GEM_LIB}/gems/${DISTNAME}/test/haml/spec/lua_haml_spec.lua
-${GEM_LIB}/gems/${DISTNAME}/test/haml/spec/ruby_haml_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/spec/tests.json
-${GEM_LIB}/gems/${DISTNAME}/test/haml/spec_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/template_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_av_partial_1.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_av_partial_1_ugly.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_av_partial_2.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_av_partial_2_ugly.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_layout.erb
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_layout_for_partial.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_partial.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/_text_area.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/action_view.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/action_view_ugly.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/breakage.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/content_for_layout.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/eval_suppressed.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/filters.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/helpers.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/helpful.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/just_stuff.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/list.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/nuke_inner_whitespace.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/nuke_outer_whitespace.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/original_engine.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/partial_layout.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/partialize.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/partials.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/render_layout.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/silent_script.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/standard.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/standard_ugly.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/tag_parsing.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/very_basic.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/templates/whitespace_handling.haml
-${GEM_LIB}/gems/${DISTNAME}/test/haml/util_test.rb
-${GEM_LIB}/gems/${DISTNAME}/test/linked_rails.rb
-${GEM_LIB}/gems/${DISTNAME}/test/test_helper.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/CONTRIBUTING
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/MIT-LICENSE
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/README.md
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/Rakefile
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/TODO
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/VERSION
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/VERSION_NAME
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/bin/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/bin/sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/bin/sass-convert
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/bin/scss
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/doc-src/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/doc-src/FAQ.md
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/doc-src/INDENTED_SYNTAX.md
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/doc-src/SASS_CHANGELOG.md
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/doc-src/SASS_REFERENCE.md
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/doc-src/SCSS_FOR_SASS_USERS.md
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/ext/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/ext/extconf.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/extra/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/extra/update_watch.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/init.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores/base.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores/chain.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores/filesystem.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores/memory.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/cache_stores/null.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/callbacks.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/css.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/engine.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/environment.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/error.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/exec.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/importers/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/importers.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/importers/base.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/importers/filesystem.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/less.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/logger/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/logger.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/logger/base.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/logger/log_level.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/compiler.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/configuration.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/generic.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/merb.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/rack.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/rails.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/plugin/staleness_checker.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/railtie.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/repl.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/root.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/bool.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/color.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/css_lexer.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/css_parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/funcall.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/functions.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/interpolation.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/lexer.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/list.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/literal.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/number.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/operation.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/string.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/string_interpolation.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/unary_operation.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/script/variable.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/css_parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/rx.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/sass_parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/script_lexer.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/script_parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/scss/static_parser.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector/abstract_sequence.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector/comma_sequence.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector/sequence.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector/simple.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/selector/simple_sequence.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/shared.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/charset_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/comment_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/debug_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/directive_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/each_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/extend_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/for_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/function_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/if_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/import_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/media_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/mixin_def_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/mixin_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/prop_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/return_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/root_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/rule_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/variable_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/base.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/check_nesting.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/convert.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/cssize.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/deep_copy.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/perform.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/set_options.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/visitors/to_css.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/warn_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/tree/while_node.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/util/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/util.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/util/subset_map.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/lib/sass/version.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/rails/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/rails/init.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/sass.gemspec
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/Gemfile
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/Gemfile.lock
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/cache_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/callbacks_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/conversion_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/css2sass_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/data/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/data/hsl-rgb.txt
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/engine_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/extend_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/fixtures/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/fixtures/test_staleness_check_across_importers.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/fixtures/test_staleness_check_across_importers.scss
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/functions_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/importer_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/less_conversion_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/logger_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/mock_importer.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_results/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_results/more1.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_results/more1_with_line_comments.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_results/more_import.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_templates/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_templates/_more_partial.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_templates/more1.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/more_templates/more_import.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/plugin_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/alt.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/basic.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/compact.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/complex.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/compressed.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/expanded.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/if.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/import.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/import_charset.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/import_charset_1_8.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/import_charset_ibm866.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/line_numbers.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/mixins.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/multiline.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/nested.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/options.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/parent_ref.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/script.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/scss_import.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/scss_importee.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/subdir/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/subdir/nested_subdir/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/subdir/nested_subdir/nested_subdir.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/subdir/subdir.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/units.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/warn.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/results/warn_imported.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/script_conversion_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/script_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/scss/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/scss/css_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/scss/rx_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/scss/scss_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/scss/test_helper.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/_imported_charset_ibm866.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/_imported_charset_utf8.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/_partial.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/alt.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/basic.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/bork1.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/bork2.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/bork3.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/bork4.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/bork5.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/compact.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/complex.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/compressed.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/expanded.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/if.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/import.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/import_charset.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/import_charset_1_8.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/import_charset_ibm866.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/importee.less
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/importee.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/line_numbers.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/mixin_bork.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/mixins.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/multiline.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_bork1.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_bork2.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_bork3.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_bork4.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_bork5.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_import.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/nested_mixin_bork.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/options.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/parent_ref.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/script.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/scss_import.scss
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/scss_importee.scss
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/subdir/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/subdir/nested_subdir/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/subdir/nested_subdir/_nested_partial.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/subdir/nested_subdir/nested_subdir.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/subdir/subdir.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/units.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/warn.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/templates/warn_imported.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/test_helper.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/util/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/util/subset_map_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/sass/util_test.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/test/test_helper.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/Gemfile
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/LICENSE
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/README.markdown
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/Rakefile
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/example.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/fssm.gemspec
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/fsevents.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/inotify.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/polling.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/rbfsevent.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/rubycocoa/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/backends/rubycocoa/fsevents.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/monitor.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/path.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/pathname.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/state/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/state/directory.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/state/file.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/support.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/tree.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/lib/fssm/version.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/prof-cache.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/prof-fssm-pathname.html
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/prof-pathname-rubinius.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/prof-pathname.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/prof-plain-pathname.html
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/profile/prof.html
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/count_down_latch.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/monitor_spec.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/path_spec.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/duck/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/duck/quack.txt
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/file.css
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/file.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/file.yml
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/moo/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/root/moo/cow.txt
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/vendor/fssm/spec/spec_helper.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/callbacks.rb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/fulldoc/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/fulldoc/html/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/fulldoc/html/css/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/fulldoc/html/css/common.sass
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/layout/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/layout/html/
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/default/layout/html/footer.erb
-${GEM_LIB}/gems/${DISTNAME}/vendor/sass/yard/inherited_hash.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/haml/whitespace.rb
${GEM_LIB}/specifications/${DISTNAME}.gemspec

Update: ruby-puma 6.3.0

Update to the newest version of Puma, released today. Changelog at
https://github.com/puma/puma/blob/master/History.md

Tested on amd64. I plan to commit in a couple days unless I hear
objections.

Thanks,
Jeremy

Index: Makefile
===================================================================
RCS file: /cvs/ports/www/ruby-puma/Makefile,v
retrieving revision 1.14
diff -u -p -r1.14 Makefile
--- Makefile 25 Nov 2022 00:20:16 -0000 1.14
+++ Makefile 31 May 2023 20:29:39 -0000
@@ -1,6 +1,6 @@
COMMENT = simple, fast, threaded webserver for rack applications

-DISTNAME = puma-6.0.0
+DISTNAME = puma-6.3.0
CATEGORIES = www

HOMEPAGE = https://puma.io/
Index: distinfo
===================================================================
RCS file: /cvs/ports/www/ruby-puma/distinfo,v
retrieving revision 1.10
diff -u -p -r1.10 distinfo
--- distinfo 25 Nov 2022 00:20:16 -0000 1.10
+++ distinfo 31 May 2023 20:29:42 -0000
@@ -1,2 +1,2 @@
-SHA256 (puma-6.0.0.gem) = KvMRCVdPIlog/y1l5SvT9F4edYtaRa5Q6WLli2uvS/k=
-SIZE (puma-6.0.0.gem) = 218112
+SHA256 (puma-6.3.0.gem) = sONbT+euRAI3qf8WR8a7JSocCVH/NWAgZw0uYsGu7uw=
+SIZE (puma-6.3.0.gem) = 225792
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/www/ruby-puma/pkg/PLIST,v
retrieving revision 1.10
diff -u -p -r1.10 PLIST
--- pkg/PLIST 25 Nov 2022 00:20:16 -0000 1.10
+++ pkg/PLIST 31 May 2023 20:30:30 -0000
@@ -64,6 +64,7 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/puma/min
${GEM_LIB}/gems/${DISTNAME}/lib/puma/null_io.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/plugin/
${GEM_LIB}/gems/${DISTNAME}/lib/puma/plugin.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/puma/plugin/systemd.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/plugin/tmp_restart.rb
@so ${GEM_LIB}/gems/${DISTNAME}/lib/puma/puma_http11.so
${GEM_LIB}/gems/${DISTNAME}/lib/puma/rack/
@@ -73,10 +74,10 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/puma/rac
${GEM_LIB}/gems/${DISTNAME}/lib/puma/reactor.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/request.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/runner.rb
+${GEM_LIB}/gems/${DISTNAME}/lib/puma/sd_notify.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/server.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/single.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/state_file.rb
-${GEM_LIB}/gems/${DISTNAME}/lib/puma/systemd.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/thread_pool.rb
${GEM_LIB}/gems/${DISTNAME}/lib/puma/util.rb
${GEM_LIB}/gems/${DISTNAME}/lib/rack/

Re: High Interrupt After 7.3 Upgrade

On Wed, May 31, 2023 at 5:27 PM Stuart Henderson <stu.lists@spacehopper.org>
wrote:

> On 2023-05-31, Mark (obsd) <openbsd-list@nerdish.us> wrote:
> > Hi Chris,
> >
> > On Tue, May 30, 2023 at 8:59 AM Chris Cappuccio <chris@nmedia.net>
> wrote:
> >
> >> Samuel Jayden [samueljaydan1994@gmail.com] wrote:
> >> > Hi again,
> >> >
> >> > Just for the record:
> >> > I've downgraded to OpenBSD 7.2 (reinstalled) and everything is working
> >> like
> >> > a charm again.
> >> > I don't know what is wrong with 7.3 but ipi interrupt rate is too much
> >> and
> >> > somehow OpenBSD performance is too bad..
> >> > Thanks for reading.
> >> >
> >>
> >> Sounds like you are using 'systat' to measure interrupts. This is a bug
> >> in systat was was fixed in 7.3. Here is Scott Cheloha's message from
> that
> >> fix:
> >>
> >> "systat(1): vmstat: measure elapsed time with clock_gettime(2) instead
> of
> >> ticks
> >>
> >> The vmstat view in systat(1) should not use statclock() ticks to count
> >> elapsed time. First, ticks are low resolution. Second, the statclock
> >> is sometimes randomized, so each tick is not necessarily of equal
> >> length. Third, we're counting ticks from every CPU on the system, so
> >> every rate in the view is divided by the number of CPUs. For example,
> >> on an amd64 system with 8 CPUs you currently see:
> >>
> >> 200 clock
> >>
> >> ... when the true clock interrupt rate on that system is 1600.
> >>
> >> Instead, measure elapsed time with clock_gettime(2). Use CLOCK_UPTIME
> >> here so we exclude time when the system is suspended. With this
> >> change we no longer need "stathz" or "hertz". We can also get rid of
> >> the anachronistic secondary clock failure test.
> >>
> >>
> >>
> > I'm not the OP, but that's interesting to me because I'm wondering if
> it's
> > why Prometheus'
> > node_exporter from packages is reporting wildly wrong CPU stats on 7.3
> that
> > don't at all
> > match what you'd expect when comparing top/htop output? It was fine prior
> > to upgrading
> > to 7.3, but I've just left digging into it on the back burner due to
> other
> > priorities.
>
> That's a different issue, it was fixed in -current - I've just merged it to
> -stable so updated packages should show up in a day or two.
>
>
> 7.3 interrupt ( Intel(R) Celeron(R) J6412 )

v6-fw# vmstat -i
interrupt total rate
irq96/acpi0 1 0
irq145/inteldrm0 497 0
irq97/xhci0 3 0
irq98/ahci0 1873806 0
irq114/igc0:0 157799531 50
irq115/igc0:1 194120194 61
irq116/igc0:2 148272908 47
irq117/igc0:3 159077128 50
irq118/igc0 2 0
irq119/igc1:0 158925348 50
irq120/igc1:1 181916246 58
irq121/igc1:2 155586734 49
irq122/igc1:3 170737329 54
irq123/igc1 2 0
irq129/igc3:0 2126 0
irq130/igc3:1 540117832 172
irq131/igc3:2 568886 0
irq132/igc3:3 909270099 290
irq133/igc3 13 0
irq0/clock 2505321992 799
irq0/ipi 5601964631 1788
Total 10885555308 3475

I did not notice performance issue here,
but maybe irq0/ipi 5601964631 1788
is bad
i did noticed some unexpected kernel_lock jittering the traffic ~15ms

--
--
---------------------------------------------------------------------------------------------------------------------
Knowing is not enough; we must apply. Willing is not enough; we must do

Re: High Interrupt After 7.3 Upgrade

On 2023-05-31, Mark (obsd) <openbsd-list@nerdish.us> wrote:
> Hi Chris,
>
> On Tue, May 30, 2023 at 8:59 AM Chris Cappuccio <chris@nmedia.net> wrote:
>
>> Samuel Jayden [samueljaydan1994@gmail.com] wrote:
>> > Hi again,
>> >
>> > Just for the record:
>> > I've downgraded to OpenBSD 7.2 (reinstalled) and everything is working
>> like
>> > a charm again.
>> > I don't know what is wrong with 7.3 but ipi interrupt rate is too much
>> and
>> > somehow OpenBSD performance is too bad..
>> > Thanks for reading.
>> >
>>
>> Sounds like you are using 'systat' to measure interrupts. This is a bug
>> in systat was was fixed in 7.3. Here is Scott Cheloha's message from that
>> fix:
>>
>> "systat(1): vmstat: measure elapsed time with clock_gettime(2) instead of
>> ticks
>>
>> The vmstat view in systat(1) should not use statclock() ticks to count
>> elapsed time. First, ticks are low resolution. Second, the statclock
>> is sometimes randomized, so each tick is not necessarily of equal
>> length. Third, we're counting ticks from every CPU on the system, so
>> every rate in the view is divided by the number of CPUs. For example,
>> on an amd64 system with 8 CPUs you currently see:
>>
>> 200 clock
>>
>> ... when the true clock interrupt rate on that system is 1600.
>>
>> Instead, measure elapsed time with clock_gettime(2). Use CLOCK_UPTIME
>> here so we exclude time when the system is suspended. With this
>> change we no longer need "stathz" or "hertz". We can also get rid of
>> the anachronistic secondary clock failure test.
>>
>>
>>
> I'm not the OP, but that's interesting to me because I'm wondering if it's
> why Prometheus'
> node_exporter from packages is reporting wildly wrong CPU stats on 7.3 that
> don't at all
> match what you'd expect when comparing top/htop output? It was fine prior
> to upgrading
> to 7.3, but I've just left digging into it on the back burner due to other
> priorities.

That's a different issue, it was fixed in -current - I've just merged it to
-stable so updated packages should show up in a day or two.

Re: certbot missing module pkg_resources

On 5/31/23 16:06, Adriano Barbosa wrote:
> Hi.
> I'm getting the error below while trying to run certbot from ports on
> 7.3. It runs after installing py3-setuptools. Should it be added in
> RUN_DEPENDS?

From https://setuptools.pypa.io/en/latest/pkg_resources.html

> Use of |pkg_resources| is deprecated in favor of |importlib.resources|
<https://docs.python.org/3/library/importlib.resources.html#module-importlib.resources>,
|importlib.metadata|
<https://docs.python.org/3/library/importlib.metadata.html#module-importlib.metadata>
and their backports (importlib_resources
<https://pypi.org/project/importlib_resources>, importlib_metadata
<https://pypi.org/project/importlib_metadata>). Users should refrain
from new usage of |pkg_resources| and should work to port to
importlib-based solutions.

Someone with enough enthusiasm should tell upstream.

OK aisha@ to add RUN_DEPENDS.

> Obrigado!
> --
> Adriano
>
>
> $ certbot --version
> Traceback (most recent call last):
> File "/usr/local/bin/certbot", line 5, in <module>
> from certbot.main import main
> File "/usr/local/lib/python3.10/site-packages/certbot/main.py", line 6, in <module>
> from certbot._internal import main as internal_main
> File "/usr/local/lib/python3.10/site-packages/certbot/_internal/main.py", line 28, in <module>
> from certbot import configuration
> File "/usr/local/lib/python3.10/site-packages/certbot/configuration.py", line 11, in <module>
> from certbot import util
> File "/usr/local/lib/python3.10/site-packages/certbot/util.py", line 26, in <module>
> from certbot._internal import constants
> File "/usr/local/lib/python3.10/site-packages/certbot/_internal/constants.py", line 6, in <module>
> import pkg_resources
> ModuleNotFoundError: No module named 'pkg_resources'
>

certbot missing module pkg_resources

Hi.
I'm getting the error below while trying to run certbot from ports on
7.3. It runs after installing py3-setuptools. Should it be added in
RUN_DEPENDS?

Obrigado!
--
Adriano


$ certbot --version
Traceback (most recent call last):
File "/usr/local/bin/certbot", line 5, in <module>
from certbot.main import main
File "/usr/local/lib/python3.10/site-packages/certbot/main.py", line 6, in <module>
from certbot._internal import main as internal_main
File "/usr/local/lib/python3.10/site-packages/certbot/_internal/main.py", line 28, in <module>
from certbot import configuration
File "/usr/local/lib/python3.10/site-packages/certbot/configuration.py", line 11, in <module>
from certbot import util
File "/usr/local/lib/python3.10/site-packages/certbot/util.py", line 26, in <module>
from certbot._internal import constants
File "/usr/local/lib/python3.10/site-packages/certbot/_internal/constants.py", line 6, in <module>
import pkg_resources
ModuleNotFoundError: No module named 'pkg_resources'

[Maintainer Update] lang/erlang/25 25.3.2.1

Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/erlang/25/Makefile,v
retrieving revision 1.17
diff -u -p -r1.17 Makefile
--- Makefile 31 May 2023 15:17:33 -0000 1.17
+++ Makefile 31 May 2023 19:34:59 -0000
@@ -3,14 +3,13 @@ BROKEN-alpha= beam/erl_process.c:6692: i
COMMENT-main= ${COMMENT}
COMMENT-wx= WxWidgets bindings for Erlang

-V= 25.3.2
+V= 25.3.2.1
PORTROACH= limit:^OTP-25\.
DISTNAME= otp_src_$V
PKGNAME= erlang-$V
PKGNAME-main= erlang-$V
PKGNAME-wx= erlang-wx-$V
EPOCH= 0
-REVISION= 0

VERSION_SPEC= >=25v0,<26v0
PKGSPEC-main= erlang-${VERSION_SPEC}
@@ -64,7 +63,7 @@ AUTOCONF_VERSION = 2.69
ERL_VERSIONS= \
ASN1_VSN 5.0.21 \
COMMON_TEST_VSN 1.24 \
-COMPILER_VSN 8.2.6 \
+COMPILER_VSN 8.2.6.1 \
CRYPTO_VSN 5.1.4 \
DEBUGGER_VSN 5.3.1 \
DIALYZER_VSN 5.0.5 \
@@ -93,12 +92,12 @@ SASL_VSN 4.2 \
SNMP_VSN 5.13.5 \
SSH_VSN 4.15.3 \
SSL_VSN 10.9.1 \
-STDLIB_VSN 4.3.1 \
+STDLIB_VSN 4.3.1.1 \
SYNTAX_TOOLS_VSN 3.0.1 \
TFTP_VSN 1.0.4 \
TOOLS_VSN 3.5.3 \
WX_VSN 2.2.2 \
-XMERL_VSN 1.3.31 \
-ERTS_VSN 13.2.2
+XMERL_VSN 1.3.31.1 \
+ERTS_VSN 13.2.2.1

.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/lang/erlang/25/distinfo,v
retrieving revision 1.9
diff -u -p -r1.9 distinfo
--- distinfo 17 May 2023 13:39:46 -0000 1.9
+++ distinfo 31 May 2023 19:34:59 -0000
@@ -1,4 +1,4 @@
-SHA256 (otp_doc_man_25.3.2.tar.gz) = H5hRYz30VrMZ9rxw1vkDXFrF1j0ZN+GnlL2MiIs5Eq8=
-SHA256 (otp_src_25.3.2.tar.gz) = rtTkcmzcWHq4IMg3nWPlEeRqGxzAxZ1qcgtRrmJbJRA=
-SIZE (otp_doc_man_25.3.2.tar.gz) = 1717601
-SIZE (otp_src_25.3.2.tar.gz) = 103757566
+SHA256 (otp_doc_man_25.3.2.1.tar.gz) = U3HxTHcTk4jsMWmVO9HJAQYAMx5R9fd8zUa5vdJbiHA=
+SHA256 (otp_src_25.3.2.1.tar.gz) = GX5ZfzIWt4/7j1XVZjGTFRaUxHSJZTqwRHL33Er8cHk=
+SIZE (otp_doc_man_25.3.2.1.tar.gz) = 1719762
+SIZE (otp_src_25.3.2.1.tar.gz) = 103801230
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/lang/erlang/25/pkg/PLIST-main,v
retrieving revision 1.10
diff -u -p -r1.10 PLIST-main
--- pkg/PLIST-main 31 May 2023 15:17:34 -0000 1.10
+++ pkg/PLIST-main 31 May 2023 19:34:59 -0000
@@ -2,7 +2,7 @@
@option is-branch
@conflict erlang->=25,<26
@conflict erlang->=25v0,<26v0
-@conflict erlang-wx->=25,<25.3.2
+@conflict erlang-wx->=25,<25.3.2.1
@pkgpath lang/erlang/21,-main
@newgroup _epmd:888
@newuser _epmd:888:_epmd::Erlang EPMD Account:/var/empty:/sbin/nologin
Updates lang/erlang/25 to 25.3.2.1

Bugfix Release, which I might have skipped, if it weren't for
a fix for an OpenBSD issue:

OTP-18561 Application(s): erts

Fixed a crash during tracing on certain platforms that
cannot use the machine stack for Erlang code (mainly
OpenBSD and Linux with musl).

https://github.com/erlang/otp/releases/tag/OTP-25.3.2.1

Tests pass, dependent ports all build, test and work fine
on amd64.

update: net/serf

This patch updates net/serf to 1.3.10. This is a bug fix release.
The Subversion regression test suite is still passing for me on OpenBSD
with this release. Two patches can be dropped from the port.

Upstream changelog:

Changes in version 1.3.10:
- Support for OpenSSL 3
- Fix issue #171: Win32: Running tests fails with "no OPENSSL_Applink" error
- Fix issue #194: Win32: Linking error when building against OpenSSL 1.1+
- Fix issue #198: OpenSSL BIO control method incorrectly handles
unknown requests
- Fix issue #202: SSL tests are not passing with OpenSSL 3
- Fix error handling when reading the outgoing request body
- Fix handling of invalid chunk lengths in the dechunk bucket
- Fix an endless loop in the deflate bucket with truncated input
- Fix BIO control handlers to support BIO_CTRL_EOF
- Fix a CRT mismatch issue caused by using certain OpenSSL functions
- Build changes to support VS2017, VS2019 and VS2022
- Build changes to support Python 3

ok?

diff /usr/ports
commit - 578d62534f167e4cebe7e11ab2e6cb042c678454
path + /usr/ports
blob - a153994ff81451346b919bc236e1d6c430fe9990
file + net/serf/Makefile
--- net/serf/Makefile
+++ net/serf/Makefile
@@ -1,6 +1,5 @@
COMMENT = high performance HTTP client library
-DISTNAME = serf-1.3.9
-REVISION = 0
+DISTNAME = serf-1.3.10
SHARED_LIBS = serf-1 1.0 # 1.3.0
CATEGORIES = net
HOMEPAGE = https://serf.apache.org/
blob - 81de8b41324ab7882f45acfbe9667f3b2f63f5ac
file + net/serf/distinfo
--- net/serf/distinfo
+++ net/serf/distinfo
@@ -1,2 +1,2 @@
-SHA256 (serf-1.3.9.tar.bz2) = VJwtIcV3qKnARQ+stcyoCfJlkfBI5GZVIkCUe996h8w=
-SIZE (serf-1.3.9.tar.bz2) = 145132
+SHA256 (serf-1.3.10.tar.bz2) = voHvCLqiUW7Np2p3rffe97wyJ+61eLmjO0X3tB3AZOY=
+SIZE (serf-1.3.10.tar.bz2) = 147744
blob - 469c70877ee0877981ddbff5cba96a515b5fda2b
file + /dev/null
--- net/serf/patches/patch-SConstruct
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: SConstruct
---- SConstruct.orig
-+++ SConstruct
-@@ -166,7 +166,7 @@ env.Append(BUILDERS = {
- match = re.search('SERF_MAJOR_VERSION ([0-9]+).*'
- 'SERF_MINOR_VERSION ([0-9]+).*'
- 'SERF_PATCH_VERSION ([0-9]+)',
-- env.File('serf.h').get_contents(),
-+ env.File('serf.h').get_contents().decode('utf-8'),
- re.DOTALL)
- MAJOR, MINOR, PATCH = [int(x) for x in match.groups()]
- env.Append(MAJOR=str(MAJOR))
-@@ -183,7 +183,7 @@ CALLOUT_OKAY = not (env.GetOption('clean') or env.GetO
-
- unknown = opts.UnknownVariables()
- if unknown:
-- print 'Warning: Used unknown variables:', ', '.join(unknown.keys())
-+ print('Warning: Used unknown variables:', ', '.join(unknown.keys()))
-
- apr = str(env['APR'])
- apu = str(env['APU'])
blob - c49cf4ab8a80e53a5a74f7500026c5eb3d117f05
file + /dev/null
--- net/serf/patches/patch-build_check_py
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: build/check.py
---- build/check.py.orig
-+++ build/check.py
-@@ -52,16 +52,16 @@ if __name__ == '__main__':
-
- # Find test responses and run them one by one
- for case in glob.glob(testdir + "/testcases/*.response"):
-- print "== Testing %s ==" % (case)
-+ print("== Testing %s ==" % (case))
- try:
- subprocess.check_call([SERF_RESPONSE_EXE, case])
-- except subprocess.CalledProcessError:
-- print "ERROR: test case %s failed" % (case)
-+ except subprocess.CalledProcessError as x:
-+ print("ERROR: test failed in '%s', exit code=%d" % (x.cmd, x.returncode))
- sys.exit(1)
-
-- print "== Running the unit tests =="
-+ print("== Running the unit tests ==")
- try:
- subprocess.check_call(TEST_ALL_EXE)
-- except subprocess.CalledProcessError:
-- print "ERROR: test(s) failed in test_all"
-+ except subprocess.CalledProcessError as x:
-+ print("ERROR: test(s) failed in '%s', exit code=%d" % (x.cmd, x.returncode))
- sys.exit(1)

groups new

0
C Japan
P Niigata (Echigo)
F 4 times a year
O Echigo BSD Users Group
M inquiry@ebug.jp
U https://www.ebug.jp
N *BSD

Re: Route based IPsec

On 5/31/23 05:03, Valdrin MUJA wrote:
> Hi Claudio & David,
>
> Wireguard can work behind NAT. In that case maybe the solution is
wireguard + BGP.


I've been using OSPF over wireguard for several years now. It works
quite well. You just have to add `wgaip 224.0.0.0/8' to allow multicast
over the link.

Re: [new] sysutils/lsblk

On 31.05.23 15:29, Laurent Cheylus wrote:
> On Tue, 30 May 2023 17:28:00 +0200, Benjamin Stürz wrote:
>
>> lsblk(8) is a simple tool to list attached block devices.
>> This specifically is a clone of the one in util-linux.
>>
>> This is actually my second attempt of submitting this port.
>> This time I reworked most of it, fixed all bugs (hopefully :),
>> incorporated feedback, added a few options and a manual,
>> and added support for RAID through bio(4).
>
> NOK, lsblk SegFault on openbsd-current/amd64 (VM with VirtualBox on Linux/
> Debian)
>
> $ doas /usr/obj/ports/lsblk-1.2.3/fake-amd64/usr/local/sbin/lsblk
> Segmentation fault
While trying to install OpenBSD 7.3 on VirtualBox,
I can't get past "Installing bsd".
I get a "fatal protection fault in supervisor mode" in OpenBSD.
Essentially a kernel panic, after which it reboots.
I'm trying this on Fedora 38.

Unfortunately I can't reproduce your error.
Could you please run with gdb and tell me where it breaks?
Or better send me a core dump.
>
> Excerpt of my dmesg: only one disk wd0
>
> OpenBSD 7.3-current (GENERIC) #1143: Mon May 22 08:36:54 MDT 2023
> deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
> real mem = 2130640896 (2031MB)
> avail mem = 2046590976 (1951MB)
> random: good seed from bootblocks
> mpath0 at root
> scsibus0 at mpath0: 256 targets
> mainbus0 at root
> bios0 at mainbus0: SMBIOS rev. 2.5 @ 0xe1000 (10 entries)
> bios0: vendor innotek GmbH version "VirtualBox" date 12/01/2006
> bios0: innotek GmbH VirtualBox
> acpi0 at bios0: ACPI 4.0
> acpi0: sleep states S0 S5
> acpi0: tables DSDT FACP APIC SSDT
> acpi0: wakeup devices
> acpitimer0 at acpi0: 3579545 Hz, 32 bits
> acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
> cpu0 at mainbus0: apid 0 (boot processor)
> cpu0: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz, 3399.94 MHz, 06-3c-03
> cpu0:
> FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,PCID,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,RDRAND,NXE,RDTSCP,LONG,LAHF,ABM,ITSC,FSGSBASE,BMI1,AVX2,BMI2,INVPCID,MELTDOWN
> cpu0: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 256KB 64b/
> line 8-way L2 cache, 8MB 64b/line 16-way L3 cache
> cpu0: smt 0, core 0, package 0
> (...)
> cpu0: using Broadwell MDS workaround
> pci0 at mainbus0 bus 0
> pchb0 at pci0 dev 0 function 0 "Intel 82441FX" rev 0x02
> pcib0 at pci0 dev 1 function 0 "Intel 82371SB ISA" rev 0x00
> pciide0 at pci0 dev 1 function 1 "Intel 82371AB IDE" rev 0x01: DMA,
> channel 0 configured to compatibility, channel 1 configured to
> compatibility
> wd0 at pciide0 channel 0 drive 0: <VBOX HARDDISK>
> wd0: 128-sector PIO, LBA, 40960MB, 83886080 sectors
> wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
>
> Laurent
>

Re: [new] sysutils/lsblk

On 2023/05/30 19:33:11 +0200, Benjamin Stürz <benni+openbsd@stuerz.xyz> wrote:
> > The port itself looks fine to me, except for the permissions of
> > distinfo and PLIST... All files should be 0644 and directories 0755.
> Fixed, the problem was my umask of 027.
>
> > No need to send an updated tarball just for this however, whoever will
> > import it can easily fix it.
> Did it anyway + for the reasons below.
>
> >
> > OK op@ to import with perms fixed.
> >
> > Now, some misc nits that don't really affect the port:
> >
> > - you could set yourself as MAINTAINER for the port. It is not
> > required of course, but seems you seem to be the upstream too
> > you're qualified enough I'd say ;-)
> Done
>
> > - I'd drop -Werror from release tarballs. While it is super-useful
> > during development, it is a super-pita for packagers when the C
> > compiler gets updated.
> Done

still ok op@ to import.

Thank you!

Re: High Interrupt After 7.3 Upgrade

Hi Chris,

On Tue, May 30, 2023 at 8:59 AM Chris Cappuccio <chris@nmedia.net> wrote:

> Samuel Jayden [samueljaydan1994@gmail.com] wrote:
> > Hi again,
> >
> > Just for the record:
> > I've downgraded to OpenBSD 7.2 (reinstalled) and everything is working
> like
> > a charm again.
> > I don't know what is wrong with 7.3 but ipi interrupt rate is too much
> and
> > somehow OpenBSD performance is too bad..
> > Thanks for reading.
> >
>
> Sounds like you are using 'systat' to measure interrupts. This is a bug
> in systat was was fixed in 7.3. Here is Scott Cheloha's message from that
> fix:
>
> "systat(1): vmstat: measure elapsed time with clock_gettime(2) instead of
> ticks
>
> The vmstat view in systat(1) should not use statclock() ticks to count
> elapsed time. First, ticks are low resolution. Second, the statclock
> is sometimes randomized, so each tick is not necessarily of equal
> length. Third, we're counting ticks from every CPU on the system, so
> every rate in the view is divided by the number of CPUs. For example,
> on an amd64 system with 8 CPUs you currently see:
>
> 200 clock
>
> ... when the true clock interrupt rate on that system is 1600.
>
> Instead, measure elapsed time with clock_gettime(2). Use CLOCK_UPTIME
> here so we exclude time when the system is suspended. With this
> change we no longer need "stathz" or "hertz". We can also get rid of
> the anachronistic secondary clock failure test.
>
>
>
I'm not the OP, but that's interesting to me because I'm wondering if it's
why Prometheus'
node_exporter from packages is reporting wildly wrong CPU stats on 7.3 that
don't at all
match what you'd expect when comparing top/htop output? It was fine prior
to upgrading
to 7.3, but I've just left digging into it on the back burner due to other
priorities.

Thanks!
Mark

Re: NFS mounted but shows nothing even df -h has it

On Wed, May 31, 2023 at 10:25:06PM +0800, Jazzi Hong wrote:

> Thanks for all the help. Hereby is the result of command `disklabel
> sd0`, seems the drive is well detected by failed mounted:
>
> > $ doas disklabel sd0
> # /dev/rsd0c:
> type: SCSI
> disk: SCSI disk
> label: SAMSANG ST1000LM
> duid: 2b6c2b5b929f9a55
>
> 16 partitions:
> # size offset fstype [fsize bsize cpg]
>
> c: 1953525168 0 unused
> i: 1758185664 64 4.2BSD 8192 65536 52270 # /mnt/hdd

In your fstab, sd0i is marked ar "do not run fsck on it" (last zero in
its fstab line). That is bad.

Try running fsck on sd0i. It might be that the filesystem is damaged
so mount does not like it, but fsck still has a chance to repair it.

-Otto

>
> On Wed, May 31, 2023 at 7:56 PM Otto Moerbeek <otto@drijf.net> wrote:
> >
> > On Wed, May 31, 2023 at 11:21:15AM +0100, Zé Loff wrote:
> >
> > > On Wed, May 31, 2023 at 05:25:07PM +0800, Jazzi Hong wrote:
> > > > You made the point, thank you Maksim.
> > > > I checked /mnt/hdd and nothing there.
> > > > > # cat /etc/fstab
> > > > 1593ab2ee369c420.b none swap sw
> > > > 1593ab2ee369c420.a / ffs rw 1 1
> > > > 1593ab2ee369c420.e /var ffs rw,nodev,nosuid 1 2
> > > > 2b6c2b5b929f9a55.i /mnt/hdd ffs rw,noexec,nosuid,nodev 0 0
> > > > > # doas sysctl hw.disknames
> > > > hw.disknames=sd0:2b6c2b5b929f9a55,sd1:1593ab2ee369c420
> > > > > # doas fdisk sd0
> > > > Disk: sd0 geometry: 121601/255/63 [1953525168 Sectors]
> > > > Offset: 0 Signature: 0xAA55
> > > > Starting Ending LBA Info:
> > > > #: id C H S - C H S [ start: size ]
> > > > -------------------------------------------------------------------------------
> > > > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > > *3: A6 0 1 2 - 121601 80 63 [ 64: 1953525104 ] OpenBSD
> > > > ============
> > > > So /dev/sd0 is my NFS share hard disk, and when I tried to mount it manually:
> > > > > # doas mount /mnt/hdd
> > > > mount_ffs: 2b6c2b5b929f9a55.i on /mnt/hdd: Invalid argument
> > > > +++++++++++
> > > > The error message mentioned about "Invalid argument" of mount, anything wrong?
> > > > So the problem now is why can not mount the drive even it's detected?
> > >
> > > It can detect the drive, but it doesn't find the i partition. What does
> > > disklabel sd0 say?
> >
> > Or it can find the i partition but mount_ffs does not like it for some reason.
> > By convention i partitions are often FAT. But we need the dislabel to
> > see what type it has.
> >
> > -Otto
>
>
>
> --
> jazzi
>
> Best Regard,

Re: http3 in nginx

On 5/24/23 18:01, Theo Buehler wrote:
> This isn't intended for commit, but if anyone wants to play with quic
> in nginx, this diff is all that's needed. Build, then install the main
> package. The config is documented here:
>
> https://nginx.org/en/docs/http/ngx_http_v3_module.html
>
> Works for me.
>

Note for testers, it seems nginx 1.25.0 has some issues with QUIC.
1.25.1 might solve the issues I have seen so far.
https://github.com/nginx/nginx/commit/cb70d5954c65b5683bc1c104bbf2466b73f4aa2b

Re: NFS mounted but shows nothing even df -h has it

Thanks for all the help. Hereby is the result of command `disklabel
sd0`, seems the drive is well detected by failed mounted:

> $ doas disklabel sd0
# /dev/rsd0c:
type: SCSI
disk: SCSI disk
label: SAMSANG ST1000LM
duid: 2b6c2b5b929f9a55

16 partitions:
# size offset fstype [fsize bsize cpg]

c: 1953525168 0 unused
i: 1758185664 64 4.2BSD 8192 65536 52270 # /mnt/hdd

On Wed, May 31, 2023 at 7:56 PM Otto Moerbeek <otto@drijf.net> wrote:
>
> On Wed, May 31, 2023 at 11:21:15AM +0100, Zé Loff wrote:
>
> > On Wed, May 31, 2023 at 05:25:07PM +0800, Jazzi Hong wrote:
> > > You made the point, thank you Maksim.
> > > I checked /mnt/hdd and nothing there.
> > > > # cat /etc/fstab
> > > 1593ab2ee369c420.b none swap sw
> > > 1593ab2ee369c420.a / ffs rw 1 1
> > > 1593ab2ee369c420.e /var ffs rw,nodev,nosuid 1 2
> > > 2b6c2b5b929f9a55.i /mnt/hdd ffs rw,noexec,nosuid,nodev 0 0
> > > > # doas sysctl hw.disknames
> > > hw.disknames=sd0:2b6c2b5b929f9a55,sd1:1593ab2ee369c420
> > > > # doas fdisk sd0
> > > Disk: sd0 geometry: 121601/255/63 [1953525168 Sectors]
> > > Offset: 0 Signature: 0xAA55
> > > Starting Ending LBA Info:
> > > #: id C H S - C H S [ start: size ]
> > > -------------------------------------------------------------------------------
> > > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > > *3: A6 0 1 2 - 121601 80 63 [ 64: 1953525104 ] OpenBSD
> > > ============
> > > So /dev/sd0 is my NFS share hard disk, and when I tried to mount it manually:
> > > > # doas mount /mnt/hdd
> > > mount_ffs: 2b6c2b5b929f9a55.i on /mnt/hdd: Invalid argument
> > > +++++++++++
> > > The error message mentioned about "Invalid argument" of mount, anything wrong?
> > > So the problem now is why can not mount the drive even it's detected?
> >
> > It can detect the drive, but it doesn't find the i partition. What does
> > disklabel sd0 say?
>
> Or it can find the i partition but mount_ffs does not like it for some reason.
> By convention i partitions are often FAT. But we need the dislabel to
> see what type it has.
>
> -Otto



--
jazzi

Best Regard,

Re: [new] sysutils/lsblk

On Tue, 30 May 2023 17:28:00 +0200, Benjamin Stürz wrote:

> lsblk(8) is a simple tool to list attached block devices.
> This specifically is a clone of the one in util-linux.
>
> This is actually my second attempt of submitting this port.
> This time I reworked most of it, fixed all bugs (hopefully :),
> incorporated feedback, added a few options and a manual,
> and added support for RAID through bio(4).

NOK, lsblk SegFault on openbsd-current/amd64 (VM with VirtualBox on Linux/
Debian)

$ doas /usr/obj/ports/lsblk-1.2.3/fake-amd64/usr/local/sbin/lsblk
Segmentation fault

Excerpt of my dmesg: only one disk wd0

OpenBSD 7.3-current (GENERIC) #1143: Mon May 22 08:36:54 MDT 2023
deraadt@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC
real mem = 2130640896 (2031MB)
avail mem = 2046590976 (1951MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.5 @ 0xe1000 (10 entries)
bios0: vendor innotek GmbH version "VirtualBox" date 12/01/2006
bios0: innotek GmbH VirtualBox
acpi0 at bios0: ACPI 4.0
acpi0: sleep states S0 S5
acpi0: tables DSDT FACP APIC SSDT
acpi0: wakeup devices
acpitimer0 at acpi0: 3579545 Hz, 32 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz, 3399.94 MHz, 06-3c-03
cpu0:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,PCLMUL,MWAIT,SSSE3,CX16,PCID,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,RDRAND,NXE,RDTSCP,LONG,LAHF,ABM,ITSC,FSGSBASE,BMI1,AVX2,BMI2,INVPCID,MELTDOWN
cpu0: 32KB 64b/line 8-way D-cache, 32KB 64b/line 8-way I-cache, 256KB 64b/
line 8-way L2 cache, 8MB 64b/line 16-way L3 cache
cpu0: smt 0, core 0, package 0
(...)
cpu0: using Broadwell MDS workaround
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel 82441FX" rev 0x02
pcib0 at pci0 dev 1 function 0 "Intel 82371SB ISA" rev 0x00
pciide0 at pci0 dev 1 function 1 "Intel 82371AB IDE" rev 0x01: DMA,
channel 0 configured to compatibility, channel 1 configured to
compatibility
wd0 at pciide0 channel 0 drive 0: <VBOX HARDDISK>
wd0: 128-sector PIO, LBA, 40960MB, 83886080 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2

Laurent

Re: NFS mounted but shows nothing even df -h has it

On Wed, May 31, 2023 at 11:21:15AM +0100, Zé Loff wrote:

> On Wed, May 31, 2023 at 05:25:07PM +0800, Jazzi Hong wrote:
> > You made the point, thank you Maksim.
> > I checked /mnt/hdd and nothing there.
> > > # cat /etc/fstab
> > 1593ab2ee369c420.b none swap sw
> > 1593ab2ee369c420.a / ffs rw 1 1
> > 1593ab2ee369c420.e /var ffs rw,nodev,nosuid 1 2
> > 2b6c2b5b929f9a55.i /mnt/hdd ffs rw,noexec,nosuid,nodev 0 0
> > > # doas sysctl hw.disknames
> > hw.disknames=sd0:2b6c2b5b929f9a55,sd1:1593ab2ee369c420
> > > # doas fdisk sd0
> > Disk: sd0 geometry: 121601/255/63 [1953525168 Sectors]
> > Offset: 0 Signature: 0xAA55
> > Starting Ending LBA Info:
> > #: id C H S - C H S [ start: size ]
> > -------------------------------------------------------------------------------
> > 0: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > 1: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > 2: 00 0 0 0 - 0 0 0 [ 0: 0 ] unused
> > *3: A6 0 1 2 - 121601 80 63 [ 64: 1953525104 ] OpenBSD
> > ============
> > So /dev/sd0 is my NFS share hard disk, and when I tried to mount it manually:
> > > # doas mount /mnt/hdd
> > mount_ffs: 2b6c2b5b929f9a55.i on /mnt/hdd: Invalid argument
> > +++++++++++
> > The error message mentioned about "Invalid argument" of mount, anything wrong?
> > So the problem now is why can not mount the drive even it's detected?
>
> It can detect the drive, but it doesn't find the i partition. What does
> disklabel sd0 say?

Or it can find the i partition but mount_ffs does not like it for some reason.
By convention i partitions are often FAT. But we need the dislabel to
see what type it has.

-Otto

Re: netstat: vfprintf %s NULL in " %2d %-5.16s"

On 2023-05-31, Benjamin Stürz <benni+openbsd@stuerz.xyz> wrote:
> Hi misc@,
>
> while scrolling through my /var/log/messages I found this entry:
> netstat: vfprintf %s NULL in " %2d %-5.16s"
>
> I tracked down the issue to line 278 of /usr/src/usr.bin/netstat/show.c:
>> printf(" %2d %-5.16s", rtm->rtm_priority,
>> if_indextoname(rtm->rtm_index, ifbuf))
> It appears to me that if_indextoname(3) returns NULL for some reason,
> and that this isn't being checked.
>
> Is this intentional? Or did I find a minor bug?

I'd guess at a race, probably the route was pointing at a virtual
interface that was removed during printing of the route table.