Remove ipyleaflet dependency from test

Not sure it adds anything to the test except more stuff to install which makes the test slower.

I think this is the only place we test that notebook extensions work. These two lines don't do the actual install - that's in requirements.txt. We should probably just keep these.

If this is the only place we test this we should keep it. Note though that the requirements.txt is deleted in this PR.

Ah, fair. I think we should keep it because we aren't testing notebook extensions anywhere else.

Closing this then. Maybe in the future we can investigate if there is a notebook extension with no dependencies that we can use in tests to speed up install times.


Communication plan: Rikolti update to contributors at SCA

Outline/Notes: https://docs.google.com/document/d/10X3W0wNz3HbNa4iUnpDVdsQOHGi6jMwgTGXO_WpzUTE/edit#
Slides: https://docs.google.com/presentation/d/1zk_FQkkbKFuxSLk4XWCOE055OL-osD9BUxHpwlFZFeU/edit#slide=id.p

Presented on Friday, April 7th at the Society of California Archivists meeting.


Store styles

Changes

Made the FREE SHIPPING badge a label so that it can be clicked to toggle free shipping
Changed the listingCard hover event to be less overwhelming
Changed the listingCard edit/delete buttons to be less overwhelming
Added a listingCard transition on hover
Changed the hero image to stretch the full width (background-size: cover + center position)
Changed the modal/overlay background to inherit the secondary color as the background
Cleaned up some spacing issues in a few places
Cleaned up some typography stuff
Set the secondary color in a few places it was missing
Radio button labels are now bold when active
Updated the user navigation
Updated the modal/overlay styling a bit

I think you need to rebase against the latest code since Josh's stuff isn't in there.

I went ahead and rebased it for you.

@morebrownies there's some weird css stuff on the listing delete button.

Thank you for the rebase. I'll take a look at the css issue.

@hoffmabc was that photo really necessary? I don't think I want to know what item that listing is offering.

Just a moment of brevity @rmisio

Ok I fixed the css issue. This should be ready for review

@morebrownies another border issue

@morebrownies Could you also style the Deleting and Deleted state of the listing card? You could see them by applying .listingDeleting or .listingDeleted to the .listingCard element.
The styles were very much placeholder styles before, but now, with the removal of the overlay panel, they are even worse:
before:

now:

Anyhow, they're important for a few reasons:
a.) The delete is an async process and can complete at any time - the user may be happily scrolling further down the list when the delete completes, so we don't want to just remove the item having the page jump abruptly.
b.) Removing a listing may affect filters, e.g. a category may need to be removed from the cat filter. Having this update on the fly is a bit of a can of worms to make the experience smooth, so we've decide to take the approach of popping in a message urging the user to refresh:

c.) The delete could be initiated elsewhere, namely the listing detail modal. If it takes a bit, the user could close the modal landing back on the store. We would want a "deleting" state so the user understands the listing is in the process of being deleted.

@morebrownies FYI: The fact that you removed the overlayPannelInner element from the markup is a bit problematic because now when you click on of the icons, e.g. Edit, it not only opens the Edit modal, it also opens the Detail modal. This is because a click is happening on the icon (causing the Edit modal to open) but also bubbling up to the card (causing the Detail modal to open). The overlay panel was preventing the latter from happening.
Anyhow, let's fix the Deleting and Deleted styles first and depending on how that is fixed, I will either put in a patch to fix this issue or advise you on possible approaches (maybe we'll even resurrect the overlay panel, but with a transparent bg...).

I broke out a few of these requests into separate issues. #124 #125
@rmisio I'll take a closer look at overlayPannelInner in a few.

@morebrownies Ok, but I don't think we could merge this request until #124 is addressed in some way, because without the overlay panel the deleting states get washed out and appear broken. Check out Brians firestorm in Slack (lol).

I'm going to add overlayPannelInner back, but styling the delete state I'll do later.

Thanks for the detailed write up @jjeffryes. I think it will be more efficient for me to close this PR and open issues for things that need to be tweaked in client. I have zero bandwidth to write code that meets our standards.

I think this PR could be patched up in a reasonable amount of time, and it would be a good experience. But it's up to you.
There are definitely a lot of intricate things going on that it takes some time to get used to, we can do a walkthrough some time if you want. That'd probably be good for everyone.

I'm going to take a different approach. Instead of trying to knock out 20 style issues in one PR, I'm going to open issues in GH first and then write small PRs to address 1 or 2 of them at a time.

Roger that.


Standardize recommended format for 'spatial coverage'

Per discussion in the metadata interest group - it might be helpful to standardize the field dct_spatial_sm (Spatial Coverage). Current documentation recommends using GeoNames as a thesaurus and formatting as: "Philadelphia, Pennsylvania, United States."
These are other formats that are in use in the community:
For U.S. / Canada / Australia:

city, state/province
county, state/province
state/province

For non-U.S.:

city, country
region/province, country
country

Factors to consider:

Including "United States" can be too wordy and is often omitted for items within US unless they are truly nation-wide
Several institutions are using custom scripts to automate GeoNames extraction, but there are multiple levels (fcodes) which could be used to build this field and each institution is using different combinations. Example for GeoNames ID 5190404:

PPL = Franklinville
ADM3 = City of Philadelphia
ADM2 = Philadelphia County
ADM1 = Pennsylvania
PCLI = United States

The dct_spatial_sm field can take multiple values in order to reference these different scales as separate geographic entries, e.g.: "dct_spatial_sm": [      "Franklinville, PA",      "City of Philadelphia, PA",      "Philadelphia County, PA"  ]
Using URIs instead of string text would provide consistency, disambiguate duplicated place names, and might allow referencing multiple sources (e.g. LC and GeoNames); the URIs could be used in faceting but a different label shown in the UI

"Using URIs instead of string text would provide consistency" this would be a new field

Note: BTAA adopted the FAST ID format, (Wisconsin--Madison)


Bug: Moving the left stick back to up position drops sprint

Describe the bug
This is a leftover issue in #42.
In analog movement mode, moving the left stick back to up position while maintaining the full stick push drops the sprint.
To Reproduce
Steps to reproduce the behavior:

Enable sprint toggle.
In analog movement mode, enable sprint.
Tilt the stick a bit while maintain a full push and move back to up position.
See the sprint drop.

Expected behavior
Sprint should not drop in this case.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Any
Minecraft: 1.19.2
Fabric: Any
Mods: Any
Version: 1.7.1
Branch: Release

Additional context
Add any other context about the problem here.

Also having this issue.


file_put_contents(/var/task/vendor/wnx/sidecar-browsershot/src/Functions/../../resources/lambda/NotoColorEmoji.ttf): Failed to open stream: Read-only file system

After upgrading to the latest version, I cannot run sidecar:deploy --activate on Laravel Vapor anymore.
This is the error: file_put_contents(/var/task/vendor/wnx/sidecar-browsershot/src/Functions/../../resources/lambda/NotoColorEmoji.ttf): Failed to open stream: Read-only file system

Haven't used Laravel Vapor before, but I assume the code to download the font to a local filesystem fails. As Vapor is AWS Lambda, there is no permanent filesystem.
Then it seems we have to bundle the font in the package itself and keep it up to to date. Will fix this in the coming hours.
Thanks for reporting and sorry for the trouble this caused.

Haven't used Laravel Vapor before, but I assume the code to download the font to a local filesystem fails. As Vapor is AWS Lambda, there is no permanent filesystem.
Then it seems we have to bundle the font in the package itself and keep it up to to date. Will fix this in the coming hours.
Thanks for reporting and sorry for the trouble this caused.

No worries, thank you so much for the quick response :D

I've just tagged v1.6.3 that resolves this issue. The font is now bundled in the package.


Added MakeEqual.cpp

Question Link: https://www.codechef.com/submit/MAKEEQUAL

@AbhishekRana21 Seems to be invalid algo


[1.20] Books not enchantable

When the Enchantment module is enabled, books always show “limited enchantability” in an enchantment table.
Also breaks enchant_with_levels on books, so looted books just appear as “enchanted book” with no enchants.
Tomes, including tome of the others, all seem to work fine.
Minecraft 1.20.1
Zenith 0.1.8
No log output on loot table resolution.

Fixed in 0.1.9


Add support for Backstage's new frontend system

This PR adds support for the new frontend system by exposing entity cards and the API as extensions.

Moving this PR to the community plugins version: https://github.com/backstage/community-plugins/pull/797


Convert ScheduledTask to a struct to reduce allocations for scheduling

Motivation:
In my previous PR https://github.com/apple/swift-nio/pull/2009, I added baseline performance and allocation tests around scheduleTask and execute. After analysing, the various allocations that happen when scheduling a task there were only a few that could be optimized away potentially.
Modifications:
This PR converts the ScheduledTask class to a struct which will reduce the number of allocations for scheduling tasks by 1. The only thing that needs to be worked around when converting to a struct is giving it an identity so that we can implement Equatable conformance properly. I explored two options. First, using an ObjectIdentifier passed to the init. Second, using an atomic counter per EventLoop. I went with the latter since the former requires an additional allocation in the case of calling execute
Result:
scheduleTask and execute require one less allocation

@swift-nio-bot test perf please

@swift-nio-bot test perf please

@swift-server-bot test this please


adding broker shortcut

Please avoid links to non-public repositories like jive.

Hi @ssteinbuss ! Valid point, let's wait until we have a published specification document.

This pull request is deprecated. Please create a new pull request including link to Meta data Broker Specification as decided in IDSA-TSC on 2020-11-25


Ft 347 disable phone from sleeping

Which Issue was this PR made for?

Closes #347

What is within the scope with this PR

Adding Toggle component
Adding no sleep functionality in mobile

Other sidenotes that reviewer should be aware of

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com

AUTOMATED: Deployed to https://pr-352.dev.mochatto.com


Fix success callback check for generated sourcemap

This PR fixes an undefined sourceMap variable.
Fixes https://github.com/dlmanning/gulp-sass/issues/166.

Woops. Thanks!


chore: update

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign lovepocky
You can assign the PR to them by writing /assign @lovepocky in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@lovepocky: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pr-build
c2a2083d719e729e7bf1f0002295fb72b045f017
link
/test this

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@lovepocky: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pr-build
d6481c8be4573c6334c4c6dbaa24f045f6660b88
link
/test this

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@lovepocky: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

pr-build
f7624228ec324b9d3e008828fd2a70b26cd3b79c
link
/test this

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

:star: PR built and available in a preview lovepocky-jx3-another-node-http-pr-1 here

:star: PR built and available in a preview lovepocky-jx3-another-node-http-pr-1 here

:star: PR built and available in a preview lovepocky-jx3-another-node-http-pr-1 here


Removed tweeting

Fixes #278

Coverage increased (+1.2%) to 82.238% when pulling 88d9918b1786cf483714d985b82a1fb5af92c088 on 278 into d950b3cc0d26162c6ee0d154f28910d2350457dc on master.

@rultor merge it

@rultor merge it

@amihaiemil OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge it

@amihaiemil Done! FYI, the full log is here (took me 3min)


Can't switch between text and html formats in Thunderbird when using embed

This bug is related to ticket #34 and #77.
I am trying to create a multipart/alternative email with Swift 4.0.5 with a text section and html section with embedded images.
My code looks similar to:
@@@
$message = Swift_Message::newInstance();
$message->addPart("Test text body", 'text/plain');
$cid = $message->embed(Swift_Image::fromPath("test.jpg"));
$message->addPart("Html body <img src="$cid" />", 'text/html');
@@@
When viewing the sent message in Thunderbird 3, I see the HTML version with embedded images.  However if I change Thunderbird to view the plain text version, I see a Thunderbird-gernerated plain text version of the HTML, not the plain text part I added.
In Swift 3, I was able to use Thunderbird to view the html and plaintext versions.
In Swift 4.0.5, the message source looks like:
@@@
Content-Type: multipart/alternative;
boundary="a"
--a
Content-Type: text/plain
Test text body
--a
Content-Type: multipart/related
boundary="b"
--b
Content-Type: text/html
...HTML...
--b
Content-Type: image/jpeg
...JPEG...
--b
--a
@@@
In Swift 3.3.3, the message source looked like:
@@@
Content-Type: multipart/related;
boundary="a"
--a
Content-Type: multipart/alternative;
boundary="b"
--b
Content-Type: text/plain
...PLAINTEXT...
--b
Content-Type: text/html
...HTML...
--b
--a
Content-Type: image/jpeg
...JPG...
--a
@@@
Original creation date: 2009-12-31T21:44:39Z
Original reporter: Brandon
Original ticket: http://swiftmailer.lighthouseapp.com/projects/21527/tickets/119

I'm closing this issue as it's going to be fixed by Symfony Mailer/Mime, which will replace Swiftmailer eventually.


[Question] How to apply forces to bodies inside of a composite?

Syntactically, how could I apply forces to bodies inside of a composite? Is this even possible?
Thanks

Sure, like this Body.applyForce(composite.bodies[i], { ... }

I'm trying something like this :
Matter.Body.applyForce(population[0].comp.bodies[0] , {position : { x : 100, y :100}} , {force : {x : 100, y : 100}}
and it doesn't seem to be applying.
my console isn't throwing any errors.
Thanks for your help!

For reference , I am using p5.js as my renderer, and once the force is applied the body disappears

This is the object

The force is far too large, try something like { x: 0.01, y: 0.01 }.

Hey, I figured out the issue. {position : { x : 100, y :100}} should just be {x:100, y:100} and the same with the force vector. Thanks


Intellisense not working in second window

I use the C# extension regularly in order to run code, view where methods are referenced, etc., but when I open a second window for Visual Studio Code, those features do not work in the new window (as seen in the image below). This feature would be very helpful for looking through multiple C# files at once. Is this a common problem or only something that only I am running into? Is there a fix that I can do?

Thank you for your help!
Versions and such:
Windows 10 Enterprise 64-bit
Visual Studio Code: version 11.37.1
C# Extension: version 1.21.0

@AutomationMusician I use the extension regularly and definetly that is not the case. In the window on the right have you opened Program.cs along with the associated csproj or just the file ?
If the vscode workspace that is opened doesn't include a project, the files in the workspace are treated as "Miscellaneous files". In such a case, intellisense should light up once you start editing the files. Ca you try to edit the file and see if intellisense works ?

I was not in a workspace containing a .csproj file, so I tried editing the file and unfortunately intellisense did not start working. However, when I opened a folder containing a .csproj file and waited a few moments, intellisense started working. All of the files that I am working on are associated with a project, so this will not be a problem.
Thanks for your response. It was very helpful!


Theme customization: Ability to override the comment function

Search Terms
customization custom theme comment comments custom tags
Problem
I am trying to customize the default theme (0.23.21) with the new plugin system but I can't override/customize/modify the output of tags of the rendered HTML. I can think of the following 4 ways on how to override/extend this:

override the comment function of the DefaultThemeRenderContext class by copy-paste'ying its code
modify the returned JSX from the comment function of the DefaultThemeRenderContext class
manipulate the HTML DOM at runtime using javascript
create an entire new Theme from scratch

For the 1st: There is no way with the public API to override the functionality of the comment/tags rendering because the comment method of the DefaultThemeRenderContext uses two internal functions, displayPartsToMarkdown and camelToTitleCase, that are not exported via the public exports of TypeDoc. Of course I can simply copy/paste these functions and use them instead but that will result in a very fragile customization which will need maintenance efforts with every update of TypeDoc in order to keep up with any breaking changes. I would like to avoid this as much as possible.
For the 2nd: It is very cumbersome and against all JSX philosophy/recommendations/best practices (JSX is supposed to be immutable and must stay immutable). It would also have the same issue with updates of TypeDoc.
3rd "solution", is not really a solution because it is not theme customization but complete developing of a new theme. This requires an enormous effort to develop and it would also have the same issue with updates of TypeDoc.
The 4th solution seems more feasible than the rest but it also has problems. It requires big effort and would also have the same issue with updates of TypeDoc.
Suggested Solution

I suggest that TypeDoc officially export the functions  (displayPartsToMarkdown and camelToTitleCase) that comment uses in order for the customization to be easier and more robust for in cases of TypeDoc updates.
Or refactor the comment function in order to make it easier to override and customize the rendering of the comments and tags.
Of course, I may am missing something here and there is another way to be able to customize the tags/comment rendering without extensively overriding the TypeDoc internal code that result in fragile customizations.

What exactly are you trying to do? You could set the tag's content property with html/markdown in order to have that rendered... the default theme would still include a header with the tag name, but other than that, it should be possible to add whatever html you need.
I'm not opposed to exporting displayPartsToMarkdown at least (might make it a static method on Comment), camelToTitleCase is an unfortunate thing to export, but probably reasonable as well.

First of all thanks about the tip for customizing the tag content. However this only allows modifying the content and not the tag name
 which I also would like to customize.
What I want to do is this: I want to override the:

tag_name

tag_content

with

custom_content

In order to completely stylize some tags on how they appear (text and form) and how they function (using javascript to display a js tooltip popup etc, having links for further information etc).
Regardless, modifying the tag content is good enough for my case, therefore please close this if you like.


Making a WI a child leaves it in both child and non-child state

From @qodfathr on April 10, 2017 17:38

I thought I was making 460 a child of 459, but maybe I got that backwards. Regardless, now 459 is showing as both a child and not a child.
Copied from original issue: fabric8io/fabric8-ui#604

@michaelkleinhenz can you review this and duplicate it in Planner unless it is really something that goes to the tree-list component, then it should go to Widgets @dlabrecq


Darwin Build Failure

https://github.com/project-chip/connectedhomeip/actions/runs/8529112753?pr=32717

This is failing in TestDiagnosticLogsDownloadCommand.
Duplicate of https://github.com/project-chip/connectedhomeip/issues/32636


Add _lyricistsort and _writersort variables

Summary
This is a…

[ ] Correction
[x] Addition
[ ] Restructuring
[ ] Minor / simple change (like a typo)
[ ] Other

Reason for the Change
New variables are being added in https://github.com/metabrainz/picard/pull/2188
Description of the Change
Add descriptions for the new _lyricistsort and _writersort variables.
Additional Action Required
Do not merge until https://github.com/metabrainz/picard/pull/2188 has been merged. Once approved and merged, translation files will need to be updated.

Thanks, the descriptions look good to me (much better than "Composer Relationship Type’s Sort Name" for composersort, to be honest).

Yeah, some of those descriptions definitely need some work.  I don't remember now, but I think that they were taken straight from the web site and I meant to fix them up later (and then promptly forgot).

I would've created a documentation PR myself after dinner, but you were blazing fast rocket

I'll remember that for the next time.  :grinning:  I just wanted to set a reminder someplace so that we didn't forget.  I guess just adding a note to your original PR would have sufficed.  I'll try to remember to do that next time.


Nested json fetch error

i need to fetch Url of articles from blogger Json feed (like https://example.blogspot.com/feeds/posts/default?alt=json) when i tried the following Tag it will bring 3 to 4 the urls (i.e., Blogger ID link, comment link, and Article link)
{{#link}}{{href}}{{/link}}
Output:
https://www.blogger.com/feeds/ID-XXXX/posts/default/ID-XXXX
https://www.blogger.com/feeds/ID-XXXX/posts/default/ID-XXXX
https://example.blogspot.com/2020/08/........html

i think it came because there is a nested object in Blogger Json feed...
can you please tell me how to fetch only the url of articles in blogger json feed

const mustache = require("mustache");
const feedResponse = require("./feedResponse.json"); // from a .json file or a HTTPS request

const entries = feedResponse.feed.entry;
const entriesWithUrl = entries.map((entry) => {
  const selfLink = entry.link.find((link) => link.rel === "self").href;

  return {
    title: entry.title.$t,
    url: selfLink,
  };
});

const template = `
{{#.}}
  {{title}}: {{{url}}}
{{/.}}
`;

const result = mustache.render(template, entriesWithUrl);

Could be one way? That gave me the each entry with its title & URL at least.
The trick with mustache.js is do to as much work & preparation of the data before asking mustache to .render(). This is mainly because of the mustache specification being deliberately very limited in terms of how much logic and complexity you can do inside the actual template itself -- that has to be sorted out before rendering.
Closing this for now as it's not really a mustache.js issue in itself, but rather how to interpret JSON and make it easier to traverse in the template.


Licensing requirements

Please identify the license requirements. we have O365 E5 and this is not showing up.

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

ID: 4325da2c-e262-0430-854d-cf3b869575b6
Version Independent ID: e50c60f6-6b10-8f8a-5f45-5cf3befb6a61
Content: Microsoft Compliance Score
Content Source: microsoft-365/compliance/compliance-score.md
Service: o365-seccomp
GitHub Login: @chvukosw
Microsoft Alias: chvukosw

Hello, any customer with a valid AAD can access Compliance Score. Depending on your launch point, some customers have had issues accessing it and I have made the engineering team aware. For now, it is best to use this deep link to take you directly to Compliance Score:  https://aka.ms/compliancescore. To view additional setup instructions, see https://docs.microsoft.com/en-us/microsoft-365/compliance/compliance-score-setup.  Thanks.


Move or Retire non-OpenTelemetry Modules?

As I was working on #688, I noticed that several of the backends supported here now actively encourage users to start with or switch to using OpenTelemetry instrumentation directly. Honeycomb, Jaeger, and Lightstep are all in this bucket. I get the impression NewRelic and DataDog would prefer you use their libraries (but they do support OTel). AWS X-Ray documents their OTel distro before their proprietary library, and present the choice in what seems like a pretty balanced way. And of course OpenCensus and OpenTracing merged to form OpenTelemetry, so their preference is clear as well.
It's also a little tricky to work on changes to core when every change has to be immediately propagated across all the backends. Since I have hands-on experience with OTel and X-Ray, it was straightforward enough to figure out the right way to implement #688, but the other backends have slightly different semantics, and I don't really have a good way of testing what happens when sending trace data to commercial services I don't use. It would be better to have maintainers for those modules who use them, who can implement new features as they come.
Maybe we should consider either (1) moving most of these backends to their own repositories, so they can be developed and versioned separately from the core and OTel backend, or (2) retiring them altogether if there's no maintainer interest in keeping them around. And either way, document clearly that new users should start with the OpenTelemetry backend unless they have a specific reason to use one of the others.
Of course, for existing codebases, migrating to a new instrumentation library may not be trivial, so dropping support altogether shouldn't be done lightly. It would be helpful to have download stats or other data to help make this decision, although if we start by moving backends to separate repos, there would at least be an opportunity for interested parties to continue maintenance.
So, I'm curious what the community thinks.

As Natchez stabilizes, schisming the monorepo is also a much better strategy for compatibility. So if an integration needs to make a breaking bump, it can do so without forcing core (and everyone else) to bump as well, or absorbing a break into a non-breaking version.

We use datadog at $work. There are examples showcasing pure-scala integration with datadog (by using http to talk to to a deamon agent that is supposed to live on the same deployment as your application), without OT being involved :

https://github.com/ovotech/natchez-extras
https://github.com/trace4cats/trace4cats-datadog

I am set to implement my own natchez backend internally at $work (which is fairly easy) as I don't want to impose this maintenance to people here and I want to retain control over release cycles and version bumps.
So I personally would be fine with the natchez-datadog module being dropped.

OpenTelemetry didn't exist when Natchez started (and different back ends relied on different versions of OpenTracing) which is why there are so many distinct back ends. If OT is stable enough for use now then yeah we should transition.

Just piping in here to say that OTel tracing is definitely stable enough. I can say that at least as far as Honeycomb is concerned, we ask all customers to start with opentelemetry instead of our proprietary stuff that came before it. I can't speak for other vendors, though.


Preparation or improvement of the guide for overview of scope of research projects - 2024#1 (issue #958 related)

The goal is to prepare or improve a guide or report that is generated by the following code:
from dynpy.utilities.documents.guides import ResearchProjectGuidelines
ResearchProjectGuidelines()

Minor changes introduced. The code was checked with the following call:
from dynpy.utilities.documents.guides import ResearchProjectGuidelines
ResearchProjectGuidelines()


Feat: Include components from pnpm-lock.yaml importers

Based on discussion in #1359, We now add dependencies for additional components found in importers section of pnpm-lock.yaml.

prismsbom.json
rushsbom.json
sample output for rush-example repo:
    "dependencies": [
        {
            "ref": "pkg:npm/rush",
            "dependsOn": []
        },
        {
            "ref": "pkg:npm/rush/my-app#apps/my-app",
            "dependsOn": [
                "pkg:npm/my-controls",
                "pkg:npm/whatwg-fetch"
            ]
        },
        {
            "ref": "pkg:npm/rush/my-controls#libraries/my-controls",
            "dependsOn": []
        },
        {
            "ref": "pkg:npm/rush/my-toolchain#tools/my-toolchain",
            "dependsOn": [
                "pkg:npm/colors"
            ]
        },
        {
            "ref": "pkg:npm/<EMAIL_ADDRESS>            "dependsOn": []
        },.......

sample output for prism-react-renderer:
    "dependencies": [
        {
            "ref": "pkg:npm/prism-react-renderer",
            "dependsOn": []
        },
        {
            "ref": "pkg:npm/prism-react-renderer-monorepo/demo#packages/demo",
            "dependsOn": [
                "pkg:npm/clsx",
                "pkg:npm/formidable-oss-badges",
                "pkg:npm/react",
                "pkg:npm/react-dom"
            ]
        },
        {
            "ref": "pkg:npm/prism-react-renderer-monorepo/generate-prism-languages#packages/generate-prism-languages",
            "dependsOn": [
                "pkg:npm/react"
            ]
        },
        {
            "ref": "pkg:npm/prism-react-renderer-monorepo/prism-react-renderer#packages/prism-react-renderer",
            "dependsOn": [
                "pkg:npm/@types/prismjs",
                "pkg:npm/clsx"
            ]
        },
        {
            "ref": "pkg:npm/<EMAIL_ADDRESS>            "dependsOn": [
                "pkg:npm/<EMAIL_ADDRESS>                "pkg:npm/<EMAIL_ADDRESS>            ]
        },......

Any ideas about the test failures?

Any ideas about the test failures?

Yes have fixed


Version variable is not changed when using PEP440 specification

Bug Report
Description
If the version variable includes a pre-release segment , post-release segment or development segment (PEP440 / PyPA Version Specifiers), the version is not getting updated.
Expected behavior
Version variable gets updated to new version if a release is made.
Actual behavior
Version variable stays the same and does not get updated if a release is made.
Environment

Operating System (w/ version): Windows 11 (local), Ubuntu (GitHub Actions Runner)
Python version: 3.11.9
Pip version: 24.0
Semantic-release version: 9.8.6
Build tool (w/ version): meson-python 0.16.0

pip freeze
alabaster==0.7.16
annotated-types==0.7.0
anyio==4.3.0
argon2-cffi==23.1.0
argon2-cffi-bindings==21.2.0
arrow==1.3.0
asttokens==2.4.1
async-lru==2.0.4
attrs==23.2.0
Babel==2.15.0
backports.tarfile==1.2.0
beautifulsoup4==4.12.3
bleach==6.1.0
build==1.2.1
cachetools==5.3.3
certifi==2024.2.2
cffi==1.16.0
cfgv==3.4.0
chardet==5.2.0
charset-normalizer==3.3.2
click==8.1.7
click-option-group==0.5.6
colorama==0.4.6
comm==0.2.2
contourpy==1.2.1
coverage==7.5.1
cycler==0.12.1
debugpy==1.8.1
decorator==5.1.1
defusedxml==0.7.1
distlib==0.3.8
docutils==0.21.2
dotty-dict==1.3.1
executing==2.0.1
fastjsonschema==2.19.1
filelock==3.14.0
fonttools==4.51.0
fqdn==1.5.1
fsspec==2024.5.0
furo==2024.5.6
gitdb==4.0.11
GitPython==3.1.43
h11==0.14.0
httpcore==1.0.5
httpx==0.27.0
identify==2.5.36
idna==3.7
imageio==2.34.1
imagesize==1.4.1
importlib_metadata==8.0.0
importlib_resources==6.4.0
iniconfig==2.0.0
intel-openmp==2021.4.0
ipykernel==6.29.4
ipython==8.24.0
ipywidgets==8.1.2
isoduration==20.11.0
jaraco.classes==3.4.0
jaraco.context==5.3.0
jaraco.functools==4.0.1
jedi==0.19.1
Jinja2==3.1.4
json5==0.9.25
jsonpointer==2.4
jsonschema==4.22.0
jsonschema-specifications==2023.12.1
jupyter==1.0.0
jupyter-console==6.6.3
jupyter-events==0.10.0
jupyter-lsp==2.2.5
jupyter_client==8.6.1
jupyter_core==5.7.2
jupyter_server==2.14.0
jupyter_server_terminals==0.5.3
jupyterlab==4.2.0
jupyterlab_pygments==0.3.0
jupyterlab_server==2.27.1
jupyterlab_widgets==3.0.10
keyring==25.2.1
kiwisolver==1.4.5
lazy_loader==0.4
lxml==5.3.0
markdown-it-py==3.0.0
MarkupSafe==2.1.5
matplotlib==3.9.0
matplotlib-inline==0.1.7
mdurl==0.1.2
meson==1.4.0
meson-python==0.16.0
mistune==3.0.2
mkl==2021.4.0
more-itertools==10.3.0
mpmath==1.3.0
mypy==1.10.0
mypy-extensions==1.0.0
nbclient==0.10.0
nbconvert==7.16.4
nbformat==5.10.4
nest-asyncio==1.6.0
networkx==3.3
nh3==0.2.17
nibabel==5.2.1
nodeenv==1.8.0
notebook==7.2.0
notebook_shim==0.2.4
numpy==1.26.4
overrides==7.7.0
packaging==24.0
pandocfilters==1.5.1
parso==0.8.4
pillow==10.3.0
piq==0.8.0
pkginfo==1.10.0
platformdirs==4.2.2
pluggy==1.5.0
pre-commit==3.8.0
prometheus_client==0.20.0
prompt-toolkit==3.0.43
psutil==5.9.8
pure-eval==0.2.2
pycparser==2.22
pydantic==2.8.2
pydantic_core==2.20.1
Pygments==2.18.0
pyparsing==3.1.2
pyproject-api==1.6.1
pyproject-metadata==0.8.0
pyproject_hooks==1.1.0
pytest==8.2.1
pytest-cov==5.0.0
pytest-doctestplus==1.2.1
python-dateutil==2.9.0.post0
python-gitlab==4.9.0
python-json-logger==2.0.7
python-semantic-release==9.8.6
pywin32==306
pywin32-ctypes==0.2.2
pywinpty==2.0.13
PyYAML==6.0.1
pyzmq==26.0.3
qtconsole==5.5.2
QtPy==2.4.1
readme_renderer==43.0
referencing==0.35.1
requests==2.32.1
requests-toolbelt==1.0.0
rfc3339-validator==0.1.4
rfc3986==2.0.0
rfc3986-validator==0.1.1
rich==13.7.1
rpds-py==0.18.1
ruff==0.4.4
scikit-image==0.23.2
scipy==1.13.0
Send2Trash==1.8.3
shellingham==1.5.4
six==1.16.0
smmap==5.0.1
sniffio==1.3.1
snowballstemmer==2.2.0
soupsieve==2.5
Sphinx==7.3.7
sphinx-autobuild==2024.4.16
sphinx-basic-ng==1.0.0b2
sphinx-copybutton==0.5.2
sphinx-github-changelog==1.4.0
sphinx-hoverxref==1.4.0
sphinx-last-updated-by-git==0.3.8
sphinx-notfound-page==1.0.4
sphinxcontrib-applehelp==1.0.8
sphinxcontrib-devhelp==1.0.6
sphinxcontrib-email==0.3.6
sphinxcontrib-htmlhelp==2.0.5
sphinxcontrib-jquery==4.1
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==1.0.7
sphinxcontrib-serializinghtml==1.1.10
sphinxprettysearchresults==0.3.5
stack-data==0.6.3
starlette==0.38.2
sympy==1.12
tbb==2021.12.0
terminado==0.18.1
tifffile==2024.5.10
tinycss2==1.3.0
tomlkit==0.13.0
torch==2.4.0
torchvision==0.19.0
tornado==6.4
tox==4.15.0
tqdm==4.66.5
traitlets==5.14.3
twine==5.1.1
types-python-dateutil==<IP_ADDRESS>40316
typing_extensions==4.11.0
uri-template==1.3.0
urllib3==2.2.1
uvicorn==0.30.6
virtualenv==20.26.2
watchfiles==0.23.0
wcwidth==0.2.13
webcolors==1.13
webencodings==0.5.1
websocket-client==1.8.0
websockets==13.0
widgetsnbextension==4.0.10
zipp==3.19.2

git log --oneline --decorate --graph --all -n 50

Configuration

Semantic Release Configuration
# Semantic Release
[tool.semantic_release]
commit_parser = "angular"
logging_use_named_masks = true
allow_zero_version = true
tag_format = "v{version}"
version_variables = ["./src/foo/__init__.py:__version__"]
commit_message = "chore(release): {version}\n\nAutomatically generated by python-semantic-release"

[tool.semantic_release.changelog]
template_dir = "./templates"
changelog_file = "CHANGELOG.md"
exclude_commit_patterns = [".*\\n\\nAutomatically generated by python-semantic-release", "chore: pre-commit autoupdate\n\nAutomatically generated by pre-commit.ci"]

[tool.semantic_release.commit_parser_options]
allowed_types = [
    "build", "chore", "ci", "docs", "feat", "fix",
    "perf", "style", "refactor", "test", "book",
]
minor_types = ["feat"]
patch_types = ["fix", "perf"]

Build System Configuration

GitHub Actions Job Definition
  semantic_release:
    name: Semantic Release
    runs-on: ubuntu-latest
    if: github.ref == 'refs/heads/main'
    permissions:
      id-token: write
      contents: write
    outputs:
      tag: ${{ steps.release.outputs.tag }}
      released: ${{ steps.release.outputs.released }}

    steps:
      - name: Checkout code
        uses: actions/checkout@v4
        with:
          fetch-depth: 0
          ref: main
          submodules: recursive

      - name: Python Semantic Release
        id: release
        uses: python-semantic-release/python-semantic-release@master
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}

Execution Log

semantic-release -vv command
The next version is: 1.11.1! 🚀
           DEBUG    [semantic_release.cli.commands.version] DEBUG version.apply_version_to_source_files: writing version 1.11.1 to      version.py:142
                    source paths ['src\\foo\\__init__.py']
           DEBUG    [semantic_release.version.declaration] DEBUG declaration.content: No content stored, reading from source file    declaration.py:37
                    C:\vIQA_Package\src\foo\__init__.py
           DEBUG    [semantic_release.version.declaration] DEBUG declaration.replace: path='src\\foo\\__init__.py'                 declaration.py:197
                    pattern='(?x)__version__\\s*(:=|[:=])\\s*(?P<quote>[\'\\"])(?P<version>\n    (?P<major>0|[1-9]\\d*)\n    \\.\n
                    (?P<minor>0|[1-9]\\d*)\n    \\.\n    (?P<patch>0|[1-9]\\d*)\n
                    (?:-(?P<prerelease>(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*
                    ))?\n    (?:\\+(?P<buildmetadata>[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?\n    )(?P=quote)' num_matches=0
Skipping build due to --skip-build flag
           INFO     [semantic_release.cli.github_actions_output] INFO github_actions_output.write_if_possible: not writing github_actions_output.py:71
                    GitHub Actions output, as no file specified

Additional context

For my Python package I use two branches: A main branch with the code for releases and a dev branch for current feature development. If I start a new feature on the dev branch I manually set __version__ in __init__.py to x.x.xdevx according to PEP440. Automatic dev and post releases with python-semantic-release were even better, but that's a different topic (Maybe I'll write a seperate issue later, about how this could be incorporated without loosing the generalization as discussed in #455. After pushing to the dev branch a github action gets triggered, but no release is made (this is right at the moment, no release should be made on the dev branch). After testing of the feature, the main branch gets rebased on the dev branch (or dev gets pulled into main) and after pushing the GitHub Action is triggered again, this time on the main branch. A release is made, so my other jobs (uploading to PyPI, GitHub releases etc.) are also triggered. The problem is if the push still contains the dev version in __init__.py, which is likely,  the file doesn't get updated. Because there's also no error the action proceeds with the build (the files have the wrong version in the filename and __init__.py) and get uploaded to PyPI with this false version (I have no version checking in between, because all other jobs pass and I rely on python-semantic-release to determine the right version). I tested this behavior on the GitHub Actions runner in my repository https://github.com/3dct/vIQA as well as locally. For a quick minimal example:
Build a sample package with some commits, set the __version__ in __init__.py to e.g. 1.1.1dev1 and run semantic-release -vv version --patch --no-commit --no-tag --no-push --no-vcs-release --skip-build --no-changelog, so only the init.py should be changed.
Possible solution
Based on the DEBUG text I suppose such PEP440 segments aren't covered by the regex pattern. Adding them shouldn't be a big problem. I can maybe have a look into it. Also there should be an Exception/Error or at least a loud warning, that the version variable didn't get changed. Currently this is only viewable in the --vv Debug mode.

Hi @lukasbehammer, thank you for your writeup and detail.
Currently, PEP440 specifications are not supported for version determination from tags on the repository (#455), that is why the tags are ignored.
This issue I believe is a feature request for handling the replacement of PEP440 version values via the version_variables specification. This would likely be handled with added support for PEP440.
I don't consider this a bug, as PSR purposefully does not replace the version because the regex used is looking for a SemVer compliant version value and when it sees the PEP440 version (the semver standard and PEP440 standards disagree on pre, post release identifier syntax), PSR assumes this is not the version variable I'm expected to replace so do nothing.

Still need to work on the current PR, trying to complete my current set of updates before going all in on this.


Factory Method to create instances

Provide a factory method to be used when creating class instances. Similiar to AutoMappers ConstructServicesUsing()

Use a "ContainerBlueprint".


Rebuild cpptango 9.3.7rc1 with omniorb 4.2

Checklist

[X] Used a personal fork of the feedstock to propose changes
[X] Bumped the build number (if the version is unchanged)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[X] Ensured the license file is being packaged.

cpptango 9.3 not compatible with omniorb 4.3

@conda-forge-admin, please rerender

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender


Fixed for-await-of construction add when deadCodeInjection option is enabled

Coverage increased (+0.0003%) to 98.639% when pulling 329b7a2543569d5d3f3aea8f03d2a3a0c6d8b3a0 on dead-code-injection-prevent-for-await-of into 252b901b6954ba91cb1a82fa8a7b048e5ebbffeb on master.

Coverage increased (+0.0003%) to 98.639% when pulling 329b7a2543569d5d3f3aea8f03d2a3a0c6d8b3a0 on dead-code-injection-prevent-for-await-of into 252b901b6954ba91cb1a82fa8a7b048e5ebbffeb on master.


fix(share_plus): export XFile

Description

moved SharePlatform to platform_interface/share_plus_platform.
exported cross_file and share_plus_platform in share_plus_platform_interface.dart file (inspiration).
exported (by export ... show ...;) XFile in share_plus package (inspiration).
hid XFile from file_selector and image_picker in example/lib/main.dart so that this export is tested.

wild ideas, not to be taken too seriously:

should the folders in share_plus_platform_interface/lib be moved to src (same as image_picker)?
Should SharePlatform be renamed to SharePlusPlatform?

Related Issues
Fixes #1271
Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I titled the PR using Conventional Commits.
[x] I did not modify the CHANGELOG.md nor the pubspec.yaml files.
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze) does not report any problems on my PR.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate that with a ! in the title as explained in Conventional Commits).
[x] No, this is not a breaking change.

@miquelbeltran when this will be published?

We don't have yet a fixed release schedule, but probably during the coming days

Ok can you give an ETA as it is blocking #1070 since published version is not exporting XFile
Should I make a draft PR by depending using path?

if you do a proper development setup using melos. So you don't even need to add the dependency by path because your pubspec lock already references it.

I have never used melos. Will try to configure it. Thanks👍

I have never used melos. Will try to configure it. Thanks+1

It is on the Contributors guide, you need it to bootstrap the repo.
Please read the contributors guide carefully and follow it.


[Bug] mihomo returns poisoned DNS from a proxy instead of configured nameserver

Verify steps

[X]  确保你使用的是本仓库最新的的 mihomo 或 mihomo Alpha 版本 Ensure you are using the latest version of Mihomo or Mihomo Alpha from this repository.
[ ]  如果你可以自己 debug 并解决的话，提交 PR 吧 Is this something you can debug and fix? Send a pull request! Bug fixes and documentation fixes are welcome.
[X]  我已经在 Issue Tracker 中找过我要提出的问题 I have searched on the issue tracker for a related issue.
[X]  我已经使用 Alpha 分支版本测试过，问题依旧存在 I have tested using the dev branch, and the issue still exists.
[X]  我已经仔细看过 Documentation 并无法自行解决问题 I have read the documentation and was unable to solve the issue.
[X]  这是 Mihomo 核心的问题，并非我所使用的 Mihomo 衍生版本（如 OpenMihomo、KoolMihomo 等）的特定问题 This is an issue of the Mihomo core per se, not to the derivatives of Mihomo, like OpenMihomo or KoolMihomo.

Mihomo version
Mihomo Meta alpha-20658f6 android arm64 with go1.21.6 Mon Feb  5 14:41:30 UTC 2024 Use tags: with_gvisor
What OS are you seeing the problem on?
Linux
Mihomo config
allow-lan: true
bind-address: "*"
mode: rule
log-level: info
find-process-mode: always
unified-delay: true
keep-alive-interval: 1800

external-controller: <IP_ADDRESS>:9090
external-ui: ./ui

dns:
  enable: true
  listen: <IP_ADDRESS>:1053
  enhanced-mode: redir-host
  fake-ip-range: <IP_ADDRESS>/16
  nameserver:
    - https://<IP_ADDRESS>/dns-query#🔼Dns

proxies: []

proxy-groups:
  - name: 🌝Proxy
    type: select
    use:
      - myproxies
  - name: 🔼Dns
    type: select
    use:
      - myproxies

proxy-providers:
  myproxies:
    type: file
    path: ./proxy_provider/myproxies.yaml
    health-check:
      enable: true
      url: http://www.gstatic.com/generate_204
      interval: 1800

rules:
  - IP-CIDR,<IP_ADDRESS>/32,🔼Dns
  - MATCH,🌝Proxy

tun:
  enable: true
  mtu: 9000
  device: utun
  stack: system # gvisor / system / mixed
  dns-hijack:
    - <IP_ADDRESS>:53
  auto-route: true
  strict-route: false
  auto-detect-interface: true
  include-android-user: [0, 10]
  exclude-package: [] # blacklist
  include-package: [] # whitelist

tproxy-port: 0
redir-port: 9797

Mihomo log
No response
Description
It seems mihomo randomly returns a DNS response from a selected proxy instead of configured nameserver. Or what people say DNS leak.
This causing unexpected behaviour like forced safe search on google, youtube, bing, yandex etc. And require login to see public accounts on Facebook and Instagram.
This behaviour also make blocking ads via DNS like Adguard or nextdns isn't effective.
p.s I'm using a magisk module to run mihomo named Box for Root.
Picrel:
Here I set DNS to UK, and proxy to Japan

Then change the proxy only to Poland

And if I use nextdns in nameserver. In nextdns dashboard

This is logical, DNS queries go through UK, and then network traffic goes to JP to the proxy server, so there are two zones of DNS.
the DNS of the configuration file is only for IP matching in the offload, and network connection, the so-called DNS leak is not its target

So mihomo send the domain name to the proxy server to re-resolve

This is something designed by the proxy. Re-resolving DNS may be a bit misunderstood. It should be said that the traffic metadata will be sent to the server. The server uses the metadata to initiate a link to the real server. If the metadata contains the domain name, it will naturally be re-resolved.

So mihomo send the domain name to the proxy server to re-resolve

This is something designed by the proxy. Re-resolving DNS may be a bit misunderstood. It should be said that the traffic metadata will be sent to the server. The server uses the metadata to initiate a link to the real server. If the metadata contains the domain name, it will naturally be re-resolved.

Can it be turned off tho? I mean to not send the metadata containing the domain name to the proxy server?

@Skyxim can you please kindly pointing out to me where such mechanism can be turned off in the source code? Maybe I can use my own customization build if my request isn't aligned with the project's goal.

like this
https://github.com/MetaCubeX/mihomo/blob/20658f6eac2b9fb876b377547ee0190eb2e57b05/tunnel/tunnel.go#L386
metadata.Pure()

add here
https://github.com/MetaCubeX/mihomo/blob/20658f6eac2b9fb876b377547ee0190eb2e57b05/tunnel/tunnel.go#L511

Thank you. I will try.

I tried removing the host from metadata and indeed the issue seems to be resolved. But it lost the nice output of the host in the dashboard. It might also introduced other issues. So the safe way is to change the dialer of all protocol?


[NEW] Support authentication with Twitter

@rafaelks @leonardoaramaki This feature has been implemented, you may close this issue!


How to format values?

If I have an integer that I would like to display in ###,##0.00 format, is that possible? If yes, how?
Similarly, if I have a date that I would like to display in MMM dd, yyyy format, is that possible? If yes, how?

You can achieve this using helpers or prepare your model data before passing them into the template.

So, I guess, I would like there to be default helpers for formatting numbers and dates, since these would find wide usage. Can these be included? If I submit a pull request, would that be alright?

Since we try to be unopinionated and the java ecosystem provides a ton of ways to handle formatting, localization and date calculation we see this out of scope for the core jade4j.
When talking about integration with a specific framework there might be more consence and convention of what tools to use for these jobs. I would suggest adding this feature to your jade4j framework adapter of choice or writing your own more opinionated / "batteries included" adapter.

@naltatis, fair enough. I will check the spring-jade4j repository and submit pull requests there as I think that something like number.format(course.seats, "#,##0") and currency.format(bill.total, "###,##0.00") would be useful for most projects.


Layout

Footer: removing extra text, adding bottom bar info
Header: Changing from F-sektionen to Röstsystem

The new footer no longer auto adjusts to the bottom of the page :disappointed:

We should remove app/views/layouts/_footer.html.erb and config/locales/views/footer.sv.yaml

@navro Fixed your comments 😄

:+1:


Range validation when the end passes EOF

I'll preface this by saying I'm not sure if this is an issue in this crate or not.
I ran into an issue with tower-http (filed at https://github.com/tower-rs/tower-http/issues/384), where LinkedIn's scraper bot fails to retrieve a site due to it passing a range: bytes=0-3145727 with every request. This causes http-range-header::ParsedRanges::validate() to fail.
Initially I thought web servers were just being lax in allowing this, but in reading the RFC (https://www.ietf.org/rfc/rfc2616.txt), I found:
10.4.17 416 Requested Range Not Satisfiable

   A server SHOULD return a response with this status code if a request
   included a Range request-header field (section 14.35), and none of
   the range-specifier values in this field overlap the current extent
   of the selected resource, and the request did not include an If-Range
   request-header field. (For byte-ranges, this means that the first-
   byte-pos of all of the byte-range-spec values were greater than the
   current length of the selected resource.)

   When this status code is returned for a byte-range request, the
   response SHOULD include a Content-Range entity-header field
   specifying the current length of the selected resource (see section
   14.16). This response MUST NOT use the multipart/byteranges content-
   type.

none of the range-specifier values in this field overlap makes me think that validate() should not care if the end of the range is past EOF, so long as the start of the range is valid. I believe this effectively allows LinkedInBot to make a single request that is guaranteed not to return more than ~3MB, without needing to first do a HEAD request, and I'm wondering if that was the intent in the RFC.  I'm not sure if this is a situation where http-range-header has the correct behavior, but web servers have decided it's OK to be lax, or if the validation in this case is incorrect.
Thoughts?

Looks like this is actually specified behavior in the spec, from section 14.35.1:
If the last-byte-pos value is absent, or if the value is greater than
   or equal to the current length of the entity-body, last-byte-pos is
   taken to be equal to one less than the current length of the entity-
   body in bytes.

Closed by https://github.com/MarcusGrass/http-range-header/pull/3, thanks a lot!

Now published as 0.3.1


Discussion for go-utils: Provide an interface to easily send cloudevents

Right now sending CloudEvents is handled differently by almost every microservice we have. They all use go-utils Keptn Handler SendCloudEvent function, but the handling around it is very different all the time, e.g.:
https://github.com/keptn/keptn/blob/b2a14418997bebf87aeaa0e054189b1c0eb8b7b3/api/utils/event.go#L26-L50
https://github.com/keptn/keptn/blob/558710292b2433f9467957daf0a7aa6d60e5c9fb/shipyard-controller/common/keptn_helpers.go#L83-L110
https://github.com/keptn/keptn/blob/b9eca15c3fa4ed35ecfc1f284d9a4958ddac604f/lighthouse-service/event_handler/common.go#L115-L130
https://github.com/keptn-contrib/unleash-service/blob/4cf382c522dedee37a55a52ee0fdd15a09c354f5/pkg/event_handler/action_triggered_handler.go#L107-L130
https://github.com/keptn/keptn/blob/f5d2838d8d0d0ba6a3740dbd12d945f16692a385/jmeter-service/main.go#L321-L350
https://github.com/keptn-contrib/dynatrace-service/blob/2c84ce11000e70ef635ff96871839655d4f71e2c/pkg/event_handler/configure_monitoring.go#L165-L170
As you can see, there is a lot of code duplication, which makes it harder to maintain the code. If we just add a single attribute, we will have to adapt it everywhere.
Within this issue we will be proposing a change such that most cases for sending CloudEvents are covered, and should only be a single function call.
Please don't discuss the changes in this issue (it will get cluttered with comments), only propose them. We can openly discuss them in a Dev meeting

IMHO the biggest issues with our current implementation are:

setting triggeredid requires the incomingCloudEvent (this is something KeptnHandler should store!)
shkeptncontext also always needs to be set, though this is already stored in KeptnHandler
SetDatacontentType(cloudevents.ApplicationJSON) - this should really just be the default provided by KeptnHandler - if anything, the user can overwrite it, but I don't see a reason why
Setting the source (e.g., dynatrace-service, helm-service, jmeter-service, ...) is also something that could be automatically handled by KeptnHandler

This is what it should feel like for the developer:
one time setup for KeptnHandler:
var keptnOptions = keptn.KeptnOpts{}

keptnOptions.ConfigurationServiceURL = env.ConfigurationServiceUrl
keptnOptions.EventBrokerURL = env.EventBrokerUrl

// initialize Keptn Handler with incomingEvent and keptnOptions
myKeptn, err := keptnv2.NewKeptn(&incomingEvent, keptnOptions)
if err != nil {
    return errors.New("Could not create Keptn Handler: " + err.Error())
}

sending a CloudEvent
// generate an action.started event
actionStartedData := keptnv2.ActionStartedEventData{}

actionStartedData.EventData = incomingEventData.EventData
actionStartedData.Status = keptnv2.StatusSucceeded // alternative: keptnv2.StatusErrored
actionStartedData.Result = keptnv2.ResultPass      // alternative: keptnv2.ResultFailed

// Create CloudEvent
startedEvent := cloudevents.NewEvent()
startedEvent.SetType(keptnv2.GetStartedEventType(keptnv2.ActionTaskName))
startedEvent.SetData(cloudevents.ApplicationJSON, actionStartedData)

// send action.started event
myKeptn.SendCloudEvent(startedEvent)

For this to work, SendCloudEvent and KeptnHandler needs to be a bit smarter, as in:

KeptnHandler should store the incomingEvent (or its event-id) and automatically set it as triggeredid in Keptnhandler.SendCloudEvent: event.SetExtension("triggeredid", k.incomingEvent.Context.GetID())
KeptnHandler.SendCloudEvent needs to automatically set shkeptncontext if it is available: event.SetExtension("shkeptncontext", k.KeptnContext)
KeptnHandler.SendCloudEvent needs to automatically set the data content type (if it's not already set) SetDatacontentType(cloudevents.ApplicationJSON)
KeptnHandler.SendCloudEvent should automatically set source (if it's not already set) based on the following logic

We could introduce a configuration in keptnOptions that specifies serviceName
If this is empty, it could try to determine it based on the executeable-name (e.g., using os.Executeable())
If this is still empty, it should fail and ask the user to specify source by themselves

KeptnHandler.SendCloudEvent should automatically generate IDs if they are not set, e.g., event.SetID(uuid.New().String())
Keptnhandler.SendCloudEvent should automatically set the time if it's not already set, e.g., event.SetTime(time.Now())

IMHO the biggest issues with our current implementation are:

setting triggeredid requires the incomingCloudEvent (this is something KeptnHandler should store!)
shkeptncontext also always needs to be set, though this is already stored in KeptnHandler
SetDatacontentType(cloudevents.ApplicationJSON) - this should really just be the default provided by KeptnHandler - if anything, the user can overwrite it, but I don't see a reason why
Setting the source (e.g., dynatrace-service, helm-service, jmeter-service, ...) is also something that could be automatically handled by KeptnHandler

This is what it should feel like for the developer:
one time setup for KeptnHandler:
var keptnOptions = keptn.KeptnOpts{}

keptnOptions.ConfigurationServiceURL = env.ConfigurationServiceUrl
keptnOptions.EventBrokerURL = env.EventBrokerUrl

// initialize Keptn Handler with incomingEvent and keptnOptions
myKeptn, err := keptnv2.NewKeptn(&incomingEvent, keptnOptions)
if err != nil {
    return errors.New("Could not create Keptn Handler: " + err.Error())
}

sending a CloudEvent
// generate an action.started event
actionStartedData := keptnv2.ActionStartedEventData{}

actionStartedData.EventData = incomingEventData.EventData
actionStartedData.Status = keptnv2.StatusSucceeded // alternative: keptnv2.StatusErrored
actionStartedData.Result = keptnv2.ResultPass      // alternative: keptnv2.ResultFailed

// Create CloudEvent
startedEvent := cloudevents.NewEvent()
startedEvent.SetType(keptnv2.GetStartedEventType(keptnv2.ActionTaskName))
startedEvent.SetData(cloudevents.ApplicationJSON, actionStartedData)

// send action.started event
myKeptn.SendCloudEvent(startedEvent)

For this to work, SendCloudEvent and KeptnHandler needs to be a bit smarter, as in:

KeptnHandler should store the incomingEvent (or its event-id) and automatically set it as triggeredid in Keptnhandler.SendCloudEvent: event.SetExtension("triggeredid", k.incomingEvent.Context.GetID())
KeptnHandler.SendCloudEvent needs to automatically set shkeptncontext if it is available: event.SetExtension("shkeptncontext", k.KeptnContext)
KeptnHandler.SendCloudEvent needs to automatically set the data content type (if it's not already set) SetDatacontentType(cloudevents.ApplicationJSON)
KeptnHandler.SendCloudEvent should automatically set source (if it's not already set) based on the following logic

We could introduce a configuration in keptnOptions that specifies serviceName
If this is empty, it could try to determine it based on the executeable-name (e.g., using os.Executeable())
If this is still empty, it should fail and ask the user to specify source by themselves

KeptnHandler.SendCloudEvent should automatically generate IDs if they are not set, e.g., event.SetID(uuid.New().String())
Keptnhandler.SendCloudEvent should automatically set the time if it's not already set, e.g., event.SetTime(time.Now())

I fully agree with your suggestion. One thing we have to consider as well is how to best support the initial sending of an event - i.e., sending an event via the KeptnHandler when we do not have an incoming CloudEvent as a base. An example for that would be the api-service where we provide an HTTP endpoint to create a new evaluation. But this should be manageable by checking if the incomingEvent is nil when the KeptnHandler is initialized.

I fully agree with your suggestion. One thing we have to consider as well is how to best support the initial sending of an event - i.e., sending an event via the KeptnHandler when we do not have an incoming CloudEvent as a base. An example for that would be the api-service where we provide an HTTP endpoint to create a new evaluation. But this should be manageable by checking if the incomingEvent is nil when the KeptnHandler is initialized.

Having a centralized approach for sending CloudEvents is also the basis for https://github.com/keptn/keptn/issues/2913.
IMHO, both ideas go well hand-in-hand and help us reducing complexity and improve code maintainability for all Keptn-services.

Having a centralized approach for sending CloudEvents is also the basis for https://github.com/keptn/keptn/issues/2913.
IMHO, both ideas go well hand-in-hand and help us reducing complexity and improve code maintainability for all Keptn-services.

Based on #3035 I have implemented the changes in keptn-service-template-go, and it feels really good now, e.g.:
func HandleActionTriggeredEvent(myKeptn *keptnv2.Keptn, incomingEvent cloudevents.Event, data *keptnv2.ActionTriggeredEventData) error {
	log.Printf("Handling Action Triggered Event: %s", incomingEvent.Context.GetID())
	log.Printf("Action=%s\n", data.Action.Action)

	// check if action is supported
	if data.Action.Action == "action-xyz" {
		// -----------------------------------------------------
		// 1. Send Action.Started Cloud-Event
		// -----------------------------------------------------
		myKeptn.SendTaskStartedEvent(data, ServiceName)

		// -----------------------------------------------------
		// 2. Implement your remediation action here
		// -----------------------------------------------------
		time.Sleep(5 * time.Second) // Example: Wait 5 seconds. Maybe the problem fixes itself.

		// -----------------------------------------------------
		// 3. Send Action.Finished Cloud-Event
		// -----------------------------------------------------
		myKeptn.SendTaskFinishedEvent(&keptnv2.EventData{
			Status: keptnv2.StatusSucceeded, // alternative: keptnv2.StatusErrored
			Result: keptnv2.ResultPass, // alternative: keptnv2.ResultFailed
			Message: "Successfully sleeped!",
		}, ServiceName)

	} else {
		log.Printf("Retrieved unknown action %s, skipping...", data.Action.Action)
		return nil
	}
	return nil
}

This hides the implementation details of keptn send cloud-event and makes it really easily accessible for the developer. Therefore I'm closing this discussion as resolved.


Passing address of lock instead of lock in acquire_global_lock()

Cretaed lock was not available in calling function

Replaces https://github.com/owasp-modsecurity/ModSecurity/pull/3176


Endpoints to are not updated correctly by NGF for NGINX Plus

Describe the bug
When using NGINX Plus with NGINX Gateway Fabric, the upstreams are applied correctly when HTTPRoute is applied via the API, but when the deployment is scaled, upstreams are removed incorrectly.
To Reproduce
Steps to reproduce the behavior:

Deploy NGINX Gateway Fabric with NGINX Plus.
Port-Forward the traffic for NGF using:

kubectl port-forward -n nginx-gateway nginx-gateway-nginx-gateway-fabric-67fd757b54-tlvvc 8765:8765 &

Apply this example with updating cafe.yaml to

apiVersion: apps/v1
kind: Deployment
metadata:
  name: coffee
spec:
  replicas: 1
  selector:
    matchLabels:
      app: coffee
  template:
    metadata:
      labels:
        app: coffee
    spec:
      containers:
      - name: coffee
        image: nginxdemos/nginx-hello:plain-text
        ports:
        - containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
  name: coffee
spec:
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
    name: http
  selector:
    app: coffee
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: tea
spec:
  replicas: 1
  selector:
    matchLabels:
      app: tea
  template:
    metadata:
      labels:
        app: tea
    spec:
      containers:
      - name: tea
        image: nginxdemos/nginx-hello:plain-text
        ports:
        - containerPort: 8080
        readinessProbe:
          httpGet:
            path: /
            port: 1234
---
apiVersion: v1
kind: Service
metadata:
  name: tea
spec:
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
    name: http
  selector:
    app: tea

Check pods and tea pod will not be ready due to the readiness probe at port 1234

kubectl get pods

coffee-56b44d4c55-j4wpq   1/1     Running   0          130m
tea-7f9b79bc55-lbz95      0/1     Running   0          130m

Check the NGINX Plus Dashboard at the forwarded port.  You should see upstreams for both tea and coffee.

Now, scale the tea deployment

kubectl scale deploy tea --replicas=2

Check the dashboard again, you will see only upstream for coffee and not tea.

When sending a curl request to tea, it return 502 which is expected behavior
curl --resolve cafe.example.com:$GW_PORT:$GW_IP http://cafe.example.com:$GW_PORT/tea

http://cafe.example.com:$GW_PORT/tea
Handling connection for 8080

<title>502 Bad Gateway</title>

502 Bad Gateway

nginx/1.25.5

Check nginx logs
kubectl logs -n nginx-gateway nginx-gateway-nginx-gateway-fabric-67fd757b54-tlvvc -c nginx

You should see error about no upstream available
2024/06/04 22:03:08 [info] 184#184: *1777 client <IP_ADDRESS> closed keepalive connection
2024/06/04 22:03:49 [error] 179#179: *1782 no live upstreams while connecting to upstream, client: <IP_ADDRESS>, server: cafe.example.com, request: "GET /tea HTTP/1.1", upstream: "http://default_tea_80/tea", host: "cafe.example.com:8080"
<IP_ADDRESS> - - [04/Jun/2024:22:03:49 +0000] "GET /tea HTTP/1.1" 502 157 "-" "curl/8.4.0"
2024/06/04 22:03:50 [info] 179#179: *1782 client <IP_ADDRESS> closed keepalive connection

Expected behavior
The expected behavior is that upstreams are added correctly when HTTPRoute is added from API as well as when it is scaled. The curl request to tea should return bad gateway, but no errors should be reported in nginx error logs.
Your environment

Version of the NGINX Gateway Fabric - release version 1.2
Version of Kubernetes

Client Version: version.Info{Major:"1", Minor:"26+", GitVersion:"v1.26.13-dispatcher", GitCommit:"eb237aa977a4a0cf4fcec65fc730b4d96af37ccf", GitTreeState:"clean", BuildDate:"2024-02-08T00:19:39Z", GoVersion:"go1.20.13", Compiler:"gc", Platform:"darwin/arm64"}
Kustomize Version: v4.5.7
Server Version: version.Info{Major:"1", Minor:"30", GitVersion:"v1.30.0", GitCommit:"7c48c2bd72b9bf5c44d21d7338cc7bea77d0ad2a", GitTreeState:"clean", BuildDate:"2024-05-13T22:02:25Z", GoVersion:"go1.22.2", Compiler:"gc", Platform:"linux/arm64"}

Kubernetes platform - Kind
Details on how you expose the NGINX Gateway Fabric Pod - Added in reproducing steps
Logs of NGINX container: kubectl -n nginx-gateway logs -l app=nginx-gateway -c nginx

2024/06/04 22:03:08 [info] 184#184: *1777 client <IP_ADDRESS> closed keepalive connection
2024/06/04 22:03:49 [error] 179#179: *1782 no live upstreams while connecting to upstream, client: <IP_ADDRESS>, server: cafe.example.com, request: "GET /tea HTTP/1.1", upstream: "http://default_tea_80/tea", host: "cafe.example.com:8080"
<IP_ADDRESS> - - [04/Jun/2024:22:03:49 +0000] "GET /tea HTTP/1.1" 502 157 "-" "curl/8.4.0"
2024/06/04 22:03:50 [info] 179#179: *1782 client <IP_ADDRESS> closed keepalive connection

NGINX Configuration: kubectl -n nginx-gateway exec <gateway-pod> -c nginx -- nginx [-T](ngf.txt)

Additional context
Add any other context about the problem here. Any log files you want to share.

Does this only occur when the readiness probe is specified on the tea deployment?


New mark don't show in map

I'm submitting a ...  (check one with "x")

[ ] question
[x] any problem or bug report

OS:  (check one with "x")

[x] Android
[ ] iOS

cordova information:  (run $> cordova plugin list)
cordova-plugin-camera 4.0.3 "Camera"
cordova-plugin-datepicker 0.9.3 "DatePicker"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-googlemaps 2.3.9-beta-20180718-1052 "cordova-plugin-googlemaps"
cordova-plugin-ionic-keyboard 2.1.2 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 2.0.1 "cordova-plugin-ionic-webview"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-whitelist 1.3.3 "Whitelist"

insert the command here
this.map.on(GoogleMapsEvent.MAP_LONG_CLICK).subscribe((mark) => {
      this.displayErrorAlert(mark); // in this log show {"lat": -27.54, "lng": -48.96}
      this.map.addMarkerSync({
        title: '@ionic-native/google-maps',
        icon: 'blue',
        animation: 'DROP',
        position: mark // if create a static {"lat": -27.54, "lng": -48.96} work
      });
    })

If you use @ionic-native/google-maps, please tell the package.json (only @ionic-native/core and @ionic-native/google-maps are fine mostly)
@ionic-native/core : "^4.10.0"
@ionic-native/google-maps : "^4.9.1"

Current behavior:
*I trunc numbers of position in this issue
Tried create a new marker by hold a click in map, but don't showing, just show te location of click in alert, when change position to a static position work (hold click and down a new marker).
inside displayErrorAlert() the object is {"lat": -27.54, "lng": -48.96} but if a console just lat or lng show undefined, found a issue very similar, but worked after update to new version, I tried this but same error.
Expected behavior:
Show a new marker in map and calculate the distance (this not implemented eat, but if have a easy way)

this.map.on(GoogleMapsEvent.MAP_LONG_CLICK).subscribe((params: any[]) => {

let latLng: any = params[0];

OMG,
Worked, tnks so so much.


Add new references

I have added a few references that seem relevant.

Thanks for the recommendation! There is one tiny comment: we usually keep the paper listed in chronological order, from latest to oldest. Can you help put the 2021 papers from the bottom to upper places? Thanks!

Thanks for the clarification, fixed now 👍

Thanks for the help!


Package template_project_gradle to a plugin

Maybe most of the build machinery should be hidden in a plugin. At least ev3dev.gradle would be probably duplicated everywhere almost unchanged.
https://docs.gradle.org/current/userguide/custom_plugins.html

With a plugin, the project is more flexible and it is possible to use with maven or gradle kotlin

Alpha version implemented:
https://github.com/ev3dev-lang-java/template-project-gradle/tree/plugined
https://github.com/ev3dev-lang-java/gradle-plugin
It seems to work pretty well so far.
I will need to clean up the gradle plugin a little. Also, a publishing infrastructure needs to be set up.

Hi @JakubVanek, yesterday, we had a good conversation about this topic.
I will post the summary:
Currently, Template project tries to help the newbies in Java with EV3 using a project example ready to use. Using Gradle or another build system like Maven, we can execute the software life cycle by command line, but in any case, it is necessary to edit the file config.gradle and normally, the user click in the list of tasks that it is possible to use in the IDE. If we evolve current implementation using a Gradle plugin, it is Ok, although we increase the complexity in the way to understand the whole Gradle project, but at the end, we are hiding details for the final user, so in perspective the benefit is the same.
So, using a Gradle plugin or using current implementation based on Gradle script files
https://github.com/ev3dev-lang-java/template-project-gradle/commit/529f53436c9d4978df455f693fb3151451cdbf7e
we increase project complexity but we win in the way to maintain multiple projects, but I don't have a negative feeling.
If we add a Gradle Plugin, we need to create the same approach for a Template Project based on Maven, in order to close the gap. Maven in general is more used than Gradle in a general way.
At the end, we need a Intellij plugin simply a bit more the tasks to deploy a jar in a brick and some external activities.
https://github.com/ev3dev-lang-java/ev3dev-lang-java/issues/582
But in terms of priorities, it is more urgent to have Template project based on Maven.
https://github.com/ev3dev-lang-java/ev3dev-lang-java/issues/636
So, Ok with the evolution of Gradle project but we will have to create a Maven project and later the plugin.
Juan Antonio


[FEATURE] Namespaces and exceptions

Support Kube namespaces by allowing the Scout's creator to pass arguments to the id_plugin.
Be much, much more careful about exceptions when using requests, so that Scout applications can ride through connectivity issues or bad DNS names or whatnot.

Looks OK. Only suggestion I would make: Scout is now getting to the point where it's hard to eyeball the code and go "Yea that's Python 2 and Python 3" compatible. We should add a test that ensures it works in 2.7, 3.4+
We need Python 2 compatibility because of Forge.


Component part cannot be added to multiple BOMs

I am seeing an issue where once I add a component part to a BOM of an assembly, I cannot add that component to another assembly's BOM (or at least it's inconsistent).
Below are screenshots demonstrating the issue.  What's interesting is that if I click "Add Item" a couple of times within the 2nd assembly's BOM, the component will sometimes show up.

InvenTree Version | 0.1.5 pre
Django Version | 3.0.7
Commit Hash | 73259c0
Commit Date | 2020-11-20

Very strange that you say the part appears (sometimes) but not all the time..
There is some logic in place to prevent circular BOM references.  e.g. A -> B -> C -> A
However based on your screenshots I don't think this is kicking in here.
Can you add a few dummy parts and see if you can spot a pattern of when the parts appear and when they do not?

Hi @SchrodingersGat ,
The two similar screenshots were taken without any change in the parts.  I just click "Close" and then "Add Item" again.  It seems to be random (which is strange) whether or not it shows the component.  I only get the issue by closing and adding item.  The issue does not occur if I just select the drop down again within the "Create BOM item" view.

I think I have worked this out, I was able to get the same seemingly random behaviour. It is very odd.
Can you test out #1142 and see if it works?

That seems to fix it!  Nicely done!


A list of requirements for Windows 10 install

I wanted to make sure I didn't distract from the documentation too much for Windows 10.  If these items are added to windows, the original step by step should work for both Windows and MAC users.

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

Codecov Report

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

@@           Coverage Diff           @@
##           master     #109   +/-   ##
=======================================
  Coverage   94.15%   94.15%
=======================================
  Files         103      103
  Lines        4794     4794
  Branches       94       94
=======================================
  Hits         4514     4514
  Misses        280      280

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 fb5dea5...e06d6ee. Read the comment docs.

djbooboo! gotta change your commit history to the right email so you can have the CLA appear signed

Yeah @rebstar6 I am probably gonna close this pull request and resubmit.  I had 2 different accounts active during this PR ... screwed up everything.

Looks like Mike Winslow changed to djbooboo half way through.  @djbooboo you will need to amend author your earlier commits and change them to djbooboo; otherwise the CLA tool will complain

closing for now, @djbooboo we'll have you reopen when it's not blocked by @mitruly's guide changes


365 learning pathways "custom learning admin" page blank

I've just provisioned a brand new pathways site and the "custom learning admin" section doesn't load on any browser' it's just a blank screen. The app catalog we have is fine
Can someone please advise a fix for this as I have raised with MS directly but they haven't been able to resolve.

Please let me know any further info you need and i'll happily provide it.

Based on the error message in the console in the screen shot I think you either provisioned to a different site collection or changed the url of the site collection. Assuming that this is the url of the site collection you want registered as your main learning pathways site then you need to run a powershell script to update the tenant app property to indicate what the site collection url is of the root learning pathways site.
Here's a link to the script that updates the url: https://github.com/pnp/custom-learning-office-365/blob/main/installation/UpdateM365lpSiteUrl.ps1

Hi Julie,
I've deleted the custom learning app from the App catalogue and re-provisioned the site several times. I have also deleted all other pathway sites we have had in existence and we still get this error.
Can I ask, Is it possible to have more than 1 pathways site URL in existence or does this cause issues?

Thankyou so much for all your help Julie :)


Adds a Linux "desktop app"

Adds a Linux "desktop app" for AMD64 and ARM64 platforms that builds into it Livebook and all its dependencies, with similar Just Works Without Knowing How To Install All The Dependencies kind of intent to the Mac and Windows apps. Namely, it includes:

The Livebook server
A GTK / Rust based app indicator app made for the purpose (https://github.com/mz2/livebook-indicator) that should work in various popular Linux desktop environments that support libappindicator.
Elixir 1.14 RC 1 (since I noticed 1.14 is a requirement on the main branch), built from source.
Erlang OTP 25.0.4, from packages.erlang-solutions.com.
git, wget, cmake that were noted in the Dockerfile as useful dependencies to have around depending on packages users would use (I have not really tested any of this yet).

The build configuration is right now for Livebook 0.6.3, but I have also tested building the current main branch head, and it is simple enough to make the built Livebook version configurable (it is also not necessary at all to keep this source in the Livebook repo btw, the source code is pulled by snapcraft at build time completely independently).
Known issues

The indicator app's livebook server process management is, shall we say, quick and dirty. It really is intended to demonstrate the concept more so than to be production ready, so if you otherwise like this sort a solution for Linux, please advise how the OS processes for the app indicator and the server should be arranged (how should they communicate? should the server be a systemd managed service perhaps instead?).
I don't know what I'm doing with the COOKIE file. I wrote it in the released build, but I'm not sure that's the way to do it?
The Livebook icon is duplicated inside the repo, whereas it probably can just by symlinked in place.

Testing it out
The app is available as a test as an unlisted package on the Snap Store. It can be installed as follows on any Linux system with snapd installed:
sudo snap install livebook --edge

After installing, you can run the app either from the command line with the command livebook which should launch the browser window and insert a desktop launcher in your libappindicator enabled task bar of choice (GNOME, KDE, MATE, ...) or using the desktop launcher that the package installs.
You can also build the package locally using snapcraft (optionally using a LXD managed system container with the --use-lxd flag):
snapcraft # --use-lxd
sudo snap install ./livebook_0.6.3_amd64.snap --devmode # ... or arm64.snap if you built it on ARM64

If this package is something you'd be interested, I'm naturally happy to hand over the livebook app name on Snap Store for you to manage publishing the application and managing its metadata. I'm also happy to help automate the Snap publishing with some GitHub actions.

It pains to say this but it is impractical for a small team like ours to develop and maintain Livebook Desktop for multiple platforms. Therefore, the simplest way is for us to try to use a cross-platform toolkit.
This was our first attempt but WxWidgets fell short of this goal. So we wrote a small kit around Swift and DotNet. Therefore, the best option to get Linux support is by running either the Swift or dotnet toolkits on Linux (and it seems the dotnet one is the most accessible thanks to mono).
So if anyeone wants to give us a hand, you can get started by trying to run the dotnet demo app on Linux. It may currently use some Windows APIs but our hope is that they can be replaced by https://www.mono-project.com/docs/gui/gtksharp/.
Thanks for the PR, the insights, and we will be glad to answer further questions.

That makes a lot of sense (and DotNet sounds more practical).


feat(presenter): add method for language switch that changes the url

🍰 Pullrequest

Issues

None

Todo

[X] None

The URL should have one more /: When you are at asection e.g. http://localhost:3000/#products and change the language, the resulting URL looks like this http://localhost:3000/en#products. It would be better, if it instead had the versions

http://localhost:3000/#products
http://localhost:3000/de/#products
http://localhost:3000/en/#products

@mahula this is not working:

If you open http://localhost:3000/de/#products in the browser it will automaticaly be changed to http://localhost:3000/de#products

Works. But the routes are not stable. When changing locale, I have the locale in the url. Next I click on some link or anchor, the locale disappears

Yes it is a known issue but we think that this would be ok for now


Adding uvFromPoint (clientX, clientY)

Referring to discussion.
Added tests, but I couldn't sucessfully run  npm run test yet.
Added some description in the docs.json for explanation.
Own toString() Method for Vector2.
Works pretty much like the positionAndNormalFromPoint() method, but only returns a Vector2D.

I made the changes you request. Let me know if it suits your proposals.


Where are the answers? :(

I got this book and I'm going through the exercises but I can't find the answers 🔑 anywhere. Am I missing something obvious? 😢

Hi Mario,
Because the book is used in some classes, I don't keep the solutions in a public place. But I'll attach a zip file for you!
Allen
On Fri, Jan 26, 2024, at 10:46 AM, Mario Gintili wrote:

I got this book and I'm going through the exercises but I can't find the answers 🔑 anywhere. Am I missing something obvious? 😢
—
Reply to this email directly, view it on GitHub https://github.com/AllenDowney/ModSimPy/issues/88, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOLP3NLNL32HIEN3UFYFU3YQPFWRAVCNFSM6AAAAABCMK43BCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYDENBTG4ZDCMY.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

—
Allen Downey
Probably Overthinking It: probablyoverthinking.it

Hello @AllenDowney thank you. I don't think the .zip was attached - can you please attach it? 😄

Looks like the attachment didn't get through GitHub. You should be able to download it here: https://drive.google.com/file/d/1vQ2pRnzSuKZnZfMAfqGpOqACtyQwKew1/view?usp=sharing

@AllenDowney thanks a lot! I think this should go on the readme or be available somehow, although I know its not your intent

Yeah, I'm not sure how hidden I should try to keep the solutions. I mean, that link is visible now, so it's pretty much out of the bag. I'll give it some thought.

you can just leave it here, if someone's keen enough to go through the issues list I'm sure they have a good reason to want to have the answers 🌞


Crash on specific ads when scolling (iOS)

[REQUIRED] Step 1: Describe your environment
Plugin Version
3.0.0, but also happened before
Platform
It only happens on iOS
[REQUIRED] Step 2: Describe the problem
Steps to Reproduce

Have Ads in a Carousel on iOS
Scroll very fast
Crash

It does only happen with specific ads and when scrolling to the ad fast.
Crash:
https://github.com/googleads/googleads-mobile-flutter/assets/3436399/a551eb58-9221-4ac4-8839-5ff2a1e60427
No Crash:
https://github.com/googleads/googleads-mobile-flutter/assets/3436399/25d363f2-1011-4e34-ae50-e6f9e3a51c43
Expected results: The app should not crash
Actual results: The app crashes
Sentry output
As I cannot reproduce it locally and it only happens with specific ads, here the information I found on sentry:

The loaded ad:
(I dont know what data I can show here publicy so I replaced ca-app-pub and my App name)
GET https://googleads.g.doubleclick.net/mads/gma?os_version=16.2.0&ms=0vqgtZvOsjtfWEaGuKj2nSJyNA9JJ-u6W8wYCXivrdDa64baKKTq8Vue8hhewQKuoh8R_nnb4i-A0MUoIx__tBuA3hB7C96FwFMEvO4zx9p5nZj2LYd6DWDJcYN21pm-iAT860NSrSeqYSE8K_CCrZf0nXBrnQE7k7ABe6CURRgW1Hu3ijIARsBWcmxAomil-xfUbahEWn-p8wqvOtDp4M2Pk6irG6C5REFeKqdyorbcYloZIXCpIMoWC0jMsnA0E4_GlTSCCSyggN6pqN2K_uIFxKXl60QbwQTJdTrdnX4z9NykiRvXFwPBkwpmwfQ1O36UBMvinOK65qLZBhmaJA&u_so=p&omid_v=1.3.37-google_20220829&submodel=iPhone14%2C3&request_agent=Flutter-GMA-3.0.0&eid=318502621%2C318508243%2C318500618%2C318494274%2C318507075%2C318508442%2C44766145&net=ed&u_sd=3&js=afma-sdk-i-v10.4.0&fbs_aiid=98183EDA9E9F4BA39408C2BFB56E651C&u_h=926&fbs_aeid=-2172664942540844694&u_w=428&guci=<IP_ADDRESS>.<IP_ADDRESS>&attmas=denied&sdk_apis=7%2C8&omid_p=Google%2Fafma-sdk-i-v10.4.0&format=308x926_mb&rafmt=103&an=1.7.5.iphone.at.navil.myApp&u_audio=1&swipeable=1&isv=16.2&skan=cstr6suwn9%2C4fzdc2evr5%2C4pfyvq9l8r%2C2fnua5tdw4%2Cydx93a7ass%2C5a6flpkh64%2Cp78axxw29g%2Cv72qych5uu%2Cludvb6z3bs%2Ccp8zw746q7%2Cc6k4g5qg8m%2Cs39g8k73mm%2C3qy4746246%2C3sh42y64q3%2Cf38h382jlk%2Chs6bdukanm%2Cprcb7njmu6%2Cv4nxqhlyqp%2Cwzmmz9fp6w%2Cyclnxrl5pm%2Ct38b2kh725%2C7ug5zh24hu%2C9rd848q2bz%2Cy5ghdn5j9k%2Cn6fk4nfna4%2Cv9wttpbfk9%2Cn38lu8286q%2C47vhws6wlr%2Ckbd757ywx3%2C9t245vhmpl%2Ca2p9lx4jpn%2C22mmun2rn5%2C4468km3ulz%2C2u9pt9hc89%2C8s468mfl3y%2Cav6w8kgt66%2Cklf5c3l5u5%2Cppxm28t8ap%2C424m5254lk%2Cecpz2srf59%2Cuw77j35x4d%2Cmlmmfzh3r3%2C578prtvx9j%2C4dzt52r2t5%2Cgta9lk7p23%2Ce5fvkxwrpn%2C8c4e2ghe7u%2Czq492l623r%2C3rd42ekr43%2C3qcr597p9d&loeid=44766145&preqs=32&seq_num=34&time_in_session=7050&preqs_in_session=32&pcc=0&sst=1689493200000&output=html&region=mobile_app&u_tz=480&content_url=https%3A%2F%myApp.com&client=ca-app-pub-XXXXXXXX&slotname=4942428503&hl=en&gsb=4g&ogsb=4g&apm_app_id=1%3A247129465780%3Aios%3A67a503429cb484491848e1&gmp_app_id=1%3A247129465780%3Aios%3A67a503429cb484491848e1&apm_app_type=1&app_wp_code=ca-app-pub-XXXXX&app_code=4521957808&caps=interactiveVideo_inlineVid... [200]
{
reason: no error,
request_body_size: 0,
response_body_size: 0
}

As mentioned, it does not happen with all ads. The ad above is one where is crashes and we can consistently reproduce it on production when those apps are offered.
I can send the full Sentry event if needed.

Resolving dependencies...
_fe_analyzer_shared 61.0.0 (62.0.0 available)
analyzer 5.13.0 (6.0.0 available)
cancellation_token 1.6.1 (2.0.1 available)
collection 1.17.1 (1.17.2 available)
dots_indicator 2.1.2 (3.0.0 available)
dropdown_button2 2.1.4 (2.3.5 available)
file 6.1.4 (7.0.0 available)
injector 2.0.0 (3.0.0 available)
intl 0.18.0 (0.18.1 available)
matcher 0.12.15 (0.12.16 available)
material_color_utilities 0.2.0 (0.8.0 available)
objectid 2.1.0 (3.0.0 available)
source_span 1.9.1 (1.10.0 available)
stack_trace 1.11.0 (1.11.1 available)
stream_channel 2.1.1 (2.1.2 available)
stylish_bottom_bar 1.0.0 (1.0.3 available)
test_api 0.5.1 (0.6.1 available)
visibility_detector 0.3.3 (0.4.0+2 available)
! webview_flutter_wkwebview 3.5.0 (overridden) (3.7.0 available)

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.10.6, on Microsoft Windows [Version 10.0.19045.3208], locale de-AT)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 32.0.0-rc1)
[√] Android Studio (version 2021.2)
[√] IntelliJ IDEA Ultimate Edition (version 2020.3)
[√] VS Code (version 1.80.0)
[!] Connected device
! No devices available
[√] Network resources
! Doctor found issues in 1 category.

Hi @Navil
Are you implementing native ads in the carousel?
You should narrow down the issue by removing the usage of 3rd party plugins/packages one by one, unrelated/unaffected pages, and isolating the affected page/widget that can be run independently. If the issue's still reproducible, please provide that main.dart file.
But if it can't be reproducible locally, please try to get the complete crash stack trace in text format and share it here so that we can verify the issue properly. Thank you!

Thank you for your input @huycozy ,
I am not using native ads. Once I disabled "Video" ads, the crash disappeared.

And we are able to reproduce it with specific ads once we enable it again. The video on top shows such an ad.
Is there a way I can forward you the entire sentry event (with stack traces) somewhere as I am not sure if it contains any sensitive data?

What kind of ads are you implementing there in the carousel? (banner ad, native ad).
I guess this issue is not reproducible with test ad id, right? In this case, can you please try running project in release mode (--release) to see if the crash can be reproducible? If it appears, please share the crash stack trace here or you can share it to my email (in my GH profile) so that we have more information to investigate the issue. Thank you!

It is a banner ad. I will sent you the sentry event.
I will try to reproduce it in release mode.

Does the crash occur in release mode?

 Spotlighted log (received log via email)
.....
"environment": "production",
  "exception": {
    "values": [
      {
        "type": "NSInvalidArgumentException",
        "value": "*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil",
        "stacktrace": {
          "frames": [
            {
              "function": "<redacted>",
              "in_app": false,
              "data": {
                "symbolicator_status": "unknown_image"
              },
              "image_addr": "0x0",
              "instruction_addr": "0x1046fc4d0",
              "symbol_addr": "0x0"
            },
            {
              "function": "main",
              "symbol": "main",
              "package": "/private/var/containers/Bundle/Application/230D9BF8-A046-4566-930E-40EA893E8E8A/Runner.app/Runner",
              "filename": "AppDelegate.swift",
              "abs_path": "/Users/runner/work/aupair/aupair/ios/Runner/AppDelegate.swift",
              "lineno": 5,
              "pre_context": [
                "import UIKit",
                "import Flutter",
                "",
                "@UIApplicationMain"
              ],
              "context_line": "@objc class AppDelegate: FlutterAppDelegate {",
              "post_context": [
                "  override func application(",
                "    _ application: UIApplication,",
                "    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?",
                "  ) -> Bool {",
                "    GeneratedPluginRegistrant.register(with: self)"
              ],
....

I received the log you sent to me via email. It seems the crash occurs on AppDelegate.swift file at line 5th. Do you implement any other code there? Can you please also share the code in ios/Runner/AppDelegate.swift? (You should remove any sensitive code if any)

Hey the code in there looks like this:
import UIKit
import Flutter

@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
  override func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
  ) -> Bool {
    GeneratedPluginRegistrant.register(with: self)
    return super.application(application, didFinishLaunchingWithOptions: launchOptions)
  }
}

The code looks normal and nothing seems to cause the crash here. Please check this in release mode. If it's reproducible, please provide the complete output of flutter run --release -v. Thank you!

I do not have an iOS device and the emulator tells me:
Release mode is not supported by iPhone 14 Pro Max.
Any other thing I could do to help in the investigation?

Yes, you can't run release mode in the emulator/simulator. Unfortunately, it seems there is no other choice. Providing a full stack trace by running locally will help us better investigate the issue.


Document expected delay on CNAME change

The SSL certificate issuing takes about one hour in this case according to comment in #2652.

This is only the case for users who had an existing custom domain setup and then corrected their setup to comply with the custom domains docs. This doesn't apply to new setups. Perhaps there's a way to make that clear.

Also one hour apparently is not enough. It took more than 12 hours with docs.weblate.org, I've switched docs.phpmyadmin.net about two hours ago and still not working...

Also one hour apparently is not enough. It took more than 12 hours with docs.weblate.org

Did you have a CAA record on that domain? It may have been due to that.

docs.phpmyadmin.net

I don't even see that domain in the list of certificates that are pending. I see rtd-backend.phpmyadmin.net, but not docs.phpmyadmin.net. It is possible since we switched over a few weeks ago that the request to issue the certificate timed out. If you save the domain record in the Read the Docs UI (https://readthedocs.org/dashboard/<slug>/domains/), it should trigger adding the certificate again.
The real answer here is I need to get this status raised up to users in the UI.

It was already there, but I've removed and added it back now. And it now works.

srpna 2018 17:52:23 SELČ, David Fischer<EMAIL_ADDRESS>napsal:

Also one hour apparently is not enough. It took more than 12 hours
with docs.weblate.org

Did you have a CAA record on that domain? It may have been due to that.

docs.phpmyadmin.net

I don't even see that domain in the list of certificates that are
pending. I see rtd-backend.phpmyadmin.net, but not docs.phpmyadmin.net.
It is possible since we switched over a few weeks ago that the request
to issue the certificate timed out. If you save the domain record in
the Read the Docs UI
(https://readthedocs.org/dashboard/<slug>/domains/), it should
trigger adding the certificate again.
The real answer here is I need to get this status raised up to users in
the UI.

And yes I did have CAA on both domains, but it was properly adjusted so it should not cause additional issues.

srpna 2018 17:52:23 SELČ, David Fischer<EMAIL_ADDRESS>napsal:

Also one hour apparently is not enough. It took more than 12 hours
with docs.weblate.org

Did you have a CAA record on that domain? It may have been due to that.

docs.phpmyadmin.net

I don't even see that domain in the list of certificates that are
pending. I see rtd-backend.phpmyadmin.net, but not docs.phpmyadmin.net.
It is possible since we switched over a few weeks ago that the request
to issue the certificate timed out. If you save the domain record in
the Read the Docs UI
(https://readthedocs.org/dashboard/<slug>/domains/), it should
trigger adding the certificate again.
The real answer here is I need to get this status raised up to users in
the UI.

I've added CAA docs and adjusted wording based on your suggestion.

Thanks. Looks great!