Support starcoder2 architecture

#3075
I do my best to support starcoder2 architecture.
Since Huggingface transformer currently supports starcoder2 in the main development branch, it requires to install transformer from source.
My test code is as follow.
Python 3.10.13 (main, Sep 11 2023, 13:44:35) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from vllm import LLM, SamplingParams
>>> llm = LLM(model="bigcode/starcoder2-3b")
INFO 02-28 17:53:55 llm_engine.py:79] Initializing an LLM engine with config: model='bigcode/starcoder2-3b', tokenizer='bigcode/starcoder2-3b', tokenizer_mode=auto, revision=None, tokenizer_revision=None, trust_remote_code=False, dtype=torch.float16, max_seq_len=16384, download_dir=None, load_format=auto, tensor_parallel_size=1, disable_custom_all_reduce=False, quantization=None, enforce_eager=False, kv_cache_dtype=auto, device_config=cuda, seed=0)
INFO 02-28 17:53:58 weight_utils.py:163] Using model weights format ['*.safetensors']
INFO 02-28 17:54:02 llm_engine.py:341] # GPU blocks: 139749, # CPU blocks: 8738
INFO 02-28 17:54:05 model_runner.py:676] Capturing the model for CUDA graphs. This may lead to unexpected consequences if the model is not static. To run the model in eager mode, set 'enforce_eager=True' or use '--enforce-eager' in the CLI.
INFO 02-28 17:54:05 model_runner.py:680] CUDA graphs can take additional 1~3 GiB memory per GPU. If you are running out of memory, consider decreasing `gpu_memory_utilization` or enforcing eager mode. You can also reduce the `max_num_seqs` as needed to decrease memory usage.
INFO 02-28 17:54:06 model_runner.py:748] Graph capturing finished in 2 secs.
>>> llm.generate(['def print_hello_world():'], SamplingParams(temperature=0.01, top_p=0.95, max_tokens=32))
Processed prompts: 100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.38it/s]
[RequestOutput(request_id=0, prompt='def print_hello_world():', prompt_token_ids=[610, 1489, 100, 7670, 100, 5879, 2284], prompt_logprobs=None, outputs=[CompletionOutput(index=0, text='\n    print("Hello World")\n\ndef print_hello_world_with_name(name):\n    print("Hello World, " + name)\n', token_ids=[303, 1489, 459, 8302, 10914, 678, 222, 222, 610, 1489, 100, 7670, 100, 5879, 100, 1814, 100, 444, 45, 444, 731, 303, 1489, 459, 8302, 10914, 49, 332, 494, 655, 46, 222], cumulative_logprob=0.0, logprobs=None, finish_reason=length)], finished=True, metrics=RequestMetrics(arrival_time=12221976.944665303, last_token_time=12221976.944665303, first_scheduled_time=1709142852.4397888, first_token_time=1709142852.5246108, time_in_queue=1696920875.4951236, finished_time=1709142852.7353413), lora_request=None)]

It seems that the generation result is normal, but I want to review my code for checking whether there exist bugs.
Because starcoder2 codebase comes from Mistral and GPT BigCode, I refer both files in this projects.

@esmeetu Could you check it for me?

@sh0416 Thanks for your quick PR! Left some comments, and could you add this new model to README and the document. And also adding this new model to the CI test in test_model.py to see there's no difference with transformer's.

Another request: Could you help supporting other starcoder2 series models(7B and 15B)?  I think there's only small differences between them.

I've been reflecting whole comments, so please review my revision.
There are two key difference in this branch.

Starcoder2 is supported in main developer branch.

I will remove it when Starcoder2 implemented is merged into the stable version such as 4.39.0 or newer.
Currently, I adopt try-except logic to import Starcoder2Config and fallback to PretrainedConfig if it doesn't exist.

Starcoder2-3b doesn't have architectures field in their config.

Therefore, the custom Starcoder2Config is neccessary to handle this issue.
If architectures is added to the config file, I will remove the code for custom config.

Finally, I've been test Starcoder2-7b and Starcoder2-15b and they produce correct using the given CI test, but does not include in the testcase due to the expensive computational cost of large model.
Do I have to report this result?
Relevant link: https://huggingface.co/bigcode/starcoder2-3b/discussions/2

Oh, Starcoder2-15b does not pass the test. Please wait a minute.

Starcoder2-15b has different lm head weights (instead of tying embedding table), and now 15b passes the test.

@sh0416 Good job! As i have read Starcoder2Config, there's no attribute_map here, so i think we can safely replace that with PretrainedConfig. Could you try and confirm it's right?

@esmeetu Thanks for fast response.
I don't know why some actions that are irrelevant from this development failed.
Could you finalize this PR?

@sh0416 Yeah, how did you pass the test locally? It seems broken when loading config file because that repo doesn't have custom configuration file.

My test procedure is as follow.

Install vllm from source.
Install transformers from source.
Download starcoder2 weights through AutoModelForCausalLM.from_pretrained("bigcode/starcoder2-3b") and other weights.
pytest tests/models/test_models.py::test_models[128-float-bigcode/starcoder2-3b]

I will repeat this procedure in my local machine and reproduce the error you encountered, so please wait.

FYI, it seems that huggingface server is under maintainance and seems unstable currently.
https://x.com/huggingface/status/1762954032312639702?s=20

@sh0416 Yeah, how did you pass the test locally? It seems broken when loading config file because that repo doesn't have custom configuration file.

It seems that installing transformers from source is mandatory. AutoConfig in the stable version could not handle Starcoder2Config which exists only in the main developer branch.

@sh0416 @esmeetu I added a hack to temporarily fix the issue. Does it look ok?

@sh0416 @esmeetu I added a hack to temporarily fix the issue. Does it look ok?

I've test it with your commit. Actually, the test requires reference generation results from HF transformers, so the error is raised when we check our testcases. However, the usage of vllm is Ok.
from vllm import LLM
llm = LLM("bigcode/starcoder2-3b") # ok

In my opinion, Starcoder2 would be merged in 4.39.0 as it already merged in the main branch, so this issue in the test would be resolved within near future.
If the rule for merging PR is the passed result with HF transformers stable version, then it should not be merged.
However, I think it is good to be merged as the user of vllm could use it without errors.
Thank you

@sh0416 Thanks for your input! Generally, we aim to support new models at the earliest possible time and make them more robust later. Given the importance of the StarCoder2 model, I think the current hack is acceptable.


Keyboard integration for Streamlink quality confirmation

Add helper functions to BasePopup for handling Escape/Enter with button boxes
use BasePopup helper functions to handle Enter/Return

Pull request checklist:

[x] CHANGELOG.md was updated, if applicable

Description
Supersedes #2643

will fix PR after https://github.com/Chatterino/chatterino2/pull/3168 is merged in


Add a Gitter chat badge to README.rst

pinax/biblion now has a Chat Room on Gitter
@paltman has just created a chat room. You can visit it here: https://gitter.im/pinax/biblion.
This pull-request adds this badge to your README.rst:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

Coverage remained the same at 21.36% when pulling 19324273c4595b506d7fed3d823138d97fb5bfe4 on gitter-badger:gitter-badge into b4e66e1b32d2d686271cb5888cb3c121c0f122a1 on pinax:master.


feat(vscode): add jsx and tsx to the list of watched extensions

👋 I have a usecase where I'm getting types from a .tsx file, glint errors does show up but does not get updated when the tsx types changes. This PR adds .tsx (and .jsx for consistency(?)) to the list of extensions to watch.
I understand this is a rather unlikely usecase in a glint codebase but I'm trying my luck 🙏 . Another alternative would be to expose the list of extensions to watch as a setting but it's a bit more work

I think this should probably be configurable. While it's common for folks to mix in React with Ember, I don't want to give React special treatment, and would like to equally support extending this extension list. That way, if folks are using Ember with Vue, Svelte, etc, they have a path to do so

@NullVoxPopuli Thank you for your answer 🙏 I'm closing this MR in favour of a more generic "glint.watchExtensions" setting. I'll take some time to work on it


Revert to proxy_to_pthread=no as default

Currently, proxy_to_pthread=yes option as default breaks WebXR support.
Relates to #83733.

Thanks!


<jemalloc>: Unsupported system page size

Please see my comment.
This is happening with your docker image as well. Is this something you can fix or does Microsoft come up with a fix in their image?
Thanks!

This project is only mcr.microsoft.com/azure-sql-edge with couple of tools installed. If something doesn't work in the base image, it won't work in this project either. Sorry...


Bug with and anchor_x="center"

Describe the bug
The Text is not in the center as you would expect it. That is because it is calculating the center wrong using the width.
This assumes the person put in the exact width of the text, which is often not the case
System Information:
Mac M1 2020. Another person was having the issue as well(not sure about his system)
How To Reproduce
A small code example that illustrates the bug is very useful to help triage.
I HAVE CONFIRMED IT IS A PYGLET ISSUE. LOOK AT:
https://github.com/pythonarcade/arcade/issues/1839
Line 1411 return self._x - width // 2
seems to be the issue
Arcade dev.25 seems to have updated pyglet
CODE:
import arcade

class IssueDemonstrationWindow(arcade.Window):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.text = arcade.Text(
            text="MIDDLE",
            start_x=400,
            start_y=300,
            font_size=72,
            width=8000,
            anchor_x="center",
            align="center",
        )
        self.set_viewport(
            left=0,
            right=800,
            bottom=0,
            top=600,
        )

    def on_draw(self):
        self.text.draw_debug()

window = IssueDemonstrationWindow()
arcade.run()

This is expected behavior.
In your example, the width is 8000, and your alignment is center.
Either remove the width, or remove the alignment.

This is expected behavior.
In your example, the width is 8000, and your alignment is center, which will cause it to go far off the window.

I did that on purpose, just to show that the width is what controls it on anchor_x="center".
Also, I looked at the code, and it looked like it is a pyglet thing because the arcade class is only a light wrapper.

I did that on purpose, just to show that the width is what controls it on anchor_x="center".
I see, that makes sense.

This is normal. Per the docs for anchor_x:
https://pyglet.readthedocs.io/en/latest/modules/text/layout.html#pyglet.text.layout.TextLayout.anchor_x

For the purposes of calculating the position resulting from this alignment, the width of the layout is taken to be width if multiline is True and wrap_lines is True, otherwise content_width.

In other words, width is used when multiline is True, otherwise it bases the positioning off of content_width. If you add multiline=True to your example, it should behave how you are wanting.

So it is intended?

This appears to have changed sometime between pyglet 2.0.9 and 2.0.dev23. Could you confirm this was also intentional?

Yes, this is behavior is normal and intended.

Thank you

tl;dr

Are we using the current approach because it seems to have a clear way of automatically breaking lines?
Should we consider other centering approaches?

To my understanding, there are two ways to center things:

Relative to a width (as we're doing now)
For each line:

Calculate the line's width
Divide it by two
Shift the line's start point relative to the middle position

The downside of the second option is that it doesn't really allow for handling line breaks if implemented naively.


CSS Tweaks

This project uses semver, please check the scope of this pr:

[ ] #none# - documentation fixes and/or test additions
[x] #patch# - backwards-compatible bug fix
[ ] #minor# - adding functionality in a backwards-compatible manner
[ ] #major# - incompatible API change

CHANGELOG

Changed link appearance to align with UX spec

Changes Unknown when pulling dc6b6b62119594634c5a40b057fee74b47047cf3 on NickLewanowicz:master into ** on ciena-frost:master**.

Changes Unknown when pulling bef5320478b5a2aff0d4041c90504f3f02584500 on NickLewanowicz:master into ** on ciena-frost:master**.

Hey @NickLewanowicz can you add a screenshot to this?

The loading graphic in the frost list

Approved - thanks Nick


Content scrollToEnd is not a function

react-native : 0.47.2
native-base : 2.3.1
Platform:
Android
Expected behaviour:
Content should also scrollToEnd.
Actual Behaviour:
Undefined is not a function
I suppose Content replaces scrollview in native base. so all the methods which apply to scrollview should also apply to Content. but when i call scrollToEnd method on content it says Undefined is not a function. here is the code i'm using:
<Content ref={ref => this.content = ref}
                onContentSizeChange={(contentWidth, contentHeight)=>{
                    this.content.scrollToEnd({animated: true});
                }}>
                  {_.map(renderedSteps, this.renderStep)}
          </Content>

@shivenj use this.content._root.scrollToEnd({animated: true})


1.12.2 rebrand

#5 and most of #9 (also ccbb6b8aba8e955551c60810d7c9cb5c611e6060), but on 1.12.2.

Don't know why all of the commits from #8 are in here as well...
GitHub's being weird right now.
Shouldn't affect anything.

I'm not confident I did this correctly...

that's a lot of conflicts.
please resolve

Oh you commented lole .

@BoogieMonster1O1 I had no idea what I was doing, as I've never resolved a merge conflict before... But somehow I did it and it works.

@BoogieMonster1O1 ye looks good to me, tell me if there's anything wrong with it.


TS-4697: free MIOBuffer if fails on ipallow check.

Due to multi types of SessionAccept, I'm change the return type of SessionAccept::accept() from void to int and free the MIOBuffer in ProtocolProbeTrampoline::ioCompletionEvent().
EVENT_DONE : ip allow check fails or forbidden, the caller should free MIOBuffer.
EVENT_CONT : The call to accept() successfully handle a session.

Certainly seems reasonable to me. [approve ci]

Linux build failed! See https://ci.trafficserver.apache.org/job/Github-Linux/373/ for details.

@oknet This failed clang-format, please fix and push update :).

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/476/ for details.

clang-format fixed. @zwoop

We don't really use event return values outside of event handlers, so if we return a failure from accept(), it should just be a bool.
Originally, the contract for SessionAccept::accept() was that it always consumed its arguments. This means that it should be responsible for releasing the MIOBuffer on failure. With your proposal, the caller deleted the buffer but the callee closes the vc. Both the vc and the buffer should be treated consistently, so either enforce the original contract, or delete any allocated buffers in the leaf handlers when they fail  (updating the comments that describe the calling contract).

@jpeach SessionAccept is a interface to create ClientSession. Its mutex is NULL, it is not safe to release any resource. The caller to SessionAccept is Trampline that mutex is copy from NetVC, it is safe to handle resource release. This is why I'm free MIOBuffer in Trampline.

You don't need to hold a mutex to free anything. In all of these cases, the callee is supposed to consume both parameters. For consistency, we should not sometime consume only some of the parameters.

@jpeach agree with u to return bool from SessionAccept::accept().
SessionAccept did not consume any parameters, It is just transfer parameters to ClientSession.
as your said "Both the vc and the buffer should be treated consistently", I'm prefer to move do_io_close() and free MIOBuffer from SessionAccept to ProtocolProbeTrampoline.
Just return false if ipallow check fails in XXXSessionAccept::accept().
Then, the NetVC and MIOBuffer will be close&free in ProtocolProbeTrampoline.

Thanks @oknet. Can you please document the invariants for accept in I_SessionAccept.h?

@jpeach Do you means L175 ~ L184 in proxy/http/HttpSessionAccept.h ?
175 /**
176    The continuation mutex is NULL to allow parellel accepts in NT. No
177    state is recorded by the handler and values are required to be set
178    during construction via the @c Options struct and never changed. So
179    a NULL mutex is safe.
180
181    Most of the state is simply passed on to the @c ClientSession after
182    an accept. It is done here because this is the least bad pathway
183    from the top level configuration to the HTTP session.
184 */
185
186 class HttpSessionAccept : public SessionAccept, private detail::HttpSessionAcceptOptions

Just copy the comment from HttpSessionAccept.h to I_SessionAccept.h maybe with minor changes ?

Yeh that sounds reasonable. I'd like the comment to give accurate information about when the arguments need to be deleted and when the callee takes ownership.

[approve ci]

FreeBSD build successful! See https://ci.trafficserver.apache.org/job/Github-FreeBSD/556/ for details.

Linux build successful! See https://ci.trafficserver.apache.org/job/Github-Linux/452/ for details.


Unable to read request body from ServletRequest because InputStream is not cached anymore with latest version

I have a Spring interceptor where I have to read the request body in my application. I also use logbook to log request and response in custom format.
I was previously using 1.13.0 version of logbook. After migrating to latest version 2.6.0, I am able to read the request body in my Spring interceptor but it is failing at @RequestBody annotation in Spring Controller class
Expected Behavior
https://github.com/mutyasaisrikar/logbook-success
I have added a test case where I am able to read my request body in interceptor
Actual Behavior
https://github.com/mutyasaisrikar/logbook-error
The same behaviour is not working with latest version of zalando

@whiskeysierra, Can you please tell me If I am missing something as this is blocking our changes

Thanks for your effort, especially having two repositories is great for investigating!
A first brief look didn't reveal anything obvious. I don't have time digging into this at the moment. If I were you I'd try to inspect both projects with a debugger to see the internals of Logbook at runtime. 1.x to 2.x was a pretty big rewrite, so comparing source code will most likely not help.


Tagging of glue / lambda resources for a pipeline (related to #195)

This is related to #195
When the team are developing glue jobs, lambda functions etc. related to the "parent stack" of the pipeline, what is the best way to apply key-value tags (e.g. for cost allocation) to these resources ? .
We have applied them via tag editor, but it seems that when the CICD process runs, these tags are removed again.
Do we need to apply the tags in a different way to ensure they are persisted against the glue job or lambda and not removed ?

I am going to close this issue to keep talking in the #195 as it is basically the same issue.


SIGTERM not handled by direct-to-sd custom metrics example

Hi Guys/Girls! =)
I was trying to use the custom-metrics-autoscaling/direct-to-sd/ example in my cluster but I notice that it is not handling SIGTERM (and other signals...) when we terminate a pod. I made this change in a fork and now it's seems working properly: https://github.com/alissonperez/kubernetes-engine-samples/commit/ee577dbdbbdee5f7a4a1083feb6e97651403f4f5
Please, take a look, if you agree I can open a PR with these changes!
Thank you!

Please feel free to send a PR. The changes look good.


Added rawget and rawset functions

This is unsafe as is.  This would very likely make it possible for a script to break out of the sandbox.  Which is why these were never included it would be too risky to try to make these safe.

I have been testing this quite a bit.
The only things that players can use to break out of the sandbox ( to my knowledge ) are the library tables themselves and the wrapped starfall types.
While I am not fully certain as to how sanbox-proof this is, I do know that being all starfall defined types have their metatable.__metatable as a string. Even with rawget/set one can't access the __(un)wrap function inside the metatable. Properly wrapped objects shouldn't have any indices that directly access their unwrapped counterpart.
The same goes for library tables, you can only rawget the starfall defined functions themselves or any other index assigned to the library methods variable. running getmetatable only returns "Library: x"
You cant really inject any code into a library function either because the only methods that you could inject into them would be ones generated into the starfall sandbox. Even so, the variables that get passed to the library functions are wrapped, as they originate from the sandbox.

This being said I am probably missing something and this would be a terrible addition when it comes to the safety of the sandbox.


[DE-4688] return processed_url for slice.items_and_annotations_generator - client

related pr https://github.com/scaleapi/scaleapi/pull/102022

this already exists for datasets right? and you're just replicating for slices?


[REVIEW]

Project link
https://github.com/memphisdev/memphis-broker

Looks great! Some suggestions from the live stream https://www.youtube.com/watch?v=UYiuVStI85M

hide packages if not used
.vscode should probably be removed
screenshots are great, maybe move them higher up
hide features not being used like wiki


Pass a future to a function bound to @deferred

Not prioritized yet, just here for feedback.
// Method called when `deferredLib.loadLibrary()` is invoked.
void onLoad(Future<Null> loadLibrary) {
  // loadLibrary completes when deferred loading completes.
}

<expensive-comp @deferred="onLoad"></expensive-comp>

Thinking out-loud, should @ViewChild support this instead?
@Component(
  selector: 'comp',
  directives: const [
    ExpensiveComp,
  ],
  template: r'''
    <expensive-comp @deferred></expensive-comp>
  ''',
)
class Comp {
  @ViewChild(ExpensiveComp)
  set comp(ExpensiveComp comp) {
    // Only called once deferred loading occurs.
  }
}

/cc @hterkelsen @leonsenft

That's actually quite elegant, I like it.

LGTM also

So... it turns out this already works. We treat deferred content as an embedded view already.
I will add a test, and we can call it shipped!

Fixed in #1470.


Update bioconda recipe to latest release

Hello,
Could you update the bioconda recipe to the the latest release?  (current version is v0.2 r40 instead of v0.2.1 r52)
Thanks!

Hi, thanks for the reminder. I have created a pull request for the current HEAD (r57 or v0.2.2) over there. Waiting for checks and merge.

Merged: https://github.com/bioconda/bioconda-recipes/pull/32761 .


Nginx config

Thanks for the great but simple script 😄 @mathiasbynens!
I've been using it since 2012 and have migrated it from server to server over the years.
My most recent install was on a LEMP stack and I'd like to share my current rewrite config for other users.
Use this in your server {} block:
location /shorten {
  try_files $uri $uri/ /shorten.php?$args;
}

location / {
  rewrite ^/(.*)$ /index.php?slug=$1 last;
  try_files $uri $uri/ /index.php;
}

Cheers!

Would you mind submitting a PR that adds an nginx config file alongside the existing .htaccess?

Closing in favor of #12.


incorrect timezone setting in nightscout uploader?

Hello again,
I'm currently in a different timezone and note some weird behavior with this integration. The first part of the pipeline works as expected: The SG data is correctly uploaded by my pump, and also correctly downloaded by the HA integration. All timestamps are correctly implemented, independent of the local settings of my computer when checking out the sensors in HA.
However, the second step, uploading to Nightscout, seems to ignore the timestamps. The data is uploaded, but when I checkout my nightscout page, I see it not with respect to the timezone, but as if it was uploaded from my home-timezone, i.e. I see a warning "9 hours ago" (as I'm 9 hours earlier than my home timezone).
I tried understanding the nightscout-uploader.py and noticed that, in principle, the timezones are implemented there, but could not understand where this error is coming from.
Thanks for you time :)

Addendum:
In the logs, I see a correct recognition of the timezone on downloading the data from carelink:
2024-02-19 17:10:55.321 DEBUG (MainThread) [custom_components.carelink] _async_update_data: {'client_timezone': 'Pacific Standard Time', 'last_update_timestamp': datetime.datetime(2024, 2, 19, 8, 8, tzinfo=zoneinfo.ZoneInfo(key='America/Los_Angeles')), 'last_sg_timestamp': datetime.datetime(2024, 2, 19, 8, 8, tzinfo=zoneinfo.ZoneInfo(key='America/Los_Angeles')), [..sgv & pump data cut..]

The log-timestamp is my server's local time (germany), while the client tz and last_update tz are my current location.

I will take a look 👍


Fix Directives with PSK header

It seems the problem with not working Satellite PSK headers is not in the Satellite repo, but they were never used in the Ansible Tower collector/operations so it was the first occurence in the Satellite, because /connection/status endpoint doesn't use directives
So probably the psk is not properly configured on stage and prod (CI works fine).
This PR fixes directives so they will use the PSK header, if provided

RHCLOUD-11735

rubocop fixed in #35

rubocop fixed in #35


Hosted Login README: Missing link to OIDC WEB Setup Instructions

The README for the "Okta Hosted Login" demo app has a link with no URL that is not rendering correctly in Markdown:
"This is done from the Okta Developer Console and you can find instructions [here][OIDC WEB Setup Instructions]."
See https://github.com/okta/samples-php/blame/develop/okta-hosted-login/README.md#L9
That link would have been very useful to me in my research on how to integrate with Okta.

@keithdechant I will get this update, but for your reference, it should link to https://developer.okta.com/authentication-guide/implementing-authentication/implicit#1-setting-up-your-application


Update AutoRest C# version to 3.0.0-beta.20231120.1

Update AutoRest C# version to 3.0.0-beta.20231120.1

API change check
API changes are not detected in this pull request.

All changes are only in comments


model_name in ChatResult from BaseChatOpenAI is not sourced from API response

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
llm = ChatOpenAI(model_name="gpt-4-turbo")
aimessage = llm.invoke([('human', "say hello!!!")])
aimessage.response_metadata['model_name']

Error Message and Stack Trace (if applicable)
No response
Description
In the openai  API, you can specify a model by a generic identifier (e.g. "gpt-4-turbo") which will be matched to a specifc model version by openai for continuous upgrades. The specific model used is returned in the openai API response (see this documentation for details: https://platform.openai.com/docs/models/continuous-model-upgrades).
I would expect the the model_name in the ChatResult.llm_output returned from BaseChatOpenAI to show the specific model returned by the openai API. However, the model_name returned is whatever the model_name that was passed to BaseChatOpenAI is (which will often be the generic model name). This makes logging and observability for your invocations difficult. The problem is found here: https://github.com/langchain-ai/langchain/blob/cb183a9bf18505483d3426530cce2cab2e1c5776/libs/partners/openai/langchain_openai/chat_models/base.py#L584 when self.model_name is used to populate the model_name key instead of response.get("model", self.model_name).
This should be a simple fix that greatly improves logging and observability.
System Info
System Information

OS:  Darwin
OS Version:  Darwin Kernel Version 23.2.0: Wed Nov 15 21:53:34 PST 2023; root:xnu-10002.61.3~2/RELEASE_ARM64_T8103
Python Version:  3.11.9 (main, Apr 19 2024, 11:43:47) [Clang 14.0.6 ]

Package Information

langchain_core: 0.2.3
langchain: 0.2.1
langsmith: 0.1.69
langchain_anthropic: 0.1.15
langchain_openai: 0.1.8
langchain_text_splitters: 0.2.0

Packages not installed (Not Necessarily a Problem)
The following packages were not found:

langgraph
langserve

@bantucaravan i made a change "model_name": response.get("model", self.model_name), https://github.com/langchain-ai/langchain/blob/cb183a9bf18505483d3426530cce2cab2e1c5776/libs/partners/openai/langchain_openai/chat_models/base.py#L584
The response.get("model", self.model_name) checks if the model key exists in the response dictionary. If it does, it uses that value; otherwise, it uses self.model_name. i hope you  check my pr and update me soon

@isatyamks fixed this issue in PR #22569
Thank you!


Unable to place RoboDozer in 3 out of 4 visible map corners

Test situation:
After starting a new game and placing the lander, advanced a turn and I'm trying to place a RoboDozer at each of the four visible corners of the visible map per turn:

In the current setup, the only corner I could place it was at the top.
Perhaps this is a design decision or something the original also did or an unwritten law of isometric design, if so, the issue can be summarily closed.
The other three corners did not allow me to. It seems not possible to place a RoboDozer at the SE and SW edges (also marked in red). I also resized my window to get both an odd and even edge length, in both cases the above situation was true.
I guess this has to do with how the game decides which tile is currently visible. Even though it is visible to me as a human, the game code tells me it is in fact not visible to the game. The top corner that did work maps to the origin of the Rectangle, all other 3 corners are literal "edge" cases, where one or both coordinates are just outside of the calculated rectangle, even though they are (humanly) visible tiles.
bool TileMap::isVisibleTile(NAS2D::Point<int> position, int z) const
{
	if (!NAS2D::Rectangle{mMapViewLocation.x, mMapViewLocation.y, mEdgeLength - 1, mEdgeLength - 1}.contains(position))
	{
		return false;
	}

	if (z != mCurrentDepth)
	{
		return false;
	}

	return true;
}

So would that mean the mEdgeLength should not be decreased by 1 in both places when checking a position with contains ?

Ahh, thank you for reporting this. That does indeed look like a bug.
I think I'd noticed this before, though was kind of busy with other things and forgot about it.
I think I had played around with adjusting the visibility code to remove the - 1, though I may have run into issues somewhere else when I tried that. I can't quite remember now. Though it's possible perhaps I was adjusting the wrong function. I was much less familiar with the code back then.

Nope, this is definitely a bug, one I've been meaning to look into but haven't gotten around to. I think Dan got to it with the latest PR.


[Question] How to edit "What do you want to change?" prompt and what's shown after that in a FormFlow ?

I have a written this formflow and its output on some browsers looks fine but on some it doesnt.
[Serializable]
public class InquiryForm
{
    [Prompt("What is your First Name? {||}")]
    public string FirstName { get; set; }
    [Prompt("What is your Last Name? {||}")]
    public string LastName { get; set; }
    [Prompt("What is your email address? {||}")]
    public string Email { get; set; }
    [Prompt("What is your Contact number?(Enter a 10 digit number) {||}"), Numeric(1000000000,<PHONE_NUMBER>)]
    public int MobilePhone { get; set; }
    [Prompt("What is your Procedure name? {||}")]
    public string ProcedureName { get; set; }
    [Prompt("Please write your inquiry here {||}")]
    public string Comment { get; set; }

    public static IForm<InquiryForm> BuildForm()
    {

        return new FormBuilder<InquiryForm>()
            .Message("I just need a few details:")
            .AddRemainingFields()
            .Confirm()
            .Build();
    }
}

On saying no after the question "What do you want to change?" the following output is shown in chrome

whereas the same thing in edge/ mozilla is shown as

is there a way i could edit the buttons and just show the field names instead.
I would really appreciate some help. This formflow is kinda hard to understand and customize. Even after looking at its documentation

I am not sure what you want. Do you not want to show the current choices in parenthesis?
One way to do this is by adding following attribute to the InquiryForm class.
[Template(TemplateUsage.NavigationFormat, "{&}")]

Let me know if this helps.


[WIP] Add username method

Pull Request Test Coverage Report for Build 706

0 of 2 (0.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.3%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/address/model/ModelManager.java
0
1
0.0%

src/main/java/seedu/address/model/UserSession.java
0
1
0.0%

Totals

Change from base Build 699:
0.0%

Covered Lines:
1858

Relevant Lines:
2343

💛  - Coveralls


emailing people asking for stars

cold-emailing people about your project begging for stars is annoying

Apologies for bothering you, we were just seeking for more potential connections, just ignore if you don't want it.


Change way of installing pnpm on shared CI setup

Change way of installing pnpm on shared CI setup via curl directly in stead of through npm.

Nevermind, I didn't anticipate the error that occurred on the CI checks here when they're attempted with the CURL-way... let's just leave it to be installed via npm as it is for the time being...


Add Sendable conformance to Xoshiro and LCRNG generators

The current implementation of swift-gen supports back to swift 5.0. However, with the release of swift 6.0 the Sendability requirements have become more strict. An example for this project is using the generators with the withRandomNumberGenerator dependency in the swift-dependencies package. Using e.g. Xoshiro raises an error:
withDependencies {
  $0.withRandomNumberGenerator = WithRandomNumberGenerator(Xoshiro(seed: 0))
// Type 'Xoshiro' does not conform to the 'Sendable' protocol 👆
}

All that's required is the declaration for the included generators to support sendability.

@seanmrich Do you have time to look into updating the Linux CI to point to a more recent Swift to get this PR green?

Looks like the error was related to the Docker image using swift 5.3, but my PR increased the requirement to swift 5.5 to get Sendable. Added a commit to restore the tools version to 5.0 and instead put the Sendable conformance behind a swift version check.
Note that the conformance added on LCRNG creates a warning because the type is deprecated. Not sure if you want to remove conformance since it's deprecated anyway just to remove the warning.


Move Release tar file to github

Hello,
The Release tarball available on dropbox location will not be accessible from behind the company firewall(
https://dl.dropboxusercontent.com/u/730827/hue/releases/3.8.1/hue-3.8.1.tgz.
Will it be possible to move that to github itself.

We host the latest Hue alternatively here: http://gethue.com/downloads/hue-3.11.0.tgz


Enhance Backend Functionality

Enhanced HTML structure to facilitate Farsi language compatibility and integrated PHP functionality for dynamic content retrieval in JavaScript.

Introduced import.php to facilitate advanced Persian text analysis, including word verification and saving functionality through save_words.php. These enhancements bolster the backend by providing robust capabilities for importing, analyzing, and persisting Persian text data into the database.


Update response length check with dumps

minor change but lgtm and ty
add a description of how (if?) you tested that this works
update title to be more specific and descriptive of context, e.g. start with "fix" to show that you're fixing a bug, and describe which response you are checking (lambda response)

Would it be better to stick the req locking branch for this, since this is a minor change and it will be more coherent there?


Cannot deploy myDriving to MSDN Enterprise Azure subscription

I am having trouble with deploying solution to Azure. I cannot find the location/region that would support all the elements needed by myDriving AND MSDN subscription limitations.
Apparently MSDN Enterprise cannot provision sql instances everywhere.
Below is my question from MSFT forums.
https://social.msdn.microsoft.com/Forums/azure/en-US/59535998-7fd9-4e41-9eae-60696768af59/cannot-deploy-mydriving-to-msdn-enterprise-subscription?forum=azureiothub
MyDriving\scripts\PowerShell> .\deploy.ps1 "centralus" "IOT-4"
At first, multiple regions I tried did not support IoT or Streaming provisioning.
New-AzureRmResourceGroupDeployment : 14:27:04 - Error: Code=LocationNotAvailableForResourceType; Message=The provided location 'centralus' is not available for resource type 'Microsoft.Devices/IotHubs'. List of available regions for the resource type is 'westus,northeurope,eastasia,eastus,westeurope,southeastasia,japaneast,japanwest,australiaeast,australiasoutheast,westus2,westcentralus'.

New-AzureRmResourceGroupDeployment : 14:29:23 - Error: Code=LocationNotAvailableForResourceType; Message=The provided location 'westcentralus' is not available for resource type 'Microsoft.StreamAnalytics/streamingjobs'. List of available regions for the resource type is 'centralus,westeurope,eastus2,northeurope,japaneast,westus,southeastasia,southcentralus,eastasia,japanwest,northcentralus,eastus,australiaeast,australiasoutheast,brazilsout
h,centralindia'.

When I found one that did, I was greeted with this message:
New-AzureRmResourceGroupDeployment : 14:36:48 - Resource Microsoft.Sql/servers 'mydrivingdbserver-st4lihfvm5z5g' failed with message '{
  "code": "45122",
  "message": "'MSDN subscriptions are restricted from provisioning in this region. Please choose a different region. For exceptions to this rule please contact Microsoft Support.'",
  "target": null,

We have encountered similar issues when we were deploying to westeurope, so we deployed to northeurope. Not sure about the MSDN account restrictions as we have a different kind of subscription.

Same here. CodingRick
TomaszB2, can you successfully deploy in Europe with MSDN?

No, I did not succeed, I was able to almost deploy to westus when I edited script and changed hard-coded "centralus" to "westus" value for (I think) machine learning. (In script there was a comment that only centralus supports it, which is not true)

I am also facing the similar issue. Machine Learning and HDInsights is not deployed. I have MSDN free subscription.

Hello,
I have the same issue.
I'm trying with different area but the powershell script going always in error.
Please can anyone help me ?


babashka: sync native-image arguments with upstream

Motivation for this change
This commit syncs the arguments passed to the babashka with upstream: https://github.com/babashka/babashka/blob/77daea7362d8e2562c89c315b1fbcefde6fa56a5/script/compile#L41-L74
The idea here is to enable more features and reduce the number of issues compared to upstream.
Also add some tests to ensure everything is working.
Things done

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

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

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

CC @bennyandresen @bhougland18 @DerGuteMoritz @jlesquembre.

thanks @thiagokokada
I didn't test the binary, but the changes look good to me. Just a small suggestion, could you add a comment with a link to
https://github.com/babashka/babashka/blob/master/script/compile ?
Just to make easier to remember from where the options are coming

thanks @thiagokokada
I didn't test the binary, but the changes look good to me. Just a small suggestion, could you add a comment with a link to
https://github.com/babashka/babashka/blob/master/script/compile ?
Just to make easier to remember from where the options are coming

Makes sense, I will just use the specific commit to avoid breakage in the future (in case this script move places, for example).

Result of nixpkgs-review pr 114467 at a639b424 run on x86_64-linux 1

2 packages failed to build:

babashka
clojure-lsp

2 suggestions:

warning: missing-phase-hooks
buildPhase should probably contain runHook preBuild and runHook postBuild.
Near pkgs/development/interpreters/clojure/babashka.nix:27:3:
   |
27 |   buildPhase = ''
   |   ^

warning: missing-phase-hooks
installPhase should probably contain runHook preInstall and runHook postInstall.
Near pkgs/development/interpreters/clojure/babashka.nix:67:3:
   |
67 |   installPhase = ''
   |   ^


Operations/Mutations should also update cached data

Currently cached data is static, until next refetch after timeout. It should be editable though as when you have following scenario:

you fetch STH
you cache it
you update data
if cache is not expired and you fetch STH again, then you will use cached data with state prior to mutation, leading to outdated value

With this task probably I will also need to store cached data in reducer, not in cacheMiddleware closure, which will also make thinks compatible with SSR

Possibly I will also need to store http response in reducer, which could be big, so potentially I will need to add new method to drivers to reformat responses to make then as lean as possible, especially they should be serializable.

Fixed in v0.27.0


Error message on function-order rule is misleading

Let's say I have this contract:
contract TestContract {
        function TestContract() {}
        function testPublicFunction() public {}
        function testExternalFunction() external {}
}

If I run solium there, it should fail because external functions should go before public functions. solium indeed fails here, however, the error message says:
external function(s) should appear after fallback function(s).
This is very confusing, because my contract has no fallback functions. I thought solium was parsing a fallback function by mistake somehow, it never occurred to me that the error was pointing on the wrong direction.

It seems very hard to craft the right message that will fit all the possible contracts, which are likely to not have all the types of function. Maybe, an easier solution would be to just say something like:
The order should be: constructors, fallback, external, public, internal and private.

Solved in 1.1.6

Thank you!


Fix MacOS CI

Here we go again

very keen to see this working. 🤞

It seems brew and/or the macos runner was magically fixed in the meantime, so this is not relevant anymore after #42, closing this


PyPI page should link directly to documentation

Can we turn this issue into "Add package description to PyPI"? Could also read "Use long_description in setup.py".
That's an easy fix, but someone then needs to upload a new version of the package (description).

See also: PR #980


feat: implement wildcard select ilike

Implements parsing for SELECT * ILIKE ... which is valid syntax in snowflake: https://docs.snowflake.com/en/sql-reference/sql/select
Via googling, it seems like only snowflake supports this syntax. I could not find any other dialect that does. Snowflake does not allow SELECT * ILIKE <pattern> EXCLUDE <column> so I implemented that as well.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

31 of 32 (96.88%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 87.837%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

tests/sqlparser_snowflake.rs
10
11
90.91%

Totals

Change from base Build<PHONE_NUMBER>:
0.01%

Covered Lines:
20611

Relevant Lines:
23465

💛  - Coveralls


Improve golang-tags.json

We save the full content for json with tags:
https://github.com/kevincobain2000/gobrew/blob/master/.github/workflows/sync-release-tags.yml#L16
But then we use only one field from it, ref:
https://github.com/kevincobain2000/gobrew/blob/master/helpers.go#L395
Maybe at the moment when we request json, we can immediately carry out the necessary checks and transformations?
https://github.com/kevincobain2000/gobrew/blob/master/helpers.go#L400
Should we remove the "refs/tags/" prefix, check that the tag starts with "go", and only then save a specific version?
In the code, we will still need to read and process json, but we will not need to process unnecessary data and send data over the network that we do not use.
Moreover, less data can be stored in the repository.
By the way, maybe for synchronization, create a separate repository and link to it?  By getting rid of a separate branch in the current repository?  This will allow you to get rid of the data synchronization workflow startup logs.  And again reduce the size of the repository itself.
What do you think?

Hi.
Thanks for the suggestion.
I agree with reducing the parsed json, to just that json kv, that we need.
Having those to all together a different repository complicate things. Having all in one repo is more manageable.

I think I can provide changes after we check and commit:
https://github.com/kevincobain2000/gobrew/pull/167

Another thought came to mind: use a gist, not a repository, to store the json file
https://docs.github.com/en/rest/gists/gists?apiVersion=2022-11-28
In principle, it is quite easy to implement.

I mean. Idk man.
It works just fine right now.

OK, thanks. :)

Also. Idk but you are on fire. So many contributions.


CreateSweepGradient should support tileMode.

Description
SKShader.CreateSweepGradient should support tileMode.
Code
public static SKShader CreateSweepGradient (SKPoint center, SKColor [] colors, float [] colorPos)
-->
public static SKShader CreateRadialGradient (SKPoint center, float radius, SKColor [] colors, float [] colorPos, SKShaderTileMode mode)
Skia supports it. So it's trivial to support this in SkiaSharp.

Added in the master branch. Should make it into the upcoming v1.68.0 release


[BUG] Compiler failure just from separating two classes from one file into two separate files

Describe the bug
C++ compilation fails just from separating two cdef classes defined in one file into two separate files .
To Reproduce
Code to reproduce the behaviour:
file_1.pxd:
from .file_2 cimport B

cdef class A:

    cpdef void run(self, B b)

file_1.pyx:
cdef class A:

    cpdef void run(self, B b):
        print(b.run)

file_2.pxd:
cdef class B:

    cpdef void run(self)

file_2.pyx
cdef class B:
    cpdef void run(self):
        pass

Expected behavior
If you compile above (in c++), you get a failure msg:
error: invalid conversion from ‘void (*)(__pyx_obj_14test_class_bug_6file_2_B*, int)’ to ‘void (*)(__pyx_obj_5tests_14test_class_bug_6file_2_B*)’ [-fpermissive]

Environment (please complete the following information):

OS: Linux
Python version == 3.8.4
Cython version == 3.0.0a10

Additional context
I think the cimport B introduces this which breaks everything, but I've no idea how to resolve...
/* "cfunc.to_py":66
 *
 * @cname("__Pyx_CFunc_void__lParenB__comma_int__dunderpyx_skip_dispatch__rParen_to_py_4self")
 * cdef object __Pyx_CFunc_void__lParenB__comma_int__dunderpyx_skip_dispatch__rParen_to_py_4self(void (*f)(B) except *):             # <<<<<<<<<<<<<<
 *     def wrap(B self):
 *         """wrap(self: 'B') -> 'void'"""
 */

In fact, you can't even compile this:
from .file_2 cimport B

cpdef void test_func():
    cdef B b = B()
    print(b.run)

This will give same error: invalid conversion from error...
What is going on here???

So roughly what's happening (I think):
print(b.run) (where b.run is a cdef function) isn't really something that can be printed, so Cython attempts to convert it to a Python object instead.
There's a number of issues converting it to a Python object - one is that Cython can't really handle "bound cdef functions). The second (that you're seeing) is that cpdef functions are implemented with an int flag (which is used for inheritance I think) but the Cython "function to pyobject" conversion code doesn't know about that int flag.
Cython shouldn't really be bothering with the conversion anyway, since cpdef functions already have a Python wrapper (so ideally it should just use that).
I don't know what difference moving it to a pxd file makes either. But hopefully this is a rough summary of what's failing.

So roughly what's happening (I think):
print(b.run) (where b.run is a cdef function) isn't really something that can be printed, so Cython attempts to convert it to a Python object instead.
There's a number of issues converting it to a Python object - one is that Cython can't really handle "bound cdef functions). The second (that you're seeing) is that cpdef functions are implemented with an int flag (which is used for inheritance I think) but the Cython "function to pyobject" conversion code doesn't know about that int flag.
Cython shouldn't really be bothering with the conversion anyway, since cpdef functions already have a Python wrapper (so ideally it should just use that).
I don't know what difference moving it to a pxd file makes either. But hopefully this is a rough summary of what's failing.

First, thanks for the quick reply! This is really important to me for my project right now.
So, putting them in one file as below, it compiles and everything looks fine.
file_3.pxd
# cython: language_level=3

cdef class B:

    cpdef void run(self)

cdef class A:

    cpdef void run(self, B b)

file_3.pyx
# cython: language_level=3

cdef class B:
    cpdef void run(self):
        pass

cdef class A:

    cpdef void run(self, B b):
        print(b.run)

And below are the differences from compiled cpp code:
one file
/* "/utils/cy/tests/test_class_bug/file_3.pxd":4
 *
 *
 * cdef class B:             # <<<<<<<<<<<<<<
 *
 *     cpdef void run(self)
 */
struct __pyx_obj_5utils_2cy_5tests_14test_class_bug_6file_3_B {
  PyObject_HEAD
  struct __pyx_vtabstruct_5utils_2cy_5tests_14test_class_bug_6file_3_B *__pyx_vtab;
};

/* "utils/cy/tests/test_class_bug/file_3.pxd":9
 *
 *
 * cdef class A:             # <<<<<<<<<<<<<<
 *
 *     cpdef void run(self, B b)
 */
struct __pyx_obj_5utils_2cy_5tests_14test_class_bug_6file_3_A {
  PyObject_HEAD
  struct __pyx_vtabstruct_5utils_2cy_5tests_14test_class_bug_6file_3_A *__pyx_vtab;
};

two files
/* "file_2.pxd":5
 *
 *
 * cdef class B:             # <<<<<<<<<<<<<<
 *
 *     cpdef void run(self)
 */
struct __pyx_obj_5utils_2cy_5tests_14test_class_bug_6file_2_B {
  PyObject_HEAD
  struct __pyx_vtabstruct_5utils_2cy_5tests_14test_class_bug_6file_2_B *__pyx_vtab;
};

/* "cfunc.to_py":66
 *
 * @cname("__Pyx_CFunc_void__lParenB__comma_int__dunderpyx_skip_dispatch__rParen_to_py_4self")
 * cdef object __Pyx_CFunc_void__lParenB__comma_int__dunderpyx_skip_dispatch__rParen_to_py_4self(void (*f)(B) except *):             # <<<<<<<<<<<<<<
 *     def wrap(B self):
 *         """wrap(self: 'B') -> 'void'"""
 */
struct __pyx_obj___pyx_scope_struct____Pyx_CFunc_void__lParenB__comma_int__dunderpyx_skip_dispatch__rParen_to_py_4self {
  PyObject_HEAD
  void (*__pyx_v_f)(struct __pyx_obj_5utils_2cy_5tests_14test_class_bug_6file_2_B *);
};

/* "file_2.pxd":5
 *
 *
 * cdef class B:             # <<<<<<<<<<<<<<
 *
 *     cpdef void run(self)
 */

struct __pyx_vtabstruct_5utils_2cy_5tests_14test_class_bug_6file_2_B {
  void (*run)(struct __pyx_obj_5utils_2cy_5tests_14test_class_bug_6file_2_B *, int __pyx_skip_dispatch);
};
static struct __pyx_vtabstruct_5utils_2cy_5tests_14test_class_bug_6file_2_B *__pyx_vtabptr_5utils_2cy_5tests_14test_class_bug_6file_2_B;
/* #### Code section: utility_code_proto ### */

You see - separating into two files introduces this "cfunc.to_py" block...
Is there any reason for that??

You see - separating into two files introduces this "cfunc.to_py" block...
Is there any reason for that??

Don't know immediately. Presumably Cython knows a little less about functions defined in another file...
In your case I think you just want to get the Python wrapper for the cdef function. The easiest way to do that is to make it treat b as a regular Python object (rather than a B object) so that it doesn't know about the cdef part of run:
print((<object>b).run)

That should probably work as a workaround.
The second question is: do you even need a cpdef function? In my mind they're often the wrong choice - they have all the disadvantages of a cdef function and all the disadvantages of a def function. Here you might well be better just making run a def function.
Thanks for the report though - this does look like a bug.

The casting workaround above works but downside is losing all the static info.

The second question is: do you even need a cpdef function? In my mind they're often the wrong choice - they have all the disadvantages of a cdef function and all the disadvantages of a def function. Here you might well be better just making run a def function.

My project requires deep class hierarchy, which means lots of overriding. I'm unfortunately using cpdef for all the interfaces just so its static typed, visible to cy and py worlds, which is very nice for my use case.
Correct me if I'm wrong - if I use cdef, it is not visible to py world; if I use def, the function call overhead is there for cy world (I'm pretty latency sensitive for lots of ops). There is not overloading in python, so I can't cdef & def. The only way seems to be having two sets of same functions, which clearly isn't ideal...
I do hope this issue could be resolved coz it seems to me is just that cython pxd imports seems weird (I don't know how to define weird...)

Thanks for the report though - this does look like a bug.
My pleasure - have been a loyal Cython user since version 0.23. :)

The casting workaround above works but downside is losing all the static info.

You already lose all the static info when print a cpdef function (because there is nothing sensible to do except do the Python attribute lookup). The workaround generates exactly the same code as the case where the class is defined in the same file.

Correct me if I'm wrong [...]

No - you understand correctly. cpdef has it's place (and is designed for what you are using it for). My personal opinion is that it's surprisingly rare for a function to need to be callable efficiently from Cython and also be callable from Python. But if that's what you need then use cpdef.
I shall leave it here since a suitable workaround exists in the short-term and I think we have enough information to fix the bug in the longer-term

You already lose all the static info when [...].

True - sorry I overlooked. Agree w/ the temporary workaround now.
Thank you so much the help! Really hope we officially get to 3.0 soon!


Multiple recipients in config.yaml

I'm having trouble creating an array with multiple recipients in the to:  line in config.yaml. I tried several methods on how YAML likes arrays, but no luck. How do I represent the array in config.yaml? Thanks.

the easiest way, without worrying about indentation, is to: [ "address1", "address2" ]

Thank you. But when I use   to: [<EMAIL_ADDRESS><EMAIL_ADDRESS>] it gives me:
~/kopia-mon# python3 kopia-mon.py
Traceback (most recent call last):
  File "/root/kopia-mon/kopia-mon.py", line 56, in <module>
    em.send(html, error_count>0)
  File "/root/kopia-mon/emailutil.py", line 34, in send
    server.sendmail(msg['From'], msg['To'], msg.as_string(), )
  File "/usr/lib/python3.9/email/message.py", line 158, in as_string
    g.flatten(self, unixfrom=unixfrom)
  File "/usr/lib/python3.9/email/generator.py", line 116, in flatten
    self._write(msg)
  File "/usr/lib/python3.9/email/generator.py", line 199, in _write
    self._write_headers(msg)
  File "/usr/lib/python3.9/email/generator.py", line 226, in _write_headers
    self.write(self.policy.fold(h, v))
  File "/usr/lib/python3.9/email/_policybase.py", line 326, in fold
    return self._fold(name, value, sanitize=True)
  File "/usr/lib/python3.9/email/_policybase.py", line 369, in _fold
    parts.append(h.encode(linesep=self.linesep, maxlinelen=maxlinelen))
AttributeError: 'list' object has no attribute 'encode'
~/kopia-mon#

Using one recipient in the array to: [<EMAIL_ADDRESS>] gives the same error. When reverting back to one recipient without the array it works as expected, just using one recipient. Thanks in advance.

Please pull the latest updates, it should be fixed now.

I can confirm. Sending to multiple recipients is now working correctly.


doing --version or --help prints version/help but doesn't Exit from program

When writing a simple program after including cli, the program doesn't exit after doing  ./commandline --version
I also tried, inside Action like this , but still doesn't exit from program
if c.Bool("version") == true {
return cli.NewExitError("", 86)
}
./commandline --version
commandline version 1.0
Hello Word

Just checked, seems it exits correctly in my case. Your issue would definitely benefit from better formatting and a proper source code snippet (the one that causes a problem).

Hiya! I'm not totally sure what the issue is here? If you can get back to us with a more thorough example + context, we can totally look into it 👍

I'm getting this too. I should really fix this for you instead of posting my crappy workaround.
Anyway, here's my crappy workaround:
	oldHelpPrinter := cli.HelpPrinter
	cli.HelpPrinter = func(w io.Writer, templ string, data interface{}) {
		oldHelpPrinter(w, templ, data)
		os.Exit(0)
	}

    oldVersionPrinter := cli.VersionPrinter
    cli.VersionPrinter = func(c *cli.Context) {
        oldVersionPrinter(c)
        os.Exit(0)
    }

@acrisci can you create a new issue and link to this one? thank you!

@acrisci Thanks, this was helpful :)


Migrate to redux

see https://github.com/plouc/mozaik/issues/96

Changes Unknown when pulling c47965f4040a91fa467cd7fa181e71883bed0158 on feat-redux-migration into ** on v2.x**.

Changes Unknown when pulling c47965f4040a91fa467cd7fa181e71883bed0158 on feat-redux-migration into ** on v2.x**.


[Bug]: NuGet API return Blob was not found

@kalirajanganeshan commented on Wed Apr 27 2022
NuGet Product Used
Other/NA
Product Version
Syncfusion Blazor Version API
Worked before?
No response
Impact
No response
Repro Steps & Context
We try to get the versions of our package using following NuGet API. It was return as blob was not founded but the package was exists in NuGet.Org.
API URL : https://api.nuget.org/v3-flatcontainer/PackageName/index.json
Result:

Note: The issue was not occurred in all machine and it was only occurred in some machines only. Could you please check and update?
Verbose Logs
No response

I believe it's NuGetGallery issue, not NuGetClient, so I moved here.

Hello, @kalirajanganeshan! The solution of this issue should be helpful for you: https://github.com/NuGet/NuGetGallery/issues/9105

I am closing this issue because there has been no response back. If you continue to face an issue, please feel free to open a new issue. Thanks!


GetTotalVATAmount

Hi,
In a functionality we are developing there is the need to sum an additional field to the standard "VAT Amount" field in table VAT Amount Line, and present that sum in all reports and statistics. So, this applies to all calls of the GetTotalVATAmount function throughout the application.
Is it possible to add an event to the GetTotalVATAmount function like in the example below?
`
procedure GetTotalVATAmount(): Decimal
begin
    OnBeforeGetTotalVATAmount(Rec,VATAmount,IsHandled);
    if IsHandled then
      exit(VATAmount);
    CalcSums("VAT Amount");
    exit("VAT Amount");
end;

`
Thank you.
BR,
Domingos

Best to show the declaration/signature of the event publisher procedure. We can easily conclude that you want VATAmount and IsHandled to be passed by var so that you can modify them, but it's generally easier to include that in your request.

Best to show the declaration/signature of the event publisher procedure. We can easily conclude that you want VATAmount and IsHandled to be passed by var so that you can modify them, but it's generally easier to include that in your request.

Event declaration/signature added.


ARM template schema needs to be updated with Key Vault control plane swaggers

The ARM template used by the VSCode extension for authoring templates (as well as used by the Portal's "Export template" functionality) has very old Key Vault schemas from 2016: 2016-10-01. Please see https://github.com/Azure/azure-resource-manager-schemas#authoring-schemas-and-submitting-a-pr for how to update them so we get schema-based assistance for authoring templates, as well as validation.

It seems like @anthony-c-martin was faster than me. Done


New Organization?

Things have been moving slowly on https://github.com/jazzband/help/issues/196, which has caused us to be hesitant of significant overhauls to django-dbbackup due to the inevitable need for admin management caused by changing CI workflows. Additionally, the jazzband user registration workflow has been broken, making it hard to add new maintainers.
As a result, we should discuss what potential orgs this repo can be moved to for increased sustainability.
The immediate options that come to mind are

django-dbbackup
revsys
encode

This issue is to open discuss what orgs we have in mind for transfer. Feel free to vote on the existing options, or to suggest new options.
cc: @johnthagen @benjaoming @pkkid @ZuluPro @jonathan-s

The old PyPI releases point to https://github.com/django-dbbackup/django-dbbackup
Perhaps easiest to simply go back to where we were before jazzband?

Anything would be fine on my end, if there is anything I can do to help, let me know.

Yup, going back to the old org would be the simplest solution. We did originally moved orgs to add more maintainers, however, we don't want a re-org to negatively impacts maintainability.
Jazzband's concept and registration structure is nice, but unfortunately the org has been running on fumes for seemingly ~4 years.
To put it more bluntly, are there any python/django related orgs that are worth considering?
revsys is a dedicated group but seems like they limit who joins the org. encode might be closer to what we're looking for, but I don't know what it's like to operate under that org.

Pinging the guys in encode I've seen around while working PRs: @auvipy @kludex @tomchristie
Could you give some opinions on this? Are there any challenges of working within the encode org, and do you think this repo might fit within within the org?
There also doesn't seem to be guidelines on what repos can join, and what the org structure is like.

I know nothing about Django. @adamchainz may be a better ping than me. 👀

I don't really do anything with jazzband or any org, I mostly maintain a bunch of repos myself.

@Archmonger I think your concerns around Jazzband has been around having freedom to setup your own CI stuff, onboard new maintainers etc. To guarantee that, moving forwards with django-dbbackup's own organization seems like a good fit :+1:


💡[FEATURE]: use LIME (Local Interpretable Model-agnostic Explanations) to explain Logistic Regression model of Loan Status Prediction model.

I want to use LIME (Local Interpretable Model-agnostic Explanations) to explain model predictions of Loan Status Prediction Model (Loan Status Prediction/Loan_Status_prediction.ipynb)
This code will demonstrates how to use LIME to explain a prediction made by the trained Logistic Regression model. It will create a LIME explainer, select an instance from the test set to explain, and generate an explanation using the explainer's explain_instance method.
The explanation will include feature importance scores, indicating the contribution of each feature to the model's prediction for the selected instance. These scores help stakeholders understand which features are driving the model's decision and how they influence the predicted outcome.

Hi @Akshat111111, I have raised this issue. Please assign it to me.

Hello @Akshat111111
Can you assign me this issue. I would like to work on this issue

Hello @Akshat111111 Can you assign me this issue. I would like to work on this issue

Let @FreeSpirit11 work on it.You can create a new issue with your idea


[Bug Report] Slow performance on Element Select with large # of items

Element UI version
1.3.1
OS/Browsers version
Windows 10 - All Browswers
Vue version
2.3.3
Reproduction Link
https://jsfiddle.net/dday515/pj71jkyw/190/
Steps to reproduce
Click the "Toggle Element Select". Notice how long it takes for the page to be updated.
Click the "Toggle Standard Select"
Update the test expression of the for loop, changing the 1000 to 100. Re-run the test.
What is Expected?
That clicking both the Element Select and the Toggle select would complete in roughly the same amount of time.
What is actually happening?
It is taking roughly 3 seconds for the toggle of the element select to process when there are 1000 records in the drop down.
The Standard Toggle is almost immediate.
(This is obviously a trivial example, but in our application, navigating away from a page that has a select with many items is much slower than pages where they don't exist.

I'm aware of this issue. But the current implementation makes it difficult to improve its performance. More info: https://github.com/ElemeFE/element/commit/92b4156aaac573d94bcf35424efbdbb925bae222

I would link the issue to anotherone. #5001

This was a major problem for us in 2.3.7 so we had to switch to vue-multiselect.  I understand the current implementation prevents an immediate fix, but will this be addressed in the future?

+1 to above, for me, I switched to vue-select and solved as well.

same here


Support PDK

This module should support PDK which could help contributors run tests and develop on this module.

Please use ghoneycutt/rpcbind as a guide with regards to rubocop. Rubocop is not stable and they change their style very often which has negative effects for us and others contributing so we want to minimize rubocop changes.
https://github.com/ghoneycutt/puppet-module-rpcbind/blob/master/.sync.yml

This works too:
 .rubocop.yml:
   selected_profile: off

This disable all cops but struggling to disable the use of rubocop-rspec which is having issues parsing files even when cops are disabled.

This is what I landed on:
.rubocop.yml:
  default_configs:
    AllCops:
      Exclude:
        - '**/*'

The selected_profile works but couldn't force it to use newer ruby parser and kept using 2.1 and that would break even when cops were disabled.


BIG REFACTOR: utilize goroutines and channels

Make funcs smaller and create unit tests first before refactoring

Only concurrent process I'm thinking of doing right now is the renaming part where there are no returned values (presence of errors will skip renaming the file/files under dir), and can be safely converted to concurrent. This is because the slices of paths, commands, flags, and other values to be used in renaming are all validated beforehand in synchronous processes (TokenizeArgs, ParseArgs, and FetchEntries)

Only concurrent process I'm thinking of doing right now is the renaming part where there are no returned values (presence of errors will skip renaming the file/files under dir), and can be safely converted to concurrent. This is because the slices of paths, commands, flags, and other values to be used in renaming are all validated beforehand in synchronous processes (TokenizeArgs, ParseArgs, and FetchEntries)

interesting that some processes (info.Rename()) are faster not using goroutines. might be because of the overhead of creating one

i'm going to use async per type, sync per entry renaming
sync per type, sync per entry renaming

~190ms

async per type, sync per entry renaming

~68ms

sync per type, async per entry renaming

~75ms

async per type, asyng per entry

~80ms

where sync per type means renaming all series multiple seasons no movies will wait for all named seasons to be done before starting.
where sync per entry means renaming episodes of evangelion (series entry 1) will wait for nichijou (series entry 2) to be done before starting


fix: Update Grafana controller_runtime_reconcile_errors_total to target a specific controller

Fixes #6163
Description : add job in dashboard's label_values query to get controller values only from karpenter and not from other addons
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 82.264%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5413

Relevant Lines:
6580

💛  - Coveralls


Remove unused argument

This PR removes an unused argument, and returns nothing from some functions.

bors r+


Compound Keys

I am using compound keys in my model. For example I have a city table which uses the postcode and name as a compound key:
@Table
class City extends Model<City> {

  @PrimaryKey
  @Column
  postcode: number;

  @PrimaryKey
  @Column
  name: string;

  @Default(false)
  @Column
  enabled: boolean;

}

export default City;

Which results in the following create which looks correct:
CREATE TABLE IF NOT EXISTS `City` (`postcode` INTEGER NOT NULL, `name` VARCHAR(255) NOT NULL, `enabled` TINYINT(1) DEFAULT 0, PRIMARY KEY (`postcode`, `name`));

I then want to reference this table from my user table:
@Table
class User extends Model<User> {

  @Unique
  @Column
  email: string;

  @Column
  address: string;

  @ForeignKey(() => City)
  @Column
  postcode: number;

  @ForeignKey(() => City)
  @Column
  cityName: string;

  @BelongsTo(() => City)
  city: City;

}

export default User;

But as you can see, no foreign key constraints are added to the table:
CREATE TABLE IF NOT EXISTS `User` (`id` INTEGER PRIMARY KEY AUTOINCREMENT, `email` VARCHAR(255) UNIQUE, `address` VARCHAR(255), `postcode` INTEGER, `cityName` VARCHAR(255), UNIQUE (`email`));

I am assuming I have to somehow reference the actual attributes in the other table from the user table, but I am not sure how to do it.

Hey @ReneHollander, this is not working with associations only, you need to use scopes additionally. See here a discussion about it: https://github.com/sequelize/sequelize/issues/311
And here is the documentation of scopes in associations: http://docs.sequelizejs.com/manual/tutorial/associations.html#scopes
If you have issues getting this to work, just come back and I try to help you with this :)

Thanks for getting back! I actually found that issue and with that I gave up and tried using typeorm. But typeorm is also not behaving correctly with composite keys. I will try it again with sequelize. (I also did not see the hint with the scopes...)


Cut content underneath tab group.

The blur effect can be nice in places, I think it's used nicely through-out iOS, for instance. In this case, however, I think it is out of place both in terms of style and readability. The tab group is one of the more important navigation elements, thus it needs to stay readable. If it is on top of bright images, it becomes impossible to read,

Replaced with dark grey bg


termguicolors doesn't work in terminal Vim

Truecolor works just out of the box within the terminal emulator of my choice - st by suckless. Neovim looks perfect. However, I've recently noticed that :set termguicolors breaks the colors in Vim. I've reproduced the issue without .vimrc by running :set termguicolors and then :hi! LineNr ctermfg=red ctermbg=red guifg=red guibg=red or any other highlight group. With truecolor ready colorschemes, such as solarized8 or gotham256, I get only white text over my terminal's default background.
:help

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Aug 21 2016 12:29:10)
Included patches: 1-2232
Compiled by Arch Linux
Huge version without GUI.  Features included (+) or not (-):
+acl             +dialog_con      +job             +mouse_sgr       +rightleft       +user_commands
+arabic          +diff            +jumplist        -mouse_sysmouse  +ruby            +vertsplit
+autocmd         +digraphs        +keymap          +mouse_urxvt     +scrollbind      +virtualedit
-balloon_eval    -dnd             +lambda          +mouse_xterm     +signs           +visual
-browse          -ebcdic          +langmap         +multi_byte      +smartindent     +visualextra
++builtin_terms  +emacs_tags      +libcall         +multi_lang      +startuptime     +viminfo
+byte_offset     +eval            +linebreak       -mzscheme        +statusline      +vreplace
+channel         +ex_extra        +lispindent      +netbeans_intg   -sun_workshop    +wildignore
+cindent         +extra_search    +listcmds        +num64           +syntax          +wildmenu
+clientserver    +farsi           +localmap        +packages        +tag_binary      +windows
+clipboard       +file_in_path    +lua             +path_extra      +tag_old_static  +writebackup
+cmdline_compl   +find_in_path    +menu            +perl            -tag_any_white   +X11
+cmdline_hist    +float           +mksession       +persistent_undo -tcl             +xfontset
+cmdline_info    +folding         +modify_fname    +postscript      +termguicolors   -xim
+comments        -footer          +mouse           +printer         +terminfo        -xpm
+conceal         +fork()          -mouseshape      +profile         +termresponse    +xsmp_interact
+cryptv          +gettext         +mouse_dec       +python          +textobjects     +xterm_clipboard
+cscope          -hangul_input    +mouse_gpm       -python3         +timers          -xterm_save
+cursorbind      +iconv           -mouse_jsbterm   +quickfix        +title
+cursorshape     +insert_expand   +mouse_netterm   +reltime         -toolbar

Did you get that behaviour only with the mentioned color schemes (note that “true-color ready” essentially just means that guibg and guifg are defined also in terminal Vim)? I cannot reproduce what you describe with Vim 7.4 1-2210 and iTerm2. Is it any different with :hi! LineNr guifg=#ff0000 guibg=#ff0000?

Btw, are you running Vim inside tmux? In which case, you should most likely have to set t_8f and t_8b (see :h xterm-true-color).

No, the issue occurs outside tmux. Nothing has changed by using a HEX value.

What if you set t_8f and t_8b anyway as explained in the manual?

By applying termguicolors and the following snippet (before a colorscheme has been set):
set t_8f=^[[38;2;%lu;%lu;%lum
set t_8b=^[[48;2;%lu;%lu;%lum

I get only escape sequences drawn on my screen.

You should input actual escape for ^[.
Use <Ctrl-V><Esc> to input actual escape.

What exactly do you mean? <C-v><ESC> returns only ^[.

Am 2016-08-23 11:45, schrieb Alesandar Metodiev:

What exactly do you mean?  returns only ^[.

so it is only one char, and not two? That is good.
Can you confirm, you are actually using a terminal application (tmux
version)
that supports true color mode at all? What is your TERM variable set to?
Best,
Christian

If the ^[ is two characters (^ and [), it's wrong. If it is one character, it's okay.
When you delete the character with backspace, you will find that ^[ is deleted at once.
Please also check :help c_CTRL-V (and :help i_CTRL-V).

@vim-ml, yes ^[ is a single character. I've already said that I'm not running Vim inside tmux, but simply a terminal emulator that has truecolor support (it has been troubleshooted already).  I believe that $TERM must be set to st-256color. If tmux has been started, it must be screen-256color. Can't check right now. In any case, my terminal reports that it has truecolor enabled and Neovim works just out of the box.

On Di, 23 Aug 2016, Alesandar Metodiev wrote:

@vim-ml, yes ^[ is a single character. I've already said that I'm not running Vim inside tmux, but simply a terminal emulator that has truecolor support (it has been troubleshooted already).  I believe that $TERM must be set to st-256color. If tmux has been started, it must be screen-256color. Can't check right now. In any case, my terminal reports that it has truecolor enabled and Neovim works just out of the box.

Hm, I think that st as terminal support has only recently been added.
What was your vim version?

Solange man die Vergangenheit nur teilweise kennt, lebt man in der
Gegenwart.
-- Gabriel Laub

I think that the suckless community has implemented truecolor in st a few years ago. It's not related to my terminal. The problem also exists in xterm.

Well, for what it's worth, I cannot reproduce the issue with the steps mentioned at the first message. For me, this works. Sorry, for not being able to help.

True colors also works for me both inside as well as outside tmux. I'm using the development version of the xfce4-terminal emulator, which supports true colors. My only issue is with transparent background as mentioned on issue #981. There I also detail how I have correctly setup vim to get true colors.

Just came across this while updating my config to move away from my custom 24bit-color-capable build of Vim.  With st 0.7-1 on Arch Linux, and with the latest version from git://git.suckless.org/st (currently: 68bae9c), termguicolors seems to work fine, provided you add the Vim-specific &t_8f and &t_8b terminal settings.
I really hate using raw escapes with :set (as in the comment above), due to the ambiguous ^[-but-really-^[-and-not-^-followed-by-[ that several people tried to explain.  Here's what I added to my vimrc (before setting a colorscheme) to get things working:
" set Vim-specific sequences for RGB colors
let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"

(The characters after the %s are lowercase Ls.)
FWIW, I tested gotham and gotham256 from https://github.com/whatyouhide/vim-gotham and solarized8_dark and solarized8_dark_high from https://github.com/lifepillar/vim-solarized8.  All seemed to produce colors that looked like the examples on vimcolors.com.  My $TERM setting is st-256color, ATM.

Thanks a lot, @benizi! Your solution has fixed my issue. Can't believe it was that simple...

@benizi nice catch. it fix my issue with true colors

I need to thank @benizi for this response. Thanks to you, I finally got my TermGUIColors working! Thank you so much, man!!!

I know this is a junky work around on an old thread but since transparency works once vim has started for some, I added set the highlight command to an auto command on vim enter which works with my gruvbox colorshceme set up.
autocmd VimEnter * hi! Normal guibg=NONE

@benizi 2021 Fix still going strong! 👍

Btw, are you running Vim inside tmux? In which case, you should most likely have to set t_8f and t_8b (see :h xterm-true-color).

Thanks

FYI, the ugly kludge still works wonders ;-))  with Vim 9.0.813 and Tmux 3.3a on Gnome-Terminal 3.46.4.
It's even referenced in the troubleshooting section of this Archlinux wiki !


Unable to impersonate users

Anyone has any idea how to fix this issue?
sudo secretsdump.py -hashes :a656220101bf64f4768fecce5a4eb5fb<EMAIL_ADDRESS>Impacket v0.9.23.dev1+20210518.120245.2e3cd7cd - Copyright 2020 SecureAuth Corporation
[-] RemoteOperations failed: SMB SessionError: STATUS_LOGON_FAILURE(The attempted logon is invalid. This is either due to a bad username or authentication information.)
[*] Cleaning up...

Sorry I just realize what I did wrong.

@Fox0nTheRun care sharing what the issue was that you did wrong?  I'm trying the same thing, and getting something similar

Many Thanks for confirming


[Improvements] Add an “id-” prefix to html report tree structure to link with id in xml report

In 4.7 version, "id-" prefix was added to all newly generated internal IDs and to legacy IDs that begin with a digit when exporting to exchange format.
In html report export, there isn't this prefix in tree structure (directory and file name), so we can't use xml export to retrieve html link.

I don't understand this:

In html report export, there isn't this prefix in tree structure (directory and file name), so we can't use xml export to retrieve html link.

In XML report, now we have something like this :
<?xml version="1.0" encoding="UTF-8"?> <model xmlns="http://www.opengroup.org/xsd/archimate/3.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengroup.org/xsd/archimate/3.0/ http://www.opengroup.org/xsd/archimate/3.1/archimate3_Diagram.xsd" identifier="id-7c520b91-6710-4eec-a4fb-1b76638cafca">   <name xml:lang="fr">Test</name>
But in html report we have a directory like this :
\7c520b91-6710-4eec-a4fb-1b76638cafca\views\...
We don't have the same id in xml and in html report.

As I explained here:
https://github.com/archimatetool/archi/issues/625
We are trying to preserved the original ID where possible and only add the "id-" prefix to a legacy ID when exporting to the XML format because we have to (IDs can't start with a number).
IDs are internal. Do not depend on them.

I'll close this because this won't change.

I developped a little app which read the XML export, expose graph, node and generate link to HTML report and ids are different.
But i understand

In fact this has not been affected by the changes in 4.7. Even in Archi 4.6, with a number like "7c520b91" that would be exported as "id-7c520b91" in the xml export and "7c520b91" in the html report.

Before I use only CSV export.
I think, it would be better to use same id in all cases.


add documentation

What(What have you changed/added/removed?)

add documentation

Why(Why did you change/add/remove it?)

prep to go public

Codecov Report

Merging #2 into master will decrease coverage by 1.87%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master       #2      +/-   ##
==========================================
- Coverage   45.71%   43.83%   -1.88%
==========================================
  Files           4        3       -1
  Lines         140      146       +6
==========================================
  Hits           64       64
- Misses         68       74       +6
  Partials        8        8

Impacted Files
Coverage Δ

ote.go
39.37% <0.00%> (-2.65%)
:arrow_down:

apple.go

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 8344ca1...786f63e. Read the comment docs.


Failed to parse DICOM file with TransferSyntaxUID JPEG 2000 (Lossless only) (1.2.840.10<IP_ADDRESS>.90)

I have a DICOM file, that embed  JPEG 2000 (Lossless only) image, could not be parsed by suyashkumar/dicom but can be view as normal by Horos.
It can be reproducible with following codes:
package dicom

import (
	"testing"
)

func TestMyDICOMFile(t *testing.T) {
	const dicomFilePath = "<path-to-file>.dcm"
	dataset, err := ParseFile(dicomFilePath, nil)
	if err != nil {
		t.Fatal(err)
	}
	t.Log(dataset)
}

The error:
=== RUN   TestMyDICOMFile
2021/06/23 15:15:23 error reading value  unexpected EOF
2021/06/23 15:15:23 error reading value  unexpected EOF
2021/06/23 15:15:23 error reading subitem,  unexpected EOF
2021/06/23 15:15:23 error reading value  unexpected EOF
2021/06/23 15:15:23 error reading value  unexpected EOF
2021/06/23 15:15:23 error reading subitem,  unexpected EOF
2021/06/23 15:15:23 error reading value  unexpected EOF
2021/06/23 15:15:23 error reading value  unexpected EOF
2021/06/23 15:15:23 error reading subitem,  unexpected EOF
2021/06/23 15:15:23 error reading value  unexpected EOF

Examining the file with dcmdump command:
        (0009,1010) SQ (Sequence with undefined length #=1)     # u/l, 1 Unknown Tag & Data
          (fffe,e000) na (Item with undefined length #=19)        # u/l, 1 Item
            (0028,0002) US 1                                        #   2, 1 SamplesPerPixel
            (0028,0004) CS [MONOCHROME2]                            #  12, 1 PhotometricInterpretation
            (0028,0006) US 0                                        #   2, 1 PlanarConfiguration
            (0028,0010) US 128                                      #   2, 1 Rows
            (0028,0011) US 128                                      #   2, 1 Columns
            (0028,0100) US 16                                       #   2, 1 BitsAllocated
            (0028,0101) US 12                                       #   2, 1 BitsStored
            (0028,0102) US 11                                       #   2, 1 HighBit
            (0028,0103) US 0                                        #   2, 1 PixelRepresentation
            (0028,0107) US 2675                                     #   2, 1 LargestImagePixelValue
            (0028,1052) DS [-1024]                                  #   6, 1 RescaleIntercept
            (0028,1053) DS [1]                                      #   2, 1 RescaleSlope
            (0029,0010) LO [GEIIS]                                  #   6, 1 PrivateCreator
            (0029,1010) UL 0                                        #   4, 1 Unknown Tag & Data
            (0029,1012) UL 0                                        #   4, 1 Unknown Tag & Data
            (0029,1014) UL 1                                        #   4, 1 Unknown Tag & Data
            (7fd1,0010) LO [GEIIS]                                  #   6, 1 PrivateCreator
            (7fd1,1010) UL 26                                       #   4, 1 Unknown Tag & Data
            (7fe0,0010) OW                                      ... # 10132, 1 PixelData

Debugging shows that the error happens when parser try to read the pixel data in https://github.com/suyashkumar/dicom/blob/afbab016d495fe23b0b85099acdc5bfcf591e50b/read.go#L164.
The parser expects that there is 32768 bytes of pixel data, as according to the header.
totalBytes = Rows * Columns * BitsAllocated / 8 * SamplesPerPixel
                  = 128    * 128          *                   16 / 8 * 1
                  = 32768

The error happens when the parser ignores the VL of PixelData (10132) and tries to read 32768 bytes of pixel data.
Questions:

Is this an error with the parser or the DICOM file is malformed?
Do we need any special support for parsing DICOM with JPEG 2000 (Lossless only)? If yes, could you provide any pointer on how to implement it?

Hey! This is a duplicate of #85. The tl;dr is that for JPEG LS, yes there's a special processing that's needed since Go std lib doesn't support it.
That said, if it's jpeg ls data that should be encapsulated pixel data, so not sure why it's dispatching to readNativeFrames. Are you sure this is a JPEG-LS image?


Key maps for mode change from terminal panes and pane navigatoin

In the newest Neovim.app (HEAD from today) the commands you had in this plug-in were not working for me. I copied the following from the Neovim terminal docs into my .vimrc and these work. Not sure if the API has changed since this plugin was created or if I am just missing something but thought I would pass it on.
tnoremap <Esc> <C-\><C-n>

tnoremap <A-h> <C-\><C-n><C-w>h
tnoremap <A-j> <C-\><C-n><C-w>j
tnoremap <A-k> <C-\><C-n><C-w>k
tnoremap <A-l> <C-\><C-n><C-w>l
nnoremap <A-h> <C-w>h
nnoremap <A-j> <C-w>j
nnoremap <A-k> <C-w>k
nnoremap <A-l> <C-w>l

Thanks @ootoovak I need to check.

The mappings take effect only for the terminal buffer that is created with :Term or :VTerm, would that be why you thought it is broken in Neovim.app?

This is broken for me:

F

Hi guys, I'm going to close this issue, as it a bit old and I didn't encounter any issue, at least on my setup.
Feel free to re-open if you feel like it's still valid.


8192 payload limit is not documented

According to my testing, there is a limit for the request payload (headers+body) of 8192 characters. If APIM receives a request where the payload is over this limit, the request would not be logged at all in Azure Monitor. Please ensure this is mentioned in the documentation, to help avoid confusion in future.

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

ID: ecc5e84d-603c-6f88-a941-df33aad0e1d8
Version Independent ID: ae6976bb-aadd-4d40-bb62-57589265f4ff
Content: Tutorial - Monitor published APIs in Azure API Management
Content Source: articles/api-management/api-management-howto-use-azure-monitor.md
Service: api-management
GitHub Login: @dlepow
Microsoft Alias: danlep

@vlad610
Thanks for your feedback! We will investigate and update as appropriate.

Payload 8192 limit is for both Azure Monitor as well as Application Insights and this is shown when enabled it in UI.
Azure Monitor:

Application Insights:

@dlepow Your thoughts?

My feedback was about the documentation, not the product. Even in the product UI, it lets you configured the number of payload (I am guessing this is about the request body). It does not say that any requests having a payload (including headers and body) greater than 8192 bytes will not be logged. This is the "limitation" I found and it is not documented anywhere. This GitHub issue is only about the documentation, not the UI.

Finally, it is not only about the documentation.
Here are the different tests I made :

setting a body larger than 8192 characters : the request is logged, it is only truncated which is OK due to the limitation
setting headers larger than 8192 characters and where the sum of the headers and body are exceeding 10044 characters : the request is not logged
setting headers larger than 8192 characters without body : the request is logged (even with with 21000 characters)

From what I see, the second point is a bug.
The request should at least be logged and trancated as the first remark.
Can you treat this bug in here or do I have to raise a ticket in Azure ?

@vlad610 - Thanks for the details, and apologies for slow response. For the second point, I suggest raising a ticket at Azure support, or posting the question at Q&A.
I've opened a work item to document the limit for number of characters in request body for logging. I'll address this in an upcoming sprint. According to our usual process, I'll proceed to close this issue. Thanks again!
#please-close


Brew test ENV.cxx11 fails

[X] Ran brew update and retried your prior step?
[X] Ran brew doctor, fixed as many issues as possible and retried your prior step?
[X] Confirmed this is problem with Homebrew/brew and not specific formulae? If it's a formulae-specific problem please file this issue at https://github.com/Homebrew/homebrew-core/issues/new

Bug reports:
Summary: Brew CXX11 env fails to compile a code in the test stage. One has to provide CXX11 flags manually.
I am drafting a formula for homebrew. In the test stage brew test is supposed to compile a sample code and then run it. The trick is to include the C++11 environment in the compilation at test stage, i.e. to have -std=c++11 -stdlib=libc++ flags.
This works :
test do
  args_compile = ["-std=c++11", "-stdlib=libc++", "test.cpp", "-o", "test"]
  system ENV.cxx, *args_compile

This doesn't
test do
  ENV.cxx11
  args_compile = ["test.cpp", "-o", "test"]
  system ENV.cxx, *args_compile

The full brew formula is here : https://raw.githubusercontent.com/aeantipov/homebrew-aeantipov/master/gftools.rb
brew config
HOMEBREW_VERSION: 1.1.9-117-g5a90d6e
ORIGIN: https://github.com/Homebrew/brew
HEAD: 5a90d6e853af68b94b9a3c21f94b283abd32638d
Last commit: 3 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: f8bd423166eaaf568b9ba508391a3fdb44e81daf
Core tap last commit: 42 minutes ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_BOTTLE_DOMAIN: https://homebrew.bintray.com
CPU: octa-core 64-bit haswell
Homebrew Ruby: 2.0.0-p648
Clang: 8.0 build 800
Git: 2.9.3 => /Library/Developer/CommandLineTools/usr/bin/git
Perl: /usr/bin/perl
Python: /usr/local/bin/python => /usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/bin/python2.7
Ruby: /usr/bin/ruby => /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby
Java: 1.8.0_112
macOS: 10.12.2-x86_64
Xcode: N/A
CLT: <IP_ADDRESS>.1.1476494586
X11: 2.7.11 => /opt/X11

brew doctor
Warning: Use<EMAIL_ADDRESS>instead of deprecated homebrew/versions/llvm37
Warning: Use numpy instead of deprecated homebrew/python/numpy
Warning: Use<EMAIL_ADDRESS>instead of deprecated homebrew/versions/llvm37
Warning: Use numpy instead of deprecated homebrew/python/numpy
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: Some installed formula are missing dependencies.
You should `brew install` the missing dependencies:
  brew install scalapack

Run `brew missing` for more details.

You didn't fill out the issue template so closing this.

Sorry for that, fixed it. Can it be reopened?

This is expected behaviour; you need to manually set the flag in test blocks. Thanks!


While doing npm install i am getting below error

npm ERR! Error while executing:
npm ERR! /usr/local/bin/git ls-remote -h -t https://github.com/crcn/gulp-atom-electron.git
npm ERR!
npm ERR! remote: Repository not found.
npm ERR! fatal: repository 'https://github.com/crcn/gulp-atom-electron.git/' not found
npm ERR!
npm ERR! exited with error code: 128
npm ERR!      /Users/veera/.npm/_logs/2018-04-15T10_03_37_639Z-debug.log

Tandem is still in flux right now, but I'm hoping to have an Alpha ready sometime in the next couple of months. I'll clean up the build scripts once it gets closer to that milestone. Closing this ticket for now.

I would like to contribute to it. How can i do that?

Awesome! I'm really glad to hear that. I would really love help with the idea, but right now the idea's a bit of a fog, so it's hard for me to tell you exactly how you could contribute now. However, after the app reaches Alpha and matures based on feedback, then I think it'd be safe to contribute to the project. I can tell you a few things that I'm aiming for that could use some help in the future:

Web framework targets (VueJS, AngularJS)
Developer tooling (bundler integration, service hooks)
Platform targets (iOS, Android)
Tandem Extensions

☝ I have no idea what these should will look like now, but they're definitely coming.

Thanks for the reply. Once it reaches to Alpha, I will try to contribute to this project 👍 👍 👍


Add stderr and stdout file arguments

Possible fix to failing tests in komodo bleeding
https://equinor.slack.com/archives/C01V40WH48J/p1719303848124699

Do we have a way to test that it solves the komodo issue ourselves?

Not sure.. 🤔 @rwiker @daniel-sol @perolavsvendsen Any ideas?

Do we have a way to test that it solves the komodo issue ourselves?

Not sure.. 🤔 @rwiker @daniel-sol @perolavsvendsen Any ideas?

Don't know. I assume the machine user is required for testing it from Github. We can run the updated uploader in a Komodo environment ourselves on-premise, I guess?

Do we have a way to test that it solves the komodo issue ourselves?

Not sure.. 🤔 @rwiker @daniel-sol @perolavsvendsen Any ideas?

Don't know. I assume the machine user is required for testing it from Github. We can run the updated uploader in a Komodo environment ourselves on-premise, I guess?

Currently running a case with the current uploader. Will then do a run with the updated uploader and check if logfiles are created as expected.

Running with current uploader does not create any "sumo_upload" files.
Running with changes from this PR, the run does create "sumo_upload" files.


Update go-github to v55

@wlynch or @bradleyfalzon do you mind taking a look?

Thank you, and apologies for the delay.

Thanks!


Dispose remote sessions after switching to a different kernel

For #9179

Codecov Report

Merging #9181 into master will increase coverage by 0.66%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #9181      +/-   ##
==========================================
+ Coverage    56.8%   57.46%   +0.66%
==========================================
  Files         550      550
  Lines       28938    29309     +371
  Branches     4441     4441
==========================================
+ Hits        16438    16843     +405
+ Misses      11560    11526      -34
  Partials      940      940

Impacted Files
Coverage Δ

src/client/datascience/jupyter/jupyterSession.ts
67.34% <100%> (+0.16%)
:arrow_up:

src/client/common/utils/platform.ts
70.58% <0%> (-5.89%)
:arrow_down:

...lient/datascience/jupyter/jupyterSelfCertsError.ts
100% <0%> (ø)
:arrow_up:

src/client/debugger/extension/serviceRegistry.ts
100% <0%> (ø)
:arrow_up:

src/client/common/variables/serviceRegistry.ts
100% <0%> (ø)
:arrow_up:

src/client/common/process/serviceRegistry.ts
100% <0%> (ø)
:arrow_up:

src/client/common/dotnet/serviceRegistry.ts
100% <0%> (ø)
:arrow_up:

src/client/linters/serviceRegistry.ts
100% <0%> (ø)
:arrow_up:

...tascience-ui/native-editor/redux/reducers/index.ts
100% <0%> (ø)
:arrow_up:

src/client/interpreter/serviceRegistry.ts
100% <0%> (ø)
:arrow_up:

... and 41 more

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 bbddaf9...7987155. Read the comment docs.