Opened 4 years ago

Last modified 4 years ago

#15783 new bug

HaikuDepot : Packages in Multiple Repos Should Be Accessible in the Application

Reported by: lorglas Owned by: stippi
Priority: critical Milestone: R1
Component: Applications/HaikuDepot Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

I have generated a new package for yab on my server. When I open Haikudepot and search for yab, Haikudepot only shows me the old version.

My test was to de / activate all option i can do in Haikudepot. (I have activated my repo, as well as the display of all package sources, I have also shown all packages (installed, available, sources, development activated) and i refresh all the repos. The same test with Lelldorin, the problem was the same.

And also the Softwareupdater doesn't shows me the new yab version.

Change History (6)

comment:1 by pulkomandy, 4 years ago

Milestone: R1/beta2R1

Please do not add bugs to the beta2 milestone, let developers decide what should go there.

comment:2 by nielx, 4 years ago

Component: - GeneralApplications/HaikuDepot
Owner: changed from nobody to stippi

comment:3 by apl-haiku, 4 years ago

I've had a bit of a look into this one. It looks like it intentionally only displays one of the packages from the two repositories. As a safety measure this happens in both PackageListView::AddPackage and FeaturedPackagesView::AddPackage (rewritten by myself, but the original implementation was doing the same thing). I am pretty sure that the code in LocalPkgDataLoadProcess::RunInternal (transposed by myself, but also more or less the origional logic flow) is also uniquing the packages on name as well.

Also where packages are actually installed via the package system in PackageManager::Perform would need to install a package with more specificity than just the name of the package.

...
		try {
			fPackageManager->Install(&packageNameString, 1);
		} catch (BFatalErrorException& ex) {
...

I guess multi-repositories were not a major consideration in the initial implementation. In essence the following needs to happen;

  • The code in LocalPkgDataLoadProcess needs to be understood and if possible documented.
  • The code in LocalPkgDataLoadProcess should load packages from multiple repos if it doesn't anyway.
  • The UI should show the repository where a package is coming from (maybe ties into a re-write in #14675 of some of those views)
  • The logic needs to install the correct version of the package from the right repo.

So probably not a low-risk ticket; best left to > B2.

Last edited 4 years ago by apl-haiku (previous) (diff)

comment:4 by apl-haiku, 4 years ago

Summary: Haikudepot doesn't show different programmversion from separte reposHaikuDepot : Packages in Multiple Repos Should Be Accessible in the Application

comment:5 by lorglas, 4 years ago

It is possible to insert another column for the vendor, then display it in the vendor and adapt the search query accordingly?

comment:6 by lorglas, 4 years ago

If i look with pkgman search yab -D, i see both variants and the different vendor. Perhaps it could be that it helps.

Note: See TracTickets for help on using tickets.