chore: release 0.11.0

:robot: I have created a release *beep* *boop*
0.11.0 (2021-12-14)
Features

modularisation (#244) (2a13da1)

Bug Fixes

build: bee-dashboard component building (#267) (153b007)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ethersphere/bee-dashboard/releases/tag/v0.11.0 :sunflower:


fix: 4925 - consistency for "edit product" app bars

What

Now all the edit product pages use the same app bar and are called as real pages (i.e. without fullScreenDialog: true)

Screenshots

col 1
col 2

Fixes bug(s)

Fixes: #4925
Fixes: #4182

Impacted files

add_basic_details_page.dart: now using new method buildEditProductAppBar
add_other_details_page.dart: now using new method buildEditProductAppBar; removed an irrelevant barcode display
edit_new_packagings.dart: now using new method buildEditProductAppBar
edit_ocr_page.dart: now using new method buildEditProductAppBar
edit_product_page.dart: removed inconsistent fullScreenDialog:true parameters
nutrition_page_loaded.dart: now using new method buildEditProductAppBar; removed inconsistent fullScreenDialog:true parameters
product_cards_helper.dart: new method buildEditProductAppBar instead of buildProductTitle
product_field_editor.dart: removed inconsistent fullScreenDialog:true parameters
product_image_gallery_view.dart: now using new method buildEditProductAppBar
product_image_other_page.dart: now using new method buildEditProductAppBar
simple_input_page.dart: now using new method buildEditProductAppBar
simple_input_widget.dart: now we don't display the widget title on a single widget page - in order to avoid title redundancy

Codecov Report
Attention: 38 lines in your changes are missing coverage. Please review.

Comparison is base (2554848) 9.66% compared to head (f16fdef) 9.66%.
Report is 2 commits behind head on develop.

Files
Patch %
Lines

...mooth_app/lib/pages/product/simple_input_page.dart
0.00%
6 Missing :warning:

...oth_app/lib/pages/product/simple_input_widget.dart
0.00%
6 Missing :warning:

...s/smooth_app/lib/helpers/product_cards_helper.dart
0.00%
5 Missing :warning:

..._app/lib/pages/image/product_image_other_page.dart
0.00%
3 Missing :warning:

..._app/lib/pages/product/add_basic_details_page.dart
0.00%
3 Missing :warning:

..._app/lib/pages/product/add_other_details_page.dart
0.00%
3 Missing :warning:

...oth_app/lib/pages/product/edit_new_packagings.dart
0.00%
3 Missing :warning:

...es/smooth_app/lib/pages/product/edit_ocr_page.dart
0.00%
3 Missing :warning:

...h_app/lib/pages/product/nutrition_page_loaded.dart
0.00%
3 Missing :warning:

.../lib/pages/product/product_image_gallery_view.dart
0.00%
3 Missing :warning:

Additional details and impacted files
@@           Coverage Diff           @@
##           develop   #4931   +/-   ##
=======================================
  Coverage     9.66%   9.66%
=======================================
  Files          323     323
  Lines        16174   16167    -7
=======================================
  Hits          1563    1563
+ Misses       14611   14604    -7

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

The full screen thing is not related to reusability of edition screens in various places, right ?

The full screen thing is not related to reusability of edition screens in various places, right ?

@teolemon It looks like it was rather connected to a "swipe back" gesture side effect on iOS (cf. #2796).
To be linked with @g123k's #4917 that also deals differently the PopScopes.
If needed I can instead switch them all to fullScreenDialog: true. Or forget the consistency of the back button.
Therefore, indeed "the full screen thing is not related to reusability of edition screens in various places".

+1 for the removal of the full screen.
On iOS, this is a pain to not have access to the swipe gesture.

For the record there are only 4 remaining fullscreenDialog: true in the code (after this PR).
This PR was only about making the edit pages consistent.
That said:

I'm not able anyway to test on iOS (and I don't use back gesture)
the willpopscope/ios back gesture/android inconsistencies has been an issue in flutter for years (https://github.com/flutter/flutter/issues/14203) and is still unsolved
anyway @g123k's #4917 refactored the popscope

Thank you @M123-dev for your review!


[feat] Why not restore the number of dogecoin to a limited number?

Feature Request
Describe the Feature Request
Why not restore the number of dogecoin to a limited number?

Describe Preferred Solution

Describe Alternatives

Related Code

Additional Context

Take a look at https://github.com/dogecoin/dogecoin/discussions/2402


Add bump possibility of @nomiclabs/hardhat-etherscan via caret

Fixes #249.

Pinging @mpopovac-txfusion

@FilipTxFusion - fixed the merge conflict. Should be ready to get merged.


v0.6.0 doesn't compile from crates.io due to libgit2-sys dep

libgit2-sys recently updated to v0.3.7 which had a "breaking change" for cargo v0.6.0
Trying to compile results in:
[...]/cargo-0.6.0/src/cargo/sources/path.rs:147:17: 147:65 error: unresolved import `libgit2_sys::git_filemode_t::GIT_FILEMODE_COMMIT`.

There is no `GIT_FILEMODE_COMMIT` in `libgit2_sys::git_filemode_t` [E0432]

[...]/cargo-0.6.0/src/cargo/sources/path.rs:147

use libgit2_sys::git_filemode_t::GIT_FILEMODE_COMMIT;
                                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[...]/cargo-0.6.0/src/cargo/sources/path.rs:147:17: 147:65 help: run `rustc --explain E0432` to see a detailed explanation
error: aborting due to previous error

Problem arose because my Cargo.lock for a project specifies v0.3.6 of libgit2-sys as a child dep of cargo but when performing cargo package I'm assuming it ignores Cargo.lock files becasue libgit2-sys gets bumped to v0.3.7 which causes this error.

I just published 0.6.1 which should fix this, thanks for the report!

:+1: thanks!


Use latest Tailwind cdn

Is your feature request related to a problem? Please describe.
When adding Tailwind from settings, 2.2.19 is used (https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.19/tailwind.min.css)
Tailwind is now on 3.3.1 so this means some classes do not render as expected (for example stroke and fill on SVGs).
Describe the solution you'd like
Option to use the Play CDN (https://tailwindcss.com/docs/installation/play-cdn) instead.

External scripts are not yet supported by the extension, I'm going to add them.
Until then, you can just get the latest CSS CDN.

Done !
I also added daisy UI to the buttons, do you have recommendation of other styles or scripts I can add ?

PS: The update should be available later today.

That was quick! Super duper.
Re styles and ui libraries, Flowbite and Skeleton are the other two I'm aware of which are in a lot of use if that helps.


dnsmasq: fix build with recent kernel

Motivation for this change
Fixes #80514

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Will it still function with an older kernel?

I didn't test it, but it should because the added patch (from upstream) just imports an additional header which was already there in previous kernel versions.

Right. Just noticed https://github.com/NixOS/nixpkgs/commit/482642a733f1254d33b816f51c152fbd269db818 got pushed, so I am closing this.


New Filter that only Admins can apply to projects - but available to all when browsing projects

As a:

Code for Philly organizer
Interested in helping new volunteers find projects

I want

A new "Volunteers Wanted" filterable project atribute created
That is usable when anyone browses the site,
but can only be applied to projects when an Admin chooses to do so.

So that

new members can find projects that are actively interested in onboarding new volunteers
and that Admins can verify/validate projects are in fact "ready" to receive and onboard new volunteers

@rmcmillen50 I don't think we could implement this before finding solutions to #123.

Do we already have mockups/user stories for a project-member-management page?

If yes, could you send them over?
If no, how about the following:

List similar rounded profile images with names on page titled "Members"
Elements vertical in order include:

Circular Photo
Name
Role
Status dropdown(Requested, Maintaining)
-We'll put a save button where "Edit Project" goes. It becomes clickable if data has changed
-Additionally, if the user scrolls below the fold, a fixed menu and save button will appear on screen.

I feel like a simple on/off "volunteers wanted" might not go far enough to be useful, check out the "project needs" column in the feature roadmap which is an extension of this idea: https://github.com/CodeForPhilly/laddr/projects/1

@themightychris - I don't disagree, but I want to learn our way into this. Goal number 1a is to let users know which projects are actively seeking help. Goal 1b -from an internal admin perspective - is to control that value so that we validate that projects are ready and able to really solicit for new volunteers. This speaks to our "validated project" status that Dawn and I want to experiment with.
In the short term, exact volunteer needs and jobs can be continued to be inferred by the project team's issues/trello board + existing tags that describe what tech is being done. Let's be honest, new volunteers that are able and ready to make a contribution won't have issues determining what tech skills are needed to contribute.


Backport docs and domain changes from master to prep for 1.12 final

@homu r+

:pushpin: Commit 30ca4f0 has been approved by segiddins

:zap: Test exempted - status

@indirect ... this should've targeted stable ... ?

@segiddins ...augh hub pull-request, you've failed me again :sob:


Horizontal scrollbar

In some places a horizontal scrollbar is appearing for some reason.
changing kbc-main-content to overflow:hidden gets rid of it, but that could maybe mess up other things.
I've seen the scrollbar on db extractors query detail page and db-writers configuration table listing page.
Original issue: https://github.com/keboola/kbc-ui/issues/1663

This is a case of improper use of bootstrap
Every child of '.row' should be followed by child '.col-'.
So structure like '.col- > .col-* > .col-*' or '.row > .row > .row' is causing this extra space problem.
Also '.form-group' is acting as a '.row'.
'<p class="col-xs-8" ...' seems to be experimental, would not be messing with this.
If possible fix it.


inefficient and unused default merge conditional

As of this writing, merge.go:274-278 read thus:
v := fmt.Sprintf("%v", src)
if v == "TestIssue106" {
	fmt.Println(mustSet)
	fmt.Println(dst.CanSet())
}

This is the only place the text "TestIssue106" occurs in this codebase (confirmed via find . -type f | xargs grep "TestIssue106"). I suspect this is leftover from a recent testing refactor. The conditional isn't so bad, but the Sprintf overhead adds up for large structs. In addition to the possibility for unexpected prints if someone's struct happens to contain that string...
This code is unused and should be removed.

New version released: https://github.com/imdario/mergo/releases/tag/v0.3.11 Thanks!


Improve Dockerfiles

Remove redundant commands from agent.Dockerfile CMD
Remove Apt lists after installing Apt
Use a cache mount for the Pip cache consistently

Testing

[ ] viv ssh --user agent into an agent container still forwards environment variables

I feel like this change isn't worth the time it'd take to fix tasks that are broken by it.


TimeSlider: Support ITimeAware objects that lack a fixed time step interval

Time-aware layers can have continuous or irregularly-spaced time data, so they don't specify either ITimeAware.TimeInterval or LayerTimeInfo.Interval. This might be the case for WMS and for the hypothetical KML layers. The TimeSlider can't handle this yet: https://github.com/Esri/arcgis-toolkit-dotnet/blob/eee487e7a4045d60ae1b644ff33501866215838c/src/Esri.ArcGISRuntime.Toolkit/Esri.ArcGISRuntime.Toolkit/UI/Controls/TimeSlider/TimeSlider.cs#L1249-L1253

@fragmer can you provide examples of this?  Is this in the KML and/or WMS spec?

In KML documents, time is specified as a list of individual timestamps (instantaneous) and/or time spans (each with a start and/or end date). The KML specification has some examples. It's quite flexible and allows a single document to contain all kinds of uneven/mixed time data.
WMS is also quite flexible. Here are some examples in GeoServer docs. Three main patterns that we've seen are:

List of timestamps (with data shown only when the exact instant is included in the requested time extent):

<Dimension name="time" default="2000-08-03T07:00:00Z" units="ISO8601">
2000-08-03T07:00:00.000Z,2000-08-04T07:00:00.000Z,2000-08-05T07:00:00.000Z,2000-08-06T07:00:00.000Z,2000-08-07T07:00:00.000Z,2000-08-08T07:00:00.000Z,2000-08-09T07:00:00.000Z,2000-08-10T07:00:00.000Z,2000-08-11T07:00:00.000Z,2000-08-12T07:00:00.000Z,2000-08-13T07:00:00.000Z,2000-08-14T07:00:00.000Z,2000-08-15T07:00:00.000Z,2000-08-16T07:00:00.000Z,2000-08-17T07:00:00.000Z,2000-08-18T07:00:00.000Z,2000-08-19T07:00:00.000Z,2000-08-20T07:00:00.000Z,2000-08-21T07:00:00.000Z,2000-08-22T07:00:00.000Z,2000-08-23T07:00:00.000Z,2000-08-24T07:00:00.000Z,2000-08-25T07:00:00.000Z,2000-09-01T07:00:00.000Z,2000-09-02T07:00:00.000Z,2000-09-03T07:00:00.000Z,2000-09-10T07:00:00.000Z,2000-09-11T07:00:00.000Z,2000-09-12T07:00:00.000Z,2000-09-13T07:00:00.000Z,2000-09-14T07:00:00.000Z,2000-09-15T07:00:00.000Z,2000-09-16T07:00:00.000Z,2000-09-17T07:00:00.000Z,2000-09-18T07:00:00.000Z,2000-09-19T07:00:00.000Z,2000-09-20T07:00:00.000Z,2000-09-21T07:00:00.000Z,2000-09-22T07:00:00.000Z,2000-09-23T07:00:00.000Z,2000-09-24T07:00:00.000Z,2000-09-25T07:00:00.000Z,2000-09-26T07:00:00.000Z,2000-09-27T07:00:00.000Z,2000-09-28T07:00:00.000Z,2000-09-29T07:00:00.000Z,2000-09-30T07:00:00.000Z,2000-10-01T07:00:00.000Z,2000-10-02T07:00:00.000Z,2000-10-03T07:00:00.000Z,2000-10-04T07:00:00.000Z,2000-10-05T07:00:00.000Z,2000-10-06T07:00:00.000Z,2000-10-07T07:00:00.000Z,2000-10-08T07:00:00.000Z,2000-10-09T07:00:00.000Z,2000-10-10T07:00:00.000Z,2000-10-15T07:00:00.000Z,2000-10-16T07:00:00.000Z,2000-10-17T07:00:00.000Z,2000-10-18T07:00:00.000Z,2000-10-19T07:00:00.000Z,2000-10-20T07:00:00.000Z,2000-10-21T07:00:00.000Z,2000-10-22T07:00:00.000Z
</Dimension>

Continuous time (range with no interval) or effectively-continuous time (a large range with 1s interval):
<Dimension name="time" default="2000-08-03T07:00:00Z" units="ISO8601">
2000-08-03T07:00:00.000Z/2000-10-22T07:00:00.000Z
</Dimension>

Evenly-spaced repeating interval (e.g. 1 day):
<Dimension name="time" default="2000-08-03T07:00:00Z" units="ISO8601">
2000-08-03T07:00:00.000Z/2000-10-22T07:00:00.000Z/P1D
</Dimension>

Time-aware WFS layers can also have this problem -- they do not necessarily have a TimeInterval.
In the current toolkit build, trying to InitializeTimeProperties on such layers results in a NullReferenceException being thrown:
>	Esri.ArcGISRuntime.Toolkit.dll!Esri.ArcGISRuntime.Toolkit.Internal.TimeExtensions.IsGreaterThan(Esri.ArcGISRuntime.TimeValue timeValue, Esri.ArcGISRuntime.TimeValue otherTimeValue) Line 244	C#
 	Esri.ArcGISRuntime.Toolkit.dll!Esri.ArcGISRuntime.Toolkit.UI.Controls.TimeSlider.InitializeTimePropertiesAsync(Esri.ArcGISRuntime.UI.Controls.GeoView geoView) Line 1237	C#


[FLINK-16515][docs] Refactor statefun documentation for multi-language SDKs

This is a large rewrite of the stateful functions documentation to support multi-language SDKs.
In particular, we separate concepts from language-specific examples and drop outdated overviews. Specific changes are documented in the commit messages.
Two notes for reviewers:

Please double check my python code, I am not a particularly adept python developer
The page modules.rst feels lacking in content, I decided it would be better to get this PR out now and to get feedback but I suspect some of you will have idea's on what to do with that page.

@igalshilman Thanks for taking a look. I would like to leave the update I/O module configurations for a follow up PR but otherwise I believe I have addressed all your comments.

One last thing:

Not sure if it's just me, but just at first sight the navigation under the "Concepts" tab seems a bit strange to just have a "Logical Instances" sub-page.
I think it should have at-least 2 sub-pages: 1) "Application building blocks"? 2) "Logical Instances".
The application building blocks page basically contain the content you have on concepts/index, but we move those to a sub-page, and have concepts/index just providing some overview content and have users click through "Next" reading the sub-pages one by one.
Not sure if that makes it better or worse, what do you think?

I've also noticed that the ingresses/egress structures are not here, maybe @tzulitai can help here.

Yes I can help out here, as a follow-up after merging this PR.

@tzulitai I left local state as is based on @igalshilman's comment. Otherwise I have updated this PR.

@tzulitai I reorganized the concepts section to have more subpages.

Thanks for the awesome work and reviews @sjwiesman @igalshilman!
+1 to merge this.

@tzulitai I have squashed the fixup commits


Custom Parameters File and Pipeline Activities

I would love to see an example where the custom parameters file is parameterizing something inside of a pipeline activity. I can't seem to make this work.
I also found this section a bit confusing:
"When you specify array in the definition file, you indicate that the matching property in the template is an array. Data Factory iterates through all the objects in the array using the definition specified in the Integration Runtime object of the array. The second object, a string, becomes the name of the property, which is used as the name for the parameter for each iteration."
One final thing: I've noticed that the custom parameters file doesn't "take" until you do an actual hard page refresh in the Data Factory portal. Hitting the refresh button in the UI doesn't do it for me.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 1e22e4d6-366f-fbf8-e141-8905ca7ab7ae
Version Independent ID: 5be2acf2-66e7-cadf-6666-5a85a65b9771
Content: Continuous integration and delivery in Azure Data Factory
Content Source: articles/data-factory/continuous-integration-deployment.md
Service: data-factory
GitHub Login: @douglaslMS
Microsoft Alias: douglasl

@JobenNC Thank you for the detailed feedback. I have assigned this to the content owner as an enhancement. With this type of feedback, we hope to make the docs both more accurate and with greater clarity.

@CHEEKATLAPRADEEP-MSFT It looks like this may need to be assigned to @craigg-msft as the currently assigned content owner has moved on.

@craigg-msft  Could you please look into this issue?

I am having the same frustration.  If would be nice to have this sorted.

@gauravmalhot Could you please look into this issue?

I agree with JobenNC. The parameters section is terribly confusing and therefore requires a lot of trial and error to get this critical component of CI/CD to work. In particular:

The section JobenNC mentioned about the arrays is inscrutable, even with the example. I'm confused about what exactly is happening with the second string object property/parameter rename situation.
In section 3a, what does it mean to "keep the current value as the default value for the parameter" and "do not keep the default value for the parameter"? If we do not keep the default value, what value does it get? When we pass values to the custom parameters using Azure DevOps release pipelines, are those values ignored or used for each of those conditions?

I have a feeling this section was written in haste, which is understandable, but I was hoping it would be updated by now. I think it could use a complete re-write.

I got this working.  Here is an example Pipeline Activity that I wanted to parameterize the "url" element:
{
"name": "NetPriceExpiringContractsReport",
"type": "WebActivity",
"typeProperties": {
"url": "[parameters('ExecuteSPForNetPriceExpiringContractsReport_url')]",
"method": "POST",
"headers": {
"Content-Type": "application/json"
},
"body": {
"resultSet": "@activity('NetPriceExpiringContractsReportLookup').output"
}
}
}
And here is the arm-template-parameters-definition.json file example for parameterizing the "url".
"Microsoft.DataFactory/factories/pipelines": {
"properties": {
"activities": [{
"typeProperties": {
"url": "-:-url:string"
}
}]
}
}
The key is to follow the same hierarchy to the element:  properties -> activities -> typeProperties -> url

First, let me apologize for the tone in my previous comment. I was at a point of exhaustion but that's not an excuse for lack of cordiality. After figuring ADF parameterization out, I see how difficult this is to succinctly document this concept. I also see you've updated the doc and it's much improved. Here are a couple of things that I think helped me understand this better.

Explicitly understanding that the purpose of the arm-template-parameters-definition.json file is to directly modify the parameters sections of the ARM template files made me grasp this much easier (even though, in retrospect, this is obvious). This also helped me understand the meaning of "default value" for the ::, which is that it will accept the default value of whatever is set in your actual data factory for that parameter.
I believe the bullet point about arrays is mostly to explain that there is a way to create distinct parameters for each element of the array. For instance, if you update the parameters block of the pipelines array of a trigger and you do not include the second string, all pipelines linked to that trigger will use the same parameter. If you add the second string, it will create parameters for each pipeline.

I am also stuck at the topic about the Arrays and Parameter Names...
It definitely needs some more clarification... I do not think much text needs to help a lot, because its very abstract.
Samples are needed...
Maybe  A sample could be  a Schedule Trigger (https://docs.microsoft.com/en-us/azure/data-factory/how-to-create-schedule-trigger#azure-resource-manager-template) with an Array of Hours...
Then the topic could be
Trigger looks like this (sample extract)
    "type": "ScheduleTrigger",
    "typeProperties": {
        "recurrence": {
            "frequency": "Hour",
            "interval": 1,
            "startTime": "2019-04-28T00:00:00.000Z",
            "timeZone": "UTC",
            "schedule": {
                "hours": [
                    12,
                    15,
                    18
                ],
                "weekDays": [
                    "Monday",
                    "Tuesday",
                    "Wednesday",
                    "Thursday",
                    "Friday",
                    "Saturday"
                ]
            }
        }
    }

==========
How would the custom parameter template file need to look like to get

the whole string of hours customized to a json array (so there is only one parameter with this "[12,15,18]" as value
or how would this be customized to have three different parameters....

because currently I sue this as template parameter value
		"typeProperties": {
			"scope" : "=" ,
			"delay" : "=",
			"recurrence": {
				"schedule": {
					"minutes": {
						"*": "=:-mins:int"
					},
					"hours": {
						"*": "=:-hrs:int"
					}
				}
			}
		}

======
but only get three equally named parameters and in the parameter file of course then only one reference.
						"hours": [
							"[parameters('ADFScheduleTriggerIntraday_hrs')]",
							"[parameters('ADFScheduleTriggerIntraday_hrs')]",
							"[parameters('ADFScheduleTriggerIntraday_hrs')]"
						],

which I then cannot fill with three different values.

@hmayer1980, I'll try my best to explain this from my experience with setting parameters for triggers, although, I have sympathy for the technical writers here, because the concept is hard to summarize. First, forget about that paragraph about arrays for now because it is not referring to the "leaf" parameter data types that you're working on here. For your minutes and and hours, those are the "leaf" sections where you would set the actual values. In other words, you would not use an asterisk there, but rather set the actual value, like this:
            "typeProperties": {
                "scope": {`
                "delay": {
                "recurrence": {
                    "schedule": {
                        "minutes": "=:-mins:Array",
                        "hours": "=:-hrs:Array"
                    }
                }
            }

Since the actual value is an array, you would specify the Array type after the parameter name instead of int. At deploy time, you would specify that integers as an array, such as [9] and [30], if you were planning on running this at 9:30 AM UTC.
Now as for the following paragraph about arrays...

When you specify an array in the definition file, you indicate that the matching property in the template is an array. Data Factory iterates through all the objects in the array by using the definition that's specified in the Integration Runtime object of the array. The second object, a string, becomes the name of the property, which is used as the name for the parameter for each iteration.

... they are talking about something different. If you look at the JSON for most ADF components, they usually are composed of objects embedded in other objects. Sometimes the object is an array that then contains more child objects before you get down to the actual parameter you want to set. An example of this is the pipeline references for a trigger:
{
	"name": "MyTrigger",
	"properties": {
		"description": "This is an example.",
		"runtimeState": "Started",
		"pipelines": [
			{
				"pipelineReference": {
					"referenceName": "MyFirstPipeline",
					"type": "PipelineReference"
				}
			},
			{
				"pipelineReference": {
					"referenceName": "MySecondPipeline",
					"type": "PipelineReference"
				},
			}
		],
		"type": "ScheduleTrigger",
		"typeProperties": { ... }
	}
}

What they are trying to say is that if you set a parameter for the referenceName parameter, it will apply to all the pipelines in that array. Also, since you could potentially have multiple pipelines, this would result in multiple parameters in your ARM template for the referenceName parameters. This naming can get confusing, so to help out, you can provide a second string object that will be the name of the parameter in your ARM template. In this case, pipelineReference.referenceName will add the name of the pipeline to the parameter name so that you'll have a useful name for the referenceName of each pipeline in that trigger. They don't have any documentation for possible values you can use for the name, so you'll have to refer to the programming API and use trial and error.
I hope I've made it less confusing rather than more confusing!
If the moderators are reading this, perhaps you could add an example of an ARM template that would result from a custom parameter file. Comparing my ARM template to the custom parameter file helped me understand this during my testing.

@sc-bperry , you are my hero. That helps.
As I mention - its only explainable through samples,
and you need to understand that the Documentations DataTypes are not complete

<stype> is the type of parameter. If <stype> is blank, the default type is string. Supported values: string, bool, number, object, and securestring.

You just pointed out I can put as DataType "Array". I did not know / understand this.
does this mean I can put anything - also "Object"? Anything available in the DataType DropDown for a Parameter in a Pipeline?
But yes, you did a great deal in helping me.

Previously the documentation didn't explicitly list the data types, so I assumed that any data type that was an option in the dropdown list for a pipeline parameter was allowed when I first started working on my custom parameters. It looks like the documentation was changed on this commit. Perhaps they consider an Array type as an object. They do indeed include object as an allowed type in the current documentation, as you quoted.

I think I'm missing something.  I'd want to have a repository in azure devops git, set my collaboration branch to develop, and use feature branches for development.  I can then create a pull request to integrate changes from feature branch into my develop branch.  At this point, I'd release code to some integration environment for any developer smoke testing.  After this, I'd want to promote code from develop to master, and push out to any test/prod environments, however, at this point I'm moving code from a adf_publish branch to the master branch, so now develop != master.  There is some desire, not entirely mine, to control who can publish the ADF, but there doesn't seem to be granularity in this area to support a limited set of promoters within ADF.
In summary

Branch from develop to a feature branch.
Integrate from feature branch back to develop branch via a pull request.
Publish, within azure data factory, which creates/updates adf_publish branch
At this point merge from adf_publish branch to master branch.
Build/Release pipelines then execture triggered on master branch change.

In conclusion I'd now have mismatched representations of my azure data factory in my branches.  Even if I used master as the collaboration branch, I'd still have the mismatched representation scenario among branches in my repository.

The master branch and the adf_publish branch do not have the same content because they serve different purposes, and you should not merge from your adf_publish branch into another branch.  When you edit your ADF with the web GUI, the changes are made to the JSON files in whichever branch you're working on. Conversely, if you edit the JSON files with a text editor and commit them in your branch, then click Refresh in the web GUI, the changes will be reflected in the web GUI.
The adf_publish branch is used only for deployment. It contains ARM templates that you can use as part of an Azure DevOps release pipeline or for manually deploying updates to an ADF (presumably in a different environment than your dev/test ADF). If you view the files in your master and adf_publish branches, you'll see that they both contain JSON files, but the file structure and content is different. When you publish from your master branch using the GUI, Azure will automatically update the ARM template files in the adf_publish branch. Ideally, you let Azure manage the adf_publish branch. You should not need to edit the adf_publish branch directly nor merge from the adf_publish branch into another branch.
The only control you have over the adf_publish branch is by creating/editing the arm-template-parameters-definition.json file in your master branch as described in this article. This will in turn modify the ARMTemplateForFactory.json and ARMTemplateParametersForFactory.json files in your adf_publish branch when you next publish your ADF.

@sc-bperry I don't disagree with your statements, the issue I'm having is, I don't believe I can set any branch policies on the adf_publish branch, nor can I restrict who can publish the data factory, as the granularity does not seem to exist within the RBAC's.  Because of some other out of band (read as also out of my control), there is some need to restrict this operation to a select few.  The best I can figure is that I'd have an equally dead branch, something like adf_publish_master that would have some set of branch policies to allow for approvals down the dead branch line.  This is largely a rubber stamp step, but one that allows a test team to be spun up.

@pdeveau Ah, I get it now and see how that would be a problem for a change control, especially in larger organizations. Well, you've probably already tried this, but maybe there is a policy you could set on the adf_publish branch to add code reviewers or additional approvers by going to Repos > Branches > ellipses next to branch > Branch policies. I've never done this myself, so I don't know if it's a possible solution or workaround.

@sc-bperry I've tried setting the branch policies on the adf_publish branch before, the UX is pretty bad, it silently fails to tell the user it couldn't update the adf_publish branch giving all appearances through messaging that the entire publish cycle has succeeded.

Hi all,
Sorry for the delay in response from the product group. I just wanted to mention that the article has been updated relatively drastically since the last activity on this issue. It looks as if though the conversation has transitioned into a branch permissions discussion. Has that been resolved? Are there any other outstanding questions?
Thanks,
Daniel

@djpmsft Daniel, I think we've resolved the original issues. If anyone has any further questions about branch permissions, they should open a new feedback item.

Thanks for responding! #please-close

@sc-bperry  Regarding the hours parameter explained above.
In case if trigger has one timing you can pass [9] as value for hours in the override param, what if the trigger has multiple hour values ?? How to pass it in the override parameter ??
For example :
I have parametrized the hours and the trigger requires multiple values to be passed in the override param,  like 6,7,8,9,10.
when I pass [6,7,8,9,10] it is taking as a string rather than individual hour for trigger.
Can any one help ??

@sc-bperry
Thanks for your response, Please check below scenario
In custom file sample code :
"typeProperties": {
"recurrence": {
"schedule": {
"hours": {"*": "=:-hrs:Array" }
}
},
"scope": "="
}
In publish branch :
ARM template -
In ARM template I could see array but still one default value
"triggername_hrs":
{
"type": "Array",
"defaultValue": 10
},
In side trigger code - (I could see param for hours)- total I have 15 hour values for trigger
"hours": [
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]",
"[parameters('triggername_hrs')]"
]
In inside ARM tepmlate param file in publish branch -
Still see one value for trigger hours ,
"triggername_hrs": {
"value": 20
},
**should I still get one value in arm template param file in publish branch ??
Should I include "schedule.hours" for the above custom file code ???
Because when I pass below overideparam in pipeline
[ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]
it is getting updated wrongly in portal
it taking complete value as hour in portal -> 6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 and repeating this for 15 times
Instead of dividing and having each value separately

In azure devops pipeline using - ARM template deployment task with ARM templates
To enable and disable triggers I use azure cli in general


Allow for alternative base url to load gists (for internally hosted gists)

I had an issue using a gitbook gist embed plugin when referencing an internal hosted gist URL.
In order to embed something from a different URL, the base URL of gists needs to be parameterized. This PR accomplishes this task.
I also snuck in a build package.json script with devDependencies to easily minify the JS.
Hope this gets merged & published soon!

@blairvanderhoof ?

Will get to it soon - I'm unfortunately having some issues with my GitHub
account.
On Mon, Mar 4, 2019 at 2:04 PM Andrew Allbright<EMAIL_ADDRESS>wrote:

@blairvanderhoof https://github.com/blairvanderhoof ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/blairvanderhoof/gist-embed/pull/72#issuecomment-469440370,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAy5YqS7QEDnHNvqQeeO4I1R7VjoeIlDks5vTZiKgaJpZM4bXfbQ
.

Sounds good @blairvanderhoof ! Looking forward to getting this improvement into gist-embed and end artifacts regenerated.

Thanks Andrew. Hang tight, still figuring things out.
On Wed, Mar 6, 2019 at 8:01 AM Andrew Allbright<EMAIL_ADDRESS>wrote:

Sounds good @blairvanderhoof https://github.com/blairvanderhoof !
Looking forward to getting this improvement into gist-embed and end
artifacts regenerated.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/blairvanderhoof/gist-embed/pull/72#issuecomment-470164461,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAy5YrTFPdnWd7-9-MFcE1iqT8TlLMVtks5vT-ZWgaJpZM4bXfbQ
.

 I'm responding to this
issue via email.  I lost access to this account and also publish rights to
this repository. Going forward, please follow and contribute to
https://github.com/bvanderhoof/gist-embed.  I've also updated npm to point
to this new package https://www.npmjs.com/package/gist-embed.
Few notes:

Please submit pull requests like this one to
https://github.com/bvanderhoof/gist-embed going forward.
https://github.com/bvanderhoof/gist-embed is a complete rewrite. It uses
zero dependencies and no jQuery.
Caveat: It is missing support for all of the capabilities that the old
gist-embed handles like line number removal, highlighting, etc.  I plan to
add these back slowly.

Sorry again for the mishap, but I think you will be happy with the new
gist-embed going forward.
On Wed, Mar 6, 2019 at 4:39 PM Blair Vanderhoof<EMAIL_ADDRESS>wrote:

Thanks Andrew. Hang tight, still figuring things out.
On Wed, Mar 6, 2019 at 8:01 AM Andrew Allbright<EMAIL_ADDRESS>wrote:

Sounds good @blairvanderhoof https://github.com/blairvanderhoof !
Looking forward to getting this improvement into gist-embed and end
artifacts regenerated.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/blairvanderhoof/gist-embed/pull/72#issuecomment-470164461,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAy5YrTFPdnWd7-9-MFcE1iqT8TlLMVtks5vT-ZWgaJpZM4bXfbQ
.

Andrew - I just added support for configuring the baseURL to the new
gist-embed repo. See
https://github.com/bvanderhoof/gist-embed#global-settings-and-init for
instructions.  Please give it a try and let me know if you have any
questions!
 I'm responding to this
issue via email.  I lost access to this account and also publish rights to
this repository. Going forward, please follow and contribute to
https://github.com/bvanderhoof/gist-embed.  I've also updated npm to
point to this new package https://www.npmjs.com/package/gist-embed.
Few notes:

Please submit pull requests like this one to
https://github.com/bvanderhoof/gist-embed going forward.
https://github.com/bvanderhoof/gist-embed is a complete rewrite. It
uses zero dependencies and no jQuery.
Caveat: It is missing support for all of the capabilities that the old
gist-embed handles like line number removal, highlighting, etc.  I plan to
add these back slowly.

Sorry again for the mishap, but I think you will be happy with the new
gist-embed going forward.
On Wed, Mar 6, 2019 at 4:39 PM Blair Vanderhoof<EMAIL_ADDRESS>wrote:

Thanks Andrew. Hang tight, still figuring things out.
On Wed, Mar 6, 2019 at 8:01 AM Andrew Allbright<EMAIL_ADDRESS>wrote:

Sounds good @blairvanderhoof https://github.com/blairvanderhoof !
Looking forward to getting this improvement into gist-embed and end
artifacts regenerated.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/blairvanderhoof/gist-embed/pull/72#issuecomment-470164461,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAy5YrTFPdnWd7-9-MFcE1iqT8TlLMVtks5vT-ZWgaJpZM4bXfbQ
.

@blairvanderhoof Sorry you lost access to your old account...
Ahh, darn. Should have added a PR to the new repo. Can't be listed as a contributor :(. Looks like that version would definitely work though! Thanks for adding this functionality.
Also good to see the project in typescript ;)

Andrew, you are more than welcome to tweak any part of the code and become
a contributor. PRs are totally welcome.
On Fri, Mar 15, 2019 at 10:15 AM Andrew Allbright<EMAIL_ADDRESS>wrote:

@blairvanderhoof https://github.com/blairvanderhoof Sorry you lost
access to your old account...
Ahh, darn. Should have added a PR to the new repo. Can't be listed as a
contributor :(. Looks like that version would definitely work though!
Thanks for adding this functionality.
Also good to see the project in typescript ;)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/blairvanderhoof/gist-embed/pull/72#issuecomment-473370839,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAy5YiuKlVOAsFzv3a2cNnIezw5S-0goks5vW9UggaJpZM4bXfbQ
.


gh pages: hub homebrew formula doesn’t require —HEAD now

See https://github.com/Homebrew/homebrew/commit/69096c85c710679a83fbc32d9950d42668707aec

:+1:


Is it possible to hide the rotation dial?

Hi! I'm building an OCR function in an app, using Mantis to crop the image.
It works great overall, but we find that the rotation dial often accidentally receives touch instead of the bottom crop handle, which leads to the image being rotated when you intended to crop from the bottom.
Is there any way to hide the rotation dial or move it further away from the crop handle?

Hi @danielsaidi
You can use Mantis.Config.cropViewConfig.showRotationDial to hide the rotation dial.

Hi @guoyingtao
Thank you for pointing me in the right direction!
I actually tried it (seems like showRotationDial is deprecated and replaced by showAttachedRotationControlView) before posting...but it had no effect with this code:
let controller = Mantis.cropViewController(image: image)
controller.delegate = context.coordinator
controller.config.cropViewConfig.showAttachedRotationControlView = false

With this code, this was the result:

I looked at setupRotationControlViewIfNeeded and it seems like it should work, so I realized it's was probably due to that function being called at the time of controller creation.
And true enough, you need to setup the configuration before you create the controller:
var config = Mantis.Config()
config.cropViewConfig.showAttachedRotationControlView = false
let controller = Mantis.cropViewController(image: image, config: config)
controller.delegate = context.coordinator

This works great! However, I'm thinking that if you need to pass in the configuration and can't change it afterwards, perhaps the controller configuration should be immutable? Just a thought.
Thank you.

@danielsaidi
Thanks for the suggestion. Using var config make it easier to set multiple properties, also I can't prevent users to create var config


2570P Monterey SMCSuperIO stuck

Hi christ, thank you so much for this awesome project.
I tested in bigsur all was good.
but I just tested in monterey and I'm facing this problem. have any idea?
I attached my efi below
EFI.zip

its not a broblem system boot anyway
I can take the same picture at this point

its not a broblem system boot anyway
I can take the same picture at this point

Video bootloop
what's the problem? please help me

Hey let the video continue

Hey let the video continue

it's restarting, I have another ssd with bigsur and use this monterey EFI and it's working, but this monterey os always restarting like that after post install

Let the video continue and show me because I not see any reboot I just see same like me but your stop the video

Video bootloop 2

try this
config.plist.zip
then show me video
Boot or not boot

Video bootloop 3
it's restarting still

Check the Bios setup of the laptop

I was matching with your bios setup pdf that provided, but monterey still no luck for my laptop.
I'm using 12.3 btw

Hi Chris!
so I disabled airportbrcmfixup kext and the monterey booted. but the problem is wifi not working and only bluetooth is working.
I use bcm4331 (wifi + bluetooth) .
I hope you feedback me what should I do? thanks.

If you have Internal Bluethoot in the laptop, Combo WIFI and bluthoot card can be cause the issue

Chris,
thank you for your feedback..
so, I replaced airportbrcmfix to version 2.1.4 the latest and added bootarg (brcmfx-delay=15000 brcmfx-driver=3) the value 3 because my wificard is bcm4331 as explained in acidenthera github.
bluetooth and wifi are working now and I can use monterey, yay!
the installation is much easier and automated because of your work, you deserve donations!

Great thanks

what is the Model Exactly of the Mini PCI Wifi card?

This one, I bought it online it's wifi + bluetooth

This one, I bought it online and it's wifi + bluetooth.

My device is HP 6470b. My wifi card is also BCM943224HMS. I also have same wifi problem. Any problem in BigSur, but in Monterey wifi card is not working. If I use Airportbrcmfixup.kext with patched DSDT, it restarts repeatedly. If I use DSDT (without wifi patch), or when I try without DSDT, the computer turns on but does not see the wifi card.
Thanks far your contributions

My device is HP 6470b. My wifi card is also BCM943224HMS. I also have same wifi problem. Any problem in BigSur, but in Monterey wifi card is not working. If I use Airportbrcmfixup.kext with patched DSDT, it restarts repeatedly. If I use DSDT (without wifi patch), or when I try without DSDT, the computer turns on but does not see the wifi card.
Thanks far your contributions

DSDT is patch when you select BCM wifi option

My device is HP 6470b. My wifi card is also BCM943224HMS. I also have same wifi problem. Any problem in BigSur, but in Monterey wifi card is not working. If I use Airportbrcmfixup.kext with patched DSDT, it restarts repeatedly. If I use DSDT (without wifi patch), or when I try without DSDT, the computer turns on but does not see the wifi card. Thanks far your contributions

You better take out HP integrated Bluetooth 4.0+ EDR Wireless technology from the motherboard, as Chris mentioned that it caused the issue, because BCM943224HMS has already a bluetooth. that thing is like this..

@sudyhardy I have BCM943224HMS without Bluetooth, this card is not Combo card


Add gradle diffCoverage report

Signed-off-by: Daniel Widdis<EMAIL_ADDRESS>Description
Adds the Diff coverage gradle plugin.
Developers can run ./gradlew diffCoverage which will generate a jacoco coverage report only on the diff from main.

Due to a bug you should already have run ./gradle test or ./gradlew check
Full results are viewable at build/reports/jacoco/diffCoverage/html/index.html

See #250 for a discussion on thresholds and including this in CI.
Issues Resolved
Fixes #129
Note #129 also mentions updating the codecov report on pushes. This is actually already occurring with the default configuration: you can see "edited" on the original report and view changes over time if desired.  (It's possible to configure to get a new report each push, but I prefer the edit/update default.)
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #248 (929ac22) into main (6df1fa4) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main     #248   +/-   ##
=========================================
  Coverage     67.19%   67.19%
  Complexity      102      102
=========================================
  Files            24       24
  Lines           506      506
  Branches         17       17
=========================================
  Hits            340      340
  Misses          154      154
  Partials         12       12

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Worked around the uncommitted file issue, should be GTG now.

UGH..... so all that effort to get CI passing in a PR now breaks main.


Problem with Intent and missing anko's startActivityForResult

I found 2 problems with the Intent function:

It collides with android.content.Intent, making it difficult to use if I'm in an activity that overrides functions like onActivityResult or onNewIntent. Since Activity already has a property intent, I propose to rename the function to intentFor or newIntent.
When I use it, I get an error: "Type argument is not within its bound. Expected: java.lang.class<_>. Found: com.my.MyActivity". When I ctrl+click on it, I get the signature of the function with the type parameter being reified T : java.lang.Class<_>. I guess it should only bereified T : Any.

Also, Anko provides a utility function startActivity but not startActivityForResult.
Finally, startActivity is defined for Activity and android.app.Fragment but not for android.support.v4.app.Fragment

Fixed.

The last part of the question is not solved

Finally, startActivity is defined for Activity and android.app.Fragment but not for android.support.v4.app.Fragment

Contributions are welcome!


How can I make an insert for nested resources?

Environment
Knex version: 0.19.2.
Database: postgres.
Question
How can I make an insert for nested resources? For example, given the following models in my db:

products => HaveMany => variants => HaveMany => attributes.

First I create my product, then I use product id to create variants, and finally I have to create variant attributes. My doubt is, how do I map attributes with their corresponding variant? Id is autogenerated by DB.
I would like to call db just one time per model (3 times in this case).
Thank you very much for your time.

You need an ORM. Try objection.js or bookshelf.

Yeah but project owners don't want to use an ORM, so we need to implement this in pure Knex.

You'll need to use .returning() to retrieve id and do follow-up insert then.

I would still recommend giving objection a chance. As far as orms go, it's very non-intrusive and lightweight.

I agree with you, I will try to convince them to use Objection or any other ORM. Thank you very much for your time. I'll close the issue

Answer is what @kibertoad said. If you like to do it without an ORM you have to write manually multiple queries every time...
That being said, this is something that everyone who intends to use plain knex should read first https://www.jakso.me/blog/objection-to-orm-hatred.
Basically when you have implemented that nested insert feature in a general way you have just re-invented orm.

And looks like I was too slow with mobile commenting 😄


Update reboot command to avoid hanging

Updated reboot command to use systemd-run to launch the reboot as a transitory service-unit job, rather than directly running the reboot command. This allows for the LCA pod to cleanly shut down on receiving the SIGTERM, rather than hanging on the running reboot command.

/hold

/cc @browsell @jc-rh

/lgtm

/unhold

/approve


Add basic RocketChat support

Firstly, and most importantly thank you maintaining this project guys. Secondly, I have created a really basic support to integrate RocketChat alerts. At the moment the only way is using webhook_config, which lacks some customisations that we would like to use in order to make our alerting system nicer (templates on Puppet/Hiera).
Thirdly, I went though some old commits in order to figure out how to do this since am not a GoLang developer (not even a developer), I pretty much identified how Slack and Hipchat was implemented and put all the pieces together.
Finally, I ran the make format and make build-all locally and seems to passed properly.

cc @stuartnelson3 @mxinden

Thanks for suggesting this change. Unfortunately, we are currently not accepting new integrations.
We can only provide the stability and performance we want to provide if we can properly maintain the codebase. This includes, amongst others, test integrations in an automated and scalable fashion. For this reason, we are suggesting people integrate with the help of our generic interfaces. We have an integrations page on which integrations using our generic interfaces are listed.
Even if existing integrations can not be tested in an automated fashion, we will not remove them for reasons of compatibility. This also means that any additions we take on, or any changes to existing integrations we make or accept, will mean maintaining and testing these until at least the next major version, realistically even beyond that.
Feel free to question this answer on our developer mailing list, but be aware it's unlikely that you will get a different answer.

Thanks for suggesting this change. Unfortunately, we are currently not accepting new integrations.
We can only provide the stability and performance we want to provide if we can properly maintain the codebase. This includes, amongst others, test integrations in an automated and scalable fashion. For this reason, we are suggesting people integrate with the help of our generic interfaces. We have an integrations page on which integrations using our generic interfaces are listed.
Even if existing integrations can not be tested in an automated fashion, we will not remove them for reasons of compatibility. This also means that any additions we take on, or any changes to existing integrations we make or accept, will mean maintaining and testing these until at least the next major version, realistically even beyond that.
Feel free to question this answer on our developer mailing list, but be aware it's unlikely that you will get a different answer.

sure, I appreciate the explanation although I would love to see support for RocketChat in the not too long distant future 👍

@korporationcl if you've got already the mechanics in place, it shouldn't be hard to write a standalone service that would receive webhook notifications and forward them to RocketChat. If you get that working, you can then reference your project in the official documentation.

FYI it already exists
https://rocket.chat/docs/administrator-guides/integrations/prometheus/
https://github.com/pavel-kazhavets/AlertmanagerRocketChat

FYI it already exists
https://rocket.chat/docs/administrator-guides/integrations/prometheus/
https://github.com/pavel-kazhavets/AlertmanagerRocketChat

thank you, yes we are using it actually but I think we can't do things such as templating since the webhook resource does offer a very limited amount of options.

Indeed templating is the resporibility of the webhook receiver.


Release for 0.0.8

[x] comparator
[x] filter
[x] reject
[x] find
[x] map
[x] keys
[x] and -> And: change readme
[x] reduced
[x] refactor reduce -> https://github.com/ramda/ramda/pull/3248

#28

#29  map

#31 and / map

#32 reduced

#35 find and identity

#36 filter

#37 reject


add haskell backend for itp proof

Yi, what changes are made to the haskell specs? The only difference between java and haskell is the attribute of k(Int)? If so, have you tried to add the same attribute for the java backend? What happened?

ok, the java backend works for the additional attributes as well, so i reorged to remove duplicates.


Problems importing Tensorflow from installer

Simplest version of the problem.  This works:
Z:\code\ENLIGHTEN>type tf.py
import tensorflow as tf
print(tf.reduce_sum(tf.random.normal([1000, 1000])))

Z:\code\ENLIGHTEN>python tf.py
tf.Tensor(498.73596, shape=(), dtype=float32)

This seems to work:
Z:\code\ENLIGHTEN>pyinstaller --distpath=dist --workpath=work --exclude-module=_bootlocale tf.py

This fails:
Z:\code\ENLIGHTEN> dist\tf\tf.exe
Traceback (most recent call last):
  File "\\Mac\work\code\ENLIGHTEN\tf.py", line 1, in <module>
    import tensorflow as tf
  File "PyInstaller\loader\pyimod03_importers.py", line 546, in exec_module
  File "tensorflow\__init__.py", line 38, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 546, in exec_module
  File "tensorflow\python\__init__.py", line 42, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 546, in exec_module
  File "tensorflow\python\saved_model\saved_model.py", line 20, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 546, in exec_module
  File "tensorflow\python\saved_model\builder.py", line 23, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 546, in exec_module
  File "tensorflow\python\saved_model\builder_impl.py", line 26, in <module>
  File "PyInstaller\loader\pyimod03_importers.py", line 546, in exec_module
  File "tensorflow\python\framework\dtypes.py", line 28, in <module>
ImportError: DLL load failed while importing _dtypes: The specified module could not be found.
[1912] Failed to execute script 'tf' due to unhandled exception!

I think this is converging, but want to leave some breadcrumbs as I need to reboot.  This works better, or at least seems to advance to a better quality of bug:
$ cat tf.py
import ml_dtypes
import tensorflow as tf
import tensorflow.python.framework.dtypes as dt

print(f"ml_dtypes is a {ml_dtypes}")
print(f"dt is a {dt}")
print(tf.reduce_sum(tf.random.normal([1000, 1000])))

I'm currently using the following build command, but I'm sure it can be trimmed:
pyinstaller ^
  --distpath=dist ^
  --workpath=work ^
  --add-data="c:\Users\mzieg\miniconda3\envs\conda_enlighten3\Lib\site-packages\tensorflow;." ^
  --add-data="c:\Users\mzieg\miniconda3\envs\conda_enlighten3\Lib\site-packages\tensorflow\python;." ^
  --hidden-import="ml_dtypes" ^
  --hidden-import="tensorflow.python.pywrap_tensorflow_internal" ^
  --hidden-import="tensorflow.python._pywrap_tensorflow_internal" ^
  --exclude-module=_bootlocale ^
  tf.py

For the record, this works fine on Python 3.11.  I think we need to port from PySide2 to PySide6 to use that :-(
C:\Users\mzieg\test>type environment.yml
name: conda_tf

channels:
     - defaults
     - conda-forge

dependencies:
     - numpy
     - pandas
     - pexpect
     - pip
     - psutil
     - python
     - pytest
     - scipy
     - xlwt
     - pywin32

C:\Users\mzieg\test>pip list
Package                      Version
---------------------------- ------------
absl-py                      2.0.0
altgraph                     0.17.4
astunparse                   1.6.3
Bottleneck                   1.3.5
cachetools                   5.3.1
certifi                      2023.7.22
charset-normalizer           3.3.0
colorama                     0.4.6
flatbuffers                  23.5.26
gast                         0.5.4
google-auth                  2.23.2
google-auth-oauthlib         1.0.0
google-pasta                 0.2.0
grpcio                       1.59.0
h5py                         3.9.0
idna                         3.4
iniconfig                    1.1.1
keras                        2.14.0
libclang                     16.0.6
Markdown                     3.4.4
MarkupSafe                   2.1.3
mkl-fft                      1.3.8
mkl-random                   1.2.4
mkl-service                  2.4.0
ml-dtypes                    0.2.0
numexpr                      2.8.4
numpy                        1.26.0
oauthlib                     3.2.2
opt-einsum                   3.3.0
packaging                    23.1
pandas                       2.0.3
pefile                       2023.2.7
pexpect                      4.8.0
pip                          23.2.1
pip-system-certs             4.0
pluggy                       1.0.0
protobuf                     4.24.3
psutil                       5.9.0
ptyprocess                   0.7.0
pyasn1                       0.5.0
pyasn1-modules               0.3.0
pyinstaller                  6.0.0
pyinstaller-hooks-contrib    2023.9
pytest                       7.4.0
python-dateutil              2.8.2
pytz                         2023.3.post1
pywin32                      305.1
pywin32-ctypes               0.2.2
requests                     2.31.0
requests-oauthlib            1.3.1
rsa                          4.9
scipy                        1.11.1
setuptools                   68.0.0
six                          1.16.0
tensorboard                  2.14.1
tensorboard-data-server      0.7.1
tensorflow                   2.14.0
tensorflow-estimator         2.14.0
tensorflow-intel             2.14.0
tensorflow-io-gcs-filesystem 0.31.0
termcolor                    2.3.0
typing_extensions            4.8.0
tzdata                       2023.3
urllib3                      2.0.5
Werkzeug                     2.3.7
wheel                        0.41.2
wrapt                        1.14.1
xlwt                         1.3.0

C:\Users\mzieg\test>type make-tf.bat
@echo off

echo %time% purging old
rm -rfv tf-work tf-dist > rm.out

echo %time% running pyinstaller
pyinstaller ^
  --distpath=tf-dist ^
  --workpath=tf-work ^
  --exclude-module=_bootlocale ^
  tf.py

echo %time% running tf...
tf-dist\tf\tf

echo %time% done

C:\Users\mzieg\test>type tf.py
import pip_system_certs.wrapt_requests as wr
print(f"wr is {wr}\n")

import importlib
print(f"importlib is {importlib}\n")

import ml_dtypes
print(f"ml_dtypes is {ml_dtypes}\n")

import tensorflow.python.keras.callbacks as kcb
print(f"kcb is {kcb}\n")

from tensorflow.python.framework.tensor_util import constant_value as get_static_value
print(f"get_static_value is {get_static_value}\n")

from tensorflow.python.tpu import api
print(f"api is {api}\n")

from tensorflow.python.tools import module_util as _module_util
print(f"_module_util is {_module_util}\n")

import tensorflow.python.framework.dtypes as dt
print(f"dt is {dt}\n")

import tensorflow as tf
print(f"tf is {tf}\n")

print(tf.reduce_sum(tf.random.normal([1000, 1000])))

C:\Users\mzieg\test>tf-dist\tf\tf
wr is <module 'pip_system_certs.wrapt_requests' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\pip_system_certs\\wrapt_requests.pyc'>

importlib is <module 'importlib' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\importlib\\__init__.pyc'>

ml_dtypes is <module 'ml_dtypes' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\ml_dtypes\\__init__.pyc'>

WARNING:tensorflow:AutoGraph is not available in this environment: functions lack code information. This is typical of some environments like the interactive Python shell. See https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/autograph/g3doc/reference/limitations.md#access-to-source-code for more information.
kcb is <module 'tensorflow.python.keras.callbacks' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\tensorflow\\python\\keras\\callbacks.pyc'>

get_static_value is <function constant_value at 0x00000206C1C4D8A0>

api is <module 'tensorflow.python.tpu.api' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\tensorflow\\python\\tpu\\api.pyc'>

_module_util is <module 'tensorflow.python.tools.module_util' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\tensorflow\\python\\tools\\module_util.pyc'>

dt is <module 'tensorflow.python.framework.dtypes' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\tensorflow\\python\\framework\\dtypes.pyc'>

tf is <module 'tensorflow' from 'C:\\Users\\mzieg\\test\\tf-dist\\tf\\_internal\\tensorflow\\__init__.pyc'>

2023-09-30 09:42:26.225562: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: SSE SSE2 SSE3 SSE4.1 SSE4.2 AVX AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
tf.Tensor(2039.2915, shape=(), dtype=float32)

If we want to explore Python 3.11, we need to explore PySide6, so some notes down that tree.
So exciting that these are visibly different sizes yet report the same version:
-rwxr-xr-x 1 mzieg<PHONE_NUMBER>72 Sep 30 10:42 ./envs/conda_enlighten3/Lib/site-packages/PySide6/rcc.exe*
-rwxr-xr-x 1 mzieg<PHONE_NUMBER>20 Sep 30 10:43 ./envs/conda_enlighten3/Scripts/pyside6-rcc.exe*

mzieg@MARKZIEGE8D0 MINGW64 ~/miniconda3
$ ./envs/conda_enlighten3/Lib/site-packages/PySide6/rcc.exe --version
rcc 6.5.2

mzieg@MARKZIEGE8D0 MINGW64 ~/miniconda3
$ ./envs/conda_enlighten3/Scripts/pyside6-rcc.exe --version
rcc 6.5.2

Given all the fun I'm having with conda, this is at least encouraging: https://www.anaconda.com/blog/a-faster-conda-for-a-growing-community

The port to PySide6 and Python 3.11 was pretty painless.  We're past the "import" errors, and are now at an arguably more solvable-looking bug.  I haven't fixed it yet, but it looks easier.

Keeping numpy 1.26 but rolling back to Tensorflow 2.13 (all on Python 3.11) seemed to do the trick

resolved by #304


Add group dash button.

Added button to group page.
Added checks for button in specs.

[#81643562]

🎪 looks great.


ARTEMIS-659 Remove unneeded CDI dependency

@johnament  tests are good here. can we merge this? or you have other plans to this dependency on your next work on CDI?

If that comes in, I'll bring in a separate dependency from geronimo.

Merit here to @johnament. I only pushed my version as it would be easier than ask him to change his. since I wanted to run my tests on some of my servers.


No graceful server exit path

We always have to kill process, which usually causes it to hang, which means finding it in the task mangler.... Really need to add proper server exit ability.

Fixed in #68


TV shows are missing from Maintainerr when they are monitored but have no files

I currently have a rule setup that will automatically delete and unmonitor a season of a TV show if no one watches any episodes from that season for 90 days. This functionality works perfectly, no issues there.
However, in my circumstance, TV shows can get into a state where they are monitored in Sonarr, but none of the seasons are monitored and there are no files (because my previous rule has deleted and unmonitored the seasons).
If the show is a continuing show, it's not a problem because chances are my users will want to watch future seasons, so keeping it within Sonarr is useful because it'll grab those new episodes when they are available.
The issue I am running into is when shows have finished and have an Ended state in Sonarr. This leaves the show itself monitored in Sonarr, no seasons monitored, no episodes downloaded and no future episodes coming. In this case, I'd like to just have a rule that would delete the entire show from Sonarr since my users don't care about the show any more.
This seems pretty straight forward, however I noticed that shows that don't exist in Plex (which in my circumstance they won't any more, because the files are deleted) aren't interactable in the Maintainerr overview, or via Maintainerr rules/collections.
I have tried the following rules and none of them pickup the shows in that state:
mediaType: SHOWS
rules:
  - "0":
      - firstValue: Sonarr.ended
        action: EQUALS
        customValue:
          type: boolean
          value: "true"
      - operator: AND
        firstValue: Plex.sw_episodes
        action: EQUALS
        customValue:
          type: number
          value: 0

mediaType: SHOWS
rules:
  - "0":
      - firstValue: Sonarr.ended
        action: EQUALS
        customValue:
          type: boolean
          value: "true"
      - operator: AND
        firstValue: Sonarr.diskSizeEntireShow
        action: EQUALS
        customValue:
          type: number
          value: 0

Here are some screenshots the show's state in Sonarr.

I am running Maintainerr on Docker, and my current version is v2.0.1.

Hey! I noticed your discussion in Discord a bit late, so I appreciate you bringing it up as an issue. That way, I don't have to read through the entire message history 😅.
Maintainerr is designed to fetch Plex's library data initially, so it doesn't recognize your monitored *arr items without data.
Changing this would be a significant alteration, potentially leading to unintended side effects.
Perhaps another solution could be adding a checkbox on the rule page. This checkbox would allow users to force-remove ended shows, even when the action is set to 'unmonitor'. What do you think?

Perhaps another solution could be adding a checkbox on the rule page. This checkbox would allow users to force-remove ended shows, even when the action is set to 'unmonitor'. What do you think?

That could work. How would you envision the rule setup to be for my current scenario?
This is the rule set I have setup right now that tackles TV shows. The media type is set to Seasons and the Sonarr Action is set to Unmonitor and delete season.
mediaType: SEASONS
rules:
  - "0":
      - firstValue: Plex.addDate
        action: BEFORE
        customValue:
          type: custom_days
          value: "60"
      - operator: AND
        firstValue: Plex.sw_amountOfViews
        action: EQUALS
        customValue:
          type: number
          value: 0
      - operator: AND
        firstValue: Sonarr.tags
        action: NOT_CONTAINS
        customValue:
          type: text
          value: maintainerr-immunity
  - "1":
      - operator: OR
        firstValue: Plex.lastViewedAt
        action: BEFORE
        customValue:
          type: custom_days
          value: "60"
      - operator: AND
        firstValue: Sonarr.tags
        action: NOT_CONTAINS
        customValue:
          type: text
          value: maintainerr-immunity

@jorenn92 Sorry to ping you, just wondering if there was any update on this one? Was there anything else I can help with from a testing side?

@jberlyn, sorry for the delay; I've been busy and haven't had time to implement this yet. I'm also not entirely happy with the solution I proposed earlier. I'm still figuring out the best approach to tackle this. But I'm always open to ideas and suggestion!

@jberlyn, sorry for the delay; I've been busy and haven't had time to implement this yet. I'm also not entirely happy with the solution I proposed earlier. I'm still figuring out the best approach to tackle this. But I'm always open to ideas and suggestion!

I think your initial solution with just an option to "Remove entire show if Ended and no other seasons exist on disk" would work.

Not stale, I am still needing to manually remove items from Sonarr.

Not stale, I am still needing to manually remove items from Sonarr.

Thank you for bringing it back up. I have changed the labels so that it won't get auto closed again. We will add this to our plate and see what solution we can come up with. I believe something similar to what was discussed could be the solution, we just need to figure out the best way to implement it.
Thanks again!

Hey there, I'm a recent new user of Maintainerr and came across a similar issue that I think falls under a similar/same solution here.
Wondering if a checkbox along the lines of "Delete show when last season is deleted" would work?
I'm a developer and I'm happy to raise a PR for this if that seems reasonable.


[BUG-UI/UX] paginating to a new record, automatically scrolls down to selected form area

Describe the bug
Not sure if this is a bug or a feature related to the usage of the auto-focus on the form area, but maybe we don't want to automatically scroll to the selected area either because it messes a bit with the annotation flow.
To Reproduce
Steps to reproduce the behavior:

Go to a dataset
Click on open screen halfway
Scroll down to go to the next record

Expected behavior
Ideally I want to stay at the top of the screen/start of the form because you are not able to annotate anything without reading the fields.
Screenshots
https://github.com/argilla-io/argilla/assets/25269220/feb9ea3b-847d-421a-9898-d43f37e9d269

Environment (please complete the following information):

OS [e.g. iOS]:N.A.
Browser [e.g. chrome, safari]: Firefox
Argilla Version [e.g. 1.0.0]: 1.20
ElasticSearch Version [e.g. 7.10.2]:N.A.
Docker Image (optional) [e.g. argilla:v1.0.0]:1.20

Additional context
N.A.

Thanks @davidberenstein1957 to report this.
A few weeks ago I noticed this bug and it will be fixed in the bulk annotation here https://github.com/argilla-io/argilla/pull/4333
I'll update the change log to report this issue.


Project setup

List of things to put in place for the first setup

[ ] Eclipse project into the github repository, java 8
[ ] jMonkey 3 dependancy (3.1 ?)
[ ] Event bus dep
[ ] Dependancy injection dep
[ ] Jackson dep
[ ] Tonegod dep
[ ] OpenRTS Geometry package (or dep?)
[ ] MVC pattern with jmonkey application (based on OpenRTS?)
[ ] Many app states : menu, in-game, map editor, other editors (entity, particles, scripts...) or many projets?
[ ] an Entity/Component framework
[ ] Networking framework ?
[ ] a singleton Logger with different levels

it's me, Mario !! (https://www.youtube.com/watch?v=ZhadLMDWcGA )

@meltzow  Are we able to plug the openRTS network work on cosmovania right now? If not, let's close this and open another, dedicated to network for more long time goal

I will check this, these days.


7 Failes to install on Amazon Linux

On Amazon linux, Tomcat fails to install due to these lines in the attributes/default.rb file:
when 'rhel', 'fedora'
suffix = node['tomcat']['base_version'].to_i < 7 ? node['tomcat']['base_version'] : ''
The issue is that Amazon Linux uses tomcat7 as the yum package name. However Chef report Amazon Linux as part of rhel, and thus the suffix is set to '' thus it tries to install tomcat as the package name and fails.

The legacy configuration method is going to fail on Amazon currently.  Since amazon has a bit of a rolling release with non-semver versions it's hard to figure out when they went from RHEL 5-ish to RHEL 6-ish releases.  Instead I'd suggest using the new tomcat_install and tomcat_service resources that will let you manage an exact version of tomcat.


Could I declare like object "{.....}"?

Could I declare like object "{.....}"?
var foo = new .........
foo.bar('val');

/////// call
foo.bar()

You can do:
var foo = {
  bar: new ReactiveField('val')
};
foo.bar();

Thanks :+1:


optionally allow SMBs with activity mode

When using eSMB in no-bolus mode, setting an activity mode at mealtime becomes a somewhat binary proposition, as it by default disables all SMBs, making it dangerous to do so before most of the mealtime SMBs have been administered.
This change allows setting allowSMB_with_temptarget to true in preferences.json to leave SMBs enabled even when high temp targets are active.  In combination with exercise mode, this allows high temp targets to be used to make SMB less aggressive, but still properly handle meal insulin delivery.  This should make it much easier to inform oref0 that post-meal activity is likely to cause BG to drop, and cause it to be more conservative in those situations.
This also switches CSF calculation back to using the non-autosens adjusted CR, so that high temp targets take full effect at mealtime.  It applies an upper limit to the amount of carb impact that will be projected to continue, limiting the aggressiveness of SMB with large fast-absorbing meals (whose absorption often falls off sharply once insulin activity levels rise high enough to switch the liver over from a net source to a net sink of BG).  And it allows COB to still be calculated even when one or more BG readings are LOW.  (While BG is less than threshold, it will still zero-temp based on minGuardBG, but as BG starts rising again it will have a correct COB calculation to decide when to resume insulin delivery.)

@scottleibrand Why not split enableSMB_with_temptarget to enableSMB_with_low_temptarget and enableSMB_with_high_temptarget. Those preference names seem more appropriate, and I would avoid using enable and disable boolean preferences.

Because we're not using high temp targets to enable SMB, just turning off the default behavior of having them disable it. So the double negative is more accurate.
Perhaps allowSMB_with_high_temptarget would be more intuitive?

👍  for allowSMB_with_high_temptarget. Using booleans with a double negative is quite confusing.

Changed to allowSMB_with_high_temptarget and updated the PR description.

I'm ready to merge this to dev for further testing there if no objections.


Compatible with Sketch v54. Add symbol compatibility. Add "Pin to Edg…

Compatible with Sketch v54
Add symbol compatibility
Add "Pin to Edges" to RTL parameters
-Fix some bugs in text alignment

Fantastic, thanks for the clear and helpful PR! 🙌Merged.

You're welcome Devin, thank you for your helpful plugin. 👍


Wrap commands in sh -c ''

This pull request wraps commands in sh -c '' so each of them runs in its own context.
It implements what I have been proposing in issue #562.
This is mainly for discussion purposes. I have simply implemented the change and fixed all tests to pass. I have no idea if it will actually work of how big the concequences will be... :-)

with the introduction of plugins in the latest release this is no longer required. Plugins always default to the root repository directory on start


[WIP] DSDL constification + assert

Opening this PR early to expose some details.

can we please limit the line length to 120 characters

@pavel-kirienko Hope these changes makes sense.
With the new const system:

Const definitions was renamed to associated const definitions. These constants are associated with a type defintion. And it hopefully it makes things less confusing when differentiating between constants used for things as defining array lengths and assertions and associated constant definitions.
There are no uint, int is expected to be big enough to be used for any uint or int. This is done to make type resolution from literals easy.

Next steps from here are:

Adding the const set type
Adding const evaluation (defining how basic operators needed for assert works)
Adding the assert which takes a const bool (and offset will be replaced by a set before const eval)

No need for a review beyond looking at the things I've stated, this is a work in progress PR at the moment.

It is strictly defined what type of const literals that can be used to create what kind of associated consts.

Is PyDSDL currently conformant? https://github.com/UAVCAN/pydsdl/blob/9672256f4d57bc519d4ca5ebe82f13ae6e1b6c8d/pydsdl/data_type.py#L563-L606

We should probably sort out the following before i complete this chapter:

DSDL versioning (https://forum.uavcan.org/t/simpler-and-better-dsdl-versioning/280/2)
How do make these boxes (https://forum.uavcan.org/t/non-normative-sections-of-the-specification/245/3)

The boxes should wait. That's a purely cosmetic change, we can postpone it until the text is in place.

The info is pretty much there.
A condensation of the core definitions is needed, this will be possible when non-normative boxes are available.

A condensation of the core definitions is needed, this will be possible when non-normative boxes are available.

Consider merging this in: https://github.com/UAVCAN/specification/pull/40

@kjetilkjeka perhaps it's time to fix https://github.com/UAVCAN/specification/issues/34?

I just realized that this PR seems to be focused exclusively on const and expressions (yes I just read the title). In which case my suggestion to introduce other stuff such as deprecation rules should be ignored. I think I can easily add that myself after this PR is merged.

I am not sure if it is safe to rely on regular expressions for specification purposes given that the regexp syntax is not explicitly defined. Perhaps we could just put an explicit reference to IEEE POSIX ERE? https://en.wikipedia.org/wiki/Regular_expression#Standards http://pubs.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap09.html

We should reflect all useful points from https://forum.uavcan.org/t/new-dsdl-directive-for-simple-compile-time-checks/190/ in this chapter.

I think the rest of this would require non-normative boxes (which i guess is ready now).

I just realized that this PR seems to be focused exclusively on const and expressions (yes I just read the title). In which case my suggestion to introduce other stuff such as deprecation rules should be ignored. I think I can easily add that myself after this PR is merged.

Like you probably have seen there are a few days between i get to work on this specification so if you have the time I think it makes sense to merge this PR and for you to add the remaining?

I am not sure if it is safe to rely on regular expressions for specification purposes given that the regexp syntax is not explicitly defined. Perhaps we could just put an explicit reference to IEEE POSIX ERE? https://en.wikipedia.org/wiki/Regular_expression#Standards http://pubs.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap09.html

I don't think anything fancy is used in regards to regex, if that statement was to be found somewhere applying for the whole specification i think everything would be fine. Something like: "Wherever regex are used, they adhere to the IEEE POSIX ERE notation."

Like you probably have seen there are a few days between i get to work on this specification so if you have the time I think it makes sense to merge this PR and for you to add the remaining?

Will merge as soon as we resolve the offset issue.

Even if we haven't reached a definite conclusion, I think we're more or less on the same page, so I will take over from here. Await my PR soon.

Even if we haven't reached a definite conclusion, I think we're more or less on the same page, so I will take over from here. Await my PR soon.

Sorry to be unreachable, I was away for some days. Good that you were able to move on.


Do not let artman send duplicate protos to protoc.

It turns out find_protos can return duplicate results. Good times.
This PR makes us not care about that problem.
@ethanbao Feel free to merge upon reviewing; no need to wait on me.

@ethanbao Is this golden test failure unrelated?

Michael fixed the golden test failure in another PR.

I started the rebuild of golden test.
BTW, I was not able to see artifacts in the circleci report initially. After I click user settings and then connect to Google org, which will require me to login again. After the login, I can see the artifacts with current org name at top-left, and my github icon at top-right.

I started the rebuild of golden test.

Getting a different result would depend on merging master first. :-) (Now done.)


Eliminate use of EGGO_HOME env variable

EGGO_HOME should instead simply use the root of the package hierarchy that is installed when eggo is installed.

Closing for cleanup/refactor.


Add test for dirty checking Node values.

Fixes #142

ah, yeah, hopefully because cause IE doesn't have Promises. I changed the await so that hopefully we trigger the Promise polyfill to wait the right amount of time.


Define DT_UNKNOWN on Fuchsia.

It looks like this constant is relied on in the new remove_dir_all logic and we need to reference it to be able to use the CVE fix correctly on Fuchsia.

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @Amanieu (or someone else) soon.
Please see the contribution instructions for more information.

@bors r+

:pushpin: Commit af308591bdb98682a345d78da4163773eb6dbd01 has been approved by Amanieu

:hourglass: Testing commit af308591bdb98682a345d78da4163773eb6dbd01 with merge 3063aa1b45ea81b623af19b3eb9ba9c43619b23c...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13
Approved by: Amanieu
Pushing 3063aa1b45ea81b623af19b3eb9ba9c43619b23c to master...


Check that the folders exist, see to that this check is done every time it is updated

        # TODO: check that the folders exist, see to that this check is done every time it is updated

https://github.com/jceresearch/pydit/blob/3924de808887495ae59e64f003efdfc0563da98d/pydit/pydit_core.py#L28

Superseded by new version of the code


nlohmann_json: disable some tests on clang

patch tests to compile on clang-19
https://github.com/nlohmann/json/issues/4490
https://releases.llvm.org/19.1.0/projects/libcxx/docs/ReleaseNotes.html

The base template for std::char_traits has been removed in LLVM 19. If you are using std::char_traits with types other than char, wchar_t, char8_t, char16_t, char32_t or a custom character type for which you specialized std::char_traits, your code will stop working.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.
@emilazy

updated to only disable the 5 tests that fail to compile on clang-19 -- leaving the remaining 60 in tact.

eh -- I just patched the tests to make them compile.

Would it be a good idea to upstream the patch and use an URL to the patch instead?

Would it be a good idea to upstream the patch and use an URL to the patch instead?

I posted the diff in the bug report. https://github.com/nlohmann/json/issues/4490#issuecomment-2469778369. one test is ifdef-ed out and the others are missing char8_t due to not being build with c++20 (I assume) so I assume that the diff needs some work before it would be accepted for a PR. and using a url from an unmerged PR is now discouraged given that we've seen a few (perhaps just 1) examples of GitHub garbage collecting commits that are not part of a repository.


Add vLLM in docker

Description

Added vLLM inference server support
Updated CUDA version to 11.8
Tested for  h2oai/h2ogpt-4096-llama2-7b-chat
See README_DOCKER.md for more details

Parent Issue:

https://github.com/h2oai/h2ogpt/issues/615

added tests, passes.

Thanks


Securing Server-Actor connection

Hi! Is there any production grade model of securing OpentTest testing solution? How to secure connection to the server without blocking connection with actors? Any best practices tips you could share?
I have noticed that in opentest\server\db\ file users is created if opentest.js quick-start but it is not used by default.
Thanks!

There is no authentication functionality in OpenTest yet. The original idea was to allow multiple users to work with the same OpenTest server instance, but we later realized that this is not a very useful feature, at least when compared to the typical functionality that is a must for any serious test automation solution (data driven, parallel execution, CI integration, etc). You'll have to use SSH and network-level security for now and we'll be working on a set of guidelines on how to do this. Let me know if this is a stop issue for you and I'll try to give you some guidance sooner.


Proposed repository structure

Proposed Code Structure
Every prompting pipeline comes with prompt_creator and result_processor. You can manually instantiate instances of those classes or call pipeline function providing name argument.
from abc import ABC, abstractmethod
from typing import Tuple, List, Dict
import numpy as np
import supervision as sv

class BasePromptCreator(ABC):
    @abstractmethod
    def create(self, image: np.ndarray, *args, **kwargs) -> Tuple[np.ndarray, sv.Detections]:
        """
        Create a prompt from an image and additional arguments.

        Args:
            image (np.ndarray): The input image.
            *args, **kwargs: Additional arguments.

        Returns:
            Tuple[np.ndarray, sv.Detections]: A tuple containing a processed image and detections.
        """
        pass

class BaseResultProcessor(ABC):
    @abstractmethod
    def process(self, text: str, marks: sv.Detections, *args, **kwargs) -> Dict[str, str]:
        """
        Process the results with given text and detections.

        Args:
            text (str): The input text.
            marks (sv.Detections): Detections to be used in processing.
            *args, **kwargs: Additional arguments.

        Returns:
            Dict[str, str]: Processed results.
        """
        pass

    @abstractmethod
    def visualize(self, text: str, image: np.ndarray, marks: sv.Detections, *args, **kwargs) -> np.ndarray:
        """
        Visualize the results on an image.

        Args:
            text (str): The input text.
            image (np.ndarray): The input image.
            marks (sv.Detections): Detections to be visualized.
            *args, **kwargs: Additional arguments.

        Returns:
            np.ndarray: The image with visualizations.
        """
        pass

class SamPromptCreator(BasePromptCreator):
    def __init__(self, device: str):
        self.device = device

    def create(image: np.ndarray, mask: Optional[np.ndarray] = none) -> Tuple[image: np.ndarray, sv.Detections]:
        pass

class SamResultProcessor(BaseResultProcessor):

    def process(text: str, marks: sv.Detections) -> List[str]:
        pass

    def visualize(text: str, image: np.ndarray, marks: sv.Detections) -> np.ndarray:
        pass

class GroundingDinoPromptCreator(BasePromptCreator):
    def __init__(self, device: str):
        self.device = device

    def create(image: np.ndarray, categories: List[str]) -> Tuple[image: np.ndarray, sv.Detections]:
        pass

class GroundingDinoResultProcessor(BaseResultProcessor):

    def process(text: str, marks: sv.Detections) -> Dict[str, str]:
        pass

    def visualize(text: str, image: np.ndarray, marks: sv.Detections) -> np.ndarray:
        pass

PIPELINES = {
    'sam': (SamPromptCreator, SamResultProcessor),
    'grounding-dino': (GroundingDinoPromptCreator, GroundingDinoResultProcessor)
}

def pipeline(name: str, **kwargs) -> Tuple[BasePromptCreator, BaseResultProcessor]:
    """Retrieves the prompt creator and result processor for the specified pipeline.

    Args:
        name (str): The name of the pipeline.
        **kwargs: Additional keyword arguments for initializing the classes.

    Returns:
        Tuple[BasePromptCreator, BaseResultProcessor]: Instances of the prompt creator and result processor.

    Raises:
        ValueError: If the pipeline name is not in the PIPELINES dictionary.
    """
    pipeline_classes = PIPELINES.get(name)

    if pipeline_classes is None:
        raise ValueError(f"Pipeline '{name}' not found. Please choose from {list(PIPELINES.keys())}.")

    PromptCreatorClass, ResultProcessorClass = pipeline_classes

    prompt_creator = PromptCreatorClass(**kwargs)
    result_processor = ResultProcessorClass(**kwargs)

    return prompt_creator, result_processor

Example Usage
LMM inference gets sandwiched between prompt_creator and result_processor calls.
import cv2
from maestro import pipeline, prompt_gpt4_vision

prompt_creator, result_processor = pipeline('sam', device='cuda')

image_prompt, marks = prompt_creator(image=image)
text_prompt = 'Find dog.'
api_key = '...'

response = prompt_gpt4_vision(
    text_prompt=text_prompt,
    image_prompt=image_prompt,
    api_key=api_key)

visualization = result_processor.visualize(
    text=response,
    image=image,
    marks=marks)

This makes sense to me for set of marks style prompts where you're annotating an image.
I think we may want to have some aspirational things that we may implement some day that we're keeping in mind as we design the API structure. Some thoughts on potential future directions of exploration:

Chaining - taking the output of one response, doing another transformation, and passing it back (eg "find the dog" -> it finds it -> we crop the photo to isolate the object of interest -> "describe this dog")
Few-shot - pulling similar images (and captions/annotations) from a vector DB & passing them along with your prompt to show by example what you want (or "spot the difference" style prompting against a reference image)
RAG - pulling relevant images from a vector DB to add additional context
Temporal / Video - to help with eg the sports broadcasting example
Tool use - using another model like a fine-tuned CNN to be able to add additional context
Integration with existing tools like LangChain (so you can eg us these prompting techniques as part of agent flows)

Cool! I'll keep that in mind. We had a call with @PawelPeczek-Roboflow. We agreed on PromptCreator and ResultProcessor structure. Those can encapsulate a lot of the logic you just described. We just need to make sure the top layer allows to freely pass versions arguments. But because we are still not sure what we want to support we'll add high level API at the very end.

we are changing the profile of the project, making these old ideas obsolete


Use Go 1.15 and ko@master

Start to pass --platform=all to ko resolve

Codecov Report

Merging #94 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #94   +/-   ##
=======================================
  Coverage   96.18%   96.18%
=======================================
  Files          16       16
  Lines         446      446
=======================================
  Hits          429      429
  Misses         15       15
  Partials        2        2

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 958c380...516eabd. Read the comment docs.


Remove unneeded bufferLength eos_stream

src/eos_stream.c:89:14: warning: Value stored to 'bufferLength' during its initialization is never read [deadcode.DeadStores]
uint32_t bufferLength = context->currentActionDataBufferLength;
^~~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/eos_stream.c:291:5: warning: Value stored to 'read' is never read [deadcode.DeadStores]
read = unpack_variant32(buffer, bufferLength, &size);
^      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Closer inspection revealed a bug which is now resolved and fixed on branch.


posix_io: fix error message and allow nbytes == 0 on write

The posix-write interpreted a return value of 0 as a EOF error, which is isn't.

thanks @jakirkham

/merge


Address review comments from #1653

Adds tests for script preservation and args alongside scripts
/assign bobcatfish
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:

[y] Includes tests (if functionality changed/added)
[n] Includes docs (if user facing)
[y] Commit messages follow commit message best practices

See the contribution guide for more details.

/lgtm

Thanks @ImJasonH !! ❤❤❤
/lgtm
/approve


Added Next and Prev, Autoplay next song with shuffle functionality

As mentioned in issue https://github.com/Satyam1923/Spring-Music-Player/issues/25

behind commits.


$atom value should be deep-copy when get/getValue return (for immutable)

Code as follow, two problems:

scenes is a $atom value by dataModel.getValue(['scene', 'all']), modify scenes will affect dataModel. That's normal? why?
console.log show: first scenes has modified, why? This one seems async/console problem.

export const updateScene = async () => {
  const sceneId = await uiModel.getValue(['greeting', 'sceneId'])
  let scenes = await dataModel.getValue(['scene', 'all'])
  console.log(scenes)
  let scene = null
  scenes.every(scene1 => {
    if (sceneId === scene1.symbol) {
      scene = scene1
      scene.role = scene.roles.map(({ roleSign }) => roleSign).join(',')
      return false
    }
    return true
  })
  scenes = await dataModel.getValue(['scene', 'all'])
  console.log(scenes)
  await uiModel.set({
    json: {
      app: {
        modalName: 'scene-setting',
      },
      greeting: {
        scene: $atom(scene),
      },
    },
  })

  return global.reload('greeting: updateScene')
}

@michaelbpaulson can you check it ?

I'm currently performing issue triage as we get ready to perform a proper release, and closing/tagging as I go.
Deep-copying atoms of object as a default would be prohibitively expensive on the low-end hardware netflix and falcor run on. If you want to mutate object atoms after receiving them from falcor, you might be better off copying-and-updating, then merging the changed atom back into your json response (which you essentially own and can mutate at will).
Alternatively you could break apart your scene atoms into primitive (non-object) sub-paths and request those, which would also make it perfectly safe to mutate the response falcor gives you.


New OpenEEW Logo!

Are you a graphic designer ? we need help with our OpenEEW logo!

We welcome suggestions and ideas in the slack #general channel. Some guidelines for the logo:

Please don't incorporate a seismic waveform. Every seismology logo has one and we want to stand apart!
Please try aim for a mix of friendliness (open source), high tech (thats what we do), and impactful (we save lives).

Some ideas (or just ignore and do your own!):

Something global (see existing logo)
Something combing sensors+computing+alerts

@andygrillo Please assign me this task. i will work on this !

Please find my pull request for this issue #20 . I hope we can close this issue but plese tag this issue as hacktoberfest and hacktoberfest-accepted as well.
Thank you so much.

@andygrillo As this is the issue created please add two tags here hacktoberfest and hacktoberfest-accepted as well.

We can now close the issue I guess. Thanks!


Update README.md

i have added in Readme.md file for linear search

LGTM!
Also add the time complexity of the algorithm if you haven't, then I'll merge it

LGTM!
Also add the time complexity of the algorithm if you haven't, then I'll merge it

I have updated it thanks

Do prettify the README using MD Syntax. Like #,  ##

Do prettify the README using MD Syntax. Like #, ##

ok

Another PR has resolved this issue :(If you want, you can add to that README, or solve any of our issues