{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":232682109,"defaultBranch":"master","name":"goipp","ownerLogin":"OpenPrinting","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2020-01-08T23:43:22.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/20563597?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1701796759.0","currentOid":""},"activityList":{"items":[{"before":"d4a0e6cb50af2476704e6e2035d9157575603cbb","after":"b36209c9a4398f3fa56a8019038c474dfc0ed5e9","ref":"refs/heads/master","pushedAt":"2024-06-22T13:44:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Formatter: one more fix of formatting of 1SetOf Collection","shortMessageHtmlLink":"Formatter: one more fix of formatting of 1SetOf Collection"}},{"before":"41ba6778192f126518b019c2cd3beacd888fb924","after":"d4a0e6cb50af2476704e6e2035d9157575603cbb","ref":"refs/heads/master","pushedAt":"2024-06-22T13:31:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Formatter: fixed formatting of 1SetOf Collection","shortMessageHtmlLink":"Formatter: fixed formatting of 1SetOf Collection"}},{"before":"925637c15685d71dd67bfe7144e8931a2c81370a","after":"41ba6778192f126518b019c2cd3beacd888fb924","ref":"refs/heads/master","pushedAt":"2024-06-22T12:05:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added Formatter, Message.Print considered deprecated.\n\nFormatter is more universal, that Message.Print. It can pretty-print\nnot only whole messages, but individual attributes, groups of attributes\nand so on.\n\nMessage.Print will remain existent for compatibility, but for the new\ncode Formatter is proffered.","shortMessageHtmlLink":"Added Formatter, Message.Print considered deprecated."}},{"before":"b37bb44b6f1e8d6677e81fac3a5b9eb741d9b794","after":"925637c15685d71dd67bfe7144e8931a2c81370a","ref":"refs/heads/master","pushedAt":"2024-06-22T11:02:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added MakeAttr() and MakeAttrCollection(). MakeAttribute considered deprecated.","shortMessageHtmlLink":"Added MakeAttr() and MakeAttrCollection(). MakeAttribute considered d…"}},{"before":"2624c0df88fd7a5a73774c3b3f8b102eac2eb51b","after":"b37bb44b6f1e8d6677e81fac3a5b9eb741d9b794","ref":"refs/heads/master","pushedAt":"2024-06-20T08:50:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added Attributes.Clone and Groups.Clone","shortMessageHtmlLink":"Added Attributes.Clone and Groups.Clone"}},{"before":"c7d35419272bb73e93a9b92dbf3532bcc6922dc9","after":"2624c0df88fd7a5a73774c3b3f8b102eac2eb51b","ref":"refs/heads/master","pushedAt":"2024-05-28T19:01:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"(*Message) FixGroup() replaced by NewMessageWithGroups()","shortMessageHtmlLink":"(*Message) FixGroup() replaced by NewMessageWithGroups()"}},{"before":"a418a33082b909c034cab7b945a9b7ec5fb3d547","after":"c7d35419272bb73e93a9b92dbf3532bcc6922dc9","ref":"refs/heads/master","pushedAt":"2024-05-28T16:30:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added (*Message) FixGroups()","shortMessageHtmlLink":"Added (*Message) FixGroups()"}},{"before":"bd5d831e78af4b97c0bf176e84c43eb3c4c441a0","after":"a418a33082b909c034cab7b945a9b7ec5fb3d547","ref":"refs/heads/master","pushedAt":"2024-05-28T10:48:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added (Group) Similar(), (Groups) Similar() and (Message) Similar()","shortMessageHtmlLink":"Added (Group) Similar(), (Groups) Similar() and (Message) Similar()"}},{"before":"c1d5d86a95823aed14305f0400ae34c645efc082","after":"bd5d831e78af4b97c0bf176e84c43eb3c4c441a0","ref":"refs/heads/master","pushedAt":"2024-05-17T11:18:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Fixed (Tag) Type() for TagNoValue. No it properly returns TypeVoid.","shortMessageHtmlLink":"Fixed (Tag) Type() for TagNoValue. No it properly returns TypeVoid."}},{"before":"8cd845b603d1e24448b14e93e7771627734f58d4","after":"c1d5d86a95823aed14305f0400ae34c645efc082","ref":"refs/heads/master","pushedAt":"2024-04-17T12:29:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added non-strict comparison of Values and Attributes (check for Similarity)\n\nSimilarity means **logical** equivalence:\n\n - Equal (in the old sense) Values and Attributes considered similar\n - Binary and String values considered similar, if they represent\n the same sequence of bytes.\n - Collections and slices of Attributes considered similar, if they\n contain the same set of attributes (but may be in the different order)\n and values of these attributes are similar.\n\nSimilarity checks are implemented:\n\n - Added new functions:\n - func ValueSimilar(v1, v2 Value) bool\n - func (Attributes) Similar(Attributes) bool\n - func (Attribute) Similar(Attribute) bool\n - Added appropriate tests","shortMessageHtmlLink":"Added non-strict comparison of Values and Attributes (check for Simil…"}},{"before":"94c92a6d5d2b2591683a3a50f94b333a49b99220","after":"8cd845b603d1e24448b14e93e7771627734f58d4","ref":"refs/heads/master","pushedAt":"2024-04-01T14:50:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added IntegerOrRange interface type\n\nIt can represent Integer or Range values","shortMessageHtmlLink":"Added IntegerOrRange interface type"}},{"before":"bf12d95465d4b26b5e9b5aad1b3529faa9758dfd","after":"94c92a6d5d2b2591683a3a50f94b333a49b99220","ref":"refs/heads/master","pushedAt":"2023-12-05T11:34:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Fixed build for 32-bit hosts","shortMessageHtmlLink":"Fixed build for 32-bit hosts"}},{"before":"8c2943ad3a96b1ed4fee7c9652feb566d4c42714","after":"bf12d95465d4b26b5e9b5aad1b3529faa9758dfd","ref":"refs/heads/master","pushedAt":"2023-12-05T07:25:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Example how to print PFF page added to documentation (fixes #1)\n\nNote, the example is mostly created by @jameshalsall and published in the\ndiscussion associated with #1\n\nI've edited it a bit, tested and included into the documentation","shortMessageHtmlLink":"Example how to print PFF page added to documentation (fixes #1)"}},{"before":"1be44245b302d00bfc92f081b5750fddec503edf","after":"8c2943ad3a96b1ed4fee7c9652feb566d4c42714","ref":"refs/heads/master","pushedAt":"2023-12-03T18:15:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Comments updated","shortMessageHtmlLink":"Comments updated"}},{"before":"c03c7d98123432ca6e0d39bb94a1378cc5304b48","after":"1be44245b302d00bfc92f081b5750fddec503edf","ref":"refs/heads/master","pushedAt":"2023-11-26T17:23:43.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added ability to represent multiple groups of the same tag (see #2, #3)\n\nThis change adds an ability to represent messages with repeated\ngroups of attributes with the same group tag. The most noticeable\nuse case is the Get-Jobs response which uses multiple Job groups,\none per returned job. See RFC 8011, 4.2.6.2. for more details.\n\nWith respect to backward compatibility, the following\nbehavior is implemented here:\n 1. (*Message).Decode() fills both Groups and named per-group\n fields (i.e., Operation, Job etc)\n 2. (*Message).Encode() and (*Message) Print, if Groups != nil,\n uses Groups and ignores named per-group fields. Otherwise,\n named fields are used as in 1.0.0\n 3. (*Message) Equal(), for each message uses Groups if\n it is not nil or named per-group fields otherwise.\n In another words, Equal() compares messages as if\n they were encoded","shortMessageHtmlLink":"Added ability to represent multiple groups of the same tag (see #2, #3)"}},{"before":"e3cbb91f599386eac265ee553b0d3e3f50a58768","after":"c03c7d98123432ca6e0d39bb94a1378cc5304b48","ref":"refs/heads/master","pushedAt":"2023-11-22T15:18:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"(Message) Equal() slightly refactored","shortMessageHtmlLink":"(Message) Equal() slightly refactored"}},{"before":"c891f3e5d546a86ad99f3f7e778ba5067952982a","after":"e3cbb91f599386eac265ee553b0d3e3f50a58768","ref":"refs/heads/master","pushedAt":"2023-11-22T13:02:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"More tests, more coverage :)","shortMessageHtmlLink":"More tests, more coverage :)"}},{"before":"54c93e8b84fbe5434b8a579378be46d4def8ac85","after":"c891f3e5d546a86ad99f3f7e778ba5067952982a","ref":"refs/heads/master","pushedAt":"2023-11-22T08:36:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Slightly better test coverage","shortMessageHtmlLink":"Slightly better test coverage"}},{"before":"d7daef3df428ff0172a971366f438d61b5dcb599","after":"54c93e8b84fbe5434b8a579378be46d4def8ac85","ref":"refs/heads/master","pushedAt":"2023-11-22T08:34:33.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"TagExtension tested and fixed\n\nEncoder fixed to use TagExtension automatically where appropriate.\n\nTagExtension encoding and decoding covered by tests.","shortMessageHtmlLink":"TagExtension tested and fixed"}},{"before":"f8a9a2eaf8e796bd901bd207b1ae8cf45a3d86b5","after":"d7daef3df428ff0172a971366f438d61b5dcb599","ref":"refs/heads/master","pushedAt":"2023-11-20T15:42:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Detailed error reporting in a case of malformed textWithLanguage\n\nPreviously error message was \"invalid data format\". Now, all possible cases\nare explained in detail.\n\nTest updated to cover all cases","shortMessageHtmlLink":"Detailed error reporting in a case of malformed textWithLanguage"}},{"before":"8e1b233972c31e529d185091372c9c0d99a961ae","after":"f8a9a2eaf8e796bd901bd207b1ae8cf45a3d86b5","ref":"refs/heads/master","pushedAt":"2023-11-20T11:52:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Added tests for most value decoding errors","shortMessageHtmlLink":"Added tests for most value decoding errors"}},{"before":"16c2121e0b61bec7864f8b829df4f0e16ab60ff8","after":"8e1b233972c31e529d185091372c9c0d99a961ae","ref":"refs/heads/master","pushedAt":"2023-11-19T16:31:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"decoder.go: test coverage improved","shortMessageHtmlLink":"decoder.go: test coverage improved"}},{"before":"933a4935a16f33b25e8a6f20b42f0f78d5d8a1fc","after":"16c2121e0b61bec7864f8b829df4f0e16ab60ff8","ref":"refs/heads/master","pushedAt":"2023-11-18T22:06:15.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"decoder.go: test coverage improved","shortMessageHtmlLink":"decoder.go: test coverage improved"}},{"before":"346bde9112fa300b6ff66bad760f235f235101a7","after":"933a4935a16f33b25e8a6f20b42f0f78d5d8a1fc","ref":"refs/heads/master","pushedAt":"2023-11-18T21:37:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Cosmetic","shortMessageHtmlLink":"Cosmetic"}},{"before":"9b199eb298dd86c2cf5ba765999ae37430c27a83","after":"346bde9112fa300b6ff66bad760f235f235101a7","ref":"refs/heads/master","pushedAt":"2023-11-18T19:35:53.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Cosmetic","shortMessageHtmlLink":"Cosmetic"}},{"before":"83ea1b7d004bda3594d07067804156854d90adbb","after":"9b199eb298dd86c2cf5ba765999ae37430c27a83","ref":"refs/heads/master","pushedAt":"2023-11-18T08:26:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"More tests, coverage increased","shortMessageHtmlLink":"More tests, coverage increased"}},{"before":"01ca176a67b6cca93605b8dad7a58e635f237be2","after":"83ea1b7d004bda3594d07067804156854d90adbb","ref":"refs/heads/master","pushedAt":"2023-11-17T07:42:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Fixed go vet warnings in goipp_test.go","shortMessageHtmlLink":"Fixed go vet warnings in goipp_test.go"}},{"before":"68d4219e5ad68ef4ec6c5ab509caf57ed2f93157","after":"01ca176a67b6cca93605b8dad7a58e635f237be2","ref":"refs/heads/master","pushedAt":"2023-10-30T22:03:31.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Refactoring of (T) String methods for T is Status/Tag/Type","shortMessageHtmlLink":"Refactoring of (T) String methods for T is Status/Tag/Type"}},{"before":"6d0a5e85129a987ac971c6888ddae5d5f7569a83","after":"68d4219e5ad68ef4ec6c5ab509caf57ed2f93157","ref":"refs/heads/master","pushedAt":"2023-10-30T13:48:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Workaround for Pantum M7300FDW\n\nPantum M7300FDW violates collection encoding rules.\nInstead of using TagMemberName, it uses named attributes\nwithin the collection\n\nAs a workaround:\n - added DecoderOptions structure\n - added (*Message) DecodeEx() and (*Message) DecodeBytesEx methods with\n additional parameter of type DecoderOptions\n - if enabled via DecoderOptions, decoder becomes more forgiving and\n allows protocol violations like this (by default, decoder remains\n strict)\n - tests updated\n\nThis mechanism can be extended in the future, as soon as other similar\nproblems will be discovered\n\nThis change should not break backward compatibility for existing programs","shortMessageHtmlLink":"Workaround for Pantum M7300FDW"}},{"before":"b04a4311578461349c796d28d4cd772ba798b157","after":"6d0a5e85129a987ac971c6888ddae5d5f7569a83","ref":"refs/heads/master","pushedAt":"2023-10-28T18:20:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"alexpevzner","name":"Alexander Pevzner","path":"/alexpevzner","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28671745?s=80&v=4"},"commit":{"message":"Cosmetic","shortMessageHtmlLink":"Cosmetic"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEbE8RhAA","startCursor":null,"endCursor":null}},"title":"Activity · OpenPrinting/goipp"}