Comments (5)
In the ./okhttp/okhttp-coroutines
project directory there is no source in the okhttp.coroutines
package but there are sources in the okhttp
package. In the whole repository, I can't find a single kotlin file that declares the okhttp.coroutines
package?
okhttp/okhttp-coroutines ((parent-5.0.0-alpha.13) *)$ ls -R src
src/main/kotlin/okhttp3:
JvmCallExtensions.kt
src/test/kotlin/okhttp3:
SuspendCallTest.kt
okhttp/okhttp-coroutines ((parent-5.0.0-alpha.13) *)$ cd ..
okhttp ((parent-5.0.0-alpha.13) *)$ find . -name "*.kt" -exec grep okhttp.coroutines {} \;
okhttp ((parent-5.0.0-alpha.13) *)
This does not seem to look right, does it?
from bnd.
Yep. We’ve since moved the code to that and package.
from bnd.
The problem seems to be that if you do split packages, bnd will turn merge them.
The parent-5.0.0-alpha.13 branch has 1 class in the okhttp
package: src/main/kotlin/okhttp3/JvmCallExtensions.kt
. This will then include ALL classes from the class path in that package since split packages don't work in OSGi without a lot of work and they are evil anyway :-)
If I remove the src/main/kotlin/okhttp3/JvmCallExtensions.kt
I get an empty bundle, as expected.
The fact that you do not get an error on the superfluous Export-Package
is that sometimes you need to export a package even if you don't have it. When you'd use wildcards it would've warned you.
So I do not think this is a bug. Do not have packages in your source tree that overlap with packages on the build path and you should be ok?
from bnd.
It’s a surprising result but it’s not causing us problems any more.
from bnd.
In bnd, the default always was the classpath, not the project's sources. This made it easy to assemble bundles with their APIs and subsets. However, in this case we have some unexpected interaction. Although I guess it made you find a real problem :-)
from bnd.
Related Issues (20)
- Allow the same PID for both pid and factoryPid attribute in @ObjectClassDefinition HOT 6
- Add something to support tools install with associated bndtools workspace templates HOT 20
- Ability to configure threshold for semantic versioning failures HOT 1
- Extend artifact with additional attributes HOT 5
- bndtools should assist with importing projects from known bnd workspaces HOT 14
- Cannot create new Bnd OSGi Project with current master HEAD HOT 5
- Contribute oomph setups for bndtools 7.1+ all-in-one install HOT 1
- Provide bndtools 7.1+ p2 release repositories so that oomph setups can refer to specific bndtools versions HOT 7
- NPE in Add to -buildpath Quickfix HOT 2
- bnd-maven-plugin: Explicit Service-Component instruction is merged with value generated from `DSAnnotations` plugin HOT 6
- Bndtools / Maven with sources JAR HOT 5
- Unexpected behavior when using Export-Package alongside -includeresources HOT 5
- Add Maven, Eclipse and IntelliJ folders to gitignore HOT 1
- EphemeralPortTest failing intermittently HOT 8
- ProjectResolverTest failing HOT 32
- Compile error on JDK 21: aQute/lib/collections/SortedList doesn't fully implement SortedSet/List interfaces HOT 2
- Running bnd shell command under windows
- Spring Boot 3.3.0 causing StackOverflowError HOT 3
- ANSI Console doesn't work with bndtools HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bnd.