Refactor functional tests and have them run again

Summary
Functional tests were disabled in CI almost a year ago due to flakiness (62b72b01c27ccbd7e77202b240ac8b713bb2e4d9). This refactor reenables them and address the sources of flakiness:

There was no checking to see if Sequins actually starts up when start is called. This makes it possible for Sequins to randomly choose a port that's in use, fail to start up, but have the tests continue (and then fail) [0]
Sometimes Sequins would start up too quickly and the state polling would miss states like down. Because this PR changes it to better control the startup process we don't need to poll for the initial down state.
The testClient timeout was pretty low and would sometimes cause issues.

Testing Process
Testing this change has consisted of running the functional test suite 100 times locally and 60 times on Travis. None of these runs failed.
Future Work
I think we can make the testing framework for functional tests even better. Right now they rely heavily on polling the current state of Sequins. This works pretty well, but is susceptible to timing issues (if Sequins is too fast the polling can miss a state). Instead we should do one of the following:

Have Sequins output its state and then using the log as the source of progression.
Assert the progression at certain times throughout the test where it's known to be stable.

Footnotes
[0] This was actually a compounding issue. The test would fail with a panic so the defer tc.tearDown() functions would never be run, leaving a lot of Sequins nodes running in the background. This would increase the likelihood of reusing a port in future tests.
Thanks to @jeremy-stripe for help with figuring out what was causing issues in these tests.
r? @scottjab-stripe
cc @vasi-stripe @bartle-stripe @jerry-stripe @dusty-stripe

Adding approved label myself since @stripe-ci didn't


Fixes copyright header

Signed-off-by: Drew Baugher<EMAIL_ADDRESS>Description
Fixes copyright header
Issues Resolved
https://github.com/opensearch-project/index-management-dashboards-plugin/issues/38
Check List

[x] Commits are signed per the DCO using --signoff

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 #150 (e332496) into main (c28acf8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #150   +/-   ##
=======================================
  Coverage   63.38%   63.38%
=======================================
  Files         155      155
  Lines        4419     4419
  Branches      690      690
=======================================
  Hits         2801     2801
  Misses       1402     1402
  Partials      216      216

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 c28acf8...e332496. Read the comment docs.


Little Suggestions

Add an custom Bow attackrate
10 Ticks attackrate is optimal for swordmen npcs, but way to fast for archers.
Since you added support for let the npc's autoswitch their items, i would like to have an custom bow attackrate

Explain the Sentinel "Squad" feature in your Readme file :)

Squad feature is basically: If one NPC in a squad is attacked, all other NPCs in that squad will react and help out.

New build contains a command/functionality modification.
You can now do:
/sentinel attackrate 10
/sentinel attackrate 30 ranged

To set a separate swords vs. ranged weapon rate!

Will your new build work on mc 1.10 or only 1.11?

1.11


vocabulary for domain_id

According to our current discussion, we need to fix the vocabulary for the domain_id.
Outdated?
{
    "domain_id":{
        "EUR-11": {
          "domain_id": "EUR-11",
          "domain": "Europe",
          "nominal_resolution": "12.5km"
        },
        "EUR-22": {
          "domain_id": "EUR-22",
          "domain": "Europe",
          "nominal_resolution": "25km"
        },
        "EUR-44": {
          "domain_id": "EUR-44",
          "domain": "Europe",
          "nominal_resolution": "50km"
        }
    }
}

New?
{
    "domain_id":{
        "EUR-12": {
          "domain_id": "EUR-12",
          "domain": "Europe",
          "nominal_resolution": "12.5km"
        },
        "EUR-25": {
          "domain_id": "EUR-25",
          "domain": "Europe",
          "nominal_resolution": "25km"
        },
        "EUR-50": {
          "domain_id": "EUR-50",
          "domain": "Europe",
          "nominal_resolution": "50km"
        }
    }
}

yes, I think we can go for resolution in km here (50, 25 and 12) and later see what the CORDEX community say when the FOD of the CORDEX-CMIP6 archiving specs is released for comments.

Should the unit be included when the resolution is not provided in degrees?
This way there would be no ambiguity what is meant, and it would also be easier to switch to EUR-800m etc. in the (far?) future.
{
    "domain_id":{
        "EUR-6km": {
          "domain_id": "EUR-6km",    # 0.055 degree
          "domain": "Europe",
          "nominal_resolution": "6.25km"
        },
        "EUR-12km": {
          "domain_id": "EUR-12km",
          "domain": "Europe",
          "nominal_resolution": "12.5km"
        },
        "EUR-25km": {
          "domain_id": "EUR-25km",
          "domain": "Europe",
          "nominal_resolution": "25km"
        },
        "EUR-50km": {
          "domain_id": "EUR-50km",
          "domain": "Europe",
          "nominal_resolution": "50km"
        }
    }
}

Should the nominal_resolution attribute be calculated as for CMIP6, i.e. in a more discrete manner?
    nominal_resolutions = [
        0.5,
        1.0,
        2.5,
        5.0,
        10.0,
        25.0,
        50.0,
        100.0,
        250.0,
        500.0,
        1000.0,
        2500.0,
        5000.0,
        10000.0]
    thresholds = [
        0.72,
        1.6,
        3.6,
        7.2,
        16.0,
        36.0,
        72.0,
        160.0,
        360.0,
        720.0,
        1600.0,
        3600.0,
        7200.0]

Thanks @sol1105, yes that calcuation of nominal_resolution would be great! Those current numbers in the CV are more or less placeholders. Currently, nominal_resolutions is not a required global attribute #7 .
Furthermore, i think there is no common understanding right now, how to define that domain_id consistently. E.g., for 0.0275 resolutions (~3km), i saw EUR-3 and also EUR-0275 in presentations.

How to present different resolutions with different units is an old issue. The current suggestion is to use resolution only in km with some rounding as in the above example. This approach should work fine for the continental-scale CORDEX domains (50, 25, 12 and 6 km) but not with sub-kilometer resolution that can be used in CORDEX FPS for example. It would be good to have a common approach for all resolutions so "km" and "m" suffixes may work fine.

although for models with unstructured grids like ICON   nominal_resolution may be useful

Encoding both the domain or region and grid info in the domain_id seems indeed challenging (and we probably don't want to preference any grid setup). However, I like the idea of having native grid units in the id, e.g.

EUR-11 -> EUR-11d (rotated grid, native degrees)
EUR-11 -> EUR-12km or EUR-12500m (mercator/lambert, native m or km)
EUR-11i -> EUR-0125d (regular EUR, actually has 0.125 degrees resoultion)

higher resolved domains would be no problem, e.g., EUR-500m or EUR-0275d. I think there would be less confusion than, e.g., simply going from EUR-11 to EUR-12. This would also allow to infer the grid mapping from the filename (or as a search facet). Any information about whether the grid is native or interpolated could be given through the grid_label...

I'm not sure that we need to make simple things more complex. The current -44, -22 and -11 resolution suffixes exactly define resolution for RCMs with the rotated pole coordinate (0.11d) while other RCM whit for example the LCC projection (12.5km) use the same suffixes. It's very easy to find all simulations at about the same resolution for a CORDEX domain looking only for EUR-11 or AFR-22. Instead, a global attribute native_resolution can be introduced. The main idea now is to use only km or m for the resolution suffix.


Change roles.

Do you have predefined strings for that? E.g. ("auto", "silent", "manual")
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L106
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L181
Please extend.
Please change "button.start" to another one:
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L121 => "button.mode.silent"
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L141 => "button.mode.favorite"

Please change "button.start" to another one:
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L121 => "button.mode.silent"
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L141 => "button.mode.favorite"

This is clear for me, thx :)

Do you have predefined strings for that? E.g. ("auto", "silent", "manual")
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L106
https://github.com/JoJ123/ioBroker.xiaomiairpurifier/blob/master/main.js#L181
Please extend.

Here you would like to have instead of type: "string", that it can just match the three predefined strings?
Can you explain it a bit more please

Update: You mean something like this:
adapter.setObjectNotExists(AIR_PURIFIER_INFORMATION + AIR_PURIFIER_MODE, {     type: "state",     common: {       name: AIR_PURIFIER_MODE,       type: "string",       role: "text",       read: true,       write: false,       states: {         'auto' : 'Automatik',         'silent' : 'Nacht',         'favorite' : 'Manuell',       }     }   });

Yes. But in English:) Automatik => Auto and so on.

thx, done in #6


keydown/up event.preventDefault is not getting respected

if I have code that acts on keydown/keyup and calls preventDefault() for both, then activate those in the preview window by for instance pressing and holding space, the brackets editor will suddenly start typing a million space characters.
This is particularly destructive for UI that uses things like space for "drag things around instead of drawing". One moment you're testing your UI, the next you're trying to undo the damage brackets did to your source, which caused a reload of the preview, at which point everything blows up.

@Pomax Does this -  "activate those in the preview window by for instance pressing and holding space" mean triggering the events in the preview window?
I added an eventListener on document for keydown events, and did a event.preventDefault() for space key. Worked fine for me.

I have no idea what I ran into anymore, to be honest. It's entirely likely this is for a version of our brackets that isn't even remotely related to what is in the repo almost two and a half years later... I'll close this =)


Mark deprecated modules

You know this:
❯ npm i
npm WARN deprecated<EMAIL_ADDRESS>This module was renamed to text-field-exit. https://github.com/fregante/text-field-edit/releases/tag/v3.0.0
npm WARN deprecated<EMAIL_ADDRESS>request-promise-native has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142
npm WARN deprecated<EMAIL_ADDRESS>Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated<EMAIL_ADDRESS>this library is no longer supported
npm WARN deprecated<EMAIL_ADDRESS>Please update to v 2.2.x
npm WARN deprecated<EMAIL_ADDRESS>https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated<EMAIL_ADDRESS>Jetpack extensions are no longer supported by Firefox. Use web-ext instead to build a WebExtension.
npm WARN deprecated<EMAIL_ADDRESS>fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated<EMAIL_ADDRESS>Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated<EMAIL_ADDRESS>Package no longer supported. Contact<EMAIL_ADDRESS>for more info.
npm WARN deprecated<EMAIL_ADDRESS>request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated<EMAIL_ADDRESS>🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.
npm WARN deprecated<EMAIL_ADDRESS>Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410
npm WARN deprecated<EMAIL_ADDRESS>core-js@<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of core-js@3.

I haven't found a way to see where these packages come from, then I remembered about npmgraph. Unfortunately, npms.io’s score doesn't consider deprecation (https://github.com/npms-io/npms-analyzer/issues/257), so my deprecated module appears as fully green: http://npm.broofa.com/?q=insert-text-textarea
What do you think about marking deprecated modules as red or even a deeper red color? npmgraph would be a great tool to find why subdependencies in my app have been deprecated

FWIW, npm ls <package name> will show dependency chains to specific modules.

This is actually a pretty slick feature request.  'Makes it easy to see deprecation issues in modules w/out having to install them.  E.g. In the latest version of mocha:

Super!


Does lorax currently support GPT2 finetuned adapters?

System Info
lorax:latest
Information

[X] Docker
[ ] The CLI directly

Tasks

[X] An officially supported command
[ ] My own modifications

Reproduction
@tgaddair I have few adapters finetuned using GPT2 as base model,
Architecture of GPT2:
GPT2LMHeadModel(
  (transformer): GPT2Model(
    (wte): Embedding(50257, 768)
    (wpe): Embedding(1024, 768)
    (drop): Dropout(p=0.1, inplace=False)
    (h): ModuleList(
      (0-11): 12 x GPT2Block(
        (ln_1): LayerNorm((768,), eps=1e-05, elementwise_affine=True)
        (attn): GPT2Attention(
          (c_attn): Conv1D()
          (c_proj): Conv1D()
          (attn_dropout): Dropout(p=0.1, inplace=False)
          (resid_dropout): Dropout(p=0.1, inplace=False)
        )
        (ln_2): LayerNorm((768,), eps=1e-05, elementwise_affine=True)
        (mlp): GPT2MLP(
          (c_fc): Conv1D()
          (c_proj): Conv1D()
          (act): NewGELUActivation()
          (dropout): Dropout(p=0.1, inplace=False)
        )
      )
    )
    (ln_f): LayerNorm((768,), eps=1e-05, elementwise_affine=True)
  )
  (lm_head): Linear(in_features=768, out_features=50257, bias=False)
)

The adapters are finetuned with "c_attn, c_proj" layer, does lorax currently support it?
Expected behavior
Question about compatibility.

Hey @abhijithnair1, we don't yet support GPT-2, but we were just discussing adding this model. Happy to take a stab at adding this model this week.

@tgaddair That's actually really good news for us. We have few use-cases that are latency constrained so we went with GPT-2. I think have GPT-2 support will be a big win for us. I will be looking out for an update.

@tgaddair Is there any update on the progress of GPT2 Addition?

Hey @abhijithnair1, good news! We just landed a couple PRs that enable GPT2:

#93
#109

Let us (in particular, @geoffreyangus) know if you run into any issues!

@tgaddair Is the latest changes available in the :latest docker image?

@tgaddair @geoffreyangus I am seeing a huge difference in the inference time? I finetuned a tiny llama adapter with qlora and was getting around 150ms average for generating 10 tokens (input was 100 tokens), but for the same prompt I am getting 200-210ms now on a much smaller model like gpt2-medium (i.e., https://huggingface.co/abhipn/gpt2-medium-finetuned-qlora)
Do you what could be the reason?

Hey @abhijithnair1, could you share the script you used to generate 10 tokens with 150ms latency? 80-80ms should be doable, I'd be happy to dig into this some more.

@tgaddair The latency that I mentioned also includes swapping of the models etc.,
adapters_repeat = [array of adapters for gpt2 medium]
for adapter_id in adapters_repeat:
    generated_text = client.generate(prompt, do_sample=False, max_new_tokens=10, adapter_id=adapter_id, adapter_source="local", best_of=1,).generated_text

This was taking around 150-200 ms. Where as tinyllama qlora adapters it was 100-150ms. My assumption was that GPT2 medium is much smaller that tinyllama this should have been faster right?
Can you try a list of adapters or just repeat the same adapters in a loop or something and verify the time that includes loading the adapter etc.,?
FYI.. we loaded the adapters from file system instead of hub.

Hey @abhijithnair1, happy to run that test. Do you have any adapters I could use for testing? If not, could you tell me the ranks and target modules of your adapters, as it can have an effect on performance. Also, how many adapters are in your list?
My expectation would be that you will notice an increase in latency the first time each adapter is loaded, but subsequent requests should be nearly identical in latency to querying the base model (as there is no additional swapping required at that point). But again, happy to run some tests to verify that further.

We trained two adapters on GPT2-medium on private company data, and these are the lora parameters we used,
target_modules: [
 "c_proj",
 "c_fc",
 "c_attn"]

 r: 16
 lora_alpha: 32

For TinyLlama also we fintuned two adapters these are the parameters we used for both:
target_modules: ['q_proj', 'v_proj', 'k_proj', 'o_proj']
Here are some additional requirements we had:
Input prompt length: 100 tokens
output length: 10 tokens

Firstly we took adapters_list as (adapter1, adapter2, adapter1, adapter2 and so on...) and then made predictions like,
for adapter_id in adapter_list:
    client.generate(prompt, do_sample=False, max_new_tokens=10, adapter_id=adapter_id, adapter_source="local", best_of=1,).generated_text

Use this above code we calculate the time taken for generating predictions. We were hoping GPT2 adapters might have been much faster than tinyllama.

Thanks @abhijithnair1, as an update, I found some unnecessary mallocs that were contributing about 50ms of overhead, which are being removed in #139.
From my tests, the difference in latency is attributable to the cost of applying the LoRA layers, not to any adapter switching time (which should be negligible).
There are a few more things I will look to try this week, but hopefully this will get you closer to your target latency.

@tgaddair An improvement of 50ms is noticeable in latency sensitive scenarios. Thank you so much for all your contributions to this ticket. I am looking forward to the final release with all the improvements.

@tgaddair Tried with :latest image, still seeing the latency is above 180-200ms for gpt2-medium (getting almost similar latency with 3-4x larger models). This is the prompt I'm using.

You are a helpful assistant providing detailed answers to multiplication questions. Ensure you provide a thorough explanation using the long multiplication method for the math problem given. Make sure the answer is accurate. What is the multiplication of 524 * 192?<|endoftext|>

client.generate(prompt, do_sample=False, max_new_tokens=10, adapter_id=adapter_id, adapter_source="local", best_of=1)
np.mean(time_taken) # 187 ms
np.min(time_taken) # 173 ms

I see a 15-20ms improvement from my end.

Hey @abhijithnair1, your prompt in this case is longer than the one I was using, so that may contribute to the smaller decrease in latency (less of the time was spent on small operations like mallocs).
I'm currently working on a bigger series of changes involving CUDA graphs that from early testing have a shown as much as an additional 30-50ms decrease in latency for 10 tokens, so I'll let you know when that's ready to test out.

Hey @abhijithnair1, quick update on this. The CUDA graph PR should be coming in the next day or two. From my testing (on A100), I observed that latency with batch size 1 and 1 adapter went from 147ms to 93ms, so about a 54ms reduction in latency.

@tgaddair That's a huge improvement in latency. I'll be looking forward for the update and testing things out.

Here's the PR: https://github.com/predibase/lorax/pull/154
There are still a few small things to add and test before it's ready to use, but my hope is we can land it today or tomorrow.


unlock for minting from menu seems unreliable

Just a hypothesis here, but is it possible that there’s a difference in physically mouse-clicking the confirmation dialogue vs. tapping enter/returnon the keyboard after entering password to unlock wallet for minting only? This is on the QT wallet, Mac build.
I have noticed that if I just click enter from the keyboard that the wallet appears to be unlocked for staking, but staking never occurs.
If I quit the app and restart it, then mouse-clliclk the OK button, a ripe transaction stakes instantly.

If you click on the menu bar and select "unlock wallet for block minting only," then dismiss the dialogue by clicking cancel or by pressing escape, there is a checkmark that shows up under settings as if it were unlocked. but, in fact, it's still locked.
In a separate attempt, I think (but I'm not sure) that I type my password incorrectly, and the checkmark was displayed, but the wallet was actually still locked. But if you didn't know that the password was typed incorrectly, you might not realize why. i haven't been able to replicate this yet (failure to give error for bad password).


Correcting env var name for django secret key.

How to get Django key straight

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Cutscene Desync

Describe your bug here.
During Tankman's cutscenes, the video and audio desync due to lag, sometimes resulting in the audio playing before or after the video does.
P.S: The bug report forces you to select what you are modding from, I am not modding with Lua or Source. This is just the default build.
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Source
What is your build target?
Windows
Did you edit anything in this build? If so, mention or summarize your changes.
No

they did this cutscene in a weird way it plays an audio over an xml and sprite sheet file playing so tankmans pos will jump too


[SMALLFIX] Improve bash scripts to reduce potential bugs

This PR improves the following bash styles per https://google.github.io/styleguide/shell.xml :

Use $(command) instead of backticks.
[[ ... ]] is preferred over [ ... ]
Indent 2 spaces with "for", "if" and "while"
Improve some whitespace.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/8808/
Test PASSed.

Merged build finished. Test PASSed.

+1 LGTM


[Bug]: time data 'November 30, -0001' does not match format '%B %d, %Y'

Version Number
1.16.5
What branch are you on?
master
Describe the Bug
The building of a collection crashed because of some metadata that couldn't get parsed into a DateTime object. I am guessing the show it pulled data from had -0001 as the year, and the code couldn't handle the value when trying to create an object.
Traceback (most recent call last):                                                                 |
|   File "/app/pmm/plex_meta_manager.py", line 490, in run_collection                                |
|     radarr_add, sonarr_add = builder.run_missing()                                                 |
|   File "/app/pmm/modules/builder.py", line 2219, in run_missing                                    |
|     show = self.config.TVDb.get_series(missing_id)                                                 |
|   File "/app/pmm/modules/tvdb.py", line 136, in get_series                                         |
|     return TVDbObj(tvdb_url, self.tvdb_language, False, self.config)                               |
|   File "/app/pmm/modules/tvdb.py", line 100, in init                                           |
|     self.released = datetime.strptime(released, "%B %d, %Y") if released else released             |
|   File "/usr/lib/python3.9/_strptime.py", line 568, in _strptime_datetime                          |
|     tt, fraction, gmtoff_fraction = _strptime(data_string, format)                                 |
|   File "/usr/lib/python3.9/_strptime.py", line 349, in _strptime                                   |
|     raise ValueError("time data %r does not match format %r" %                                     |
| ValueError: time data 'November 30, -0001' does not match format '%B %d, %Y'                       |
|                                                                                |
| Unknown Error: time data 'November 30, -0001' does not match format '%B %d, %Y'
Relevant Collection/Playlist Definition
templates:
    Holiday:
        url_poster: <<poster>>
        sort_title: +++++++_<<collection_name>>
        collection_order: release
        collection_mode: hide
collections:
  Norsk:
    template: {name: Holiday, poster: https://i.imgur.com/CBoNbYg.jpeg }
    imdb_list:
    - url: https://www.imdb.com/search/title/?title_type=tv_series,tv_miniseries&release_date=1950-01-01,&countries=no&languages=no
    summary: Serier som har norsk som hovedspråk.
    visible_home: true
    visible_shared: true
    collection_order: release.desc

Logs
https://gist.github.com/aunefyren/a97bcd03fe3b410df741df9e59964954

ill add a catch for it odd that the show has a year of -0001
https://thetvdb.com/series/torsdag-kveld-fra-nydalen

ill add a catch for it odd that the show has a year of -0001 https://thetvdb.com/series/torsdag-kveld-fra-nydalen

Yeah, I agree. Pretty stupid, but if their system allows it, it can happen again even if we fix it.

Added in 1.17.0


obvious error in upload_picture

Look
https://github.com/vimeo/vimeo.py/blob/master/vimeo/upload.py#L131
Exception if all OK

Agreed, it looks pretty obvious. I'll get someone to look at it asap.

If anyone encounters this issue before we resolve it, I bet you can just add an exclamation point to change it to not equal to 200.
if obj.status_code !== 200:

Any update on this?

The temporary fix above should solve the problem. The actual release was delayed. I can not give a solid timeline at the moment.

Just pushed up a fix, and tagged v0.3.4.

Any chance this fix and version can be pushed to PyPi? We are currently running into problems due to this bug.

@sfelf Will get that updated this week.

@erunion Thank you so much!

@sfelf Pushed 0.3.4 to PyPi.

@erunion Thanks! We are installing now.


Looking up elements via selectors is not supported by jqLite!

When I use this service without jquery I get the following Error:
Error: [jqLite:nosel] Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element
http://errors.angularjs.org/1.2.0-rc.3/jqLite/nosel
    at http://localhost:8080/bower_components/angular/angular.js:78:12
    at Object.JQLite [as element] (http://localhost:8080/bower_components/angular/angular.js:1886:13)
    at modal (http://localhost:8080/bower_components/ngEkathuwa/dist/ekathuwa.js:123:19)

This happens cause you try to select via an id which is not supported in jqLite.
Please add to your documentation that jquery is needed or maybe you could resolve this, cause I don't want to use jquery.
A solution would be to keep references to your created DOM elements and then remove then instead of using selectors.

any  one can please rply how to resolve it!!

here it is log
ionic.bundle.js:26794 Error: [jqLite:nosel] Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element
http://errors.angularjs.org/1.5.3/jqLite/nosel
at ionic.bundle.js:13438
at Object.JQLite [as element] (ionic.bundle.js:16249)
at Object.buttonClicked (controllers.js:125)
at Scope.scope.buttonClicked (ionic.bundle.js:53388)
at fn (eval at compile (ionic.bundle.js:27638), :4:308)
at ionic.bundle.js:65427
at Scope.$eval (ionic.bundle.js:30395)
at Scope.$apply (ionic.bundle.js:30495)
at HTMLButtonElement. (ionic.bundle.js:65426)
at defaultHandlerWrapper (ionic.bundle.js:16787)(anonymous function) @ ionic.bundle.js:26794

Have you added jquery dependancy?
This service based on bootstrap.js, bootstrap.js required  jquery.

How do i add that!!

I mentioned 8 steps on Readme (https://github.com/sarath2/ngEkathuwa/blob/master/README.md)
Change library versions as your project required, Sometimes it may varies according to your project setup.

Thank You so much
On Thu, Jun 23, 2016 at 9:44 AM, Sarath Ambegoda<EMAIL_ADDRESS>wrote:

I mentioned 8 steps on Readme (
https://github.com/sarath2/ngEkathuwa/blob/master/README.md)
Change library versions as your project required, Sometimes it may varies
according to your project setup.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/sarath2/ngEkathuwa/issues/5#issuecomment-227945517,
or mute the thread
https://github.com/notifications/unsubscribe/ATDKXmW5iLnlx3koph_6R3Xwmdc5aqAxks5qOggxgaJpZM4BLPn-
.


Missing taxa_env.yml file

Hello,
During 3.4. STEP4: Retrieving MAGs (ONLY FOR metaG)  I encountered that MInto lacks yml configuration file for required by environment.
My command:
snakemake --snakefile /myPath/smk/mags_generation.smk --use-conda --use-singularity --restart-times 0 --keep-going --latency-wait 60 --configfile mags_generation.yaml --conda-prefix /myPath/mintoGit/MIntO/conda_env --jobs 10 --cores 40
"myPath" is of course changed to the appropriate path in the real command.
Error:
Building DAG of jobs...
WorkflowError:
Failed to open source file /myPath/MIntO/envs/taxa_env.yml
FileNotFoundError: ÄErrno 2Å No such file or directory: '/myPath/mintoGit/MIntO/envs/taxa_env.yml'

I see this environment configuration file neither in the repository nor in my installation. Could you add it by any chance?
All the best,
Bogumil

Hi,
Thanks for reporting this. Apologies for this bug.  taxa_env.yml is being phased out but some of its dependencies were left unchanged by mistake. We are working on fixing it. Meanwhile, you can copy the old version of this file from https://github.com/arumugamlab/MIntO/blob/198f34dd7d298572a14d3517b0a0de731bf82264/envs/taxa_env.yml into your /myPath/MIntO/envs/ directory. This should help you run the MAG generation step. Please let me know if this works. If it does not work, then I will suggest other solutions.
Best,
Mani

The script for MAGs runs for a while, but then it has a problem finding the bins. It fails on run_checkm. Do you have any suggestion of what might be the issue?
I have left relevant part of the run_checkm.log.
[2023-02-16 13:19:56] INFO: QA information written to: checkm02.tsv
[2023-02-16 13:19:56] INFO: { Current stage: 0:00:25.215 || Total: 0:22:07.159 }
[2023-02-16 13:19:58] INFO: CheckM v1.2.2
[2023-02-16 13:19:58] INFO: checkm lineage_wf checkm01 checkmcheckm01 -x fna --threads 10 --pplacer_threads 10 --tab_table -f checkmcheckm01.tsv
[2023-02-16 13:19:58] INFO: CheckM data: myPath/MIntO/conda_env/8bd57df8aa51800eb21f06f866234312_/checkm_data
[2023-02-16 13:19:58] INFO: [CheckM - tree] Placing bins in reference genome tree.
[2023-02-16 13:19:58] ERROR: No bins found. Check the extension (-x) used to identify bins.

  Controlled exit resulting from an unrecoverable error or warning.
[2023-02-16 13:19:58] INFO: CheckM v1.2.2
[2023-02-16 13:19:58] INFO: checkm lineage_wf checkm02 checkmcheckm02 -x fna --threads 10 --pplacer_threads 10 --tab_table -f checkmcheckm02.tsv
[2023-02-16 13:19:58] INFO: CheckM data: myPath/mintoGit/MIntO/conda_env/8bd57df8aa51800eb21f06f866234312_/checkm_data
[2023-02-16 13:19:58] INFO: [CheckM - tree] Placing bins in reference genome tree.
[2023-02-16 13:19:58] ERROR: No bins found. Check the extension (-x) used to identify bins.

  Controlled exit resulting from an unrecoverable error or warning.

Problem is solved. There were files in the metagenome pipeline directory, from failed check_run attempts that. They were messing up the run after updating the environment. Deleting the files and running MAG step again was enough to complete this step.


Thrown exceptions don't implement the container-interop interfaces

The latest version of the ServiceManager advertises that it implements the container-interop interface, but it doesn't follow the spec rules on exceptions:

Exceptions directly thrown by the container MUST implement the Interop\Container\Exception\ContainerException.

Can you provide a proof of violation? Did you verify the code on develop branch?

This is definitely fixed on the develop branch; I'm not 100% certain on the master branch.
@zerocrates — would you be willing to create a PR for the master branch?

Yes, to clarify, I'm talking about the master branch.
I can make a pull request if you'd like.


Always exclude topicName from webhook POST/PUT body

Seems like EventHub disagrees with it in all circumstances, so...fix that!

coverage: 44.764%. remained the same
when pulling 5b0e263eb24797814a16e6f76b875d83858539b8 on fix-webhook-conf
into 9f910e55b21b6432d527018f8b5e77c89b39449c on develop.

coverage: 44.764%. remained the same
when pulling 5b0e263eb24797814a16e6f76b875d83858539b8 on fix-webhook-conf
into 9f910e55b21b6432d527018f8b5e77c89b39449c on develop.


[Bug] The --ext-rules option does properly support a relative path

What happened?
When a relative path is used with --ext-rules it works only if robocop is invoked from a directory for which the relative path is valid. This is an issue when specifying --ext-rules in a .robocop file since in that case it does not work if, for example, you invoke robocop from a subdirectory of the directory containing the .robcop file.
As an example, the following entry in .robocop works only if robocop is invoked from the same directory that contains the .robocop file.
--ext-rules .robocop-custom.py
Operating System
No response
Robocop version
>= 2.0.1

Thank you for the report. It was reported some time ago and I've decided to fix it only for pyproject.toml. .robocop requires more work. But since it's the second time it's reported I will think about it if it's worth the time invested.
It's also described in our docs in https://robocop.readthedocs.io/en/stable/user_guide.html -> "Loading configuration from file" -> "Relative paths in the configuration".
The workaround for you is to use pyproject.toml instead or use absolute paths.


Get-DbaSqlservice use DbaCmObject

Type of Change

[ ] Bug fix (non-breaking change, fixes #1810)
[x] New feature (non-breaking change, adds functionality)
[ ] Breaking change (effects multiple commands or functionality)
[ ] Ran manual Pester test and has passed (`.\tests\manual.pester.ps1)
[ ] Pester test is included

Purpose

reuse Cim functionality
use messaging standard
output sqlservice object instead of PSCustomObject
improve speed

Approach

replace Get-cimInstance by Get-DbaCmObject
replace Write-verbose by Write-Message
return sqlservice object

Learning

instead of speeding up, these changes are actually slowing it down:
on my domain, it went from 14-15 sec to 21-31 sec for 20 computers

Unfortunately,  @FriedrichWeinmann, we can confirm the slowness in the lab.
'sql2005','sql2008','sql2008\sql2k8','sql2012','sql2014','sql2016a','sql2016b','sql2016c' | Get-DbaSqlService
Development branch: 5.28 seconds
SqlService branch: 10.71
@PowerDBAKlaas - I will keep this PR open until the speed issue is resolved.

Will look into it!
The proportions should rather be the opposite actually ... hm ...
May take a bit - got a lot on my plate from my company, may need a few days before I can take a look, sorry :(

@potatoqualitee are we going to wait for the dependent commands to be fixed before merging this update?

@PowerDBAKlaas I'm just curious after noting this command in current version of development branch takes about 8 seconds to return the SSIS services on my machine:

Is there any difference if you have this use WMI.ManagedComputer instead of CIM?
if (-not (Get-Module dbatools)) {
	ipmo .\dbatools.psm1
}
$scriptBlock = {
	$wmi.Services | ForEach-Object {
		[PSCustomObject]@{
			ServiceName  = $_.Name
			DisplayName  = $_.DisplayName
			StartName    = $_.ServiceAccount
			ServiceType  = $_.Type
			State        = $_.ServiceState
			StartMode    = $_.StartMode
		}
	}
}

Invoke-ManagedComputerCommand -ComputerName manatarms -ScriptBlock $scriptBlock | Where-Object ServiceType -eq 'SqlServerIntegrationService'

The above code returned information under a second:

If I recall correctly, I had issues when the highest namespace doesn't contain any services:
after a partial install, or an install and remove, or something.
I think the managedcomputer command doesn't catch that.

How did you test that? If Wmi.ManagedComputer does not see the service then Configuration Manager does not function and you can't modify any of the services in a supported manner. If that is the case there is no guarantee the services are functioning anyway at that point.
I would also think you are going the same route, just using CIM to get what ManagedComputer already has...unless I read your code wrong.

$namespace = Get-CimInstance -ComputerName $Computer -NameSpace root\Microsoft\SQLServer -ClassName "__NAMESPACE" -Filter "Name Like 'ComputerManagement%'" -ErrorAction SilentlyContinue |                             Where-Object {(Get-CimInstance -ComputerName $Computer -Namespace $("root\Microsoft\SQLServer\" + $_.Name) -Query "SELECT * FROM SqlService" -ErrorAction SilentlyContinue).count -gt 0} |                             Sort-Object Name -Descending | Select-Object -First 1
This selection solved it in my case. I had 'ComputerManagement10', 'ComputerManagement11' and 'ComputerManagement12' on one computer, but

...10 didn't return the higher versions of the services.
...12 didn't have any 'SqlService' objects.
So I came up with "I need the highest namespace that does have sqlservice class objects".

I think this had something to do with it too: https://www.powerdba.eu/powershell-for-the-dba/managedcomputererror

I can't say I've ever seen or had that issue before.

Got the following yesterday when was testing Get-DbaSqlService (and Stop-*) with more than 10 machines at a time:

There were no credentials specified in the function call.
This error only exists in the current session and do not reappear in the new PS session.

I  uhm, I don't know when the Cm commands will be available and there are now conflicts with this command. My apologies, Klaas, but I've got to close this one.

To be fair, new Get-DbaSqlService uses huge bits of code from this branch, so basically this code was actually merged, but from a different source 😃


GTDBtk fails to due to prodigal's Non-Zero exit code.

Problem Description
The rule run_gtdbtk fails due to the following error.
[2023-09-29 17:11:21] INFO: Identifying markers in 1 genomes with 4 threads.
[2023-09-29 17:11:21] TASK: Running Prodigal V2.6.3 to identify genes.
[2023-09-29 17:11:42] ERROR: Controlled exit resulting from an unrecoverable error or warning.

================================================================================
EXCEPTION: ProdigalException
  MESSAGE: An exception was caught while running Prodigal: Prodigal returned a non-zero exit code.
________________________________________________________________________________

Traceback (most recent call last):
  File "/home/lbergstrand/rnd/hybrid_assembly_pipeline/scratch_space/conda_envs/e64245cbfbbe74933ee636d603a82d12_/lib/python3.8/site-packages/gtdbtk/external/prodigal.py", line 211, in run
    raise ProdigalException('Prodigal returned a non-zero exit code.')
gtdbtk.exceptions.ProdigalException: Prodigal returned a non-zero exit code.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/lbergstrand/rnd/hybrid_assembly_pipeline/scratch_space/conda_envs/e64245cbfbbe74933ee636d603a82d12_/lib/python3.8/site-packages/gtdbtk/__main__.py", line 98, in main
    gt_parser.parse_options(args)
  File "/home/lbergstrand/rnd/hybrid_assembly_pipeline/scratch_space/conda_envs/e64245cbfbbe74933ee636d603a82d12_/lib/python3.8/site-packages/gtdbtk/main.py", line 816, in parse_options
    self.identify(options)
  File "/home/lbergstrand/rnd/hybrid_assembly_pipeline/scratch_space/conda_envs/e64245cbfbbe74933ee636d603a82d12_/lib/python3.8/site-packages/gtdbtk/main.py", line 271, in identify
    markers.identify(genomes,
  File "/home/lbergstrand/rnd/hybrid_assembly_pipeline/scratch_space/conda_envs/e64245cbfbbe74933ee636d603a82d12_/lib/python3.8/site-packages/gtdbtk/markers.py", line 203, in identify
    genome_dictionary = prodigal.run(genomes, tln_tables)
  File "/home/lbergstrand/rnd/hybrid_assembly_pipeline/scratch_space/conda_envs/e64245cbfbbe74933ee636d603a82d12_/lib/python3.8/site-packages/gtdbtk/external/prodigal.py", line 220, in run
    raise ProdigalException(f'An exception was caught while running Prodigal: {e}')
gtdbtk.exceptions.ProdigalException: An exception was caught while running Prodigal: Prodigal returned a non-zero exit code.
================================================================================

Unknown, I activated the gtdbtk environment built by conda and ran prodigal manually and no error code occurred. I also tried to update the version of gtdbtk.
Problem Solution
gtdbtk classify_wf -h has a --genes   indicates input files contain called genes (skip gene calling). Warning: This flag will also skip the ANI comparison steps (ani_screen and classification). (default: False) flag.
@jmtsuji Have you encountered this error before?

I upgraded to the latest version of GTDBtk, but I had to add the --skip_ani_screen flag to classify_wf to get it to work. They want you to build a MASH db beforehand.

Hmm, odd issue with prodigal -- I've never seen this before. Could be an install issue. I think it's reasonable to go ahead and update GTDB-Tk to the most recent version and to update the GTDB database to r214.1 (as discussed in #32 ).
With this new version, it sounds like we will need to add a step to the GTDB setup rule (or make a separate rule) to set up a MASH db.

Sounds good. I will add the --skip_ani_screen flag to my branch until this is resolved.

I just saw this in the FAQ:
Using the --mash_db option will indicate to GTDB-Tk the path of the sketched Mash database require for ANI screening.
If no database are available ( i.e. this is the first time running classify ), the --mash_db option will sketch a new Mash database that can be used for subsequent calls.

So if we give it the correct path to the mash_db and there is not one it will make one.

I think that this step can be used to rebuild the database.
https://ecogenomics.github.io/GTDBTk/commands/ani_rep.html

@LeeBergstrand thanks for finding this. It would be great if gtdbtk ani_rep could be run independently from the main workflow. If so: as part of a GTDB setup rule, maybe we could run gtdbtk ani_rep on the test dataset included with the GTDB (used in gtdb test) with the --mash_db flag, just to build the mash database?

So I added the --mash_db to the run_gtdb rule as a temporary fix in  https://github.com/jmtsuji/rotary/commit/081a99f6149275938239879b8a7daaaa1f332fe1 it looks to me that I think this fix will skip making a mash db if one was already created. Running it now to see what output files this generates.
We need to make a separate rule for this as ani_rep requires the assembled genomes. Or we generate the reference sketch directly using mash.  The output files for ani_rep are the following:
[prefix].ani_closest.tsv
[prefix].ani_summary.tsv
[prefix].log
[prefix].warnings.log
[prefix].warnings.log
intermediate_results/mash/
    [prefix].gtdb_ref_sketch.msh
    [prefix].mash_distances.msh
    [prefix].user_query_sketch.msh

So, I think we need to generate the gtdb_ref_sketch.msh file. I'll check their code to see how they do it.

Thanks for making the temporary fix and for looking into this issue more deeply!

So I added the --mash_db to the run_gtdb rule as a temporary fix in https://github.com/jmtsuji/rotary/commit/081a99f6149275938239879b8a7daaaa1f332fe1 it looks to me that I think this fix will skip making a mash db if one was already created. Running it now to see what output files this generates.

I agree with you, I think it will make a Mash DB if one does not already exist, and it will skip making a Mash DB if one does exist. Curious what the output of your test run will look like.
One comment: my impression (just from reading the docs) was that --mash_db creates a sketch of the GTDB's DB itself (not the user's input genomes), so the Mash DB only needs to be generated once. Otherwise, it seems odd to me that the GTDB-Tk tool devs would even include a flag to output the Mash DB, rather than keeping the Mash DB as a temp file. But it's odd that there is seemingly no way to run the Mash DB generation step without giving user-supplied genomes, in that case. Anyway, will be interesting to dive into the GTDB-Tk code more deeply and also do a test run of GTDB-Tk -- thanks for doing this. If it turns out that the generated Mash DB is actually generic (rather than run-specific), then the Mash DB could be saved into rotary's DB folder rather than the run output folder. Anyway, thanks again!

Addressed in https://github.com/jmtsuji/rotary/commit/219c5a58e2a6daedf11c544f5ae514ae1fcea324, where we build the reference mash db and store it in the database folder.
I looked through their code and learned how they ran mash within the classify wf command. It turns out they were running the following command:
mash sketch -l -p 4 /tmp/gtdbtk_mash_tmp_qm841e_g/genomes.txt -o annotation/gtdbtk/run_files/BS6_sketch.msh -k 16 -s 5000

Where genomes.txtcontains a list of the paths to all the genomes in the GTDBtk database.
The command --mash_db has documentation that it is the mash DB for all the references.
path to save/read (if exists) the Mash reference sketch database (.msh)`

So, that means this flag only leads to the reference database (GTDB), not the query.


sh.exe.stackdump?

Why is the file sh.exe.stackdump in the git repo?

I will remove it,git generated it

The file is still in the repo.

Done!


Fix obcs stevens

What changes does this PR introduce?
simplify code by rearranging computations to remove code from non-stevens subroutines
What is the new behaviour
now new behaviour, but the changes modify the results
Does this PR introduce a breaking change?
No, but results change
Suggested addition to tag-index
o pkg/obcs: rearrange computation of stevens bcs to make code simpler:

revert obcs_apply_ts.F to version w/out extra code for Stevens boundary conditions
in obcs_calc_stevens.F, update boundary tracer values instead of just computing tendency
update reference experiment after modifying Stevens BC code

@mjlosch Do you have a precise idea about why the output of exp. exp4.stevens are
changing ? cg2d is down to 8 digits match but when I look at differences between compilers,
it usually stays at 10 or better.
Otherwise it looks good (LGTM).

@jm-c The changes will not give me the same results, because the update is applied to different: tracer fields:

old way: compute tendency based on old T/S (called from do_oceanic_physics), then update T/S = T/S + dt*tendency based on updated T/S at the end of thermodynamics (in obcs_apply_ts)
new way: compute tendency based on old T/S and update old T/S = T/S + dt*tendency (called from do_oceanic_physics) and then just copy this T/S to the boundaries in thermodynamics/obcs_apply_ts.

I think the old way is even wrong, because it contains two updates, one from the Stevens BCs and one from thermodynamics on the boundary, which is not even properly defined. This should probably be reflected in the tag-index text.
Does that make sense?

@mjlosch I found some comments (starting with "CML") in model/src/timestep_tracer.F (lines 57-61)
that might be relevant to this point. What do you think about those ?

Forgot one thing: I switched off vertical diffusion (diffKrT=diffKrS=0) and now this PR  updated code
and the reference one give same results for exp4.stevens experiment.

@jm-c OK, you got me, I used to be smarter ...
In the original Steven (1990) paper, e.g. here: https://archive.uea.ac.uk/~dps/publications/S90.pdf, the diffusion is retained along the boundary (eq 11-13 and then the discretized version in eq.18), so I tried to do the same with minimal effort. This explains, why the code is so invasive (bits and pieces everywhere). Now I see two options:

close this PR and forget about it, better: not forget about it, but live with the code complexity that I wanted to get rid off, because I had the impression it lead to waves and instability along the open boundaries (put no real proof for that). If we decide that, I'd have to adjust the documentation a little, to note that the diffusion (and forcing) contribution is retained along the boundary.
keep this PR as it is and note the change in algorithm in tag-index, that leads to a simpler and less invasive implementation. Then I would also remove the suspicious lines from timestep_tracer.F and put back the maskInC (which I removed in 2011 with this comforting commit message: "comment out masking of gtracer, lets keep our fingers crossed"). The documentation does not need to change in this case.

I think we should go with option 2, because the Stevens BCs are not really used that much so that I like to have it less invasive. If we really need the diffusion on the boundary, I can still add it to obcs_calc_stevens.F later-on.

Further, if I interpret gad_calc_rhs.F correctly then the horizontal diffusive fluxes are masked by maskInC, but the vertical ones are not, and again, the Stevens BCs are held responsible, same in gad_advection.F. While this is probably not harmful, we could revert to not having maskInC in so many places with option 2 (i.e., go ahead with this pull request)

A third option (rather option 2a): we leave this PR open and I'll try to add the vertical diffusion part to it, so that the old results can be reproduced.

@mjlosch I would like to keep the option open (even if it just require to uncomment few lines in one place) of having vertical diffusion and forcing added to stevens OB value. In current code, it seems  easy (just uncomment 2 lines in timestep_tracer.F plus maybe some changes to recip_hFacNew in thermodynamics.F). So if you can figure out a nice way to implement option 2.a, it would be great.
But I don't know what to do regarding implicit vertical diffusion (currently, it seems to modify Stevens
OB values).
Otherwise, unless we are sure that vertical diffusion and surf. forcing can be safely ignored, I would prefer to keep the current code (going with option 1).

Hi @jm-c
it turns out that adding vertical diffusion is not so easy, because the obcs-values are computed at the beginning of the time step when nothing of the 3D-viscosity (and non-local counter gradient terms etc) are available; that's only done in temp/salt_integrate, so I had to code two new subroutines that update the OB-values before timestep_tracer with the appropriate tendencies. Problem: the implicit diffusion contribution cannot be included in that way; one would need to diagnose a tendency/difference due to implicit diffusion, like (gT_loc(after)-gT_loc(before)) and apply that separately.
I also restored the old exp4/results/output.stevens.txt file and now we can at least keep 10 matching digits (in an experiment without implicit diffusion/advection).
What do you think about this version of option 2a?

@jm-c do you have any opinion about this? I might have a chance to work on this within the next days.


No documentation for how to iteratively develop modules

There is no documentation for how to develop modules linked to from this repo. Could there please be a link to something to help people adopt bzlmod?
For reference, the process seems to be:

Create a clone of the registry
Add your ruleset to that using ./tools/add_module.py
Point to the file URI of the registry in a project that uses the ruleset
Realise that you need to make a change to the ruleset
Make the change, push to a remote fork of the ruleset
"Somehow" recalculate the integrity SHA and update that in the registry clone
Rebuild the project
Realise that you need to run bazel shutdown first, then rebuild the project

Is this actually the process to  follow, or is that a local workflow that can be followed to allow one to use the ruleset "in place" (as --override_repository allows when using rulesets via the workspace)?

Could you describe what you're actually trying to do? Why do you want to "iteratively develop modules linked to from this repo"? I would expect most rules maintainers to keep developing / iterating their projects as they normally would, and then look at adding it to the registry.

I'm new to module development, and I'm attempting to migrate rules_jvm_external's maven_install from something that's run in the workspace to be modularised. I have "project" that depends on the rules_jvm_external module, but I need to keep making changes to rules_jvm_external as I'm developing the feature.

Closing in favor of https://github.com/bazelbuild/bazel/issues/14552


Why not just link to the CAS portal?

So many opportunities, please just put the link.  One of my least favorite aspects of many MS articles is they assume we remember all the URLs of all the products, features, admin centers, etc. that are out there.  Please just link what you're talking about, it's so easy, and would be quite courteous.  thank you

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

ID: 200a667a-64bf-422d-e110-4798f509fcd0
Version Independent ID: 3966732b-93fc-629b-b138-c096cb77a3cf
Content: Manage admin access to the Cloud App Security portal
Content Source: CloudAppSecurityDocs/manage-admins.md
Service: cloud-app-security
GitHub Login: @dcurwin
Microsoft Alias: dacurwin

Thanks for the comment. We'll investigate and get back to you.

@danabrash  - Could you let us know which URLs you'd like to see in this article? Thanks!

@danabrash  - Still waiting for your response. Is this still an issue?

Thanks, sorry I missed the previous responses.
Having links to the CAS portal readily available would help people new to CAS to more quickly get oriented.  I think there could be a link in the second sentence.  e.g.

This article provides instructions for setting access to the Cloud App Security portal for your admins.

similar to This Article
Having it right at the top would help set context immediately
I see that there is similar in the access-for mssps section
I don't remember that being there before but perhaps I missed it.  The URLs in that section should be links.

Thanks for your response. I added a link to the portal on that page.


FTL compat support

With MI and Indrev moving to FTL, would it be possible to add support to the FTL energy lib? As the jetpacks will not charge after the switch.

Added in 0.3.0


Conversion to new style custom resource

Description
Converts cookbook to new style custom resource
Issues Resolved
Resolves undefined method issue
Contribution Check List

[x] All tests pass.
[X] New functionality includes testing.
[X] New functionality has been documented in the README if applicable

@tas50 Not sure how much i trust the tests but they pass and i was able to apply the ulimit i was expecting on my system. i didn't however use anything else other than user_ulimit resource in my local testing.
The travis build passed and the test recipe seems to include the different types so i assume its all good. I am certain some factoring out of useless lines of code may also be needed but i have no idea what some of it does so i just left it alone.


Willieino/create db

Description
Updates to billing, favorites, and users helpers; created migrations and seeds for billing, favorites, and users; added Favorites routes for GET by ID, DELETE, PUT, and POST; add Users route for GET by ID.
Type of change

[x] New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Added the migration and seed files. I executed the files and the database was created. The two methods do their own testing and will not run with errors in the code.

[x] Test A executed the migration and seed files.

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My code has been reviewed by at least one peer

I like the migrations they look clean


Error with nested maps

While trying out the map feature of generate_parameter_library, I encountered a compilation error with nested maps. A minimal example is the following:
queries_list: {
    type: string_array,
  }

  queries:
    __map_queries_list:
      arguments: {
        type: string_array,
      }
      __map_arguments:
        command: {
          type: string,
        }

The output looks like that:
In member function ‘void foo::ParamListener::refresh_dynamic_parameters()’:
error: ‘struct foo::Params’ has no member named ‘arguments’
  153 |       for (const auto & value : updated_params.arguments){
      |                                                ^~~~~~~~~
error: ‘struct foo::Params::Queries’ has no member named ‘__map_queries_list’; did you mean ‘MapQueriesList’?
  154 |           auto& entry = updated_params.queries.__map_queries_list.arguments_map[value];
      |                                                ^~~~~~~~~~~~~~~~~~
      |                                                MapQueriesList
In member function ‘rcl_interfaces::msg::SetParametersResult foo::ParamListener::update(const std::vector<rclcpp::Parameter>&)’:
error: ‘struct foo::Params’ has no member named ‘arguments’
  187 |         for (const auto & value : updated_params.arguments){
      |                                                  ^~~~~~~~~
error: ‘struct foo::Params::Queries’ has no member named ‘__map_queries_list’; did you mean ‘MapQueriesList’?
  190 |                 updated_params.queries.__map_queries_list.arguments_map[value].command = param.as_string();
      |                                        ^~~~~~~~~~~~~~~~~~
      |                                        MapQueriesList
In member function ‘void foo::ParamListener::declare_params()’:
error: ‘struct foo::Params’ has no member named ‘arguments’
  231 |       for (const auto & value : updated_params.arguments){
      |                                                ^~~~~~~~~
error: ‘struct foo::Params::Queries’ has no member named ‘__map_queries_list’; did you mean ‘MapQueriesList’?
  232 |           auto& entry = updated_params.queries.__map_queries_list.arguments_map[value];
      |                                                ^~~~~~~~~~~~~~~~~~
      |                                                MapQueriesList

Are nested maps not supported or am I doing something wrong?

I don't have any examples of anyone else doing this. It is probably just not yet working. You are welcome to submit PRs if you want to work on making nested maps work.


GUI/chest menu titles are not translated

The menu titles are in Chinese whilst everything else is in English.

i have same problem


Create esiee-amiens.txt

Add .eu for esiee-amiens

@Seraphros Please provide us with a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.

This domain is used to connect to the Teams server of the school in those troubled times as you can see in the image.
If it is not enough, what kind of proof do you want ? :)

@Seraphros Thank you for the clarification. Pull request merged.


Functional overlap between IndentHeredoc and ClosingHeredocIndentation

There is a functional overlap between Layout/IndentHeredoc and Layout/ClosingHeredocIndentation. The overlap occurs when the contents of the heredoc appear a column to the left of the closing.
def foo
  <<-RUBY
foo
  RUBY
end

Layout/ClosingHeredocIndentation lies about correcting this condition. It says that the code is corrected, but no change is made to the code.
I feel like this functionality should be handled in Layout/IndentHeredoc and removed from Layout/ClosingHeredocIndentation. This is because the closing alignment is correct, and the content indentation is off. The functionality appears to have been explicitly added to Layout/ClosingHeredocIndentation in https://github.com/rubocop-hq/rubocop/pull/5943.
@koic what are your thoughts on this?

Closing since this is a duplicate of https://github.com/rubocop-hq/rubocop/issues/5966


Add fiat onramp option(s) to "fund your account" screen

https://www.figma.com/file/vxDKlT2asJ8iUwh0UpyjDT/🔎-Buy?node-id=202%3A4773
Related: https://github.com/blockstack/stacks-wallet-web/issues/1479
Desired characteristics:

Simple credit or debit card information entry
Instant or near-instant availability of balance for STX transactions
No KYC up to useful limit to get started with first basic contract calls (e.g. $50)

[ ] #1940
[ ] #1941
[ ] #1942

@jasperjansz I've moved this to the board so we can track work on it in support of partner integrations.
Given discussions so far, I'm thinking we should update the current mockups to make it clear that the user will get taken from the wallet to a 3rd party provider to complete the purchase.
I may recommend we still collect the desired STX purchase amount (and related USD estimate) upfront in the wallet then pass both that STX value and the user's Stacks address to the provider's website via GET parameters.
Then the provider can take the user through the entire purchase process and show a confirmation screen that encourages the user to open the wallet extension again and view their deposit there.

@jasperjansz Can you link to your latest designs for this flow and then remove yourself as an assignee and the issue from the design column?

Yep, here it is: https://www.figma.com/file/vxDKlT2asJ8iUwh0UpyjDT/🔎-Buy?node-id=201%3A11002

See Transak documentation for WYSIWYG integration configuration: https://www.notion.so/Integrate-Transak-f43cbb5dc7fa4d068a044ef9589879bf
A preview version of the flow can be seen here: https://staging-global.transak.com/
The biggest issue with this provider seems to be that they need to support STX. But otherwise the offering appears to align very well with for our design goals here.
cc @jonastgerber

Design needs finalization in spec. Currently just in drafts.

@jasperjansz is this design finalized?

This issue needs decomposition into sub-issues.

[ ] Create an MVP for the Fiat onramps UI
[ ] Implement external vendor #1
[ ] Implement Transact

@markmhx Since we have 2 providers how would we handle this in the UI ? Currently the design assumes only one provider.
Do we give a choice to the user ? Or shall we implement first with one provider then add the next later with a different UX.

I'm thinking we just repeat vertically the gray component for each provider with standard margins between them. I can update Figma to make this clear.

That works ! No real need to update figma, I understand what you mean.


Enable null safety by default in templates

Enable Dart null safety (https://dart.dev/null-safety) by default in all flutter create templates.

@munificent can you check to see if my changes are ideomatic?

cc @jonahwilliams

CI is now passing (the red X is the Flutter Dashboard being red).


Could not open file: /index.js

I ziped the custom files and uploaded it in the lambda function part but I have this message and it won't work.
"The file index.js could not be found. Make sure your handler upholds the format: file-name.method."
I just uploaded the files and didn't chage any name.
Any idea of what I did wrong please?
Thank you.

@JofCla if you're still having problems, please reopen the issue.

Having the same problem

I have the same problem.  I try put index.js in root and node modules in folder under root.  It still no work


Add IID guids that don't use strings for construction.

Having a Guid that doesn't need reflection to obtain is more performant and facilitates AOT compiliation. The pattern used in TerraFX.Interop.Windows seems ideal:
[Guid("00000000-0000-0000-C000-000000000046")]
public unsafe partial struct IUnknown : IUnknown.Interface, INativeGuid
{
    static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_IUnknown));

    public void** lpVtbl;

    // ...
}

public static partial class IID
{
    public static ref readonly Guid IID_IUnknown
    {
        get
        {
            ReadOnlySpan<byte> data = new byte[] {
                0x00, 0x00, 0x00, 0x00,
                0x00, 0x00,
                0x00, 0x00,
                0xC0,
                0x00,
                0x00,
                0x00,
                0x00,
                0x00,
                0x00,
                0x46
            };

            Debug.Assert(data.Length == Unsafe.SizeOf<Guid>());
            return ref Unsafe.As<byte, Guid>(ref MemoryMarshal.GetReference(data);
        }
    }
}

public unsafe interface INativeGuid
{
    protected internal static abstract Guid* NativeGuid { get; }
}

This allows writing a reasonable implementation of ComPtr in C# (which should also be provided by CsWin32 when generating COM structs).  It allows implementing As methods that allow keeping management contained within ComPtr. See the implementation in TerraFx.
This ComPtr implementation also shows the value of having the COM structs implement a nested interface. You can better constrain helpers like these to the COM structs.
public unsafe struct ComPtr<T> : IDisposable
    where T : unmanaged, IUnknown.Interface

The minbar is having the IID's for COM interfaces defined so we can avoid manually transcribing them for trimming/AOT purposes.

I can't imagine how all the trouble with per-byte representation and pointers provides a meaningful perf benefit over just a static field initializer. Do you object to my adding this as a member to the struct to close this issue?
internal static readonly Guid Guid = new Guid(0x00000101, 0x0000, 0x0000, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);

I did test the perf of retrieving a static readonly Guid field with retrieving typeof(something).GUID, and indeed the former was over 1000X faster than the latter.


Better support subviews of 3D textures.

Now when we set up the MTLRenderPassAttachmentDescriptor for the 3D
texture, we set the depthPlane property instead of the slice
property. Combined with an appropriate setting for
renderTargetArrayLength in the base descriptor, this allows rendering
to a subset of a 3D texture.

@cdavis5e
Thanks for all the submissions!
LunarG is looking to cut a Vulkan SDK release this week. I'm going to let them know tomorrow (Tuesday) a commit of MoltenVK for them to include in the SDK.
I'll pull these PR's in once the CI finishes.
And...if you'd like to see something additional and small make it into the next SDK...let me know...and get it submitted as soon as you can on Tuesday.
For safety...it might be prudent to leave something as large as the swizzling that you are working on for after this SDK release.
Sorry for the late notice. With you contributing so regularly...in future I'll keep you abreast of scheduling items like this.
Thanks...Bill


Include SwiftNativeNSObject in the back-deployed concurrency library.

SwiftNativeNSObject is part of the core runtime on OS versions that also have the concurrency library, so we need to include a copy of it with the back-deployed concurrency library.
To ensure this works make the _Concurrency library re-export SwiftNativeNSObject properly.

@swift-ci please smoke test and merge


catkin not required for pure cmake packages

This prevens rosdep resolving in ROS2

Can one of the admins verify this patch?

ok to test

@simonpierredeschenes can you check if this patch will break default ROS1 installs ?

I'll have a look

For what it's worth: it has beendone before for pure cmake packages :slightly_smiling_face:
https://github.com/nobleo/paho.mqtt.c-release/blob/master/patches/package.xml


Rejuvenate log levels

Introduction
We are in the process of evaluating our research prototype Eclipse plug-in that "rejuvenates" log statement levels based on how "interesting" the enclosing methods are to the developers. The assumption is that methods that are worked on more and more recently by developers should have higher log levels (e.g., INFO as compared to FINEST). Our end goal is to reduce information overload, as well as alleviate developers from manually making log level changes.
The transformation decision is made by analyzing the "degree of interest" (DOI) values of enclosing methods for logging invocations. DOI value is a kind of real number for a program element which shows how developers are interested in it. It is computed from the interaction events between developer and element, such as developer edits the element. In this project, we compute the DOI using the project's git history.
We are looking for feedback on our tool from developers. If you can, we would appreciate if you can comment on each of the transformations in the case that this PR is not accepted. Of course, we would also love to contribute to your project.
Transformed Logging Statements
Here is a list of DOI values for enclosing methods of transformed log invocations in your projects:

log expression
original log level
transformed log level
type FQN
enclosing method
DOI value

logger.fine("   Sizes: " +   formatFeatureSet(sizesToTest))
FINE
FINEST
com.google.common.collect.testing.PerCollectionSizeTestSuiteBuilder
createTestSuite()
0

logger.fine("Expanded: " +   formatFeatureSet(features))
FINE
FINEST
com.google.common.collect.testing.FeatureSpecificTestSuiteBuilder
createTestSuite()
0

logger.finer(Platform.format("%s:   excluding because it was explicitly suppressed.",test))
FINER
FINEST
com.google.common.collect.testing.FeatureSpecificTestSuiteBuilder
matches(junit.framework.Test)
0

logger.log(Level.INFO,"message",EXCEPTION)
INFO
FINEST
com.google.common.testing.TestLogHandlerTest$ExampleClassUnderTest
foo()
0

logger.fine("Features: " +   formatFeatureSet(features))
FINE
FINEST
com.google.common.collect.testing.FeatureSpecificTestSuiteBuilder
createTestSuite()
0

logger.fine(" Testing: " +   name)
FINE
FINEST
com.google.common.collect.testing.PerCollectionSizeTestSuiteBuilder
createTestSuite()
0

logger.fine(" Testing: " +   name)
FINE
FINEST
com.google.common.collect.testing.FeatureSpecificTestSuiteBuilder
createTestSuite()
0

Settings
We have several settings to analyze these DOI values. The settings we are using in this pull request are:

Treat  CONFIG/WARNING/SEVERE level as a category and not a traditional level, i.e., our tool ignores CONFIG/WARNING/SEVERE log level (setting 1).
Never lower the logging level of logging statements within catch blocks (setting 2).

We can vary these settings and rerun our if you desire.
DOI Intervals
For your information, we also generate a list of DOI value intervals. Given this list, our tool could rejuvenate log levels by knowing which intervals the DOI values of enclosing methods for log invocations are in:

subject
DOI boundary
log level

guava-testlib
[0.0, 0.96999997)
FINEST

guava-testlib
[0.96999997, 1.9399999)
FINER

guava-testlib
[1.9399999, 2.9099998)
FINE

guava-testlib
[2.9099998, 3.8799999)
INFO

guava-tests
[0.0, 1.5934999)
FINEST

guava-tests
[1.5934999, 3.1869998)
FINER

guava-tests
[3.1869998, 4.7804995)
FINE

guava-tests
[4.7804995, 6.3739996)
INFO

Pick this one.


Add channel password support for XMPP

It would be great if we could add support for XMPP channel passwords.

I am not sure about the failed test. On my local machine it doesn't seem to fail.

Don't worry about that test, it sometimes fails (my mistake). Has to do with the fact that map/hash entries are random.
Thanks a lot for your PR, looks good!


cocoapods.org point to missing 0.9.13 release

https://cocoapods.org/?q=tsmessages
Clicking on "see podspec" leads to 404:
https://github.com/CocoaPods/Specs/blob/master/Specs/TSMessages/0.9.13/TSMessages.podspec.json
Maybe it could be fixed by:
a) submitting the missing 0.9.13 podspec
b) tagging the 0.9.13 release on the github.com/KrauseFx/TSMessages repo

There's the 0.9.13 podspec, but there's no such tag :crying_cat_face:

+1


Integrate Site with Contentful CMS

We will use Contentful for the content management of the site. This will enable designated users to edit and manage the content without requiring development resources. The integration will involve setting up API calls to pull data from Contentful and create static site content during the build process with Eleventy.
Here is a high-level overview of the plan:
1. Create/Configure Content Models in Contentful:
The first step will be to create or configure content models in Contentful to match the structure of the content on our Eleventy site. This will likely involve creating a few different models depending on the complexity and variety of our site's content.
2. Set Up API Keys:
We will need to generate API keys from the Contentful management dashboard. These will be required to authenticate our application and allow it to pull content from Contentful.
3. Integrate Contentful API with Eleventy:
We'll use the Contentful JavaScript SDK to fetch our content from Contentful during Eleventy's build process. The data fetched will then be passed to Eleventy templates to generate the pages of our site.
4. Mapping Contentful Data to Eleventy Templates:
We'll map the data fetched from Contentful to our existing Eleventy templates, making sure that each field from our Contentful models is correctly populated in the templates.
5. Test Locally:
Before deploying, we'll run extensive local tests to make sure that the content is correctly being pulled from Contentful and populated into our Eleventy site.
6. Automate the Build Process:
We'll set up a continuous deployment pipeline using GitHub Actions (or another preferred tool) so that every time there is a change in Contentful, it triggers a new build of our Eleventy site, ensuring our content is always up-to-date.
7. Deploy and Test Live Site:
Finally, we'll deploy our Eleventy site integrated with Contentful and perform rigorous testing to ensure the live site works as expected.

Contentful API Documentation - https://www.contentful.com/developers/docs/references/
Integrate Contentful with Eleventy Site - https://www.contentful.com/blog/integrating-contentful-with-eleventy-create-static-sites/

@shejza @Erza123 ,
Anytime you add an image, can you use https://squoosh.app/ to reduce the size of the image? this app will maintain the quality while reducing the size.
Thank you


Storing secrets in Mendix 10.9

In Mendix 10.9 there are alternative places to store secrets.

Approved over Slack.


Add Linux tests to BrowserStack

Linux browser test (mainly for Chrome / Chromium and Firefox) should be added to BrowserStack.

How is Linux unofficially supported?


"resizes the PV to fill the remaining space" bats test fails on CentOS 5

This integration test fails on CentOS 5 but is fine on CentOS 6.

@spion06 if you have time perhaps you could look at this since you wrote the test originally?

I actually got poked about this recently and totally forgot about this issue getting logged.
When investigating I found that the version of losetup that centos 5 has doesn't support loop device resizing (the -c option). From what I have been able to see centos 5 is the only platform with that old of a version of losetup.
I don't think that's something i'll be able to fix unless i can look into compiling a newer version of losetup for centos 5 which isn't something I would prefer to do.

We're all green now


Quick Accent causes sticking keys in Git GUI application

Microsoft PowerToys version
0.77.0
Installation method
WinGet
Running as admin
No
Area(s) with issue?
Quick Accent
Steps to reproduce
Type in git gui application.
✔ Expected Behavior
Typing is reactive and correct
❌ Actual Behavior
Keys get missed or stuck on (causes repeats). Space bar sometimes doesnt work.
Other Software
WSL launches git gui
WSL version: <IP_ADDRESS>
Kernel version: <IP_ADDRESS>-1
WSLg version: 1.0.59
MSRDC version: 1.2.4677
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.19045.3930

Also in Powertoys 0.86.0 with

Versione WSL: <IP_ADDRESS>
Versione kernel: <IP_ADDRESS>-1
Versione WSLg: 1.0.65
Versione MSRDC: 1.2.5620
Versione Direct3D: 1.611.1-81528511
Versione DXCore: 10.0.26100.1-240331-1435.ge-release
Versione di Windows: 10.0.22631.4317

It randomly  autorepeat/swallows  keystrokes (especially the combination +) in multiple GUI editors - tried emacs, gvim,gedit, xed.


eggs are not getting layed from the Hive Breeders

So as the title state for some reason eggs are not actually coming out of the breeders. I will use the queen and put an egg into them but then no matter were the egg is it will just sit there after it has been fertilized. I have some colonists that will have 20-30 eggs. now if I kill them via character editor all 20-30 eggs hatch and I have 20-30 new colonist babies.

I put it on 5% egg pregnancy speed and unfertilized eggs come out but not the fertilized one.

Thanks for reaching out !
I am not 100% sure if this is an issue, to be honest.
Fertilized Eggs are not meant to come out - they are meant to stay in until they hatch.
Hatching will mean a "normal" birth.
There is a bit of wackyness when it comes to egg-progress, but that is more of an upstream rjw issue, so maybe someone on the Discord can have another look.
Let me know how things go


setupTest.js included in coverage report

When using this setupTest.js  is included in the coverage report.
npm create svelte my-app
cd my-app
npm i
npx @preset/cli davipon/svelte-add-vitest --example
npm run coverage

Had excluded setupTest.js in c8 in the latest PR.


update kube-proxy to auto choose version

Issue #, if available: #747
Description of changes:
Added version map for kube-proxy addon
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@elamaran11 please review the latest

/do-e2e-tests

@elamaran11 please review the latest

We can merge after e2e.


Massive Cookie Size Leads to Errors

I'm using a devise_token_auth rails api backend with a ng-token-auth angular frontend. I had to activate cookies in order to support ActiveAdmin, using the config below in application.rb
config.middleware.use ActionDispatch::Session::CookieStore
config.session_store :cookie_store

However, as soon as I turn this on, I see massive cookies (well over the 4kb limit) that throw:
ActionDispatch::Cookies::CookieOverflow (ActionDispatch::Cookies::CookieOverflow):

As a workaround, I've added replaced the store with active-record_store to keep session information in active record:
config.middleware.use ActionDispatch::Session::ActiveRecordStore
config.session_store :active_record_store

But the cookies and session data in the store continue to grow. If I reload the angular app (browser refresh, I see cookies several kb's long. If I trigger a fast double reload, I loose the current token and the session size increases.
Any ideas on how to make devise_token_auth play together with CookieStore?

Maybe you can try as before_action http://stackoverflow.com/questions/5435494/rails-3-disabling-session-cookies/12205114#12205114 in your api routes (api controller or a concern in every controller that uses devise token auth)

Workaround proposed, closing for now


Improve validation error message ts

An attempt at fixing #1774

@mortenbekditlevsen we have fixed our CI – can you please merge master to update your branch?

I'd be happy to! I'll look into it tomorrow!


Added OnTeleportEntity hook for plugins.

Plugins may or may not allow teleport to the new position.
Updated the HookNotify plugin with it.

i reset my fork and readded my changes. This was indeed the easiest way of solving my problem.
Thanks madmaxoft.

how can i update the wiki for the API ?

The Lua API has its description in the APIDump plugin in the repository, so have a look there. The webpages with the API are built and uploaded once a day by a script.


Consolidate drone configs

Reduce total number of drone config files. Include more drone tests.

Is this good to go?

Is this good to go?

@madmongo1 is welcome to review.  At the time of submitting the PR, all tests had passed, ready to merge: https://drone.cpp.al/boostorg/beast/137

Yep, happy to accept

Rebased to develop


make the first column width of the subtask table flexible

Purpose: To fix issue 1 https://github.com/sprydevs/kanboard/issues/1

Since you're already working on this code, please capitalize the second "t" in the Time tracking column heading.


Adds command spo file roleassignment add, closes #3702

This PR adds the command spo file roleassignment add.
Closes: #3702

Thank you @MathijsVerbeeck we'll review it ASAP!

Hi @Adam-it, Thanks for the feedback
I've adjusted the code so that it will use variables instead of modifying the args.options object. Also I've rewritten some of the tests as they weren't yet running async.
Finally I've rewritten the documentation a bit to become compliant with suggestions that you've on another PR (spo folder roleinheritance break)

@MathijsVerbeeck thanks for your awesome work 👍. I will re-review it ASAP.
In the meantime @pnp/cli-for-microsoft-365-maintainers if anyone would like to have a additional check be my guest 👍

merged manually


Redo config

should use .env
connection pattern should merge in ideas form 'mon-1'

Changed config to have 3 environment prod, test and dev
Simplified directory structure


Add float32 mobilenet with resize support

Needed for https://github.com/mlcommons/mobile_app_flutter/issues/228

recheck

Nitpick: adding realizable to filename?

I think it would be a bit strange to have a resizable uint8 without this mark and a float model with this mark.
But you are right: having 2 files with the same name with no notion of what are the differences between them is confusing.
I added a readme file into v1_1/tflite folder which explains why we need that model.


Title color

I am looking for a way to change the title color, but I cannot find the setting. Would you please give me a hint? Thanks!

Hi @gavox You'd want to make a copy of layouts/partials/site-header.html in your own directory and change the CSS from there.


Add "stars added in the date range" in github card

It would be good if you add starsInDateRange in GitHub card

Could you develop more your idea, if you can suggest a mockup tool would be great

Like devo extension I want to see the number of stars added based on the today/week/month selection eg: 255 starts today. It would be very helpful in identifying the popular repos

@siva-kranthi yes we can do that, the info is already available in the api (starsInDateRange :int), would you like to work on it?


Export GovMsg

The type is missing in packages/std/src/lib.rs.
Reported in https://github.com/CosmWasm/cosmwasm/pull/973#issuecomment-882914177.

Done in #1016, released in 0.15.1


Include custom form media in templates

Problem
When custom import/export forms contain complex widgets with linked media it is not added to output.
Solution
Added standard form.media to templates.
Acceptance Criteria
This fix does not require tests and documentation changes.

Coverage decreased (-0.03%) to 95.574% when pulling 952fbb92443aa33f3b15dd107261d26644513309 on andreynovikov:form-media into 3cf5e3f9796a5caf7c5ea3928119af7ce4706c0d on django-import-export:master.


updateOne update property with same value doesn't return nModified = 1

Hi!
I'm using
$collection->updateOne($query, ['$set' => [$prop => $value]]);
While using $set with updateOne, if the value is different than the one currently set for the document, it will return nMatched = 1, nModified = 1. If the value is the same, it will return nMatched = 1 and nModified = 0. I understand why, since it didn't update with the same value. But from a user stand point, I still need to be able to return that the document has been modified to avoid checking if the user is trying to update with the same value (which has no incidence).  So question, is there a way to have the driver returning nModified = 1 even if the value was the same?

The write results fields in each driver are coming directly from the database, so this is a question better suited to the mongodb-user list than a driver project.

I still need to be able to return that the document has been modified to avoid checking if the user is trying to update with the same value (which has no incidence)

I don't follow why the current result is an issue. You say that you need to return whether the document is actually modified, which nModified indeed reports. You then say that there is no incidence where you should be updating the same value, which is the case that would cause nMatched = 1 and nModified = 0.

I base the operation on being a success if nModified = 1. If the user updates with the same value, it returns nModified = 0 and isn't a success, and returns an error to the front end. This only occurs if the end user updates a property with the same value. My only workaround is to test if the end user is trying to update the value of the document with the current value, which is kind of a pain. I'm just looking for a solution to get a success whether the value is the same or different, and not create a special case if the value is the same.

There are three possibilities:

nMatched = 0, nModified = 0: the criteria matched nothing
nMatched = 1, nModified = 0: the criteria matched but the $set resulted in no change to the document
nMatched = 1, nModified = 1: the criteria matched and $set changed the document

I'm just looking for a solution to get a success whether the value is the same or different, and not create a special case if the value is the same.

If I understand correctly, you don't care if $set changes the document at all. It seems like your error condition is the criteria not matching anything, in which case you can just use nMatched.

This only occurs if the end user updates a property with the same value.

Earlier you said "avoid checking if the user is trying to update with the same value (which has no incidence)". What did you mean by "no incidence" there. I took that to mean such a scenario does not occur.
Alternatively, you could incorporate the value you expect to $set into the update criteria with $ne to ensure that you never find a document that already has the value you're attempting to change. This wouldn't work with other updates (e.g. $inc) but it seems quite feasible for $set, where you know exactly what the post-modified value would become.

Thank you for your comment, I will use nMatched = 1 and will consider that if the document is matched, the update must have had occurred properly.
By no incidence I meant that it doesn't matter to me that the end user updates with the same value, it shouldn't be considered as a "fault" but still considered as an update. Sorry for not explaining properly.

The code below does in fact update the mongo document, but nModified is always returned as "null". How can I verify a document has been updated? Can I infer from isAcknowledged = true that the document was updated? findOneAndUpdate() has the same response. nModified is always null.
updateOne code:
$filter = [
	'_id' => new \MongoDB\BSON\ObjectID('56e345f426d0f93939d833cb')
];

$data = [
	'$set' => [
	    'hello_world' => 'testing3'
	]
];

**Response:**
$response = $collection->updateOne($filter, $data);

Updated document:
{
    "_id" : ObjectId("56e345f426d0f93939d833cb"),
    "email"<EMAIL_ADDRESS>    "first_name" : "Testing",
    "hello_world" : "testing3"
}

Environment
Windows 10
Wamp
PHP 5.5.12
Mongodb driver 1.1.4
Latest version of new php library (Installed with composer: composer require "mongodb/mongodb=^1.0.0")
Mongo instance version 2.4.6

In the future, please open a new issue instead of replying to an existing, closed issue. Otherwise, it's quite possible that your reply might go unnoticed.

My updateOne() code below does in fact update the mongo document, but nModified is always returned as "null". How can I verify a document has been updated?

The nModified field is only supported via the write commands in MongoDB 2.6+. There is no equivalent field to check in older versions of the server.
Typically, you would access UpdateResult::getModifiedCount() in the library or WriteResult::getModifiedCount() in the extension.

The other issue is, with legacy mongo driver on an update I could simply look for $response['ok']. However, when checking the response with $response['isAcknowledged'] I'm getting: "Fatal error: Cannot use object of type MongoDB\UpdateResult as array". How do I check responses?

The UpdateResult class in the library wraps the extension's WriteResult class; however, I noticed that the PHP.net documentation for that class is incomplete. I've opened PHPC-653 to track the task of updating the extension documentation. The library docs are currently being worked on in #144.
As for checking responses, I would suggest looking at the various result classes in the library. There are getter methods and an isAcknowledged() method for relevant write result fields. If you're using the extension directly, you will want to refer to the WriteResult methods. Note that since the extension only provides an executeBulkWrite() API for issuing writes, its WriteResult is akin to the library's BulkWriteResult class. The library just adds exceptions when accessing results if the write is unacknowledged in order to comply with the CRUD specification:

If you have a choice, consider providing the acknowledged member and raising an error if the other fields are accessed in an unacknowledged write. Instead of users receiving a null reference exception, you have the opportunity to provide an informative error message indicating the correct way to handle the situation.

The various other result classes in the library are specific to insert, update, and delete operations. Similarly, they throw if you attempt to access a result field when the result is unacknowledged.

I'll certainly open new issues in new thread. Thanks for the info. Looks like I'll be upgrading to 2.6+.


Gitea and OpenID

Hi,
I tried to setup gitea 1.1.3 with OpenID but with no luck, OpenID tab never shown
So I build gitea from source (branch master, commit 5c29b0a5fe1a124572ccaa55bd79fee2ce894253) and with the same app.ini OpenID is shown and works
The strange is that in the bottom bar the version shown is 1.1.0+498-g5c29b0a, which seems earlier
So I have 2 question:

When OpenID will be released?
Is the version number in branch master broken (showing an earlier release number)?

Sorry I didn't read
https://github.com/go-gitea/gitea/issues/2328
which is the response to question 1

version number is not broken, it is correct when building master

It is indeed confusing that 1.1.0+498-g5c29b0a > 1.1, but what those
numbers mean is that there are 498 commits after the branch point
for 1.1.0.
For comparison, 1.1.3 has 31 commits from that point:
git log --oneline v1.1.0..v1.1.3  | wc -l

We could reduce the confusion by adding another tag only
reachable from the master branch and not from the 1.1 branch,
to represent first commit in the 1.2 space. Something like:
git tag 1.2-start d87596aec4da6b32a980d782cc8c4e6ba92fc867

Then git describe --tags would return:
1.2-start-498-g2c6a0fdc

Hi @strk,
yesterday I check the code and found the git describe part, 498 and g5c29b0a were ok
I was confused because I thought that master branch had all tag and not only the first one of the x.y branch, but that make sense (it's the last common before x.y was created and the branch diverged)
Tagging the start of the new development cycle on the master branch would of course disambiguate better
Thanks for you reply


Restructure output files for spatial module

Closes #71. Here I am modifying the workflow for quantifying spatial data to publish only the desired output files in the structure that was discussed in https://github.com/AlexsLemonade/scpca-nf/issues/68#issuecomment-998940420.
Here, the approach that I took was to move the desired files from the output of spaceranger to a new folder that is named by the library ID and then publish only that folder and it's contents, rather than publishing the entirety of the spaceranger output folder. Right now the way I have it set up is to perform both spaceranger count and then the file moving within the same process before only publishing the desired files. An alternative approach would be to keep the spaceranger output folder intact (other than removing the bam files) and publishing it to the internal folder as we were doing previously and then create a separate process to copy over the desired files, but that seemed like over kill and I don't believe there's any reason to keep the other intermediate files.
One thing to note is that I am keeping the _versions file and copying it over as spaceranger_versions.json for now as I believe we will want to add a secondary process that grabs the version information and adds the associated metadata to create a metadata.json file. In doing that we will need this versions file to be saved in our output.
The last step that is still missing is the actual compression of the output files. I was unsure if we wanted to compress all files together or keep out the json and/or html files. Until we resolve that, and are sure about our output structure, I am keeping this in draft form.
** I also noticed that in the last merge somehow the cellranger_index did not get merged in to the main config file so I am adding that in here as well as the workflow fails without it.

There were a few minor changes I had to make to this after testing. Notably, spaceranger complains if you just use the library_id as the output folder, claiming that it already exists, so when I added back the spatial tag it no longer complains. This shouldn't be an issue since we don't write out that folder anyway and copy over the desired contents to a different output folder that ultimately gets published in the publishDir. Additionally, there was a minor typo in the paths when moving the files after completing spaceranger that now should be solved. I am doing another test run now, but it takes over 8 hours to complete. In the meantime, I am taking this out of the draft stage and will add any updates if the test run fails.

I incorporated the directory changes that were suggested and tested this and all looks good so going ahead and merging.


[Feature Request] Inscribe and send in the same transaction

It would be great if ord wallet inscribe had an option --destination, where the ordinal goes upon reveal. This would allow "minting" directly to a third party degen

This would be great. This is relatively easy to do, so I added "good first issue".

If someone can handhold me, I can work on this the next week.

Looks like someone beat you to it #1512.
@hantuzun If you have another issue/feature you would like to tackle, let me know. I'd be happy to give you some pointers!

Implemented in #1536


NuGet survey banner

UI:

Addresses https://github.com/NuGet/NuGetGallery/issues/8225

Please double-check with @zhhyu about banner ordering before merging

Cookie banner should be on the top. I will move the survey banner after cookie and warning


maintainers: add r-burns to geospatial team

Description of changes
I use geospatial packages extensively at my day job - some of my messier work closures contain almost all of the geospatial packages maintained by this team, so I have a vested interest in keeping these well-maintained :)

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] 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.05 Release Notes (or backporting 23.05 and 23.11 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.

Ryan, thank you very much for your interest and welcome to the team ! Please check out our team board to see what we are currently up to. Have a nice day.