[Question ] Why are Business Central artifacts not stored in the Microsoft Artifact Registry?

Hi and Sorry if this is the wrong repo.
I'm just wondering why they are not stored in the official registry?
is there a way to get them from a different registry so we can cashe them in our proxy registry?
Currently the time of our build pipeline is greatly inflated because of the inherent image pull from the external "storageAccount" everytime.
My current solution would be to periodically pull an image and push it to our private registry, and pull it from there for building. Is there a better option?

To be honest that's a problem since for ever.
At some point, somebody at Microsoft decided to make docker image creation a runtime problem. Because there were i guess too many permutations. That's why you have the docker image, the application artifact and the platform artifact downloaded.
Docker itself does a lot to reduce the amount that needs to be downloaded when a new version is published. But using artifact negates that. Just as a sidenote I realised that even when using only the compiler directly AL-Go will still download the full artifact just to extract 148kb. So a 2.5 GB file is downloaded to get 148kb. That's a efficient system if I've ever seen one.
But as for a solution. We switched to a weekly build artifact this makes the downloaded artifacts you have longer relevant. And then regarding actually caching of the docker images that depends if you have multiple machines that you want to access the cache or if it's sufficient to store the image on each server individually. Drawback for caching it on every server is that it takes longer to fill the cache because it needs to be filled on every server. Advantage is that the setup is far simpler and probably more reliable.
For us the biggest improvement was to use the weekly artifact instead of the latest because even if your caches are correctly setup they don't help a lot if the thing you want to cache changes multiple times per day. And then just set the cacheImage property when starting the container.

We actually started out creating images for all versions of NAV/BC - but the amount of images that had to be rebuilt every time there is a security update of one of the components involved was simply too big.
We are investigating what we can do differently - I would have loved to use universal packages, but unfortunately - they cannot be anonymous:-( We will investigate what we can do.
@jonaswre - for the compilerfolder feature - we need the compiler + all the apps. In the meantime - the compiler is now available as a NuGet package and the apps are as well - so we will be looking at optimizing this piece - one thing at a time:-)

@freddydk That's awesome to hear! I was quite surprised to find out that just compiling a BC App takes 15 minutes on a GitHub-hosted runner. Apps + Compiler is about 100 MB.
I've had my share of frustrations with Business Central and Microsoft recently, which led me to think about ways the system could be improved.
One of the most problematic design decisions, in my opinion, is the weakening of the separation between runtime, platform, and the base app.
Ideally, the only thing that should need to be deployed with a Docker image or artifact is the runtime itself, which would significantly reduce the number of permutations. All code written in AL should be distributed and deployed in the same way, regardless of the publisher—likely through a package manager, as is common in most programming languages. Additionally, the infrastructure for handling pre-releases would need to be streamlined, particularly for partners who want others to extend their apps. Which Microsoft should classify aswell. If this approach had been considered from the start, many of the necessary tools would likely have been developed earlier.
Furthermore, the app.json file should explicitly list all direct dependencies rather than relying on the "application" and "platform" properties. Versioning an environment shouldn't be tied to individual apps (including the base app) but rather to the runtime. This would mean that runtime apps only need to be compiled for the runtime, not for every new major or minor version of the base app or platform.
On a related note, it's worth considering the decision to develop AL—a language that feels somewhat under-engineered—rather than using one of the many established programming languages out there. For instance, how long did it take for Java to support multiple interface implementations or generics?
I'm sure some of these ideas may be easier said than done, but if Microsoft doesn't have the resources to do it right, who does?

The Application dependency is an indirect dependency, which loads the Application.app - which then has dependencies to base app, system app (and recently also foundation app). That was introduced in order to overcome several challenges with the prior approach and will likely not go away anytime soon. Maybe, once all embed apps are normal apps and all localizations are normal apps and the base application has been restructured - then this should happen - but I wouldn't bet on it.
On the AL Language, the decision to go with this comes from a long investigation, which included the need for having something, which we could convert C/AL (NAV language to). All attempts to convert that to C# or other languages failed with unreadable code and lack of security when we need to host arbitrary code in multitenant services online.
On docker images - we started out creating specific images - one image per version, meaning that every new onprem version would yield 20 new images. At any given time - we support 18 different versions of Business Central - but many more versions are used on a daily basis. I still see people spinning up old NAV containers. Back in the days, we supported multiple different OS' (ltsc's and sac's) - I think 6 at the most. Back then, this was 20186 different images = 2160. For sandbox images, it was more countries and more builds - probably in the area of 750-1000 images per day. The big problems comes when the base images was updated, SQL Server, PowerShell, dotnet, etc. had security patches etc etc. - We are not allowed to use images with security vulnerabilities, so we would have to update every single image out there every month (some times multiple times a month). The number of images was so big, that when I setup a series af Azure VMs to recreate them all on mcr.microsoft.com - it went down due to traffic.
Today, we have 3 supported OS' - and I re-generate generic images when they are needed.
I do agree, that creating images of every platform version could be a way, but it would likely still be a lot of images - currently we have 446 onprem platform artifacts out there and ~5000 sandbox artifacts - creating and updating all monthly would not be possible.
Not sure where this ends - it could be that the latest versions are available as images and older versions as artifacts, but we also need to find a different way to store artifacts as anonymous blob storage won't be allowed for us in Microsoft in the future.
If we were on Linux - we could store artifacts in container registry (the alpine base image is 5Mb). On Windows, the smallest image is nanoserver on 250mb and that also gets updates all the time.
So... - we are considering what to do...

Have you looked into OCI artifacts on e.g. an Azure Container Registry?

Have you looked into OCI artifacts on e.g. an Azure Container Registry?

We are using OCI tags to mark images as stale - but I haven't looked at it in other ways.
What are you thinking about in this sense? where are you seeing these being useful?

Reading about OCI artifacts and ORAS - it definitely sounds like something we could use to replace our storage accounts and re-use the infrastructure and tooling behind registries.
Thanks for this pointer.
We will also re-consider how we can layer the artifacts in ways where we do NOT have to download everything in order to get some things...
This might be just what I have been looking for...

@freddydk Thanks for your explanation.
From an outside perspective, it seems odd that Microsoft has certain apps with special privileges. Many of the challenges we face could be resolved if everything were treated equally. For example, if Microsoft had to release all of their apps through AppSource without any special treatment, they would likely encounter the same issues we face and address them sooner. It’s a common problem when the tools you develop aren’t the ones you use regularly.
Regarding the AL language, I believe more time and resources should be dedicated to improving it. It's quite telling that every AL developer has experienced the need to frequently "Reload Window" to restart the language server due to bugs. The fact that the language server struggles with performance when working in the base app is concerning, especially given that the base app isn’t even particularly large by modern standards.
With all the daily frustrations we encounter while working with BC, seeing announcements for shiny new AI features can be frustrating. It’s hard not to wonder why fundamental issues that impact our day-to-day work aren’t receiving more attention.
Combined with ongoing frustrations with Teams, Outlook, Yammer, buggy admin panels, and long loading times, it feels like Microsoft has lost focus on the core issues that matter most and is instead relying on an "advanced Clippy" to solve everything.

I will forward your frustration.


Smarter default timestamps on images

Today apko supports setting SOURCE_DATE_EPOCH to set the timestamp on images, but for Chainguard images we generally use the build timestamp because the apko.yaml config files rarely change, but since packages float forward the typical git log -1 --pretty=%ct is a poor approximation of the image's actual age.
I think a more appropriate "smart" default for the image age is something like the MAX() of:

The apko.yaml last-modified-time, and
The build times of the APKs

This builds on https://github.com/chainguard-images/images/issues/535 and https://github.com/chainguard-dev/melange/issues/421 so that our image timestamps will only roll forward if one of the above change.
cc @kaniini @deitch @imjasonh

One "fun" thought experiment is whether the smart defaulting should even include the apko.yaml mtime.  I'm imagining scenarios like tf-apko where the config is constructed other ways and may not exist as a literal file, or is a composition of multiple files.
In general I feel like the apko.yaml mtime is arguably the weakest contribution to our pseudo-SOURCE_DATE_EPOCH, so wanted to float the possibility of also just excluding it 🤔

Hi @mattmoor, seems like an interesting task and I would love to contribute to it if this is not already under development by someone else.
From my little understanding, we already have surfaced SOURCE_DATE_EPOCH as the build time with the https://github.com/chainguard-dev/melange/pull/435 and this along with #535 can enable us to implement the smarted default timestamps. However, seems like something broke and ARM builds failed that's why PR linked to #535 had to be reverted.
Trying to investigate what could have happened but if you have some suggestions that I can begin with, would love to have a kick start! Thanks!

We're pretty close.  In fact, this piece should be done, but I want to validate it e2e and we need some changes to Wolfi to set builddate in our packages.  Alpine should work now though.

This: https://github.com/chainguard-images/images/issues/535
Once that's done we should whack: https://github.com/chainguard-images/actions/blob/cfc56ba1a26d410474fe453d9c9a865fdd422fa7/apko-snapshot/action.yaml#L228 🤞

Thanks @mattmoor! That seems like we are already very close to closing it, loved the discussion!


Keyboard manager prevents 3/4 finger tap functionality for touchpad on 2018 13' Macbook Pro in bootcamp

Microsoft PowerToys version
0.43.0
Running as admin

[X] Yes

Area(s) with issue?
Keyboard Manager
Steps to reproduce
Having the keyboard manager enabled at all prevents 3/4 finger tap functionality on 2018 13' Macbook Pro in Bootcamp
✔ Expected Behavior
Launch Windows Search / Action Center / Play/Pause / Middle Mouse Button
❌ Actual Behavior
Nothing
Other Software
No response

Microsoft PowerToys version
0.43.0
Running as admin

[X] Yes

Area(s) with issue?
Keyboard Manager
Steps to reproduce
Having the keyboard manager enabled at all prevents 3/4 finger tap functionality on 2018 13' Macbook Pro in Bootcamp
✔ Expected Behavior
Launch Windows Search / Action Center / Play/Pause / Middle Mouse Button
❌ Actual Behavior
Nothing
Other Software
No response

Microsoft PowerToys version
0.43.0
Running as admin

[X] Yes

Area(s) with issue?
Keyboard Manager
Steps to reproduce
Having the keyboard manager enabled at all prevents 3/4 finger tap functionality on 2018 13' Macbook Pro in Bootcamp
✔ Expected Behavior
Launch Windows Search / Action Center / Play/Pause / Middle Mouse Button
❌ Actual Behavior
Nothing
Other Software
No response


fix: RSSfeed getting added to UI without backend connection

Fixes #
This PR contains the fix to #197
Describe the changes you have made in this PR -
Gist: Checking if the backend is connected when clicking on the save option if not show a snack bar with a msg.
Implementation:

Created a checkClientOnline function that makes calls to the backend and checks whether the status code is 200 or not.
The function is implemented  in the save button of the RSS feed bottom sheet

Demo of the changes-
https://user-images.githubusercontent.com/69642436/229367542-bb53fcfd-a7ce-4f32-b670-d8e8764d5f81.mp4

Hey @SP-XD, to merge the pull request, you need to squash these commits into a single one.


Creates a tsconfig file each time

Hi, I made a custom tsconfig.json but the package comes in dev and build mode when I run it, it creates the tsconfig.json file again, please fix this problem

Hello, you can disable this behavior by setting aliases to false in vite.php.


Https request with .cer. [__NSArrayM insertObject:atIndex:]: object cannot be nil

        request.HTTPMethod = "POST"
        request.HTTPBody = bodyData
        request.timeoutInterval = 10.0
        request.cachePolicy = NSURLRequestCachePolicy.ReturnCacheDataElseLoad

        let securityPolicy = AFSecurityPolicy(pinningMode: .Certificate)
        let localCertData = NSData(contentsOfFile: NSBundle.mainBundle().pathForResource("hehe", ofType: "cer")!)
        securityPolicy.pinnedCertificates = [localCertData!]
//        print("localdata \(localCertData)")
        securityPolicy.allowInvalidCertificates = true
        securityPolicy.validatesDomainName = false
        session.securityPolicy = securityPolicy

localCertData is not nil but i got something was nil.why?

same problem with - AFNetworking, 3.1.0

Same here.

same here

same here

Are you still experiencing this? If so, feel free to re-open with crash logs that show where you’re getting this crash.

Hi, I'm facing this crash issue, "[__NSArrayM insertObject:atIndex:]: object cannot be nil", Is this issue fixed?
    NSString *certificatePath = [[NSBundle mainBundle] pathForResource:@"sslFileName" ofType:@"crt"];
    NSSet *set = [NSSet setWithObjects:[NSData dataWithContentsOfFile:certificatePath], nil];
    AFSecurityPolicy *securityPolicy = [AFSecurityPolicy policyWithPinningMode:AFSSLPinningModeCertificate];
    [securityPolicy setValidatesDomainName:NO];
    [securityPolicy setAllowInvalidCertificates:NO];
    [securityPolicy setPinnedCertificates:set];
    manager.securityPolicy = securityPolicy;


Replaced pytest-flakes dependency with pytest-flake8

Replaced pytest-flakes dependency with pytest-flake8 the pytest-flakes repository
(s. https://github.com/fschulze/pytest-flakes)

Thanks!


[Beacon]: Send Acknowledge Message

Temple (extension) currently does not send an acknowledge message when a request was received. This means that the dApp UI will show the following alert while the user is handling the request:

With Temple Mobile (and other wallets), it will look like this:

It would be great if you could add the acknowledge message.
The acknowledge message should look like this and should be sent as soon as a request was received.
interface AcknowledgeResponse {
    type: 'acknowledge',
    version: string,
    id: string,
    senderId: string,
}

i think its already in release 1.14.13
@unixvb , can we close it?


test: unit tests

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@4631659). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #30   +/-   ##
=======================================
  Coverage        ?   65.07%
=======================================
  Files           ?        7
  Lines           ?       63
  Branches        ?       18
=======================================
  Hits            ?       41
  Misses          ?       22
  Partials        ?        0

Flag
Coverage Δ

unittests
65.07% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out 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 4631659...d364396. Read the comment docs.


LLama bin file not a valid json

When i run following command i get this error (running on MAC)
python3 generate.py --base_model=llama-2-7b-chat.ggmlv3.q8_0.bin --prompt_type=llama2
/Library/Python/3.8/site-packages/urllib3/init.py:34: NotOpenSSLWarning: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020
warnings.warn(
Auto set langchain_mode=LLM.  Could use MyData instead.  To allow UserData to pull files from disk, set user_path or langchain_mode_paths, and ensure allow_upload_to_user_data=True
Using Model llama-2-7b-chat.ggmlv3.q8_0.bin
Prep: persist_directory=db_dir_UserData exists, using
Starting get_model: llama-2-7b-chat.ggmlv3.q8_0.bin
Traceback (most recent call last):
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/transformers/configuration_utils.py", line 702, in _get_config_dict
config_dict = cls._dict_from_json_file(resolved_config_file)
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/transformers/configuration_utils.py", line 793, in _dict_from_json_file
text = reader.read()
File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.8/lib/python3.8/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 28: invalid start byte
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "generate.py", line 16, in
entrypoint_main()
File "generate.py", line 12, in entrypoint_main
H2O_Fire(main)
File "/Users/r.a.w/Desktop/tools/h2ogpt/src/utils.py", line 57, in H2O_Fire
fire.Fire(component=component, command=args)
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/fire/core.py", line 141, in Fire
component_trace = _Fire(component, args, parsed_flag_args, context, name)
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/fire/core.py", line 475, in _Fire
component, remaining_args = _CallAndUpdateTrace(
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/fire/core.py", line 691, in _CallAndUpdateTrace
component = fn(*varargs, **kwargs)
File "/Users/r.a.w/Desktop/tools/h2ogpt/src/gen.py", line 885, in main
model0, tokenizer0, device = get_model(reward_type=False,
File "/Users/r.a.w/Desktop/tools/h2ogpt/src/gen.py", line 1229, in get_model
config, _, max_seq_len = get_config(base_model, **config_kwargs, raise_exception=False)
File "/Users/r.a.w/Desktop/tools/h2ogpt/src/gen.py", line 950, in get_config
config = AutoConfig.from_pretrained(base_model, use_auth_token=use_auth_token,
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/transformers/models/auto/configuration_auto.py", line 983, in from_pretrained
config_dict, unused_kwargs = PretrainedConfig.get_config_dict(pretrained_model_name_or_path, **kwargs)
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/transformers/configuration_utils.py", line 617, in get_config_dict
config_dict, kwargs = cls._get_config_dict(pretrained_model_name_or_path, **kwargs)
File "/Users/r.a.w/Library/Python/3.8/lib/python/site-packages/transformers/configuration_utils.py", line 705, in _get_config_dict
raise EnvironmentError(
OSError: It looks like the config file at 'llama-2-7b-chat.ggmlv3.q8_0.bin' is not a valid JSON file.

That's not the correct format.  base_model is reserved for HF models or 'llama' for your case.  See docs, but like:
python generate.py --prompt_type=llama2

is enough in your case.  See: https://github.com/h2oai/h2ogpt/blob/main/docs/FAQ.md#adding-models


fix(querystring): replace deprecated querystring from node with query-string lib

fix to replace querystring as it is deprecated and can cause issues with the last versions of webpack or when using create-react-app.
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default

Thanks!


Fix TextureCache memory leak and add is_empty() method

Objective
Fix a memory leak in TextureCache caused by the internal HashMap never having unused entries cleared.
This isn't a giant memory leak, given the unused entries are simply empty vectors. Though, if someone goes and resizes a window a bunch, it can lead to hundreds/thousands of TextureDescriptor keys adding up in the hashmap – which isn't ideal.
Solution

Only retain hashmap entries that still have textures.
I also added an is_empty() method to TextureCache, which is useful for 3rd-party higher-level caches that might have individual caches by view entity or texture type, for example.

Testing

Verified the examples still work (this is a trivial change)

@re0312 does this fix https://github.com/bevyengine/bevy/issues/14463 for you?

@re0312 does this fix #14463 for you?

It doesn't seem to resolve the problem, as memory leaks are still occurring on my machine.


Request: Bullet Chart / Progress Chart

Would it be possible to make a new chart type, based on this image:

I think it's called a bullet chart. Though really, what I'm doing is a progress chart.
I'd normally do a DIV with a % width but I feel an SVG is better suited for this task, especially on smaller screens. I think this chart type would suit Peity.

One of the points of Peity is that it's progressive and "upgrades" a simple string of numbers into something that's more visually useful and while it's possible to add many kinds of chart it looks like the data required by a bullet chart couldn't be meaningfully encoded as a simple list of numbers.
On the other hand a progress bar would be simple, see the docs for registering your own custom chart type. Pull requests welcome!

Ah I see. I'll have a play around.


Efficient backtracking from output ports to input ports

I'm trying to backtrack output ports from the topModule this way:
1a. Parse all continuous and procedural assignments.
1b. For each assignment, populate an lhs2rhs map (vpiFullName is used as unique ID).
2. Parse all submodule instances for IOs: form a lowConn to highConn map called io2net map.
3. Starting at the topModule, get the ports, vpiDirection, and if it's an output port:
4a. Search lhs2rhs, io2net map:
4b. If found, recurse to 4a
4c. Else if topModule's input port is reached, end.
4d. Else if constant or parameter, end.
4e. Else mapping not found / other cases.
Is there a more efficient way to do this without having to parse all assignments and submodule IOs?
Specifically, given a vpiHandle to an output port, could I get all the sources of that port/net and keep doing that recursively?
Would procedural assignments with if-else branches complicate things?

@mysoreanoop do you intent to contribute your code to main? (Hint: If you don't, no help :-))
If you intend to, then it should be a new utility class in UHDM. Let me know, and I'll help you to shape it so it more generic.

I'd be happy to contribute back. I can get started with a preliminary PR and we can build on it, or I can develop on it separately and pull when ready; your call.

Hello
Is it a step forward to solve : https://github.com/chipsalliance/UHDM/issues/1037
Or a different feature ?

@Thomasb81, It is indeed a step toward: https://github.com/chipsalliance/UHDM/issues/1037
@mysoreanoop, PRs and this discussions should move to the UHDM repo, switching to:
https://github.com/chipsalliance/UHDM/issues/1078


[stable/dex] Mount web/gprc certs volumes from secret only when they are being cre…

What this PR does / why we need it:
Fix the problem on mounting non-existing volumes from secret when web and/or grpc certs is not configured to be created.
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:

/assign @lachie83


Generate the "hover-link events" on the tasks collected by dataview to  see the context

I'm always frustrated when I read the tasks collected by dataview and cannot go through the context of the task without opening the original page.
I'm hoping to use the hover function when I am reading the lists collected by 'dataview', since there may be some context I may need to read near the list. So, is it possible to generate the hover-link events on the tasks collected to help to trigger the hover preview?
Here is an example that may be useful to understand the feature needed.

Here is the code I used in the picture up there.
task
from "+ Encounters"

I have also asked the hover editor's author, and he suggested that I should turn to dataview for help.

Thanks for reading! ♥

Thanks to @mnvwvnm has given some workaround here. 🥳🥳🥳

However, I still wish this feature can be implemented.
Actually, I am trying to manage my note extracted by papers using a workflow similar to Roam Discourse from Roam Research. The note pages are automatically generated by a plugin of Zotero. And the structure of the note/extract parts is as follows:

As the note part can be very long, the workaround may sometimes take time. (Because all of the note extracted are belong to one header)

Hi.
As a workaround I can suggest something like this:

write the tasks under a header

# header
Phasellus sodales ex turpis, et vehicula mauris euismod at. Duis pulvinar dictum commodo.
- [ ] this is a task
- [ ] another one

use dataviewjs to add a link to the task text

using a symbol after the task text as a link to the section/header where the task is placed

// get tasks from specific folder
const tasks = dv.pages('"folder/subfolder"').file.tasks

// add a link to each task
for (let task of tasks){
task.visual = task.text + " " + dv.sectionLink(task.link.path, task.section.subpath, false, "△")
}

// render tasks
dv.taskList(tasks, false)

define all task text as a link to the section/header

// get tasks from specific folder
const tasks = dv.pages('"folder/subfolder"').file.tasks

// add a link to each task
for (let task of tasks){
task.visual = "" + dv.sectionLink(task.link.path, task.section.subpath, false, task.text)
}

// render tasks
dv.taskList(tasks, false)

(anyone with js knowledge, please optimize this code)

Thanks a lot!! The first code works fine with my needs! (As my tasks contain some links, so the second one may not work), but still thanks!!!

@mnvwvnm
However, I still wish this feature can be implemented.
Actually, I am trying to manage my note extracted by papers using a workflow similar to Roam Discourse from Roam Research. I have updated part of my workflow here. Would you mind taking some time to read through it? Thank you for your patience!

I still have a question. (I'm not good at coding, so this may seem silly to you)
Since hover preview can be triggered on embeds (which we cannot find any links exposed there), why can't the task trigger the hover preview view the same way? (It doesn't have any links exposed out there either)
And also, we can track the task origin by clicking on it, does it mean it actually has a unique link? If yes, where to find it? @mnvwvnm
Sorry to bother you @pjeby    : Is it possible to trigger the hover by knowing where to get the unique link of the task?


Update and reorganize conformance tests

Description
This PR does some reorganizing of the V2 constrained generators and conformance tests.

Conway era V2 specs are moved from cardano-ledger-test to cardano-ledger-conway:testlib
Made a ExecutableSpecRule typeclass interface to have a common interface for running conformance tests for each rule

This only touches the infrastructure for running conformance tests with V2 constrained generators. The tests themselves will be added in a follow-up PR.
Checklist

[ ] Commit sequence broadly makes sense and commits have useful messages
[ ] New tests are added if needed and existing tests are updated
[ ] When applicable, versions are updated in .cabal and CHANGELOG.md files according to the
versioning process.
[ ] The version bounds in .cabal files for all affected packages are updated. If you change the bounds in a cabal file, that package itself must have a version increase. (See RELEASING.md)
[ ] All visible changes are prepended to the latest section of a CHANGELOG.md for the affected packages. New section is never added with the code changes. (See RELEASING.md)
[x] Code is formatted with fourmolu (use scripts/fourmolize.sh)
[x] Cabal files are formatted (use scripts/cabal-format.sh)
[x] hie.yaml has been updated (use scripts/gen-hie.sh)
[ ] Self-reviewed the diff

@teodanciu  cardano-ledger-conformance provides the interface for writing conformance tests. It also adds some orphan instances for the generated Agda types. Now that I look at it, I think it would make sense to move the orphan instances to cardano-ledger-conway:testlib and the typeclasses to cardano-ledger-core:testlib and then get rid of the package altogether.

Much of the old code here is also over my head. But the parts pertaining to moving the constrained stuff around is mostly uncontroversial from my point of view.
@Soupstraw we discussed the need or lack thereof for this class for running the STS tests. I don't mind one way or another - we can always add a type parameter later if there is a need for modifying the specific specs in any way in tests later. Are there any other parts here that you want my specific input on?

There is a missing TypeOperators build failure for newer GHCs. Other than that the PR is ready to be merged


Delete APKTOOL_DUMMY from TG Android Beta diffs

use aapt2
https://github.com/iBotPeaches/Apktool/discussions/3159

closed in https://github.com/MarshalX/telegram-crawler/commit/7e6a4c05a1b5c0cb7df4e1918c05e795e099fed3


compile unix

ty konsolas for your engine!
can you provide a makefile for unix compilation please ?

Hi,
As far as I know, Topple currently won't run on linux due some strange behaviour with pthreads.
You can get it to compile by adding target_link_libraries(Topple pthread) to the bottom of CMakeLists.txt, before building as usual with cmake . && make Topple
I haven't been able to resolve the segfault yet so I'm not sure when Topple will actually be able to run on linux.

@tschmoderer 0.6.0 should compile on linux with cmake now.


VPP-287: Use rubocop enablement to fix multiple small bugs

Changelog

Enhancements

Gems ordered and documented in gemspec and Gemfile
Temorpary (#) files removed from git
Rubocop is enabled and used on CircleCI

Unused variables are prefixed with _
fail is used instead of raise when first raising an exception
Remove usage of deprecated methods
Print error if byebug can't be loaded instead of failing silently, but CLI still starts
Stop shadowing outer local variables in blocks
Remove unused assignments
Set and enforce max line length to 120
Use find instead of select {}.first for better performance
queue_name will retrieve the current queue name while queue_name(new_name) will set it.
Align hashes
Align parameters
Favor symbolic && over and. (They have different precedence too)
Remove block comments
Assign to variable outside conditionals instead of on each branch
Remove extra empty lines
Don't favor guard clauses as they prevent break pointing the body and guard separately and obscure bodies that don't have code coverage.
Remove extra spacing
Correct indentation
Freeze CarrotRpc::VERSION so it is immutable
Use until instead of negated while
Use _ to separate digits in large numerals
Use ( ) for sigils
Remove redundant self. for method calls
Use %r{} instead of // for regexps
Use newlines instead of ;
Add spacing around blocks and braces
Enforce double quotes for all strings as double quotes work for strings in both Ruby and Elixir. (Single quotes are for Char Lists in Elixir)
Use &:<method> instead of calling a non-args method in blocks
Use attr_reader instead of trivial accessor methods
Remove unneed interpolation
Use double quotes instead of %q
Use %w for word arrays
Extract methods to lower to AbcSize metric and Method Length
Extract classes and modules to lower Class Length
Use const_get and constantize instead of security risk eval

Enable all RSpec 3 recommended options

Fix order-dependency of specs.

Use autoload to delay loading
Use compact class and module children to prevent parent from being missed when loading.
Add rake spec
Add Luke Imhoff as an author
Set gem home page to this repository
Semantic block delimiters, so we always think about procedural vs functional blocks to make Elixir coding easier.

Bug Fixes

ClientServer::ClassMethods has been moved under CarrotRpc namespace as CarrotRpc::ClientServer
HashExtensions has been moved under CarrotRpc namespace as CarrotRpc::HashExtensions

Incompatible Changes

ClientServer::ClassMethods renamed to CarrotRpc::ClientServer
HashExtensions renamed to CarrotRpc::HashExtensions
ClientServer::ClassMethods#get_queue_name renamed to CarrotRpc::ClientServer#queue_name() (no args is the reader, one argument is the writer)

looks good. some of the cops are debatable.


Look into store contents that can be eliminated when using server-side hydration

There is some data like the query AST that could be eliminated from the server-side hydrated state, reducing its size dramatically. We should look into eliminating that stuff, and having the client deal with its absence appropriately.
One aspect is that #615 will remove one instance of the query AST right away.
Continuation of https://github.com/apollostack/apollo-client/issues/660

This is done afaik.


ubuntu build fail

使用ubuntu 16.04 编译报错，gcc版本5.4。报错信息如下：
/usr/include/c++/5/bits/stl_function.h:357:20: error: no match for ‘operator==’ (operand types are ‘const anakin::graph::io’ and ‘const anakin::graph::io’)        { return __x == __y; }

This bug has been fixed


Adding functionalities from minpy model builder

These functionalities include:

Binary operators for Layer

An API enabling user to declare layers via syntax similar to MXNet NDArray operator API

please rebase/cherry-pick

Sure!


Rpo

This PR implements the latest version of the Rescue hash function called Rescue Prime Optimized (RPO).
There remains only two points to be added, as far as I can see, and they are:

Hashing of bytes so that its padding rule mimics the one for field element hashing as specified in the specification.
Adding new tests against the test vectors provided in the specification (I am working on this).

That might be it but I can't remove the dependence on the Winterfell repo, I believe, as I am using the most recent version which has the Montgomery implementation. Once we have a new Winterfell release it will be possible to be granular with regards to imports.
Let me know if I am missing something.

@Al-Kindi-0 - I think we are pretty much done here, right? The two things left to do:

Replace 7 with a constant.
Rebase from next to resolve the merge conflict.

I think we are good to go.

Thank you!


Or-tools failed to solver with error Segmentation Fault when adding dimension.

routing.SolveWithParameters(parameters, None)
starts failing after adding dimension to RoutingModel. Prior to adding this dimension I had two more and they worked just fine. One of which I added using RoutingModel.AddDimensionWithVehicleCapacity and another using RoutingModel.AddDimension.  But now after adding third one which is not different by the way of adding from the second one, solver starts failing with error 'Segmentation Fault' how can I find out more information what was wrong or is it my fault or I violated some assumption which I should have obeyed ?

What language are you using (C++, Java, Python, C#) ? Are you re-using
dimension callbacks ?
On Mon, May 2, 2016 at 2:14 PM, Tigran Hakobyan<EMAIL_ADDRESS>wrote:

routing.SolveWithParameters(parameters, None)
starts failing after adding dimension to RoutingModel. Prior to adding
this dimension I had two more and they worked just fine. One of which I
added using RoutingModel.AddDimensionWithVehicleCapacity and another
using RoutingModel.AddDimension. But now after adding third one which is
not different by the way of adding from the second one, solver starts
failing with error 'Segmentation Fault' how can I find out more information
what was wrong or is it my fault or I violated some assumption which I
should have obeyed ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/google/or-tools/issues/178

@furnon I am using Python. No I am nor re-using dimensions just creating new one.

I am just wondering whether you have some ability to add flag which will be responsible for stack trace printing ?


Multidimensional Memory in calyx-py

This is a little abstraction that I thought could prove useful for the eDSL.
We have 1D memory and 2D memory, both in pure Calyx and in calyx-py. However, I thoguht it may be interesting to integrate multidimensional memories, provided there was a clean way to represent them in Calyx.
This version represents any 'n-d memory block' as a 1-dimensional memory cell, and introduces a simple Python function for translating a series of indices (e.g. mem_rep[i][j][k]) into a corresponding index into the 1d representation. This support extends to both sequential and combinational memory.

@anshumanmohan when mapping onto hardware, there is no concept of multidimensional memories so the indexing logic will need to be generated by the synthesis tools (see #907); we are just making that explicit. I would suggest that in the case of power-of-two sizes, we generate optimized logic to compute the single-dimensional index that uses shift-right instead of multiplication.

Ah gotcha. And yes agreed that it would be good to exploit shifting when possible. Does this all make sense @KabirSamsi? Catch me in person if you’d like to discuss further :)

Thanks for the feedback – I think I follow! I'll follow up in-person with Anshuman to clarify.

Just a gentle nudge putting this back on your radar, @KabirSamsi. I think there are a couple concrete things to do here and then we can look at it again!

Oh my mistake, I thought we had put this on ice. I'll go through Rachit's advice and get back on this!

@KabirSamsi I'm going to go ahead and mark this as stale. If you're intending on working on this, please remove the tag and make the changes.


Typed IValueConverter

Now that we have compiled bindings, wouldn't it be possible to make IValueConverter generic to avoid boxing?
class MyConverter : IValueConverter {
        public TOutput Convert<TInput, TOutput, TParam>(in TInput value, in TParam parameter, CultureInfo culture)
        {
            //Conversion here
        }

        public TOutput ConvertBack<TInput, TOutput, TParam>(in TInput value, in TParam parameter, CultureInfo culture)
        {
           //Conversion here
        }
}

It should probably be class MyConverter: IValueConverter<TInput, TOutput, TParam> { ... though :)
And it's definitely a good idea.

While it's a good idea, how would Avalonia bind it? I guess it could be by using reflection, or better, emitting IL.


Usage is confusing for a newcomer

Hi there! I am a newcomer to Atom from Sublime Text. I understand Atom does not have native support for projects yet, and that this package tries to cover on that. Good work on helping us with this package on the meantime! Here are some suggestions on how to improve the frontpage documentation.
Problem
The documentation on the frontpage is confusing to me, and as a result I haven't been successful in getting the package to work this far. What I want is to have a local project file on my project directory, to be stored with version control, as I can do in Sublime Text.
Frontpage documentation
The frontpage reads:
All these settings can be added to a project.cson file in the root folder of the project. It follows the below example, but without the array.

[
  {
    title: 'Project Manager'
    group: 'Atom'
    paths: [
      '/path/to/project-manager'
    ]
    devMode: true
    settings:
      'editor.tabLength': 4
      'editor.showInvisibles': true
  }
]

I gather that I need to create project file on the root directory of my project. The project file should resemble the above example.
Questions
The following questions are meant to describe my thinking process.

Must project.cson be named exactly like that, or can I name it like foobar.cson?
If the latter, how does the project manager know which .cson file to use?
In fact, the project manager does not seem to find any project after creating a project.cson file.  Am I missing something? Do the local project files work at all?
What does "the array" refer to?
If "the array" refers to the outermost array in the cson file, and it should not be there, then why is it part of the example?
Using the package-manager itself as an example project confuses me on whether some of these settings need to be there to get the project to work. In particular, '/path/to/project-manager' suggests that I should replace it with the physical path to the package manager on my hard disk.
I guess that paths should list the set of of paths for the project to include.
Can I use a path relative to the project file (e.g. .), or do the paths need to be absolute paths, as in the example? Requiring an absolute path would be bad, because then I cannot move the project on my hard disk.
Why do I need to specify a path at all? Could the project root directory not be taken by default to be the same as the directory where the project file resides?

In summary, I would like to see a clear "Hello, world!" example for the package manager, using a local project file. It would be great if the frontpage documentation was improved so that the above questions were answered, and the ambiguities removed!

Thanks for your input. Will see if I get some time to update the readme in the future. You are always welcome to create a PR if you have anything you know you can make more clear :)


Replace Redux with Zustand

Check for each state, add zustand stores and use them instead of redux.

working in this.


Transpose Test might not make sense in test 6

There are these two tests:
{
"first line longer than second line",
[]string{
"The fourth line.",
"The fifth line.",
},
[]string{
"TT",
"hh",
"ee",
"  ",
"ff",
"oi",
"uf",
"rt",
"th",
"h ",
" l",
"li",
"in",
"ne",
"e.",
".",
},
},
{
"second line longer than first line",
[]string{
"The first line.",
"The second line.",
},
[]string{
"TT",
"hh",
"ee",
"  ",
"fs",
"ie",
"rc",
"so",
"tn",
" d",
"l ",
"il",
"ni",
"en",
".e",
" .",
},
},
I might be wrong but in test "first line longer than second line" shouldn't the last string in the array be ". " instead of "." ? this would make sense according to example "second line longer than first line"

Thanks for asking about this item.
As best I can tell, the expected test results are following these two statements in the README:
- Pad to the left with spaces.
- Don't pad to the right.

The test cases in the exercise are generated from this file, and have stood the test from other exercism language tracks; so my assumption is that the test data is as intended.

God...  I should have read the readme again.
Thanks for the info!

Quite alright, @psimoesSsimoes .  I remember being a bit confused about that exercise's expected test results myself!


v8 - Undefined method Concrete\Core\File\Image\Thumbnail\Type\Type::setName()

Hi!
this method is no longer there. This is how I created thumbnail types programmatically in 5.7:
    $thumbnailType = Type::getByHandle('small');
    if (!is_object($thumbnailType)) {
        $type = new Type();
        $type->setName('Small Image');
        $type->setHandle('small');
        $type->setWidth(740);
        $type->save();
    }

Is this something that needs to be added or will there be a new way to achieve this?
Thanks,
Jordi

Here's the new way to create thumbnail types: https://github.com/concrete5/concrete5/blob/aaa8a8232ee9c89a4346a113ce8024fa3629de43/concrete/controllers/single_page/dashboard/system/files/thumbnails.php#L143-L151

Thanks Michele!

I just ran into the same problem with a package I'm using to test v8. While it's easy to change the code, I'm not sure about the best way to do this. We can't just drop 5.7 from one day to another, our packages have to work in both version, the change to 5.7 was already expensive enough.
Are we going to create some legacy classes/methods to make old code work or do we have to add checks like if (v8) { do something } else { do something else }?

There are a couple ways we could do it.. for some of the more highly used items we've certainly implemented some strong backward compatibility functionality, even though it's bloated some of those libraries considerably, since we can't have all attribute code just suddenly die on day 1, like you've said. For something like this, though I'd consider adding a function like this to your package
if (!function_exists('compat_is_version_8')) {     function compat_is_version_8() {         return interface_exists('\Concrete\Core\Export\ExportableInterface');     } }
and using that as your if statement around thumbnail types.
Additionally, what about installing them via XML? in your install() method you could have
$ci = new ContentImporter();
$ci->installContentFile($pkg->getPackagePath() . '/thumbnails.xml');

And then within your package's directory a file named thumbnails.xml with the following in it:

I haven't run this code but I believe it should work

Thanks @aembler XML would be my preferred way, I use it whenever I can, but it's not my code.
It might be good to have an example or two in a place where people can find it. I'm sure others will have similar problems.

Speaking of XML, I've also noticed some node names have changed (at least "topic_category" is now "category"), causing again an error if you're not aware of it.
I agree with Remo, putting all this together on a page could be useful. Not sure how the new Documentation site works, but if I have the permissions I'll try to create a new page during the week (something like "Updating your code for 5.8").

@jordif Any energy you could throw at it regarding little gotchas you've encountered would be great. I've tried to start collecting them here:
http://documentation.concrete5.org/tutorials/package-developers-upgrading-your-packages-version-8

If you login to the site using your concrete5.org account you should be able to edit that tutorial

IMHO we can close this issue, can't we?


Feat/integrated dynamic config

PR Checklist

[ ] Brief description of changes
[ ] Links to any relevant issues
[ ] Required status checks are passing
[ ] User cases if changes impact the user's experience
[ ] @mention a maintainer to request a review

is this still valid? or we can close it?


WIP: Add datacite to export section

closed in favour of https://github.com/inveniosoftware/invenio-app-rdm/pull/831


DataTargetMixin.setDataTargetWidget() is overwriting element id's

DataTargetMixin.setDataTargetWidget() appears to overwrite an element's id without checking if it is already set.
This is a problem when multiple elements target the same widget (like carousel indicators and controls), and Java code (not UI Binder) is used to construct the interface.
Perhaps the id could be set IFF it does not already have an id?

Sure. Would you be willing to submit a PR?

FYI, I tested this fix with carousels in my learning project and it seems fine.


write pipelined tasty in parallel.

sets up the executor in pickler to write the files as the final task, meaning we no longer read from unit.pickled, but directly send the tasty bytes to the serialized holder, which queues up the internal name string of the class, and its bytes. When writing TASTy asynchronously, collect any logs into a buffer.
When the task for writing is finished, complete a promise with info describing if the writing was successful, and any pending log messages.
when the promise completes, and no errors occur in writing tasty, then asynchronously call the Zinc callbacks which trigger downstream pipelined compilation.
await on the promise in GenBCode, at which point report any buffered errors
fixes #20101

I have yet to benchmark any theoretical gain - but I would assume it to be fairly trivial to predict on main branch by measuring how long the present writeSigFiles in ExtractAPI blocks for.

There should probably be a cancellation signal also

@sjrd all comments are addressed


Problem sending JSON data as request body

I am trying to do some testing using the http2 version of httbin: https://nghttp2.org/httpbin/. Posting to the url https://nghttp2.org/httpbin/post will respond with a JSON object containing information about the request. This JSON includes the body and data sent with the request. Using hyper, it appears that the data that I'm sending as the request body is not being sent. Here's an example:
from hyper import HTTPConnection
conn = HTTPConnection('nghttp2.org:443')

req = conn.request(
	'POST',
	'/httpbin/post',
	body=b'{"foo": "bar"}',
)

resp = conn.get_response()
print(resp.read())

Using a different http2 client, I get the expected response:
{
  "args": {},
  "data": "{\"foo\": \"bar\"}",  <-- critical bit right here
  "files": {},
  "form": {},
  "headers": {
	"Accept": "*/*",
	"Accept-Encoding": "gzip, deflate",
	"Accept-Language": "en-US,en;q=0.8",
	"Cache-Control": "no-cache",
	"Content-Length": "14",
	"Content-Type": "application/json",
	"Csp": "active",
	"Host": "nghttp2.org",
	"Origin": "chrome-extension://aicmkgpgakddgnaphhhpliifpcfhicfo",
	"Postman-Token": "70fa24f0-9e35-82ef-c838-7c15461ba3bd",
	"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/43.0.2357.130 Chrome/43.0.2357.130 Safari/537.36",
	"Via": "2 nghttpx"
  },
  "json": {
	"foo": "bar"
  },
  "origin": "<IP_ADDRESS>",
  "url": "https://nghttp2.org/httpbin/post"
}

But using the python given above, I get the response:
{
  "args": {},
  "data": "",
  "files": {},
  "form": {},
  "headers": {
	"Host": "nghttp2.org",
	"Transfer-Encoding": "chunked",
	"Via": "2 nghttpx"
  },
  "json": null,
  "origin": "<IP_ADDRESS>",
  "url": "https://nghttp2.org/httpbin/post"
}

I'm using version 0.5.0 of hyper, Python 3.4.4. Am I doing something wrong with my request, or is there a way to get more verbose output from hyper so that I can see what's really going on?

@natemara Can you quickly test whether this problem is fixed by using the code from the master branch on GitHub?

I installed the version from the master, and I'm getting the same results.

Interesting. So this seems only to happen with nghttp2.org: with http2bin.org, the same problem is not observed.
@tatsuhiro-t, do you have any theories about why nghttp2.org/httpbin might not be receiving data?

The difference between working client (e.g., nghttp) and hyper client is that former sends content-length, but hyper does not.  nghttpx (which forwards request to backend httpbin) uses Transfer-Encoding: chunked in HTTP/1, but httpbin seems to not support chunked request.  I have not verified httpbin code yet.  I just checked that request body without content-length was sent to backend using go HTTP server as nghttpx's backend.  So probably, httpbin does not handle request body without content-length yet?

@tatsuhiro-t That's interesting: what WSGI server are you using to run httpbin?

Gunicorn.  Does it answer your question?

@tatsuhiro-t Hmm, that's interesting. http2bin.org uses H2O and gunicorn and doesn't display this problem. Weird.

Will check how h2o behaves in this situation.  I think it is possible to calculate content-length if all request body is buffered.
BTW, why doesn't hyper client set content-length in request?  Certainly, there is no way to set, but in this case, it knows whole request body, so it can set content-length.

@tatsuhiro-t Yeah, I think the lack of Content-Length in this case in hyper is a bug. That's ok. =)

I checked what h2o does.  As I guessed, h2o sets content-length if the request body fits in its buffer.

Good intuition! =)


Infinite scrolling in PackageChooser

Very basic implementation using the existing UI.
Known issues:

~If the PackageChooser window is higher than the height of the initial 15 packages, no more packages are loaded automatically. You need to resize the window to make the scrollbar visible and scroll to the end.~

fixes #413

Sweet!
What's needed to fix that issue? It would seem to bite people accidentally?

I have fixed the issue with not automatically loading more packages if scrollbar is not visible.

cool! works nice! Maybe a small details would be the style/position loader when loading a new "page".

Tested also with the static feed, works very nice (no loaders there after first "load")

@304NotModified Yes, the loading UI on top of the packages isn't nice. Suggestions are welcome (I am not good at UI design 😄 ). But it can also be done in another PR.

But it can also be done in another PR.

Yes that sound like a good plan to me. It's a really small detail

I just merged this so there can be a new PR for the loading progress bar.

Does anyone have time to submit an update to the package load progress (perhaps to a spinner somewhere?) so we can get a new release out that's a bit more polished?

Not me.  I'm  busy with NLog the next few days.

IMO it could be released without it. Pretty awesome features are added in this release :)

I am back from vacation and can work on it. Will try to make it similar to the VS package browser.


Telepresence VPN drops connection randomly

Telepresence seems to drop its network connection sometimes and it's unknown why this happens. We need to do some discovery to get a rough idea of what's causing this behavior and then figure out what to do from there.
The log file gist is available here: https://gist.github.com/plombardi89/05e2c1909745a314d48f1321b0b33df6

Quick note: It looks like port forward exited.
2169.7 TL | A subprocess (['kubectl', '--context', 'telepresence-admin-context', '--namespace', 'tele-v7', 'port-forward', 'mydeployment-6d8bd68f99-ps6x8', '56007:8022']) died with code 0, killed all processes...

I've noticed port-forward failing before when talking to Ambassador's admin UI. It could be the network here...

Setup a telepresence connection and see what happens if I do nothing
Setup a telepresence connection and see what happens if I do dns queries that talk to the cluster
Setup a telepresence connection and see what happens if I do not do dns queries that talk to the cluster.
Setup a telepresence connection that pumps traffic through the connection.

See what happens over  period of time to try and reproduce.

It terminates right around the 2 minute mark.
Skipped for #4 since it has to do a DNS query through the cluster anyways
Skipped because not quite sure what this is testing...
I telepresenced a shell with telepresence --run-shell and then ran watch curl httpbin.org/uuid and did not see a connection drop.

Seems like its a lack of traffic over the api server port forward connection.

Can you try your test 1 again, please? I'm curious about these three variants:

telepresence  (the original)
telepresence --expose 5000
telepresence --method inject-tcp

I predict that variant 1 will drop as before, but variants 2 and 3 will survive.

As requested
plombardi@philbox ~> telepresence --method vpn-tcp --run-shell
Starting proxy with method 'vpn-tcp', which has the following limitations: All processes are affected, only one telepresence can run per machine, and you can't use other VPNs. You may need to add cloud hosts with --also-proxy. For a full list of method limitations see https://telepresence.io/reference/methods.html
Volumes are rooted at $TELEPRESENCE_ROOT. See https://telepresence.io/howto/volumes.html for details.

No traffic is being forwarded from the remote Deployment to your local machine. You can use the --expose option to specify which ports you want to forward.

Guessing that Services IP range is <IP_ADDRESS>/20. Services started after this point will be inaccessible if are outside this range; restart telepresence if you can't access a new Service.

@telepresence-admin-context|bash-4.4$ Proxy to Kubernetes exited. This is typically due to a lost connection.
exit
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/remote.py", line 293, in cleanup
    sudo_prefix + ["fusermount", "-z", "-u", mount_dir]
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/runner.py", line 239, in check_call
    track, "Running", "ran", out_cb, err_cb, args, **kwargs
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/runner.py", line 230, in run_command
    raise CalledProcessError(retcode, args)
subprocess.CalledProcessError: Command '['fusermount', '-z', '-u', '/tmp/tmpoeev80hp']' returned non-zero exit status 1.
plombardi@philbox ~> telepresence --expose 5000
Starting proxy with method 'vpn-tcp', which has the following limitations: All processes are affected, only one telepresence can run per machine, and you can't use other VPNs. You may need to add cloud hosts with --also-proxy. For a full list of method limitations see https://telepresence.io/reference/methods.html
Volumes are rooted at $TELEPRESENCE_ROOT. See https://telepresence.io/howto/volumes.html for details.

Forwarding remote port 5000 to local port 5000.

@telepresence-admin-context|bash-4.4$ Proxy to Kubernetes exited. This is typically due to a lost connection.
exit
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/remote.py", line 293, in cleanup
    sudo_prefix + ["fusermount", "-z", "-u", mount_dir]
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/runner.py", line 239, in check_call
    track, "Running", "ran", out_cb, err_cb, args, **kwargs
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/runner.py", line 230, in run_command
    raise CalledProcessError(retcode, args)
subprocess.CalledProcessError: Command '['fusermount', '-z', '-u', '/tmp/tmp8_4ypfok']' returned non-zero exit status 1.
plombardi@philbox ~> telepresence -m inject-tcp
Starting proxy with method 'inject-tcp', which has the following limitations: Go programs, static binaries, suid programs, and custom DNS implementations are not supported. For a full list of method limitations see https://telepresence.io/reference/methods.html
Volumes are rooted at $TELEPRESENCE_ROOT. See https://telepresence.io/howto/volumes.html for details.

No traffic is being forwarded from the remote Deployment to your local machine. You can use the --expose option to specify which ports you want to forward.

@telepresence-admin-context|bash-4.4$ Proxy to Kubernetes exited. This is typically due to a lost connection.
exit
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/remote.py", line 293, in cleanup
    sudo_prefix + ["fusermount", "-z", "-u", mount_dir]
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/runner.py", line 239, in check_call
    track, "Running", "ran", out_cb, err_cb, args, **kwargs
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/runner.py", line 230, in run_command
    raise CalledProcessError(retcode, args)
subprocess.CalledProcessError: Command '['fusermount', '-z', '-u', '/tmp/tmp5yssmpl2']' returned non-zero exit status 1.

My prediction was incorrect. Looks like the ssh-based keep-alive stuff isn't going to do the job in some cases.

See also #355 and others.

I've modified the issue title to reflect the particulars of what I'm trying to fix here. Given the goal of avoiding various idle connection timeouts, my comment above suggests method-specific ways to have the user's machine periodically access the cluster.
Another approach would be to have the proxy pod periodically access a trivial service running within the Telepresence command itself. Besides creating the desired periodic traffic, this approach would allow the proxy to notice when the client has gone away, facilitating a portion of the work for #260. This would cost a randomly-chosen local port, which doesn't seem like a big deal.

Stuff like the above will tackle the issue of port-forward getting dropped due to an idle connection. However, because of #598, we must also make sure the kubectl logs connection does not go idle. That is more of an issue with the inject-tcp method, as the vpn-tcp method tends to spew DNS lookup noise into the log.


Allow user to filter applications by license (free/proprietary) while searching

Hi,
Flatpak and FlatHub are both great :)
However I've find a limitation that is hard to understand : each application page mentions the application license which is great.
However, when it's time to perform a search, I can't filter applications using the free/non-free criteria.
Whereas that information 1°) exists in the data base 2°) is shown on application pages (bug #143 and  bug #156 are steps in the right direction for instance) !
Thanks !

In addition to a filter when searching,  I think it would be important to have a switch top left that said "FOSS Only" or "Free/Libre Software Only", or something, that when switched on, allowed the visitor to navigate the whole site, categories, etc. without having to dig through lurking proprietary software. A filter for the whole GUI, IOW.

The quickest solution would be to create a "Free/Libre Software Only" category.


feat: Add cosmosWallet util

Added three util functions to assist integration with cheqd sdk

createCosmosPayerWallet: helpful so that they need not understand the @cosmjs libraries

As we see multiple implementations where the client is signing the payload instead of passing the private key, these two utils will assist in creating the payload required to sign. Skipped update as it's the same as create payload
2. createMsgCreateDidDocPayloadToSign
3. createMsgDeactivateDidDocPayloadToSign

_ No description provided. _

Could you add relevant description?
As in:

What's it intended for?
What are the relevant changes / features?

_ No description provided. _

Could you add relevant description?
As in:

What's it intended for?
What are the relevant changes / features?

Added the description now

Task linked: DEV-2430 Add Cosmos Wallet util


PS and Inspect without container lock, take 2.

This is a different take on #19595.
Implement docker ps and docker inspect without calling
container.Lock.
It copies the container structure recursively to avoid
nil concurrent references outside the store lock.
/cc @ibuildthecloud, @cpuguy83
Signed-off-by: David Calavera<EMAIL_ADDRESS>

I like the approach of copying the container structures instead of locking them.
Using reflection to do this scares me a little bit. I understand why it's necessary, though.
For docker ps, is there a small subset of necessary fields that could be extracted from the structure manually? This would be faster and cleaner than using reflection.
Clearly that doesn't work for docker inspect though. For docker inspect it seems reasonable to serialize the structure with the lock held, but was that causing performance problems before?

Given the copying, are we never mutating the containers? Is a read lock the answer?

The reflection worries me.  I would guess locking would be faster.  I'm mostly concerned about cpu usage.  I can try to run tests against this PR.  I unfortunately don't have a lot of bandwidth today.

For docker ps, is there a small subset of necessary fields that could be extracted from the structure manually? This would be faster and cleaner than using reflection.

We could also apply all the ps logic blocking the store lock, I think it's worth considering:
+	c.lock.Lock()
 +	for _, cont := range c.s {
 +		if filter(cont) {
 +			cp := appy(cont)
 +			containers = append(containers, cp)
 +		}
 +	}
 +	c.lock.Unlock()

the reflection would not be necessary with that approach, and we're locking the whole store anyways already.

One of the advantages of not having any lock is that the performance is more predictable once we acquire the store lock.

@calavera What happened with this PR?  Why was it closed.  I'm still very much in favor of pursuing 19595.  Just the ReduceOne function needs to be updated https://github.com/docker/docker/pull/19595#issuecomment-174850232 and it seems to work extremely well.


The image doesn't show up

Other functions are normal, but the map can't be displayed， The environment is in China
http://chuantu.xyz/t6/741/1603850381x-591238492.png
http://chuantu.xyz/t6/741/1603850438x1700340450.png

Please take a screenshot and upload your Android log. We'll help you find out why.

Please take a screenshot and upload your Android log. We'll help you find out why.

I've worked it out, thanks
https://stackoverflow.com/questions/64465638/hms-map-kit-is-not-rendering


vb06b4 feature request : adding new sources to existing configuration

situation :
I have configured my the integration with my Spotify account.
Once this was functioning I wanted to add a second source (local file system) to the integration.
I used the steps in https://github.com/music-assistant/hass-music-assistant/issues/71 to add the storage location on my nas, which worked perfectly.
problem :
The only way to do that was to delete the integration and add it again but now with the additional source configured.
This works, but is annoying as I also have to add set the area of all the new music assitant mediaplayer variants again, because I don't see them in the overall overview if I skip that.
Additional problem :
I now have duplicate artists/albums, because both Spotify and Filesystem sources have similar content.
example "Green day / American Idiot" exists both as a directory with mp3 files and as album in Spotify
It will be tricky to match or unmatch artists/albums where information is incomplete or incompatible, which may require some sort of manual override.

You can click the "configure" button on the integration card to configure additional music sources.

Music is auto matched between sources. For local files you just need to make sure that your tags are complete.

the configure option doesn't offer the 'filesystem' or 'spotify' options that I get when starting from scratch.
It merely lists the existing music players while displaying an error even if I don't change a thing.
This is what I get :

It lists everything in my system and because of that I can only click 'Next' , which displays an error message :

If the next 'page' in this dialog would allow me to configure the media sources then that may be symptom of the bug.
In HA I have these DLNA renderers and servers :

I suspect this may explain some of the duplicate mediaplayers that the system is listing.
Configured hardware in Home-Assistant  :
= PS4
= Xbox One
= NAS (Diskstation)
= Plex server (running on NAS, which creates a mediaplayer for every system that has a client ... )
= Emby / Jellyfin server (running on NAS)
= 5 Sonos speakers (3 Sonos Play:1, 1 Symfonisk, 1 Port)
Emby/Jellyfin is part of an experiment because Plex doesn't serve ISO files and I'm looking for an alternative that allows me to serve DVD's over my internal network.

The whole "config flow" is next on my list to fix and make a bit more friendly.
And yes, if you select you want to use a player with music assistant, there's a toggle to hide the "original" player from the UI.
original player --> Music Assistant --> final player including metadata and additional controls/options

@DutchJaFO
I marked this issue as a bug.
I guess you can perfectly help to validate the planned revision of the config flow against your large setup.
Best Eric

@erkr agreed. This is a very complex setup, but it may be typical for the kind of situation that music assistant hopes to resolve.
It may even have more than a few dead entities as a result of me re-configuring several mediaplayer integrations.
Heck ... I myself I'm still trying to re-think what I want to do with the various mediaplayers within HA itself.
My current idea is that my NAS serves as a fallback media source for the gaps in the Spotify media list and as a fallback media source whenever internet/spotify is down for some reason.

My current idea is that my NAS serves as a fallback media source for the gaps in the Spotify media list and as a fallback media source whenever internet/spotify is down for some reason.

Chromecasts also won't work when Internet is down. But luckily you are not limited to them ☺

should be fixed in beta 6


Configure which hosts are managed in inner Policy (including DCAwareRoundRobinPolicy)

Add a filtering policy to prevent some host to be queried
(such as a the ones belonging to a dedicated DC).
Update from #439

Hi, any news ?

I like the idea of generalizing the WhiteListPolicy, this can be used in a lot of different ways so it will be useful to have it in the driver.
I don't think we need to change Policies though, it's simple enough to build the policy yourself with the static methods you exposed.
I have a few remarks on naming, I'll make them inline.

Hi,
Do you want me to change something in the code or do you do it on your own ?

Cherry-picked on #512. It should make it to 2.0.12 / 2.1.9.
I did a few changes (some based on my previous comments):

removed the changes to Policies
removed factory methods for host-based white/black lists: it felt weird to have both a WhiteListPolicy and these methods, and I don't want to expose too much stuff before it's really needed. In contrast, DC-based factory methods make sense given the use case of JAVA-808.
separated DC-based white/black lists into two methods.
reorganized the tests to have more focused methods. I also removed the integration test: these are very slow and we're in the process of refactoring them.


Use dub from the release binary

Not really a complaint but not sure why these two not-too-related changes are together in one PR :)

Not really a complaint but not sure why these two not-too-related changes are together in one PR :)

Because they both touch this download command and my motivation/time was pretty low yesterday. I don't mind splitting them up if it's a controversial change - I didn't think that it would be.

Because they both touch this download command and my motivation/time was pretty low yesterday. I don't mind splitting them up if it's a controversial change - I didn't think that it would be.

Alrighty - I guess I have to split into two PRs and rebase one then :/
-> https://github.com/dlang/dlang.org/pull/1850

Alrighty - I guess I have to split into two PRs and rebase one then :/

Sorry, I didn't mean to imply that you should do that.


ORCA Configuration Input Location

The constants and configuration for ORCA input files were previously temporarily placed in dft_orca.py. It would be better to make these settings user-configurable.

These ORCA configuration have now been moved to dft_calculators.py in #67 for review.

@xiangchenjhu is this done then? #90 will be treated separately from this so should not block it from closing

No, currently the dft_calculators.py file includes the settings for ORCA, but they are not configurable from the CLI.


汉化版本的有吗？【has a chinese version？】

Actions before raising this issue

[X] I searched the existing issues and did not find anything similar.
[X] I read/searched the docs

Is your feature request related to a problem? Please describe.
No response
Describe the solution you'd like
No response
Describe alternatives you've considered
No response
Additional context
No response

No


Rename restrictedToC and improve checks

Renames restrictedToC to isRestrictedToC, adds additional checks to
prevent emitting std::make_tuple or std::tie if restricted to C.
Further extends the lit tests.

We'll probably drop the mode restricting to C soon, but if not it's worth that this improvement isn't lost.


Question about training loss

It is a nice work of mmdetection! I trained mmdetection on two datasets, one has about 4,000 images and another has 10,000 images, they both trained 12 epoches. The loss of the dataset that contains 4000 images converges to 0.2, and the loss of the dataset that contains 10000 images converges to 0.5 when training finished in epoch 12. I wonder that the different final loss value is caused by dataset, the bigger dataset, will there be bigger loss value? Or I should train more epoches on bigger dataset. Very appreciate for your reply!

If the two data sets are identically distributed, the large data set does require longer training time (but there are also cases where your small data set has been over-fitted)，it would be better to set up a validation dataset to observe convergence.

If the two data sets are identically distributed, the large data set does require longer training time (but there are also cases where your small data set has been over-fitted)，it would be better to set up a validation dataset to observe convergence.


Check to see if currently playing

Is there a method to call to see if wave surfer is currently playing? I have it in a modal and it will continue to play when modal is closed. I have setup a event on modal close to stop, but this will throw an error if it isn't playing when the modal closes. I know I could use the events, but I am trying to avoid having to set and unset on play/pause/stop. A simple isPlaying() public method would be a lot simpler..

There's wavesurfer.backend.isPaused().
You can add wavesurfer.isPlaying() if you like, I'll accept a pull request.

PR sent. Was unsure of your PR requirements so let em know if anything needs adjusting.


jsx-sort-props breaks on long props with sortable as one of props --fix

this component will always break on eslint fix
<HeaderCell
				sortable={true}
				allowSort={allowSort}
				downImage={downImage}
				key={key}
				sortAscending={sortAscending}
				sortImageHeight={sortImageHeight}
				sortImageWidth={sortImageWidth}
				sortKey={sortKey}
				sortOnKey={sortOnKey}
				style={style}
				textStyle={headerTextStyle}
				title={title}
				upImage={upImage}
			/>

What does "breaks" mean?

This is duplicate of #1922, it breaks in the same way. Looking at the tests, that rule isn't handling multiline props at all 😕

Closing as a duplicate of #1922, then.


Basic firewall interface

I really like how this functionality is appearing. It's gonna be a cool feature when implemented


Add link for gulp-reporter

gulp-reporter used in team project, it fails only when error belongs to the current author of git.

I don't quite understand this PR.  Would it be sufficient for this information to be in the gulp-reporter repository?

This is an interesting feature, but I don't think it should be linked from gulp-tslint.

In our team, many people do not want to use linter in project because it will bring many mistakes in stable code.
What gulp-reporter want to do is filter outout of errors on the stable code lines.

The usual workflow should be that any code will have the linter errors fixed before commiting / shared to anyone else.

Yes, you are right. But in a very big project that without any lint, lf you want to add tslint to build script, that is a very big job. There are so many error need to fix. That is why so many people do not use lint tool.

It's a fair point. One workaround is only adding the linter to a subset of the files at first.

3 years ago, I got a new job, when I try to add jshint to a project, I found a js file, it has 3000+ lines. that is hard to fix. so I add it to ignore. But after some days, I see other peoples add codes to this file to skip lint.

Only fail when error found by lint on code just add or modify. It is the main usage of gulp-reporter.


UDIMs export

Is your feature request related to a problem? Please describe.
GLTF currently doesn't support UDIMs export
Describe the solution you'd like
The best outcome would be a glb file with all the UDIMs integrated. A separated bin format with textures is also good enough.
Describe alternatives you've considered
I already found a solution to export UDIMs from Blender = the USD format
Additional context
Make blender pack UDIM textures into the .blend file? kidding
udims.zip
thank you and good bye

Hello,
UDIM is not something that is supported in glTF specification.
One solution that might work to export from Blender is splitting each UDIM tile in a different primitive (instead of only splitting by material). It can work, as each primitive can have a different material assigned.
List of impact still need to be investigated. I first think about impact on variant extension currently in developpement.

those people from chronos, can't they make gltf v2+ with UDIM specifications? things evolve and so should the specifications

This is a common question. glTF is a runtime format, close to the metal.  There's no UDIM support natively on the GPU, UDIMs always require client-side processing. So for these reasons I think it unlikely that raw UDIMs will be placed directly inside glTF.
That said, perhaps the Blender exporter can break them up using multiple glTF primitives as Julien suggested. This makes them into separate draw calls, which may resemble how some client software ultimately implements them, which is a great use of glTF.

See a method to bake udims to like gltf2.
https://github.com/sinbad/FbxUdimUnpack

This tool takes a UDIM-enabled model in FBX format makes it cheap and easy to use in real-time engines.
Any polygon UVs which reference UDIM tiles trigger the splitting of the material "Foo" into "Foo_U1001", "Foo_U1002", "Foo_U1010" and so on based on the UDIM tile. That poly is then changed to reference that split material and the UVs adjusted back to the 0-1 range.
This means that a real-time engine just needs to have a separate material for each UDIM tile and can render the model normally, without any complex UDIM tile selector shaders, and in the case of Unreal, without enabling virtual texturing.

@fire Yes, this is what I suggested above

One solution that might work to export from Blender is splitting each UDIM tile in a different primitive (instead of only splitting by material). It can work, as each primitive can have a different material assigned.
List of impact still need to be investigated. I first think about impact on variant extension currently in developpement.

This is a common question. glTF is a runtime format, close to the metal. There's no UDIM support natively on the GPU, UDIMs always require client-side processing. So for these reasons I think it unlikely that raw UDIMs will be placed directly inside glTF.
That said, perhaps the Blender exporter can break them up using multiple glTF primitives as Julien suggested. This makes them into separate draw calls, which may resemble how some client software ultimately implements them, which is a great use of glTF.

glTF is an interchange format, and is meant to be used to transfer model/scene information between applications or game engines. This answer that its a runtime format is always used when glTF lacks something. Real game engines, rather than small runtime apps like a "glTF Model Viewiers" don't use glTF as their internal data format, it is only used to interchange the data. The fact that glTF isn't UDIM aware is not by design, its just a lacking a feature. An engine should be able to import the model data from the glTF doc and do what it sees fit with the UDIM information.

This repository is used for implementation of the specification for Blender I/O
For any topic about the specification itself, you can open a ticket in the glTF specification itself: https://github.com/KhronosGroup/glTF
BTW, this ticket can now be closed, as Blender 4.1 beta is now able to export UDIM by splitting tiles into separated primitives/materials


Add conceptual docs for Negotiate/Kerberos/NTLM auth for Linux-Windows interop

See https://github.com/dotnet/corefx/issues/30203 for examples of what's needed for customers.

Thanks @davidsh for filing the issue. Do you have a draft of this that we can help publish?
/cc @karelz

FYI: @wfurt

FYI: @wfurt

I think documentation around this is still necessary. In enterprise deployments, this interop is still popular. @dotnet/docs

I think documentation around this is still necessary. In enterprise deployments, this interop is still popular. @dotnet/docs

@BillWagner please see ^

@BillWagner please see ^

reopening per comment.

reopening per comment.


Stop swallowing JSON parse errors

If unparseable JSON is provided, the library should fail loudly rather than ignoring the input.
Looking through the blame, I couldn't find any specific reason why safe_json_parse is meant to be safe -- in fact, because it swallows up errors and pretends that there's no problem, it made things very confusing to diagnose.
Let me know if you'd like me to take this in any particular direction and I'm happy to update the PR.

Edited to add context, fyi (GitHub posted this PR from their editor without a description)

I don't remember why it was done like this, so yes, let's try to remove safety :)

thanks for your patience -- feedback addressed and ready for re-review.

Done! I basically just changed foo to {} so the JSON wouldn't fail.

Looks good. Thank you for the contribution!


Create Site Collection fails if Site Collection Admin has no email from people picker

Currently the code that creates the job entry assumes that the user entered for the primary and secondary site collection administrator has the email returned from the people picker.
Values for PrimarySiteCollectionAdmin and SecondarySiteCollectionAdmin sent to the controller:
PrimarySiteCollectionAdmin:[{"Login":"i:0#.f|membership|admin@[tenant].onmicrosoft.com","Name":"Admi Strato","Email":""}]
SecondarySiteCollectionAdmin:[{"Login":"i:0#.f|membership|admin@[tenant].onmicrosoft.com","Name":"Admi Strato","Email":""}]

The following code (lines 118 - 121 in HomeController.cs)
                            model.PrimarySiteCollectionAdmin.Length > 0 ? model.PrimarySiteCollectionAdmin[0].Email : null;
                        job.SecondarySiteCollectionAdmin = model.SecondarySiteCollectionAdmin != null &&
                            model.SecondarySiteCollectionAdmin.Length > 0 ? model.SecondarySiteCollectionAdmin[0].Email : null;```

This results in the following job being persisted in the SharePoint list:

{
"PrimarySiteCollectionAdmin": "",
"SecondarySiteCollectionAdmin": "",
"StorageMaximumLevel": 0,
"StorageWarningLevel": 0,
"UserCodeMaximumLevel": 0,
"UserCodeWarningLevel": 0,
"ExternalSharingEnabled": false,
"PartnerPackExtensionsEnabled": true,
"ResponsiveDesignEnabled": true,
"SiteTitle": "asdfasdf",
"RelativeUrl": "/sites/asdfasdf",
"SitePolicy": "LBI",
"Description": null,
"Language": 1025,
"ProvisioningTemplateUrl": "https://[tenant].sharepoint.com/sites/PnP-Partner-Pack-Infrastructure/PnPProvisioningTemplates/TestDriveRoot.xml",
"TimeZone": 39,
"TemplateParameters": null,
"JobId": "7c4645e5-bd43-4074-a0ef-07f2a0a8c454",
"Title": "Provisioning of Site Collection "/sites/asdfasdf" with Template "https://[tenant].sharepoint.com/sites/PnP-Partner-Pack-Infrastructure/PnPProvisioningTemplates/TestDriveRoot.xml" by<EMAIL_ADDRESS>"Owner"<EMAIL_ADDRESS>"Status": 2,
"ErrorMessage": null
}
When the job for this request is executed it fails with the message: **The Owner property is required for site creation and was not supplied.**

In this case the owner was the also the account selected using the people picker.

Perhaps if both the Site Collection Admins are null this process should throw and exception before persisting the job as

Hi,
Thanks for the feedback. We will update the behavior accordingly.

Paolo...
Do you have a patch for this bug yet? I'm hitting the same issue during POC testing in an environment that doesn't have Email accounts.
If we manually update the code to use the login account instead, will that cause other issues?

I patched my version to fall back to the job.Owner if the site collection
admin couldn't be resolved by changing the end of the CreateSiteCollection
method on the HomeController like this:

                        //Safety catch...
                        if
(string.IsNullOrEmpty(job.PrimarySiteCollectionAdmin))
                        {
                            job.PrimarySiteCollectionAdmin = job.Owner;
                        }

                        model.JobId =
ProvisioningRepositoryFactory.Current.EnqueueProvisioningJob(job);

It's a bit of a hack but it serves our purpose.
Paolo, if you want this hack as a 'fix' then I can submit a PR.
On 24 May 2016 at 09:21, 2P2-Anthony<EMAIL_ADDRESS>wrote:

Paolo...
Do you have a patch for this bug yet? I'm hitting the same issue during
POC testing in an environment that doesn't have Email accounts.
If we manually update the code to use the login account instead, will that
cause other issues?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/OfficeDev/PnP-Partner-Pack/issues/102#issuecomment-221325604

If the Job just needs an "email", why won't the<EMAIL_ADDRESS>work that they use for login?

Hi Gavin,
Yes please. Feel free to submit a PR, I will look into it. Thanks.

Fixed by merging #124 . I will close this one.


Create Roadmap View

Hi @aFinchy! SIG release is working to help the O3DE community to get visibility of the O3DE roadmap. Full context can be read here: https://github.com/o3de/sig-release/issues/79.
In order to achieve that goal, we need your help to create the roadmap for your SIG by February 6th, 2023, and start giving brief updates about the roadmap items at the Joint TSC meeting on February 28th, 2023. Instruction to create the roadmap view can be read in the RFC section "Roadmap Review in TSC monthly meeting".
Let me know if you have any concerns with the dates or any questions about the ask!

Hi @aFinchy , a friendly reminder to help review by next week as we want every SIG to have a roadmap according to the RFC attached above by February 6th, 2023.

@aFinchy To confirm. Do we have any roadmap planned for the SIG operation? If not, I'll close this issue and close this PR: https://github.com/o3de/sig-operations/pull/40

@aFinchy said Sig ops has no roadmap items. Sig ops are more operational of everything rather than the engine


mapbox + ionic issue

my controller code here
var add_omnivore = omnivore.csv('/lib/airports3.csv').addTo(map);
It works fine in my web browser ( ionic serve)
but It is not working on my IOS simulator
Error Message here
publicFacility_prj[21547:1281476] error JSON.stringify()ing argument: TypeError: JSON.stringify cannot serialize cyclic structures.

Closing; it looks like there's a library that's inserting itself in converted results.


CMake config python executable

We receive multiple cases where CMake detects a python executable that is not compatible with our python library. We should either

fix the auto-detection
add an option to change python executable

The Python version and interpreter could be specified by environment variables after #1240.
E.g.:
env PYBIND11_PYTHON_VERSION=3.9 PYTHON_EXECUTABLE=python3 make release


add early error message if docker is missing

Describe your changes
src/soopervisor/commons: docker.py
Add new method validate_installation(), which takes Commander instance
as argument.
For backends using Docker, validate_installation() will be called at the begining of export()
method.
src/soopervisor: airflow/export.py, argo/export.py, aws/batch.py
, kubeflow/export.py
Invoke validate_installation() at the begining of export() method.
Issue ticket number and link
Closes #72
Checklist before requesting a review

[x] I have performed a self-review of my code
[x] I have added thorough tests (when necessary).
[x] I have added the right documentation (when needed). Product update? If yes, write one line about this update.

closing due to inactivity


Disable bottom_toolbar if it returns False

I want to add shortcut to disable bottom toolbar. Is it possible to disable it when bottom_toolbar returns False?
#!/usr/bin/env python3

import os
from prompt_toolkit import PromptSession
from prompt_toolkit.key_binding import KeyBindings

global_kb = KeyBindings()
global_toolbar = True

def bottom_toolbar():
    global global_toolbar
    if global_toolbar:
        return "F1 Help"
    else:
        return False

@global_kb.add('c-b')  # Ctrl+B
def switch_toolbar(event):
    global global_toolbar
    global_toolbar = not global_toolbar

session = PromptSession(os.getcwd() + ">", key_bindings=global_kb, bottom_toolbar=bottom_toolbar)
text = session.prompt()

print("[debug] " + text)

Right now this piece of code enters endless error loop on Ctrl+B:
Exception No formatted text. Expecting a unicode object, HTML, ANSI or a FormattedText instance. Got False

Full traceback: https://pastebin.mozilla.org/9088696

I think if you return an empty string instead of False, that should do it. Can you try that?

If I return empty string, it just erases the foreground.

Good point, you're right. I have to think about how to handle this. Give me some time to think it through.


zip file doesn't contain valid library?

I am trying to include this library in my Arduino IDE. but it shows the error stated above. Can someone please tell me what I'm doing wrong?

I am trying to include this library in my Arduino IDE. but it shows the error stated above.

What zip file? How are you including it?


unable to upload new file with rotation EXIF

hello, I want to upload the new file with EXIF rotation to my server, it does not show me any error in the console, but my file is uploaded without EXIF rotation. here's my code

This lib reads the EXIF rotation information and rotates it accordingly. It is normal that the output file does not have EXIF information.

Yes, want i want to do is upload the rotated file, and dont need the exif information on the file, i just need the rotated file but it(the lib) doesnt rotate the file.
The exif rotation number is 6 but my image arrives like this to the server(original image, withouth rotation)

maybe im doing something wrong, please I would really appreciate your help

@theonlybenjamin It seems that your image file is png, you may provide the exifOrientation value in the option. For example:
options = {
  maxSizeMB: 1,
  useWebWorker: true,
  exifOrientation: 6
}

We only detect EXIF rotation information for jpg images at the moment.

its jpg image, give you some pictures:
this is the file:

uploading the file:

and this is the code:

Even if i harcoded the exifOrientation property with 6, it doesnt rotate it

Can you zip the jpg file and upload it here?

its jpg image, give you some pictures: this is the file:  uploading the file:  and this is the code:  Even if i harcoded the exifOrientation property with 6, it doesnt rotate it

of course, there you go
test.zip

test_result.zip
@theonlybenjamin I cannot reproduce your issue, the lib detects it's exifOrientation value is 6 and rotated it accordingly.
You may try it out in https://donaldcwl.github.io/browser-image-compression/example/basic.html
I have upload my result here for your reference.


validate that mappings only set valid fields

Previously using store.set you could set non-existent fields on an entity. This is a determinism bug (depending on whether the entity is fetched from the cache or the store). This was fixed in https://github.com/graphprotocol/graph-node/pull/4807. We should ideally catch this behaviour at build time, rather than failing at runtime.

after some more thought and discussions internally. This is great idea, there are few ways we could go about and none of them are reasonable as of now:

At AssmeblyScript level if generic types were possible similar to how in TypeScript  we can write some generics and let structural typings and rely on TS complier. But sadly we can't use the Typescript generics example I shared in AssemblyScript.
We can try to do this validation at a pre-build step. Which is computationally expensive and we will end up building our custom type checker which is much more involved project and not sure how much benefit there is given this is a rare case we are helping avoid developers
AssemblyScript doesn't have protected or private class members, that would have been simplest way where we force users to always use Entities and set values on the field instead of being able to call arbitrary .set() on an entity which could avoid lot of these issues.

Maybe if this becomes too big of an issue we should considerer re-opening and maybe by then there are some improvements in AssmeblyScript that we can build on top of.


Fix byte code gen with block-scoped function called from with and captured elsewhere.

Make sure that if some references to a block-scoped function are optimized to refer to the var-scoped binding and others are not, and both bindings are marked for closure capture, then both scopes are processed accordingly.

@boingoing Very simple byte code gen change.


Add testcase, source code of the cputotal usage monitor

Add testcase, source code of the cputotal usage monitor

close to reupdate again


Feature/research 852 split out orizuru java

Initial work for Orizuru-Java

Already been reviewed in Stash. Merging.


Updated Software steps ttyS0

When I follow the steps re serial communication with the Pi I get:
ubuntu@ubiquityrobot:~$ ls -l /dev/serial*
lrwxrwxrwx 1 root root 7 Feb 11  2016 /dev/serial0 -> ttyAMA0
lrwxrwxrwx 1 root root 5 Feb 11  2016 /dev/serial1 -> ttyS0
Does it matter that ttyS0 is on serial1 or does it HAVE to be serial0?
JHP

Hm, that's interesting.  Are you using a Pi 3 for sure, or did you grab a Pi 2?  I believe the ttyAMA0 and ttyS0 swapped between Pi 2 and Pi 3.
The second thing to check is that your sudo raspi-config steps match those outlined in the Software Steps.pdf document.  Specifically, make sure your login shell is NOT available over serial (set to "No"), and that the serial port hardware is enabled (set to "Yes").
The short story is that you need to use /dev/ttyS0 (so long as ttyS0 is mapped to GPIO pins 14 and 15 and not the bluetooth device).  The above /dev/serial0 and /dev/serial1 are aliases to the actual hardware.  If you've verified that the raspi-config configuration is correct and you've added the console=tty1 to /boot/cmdline.txt, you can go ahead and try to do the serial comms.  If something fails, you may need to revisit this issue.

It’s a Raspberry Pi 3 Model B+
The serial login shell is disabled
The serial interface is enabled
console=tty1 is in place
Does it matter if the keyboard & mouse are plugged into the rover? (No, it doesn't.  I tried)
NEXT STEP:
How do I pair the X-box controller to the Pi?
Then what are the X-box controls for the rover?
JHP

@JHPHELAN did you still need help on this? I wasn't sure I though i remember answering this somewhere else, but am unsure if I did or not

Since y'all are using Raspbian instead of Ubuntu I started from scratch with the Raspbian / ROS kiinetic / OSR build.  In this system the ttyS0 comes out as Serial0.
JHP


IngestionPipeline update deployed for airflowDeploymentUrl

Update the JSON Schema of IngestionPipeline, changing from deployed to airflowDeploymentUrl directly. This will build the link where the DAG lives.
cc @ShaileshParmar11 I'll ping when this is done to align UI changes. Thanks!

@pmbrull anything needs to be done here?

I don't think this is relevant anymore


[2FA] MSA/AAD integration with 2FA and other fixes

Addresses:

Register title mismatch - https://github.com/NuGet/NuGetGallery/issues/5531
Warning icons - https://github.com/NuGet/NuGetGallery/issues/5722
Add 2FA auth management UI and other work - https://github.com/NuGet/NuGetGallery/issues/5673

Also,

Added support for application to know if 2FA was used for the session for certificate management using Claims

UI work screenshot:
Personal MSA accounts
Warning icons for 2FA disabled

Enabling 2FA warnings go away

Disabling 2FA warnings come back.

Loggin in with MSA account that has 2FA enabled, but not set on nuget profile, enables it:

AAD Accounts
That have 2FA enabled by administrator

That do not have 2FA enabled by administrator

Text review:

Linked Microsoft account -> Microsoft account
Do not change the text for 2FA setting for AAD. Instead have an info banner in the box with the following text:
Two-factor setting is managed by your Azure AD tenant administrator.

Also lets be consistent everywhere for AAD. My recommendation is to use Azure AD as its short and is a generally known and marketed name. For reference: https://docs.microsoft.com/en-us/azure/active-directory/active-directory-whatis