{"push_id":2494451108,"size":9,"distinct_size":9,"ref":"refs/heads/jrocha/collection-ids-and-dynamic-remotes","head":"22504a959124d9324af127e1c2a59333532cdb3e","before":"b889e22f99ed4dd708bf8bbe799cbf522f1db122","commits":[{"sha":"96122444e3f458704c1cfb39aad6e586c13acae1","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"tests: Cover listing refs with different collection IDs in remotes\n\nThis patch tests if refs of different collection IDs are returned\ntogether when listing refs from remote.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/96122444e3f458704c1cfb39aad6e586c13acae1"},{"sha":"0786a8c9360e3fcc2bf0343b48dd02a78995a851","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"tests: Cover listing refs from a remote by URL\n\nListing refs from a remote can be done using a URL so we need to cover\nthis in the unit tests.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/0786a8c9360e3fcc2bf0343b48dd02a78995a851"},{"sha":"f912dfbb0016f913d68c9748057a4d019abb58d4","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"doc: Mention the use of the URI for listing refs from remotes\n\nWhen listing refs from remotes, a remote can be given by name or by URI.\nThis is an important distinction because dynamic remotes (USB/LAN) are\nnot internally mapped to a name, and thus their generated name cannot be\nused for listing them. Thus, the solution is to use their URI in order\nto list the refs directly from it.\n\nEven though this feature has been around forever, the documentation\ndidn't really reflect it, so this patch mentions the described\nalternative possibility.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/f912dfbb0016f913d68c9748057a4d019abb58d4"},{"sha":"a0b6bd8ebcf4bb33fe457d06fb6ce396daa10de2","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"lib/installation: Add a method to list remotes by type\n\nSince we have several types of remotes, it is important to have the\noption of choosing which types one wants when listing them because\ndepending on the type it may have an impact in the performance (e.g.\nwhen listing LAN remotes).\n\nFor that reason this patch adds a new method\n\"flatpak_installation_list_remotes_by_type\" that allows to specify\nwhich types of remotes should be returned. When giving an empty array\nof types, it means that all types should be returned instead, which can\nbe more useful than actually asserting or not doing anything.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/a0b6bd8ebcf4bb33fe457d06fb6ce396daa10de2"},{"sha":"1e2f7cca1c0002c37b40c6dd365a1d8ababf83e7","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"lib/installation: List only static remotes when using flatpak_installation_list_remotes\n\nWhen p2p is enabled, listing the remotes using\nflatpak_installation_list_remotes will include all types of remotes.\nHowever, this can lead to problems for the users since dynamic remotes\n(USB/LAN) may not be used always the same way that static ones are. For\ninstance, when listing the refs in a remote, dyanmic ones cannot be\nlisted by name; so any existent code that iterates through the list of\nremotes and lists the refs in them will not work properly.\n\nTo avoid this situation, this patch makes the API method in question to\nreturn only static type remotes. Getting all remotes can still easily be\naccomplished by calling flatpak_installation_list_remotes_by_type with a\n0-sized array (or by specifying all types).","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/1e2f7cca1c0002c37b40c6dd365a1d8ababf83e7"},{"sha":"b0c216d521f9eb958fe036911264f146c9d94037","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"lib/installation: Don't stop getting removable remotes if one attempt fails\n\nWhen listing the removable remotes, it will stop the operation after the\nfirst configurable remote that has no collection ID set.\nThis is of course a problem as such an occurrence is not a reason for\nnot trying to list any remaining remotes.\n\nThis patch fixes that by simply reporting the failures as a debug\nmessage instead of aborting.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/b0c216d521f9eb958fe036911264f146c9d94037"},{"sha":"1aa85bfed5453e74a6db985f7bdd7dfa482d062b","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"lib: Make fetching a remote ref more robust\n\nFetching a remote ref may fail because of the locally configured\ncollection ID not matching the remote's one (because it's never been set\nin the configuration or it's just different/incorrect),\n\nHowever, using `flatpak_installation_fetch_remote_ref_sync` there's no\nmention of the collection ID to the caller, so we should make sure we\ntry to do our best to match the given parameters. Thus, if the lookup\nfails (because the collection IDs don't match), we resort to iterating\nover every ref and comparing their names with the expected ones.\n\nThis should be however reworked, through a new method likely, in order\nto accept the collection ID as an input argument, so the caller has more\npower to choose which one to match.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/1aa85bfed5453e74a6db985f7bdd7dfa482d062b"},{"sha":"dfd9b5f49e61f7db5c1f84ae4e210c2abf240c49","author":{"name":"Matthew Leeds","email":"424ec9dbc7f06560bd9f0866b438a24a0e995bb7@endlessm.com"},"message":"lib: Properly handle missing Avahi daemon\n\nIn list_remotes_for_configured_remote(), we call\nostree_repo_finder_avahi_start() without checking the error status. This\nmeans the OstreeRepoFinderAvahi instance passed to\nostree_repo_find_remotes_async() could be in an error state, which leads\nto flatpak getting infinitely stuck waiting for the result of that\noperation. So this commit removes the OstreeRepoFinderAvahi instance\nfrom the array if it failed to start, and returns early if only LAN\nremotes were requested. This is also consistent with how ostree itself\nhandles an error starting the Avahi finder instance in case NULL is\npassed to ostree_repo_find_remotes_async() instead of a finders array.\n\nThis error condition happens on the Endless OBS server because there's\nno Avahi daemon in the chroot used to run \"make check\".","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/dfd9b5f49e61f7db5c1f84ae4e210c2abf240c49"},{"sha":"22504a959124d9324af127e1c2a59333532cdb3e","author":{"name":"Joaquim Rocha","email":"31f6f8e2b8959c4e97e66d229fb48b2e3a05ba19@endlessm.com"},"message":"lib/installation: Don't try to find dynamic remotes when not needed\n\nWhen getting the dynamic remotes for the installed refs, if no refs\nwith a collection ID are found, then the ostree_repo_find_remotes_async\nis given an array with just NULL, which makes it early return and thus\nit would result in an infinite loop in\nflatpak_installation_list_installed_refs_for_update.\n\nThis patch only tries to find the dynamic remotes when there are such\nrefs, thus preventing the mentioned error and any extra unnecessary\nprocessing.","distinct":true,"url":"https://api.github.com/repos/joaquimrocha/flatpak/commits/22504a959124d9324af127e1c2a59333532cdb3e"}]}
{"actor":{"display_login":"joaquimrocha"}}