ClientInfo not received in the response from AAD

I'm trying to obtain an access token using .getAccessToken(args) from the react-aad-msal npm package.  The console is reporting a couple of errors that originate from this repo:
[ERROR] ClientAuthError: The service did not populate client_info in the response, Please verify with the service team Failed with error: ClientInfo not received in the response from the server
And
VM443 1.chunk.js:27570 Uncaught (in promise) ClientAuthError: The service did not populate client_info in the response, Please verify with the service team Failed with error: ClientInfo not received in the response from the server     at ClientAuthError.AuthError [as constructor] (http://localhost:3000/static/js/1.chunk.js:27570:24)     at new ClientAuthError (http://localhost:3000/static/js/1.chunk.js:27715:24)     at Function.ClientAuthError.createClientInfoNotPopulatedError (http://localhost:3000/static/js/1.chunk.js:27798:12)     at MsalAuthProvider.UserAgentApplication.saveTokenFromHash (http://localhost:3000/static/js/1.chunk.js:25782:93)     at MsalAuthProvider.UserAgentApplication.processCallBack (http://localhost:3000/static/js/1.chunk.js:25245:23)     at MsalAuthProvider.UserAgentApplication.handleAuthenticationResponse (http://localhost:3000/static/js/1.chunk.js:25299:10)     at MsalAuthProvider.<anonymous> (http://localhost:3000/static/js/1.chunk.js:25034:20)     at step (http://localhost:3000/static/js/1.chunk.js:84333:17)     at Object.next (http://localhost:3000/static/js/1.chunk.js:84264:14)     at fulfilled (http://localhost:3000/static/js/1.chunk.js:84217:24)
Stepping through the source code:
https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/18c3f99fa1a3877c7965963de45db4e65a9d9c43/lib/msal-core/src/UserAgentApplication.ts#L1617
I can see that hashParams doesn't contain a client_info, which is why I get the error.
However, the comment:
// retrieve client_info - if it is not found, generate the uid and utid from idToken
suggests that it will attempt to generate the client info from the id_token which I do have.  Unfortunately, from what I can tell, the code logs the error and throws an exception without trying to create the client info.
What is the intended behaviour?  Should the library attempt to create the object from the id_token (as per the comment), or does client_info really need to be set correctly up stream?

@kevin-mcmanus Are you using ADFS?
Also, in the future please use of the issue templates, thanks!

@jasonnutter ,
No I'm not using ADFS, my scenario is more obscure than that...
In production I am using Azure Active Directory with no federation or connection to an on-prem directory.
For development I'm using a 100% Identity Server 4 (https://github.com/IdentityServer/IdentityServer4) solution, with users and resources all configured in IS4 with no links to AAD (or ADFS).
AzureAD is being used to protect a React SPA.  Ideally I want to use the same libraries to secure both prod and non-prod environments, with just a configuration change or two required (e.g. the authority URL).
This setup started out as a trial, with no expectations that it would even work.  I was simply going on the basis that both support OIDC & OAuth 2.  Initial development required a login to access the site, for which AzureAD performed well.  (The only non standard IS4 change was a very minor URL rewrite.)
I am now extending the use of AzureAD and am looking to secure access to a backend REST API and give it the ability to identify the current user.  This is where I've hit the issue described above (in my dev environment).
Looking at the code, I wonder if I've hit an implementation bug rather than a product limitation.  It would be great to get some clarity to help decide on my next steps.
N.B. I acknowledge this is not a supported use case and can take a look at alternatives if necessary.
Since submitting my request I've now found the issue templates that you refer to; I'd be happy to use these in the future.  Please be aware that they aren't presented as an option when viewing the code, selecting a line, clicking '...' and selecting 'Reference in a new issue'.

@kevin-mcmanus Thanks for the context. It looks like the comment in question should have been removed/updated when the exception was added, so we'll make sure that gets fixed.
Currently, the library is expecting responses to include client_info, but #1668 will remove that requirement in order to properly support ADFS, so that may unblock your scenario as well.

@jasonnutter Thanks for the reply; that sounds very promising  I'll retest when the referenced ADFS code is released.

This issue may be solved by #1668, but IdentityServer is not officially supported by Microsoft. Please open a new issue if you have further questions, thanks!


npm warnings

although the project runs fine, there's a lot of warnings about packages that should be checked out .. do this

updated npm
cleaned two critical errors
lots of warnings still


Pre-installed global grunt-cli with older glob is causing issues on custom deployment scripts

There is an existing issue that was raised for this in November that is now closed because the OP found a work around - https://github.com/projectkudu/kudu/issues/1787
And as mentioned in that issue, this is similar to #1573 in that the pre-installed grunt-cli is causing errors when globbing for patterns like ./**/*.js etc. when there are network drives present.
Here is a repo with the custom deployment script that causes the error: https://github.com/floydpink/azure-glob-error

In case this helps, this SO answer offers another workaround:
http://stackoverflow.com/questions/30199739/enotup-using-grunt

Thanks you, @vivmaha - I also had seen that SO question & answer and unfortunately it does not help because it is failing for me on these lines

Hi
Kudu will continue to run in Azure App Service. However, this repo will no longer be maintained.
If the problem persists and is related to running on Azure App Service, please open a support incident in Azure:
https://learn.microsoft.com/en-us/azure/azure-portal/supportability/how-to-create-azure-support-request
This way we can better track and assist you on this case
Thanks,
Joaquin Vano
Azure App Service


assests

Uploading 主题-黄鹤楼.mp4…

https://github.com/MingxiLi/MoneyPrinter-AiSearch/assets/32333706/abe4dfe9-b327-4c46-91a6-b8b39b05f66f

https://github.com/MingxiLi/MoneyPrinter-AiSearch/assets/32333706/5bc12d4c-346d-421d-beb0-358ee372b2f8

https://github.com/MingxiLi/MoneyPrinter-AiSearch/assets/32333706/a5fa5712-a962-435c-8e2f-73135121f0e8


cmd/compile: optimize slice access with constant upper/lower bound

For example (https://golang.org/src/encoding/binary/binary.go#L69):
func Uint64(b []byte) uint64 {
    return uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 |
        uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
}

Gets compiled roughly to:
func Uint64(b []byte) (v uint64) {
    if len(b) > 0 { v |= uint64(b[0])   }  else { panic() }
    if len(b) > 1 { v |= uint64(b[1]) << 8 } else { panic() }
    .... and so on....
    return
}

I was wondering if that can get optimized to something more like:
func Uint64(b []byte) (v uint64) {
    if len(b) < 8 { panic("index error") }
    .....
    return
}

I tried to look at the code in src/cmd/compile/internal/gc/cgen.go but it was way above my head, if there's interest in that idea and no one wants to pick it up, I'll look more into learning how the code gen works and try to implement it.
@randall77 you might find this interesting.

/cc @dr2chase

I wonder if this might actually come for free from existing SSA + @dr2chase work.
There are no ordering requirements for the bitwise OR operations, and there are no side effects and there's only one return path.

David (drchase) can take a look at the bounds checks.
It is a separate issue to combine the loads.  Once the bounds checks are gone (or even before?) we can use rewrites to combine the loads into larger units.  Let's leave this bug about bounds checks and I've opened #14627 for combining the loads.

Grand plan is to do this in SSA.  We have bounds-check removal code now that does this somewhat better.  The enabling step is to search for the highest bounds check before a side-effect, and to hoist that one first where it dominates all the others.
However, I just tried that experiment by hand, and constant indices aren't working well (yet).

I think this can be closed. The current Go semantic does not allow to optimize bound accesses if they are done in forward order (eg: 0 to 7). This is why an explicit _ = b[7] is required in some cases.
So this is not a missing optimization. If you anybody wants to propose a semantic change, please file a Go 2 proposal.


CB-10980 - Validate FreeIPA backup permission after after deployment

Before installing FreeIPA, perform a test to ensure the instance has
write access to the object store for backup files. This improves the
delay before failues are reported. Previously it would take more than
40 minutes, now an error is reported within 5 minutes.
This was validated by timing how long it took to fail when deployed
using a local instance of cloudbreak and deployming on AWS.
See detailed description in the commit message.

It looks like the FreeIpaInstallService was refactored recently. I will need to update this PR to match the current master.

Thanks for doing this! This is the most frequent error message what customers are receiving today:
com.sequenceiq.environment.exception.FreeIpaOperationFailedException: FreeIpa creation operation failed. FreeIpa creation failed. Status: 'CREATE_FAILED' statusReason: 'Failed: Orchestrator component went failed in 28 min(s), message: Target: [ipaserver0.jxxss.dsdsd.cloudera.site] Node: ipaserver0.jose-cdp.ztoh-5shg.cloudera.site Error(s): Failed to upload freeipa backup to object storage, please check the assigned permissions to the instance'
My ask is that can we rephrase this error message as well, by providing more detailed information:

what instance profile/msi has been used what think is not good
what is the location where we tied to upload, but we had no permission
what is the UI / CLI input parameter what they shall check

Probably we can also eliminate the com.sequenceiq.environment.exception.FreeIpaOperationFailedException from the beginning.

@akanto the error message now looks like this:
com.sequenceiq.environment.exception.FreeIpaOperationFailedException: FreeIpa creation operation failed. FreeIpa creation failed. Status: 'CREATE_FAILED' statusReason: '1. Validating FreeIPA cloud storage permission for backup failed. The instance profile arn:aws:iam::XXXXXXXX:instance-profile/mow-dev did not have permission to write to s3://jamison-cdp1/jamison-bennett-env2/logs/cluster-backups/freeipa/jamison-bennett-env2-15644-freeipa_56693871-0a6b-4c91-ad7c-2412c7ae7245. If provisioning was done using the UI, then verify the log's instance profile and logs location base when provisioning in the UI. If provisioning was done using the CLI, then verify the JSON which was provided when creating the environment. Specifically verify the logStorage.instanceProfile and logStorage.storageLocationBase. Refer to Cloudera documentation at https://docs.cloudera.com/management-console/cloud/environments/topics/mc-idbroker-minimum-setup.html for the required rights.'

@oleewere I cleaned up several places that had similar code for converting Set<InstanceMetaData> into Set<Node>. One place was the diagnostics. There are 2 minor changes in the code which I think would have actually been a problem before but I wanted you to check this.

The diagnostics conversion for public IP addresses now uses the "wrapper" which falls back to the private IP if the public IP is not set.
There is a new check to ensure that the list is not empty.

closing in favor of merging it into 2.38 https://github.com/hortonworks/cloudbreak/pull/9969


ARCHIVIZ PLUGIN IS NOT VALID

I AM TRYING TO INSTALL THIS PLUGIN BUT I CAN'T UNDERSTAND WHAT THE PROBLEM IS... I HAVE INSTALLED OMEKA CLASSIC ON WINDOWS 11 LOCALLY USING LARAGON

I also encountered the same error. Is the root directory of the plugin missing a *.php file?


Eliminate VolatileTime

Summary

VolatileTime is used to ignore timestamps in conditions when doing a go comparison.
Timestamps are now kept stable in post-process

We should no be able to eliminate this library which simplifies the struct. This library can be confusing because users must use the correct comparison.
This is a follow-up to: https://github.com/knative/pkg/issues/1394

/assign

I've played with this a bit. I think we'll want to make yet another duck version for it. We now have a lot of repos downstream of /pkg and making breaking changes like this can be costly.


Feature - add computeIfAbsent with TTL method to RMapCache #6136

Feature - add computeIfAbsent with TTL method to RMapCache #6136
By the way.
Happy Mid-Autumn Festival.

Happy Mid-Autumn Festival to you too!


DocsBot improvements

What kind of changes does this PR include?

Something else!

Description

Don’t cancel the congrats bot if two commits overlap
Improve the message posted to Discord to thank commit co-authors 🥳

LGTM! Just suggested a message that works singular and plural.


Graceful failure for parallelism

This PR updates the GracefulErrorAdapter to handle several situations for Parallelizable nodes, as described in https://github.com/DAGWorks-Inc/hamilton/issues/1009.
It also includes a wish-list item (sentinel input) for a broader use case, which is motivated here: https://github.com/DAGWorks-Inc/hamilton/issues/742
This PR allows for sentinel injection into tagged functions, which will support pre-Collect blocks that use hamilton's resolve to allow runtime-definable DAGs that still aggregate as expected.
Changes
Using the newly available is_expand input, modify the adapter's run logic to:

Iterate over the node's generator function
Gather successful generator results
On an error, push one sentinel into the results list and return
Or, treat the generator as pass/fail and any failure returns a single sentinel only
Allow sentinel value injection to a node, rather than skipping a node entirely. This is keyed on a node tag.

How I tested this
The test_parallel_graceful.py test file checks for:

Two kinds of failure in the Parallelizable node (early failure and failure with successful yields)
Setting fail_all_parallel even with successful yields
No Parallelizable failure, but checks that failures within the sub-dag are collected.
Sentinel injection rules are followed

Notes
The Parallelizable node gets a pre-treatment from _modify_callable that handles the list creation from the generator. This makes it hard to specifically handle per-iteration success/fail in the adapter. I opted to pull the original node callable from the partial object out to avoid touching the base implementation. This seems reasonable since it's an optional adapter, but if _modify_callable gets more advanced for an EXPAND node, this may break the expectations of the adapter.
It also only pulls out the callable if the user wants to get each successful output, otherwise it goes back to the original behavior.
If "inject" is a loaded term (such as in the resolve feature), please suggest a better one!
My intent is that, once this is accepted, to make a more advanced version that has a custom class for the sentinel that stores error traceback information and is easily type-checked for when the sentinel is injected.
Checklist

[ ] PR has an informative and human-readable title (this will be pulled into the release notes)
[ ] Changes are limited to a single goal (no scope creep)
[ ] Code passed the pre-commit check & code is left cleaner/nicer than when first encountered.
[ ] Any change in functionality is tested
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged / future TODOs are captured in comments
[ ] Project documentation has been updated if adding/changing functionality.

This is looking great, I'll be able to look in detail tomorrow. If you feel like adding an example (in the examples/ directory), that would be much appreciated! Otherwise no worries, I'm happy to add one later. I also think this would make a nice blog post (we are doing guest authors), so let me know if you're interested!).
Going to download and play around a bit to get a feel for it.

OK, played around, this is really cool. Here's my testing script btw -- you'll have to replace the project/name with your own and run hamilton ui. It's a fun way to explore what they'e doing:
from hamilton.htypes import Parallelizable, Collect
from hamilton import driver
from hamilton.lifecycle import GracefulErrorAdapter
from hamilton_sdk import adapters

import logging

logger = logging.getLogger(__name__)

class SpecificException(Exception):
    pass

def first_node(fail_first_node: bool = False) -> int:
    # First node that can fail
    if fail_first_node:
        raise SpecificException()
    return 1

def parallelizable_block(
        first_node: int,
        total_iterations: int,
        fail_iterations: list[int] = None) -> Parallelizable[int]:
    if fail_iterations is None:
        fail_iterations = []
    # Parallelizable block that can fail
    for i in range(total_iterations):
        if i in fail_iterations:
            raise SpecificException
        yield i

def computed_1(parallelizable_block: int, fail_computed_1: bool = False) -> int:
    # Computed node that can fail
    if fail_computed_1:
        raise SpecificException()
    import time
    time.sleep(1)
    return parallelizable_block + 1

def computed_2(computed_1: int, fail_computed_2: bool = False) -> int:
    # Computed node that can fail
    if fail_computed_2:
        raise SpecificException()
    import time
    time.sleep(1)
    return computed_1 + 2

def computed_3(computed_2: int, fail_computed_3: bool = False) -> int:
    # Computed node that can fail
    if fail_computed_3:
        raise SpecificException()
    import time
    time.sleep(1)
    return computed_2 + 3

def collected(computed_3: Collect[int], fail_collected: bool = False) -> int:
    filtered=[item for item in computed_3 if item is not None]
    if fail_collected:
        raise SpecificException()
    # fail in advance
    return sum(filtered)

def final_node(collected: int, fail_final: bool = False) -> int:
    if fail_final:
        raise SpecificException()
    return collected

if __name__ == "__main__":
    import __main__

    TOTAL_ITERATIONS = 10
    for params in [
        {"fail_first_node": True},
        {"fail_iterations": [3, 5]},
        {"fail_computed_1": True},
        {"fail_computed_2": True},
        {"fail_computed_3": True},
        {"fail_collected": True},
        {"fail_final": True},
    ]:
        try:
            fail_all_parallel = True
            dag_name = str(params.items()).replace("[", "").replace("]", "").replace(", ", "_").replace("'", "")
            tags = {
                **{key: str(value) for key, value in params.items()},
                **{"test_run": "2", "with_adapter": "true", "fail_all_parallel": str(fail_all_parallel).lower()}
            }
            print(f"Running with params: {params}")
            params["total_iterations"] = TOTAL_ITERATIONS
            tracker = adapters.HamiltonTracker(
                project_id=10,  # modify this as needed
<EMAIL_ADDRESS>                dag_name="initial_test",
                tags=tags
            )
            dr = (
                driver
                .Builder()
                .enable_dynamic_execution(allow_experimental_mode=True)
                .with_adapters(
                    tracker,
                    GracefulErrorAdapter(
                        error_to_catch=SpecificException
                    )
                )
                .with_modules(__main__)
                .build()
            )
            dr.execute(["final_node"], inputs=params)
        except Exception as e:
            logger.exception(e)

@JamesArruda nice work, almost there! Added some comments. Do let me know if you want me to take over getting it the last little bit (don't want to bog you down with nitpicks...).

@JamesArruda -- turns out the test failure is coming from the inclusion of @tag as an import in default.py (yes, really, I downloaded it and messed around).
This reeks of some sloppy dependency stuff elsewhere. I think this is due to a circular dependency, but I haven't been able to dig in. So, the cleanest way to do this is to move the decorator to somewhere in the function_modifiers package, and it'll be loosely coupled. Could also do a dynamic (inline) import. I think that might be cleaner with a TODO + reference to this conversation.
That said, I think this is looking pretty much ready, so I'm happy to merge this and then I'll take this the last mile. Sounds good?

@elijahbenizzy Sounds great, thanks!


DRAFT: Nxt 229 updates and fixes

Added BlogPost component
Added blog post slug page
updated snapshot tests from pageheader update
Updated StoryblokYoutubeEmbed to use react-lite-youtube-embed for optimised embeds
Spacing updates for existing components related to NewsArticle and BlogPost
Added first pass for storyblok iframe component
renamed files and directories with prepended Storyblok for Sb components

All looking good, only the debounce as the main thing to sort - other stuff is optional/TODOs for later


Accessibility management for Slate blocks and keyboard navigation focus

Now it is possible to leave a block using the Tab key.
Slate text containers re-arranged to give the tab a proper path (text input → drag & drop button → delete button)
Added a general ":focus-visible" to standardize the focus within the application.
a11y -  general fixes

@Wagner3UB did you try the list indenting behavior with the tab key? Also, I'd rather consider the Volto blocks editor as the equivalent of the "Word editor", where lines navigation is done using the arrow keys. It's not a form, so navigation does not have to be exclusively with the Tab key. Also, it's still accessible, AFAIK, if you can navigate with the arrow keys rather then Tab.

@tiberiuichim Interesting way of thinking, I will remember this in the future. And no, I hadn't seen the list indenting behavior.
I'm going to reintroduce that part of the code, however, I need to make some osservations:
With the current Volto code

We can only use the arrow down key twice. After that, the focus is lost, and no further actions are possible. This issue occurs within the first text block. You can test it by opening the editor and pressing the arrow down key three times on the demo site. If you click inside any other block, this behavior cannot be observed anymore, it only happens when you open the editor page. At the moment I don't know how to fix this behavior.
The trash can and the drag-and-drop buttons are not accessible via the keyboard (or perhaps I am unaware of how to do it)


Add generational GC?

Might be instructional, might make the code less clear.

Might be nice to learn something about GC, but has the cost of making the heap more complicated. Since the main goal of this project is having an STG, not a garbage collection, I'm closing this as out of scope.


Support @ sign in handle

Should with or without the @ sign be supported?
Right now, gives an error if @bmann.ca is used. Feels like including the @ optionally should "just work", seeing as how it's the name of the protocol!

I'm going to close this, while noting that pretty much everywhere does not include a leading @, which feels like it should be noted down somewhere :)


Items in offhand contribute to money, but aren't sold(quick sell)

Items in offhand contribute to money, but aren't sold when using quick sell. This means that people can sell items without the items being taken away, and are able to very easily earn tons of money with no effort.

Doesn't replicate on DynamicShop 2.10.6

Works in DynamicShop 2.10.6

PR #29 Should fix this. Test it with this jar


⚠ Bofrost.de has degraded performance

In 8241d04, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1391 ms

Resolved: Bofrost.de performance has improved in e020dd3 after 9 minutes.


FIX: time computation in case of decimation

@Eric89GXL I think the checkup should be corrected with the following?
(Also see https://github.com/mne-tools/mne-python/commit/c582c31e603087fbbd9c69763c00c8867fca5baf)

oh jam', this makes Xdawn test crash...
Before I go on debugging, @Eric89GXL, do you agree with the proposed correction?
The idea is that with decimation you necerally floor time selection as opposed to rounding it.

Rounding really should work I think. The idea is that tmin * raw.info['sfreq'] and tmax * raw.info['sfreq'] should both be very close to integers, so rounding their difference should be the right thing to do. Maybe this isn't preserved during decimation, in which case we should fix it there -- in other words, adjust tmin and tmax during decimation to match some integral factor of sfreq.


nixos/stalwart-mail: rocksdb as default storage

Description of changes
This sets RocksDB as the default storage backend for stateVersion >=
24.11. For previous stateVersions, the structured data and blobs
remain on SQLite and the filesystem respectively.
This is closer to the suggested upstream configuration for fully local
storage.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

is there a specific reason that we are preventing users easily to upgrade to rocksdb with stateVersion older than 24.11?
I mean preventing an accidental upgrade via stateVersion is absolute reasonable, but atm its not possible to use rocksdb when having a machine that is older. As we do not expect people to change their stateVersion, i have the feeling we are missing an option to flip to no longer use the legacy storage.

I had problems setting this as it still tried to set up the legacy blob storage (as its defined in the module like that) and also the preStart does not work correctly in such cases.
I would have expected something like that
    useLegacyStorage = mkOption {
      type = types.bool;
      description = ''
        Defines if the legacy storage should be used instead rocksdb
      '';
      default = versionOlder config.system.stateVersion "24.11";
    };

Which would to basically the same, but one could override that externally, in case one knows better, thats the reason why i am asking, if there was a specific reason not to use an option for that.
Is there a way to prevent the modules setting of the legacy storage with your code that i dont see atm?

Yeah the option would definitely not ideal, but as stalwart itself is not very stable yet, i personally would be fine in having breaking changes in the module, when its easier to migrate for the user(s).
but thx for the feedback. Ill try a bit more around, possibly i get it working anyways with the upstream (so nixpkgs) module.


How to set language in the map?

I'm wondering is there any way to set language that displayed in the map?
i tried the example on this repository, but it seems using not using English

If you're talking about the labels that are on the map then that will depend on the map tile provider you use. Their API might allow you to specify the language.

@rorystephenson I'm using open street map, is there any configuration that need to be set?
I'm stuck with the map api, where should i start, do i need to create an account, if yes how to integrate it with this library?

@firmlab This is working for the default OSM tile server (English labels):
              TileLayerOptions(
                  urlTemplate:
                      "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
                  subdomains: ['a', 'b', 'c']),

Also see here: https://wiki.openstreetmap.org/wiki/Tiles

Also check https://wiki.openstreetmap.org/wiki/Map_internationalization


Stop the Server?

Hi, Thanks for this, it's a nice boilerplate.
I cannot work out how to stop the server.
> npm stop dev
...
npm ERR! missing script: stop

Hope you figured this out - it should be stopping when you exit the process.

Closing this issue.


Get the fixie pipeline green

Fixie builds are currently failing. This pipeline needs some love.

Done https://rubygems.org/gems/chef_fixie/versions/1.0.8


luci-app-upnp: Update plugin title/menu to include PCP as supported

and revise wording

Revise wording, remove redundancies and mention IPv6 limitations
Mention UPnP IGD as UPnP is probably not specific enough
Include current wording in LUCI_TITLE for easy finding
Fix 4 multiple failing strings in translations and remove old comments

Updated title: UPnP IGD & PCP/NAT-PMP Service
Current title: Universal Plug & Play
Updated menu option: UPnP IGD & PCP/NAT-PMP
Current menu option: UPnP
Updated wording: port forwards (used in Network -> Firewall)
Current wording: redirects
Port Control Protocol (PCP) is the successor to NAT-PMP and has similar
protocol concepts and packet formats, but adds IPv6 support.
PCP standard:
https://datatracker.ietf.org/doc/html/rfc6887
https://en.wikipedia.org/wiki/Port_Control_Protocol
NAT-PMP std. (see 9.1 Simplicity - 9.3 for some diff. to UPnP IGD):
https://datatracker.ietf.org/doc/html/rfc6886
Port Mapping Protocols Overview:
https://github.com/Self-Hosting-Group/wiki/wiki/Port-Mapping-Protocols-Overview

The default build of miniupnpd has NAT-PMP/PCP baked in, correct? If so then I think we can say this is ready and merge it.

NAT-PMP/PCP baked in, correct

yes
41 file changed, many questionable changes.
I don't know if it worth it.

Only in exceptional cases. If wording changes, it's a strong signal that
should also happen for i18n. Retranslation is currently the only way to
ensure this.

You might just rename the i18n keys.
Now the rea lost

Ampersand is fine. It's space efficient and is synonymous. Leave it be 😆

Ampersand is fine. It's space efficient and is synonymous. Leave it be 😆

Should we use an ampersand for the title/description or should we use , or and there?

The sense of an ampersand is generally for coupled things, not to chain unrelated things together to save space. Leave the ampersand. Comma makes it seem like two unrelated things are in the same package.

The commit will fail formalities...
No committer name,  no signed-off-by line

Should we keep MiniUPnPd ACLs and MiniUPnPd settings or the simpler Service ACLs and Service Settings or just Settings? An update of the documentation is planned.

Service ACLs and Service Settings sits well with me, unless we must segregate settings based on which RFC we are talking about here.
Just commit subject and SOB to be fixed then.

As far I understood the Sign-off author is like a sign on a legal document. Thus you must sign it with a real name.
A few PRs that weren't merged because author doesn't want to expose it's name and email.
I hope this policy will be changed because some authors may not just value their privacy but it may be dangerous for them.
Anyway, if you can't set the real name then I or someone else can make the same PR but authored with own name. I hope you won't be resentful

The Linux community rule talks about a known identity that allows pseudonyms and I think the patches come there more indirectly and it's probably a more critical piece of software. Linux kernel documentation update of submitting-patches.rst

And those are the checks performed in the openwrt repos; identity, not Real Name. The links talk about because the sign-off needed to be something we could check back with. The issue in this case is the SOB line. Because not everyone uses github, I imagine this is why the recourse necessary to have a working email - "to check back with", however horrific that wording may be: a means of contacting the developer.

OK


Update hello-hybrid-key-trust-prereqs.md

typo

@DaniHalfin - can you please assist to check, approve and merge the content for this PR?
Thank you.

@kenwith - would you be able to merge the content of this PR? This is just a simple typo error. Thank you.


Running Simultaneous Agents?

Is it possible to configure DM Control, to run Agents simultaneously? For example, can I have 10 Walkers instead of just one? Is that possible from DM Control side and Mujoco side?
My motivation is doing something like ML-Agents (Unity), which allows running multiple environments at the same time and even multiple unity instances.

Do you mean multiple agents acting within the same simulation, or multiple agents acting in parallel within separate simulations?
For the former you could take a look at the soccer environments for an example of a multiagent environment implemented in dm_control. For the latter you could run multiple copies of your agent-environment interaction loop in separate threads or processes, or perhaps even distributed across multiple machines (Acme has some relevant examples).

In Acme, a relevant example of running multiple copies of the environment is implemented here. It leverages launchpad to run the environment copies in parallel in separate threads/processes.


when creating vm, send quota as empty object to rest-api instead of null

When adding new vm from template from web-ui, there is no
option to select quota, so it takes always the template quota.
This caused situation that user can't add a VM if not
authorized for the template quota, without having the
option to change it.
This change changes web-ui to send empty quota object to rest-api, so this situation can be handled properly in rest-api and backend
BZ url: https://bugzilla.redhat.com/show_bug.cgi?id=1991240

* in case the user is originally granted with the template's quota (either since he is an admin or since he granted that quota in 1st place) then the VM should be created with the template's quota instead of the 1st quota assigned to that user.
  This is most important for admins which use web-ui and usually have assigned with all quotas. The web-ui in that case should behave the same as webadmin.

That's not necessarily true
But anyway, we cannot really have everything without supporting quota properly in the vm portal
So if the admin wants that, the admin should create the VM from the webadmin..

@saifabusaleh please update the BZ url to https://bugzilla.redhat.com/show_bug.cgi?id=1991240 - I don't want us to spend time on over-specification so let's do our part and if this gets more complicated, the UX team can handle the VM portal side

@saifabusaleh please update the BZ url to https://bugzilla.redhat.com/show_bug.cgi?id=1991240 - I don't want us to spend time on over-specification so let's do our part and if this gets more complicated, the UX team can take over the VM portal side

Done.

@ahadas

That's not necessarily true - the template's quota says nothing about the quota of the vm
But anyway, we cannot really have everything without supporting quota properly in the vm portal
So if the admin wants that, the admin should create the VM from the webadmin..

As mentioned above. this regression is not relevant for admins only but for regular users as well, if they are assigned with more than one quota.
Before this fix: a user that is originally assigned with the template's quota can automatically create a VM via web-ui with that template's quota.
After this fix: a user that is originally assigned with the template's quota will always create a VM via web-ui with the first quota assigned to him in the list. He will never be bale to create a VM with other quotas assigned to him, even if they are assigned to the template.
So we fixed one problem but broke another one.
This can be handled on backend by verifying that the template's quota (if exists for non Blank) is assigned to the user before always choosing the first quota.
If you decide not to fix that on backend then we need to check if it's ok to have this regression,  Maybe we can live with this new behavior unless someone will complain...

In the old user portal we used to have a view for admins which was not implemented in the vm portal
So I don't think it's a fair assumption to think that admins really use the vm portal...

With new VM portal both admin/expert and non admin views were combined into one view that should support both type of users. We do know that admins use VM portal and we do allow this as part of the implementation, even though it's mainly used for regular users.
Anyway, the mentioned problem above is relevant for non admins as well.

That's not necessarily true - the template's quota says nothing about the quota of the vm
But anyway, we cannot really have everything without supporting quota properly in the vm portal
So if the admin wants that, the admin should create the VM from the webadmin..

As mentioned above. this regression is not relevant for admins only but for regular users as well, if they are assigned with more than one quota.
Before this fix: a user that is originally assigned with the template's quota can automatically create a VM via web-ui with that template's quota.
After this fix: a user that is originally assigned with the template's quota will always create a VM via web-ui with the first quota assigned to him in the list. He will never be bale to create a VM with other quotas assigned to him, even if they are assigned to the template.
So we fixed one problem but broke another one.

I agree that it introdcues a change in behaviour but I wouldn't consider this a regression since it's not a bug
There is no reason to believe that the quota on the template better fits the user - it might be that there's no more space or CPUs available on the template's quota and the first quota of the VM can accommodate the resources of the VM

This can be handled on backend by verifying that the template's quota (if exists for non Blank) is assigned to the user before always choosing the first quota.

I would rather prefer to avoid this kind of logic - there is really no sense in preferring the template's quota over any other quota that the VM has access to

If you decide not to fix that on backend then we need to check if it's ok to have this regression, Maybe we can live with this new behavior unless someone will complain...

+1
I think it would alright as users typically are not assigned with more than one quota and administrators have no reason to provision VMs from the VM portal (especially if they'd like to set the quota)
To put this effort in context - we never said that it's the best way to go.
The best way is to provide proper support for quota on the client side but as that requires significant amount of work and introduces extra complexity on a client that is designed to be simple, we look for a workaround - supporting quota in a reasonable way in a client that has no notion of quota

In the old user portal we used to have a view for admins which was not implemented in the vm portal
So I don't think it's a fair assumption to think that admins really use the vm portal...

With new VM portal both admin/expert and non admin views were combined into one view that should support both type of users. We do know that admins use VM portal and we do allow this as part of the implementation, even though it's mainly used for regular users.

I'd put it differently - instead of two views we now have a single view that doesn't have the advanced options admins were provided with using the user portal :)

I agree that it introduces a change in behaviour (in case the "first user's quota" is different than the template's quota) but I wouldn't consider this a regression since it's not a bug
There is no reason to believe that the quota on the template better fits the user - it might be that there's no more space or CPUs available on the template's quota and the first quota of the VM can accommodate the resources of the VM

+1

I think it would be alright as users are typically not assigned with more than one quota + administrators have no reason to provision VMs from the VM portal (especially if they'd like to have control over the quota) + quota is not that commonly used
To put this effort in context - we never said that it's the best way to go.
The best way is to provide proper support for quota on the client side but as that requires significant amount of work and introduces extra complexity on a client that is designed to be simple, we look for a workaround - supporting quota in a reasonable way in a client that has no notion of quota

+1

I'd put it differently - instead of two views we now have a single view that doesn't have the advanced options admins were provided with using the user portal :)

Which advanced options admins don't have except quota support :)?
The design and implementation should support both so it's not accurate...quota is an exception.
We'll merge this after https://gerrit.ovirt.org/#/c/ovirt-engine/+/116017/ is merged.

LGTM
Should be merged only after https://gerrit.ovirt.org/#/c/ovirt-engine/+/116017/ is merged.

merged


[FEATURE] New command to copy files from/to VMs

Is it possible to add feature to azure cli to copy files from/to VMs?
Something like:
az vm upload --resource-group rg --name vmname --from <localpath> --to <reomtepath>

@yugangw-msft I'd love it if we could consider this. It's a great feature, because for automation you don't want to use all those other tools AND you handle the non-public cases.

@squillace, let me see how much i can do

Thanks so much, of course. Lemme know. To flesh out the scenario a bit, the more basic functionality that is roughly speaking always required in real world scenarios can be shortened in any way, the more useful the CLI becomes and the happier the customer is with it. This one would replace getting the ssh endpoint, logging in and/or retrieving the credentials from KeyVault (where in the real world they should likely exist), and THEN using scp -- and that assumes an external ssh endpoint (which in the real world many people will simply not want).
yet the command is simple, and clean, and one of the critical tasks you will perform with a vm. In short, it's a real saver no matter whether you're automated or not.

Thanks for all the feedback. I have following ideas for review:

This command can implement most of SCP's functionalities, so I would just name as az vm scp
The command would expose following flags a. --ssh-private-key: default to `~/.ssh/id_rsa` since `vm/vmss create` also references it. It can take a file path, or keyvault secret id.
 b: --action <upload/download>: default to upload
 c. --local <file1> <file2> <folder1> (if download, then only accepts a single file path or directory, as many to many would be hard to get it right through command line)
 d. --remote <file1> <file2> <folder>  (if upload, then only take a single file path or directory)
 e: --recursive (when directory involved)
 f: --port (in case the port is different)

3. Examples:
   ```bash
    az vm -g rg1 -n vm1 --local ~/foo1.txt --remote ~/dest-dir
    az vm -g rg1 -n vm1 --action download  --local ~ --remote ~/dest-dir/bar.exe
    az vm -g rg1 -n vm1 --local ~/myweb/src --remote ~/websites --recursive
    az vm -g rg1 -n vm1 --local ~/myweb/src --remote ~/websites --recursive --ssh-private-key https://mmadeclitestkv.vault.azure.net/secrets/ssh-privates-key
   ```

Let me know any comments/suggestions; otherwise i will start to get things going

@khenidak that looks good to be at first blush. Whatchya think?

are we wrapping ssh? i think user expect this to work in private (non exposed to internet) VMs

@kkmsft  FYI..

Also, sure seems like a dupe of #5622 to me....

two birds one stone!

While i see ssh of value.. short cuts for connection and so on. The above request is not scp wrapper. User should be able to copy files from/to an Azure VM using only the cli without any configuration on the VM other than walinux agent. The entire process should be done via the fabric. i.e if i have contributor access to the VM resources (i can reset the password, right?) then i should be able to copy from/to vm

agree ^^

I'm just wondering, rather, that #5622 scenario would be largely solved by this. I don't want scp embedded here, either. Not the goal. Down/uploading easily through the fabric is the goal.

The implementation will not be the wrapper of SSH/SCP, and no dependencies on any external command. I chose the naming of scp just for better discoveries

That makes sense, but I'm concerned that if you do that and don't use copy, you'll get two things:

hey! This doesn't do everything scp does!
Hey! I just wanna copy files easily, what's the command for that? (newbies to the environment)

My guess is that copy-files or copy is best. @khenidak @kkmsft what do you think would be most obvious here? Do you think my concerns are valid?

For other questions, suggestions...
For the key/password, it can either come from local ~/.ssh, command arguments,  keyvault-key, or you can run "az vm user" to reset them and pass the new one to the command.
For private vm instances inside VMSS, by default, CLI enables inbound nat rule to enable SSH protocol, so the same command should work, but we will need to test it
For #5622, I am not convinced we need to support that much like ssh. External tools, to me, is sufficiently easy to use. I am fine to do scp functionality because it can help scripting.
A question here though, what does through the fabric mean here, particularly the fabric ?

For #5622, I think this MOSTLY solves the user's need.
by "through the fabric" here I mean what @khenidak refers to above in https://github.com/Azure/azure-cli/issues/5275#issuecomment-412147656: `if I have contributor access to the VM resources... I should be able to copy from/to vm." authentication/auth is run through ARM, is the way I would say it. Make sense? I'm quite sure you're doing this, but just to be clear....

@yugangw-msft where are we on this? As it's not an scp wrapper, and we don't want that, and I really don't think we should call it "scp", as that will drive users mad with irritation when it doesn't DO scp, but if it wraps scp, then it won't do what we're asking.
I note that I didn't respond to your comment above, external tools, to me, is sufficiently easy to use. I am fine to do scp functionality because it can help scripting. external tools are bad in this case. this ability, to use az to copy files through the aad auth mechanism onto the vm without any other tool or switch is what we're looking for. It's not about anything specific, either. Happy to write the formal spec if necessary.

I am pretty flexible on the naming thing :), as long as it is reasonable.
But we need to sort out how to implement this first. The most important scenario is to find the solution to exchange files with VMs w/o public ip. W/o SSH keys/passwords involved, one of the few options left, is the "run-command" API (a wrapper around the custom script extension). To get the file out there are 2 mechanisms I can think of"
1.  @kkmsft is using cat and dt to exchange the file content through stdout. This is a bit tricky and is  also hitting the API limitation that only 4K stdout can be returned from the API, so you have to split up a big file manually.
2. Use a common file share like storage accounts, as the bridge. CLI can generate a sas toke from the account and let the script in the VM upload to there, and then CLI will pull it down to local.
Other means you can think of? I am counting on you :)

I'm up to the challenge! Gimme a minute. :-)

@squillace / @yugangw-msft - any update on this?

We need compute service support to copy large file content from client machine to VM.

Has this been implemented? If so it would have been of great use.
As we had plans of using the "az vm scp" command within our existing GitLab CI/CD.

Any updates on this?  Seems like an important feature to have

It's a bit quiet here. Any updates on this?
As a workaround I'm base64 encoding the file, then i run a command to decode and save to a file. Do not use this, method if the content of the file is confidential, since it will appear in logs
sample powershell scripts on the host
$fileInBase64=[System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($fileContent))
$parms = @{
     'ResourceGroupName' = $resourceGroupName;
     'Name'              = $vmName ;
     'CommandId'         = 'RunShellScript' ;
     'ScriptPath'        = "decodeToFile.sh";
     'Parameter' = @{"arg1" = "$($fileInBase64)" ; "arg2"= "$($targetFileName)" }
}
$result = Invoke-AzVMRunCommand @parms

content of decodeToFile.sh:
#!/usr/bin/env bash

base64str=$1
location=$2

[ -z $base64str ] && echo "No base64 provided" && exit 1
[ -z $location ] && echo "No location provided" && exit 1

echo $base64str | base64 -d > $location

After reading @yugangw-msft answer, I implemented this for my needs (send a setup shell script to my VMs after I create it using ARM Templates and calling them from Templates in a VM extension) :
sas_token_expiry=date -u -d "10 minutes" '+%Y-%m-%dT%H:%MZ'
az storage account create --name "$sa_name" --resource-group "$rg_name" --location "$location" --sku "Standard_LRS"
sa_cs=az storage account show-connection-string -g "$rg_name" -n "$sa_name"
az storage share create --name "$fs_name" --account-name "$sa_name" --connection-string "$sa_cs"
az storage file upload -s "$fs_name" --source "$setup_file" --connection-string "$sa_cs"
sas_token=az storage account generate-sas --expiry "$sas_token_expiry" --permissions "r" --resource-types "sco" --services "bqtf" --account-name "$sa_name" --ip "$vm_ip" --connection-string "$sa_cs"
sas_token=$(echo "$sas_token" | jq -r '.')
setup_file_download_link="https://$sa_name.file.core.windows.net/$fs_name/$(basename $setup_file)?$sas_token"
This is far from being perfect but it can help waiting for an official functionality :)

Is this copy a file to my VM request forgotten?
It would be really helpful if there was a comman like "Invoke-AzVMRunCommand".
Maybe like: Invoke-AzVMCopyFile -ResourceGroupName 'rgname' -VMName 'vmname' -FileSourcePath 'Path/File' -FileDestinationPath 'Path/'
@yugangw-msft Do you know anything about if this will be once available?

Invoke-AzVMCopyFile -ResourceGroupName 'rgname' -VMName 'vmname' -FileSourcePath 'Path/File' -FileDestinationPath 'Path/'

@Segaras Hi, in fact, this is a PowerShell command. if you have requirements related to PowerShell, please submmit issue to https://github.com/Azure/azure-powershell/issues
Whatever, I can understand what you want to achieve, which requires the service team to support a REST to upload the file to VM from local.

We need compute service support to copy large file content from client machine to VM w/o public ip.

@fitzgeraldsteele Could you please take a look at this feature request?

Adding @Chase @.> from Client Tools PM team, @Ankit @.> from VM PM team who may have more informed opinion on this one.
Jerry
Steele
Microsoft
senior program manager
425.421.2566

From: Xing Zhou @.>
Sent: Thursday, September 15, 2022 7:14 PM
To: Azure/azure-cli @.>
Cc: Jerry Steele @.>; Mention @.>
Subject: Re: [Azure/azure-cli] [FEATURE] New command to copy files from/to VMs (#5275)
We need compute service support to copy large file content from client machine to VM w/o public ip.
@fitzgeraldsteelehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ffitzgeraldsteele&data=05|01|jerry.steele%40microsoft.com|efcc98be64e8400a2c0408da97892d25|72f988bf86f141af91ab2d7cd011db47|1|0|637988912669509969|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=iDU0q2oLspzVA4SodP4s4EM4t91bgtiZUk4CPyvCkOk%3D&reserved=0 Could you please take a look at this feature request?
—
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-cli%2Fissues%2F5275%23issuecomment-1248834086&data=05|01|jerry.steele%40microsoft.com|efcc98be64e8400a2c0408da97892d25|72f988bf86f141af91ab2d7cd011db47|1|0|637988912669822324|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=CmnCTShdhdzBY8Hcn2mxVI3FoOKx3blnTpLNJo5VkFg%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAABGQSCNHFP2RHUMUSPBCE3V6PJYBANCNFSM4ELKZH2A&data=05|01|jerry.steele%40microsoft.com|efcc98be64e8400a2c0408da97892d25|72f988bf86f141af91ab2d7cd011db47|1|0|637988912669822324|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=XdRp7PIUNBKPEaJsUqxOJQgukbdmgczVM7vVkcP1HwU%3D&reserved=0.
You are receiving this because you were mentioned.Message ID: @.***>

I often have setup with VM which are isolated from internet and this feature is very valuable

It makes me cringe to be doing it this way.  The PS1 file cannot have single quotes or $_.
For instance, this is acceptable in the file:
   $machine = $machines.Where({ $PSItem.Uri -eq $hostUri })
This is not:
   $machine = $machines | Where-Object { $_.Uri -eq $hostUri }
- task: AzureCLI@2
      displayName: 'Copy VM Script'
      inputs:
        azureSubscription: '$(AzureResourceManagerSC)'
        scriptType: 'pscore'
        scriptLocation: 'inlineScript'
        inlineScript: |
          $lines = Get-Content -Path './Pipelines/Environments/VMSetup.ps1'

          $command = {
            $lines = <VmSetup>
            $path = 'c:\temp\VmSetup.ps1'
            $lines | Out-File -FilePath $path
          }

          $commandScript = $command.ToString() -replace "<VmSetup>", ("@('" + ($lines -join "',  '") + "')")
          $commandScript = $commandScript.ToString() -replace """", """"""

          Write-Host $commandScript

          az vm run-command invoke --resource-group "$(ResourceGroupName)" --name "$(VMName)" --command-id RunPowerShellScript --scripts $commandScript

% az scp --help
'scp' is misspelled or not recognized by the system.

😞 (2024)

bump... +100 to add this feature, this is not only useful for private Virtual Machines in Azure but also for Azure Arc


YouTube

Originally posted by @Dogscat3831 in https://github.com/MediaBrowser/SamsungSmartTV/issues/59

Don't spam github issues, you will be removed from the site. And anyone seeing these here will know it's a scam and you will not benefit, only waste your time.


Refactoring and performance improvement

After a nice review from @ohookins, as n00b I learned a lot of stuff and now have better and clear idea on how to write some proper GO code.
TODO :

[x] Change content.CreateClient to contentful.New

[x] Use only one http.Client through all requests

[x] Make sure to Close respBody and return []byte instead of io.Reader

[ ] Implement backoff and retry

[ ] Construct urls strings using bytes.Buffer for better performance

It just occurred to me that instead of constructing URLs with buffers, you
are probably better off with some printf-style format strings then using
fmt.Sprintf when you need to "render" the actual URL. I've done this in the
past and it seemed reasonably clean.
On 6 Nov 2016 2:18 p.m., "Khaled Garbaya"<EMAIL_ADDRESS>wrote:

After a nice review from @ohookins https://github.com/ohookins, as n00b
I learned a lot of stuff and now have better and clear idea on how to write
some proper GO code.
TODO :

Change content.CreateClient to contentful.New
Use only one http.Client through all requests
Make sure to Close respBody and return []byte instead of io.Reader
Implement backoff and retry
Construct urls strings using bytes.Buffer
http://stackoverflow.com/questions/1760757/how-to-efficiently-concatenate-strings-in-go
for better performance

You can view, comment on, or merge this pull request online at:
https://github.com/Khaledgarbaya/contentful.go/pull/2
Commit Summary

Use only one http.Client, change CreatClient to New

File Changes

M contentful.go
https://github.com/Khaledgarbaya/contentful.go/pull/2/files#diff-0
(45)
M contentful_test.go
https://github.com/Khaledgarbaya/contentful.go/pull/2/files#diff-1
(2)

Patch Links:

https://github.com/Khaledgarbaya/contentful.go/pull/2.patch
https://github.com/Khaledgarbaya/contentful.go/pull/2.diff

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Khaledgarbaya/contentful.go/pull/2, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AAWGUGZJqoQ8LLcYAdqIPuE1lkcI2QKcks5q7dOvgaJpZM4KqjT0
.


Support markdown-it older than 5.1

In #6 the requirement for the token .attrSet() helper broke someone because they were on an older markdown-it than 5.1, where such support was introduced. Perhaps it would be a good idea to just implement the functionality inline, thereby making it possible to work on older installations?

fixed by #8


Restrict the maximum nesting level in the parser to avoid stack overflows

The basic idea is that we start a new nesting level whenever we consume or synthesize an opening bracket (<, {, (, [ or #if) and reduce it when we read the matching closing bracket. This should be a pretty simple indicator for the current nesting level that doesn’t require custom logins in productions. IMO the benefit here is that this notion of nesting level is easy to describe and explain.
Productions that are known to be able to overflow (I just took the ones that introduce StructureMarkerRAII in the C++ parser) can check remainingTokensIfMaximumNestingLevelReached and stop parsing if the maximum nesting level has been exceeded.
It turns out that a nesting level of 256 (which is the current maximum nesting level in the C++ parser) is totally fine in Release builds of the compiler, but debug builds fail with nesting levels > 30-ish.

Since lookahead cannot really bail out to prevent stack overflow, I rewrote skipSingle and skipUntil to work iteratively instead of recursively.

@swift-ci Please test

@swift-ci Please test macOS

@swift-ci Please test

@swift-ci Please test


Development branch - Alexa instructions - Interaction model

Refers to button below, but there is no button on this page. (Buttons seem to appear on next page)
Also, maybe use 'courier' / monospaced font instead on inverted color for text to be entered.
Suggest revisit of Alexa instructions to ensure instructions match developer console steps, page by page.

fixed in v2


Add the __detach() method to listeners and disallow explicit visibility qualifiers with resources

Purpose
$title.
Note:
This PR adds empty __detach() functions to all the std lib listeners. Appropriate implementations need to be added.
This PR also fixes and enables the tests in the org.ballerinalang.test.endpoint package (except for service start error return/panic).
Fixes https://github.com/ballerina-platform/ballerina-lang/issues/17607
Partially addresses https://github.com/ballerina-platform/ballerina-lang/issues/17680
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[ ] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

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

@@           Coverage Diff           @@
##           master   #17882   +/-   ##
=======================================
  Coverage   15.17%   15.17%
=======================================
  Files          46       46
  Lines        1206     1206
  Branches      188      188
=======================================
  Hits          183      183
  Misses       1009     1009
  Partials       14       14

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 f156c75...226729c. Read the comment docs.

Please check whether we can enable disabled test cases since the relevant PR is merged.

Enabled the panic test with 095aa65. Seems like the return error scenario cannot be tested yet, since a system exit happens.
Added a comment to track this.


AmazonBedrockPromptDriver fails with default max_tokens

[x] I have read and agree to the contributing guidelines.

Describe the bug
When using the AmazonBedrockPromptDriver, the request to bedrock:InvokeModel fails because the default value of None is passed to inferenceConfig.maxTokens and boto3 expects this to be an int if provided.
Error: WARNING:root:<RetryCallState<PHONE_NUMBER>24576: attempt #1; slept for 0.0; last result: failed (ParamValidationError Parameter validation failed: Invalid type for parameter inferenceConfig.maxTokens, value: None, type: <class 'NoneType'>, valid types: <class 'int'>)>
To Reproduce
import boto3

from griptape.drivers import AmazonBedrockPromptDriver
from griptape.structures import Agent

prompt_driver: AmazonBedrockPromptDriver = AmazonBedrockPromptDriver(
        model="us.amazon.nova-micro-v1:0",
        session=boto3.Session(
            profile_name=os.getenv("AWS_PROFILE"),
            region_name=os.getenv("AWS_REGION")
        )
    )

agent: Agent = Agent(prompt_driver=prompt_driver)

agent.run("Give me a haiku about Android Netrunner")

Expected behavior
Amazon Bedrock is invoked and a haiku is generated in response.
Also expect this path to fail with an error, not throw a warning and continue trying with backoff. Note the log above is log level WARNING and it enters RetryCallState. No retry will ever change the state of the incorrect parameter and so this should fail out.
Screenshots
n/a
Desktop (please complete the following information):

OS: Ubuntu
Version: Server 24.10

Additional context
Bedrock API reference defines inferenceConfig.maxTokens parameter as optional.
Suggest the Bedrock driver source inferenceConfig.maxTokens from the tokenizer's _default_max_output_tokens or to have the driver set self.maxTokens to the tokenizer's _default_max_output_tokens when maxTokens is not defined in instantiation. Problem seems to stem from the fact that self.maxTokens never gets a value other than None unless I set it manually during instantiation of the driver. Not sure why inference.maxTokens is getting a value of None when the unpack  should result in no maxTokens attribute being present at all.
I can see a warning during instantiation that my Bedrock model is not found and a default max output tokens is set to 1000: WARNING:root:Model us.amazon.nova-micro-v1:0 not found in MODEL_PREFIXES_TO_MAX_OUTPUT_TOKENS, using default value of 1000. It is not clear why there was no contingency in this code path to set the driver's maxTokens since maxTokens is the attribute sourced for the boto3 request. Perhaps this was overlooked.

My workaround is to set the max_tokens property during driver instantiation using the tokenizer's default max output tokens:
prompt_driver: AmazonBedrockPromptDriver = AmazonBedrockPromptDriver(
        model=os.getenv("AWS_BEDROCK_MODEL"),
        session=boto3.Session(
            profile_name=os.getenv("AWS_PROFILE"),
            region_name=os.getenv("AWS_REGION")
        ),
        max_tokens=AmazonBedrockTokenizer(
            model=os.getenv("AWS_BEDROCK_MODEL")
        )._default_max_output_tokens()
    )

Hey @TheRyanBurke, thanks for the detailed issue report! This is actually fixed on the dev branch via https://github.com/griptape-ai/griptape/pull/1328. And we're cutting a release today with https://github.com/griptape-ai/griptape/pull/1409.
Regarding the default max tokens warning, it is because we don't have an entry for us.amazon here. Updating your model to amazon.nova-micro-v1:0 will "fix" the warning, though admittedly this feels like a unsatisfactory workaround. I'd really much prefer to get out of the business of maintaining a map of models to token limits.

@TheRyanBurke I'm going to close this since #1409 has been merged. Please feel free to re-open if you feel something is still missing!


Flaky test: RestartProcessThatTerminatesAfterFileChange

This test fails occasionally with the following error:
System.TimeoutException : The operation at /_/test/dotnet-watch.FunctionalTests/AwaitableProcess.cs:89 timed out after reaching the limit of 30000ms.
   at Microsoft.AspNetCore.Testing.TaskExtensions.TimeoutAfter[T](Task`1 task, TimeSpan timeout, String filePath, Int32 lineNumber)
   at Microsoft.DotNet.Watcher.Tools.FunctionalTests.AwaitableProcess.GetOutputLineStartsWithAsync(String message, TimeSpan timeout) in /_/test/dotnet-watch.FunctionalTests/AwaitableProcess.cs:line 89
   at Microsoft.DotNet.Watcher.Tools.FunctionalTests.WatchableApp.GetProcessId() in /_/test/dotnet-watch.FunctionalTests/Scenario/WatchableApp.cs:line 62
   at Microsoft.DotNet.Watcher.Tools.FunctionalTests.NoDepsAppTests.RestartProcessThatTerminatesAfterFileChange() in /_/test/dotnet-watch.FunctionalTests/NoDepsAppTests.cs:line 69
--- End of stack trace from previous location where exception was thrown ---
------- Stdout: -------
The temporary test folder is /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1
Copying project /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/TestProjects/NoDepsApp to /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp
Restoring msbuild project in NoDepsApp
Project directory: '/mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp'
Started process 38651: /mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet restore
  Restoring packages for /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/NoDepsApp.csproj...
  Generating MSBuild file /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/obj/NoDepsApp.csproj.nuget.g.props.
  Generating MSBuild file /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/obj/NoDepsApp.csproj.nuget.g.targets.
  Restore completed in 241.95 ms for /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/NoDepsApp.csproj.
Process exited 38651
Process exited 38651 with code 0
Building NoDepsApp
Project directory: '/mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp'
Started process 38838: /mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet build
Microsoft (R) Build Engine version <IP_ADDRESS>72 for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.
  Restore completed in 46.46 ms for /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/NoDepsApp.csproj.
  NoDepsApp -> /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/bin/Release/netcoreapp2.2/NoDepsApp.dll
Build succeeded.
    0 Warning(s)
    0 Error(s)
Time Elapsed 00:00:02.08
Process exited 38838
Process exited 38838 with code 0
8/1/2018 5:58:52 AM: process start: '/mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet /mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tool/dotnet-watch.dll run --'
Waiting for output line [msg == 'Started']. Will wait for 120 sec.
8/1/2018 5:58:52 AM: post: 'watch : Running MSBuild target 'GenerateWatchList' on '/mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/NoDepsApp.csproj''
8/1/2018 5:58:52 AM: recv: 'watch : Running MSBuild target 'GenerateWatchList' on '/mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/NoDepsApp.csproj''
8/1/2018 5:58:52 AM: post: 'watch : Started '/mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet' with process id 39064'
8/1/2018 5:58:52 AM: recv: 'watch : Started '/mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet' with process id 39064'
8/1/2018 5:58:53 AM: post: 'watch : Process id 39064 ran for 1178ms'
8/1/2018 5:58:53 AM: recv: 'watch : Process id 39064 ran for 1178ms'
8/1/2018 5:58:53 AM: post: 'watch : Watching 2 file(s) for changes'
8/1/2018 5:58:53 AM: recv: 'watch : Watching 2 file(s) for changes'
8/1/2018 5:58:53 AM: post: 'watch : Started '/mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet' with process id 39224'
8/1/2018 5:58:53 AM: recv: 'watch : Started '/mnt/work/33bdfc1cae7b2a38/.dotnet/dotnet' with process id 39224'
8/1/2018 5:58:53 AM: post: 'watch : Running dotnet with the following arguments: run --'
8/1/2018 5:58:53 AM: recv: 'watch : Running dotnet with the following arguments: run --'
8/1/2018 5:58:53 AM: post: 'watch : Started'
8/1/2018 5:58:53 AM: recv: 'watch : Started'
8/1/2018 5:58:53 AM: post: 'Telemetry is: Disabled'
8/1/2018 5:58:53 AM: recv: 'Telemetry is: Disabled'
8/1/2018 5:58:56 AM: post: 'Running dotnet exec "/mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/bin/Release/netcoreapp2.2/NoDepsApp.dll"'
8/1/2018 5:58:56 AM: recv: 'Running dotnet exec "/mnt/work/33bdfc1cae7b2a38/modules/DotNetTools/bin/dotnet-watch.FunctionalTests/Release/netcoreapp2.2/tmp/ulsw05o5.5k1/NoDepsApp/bin/Release/netcoreapp2.2/NoDepsApp.dll"'
8/1/2018 5:58:56 AM: post: 'Process ID: 39472'
8/1/2018 5:58:56 AM: recv: 'Process ID: 39472'
8/1/2018 5:58:56 AM: post: 'Started'
8/1/2018 5:58:56 AM: recv: 'Started'
8/1/2018 5:58:56 AM: post: 'PID = 39472'
8/1/2018 5:58:56 AM: post: 'Exiting'
Waiting for output line [msg.StartsWith('PID =')]. Will wait for 30 sec.
8/1/2018 5:58:56 AM: recv: 'PID = 39472'
Waiting for output line [msg == 'Exiting']. Will wait for
...

Other tests within that build may have failed with a similar message, but they are not listed here. Check the link above for more info.
CC @Eilon,@muratg,@mkArtakMSFT
This issue was made automatically. If there is a problem contact @ryanbrandenburg.

Please use this workflow to address this flaky test issue, including checking applicable checkboxes and filling in the applicable "TODO" entries:

Is this actually a flaky test?

No, this is a regular test failure, fix the test/product (TODO: Link to commit/PR)
Yes, proceed below...

Is this test failure caused by product code flakiness? (Either this product, or another product this test depends on.)

[ ] File a bug against the product (TODO: Link to other bug)
Is it possible to change the test to avoid the flakiness?

Yes? Go to the "Change the test!" section.
No?

[ ] Disable the test (TODO: Link to PR/commit)
[ ] Wait for other bug to be resolved
[ ] Wait for us to get build that has the fix
[ ] Re-enable our test (TODO: Link to PR/commit)
[ ] Close this bug

Is it that the test itself is flaky? This includes external transient problems (e.g. remote server problems, file system race condition, etc.)

Is there is a way to change our test to avoid this flakiness?

Yes? Change the test!

[ ] Change the test to avoid the flakiness, for example by using a different test strategy, or by adding retries w/ timeouts (TODO: Link to PR/commit)
[ ] Run the test 100 times locally as a sanity check.
[ ] Close this bug

No?

[ ] Delete the test because flaky tests are not useful (TODO: Link to PR/commit)

This comment was made automatically. If there is a problem contact @ryanbrandenburg.

RunsWithIterationEnvVariable failed with about the same error.
This comment was made automatically. If there is a problem contact @ryanbrandenburg.

RestartProcessThatTerminatesAfterFileChange failed with about the same error.
This comment was made automatically. If there is a problem contact @ryanbrandenburg.

RunsWithIterationEnvVariable failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RestartProcessThatTerminatesAfterFileChange failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RestartProcessThatTerminatesAfterFileChange failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RestartProcessThatTerminatesAfterFileChange failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

Apparently FileSystemWatcher gets unhappy on some platforms when there are "too many" of them. Can we maybe reduce the parallelization of tests here?
Or, if this test isn't especially crucial to begin with, deleting the test could be fine...

That's sort of why I haven't deleted this yet. Restarting when files change is kind of the central feature of dotnet-watch. Seemed bad to deleted the functional test that validates this scenario.
I can try reducing parallelization.

Are there a lot of tests that use an actual FSW? Maybe we could drastically reduce those tests, and other tests should just simulate file changes?

Yes, there are lots of tests that use FSW. Simulating file changes is going to be an expensive rewrite of basically all of the functional tests.

Can we disable parallelization on the tests in here? Maybe that would help? @HaoK is doing that in another repo that is having FSW pains. If it doesn't slow the tests down too much, I'd say it's a reasonable workaround.

For reference, here's the Identity PR that @HaoK just sent: https://github.com/aspnet/Identity/pull/1944

RestartProcessThatTerminatesAfterFileChange failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RunsWithIterationEnvVariable failed with about the same error on 2.2.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

ChangeFileInDependency failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RunsWithIterationEnvVariable failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RunsWithIterationEnvVariable failed with about the same error on master.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

RunsWithIterationEnvVariable failed with about the same error on 2.2.
This comment was made automatically. If there is a problem contact ryanbrandenburg.

There were 1 failures with about the same error on 2.2:

RunsWithIterationEnvVariable

This comment was made automatically. If there is a problem contact ryanbrandenburg.

There were 1 failures with about the same error on 2.2:

RunsWithIterationEnvVariable

This comment was made automatically. If there is a problem contact ryanbrandenburg.

There were 1 failures with about the same error on 2.2:

RunsWithIterationEnvVariable

This comment was made automatically. If there is a problem contact ryanbrandenburg.

https://github.com/aspnet/DotNetTools/pull/497


[#3675] Fix livelock issue in MpscLinkedQueue

Motivation:
All read operations should be safe to execute from multiple threads which was not the case and so could produce a livelock.
Modifications:
Modify methods so these are safe to be called from multiple threads.
Result:
No more livelock.

@trustin @Scottmitch please review...
@gsoltis please check if this fix the problem you reported in #3675

@netkins build

@gsoltis do you have any updates?

Unfortunately, no updates yet from my end. The only thing I can add is that
a few more servers hit the issue, this time after about 2 weeks. Still
working on getting the fix into production.
On Mon, Apr 27, 2015 at 12:18 PM, Norman Maurer<EMAIL_ADDRESS>wrote:

@gsoltis https://github.com/gsoltis do you have any updates?
—
Reply to this email directly or view it on GitHub
https://github.com/netty/netty/pull/3684#issuecomment-96785246.

Ok thanks!

On 27 Apr 2015, at 21:26, Greg Soltis<EMAIL_ADDRESS>wrote:
Unfortunately, no updates yet from my end. The only thing I can add is that
a few more servers hit the issue, this time after about 2 weeks. Still
working on getting the fix into production.
On Mon, Apr 27, 2015 at 12:18 PM, Norman Maurer<EMAIL_ADDRESS>wrote:

@gsoltis https://github.com/gsoltis do you have any updates?
—
Reply to this email directly or view it on GitHub
https://github.com/netty/netty/pull/3684#issuecomment-96785246.

—
Reply to this email directly or view it on GitHub https://github.com/netty/netty/pull/3684#issuecomment-96787876.

@trustin please review as well

@trustin ping :)

@normanmaurer Looks goot to me. I wonder if the upstream already has a better fix for this issue. Did you have a chance to talk with him?

@trustin this is the upstream code:
https://github.com/JCTools/JCTools/blob/master/jctools-core/src/main/java/org/jctools/queues/BaseLinkedQueue.java#L108

@trustin that said as far as I know the upstream queue impl does not reuse "nodes" as head so I think we need to be extra careful, and that is why I think we should use my change ;)
WDYT ?

@normanmaurer OK. No worries then.

@trustin cool :) Cherry-pick then ?

@trustin btw let me also add an integer overflow check just to be 100%

cherry-picked into 4.0 (9f6e06dc439d6f27b44fc6a309f7b42471f460cf) , 4.1 (cf66edb3a10fa2bb60802e91f14565b551c08f97) and master (3642fc481896be54d1705d9389b45c44367d33b8)


[HotspotEditorModal] add unit tests to hotspotStateHook.js

What package is this for?

[x] React
[ ] Angular

Summary
Although the code in the hotspotStateHook.js is covered by the unit tests of the HotspotEditorModal it would probably be wise to add explicit unit tests to the actions exported.
Additional context Add any other context or screenshots about the feature
request here.
Specific timeline issues / requests
Do you want this work within a specific time period? Is it related to an
upcoming release?
NB: The core contributors will try to work with your timeline, but it's not
guaranteed. The earlier you make a request in advance of a desired delivery
date, the better!
Available extra resources
What resources do you have to assist this effort?
Carbon add-ons for Watson IoT is a collaborative system. We encourage teams to
build components and submit them for integration.

:tada: This issue has been resolved in version 2.143.0-next.4 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 2.143.0-next.4 :tada:
The release is available on:

npm package (@next dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


x/tools/gopls: auto-generate API diff for releases

From our team meeting: gopls auto-generates documentation for both its workspace/executeCommand API and its settings.
We should use this metadata to generate an API diff to attach to our releases, similar to how cmd/api works in the Go repo.
This may have helped in golang/vscode-go#1549
CC @hyangah @stamblerre

I'd like to try this out @findleyr, let me know if that's okay.

@danishprakash I believe @stamblerre already has an in-progress CL doing this.


Live secret key gets overriden bij live publishable key

On the credentials page of the stripe plugin in craft 3, the live secret key field is always the same as the publishable key field. It doesn't matter what is filled in in the live sk field, it is always the same as the live pk field.
I reinstalled the plugin, filled out all the credential fields correctly but this didn't fix it according to what was visible on the credential page. Although the value is probably in the database because a transaction was correctly executed after this reinstallation.

@GillisWerrebrouck fixed & released!


Errors installing

I am having trouble building this package on my desktop. It builds fine on my tablet in Termux using the same version of Janet (v1.30.0), both of which are being built from source with make && make install.
$ janet -v
1.30.0-ecc4d80a

$ uname -r
6.4.7-arch1-3

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=ada,c,c++,d,fortran,go,lto,objc,obj-c++ --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.2.1 20230801 (GCC)

$ make --version
GNU Make 4.4.1
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

$ sudo jpm install https://github.com/cosmictoast/janet-date.git
From https://github.com/cosmictoast/janet-date
 * branch            HEAD       -> FETCH_HEAD
HEAD is now at d92871b release 1.0.1
compiling src/tm.c to build/src___tm.o...
compiling tz/asctime.c to build/tz___asctime.static.o...
compiling tz/strftime.c to build/tz___strftime.static.o...
compiling src/main.c to build/src___main.static.o...
compiling src/time.c to build/src___time.static.o...
compiling src/util.c to build/src___util.static.o...
compiling tz/localtime.c to build/tz___localtime.static.o...
compiling tz/difftime.c to build/tz___difftime.static.o...
In file included from /usr/include/stdio.h:33,
                 from /usr/local/include/janet/janet.h:421,
                 from src/polyfill.h:2,
                 from src/date.h:3,
                 from src/tm.c:1:
src/compat.h:28:21: error: ‘struct tm’ has no member named ‘tm_gmtoff’; did you mean ‘__tm_gmtoff’?
   28 | #  define TM_GMTOFF tm_gmtoff
      |                     ^~~~~~~~~
src/tm.c:40:40: note: in expansion of macro ‘TM_GMTOFF’
   40 |         {"gmtoff", offsetof(struct tm, TM_GMTOFF)},
      |                                        ^~~~~~~~~
src/compat.h:31:19: error: ‘struct tm’ has no member named ‘tm_zone’; did you mean ‘tm_mon’?
   31 | #  define TM_ZONE tm_zone
      |                   ^~~~~~~
src/tm.c:43:38: note: in expansion of macro ‘TM_ZONE’
   43 |         {"zone", offsetof(struct tm, TM_ZONE)},
      |                                      ^~~~~~~
error: command failed with non-zero exit code 1
error: build fail
  in pdag [/usr/local/lib/janet/jpm/dagbuild.janet] (tailcall) on line 79, column 23
  in <anonymous> [/usr/local/lib/janet/jpm/pm.janet] on line 237, column 9
  in <anonymous> [/usr/local/lib/janet/jpm/pm.janet] on line 221, column 5
  in bundle-install [/usr/local/lib/janet/jpm/pm.janet] on line 219, column 3
  in install [/usr/local/lib/janet/jpm/commands.janet] on line 199, column 20
  in run [/usr/local/lib/janet/jpm/cli.janet] (tailcall) on line 88, column 9
  in run-main [boot.janet] on line 3883, column 16
  in cli-main [boot.janet] on line 4036, column 17

That's odd, it's as though the _GNU_SOURCE define did nothing.
Can you try building by hand with CFLAGS set to -D_GNU_SOURCE=1?
The explanation on what's going on:
Glibc (the libc arch uses, based on your uname) will dynamically show / hide the tm_gmtoff and tm_zone attributes (hiding being adding a __ to them) depending on GNU_SOURCE.
You can tell that's what's happening due to ‘struct tm’ has no member named ‘tm_gmtoff’; did you mean ‘__tm_gmtoff’?.

I'm experiencing the same issue and when I'm trying to build manually I'm getting the following error:
error: target "tz/localtime.c" does not exist and no rule exists to build it
  in errorf [boot.janet] (tailcall) on line 159, column 3
  in utd1 [/home/tionis/.local/lib/jpm/rules.janet] on line 83, column 31
  in visit [/home/tionis/.local/lib/jpm/rules.janet] on line 92, column 12
  in visit [/home/tionis/.local/lib/jpm/rules.janet] on line 91, column 7
  in visit [/home/tionis/.local/lib/jpm/rules.janet] on line 91, column 7
  in visit [/home/tionis/.local/lib/jpm/rules.janet] on line 91, column 7
  in build-rules [/home/tionis/.local/lib/jpm/rules.janet] (tailcall) on line 100, column 19
  in run [/home/tionis/.local/lib/jpm/cli.janet] (tailcall) on line 88, column 9
  in run-main [boot.janet] on line 3951, column 16
  in cli-main [boot.janet] on line 4104, column 17

@tionis re: building manually, please ensure you clone with submodules, as tz/ is one.
I'll try and take a look at this this weekend.

Oh right...
With the submodule cloned, I'm getting the compile error again:
compiling tz/difftime.c to build/tz___difftime.o...
compiling tz/strftime.c to build/tz___strftime.o...
compiling src/util.c to build/src___util.o...
compiling tz/localtime.c to build/tz___localtime.o...
compiling src/main.c to build/src___main.o...
compiling src/polyfill.c to build/src___polyfill.o...
compiling src/time.c to build/src___time.o...
compiling src/tm.c to build/src___tm.o...
compiling tz/asctime.c to build/tz___asctime.o...
generating meta file build/date/native.meta.janet...
In file included from /usr/include/stdio.h:34,
                 from /home/tionis/.local/include/janet.h:442,
                 from src/polyfill.h:2,
                 from src/date.h:3,
                 from src/tm.c:1:
src/compat.h:28:21: error: ‘struct tm’ has no member named ‘tm_gmtoff’; did you mean ‘__tm_gmtoff’?
   28 | #  define TM_GMTOFF tm_gmtoff
      |                     ^~~~~~~~~
src/tm.c:40:40: note: in expansion of macro ‘TM_GMTOFF’
   40 |         {"gmtoff", offsetof(struct tm, TM_GMTOFF)},
      |                                        ^~~~~~~~~
src/compat.h:31:19: error: ‘struct tm’ has no member named ‘tm_zone’; did you mean ‘tm_mon’?
   31 | #  define TM_ZONE tm_zone
      |                   ^~~~~~~
src/tm.c:43:38: note: in expansion of macro ‘TM_ZONE’
   43 |         {"zone", offsetof(struct tm, TM_ZONE)},
      |                                      ^~~~~~~
error: command failed with non-zero exit code 1
error: build fail
  in pdag [/home/tionis/.local/lib/jpm/dagbuild.janet] (tailcall) on line 79, column 23
  in run [/home/tionis/.local/lib/jpm/cli.janet] (tailcall) on line 88, column 9
  in run-main [boot.janet] on line 3951, column 16
  in cli-main [boot.janet] on line 4104, column 17

Can you tell me a bit more about what the platform is?
I can't reproduce this locally, so having something (anything, really) to go off would be nice.

@tionis @nstgc should be fixed with https://github.com/CosmicToast/janet-date/commit/3e16aeb94538d20f40e54366e8f9fe3a0e22b56c
please verify
makes sense I'd never stumble upon it, since it's GNU-specific (thank you GNU very cool)
I'll close once it's confirmed ok or if there's no activity for a while.
Then tag a release.

Now it compiles fine for me and seems to work as expected.
Thanks for looking into this!

Tagged v1.0.2.


[Bug]: Docs SolidStart guide broken url

What happened?
On the Getting started page, the SolidStart guide url is not redirecting to the correct page:
Continue setting up with the [SolidStart guide](/solidstart/server)

should be:
Continue setting up with the [SolidStart guide](/solid)

What did you expect to happen?
Redirect to the correct page :)
Version
latest
Reproduction Steps
No response
Reproduction Repository
No response
Relevant log output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Should be fixed now!


Update README.md

Adding URLS

Hello @rishiabee , I see you wanted to add your URLs but closed the PR? Want me to reopen it and accept the changes?


[Go Live] [Oct 05]

Push to live

Docs Build status updates of commit 90d0dc1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/assets/images/tdp/Screen4.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/TDP_1.PNG
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/TDP_2.PNG
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/screen2.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/screen3.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp-me-add-command.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp-me-bot.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp-me.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp_capabilities.PNG
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp_configure_1.PNG
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp_home_1.png
:white_check_mark:Succeeded
View

msteams-platform/assets/images/tdp/tdp_tools_1.PNG
:white_check_mark:Succeeded
View

msteams-platform/get-started/get-started-dotnet-app-studio.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


[Auto-generated] Check & update dependencies (pyproject.toml)

Update dependencies (pyproject.toml)
Automatically created PR based on the 'CI - Check pyproject.toml dependencies' workflow in SINTEF/ci-cd.

Codecov Report

Merging #98 (b20bb3e) into ci/dependency-updates (b9fe7ab) will not change coverage.
The diff coverage is n/a.

@@                  Coverage Diff                   @@
##           ci/dependency-updates      #98   +/-   ##
======================================================
  Coverage                  53.69%   53.69%
======================================================
  Files                          3        3
  Lines                        311      311
======================================================
  Hits                         167      167
  Misses                       144      144

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


merge master back to develop

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 55.17%. Comparing base (b94f78f) to head (7d42251).
Report is 3 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop      #16      +/-   ##
===========================================
+ Coverage    55.01%   55.17%   +0.15%
===========================================
  Files           79       79
  Lines         4175     4176       +1
  Branches       462      461       -1
===========================================
+ Hits          2297     2304       +7
+ Misses        1878     1872       -6

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


Transition away from Lagrangien system ?

The problem with solving lagrangien equations appears if a mass is zero ==> divide by zero.
I assume that close to zero, there are conditionning issues

[ ] rewrite equations didiving by redondent masses

[ ] How does this play with symmetries ?

Is this moot thanks to diagonal changevar (except when a mass is exactly zero)?

Yes


Allow deployment from none main branch. Disable cloudtrail lake resou…

Issue #, if available:
https://github.com/aws-samples/iam-identity-center-team/issues/247
Description of changes:
This pull request primarily focuses on improving the deployment scripts and cloud formation templates to support multiple branches in the application deployment process. The changes allow the use of different branch names instead of hardcoding the main branch. The most significant changes include the addition of a new parameter for branch name in deployment scripts and templates, and the modification of the Amplify branch name and tags to use the new parameter.
Changes to deployment scripts:

deployment/cognito.sh: Added a default value for BRANCH_NAME if it's not set and used it to construct amplifyDomain. Also, changed the details.json file reference to a variable. [1] [2]
deployment/deploy.sh: Similar to cognito.sh, added a default value for BRANCH_NAME if it's not set and used it in several places including the git push command and cloud formation deploy command parameters. [1] [2] [3] [4] [5]
deployment/integration.sh: Added a default value for BRANCH_NAME if it's not set and used it to construct amplifyDomain. [1] [2]

Changes to CloudFormation templates:

amplify/backend/custom/cloudtrailLake/cloudtrailLake-cloudformation-template.json: Removed a condition from the CreateEventDataStore function.
amplify/backend/custom/s3bucketSecurity/s3bucketSecurity-cloudformation-template.json: Added an Environment section to include the BACKEND_ENV variable and updated the ZipFile section to use the os module to get the BACKEND_ENV value.
deployment/template.yml: Added a new parameter branchName with a default value of main and used it in multiple places including AmplifyBranch properties and TriggerBuildLambda tags. [1] [2] [3] [4]

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Updated with latest from main.


Doesn't compile in XCode: "'tr1/memory' file not found" error

Xcode complains to:
#   include <tr1/memory>

in common/_Config.h

+1
It happened to me. OSX 10.11.2 (15C50), Xcode Version 7.2 (7C68);
C++ Dialect = GNU++14 [-std=gnu++14]
C++ Standar Lbrary = libc++ (LLVM C++ standard library with C++11 support)


Add source for typelist scraper (db and blacklist updater too, maybe)

we’re manually updating these rn but would be better to have a portable script (python?) so the process is open and data can be refreshed manually by library users

#64


[BUG] Docker deployment failing

Environment
Self-Hosted (Docker)
Version
2.0.7
Describe the problem
Tried running Dashy on docker-compose with the provided config, but it failed with error:
Using Dashy V-2.0.7. Update Check Complete
✅ Dashy is Up-to-Date

-  Building for production...
 WARN  A new version of sass-loader is available. Please upgrade for best experience.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
error Command failed with signal "SIGKILL".
ERROR: "build-watch" exited with 1.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

It is not a compose issue, I can reproduce the issue just by running docker run -p 8080:80 lissy93/dashy (the simplest docker example provided in the docs).
Additional info
No response
Please tick the boxes

[X] You are using a supported version of Dashy (check the first two digits of the version number)
[X] You've checked that this issue hasn't already been raised
[x] You've checked the docs and troubleshooting guide
[X] You agree to the code of conduct

I've not seen this before, and don't think it's an issue with Dashy.
The only think I can think of, is that you've not assigned enough memory. But without more info, it's not possible to help any further.

I allocated more memory and that seemed to do the trick. Thanks!


Work with Ghostery extension

When remote script fail to load or buttons don't initialize correctly, the bare links should still be clickable.

This repository has been moved into an unmaintained state and as such all open issues and pull requests will now be closed!
We’re happy to link to forks!


When using SQL template that uses a field that ends with "D", the SQL command is incorrect

In case you try to use a SQL template where the last column ends with "D", e.g.:
DELETE FROM [schema].[TestTable] WHERE IssueID = @IssueID;
SQLSimplePS will generate incorrect SQL like this (the "D" got deleted):
DELETE FROM [schema].[TestTable] WHERE IssueID = @IssueI;
This seems to be related to the TrimEnd(" AND ")  command used in SQLSimplePS.psm1

Fixed in 1.7.2