{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":112449982,"defaultBranch":"master","name":"libdnf","ownerLogin":"dmnks","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2017-11-29T08:46:56.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/7109627?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1714826348.0","currentOid":""},"activityList":{"items":[{"before":"51a8f261d8628026b9975d1b6eea5033c298ed2d","after":"a7ef27917f01b32e44d0a5bbf7b06104f8275ec5","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-09T08:45:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page always said about the countme\noption, the code just never lived up to that.\n\nThis makes bucket calculation more accurate:\n\n1. System upgrades will no longer reset the bucket to 1 (this used to be\n the case due to a new persistdir being created whenever $releasever\n changed).\n\n2. Systems that only reach out to the repos after an initial time period\n after being installed will no longer appear younger than they really\n are.\n\n3. Prebuilt OS images that happen to include countme cookies created at\n build time will no longer cause all the instances spawned from those\n images (physical machines, VMs or containers) to appear older than\n they really are.\n\nUse the machine-id(5) file's mtime to infer the installation time. This\nfile is semantically tied to the system's lifetime since it's typically\npopulated at installation time or during the first boot by an installer\ntool or init system, respectively, and remains unchanged.\n\nThe fact that it's a well-defined file with clear semantics ensures that\nOS images won't accidentally include a prepopulated version of this file\nwith a timestamp corresponding to the image build, unlike our own cookie\nfiles (see point 3 above).\n\nIn some cases, such as in OCI containers without an init system running,\nthe machine-id file may be missing or empty, even though the system is\nstill used long-term. To cover those, keep the original, relative epoch\nas a fallback method. System upgrades aren't really a thing for such\nsystems so the above point 1 doesn't apply here.\n\nSome containers, such as those created by toolbox(1), may also choose to\nbind-mount the host's machine-id file, thus falling into the same bucket\nas their host. Conveniently, that's what we want, since the purpose of\nsuch containers is to blend with the host as much as possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"77155904a988d6465b1f54ee8e87215295e1a587","after":"51a8f261d8628026b9975d1b6eea5033c298ed2d","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-09T08:38:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page always said about the countme\noption, the code just never lived up to that.\n\nThis makes bucket calculation more accurate:\n\n1. System upgrades will no longer reset the bucket to 1 (this used to be\n the case due to a new persistdir being created whenever $releasever\n changed).\n\n2. Systems that only reach out to the repos after an initial time period\n after being installed will no longer appear younger than they really\n are.\n\n3. Prebuilt OS images that happen to include countme cookies created at\n build time will no longer cause all the instances spawned from those\n images (physical machines, VMs or containers) to appear older than\n they really are.\n\nUse the machine-id(5) file's mtime to infer the installation time. This\nfile is semantically tied to the system's lifetime since it's typically\npopulated at installation time or during the first boot by an installer\ntool or init system, respectively, and remains unchanged.\n\nThe fact that it's a well-defined file with clear semantics ensures that\nOS images won't accidentally include a prepopulated version of this file\nwith a timestamp corresponding to the image build, unlike our own cookie\nfiles (see point 3 above).\n\nIn some cases, such as in OCI containers without an init system running,\nthe machine-id file may be missing or empty, even though the system is\nstill used long-term. To cover those, keep the original, relative epoch\nas a fallback method. System upgrades aren't really a thing for such\nsystems so the above point 1 doesn't apply here.\n\nSome containers, such as those created by toolbox(1), may also choose to\nbind-mount the host's machine-id file, thus falling into the same bucket\nas their host. Conveniently, that's what we want, since the purpose of\nsuch containers is to blend with the host as much as possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"0120e70747dcf05e716792e2e846c62eccd44319","after":"90d2ffad964a91a7a798b81e15c16eb1e840f257","ref":"refs/heads/dnf-4-master","pushedAt":"2024-05-09T08:36:53.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"MergedTransaction: Fix invalid memory access when dropping items\n\nWhen an item is dropped from the merged transaction, the `ItemPair` reference becomes invalid and should no longer be used.","shortMessageHtmlLink":"MergedTransaction: Fix invalid memory access when dropping items"}},{"before":"57a76b86d95f4f6debcbdbb7a41e2abc7ef5f664","after":"77155904a988d6465b1f54ee8e87215295e1a587","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-09T08:32:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page always said about the countme\noption, the code just never lived up to that.\n\nThis makes bucket calculation more accurate:\n\n1. System upgrades will no longer reset the bucket to 1 (this used to be\n the case due to a new persistdir being created whenever $releasever\n changed).\n\n2. Systems that only reach out to the repos after an initial time period\n after being installed will no longer appear younger than they really\n are.\n\n3. Prebuilt OS images that happen to include countme cookies created at\n build time will no longer cause all the instances spawned from those\n images (physical machines, VMs or containers) to appear older than\n they really are.\n\nUse the machine-id(5) file's mtime to infer the installation time. This\nfile is semantically tied to the system's lifetime since it's typically\npopulated at installation time or during the first boot by an installer\ntool or init system, respectively, and remains unchanged.\n\nThe fact that it's a well-defined file with clear semantics ensures that\nOS images won't accidentally include a prepopulated version of this file\nwith a timestamp corresponding to the image build, unlike our own cookie\nfiles (see point 3 above).\n\nIn some cases, such as in OCI containers without an init system running,\nthe machine-id file may be missing or empty, even though the system is\nstill used long-term. To cover those, keep the original, relative epoch\nas a fallback method. System upgrades aren't really a thing for such\nsystems so the above point 1 doesn't apply here.\n\nSome containers, such as those created by toolbox(1), may also choose to\nbind-mount the host's machine-id file, thus falling into the same bucket\nas their host. Conveniently, that's what we want, since the purpose of\nsuch containers is to blend with the host as much as possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"a4a6e67705b1691af55072a42f3d2462a37c71c8","after":"57a76b86d95f4f6debcbdbb7a41e2abc7ef5f664","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-09T08:04:18.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page always said about the countme\noption, the code just never lived up to that.\n\nThis makes bucket calculation more accurate:\n\n1. System upgrades will no longer reset the bucket to 1 (this used to be\n the case due to a new persistdir being created whenever $releasever\n changed).\n\n2. Systems that only reach out to the repos after an initial time period\n after being installed will no longer appear younger than they really\n are.\n\n3. Prebuilt OS images that happen to include countme cookies created at\n build time will no longer cause all the instances spawned from those\n images (physical machines, VMs or containers) to appear older than\n they really are.\n\nUse the machine-id(5) file's mtime to infer the installation time. This\nfile is semantically tied to the system's lifetime since it's typically\npopulated at installation time or during the first boot by an installer\ntool or init system, respectively, and remains unchanged.\n\nThe fact that it's a well-defined file with clear semantics ensures that\nOS images won't accidentally include a prepopulated version of this file\nwith a timestamp corresponding to the image build, unlike our own cookie\nfiles (see point 3 above).\n\nIn some cases, such as in OCI containers without an init system running,\nthe machine-id file may be missing or empty, even though the system is\nstill used long-term. To cover those, keep the original, relative epoch\nas a fallback method. System upgrades aren't really a thing for such\nsystems so the above point 1 doesn't apply here.\n\nSome containers, such as those created by toolbox(1), may also choose to\nbind-mount the host's machine-id file, thus falling into the same bucket\nas their host. Conveniently, that's what we want, since the purpose of\nsuch containers is to blend with the host as much as possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"2af5494db59ba47cfd67f02f62c08d50a82df58e","after":"a4a6e67705b1691af55072a42f3d2462a37c71c8","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T15:54:18.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page has been saying all along, the\ncode just never lived up to it.\n\nThis fixes the following issues:\n\n1. Systems that only reach out to the repos after an initial period of\n time after their installation appear \"younger\" than they really are.\n\n2. Prebuilt OS images may include repo persistdirs with countme cookies\n in them that were created at build time, making all instances spawned\n from those images (physical machines, VMs or containers) appear much\n \"older\" than they really are.\n\n3. System upgrades cause the bucket to be effectively reset to 1 due to\n the fact that a changed $releasever value causes a new persistdir to\n be created.\n\nUse the machine-id(5) file's mtime to infer the installation time. This\nfile is typically tied to the system's installation or first boot where\nit's populated by an installer tool or init system, respectively, and is\nnever changed afterwards.\n\nKeep the \"relative\" epoch (first countme event) as a fallback method,\nthough. This is useful on those systems that don't have a machine-id\nfile (such as OCI containers) but are still used long-term. In those\ncases, system upgrades aren't really a thing so the above point 3 does\nnot apply.\n\nSome containers may also choose to bind-mount the machine-id file from\nthe host (such as what toolbox(1) does), in which case their age will be\nthe same as that of the host. Conveniently, that's also what we want,\nsince the purpose of such containers is to blend with the host as much\nas possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"0121ca7417727a7e1b2703e68077d13bc17e85a4","after":"2af5494db59ba47cfd67f02f62c08d50a82df58e","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T15:49:21.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page has been saying all along, the\ncode just never lived up to it.\n\nThis fixes the following issues:\n\n1. Systems that only reach out to the repos after an initial period of\n time after their installation appear \"younger\" than they really are.\n\n2. Prebuilt OS images may include repo persistdirs with countme cookies\n in them that were created at build time, making all instances spawned\n from those images (physical machines, VMs or containers) appear much\n \"older\" than they really are.\n\n3. System upgrades cause the bucket to be effectively reset to 1 due to\n the fact that a changed $releasever value causes a new persistdir to\n be created.\n\nUse the machine-id(5) file's mtime as a single source of truth. This\nfile is typically tied to the system's installation or first boot where\nit's populated by an installer tool or init system, respectively, and is\nnever changed afterwards.\n\nKeep the \"relative\" epoch (first countme event) as a fallback method,\nthough. This is useful on those systems that don't have a machine-id\nfile (such as OCI containers) but are still used long-term. In those\ncases, system upgrades aren't really a thing so the above point 3 does\nnot apply.\n\nSome containers may also choose to bind-mount the machine-id file from\nthe host (such as what toolbox(1) does), in which case their age will be\nthe same as that of the host. Conveniently, that's also what we want,\nsince the purpose of such containers is to blend with the host as much\nas possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"3c885f80707016f5d2f5864ff414f6e6c91106a7","after":"0121ca7417727a7e1b2703e68077d13bc17e85a4","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T15:49:02.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page has been saying all along, the\ncode just never lived up to it.\n\nThis fixes the following issues:\n\n1. Systems that only reach out to the repos after an initial period of\n time after their installation appear \"younger\" than they really are.\n\n2. Prebuilt OS images may include repo persistdirs with countme cookies\n in them that were created at build time, making all instances spawned\n from those images (physical machines, VMs or containers) appear much\n \"older\" than they really are.\n\n3. System upgrades cause the bucket to be effectively reset to 1 due to\n the fact that a changed $releasever value causes a new persistdir to\n be created.\n\nUse the machine-id(5) file's mtime as the single source of truth. This\nfile is typically tied to the system's installation or first boot where\nit's populated by an installer tool or init system, respectively, and is\nnever changed afterwards.\n\nKeep the \"relative\" epoch (first countme event) as a fallback method,\nthough. This is useful on those systems that don't have a machine-id\nfile (such as OCI containers) but are still used long-term. In those\ncases, system upgrades aren't really a thing so the above point 3 does\nnot apply.\n\nSome containers may also choose to bind-mount the machine-id file from\nthe host (such as what toolbox(1) does), in which case their age will be\nthe same as that of the host. Conveniently, that's also what we want,\nsince the purpose of such containers is to blend with the host as much\nas possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"c275c5147ec8c4ba77bd4030200c2168284c65fb","after":"3c885f80707016f5d2f5864ff414f6e6c91106a7","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T15:45:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nActually use the system's installation time (if known) as the reference\npoint, instead of the first-ever countme event recorded for the given\nrepo.\n\nThis is what the dnf.conf(5) man page has been saying all along, the\ncode just never lived up to it.\n\nThis fixes the following issues:\n\n1. Systems that only reach out to the repos after an initial period of\n time after their installation appear \"younger\" than they really are.\n\n2. Prebuilt OS images may include repo persistdirs with countme cookies\n in them that were created at build time, making all instances spawned\n from those images (physical machines, VMs or containers) appear much\n \"older\" than they really are.\n\n3. System upgrades cause the bucket to be effectively reset to 1 due to\n the fact that a changed $releasever value causes a new persistdir to\n be created.\n\nUse the machine-id(5) file's mtime as the single source of truth. This\nfile is typically tied to the system's installation or first boot where\nit's populated by an installer tool or init system, respectively, and is\nnever changed afterwards.\n\nKeep the \"relative\" epoch (first countme event) as a fallback method,\nthough. This is useful on those systems that don't have a machine-id\nfile (such as OCI containers) but are still used long-term. In those\ncases, system upgrades aren't really a thing so the above point 3 does\nnot apply.\n\nSome containers may also choose to bind-mount the machine-id file from\nthe host (such as what toolbox(1) does), in which case their age will be\nthe same as that of the host. Conveniently, that's also what we want,\nsince the purpose of such containers is to blend with the host as much\nas possible.\n\nFixes: #1611","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"5279f8293c7968663fd2eb4fbaf51a1177c468f5","after":"c275c5147ec8c4ba77bd4030200c2168284c65fb","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T14:04:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"116b4357a114c82654912405c9432469f59258ba","after":"5279f8293c7968663fd2eb4fbaf51a1177c468f5","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T14:04:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"f6c5e5340eb6af0d9a515382bfc7d6fee9a81b88","after":"116b4357a114c82654912405c9432469f59258ba","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T10:24:21.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"6587d3f45b6ed00567865a246350874ce8ecf79c","after":"f6c5e5340eb6af0d9a515382bfc7d6fee9a81b88","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T10:16:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"cc4daecb8bb7b09c2f32b91cf6fe9ac25e243a27","after":"6587d3f45b6ed00567865a246350874ce8ecf79c","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T10:15:36.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"5864124856e35f5d4738f0ce3133fd8e5254fd9e","after":"cc4daecb8bb7b09c2f32b91cf6fe9ac25e243a27","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T10:10:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"5afaa08ffe369a4ddee298f262ca14be70b93f8c","after":"5864124856e35f5d4738f0ce3133fd8e5254fd9e","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T10:05:30.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix","shortMessageHtmlLink":"Fix"}},{"before":"059373ee06b12c951900e50444ac4ed6102b18f7","after":"5afaa08ffe369a4ddee298f262ca14be70b93f8c","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T10:04:06.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"49fd6cfbd73a8a34f22d52fc8900aa11c04742e6","after":"059373ee06b12c951900e50444ac4ed6102b18f7","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-08T08:30:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"060c1494015a39c6c33a0973546eeb0aebbbdd7b","after":"49fd6cfbd73a8a34f22d52fc8900aa11c04742e6","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-07T15:37:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"0120e70747dcf05e716792e2e846c62eccd44319","after":"060c1494015a39c6c33a0973546eeb0aebbbdd7b","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-06T15:48:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":null,"after":"0120e70747dcf05e716792e2e846c62eccd44319","ref":"refs/heads/iss1611-v4","pushedAt":"2024-05-04T12:39:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Release 0.73.1","shortMessageHtmlLink":"Release 0.73.1"}},{"before":"6627800c9ee6166cdbdca82be1cfecb331483ed5","after":"86da005312b3b60b03594f6547322788810f99f8","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-04T09:53:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation on system upgrade\n\nCurrently, we effectively reset the bucket to 1 whenever a repo variable\n(such as $releasever) changes. This causes long-lived systems to check\nin as \"freshly installed\" again after they've been upgraded to a new\ndistro release, such as on Fedora.\n\nThat's not what the original Fedora change proposal [1] intended for\nthis value to represent, though.\n\nThis happens because we store the cookies in unique per-repo directories\nthat include the hash of the URL in their names, much like cachedirs.\n\nFix that by storing the epoch in a separate file that's shared among all\nthe repos and populated by whichever is counted first. This also brings\nthe meaning of the bucket closer to \"system age\" as already documented\nin the man page.\n\nKeep the new file in the top-level persistdir and name it countme.epoch.\n\nTo avoid resetting the counter on every system that upgrades to this new\nlibdnf version, add a clever %post scriptlet that picks the oldest epoch\nfound in the persistdir (if any) and puts it in the countme.epoch file\n(provided that none exists yet).\n\n[1] https://fedoraproject.org/wiki/Changes/DNF_Better_Counting\n\nFixes: TBD","shortMessageHtmlLink":"Fix countme bucket calculation on system upgrade"}},{"before":"72a44c82752088df18d17c1d608b7086ad8df082","after":"6627800c9ee6166cdbdca82be1cfecb331483ed5","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-03T15:15:54.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation on system upgrade\n\nCurrently, we effectively reset the bucket to 1 whenever a repo variable\n(such as $releasever) changes. This causes long-lived systems to check\nin as \"freshly installed\" again after a system upgrade. That's not what\nthe original Fedora change proposal [1] intended for this value to\nrepresent, though.\n\nThis happens because we store the cookies in unique per-repo directories\nthat include the hash of the URL in their names, much like cachedirs.\n\nFix that by storing the epoch in a separate file that's shared among all\nthe repos and populated by whichever is counted first. This also brings\nthe meaning of the bucket closer to \"system age\" as already documented\nin the man page.\n\nKeep the new file in the top-level persistdir and name it countme.epoch.\n\nTo avoid resetting the counter on every system that upgrades to this new\nlibdnf version, add a clever %post scriptlet that picks the oldest epoch\nfound in the persistdir (if any) and puts it in the countme.epoch file\n(provided that none exists yet).\n\n[1] https://fedoraproject.org/wiki/Changes/DNF_Better_Counting\n\nFixes: TBD","shortMessageHtmlLink":"Fix countme bucket calculation on system upgrade"}},{"before":"6f865c39ee847660b0e7265c8477c1cdfbb8b82b","after":"72a44c82752088df18d17c1d608b7086ad8df082","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-02T14:57:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation on system upgrade\n\nCurrently, we effectively reset the bucket to 1 on system upgrades, i.e.\nwhenever a repo variable (such as $releasever) is changed at runtime.\nThis is because we store the cookies in unique per-repo directories that\ninclude the hash of the URL in their names, much like the cachedirs.\n\nInstead, add a new countme.epoch file that's shared among all the repos\nand populated by whichever is counted first. This not only fixes the\nsystem upgrade case but also ensures that we report the same bucket to\nevery countme-enabled repo, bringing its meaning closer to \"system age\"\nas documented in the man page.\n\nTo bridge the gap for systems upgrading to this fixed libdnf version and\nnot reset the counter on them, add a clever %post scriptlet that picks\nthe oldest epoch found (if any) and puts it into a new countme.epoch\nfile (if none exists yet).","shortMessageHtmlLink":"Fix countme bucket calculation on system upgrade"}},{"before":"f936a02bbe8a0ba21851ce1aa71a21b5d9b6f323","after":"6f865c39ee847660b0e7265c8477c1cdfbb8b82b","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-02T14:37:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation on system upgrade\n\nCurrently, we effectively reset the bucket to 1 on system upgrades, i.e.\nwhenever a repo variable (such as $releasever) is changed at runtime.\nThis is because we store the cookies in unique per-repo directories that\ninclude the hash of the URL in their names, much like the cachedirs.\n\nInstead, add a new countme.epoch file that's shared among all the repos\nand populated by whichever is counted first. This not only fixes the\nsystem upgrade case but also ensures that we report the same bucket to\nevery countme-enabled repo, bringing its meaning closer to \"system age\"\nas documented in the man page.\n\nTo bridge the gap for systems upgrading to this fixed libdnf version and\nnot reset the counter on them, add a clever %post scriptlet that picks\nthe oldest epoch found (if any) and puts it into a new countme.epoch\nfile (if none exists yet).","shortMessageHtmlLink":"Fix countme bucket calculation on system upgrade"}},{"before":"8d1c3f0e3fb28eec97e288f34a06d66401cd509b","after":"f936a02bbe8a0ba21851ce1aa71a21b5d9b6f323","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-02T14:36:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation on system upgrade\n\nCurrently, we effectively reset the bucket to 1 on system upgrades, i.e.\nwhenever a repo variable (such as $releasever) is changed at runtime.\nThis is because we store the cookies in unique per-repo directories that\ninclude the hash of the URL in their names, much like the cachedirs.\n\nInstead, add a new countme.epoch file that's shared among all the repos\nand populated by whichever is counted first. This not only fixes the\nsystem upgrade case but also ensures that we report the same bucket to\nevery countme-enabled repo, making its meaning closer to \"system age\" as\ndocumented in the man page.\n\nTo bridge the gap for systems upgrading to this fixed libdnf version and\nnot reset the counter on them, add a clever %post scriptlet that picks\nthe oldest epoch found (if any) and puts it into a new countme.epoch\nfile (if none exists yet).","shortMessageHtmlLink":"Fix countme bucket calculation on system upgrade"}},{"before":"463b4da3f8eddf1e957e4daf592d19eed28cb0c5","after":"8d1c3f0e3fb28eec97e288f34a06d66401cd509b","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-02T14:36:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"Fix countme bucket calculation\n\nCurrently, we effectively reset the bucket to 1 on system upgrades, i.e.\nwhenever a repo variable (such as $releasever) is changed at runtime.\nThis is because we store the cookies in unique per-repo directories that\ninclude the hash of the URL in their names, much like the cachedirs.\n\nInstead, add a new countme.epoch file that's shared among all the repos\nand populated by whichever is counted first. This not only fixes the\nsystem upgrade case but also ensures that we report the same bucket to\nevery countme-enabled repo, making its meaning closer to \"system age\" as\ndocumented in the man page.\n\nTo bridge the gap for systems upgrading to this fixed libdnf version and\nnot reset the counter on them, add a clever %post scriptlet that picks\nthe oldest epoch found (if any) and puts it into a new countme.epoch\nfile (if none exists yet).","shortMessageHtmlLink":"Fix countme bucket calculation"}},{"before":"d4256217350e231e5b6f2975a8dd946b129a02a2","after":"463b4da3f8eddf1e957e4daf592d19eed28cb0c5","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-02T12:58:16.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":null,"after":"d4256217350e231e5b6f2975a8dd946b129a02a2","ref":"refs/heads/iss1611-v3","pushedAt":"2024-05-02T12:43:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}},{"before":"1995cde78f5db750d4c39bd1f8a3fd27a1140bd7","after":"fc2ff3896d7485214c74127317d9cd90e8e5b645","ref":"refs/heads/iss1611-v2","pushedAt":"2024-04-30T16:15:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"dmnks","name":"Michal Domonkos","path":"/dmnks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7109627?s=80&v=4"},"commit":{"message":"WIP","shortMessageHtmlLink":"WIP"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNS0wOVQwODo0NTo1Ny4wMDAwMDBazwAAAARFaqOx","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNS0wOVQwODo0NTo1Ny4wMDAwMDBazwAAAARFaqOx","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNC0zMFQxNjoxNTo1My4wMDAwMDBazwAAAAQ-NY3O"}},"title":"Activity ยท dmnks/libdnf"}