Blob Blame History Raw
# Generated by go2rpm 1.9.0
%bcond_without check
%global debug_package %{nil}

# https://github.com/uber-go/zap
%global goipath         go.uber.org/zap
%global forgeurl        https://github.com/uber-go/zap
Version:                1.26.0

%gometa

%global common_description %{expand:
Package Zap provides fast, structured, leveled logging.

For applications that log in the hot path, reflection-based serialization and
string formatting are prohibitively expensive - they're CPU-intensive and make
many small allocations. Put differently, using json.Marshal and fmt.Fprintf to
log tons of interface{} makes your application slow.

Zap takes a different approach. It includes a reflection-free, zero-allocation
JSON encoder, and the base Logger strives to avoid serialization overhead and
allocations wherever possible. By building the high-level SugaredLogger on that
foundation, zap lets users choose when they need to count every allocation and
when they'd prefer a more familiar, loosely typed API.}

%global golicenses      LICENSE.txt
%global godocs          CODE_OF_CONDUCT.md CONTRIBUTING.md FAQ.md\\\
                        CHANGELOG.md README.md

Name:           %{goname}
Release:        %autorelease
Summary:        Blazing fast, structured, leveled logging in Go

License:        MIT
URL:            %{gourl}
Source:         %{gosource}

%description %{common_description}

%gopkg

%prep
%goprep
%autopatch -p1

# remove non used modules
rm -rf zapgrpc/internal/test/ tools/ exp/ benchmarks/

%generate_buildrequires
%go_generate_buildrequires

%install
%gopkginstall

%if %{with check}
%check
# TestStacktraceFiltersVendorZap: need go modules
for test in "TestStacktraceFiltersVendorZap" \
; do
awk -i inplace '/^func.*'"$test"'\(/ { print; print "\tt.Skip(\"disabled failing test\")"; next}1' $(grep -rl $test)
done
%gocheck
%endif

%gopkgfiles

%changelog
%autochangelog