Fridrich Strba 2024-07-09 08:26:37 +00:00 committed by Git OBS Bridge
commit 8d0e19ca7c
7 changed files with 325 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

14
_service Normal file
View File

@ -0,0 +1,14 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/jakartaee/inject.git</param>
<param name="revision">1.0.5</param>
<param name="versionformat">1+%cdgit%h</param>
<param name="filename">atinject</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
<service name="set_version" mode="disabled"/>
</services>

BIN
atinject-1+20211017gitd06ce18.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

139
atinject-build.xml Normal file
View File

@ -0,0 +1,139 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="jakarta.inject-api" default="package" basedir=".">
<!-- ====================================================================== -->
<!-- Build environment properties -->
<!-- ====================================================================== -->
<property file="build.properties"/>
<property name="project.groupId" value="javax.inject"/>
<property name="project.artifactId" value="javax.inject"/>
<property name="project.version" value="1.0.5"/>
<property name="compiler.release" value="8"/>
<property name="compiler.source" value="1.${compiler.release}"/>
<property name="compiler.target" value="${compiler.source}"/>
<property name="build.finalName" value="${project.artifactId}-${project.version}"/>
<property name="build.dir" value="target"/>
<property name="build.outputDir" value="${build.dir}/classes"/>
<property name="build.outputDirJava9" value="${build.outputDir}/META-INF/versions/9"/>
<property name="build.srcDir" value="src/main/java"/>
<property name="build.srcDirJava9" value="src/main/java9"/>
<property name="build.resourceDir" value="."/>
<property name="reporting.outputDirectory" value="${build.dir}/site"/>
<!-- ====================================================================== -->
<!-- Cleaning up target -->
<!-- ====================================================================== -->
<target name="clean" description="Clean the output directory">
<delete dir="${build.dir}"/>
</target>
<!-- ====================================================================== -->
<!-- Compilation target -->
<!-- ====================================================================== -->
<target name="compile" description="Compile the code">
<mkdir dir="${build.outputDir}"/>
<javac destdir="${build.outputDir}"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
release="${compiler.release}"
target="${compiler.target}"
verbose="false"
fork="false"
source="${compiler.source}">
<src>
<pathelement location="${build.srcDir}"/>
</src>
<exclude name="**/module-info.java"/>
</javac>
<!-- compile the module-info.java -->
<mkdir dir="${build.outputDirJava9}"/>
<javac destdir="${build.outputDirJava9}"
nowarn="false"
debug="true"
encoding="utf-8"
optimize="false"
deprecation="true"
release="9"
verbose="false"
fork="false">
<src>
<pathelement location="${build.srcDir}"/>
<pathelement location="${build.srcDirJava9}"/>
</src>
<include name="**/module-info.java"/>
</javac>
<mkdir dir="${build.outputDir}/META-INF"/>
<copy todir="${build.outputDir}/META-INF">
<fileset dir="${build.resourceDir}">
<include name="LICENSE.txt"/>
<include name="NOTICE.md"/>
</fileset>
</copy>
</target>
<!-- ====================================================================== -->
<!-- Javadoc target -->
<!-- ====================================================================== -->
<target name="javadoc" description="Generates the Javadoc of the application">
<javadoc sourcepath="${build.srcDir}"
packagenames="*"
destdir="${reporting.outputDirectory}/apidocs"
access="protected"
source="${compiler.source}"
verbose="false"
version="true"
use="true"
author="true"
splitindex="false"
nodeprecated="false"
nodeprecatedlist="false"
notree="false"
noindex="false"
nohelp="false"
nonavbar="false"
serialwarn="false"
charset="ISO-8859-1"
linksource="false"
breakiterator="false"/>
</target>
<!-- ====================================================================== -->
<!-- Package target -->
<!-- ====================================================================== -->
<target name="package" depends="compile" description="Package the application">
<jar jarfile="${build.dir}/${build.finalName}.jar"
compress="true"
index="false"
basedir="${build.outputDir}"
excludes="**/package.html">
<manifest>
<attribute name="Bundle-Description" value="Jakarta Dependency Injection"/>
<attribute name="Bundle-License" value="http://www.apache.org/licenses/LICENSE-2.0.txt"/>
<attribute name="Bundle-ManifestVersion" value="2"/>
<attribute name="Bundle-Name" value="Jakarta Dependency Injection"/>
<attribute name="Bundle-SymbolicName" value="javax.inject"/>
<attribute name="Bundle-Version" value="${project.version}"/>
<attribute name="Export-Package" value="javax.inject;version=&quot;${project.version}&quot;"/>
<attribute name="Implementation-Version" value="1.1"/>
<attribute name="JavaPackages-ArtifactId" value="${project.artifactId}"/>
<attribute name="JavaPackages-GroupId" value="${project.groupId}"/>
<attribute name="JavaPackages-Version" value="${project.version}"/>
<attribute name="Multi-Release" value="true"/>
<attribute name="Require-Capability" value="osgi.ee;filter:=&quot;(&amp;(osgi.ee=JavaSE)(version=${compiler.target}))&quot;"/>
</manifest>
</jar>
</target>
</project>

70
atinject.changes Normal file
View File

@ -0,0 +1,70 @@
-------------------------------------------------------------------
Tue Jul 9 08:20:48 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Revert to versioning 1+<date>git<git short hash> to avoid upgrade
problems in SLE
-------------------------------------------------------------------
Fri Jun 7 12:10:33 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Don't distribute as jakarta.inject:jakarta-inject-api artifact
to prevent conflicts with the version 2.x that actually has
classes in jakarta.inject namespace and thus is incompatible
-------------------------------------------------------------------
Wed Apr 10 08:19:26 UTC 2024 - Fridrich Strba <fstrba@suse.com>
- Upgrade to version 1.0.5 and switch to sources in
https://github.com/jakartaee/inject/
* Changes of 1.0.5:
+ This switches the module name back to the java.inject that was
used by the 1.0.3 release with automatic module. This is a
multi-release jar
* Changes of 1.0.4:
+ This is a 1.0.4 service release with a multi-release jar that
adds the module-info class to
META-INF/versions/9/module-info.class using the
https://github.com/moditect/moditect plugin for the
javax.inject module.
* Changes of 1.0.3:
+ This release corrects the 1.0.2 release which was incorrectly
done from the master branch with the jakarta.* packages.
+ It adds the Automatic-Module-Name=java.inject to the api jar
manifest.
* Changes of 1.0.2:
+ A service release that addresses:
- #14, set Automatic-Module-Name to java.inject
- #15, add OSGi bundle headers
* Changes of 1.0.1:
+ Add Automatic-Module-Name of jakarta.inject
* Changes of 1.0:
+ First Injection API release for Jakarta EE
- Remove unused sub-package tck
- Removed patch:
* atinject-javadoc.patch
+ not needed with this version
-------------------------------------------------------------------
Sat Apr 2 18:23:08 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Alias to the new jakarta name
-------------------------------------------------------------------
Thu Mar 24 13:21:22 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Fetch the sources using a source service
- Do not use the upstream build.sh, but use it to write a
necessary part directly to the spec file
-------------------------------------------------------------------
Sat Mar 19 16:24:33 UTC 2022 - Fridrich Strba <fstrba@suse.com>
- Build with source/target levels 8
- Added patch:
* atinject-javadoc.patch
+ fix build with javadoc 17
-------------------------------------------------------------------
Wed Oct 24 21:00:03 UTC 2018 - Fridrich Strba <fstrba@suse.com>
- Initial packaging of atinject adapted from Fedora rpm

75
atinject.spec Normal file
View File

@ -0,0 +1,75 @@
#
# spec file for package atinject
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global artifactversion 1.0.5
Name: atinject
Version: 1+20211017gitd06ce18
Release: 0
Summary: Dependency injection specification for Java (JSR-330)
License: Apache-2.0
URL: https://github.com/jakartaee/inject/
Source0: %{name}-%{version}.tar.xz
Source1: %{name}-build.xml
BuildRequires: ant
BuildRequires: fdupes
BuildRequires: java-devel >= 1.8
BuildRequires: javapackages-local >= 6
Obsoletes: %{name}-tck
BuildArch: noarch
%description
This package specifies a means for obtaining objects in such a way as
to maximize reusability, testability and maintainability compared to
traditional approaches such as constructors, factories, and service
locators (e.g., JNDI). This process, known as dependency injection, is
beneficial to most nontrivial applications.
%package javadoc
Summary: Javadoc for %{name}
Group: Documentation/HTML
%description javadoc
This package contains the API documentation for %{name}.
%prep
%setup -q
cp %{SOURCE1} build.xml
%build
%{ant} package javadoc
%install
# jars
install -dm 755 %{buildroot}%{_javadir}/javax.inject
install -m 0644 target/javax.inject-%{artifactversion}.jar %{buildroot}%{_javadir}/%{name}.jar
(cd %{buildroot}%{_javadir}/javax.inject && ln -s ../%{name}.jar .)
%add_maven_depmap javax.inject:javax.inject:%{artifactversion} %{name}.jar
# javadoc
install -dm 755 %{buildroot}%{_javadocdir}/%{name}
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/
%fdupes -s %{buildroot}%{_javadocdir}/%{name}
%files -f .mfiles
%license LICENSE.txt NOTICE.md
%{_javadir}/javax.inject
%files javadoc
%{_javadocdir}/%{name}
%changelog