Flash memory read / write issues?

Howdy,
I was wondering if anyone has had any luck with the flash memory module for reading and writing? I am using the Nucleo-G474RE and am trying to write some data to flash memory using RTIC 1.x as the "RTOS". The main issue seems to be when calling the FlashWriter::write function that core::ptr::write_volatile doesn't write, and when the subsequent core::ptr::read_volatile is called, the results don't match and the function returns with Err(Error::VerifyError);
There isn't a working flash example, so here is a summary of my attempt that hopefully can be added to the examples when things are up and running. The PLL config is being used to bump the clock speed up to 128MHz and get the ADC running at a 1MHz (not included in the test). Removing this code and checking clock domains will be the next step.
The example project should compile and run using the Segger J-Link tools using VS Code (tested on my Macbook Pro M2).

(Just a user here)
Note sure if this is the problem, however from what I can tell from the datasheet, max fVCO_OUT is 344MHz.
pll_config.mux = stm32g4xx_hal::rcc::PLLSrc::HSI; // 16MHz
pll_config.n = stm32g4xx_hal::rcc::PllNMul::MUL_64;
pll_config.m = stm32g4xx_hal::rcc::PllMDiv::DIV_2; // f(vco) = 16MHz*64/2 = 512MHz <----- This is more than 344MHz
pll_config.r = Some(stm32g4xx_hal::rcc::PllRDiv::DIV_4); // f(sysclock) = 512MHz/4 = 128MHz

and the above seems to set it to 512MHz.

Thanks for taking a look, that is a good idea about using CubeMX. I tried going with the default clocking solution and that didn't seem to work either. The test project is updated based on your suggestions to reduce the f(vco) from 512MHz -> 256MHz by halving PLL_N and PLL_R to still maintain the 128MHz sysclock speed.

I am probably reading something wrong but does it not say:

Perform the data write operation at the desired memory address, inside main memory
block or OTP area. Only double word can be programmed.

Then why does the code say:

// Flash is written 16 bits at a time, so combine two bytes to get a
// half-word

Again sorry if I am completely misunderstanding things. :)

I am also wondering a bit about the flash wait states at higher system frequencies, this does not seem to match RM0440, again from what I can tell... It seems to be ok for default clock settings though.

Thanks for continuing to dig on this. You may be on to something, after the core::voltaile_write the Status Register bit 6 SIZERR is set.

Another update, the Nucleo-STM32G474 on our boards is the STM32G474RE6TU, which has a different flash layout (see "Embedded Flash memory for Category 3 devices" chapter). Unfortunately, the HAL doesn't expose the DBANK bit in the FLASH_OPTR register; but upon manual inspection this bit is set. This means that this chip has 2 banks of 256kB banks with a page size of 2k instead of 4k. This is all to say the erase function isn't working either on the Nucleo boards.
I think the best solution is to configure any STM32G474 with a DBANK of 0, as the STM32G474 SVD file that I have seems to be missing DBANK. Alternatively, we could add new part numbers and more granular configurations.
Any thoughts?

Proposed fixes: https://github.com/stm32-rs/stm32g4xx-hal/pull/83
Changing from the intended double bank to single bank really messed up subsequent flash attempts, so I left the device as in whatever bank it comes in. FlashWriter now requires the page size to be passed in for certain chips instead of assuming the page size.

Regardning DBANK
Maybe something like this which generates these extra fields for cat 3 devices (stmg471, 473, 474, 483 and 484):
             #[doc = "Bit 19 - Window watchdog selection"]
             #[inline(always)]
             #[must_use]
             pub fn wwdg_sw(&mut self) -> WWDG_SW_W<19> {
                 WWDG_SW_W::new(self)
             }
+            #[doc = "Bit 20 - Bank to boot from"]
+            #[inline(always)]
+            #[must_use]
+            pub fn bfb2(&mut self) -> BFB2_W<20> {
+                BFB2_W::new(self)
+            }
+            #[doc = "Bit 22 - Single or dual bank mode"]
+            #[inline(always)]
+            #[must_use]
+            pub fn dbank(&mut self) -> DBANK_W<22> {
+                DBANK_W::new(self)
+            }
             #[doc = "Bit 23 - Boot configuration"]
             #[inline(always)]
             #[must_use]
             pub fn n_boot1(&mut self) -> N_BOOT1_W<23> {
                 N_BOOT1_W::new(self)
             }

That seems like a good idea. I'm still pretty new to Rust and the generation of the HALs for this chipset, where in the pipeline would this run?

stm32g4 is a dependency of stm32g4xx-hal. stm32g4 however is an autogenerated crate that is generated by stm32-rs/stm32-rs which is a repo full of patches and things to generate correct pac crates from the (not always so correct) svd files

stm32g4 is a dependency of stm32g4xx-hal. stm32g4 however is an autogenerated crate that is generated by stm32-rs/stm32-rs which is a repo full of patches and things to generate correct pac crates from the (not always so correct) svd files

At what stage does this crate pull and compile new yaml or SVD files? The cargo file for the stm32g4xx-hal uses version stm32g4 = "0.15.1", would this need to be updated or is the yaml file patch not big enough to cause a version uprev in the stm32-rs/stm32 crate?

I can not speak as to when(or if) https://github.com/stm32-rs/stm32-rs/pull/880 might get merged, that would depend on when someone has time to review it. Whether it would be big enough for a new release, I dont know.. I am quite new here too :) I also believe there might have been some breaking changes since the release used by stm32g4xx-hal.
In the meantime, smt32-rs/stm32-rs is not itself a crate, just a tool/configuration to autogenerate crates. instructions here for how to build. This will, among a lot of other crates, generate a /some/path/stm32-rs/stm32g4 which can be specified as dependency instead of "0.15.1".

Closed: https://github.com/stm32-rs/stm32g4xx-hal/pull/83#event-11096505582


Cristobal Alexander Lopez : Bio

Checklists
General Checks

[x] the branch is up to date with main/master
[x] the code works when pulled and run locally
[x] All CI checks pass
[x] all conflicts are resolved (if any)
[x] PR has a descriptive title
[x] PR has appropriate labels and milestones for easy identification
[x] PR it is assigned to the owner
[x] reviewers are assigned
[x] the PR contributes only one focused change
[x] It is in the appropriate column in the project board (if necessary)
[x] has short and clear description
[ ] is linked to an issue (if it is related)
[ ] feedback is addressed (if any and if it is appropriate feedback.)

Markdown

[x] the markdown source is formatted
[x] spelling and grammar is correct in all text
[x] The markdown looks correct when you preview the file
[x] all links and images work
[x] any embedded code snippets are formatted

@Alexander-Segovia , very good job,
Could you please create an issue Cristobal Alexander: Create student bio and link it to this Pull Request (PR)?
Make sure that you have last version using command git pull origin main then push the changes again to the same branch then PR will update automatically.


Get the following error with my Vestacp nginx + php-fpm s

I tried to generate a ssl cert for one of my websites.
I used the following command:
letsencrypt-vesta admin signofkoen.nl
Got the following error

Failed authorization procedure. www.signofkoen.nl (http-01): urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://www.signofkoen.nl/.well-known/acme-challenge/TZg4pB5vQtKnGdXs735iMM9tkPdbm_-qwKON6a1Asm0: "

404 Not Found

Not Found

404 Not Found

Not Found
IMPORTANT NOTES:

The following errors were reported by the server:
Domain: www.signofkoen.nl
Type:   unauthorized
Detail: Invalid response from
http://www.signofkoen.nl/.well-known/acme-challenge/TZg4pB5vQtKnGdXs735iMM9tkPdbm_-qwKON6a1Asm0:
"

404 Not Found

Not Found
Domain: signofkoen.nl
Type:   unauthorized
Detail: Invalid response from
http://signofkoen.nl/.well-known/acme-challenge/oQNkROvPqkUwdap2zexRkn4QUuE0RyDkulaKVzXM3xI:
"

404 Not Found

Not Found
To fix these errors, please make sure that your domain name was
entered correctly and the DNS A record(s) for that domain
contain(s) the right IP address.
Let's Encrypt returned an error status.  Aborting.

Anyone has a clue how I could fix this?

Hello. I has the same error. But https://github.com/interbrite/letsencrypt-vesta/issues/5#issuecomment-170675822 this help me. You need manual edit nginx config. I think this resolve your problem.


Site not found on http://gooey.pwnt.co/

Getting 404 on the site.

Thanks for reporting this. Apparently when new versions of gh-pages are published, Github drops the custom CNAME record. The URL has been updated to https://austinsc.github.com/react-gooey


Broken image links in Slack documentation

Describe the bug
When on the Slack docs page, the images are returning 404s.
To Reproduce

Visit https://hawkins.gitbook.io/dispatch/configuration/plugins/configuring-slack.
See the broken image links on the page.

Expected behavior
The Images should properly load
Screenshots

Desktop (please complete the following information):
N/A
Smartphone (please complete the following information):
N/A
Additional context
None.

Thanks for reporting!

Thanks for reporting!


bevy behaves weird with reference to a relative path for Tiled TMX tileset references

Already pointed out here but let me elaborate.
Let's assume we collect our level files under assets/levels/level1.tmx and such.
tmx files refer to tilesets in their XML structure like so:
 <tileset firstgid="1" name="terrain_tileset" tilewidth="32" tileheight="32" margin="32" tilecount="216" columns="18">
  <image source="../kings_and_pigs/Sprites/14-TileSets/Terrain (32x32).png" width="608" height="416"/>
 </tileset>

Image source path is relative, but that does not work with bevy as expected:
2023-10-26T21:40:10.300148Z  WARN bevy_asset::asset_server: encountered an error while reading an asset: path not found: /home/erayerdin/Projects/Trash/bvplatform/assets/levels/levels/../kings_and_pigs/Sprites/14-TileSets/Terrain (32x32).png
2023-10-26T21:40:10.300199Z  WARN bevy_asset::asset_server: encountered an error while reading an asset: path not found: /home/erayerdin/Projects/Trash/bvplatform/assets/levels/levels/../kings_and_pigs/Sprites/11-Door/Idle.png
2023-10-26T21:40:10.300250Z  WARN bevy_asset::asset_server: encountered an error while reading an asset: path not found: /home/erayerdin/Projects/Trash/bvplatform/assets/levels/levels/../kings_and_pigs/Sprites/14-TileSets/Decorations (32x32).png

The path defined in TMX is ../kings_and_pigs/Sprites/14-TileSets/Terrain (32x32).png. On the other hand, it is resolved as levels/levels/../kings_and_pigs/Sprites/14-TileSets/Terrain (32x32).png. levels directory is added twice for some weird reason.

Wont fix. As long as tiled examples work that is enough its not meant to be a fully featured loader.


Change to use https URLs for GitHub repos once repos are made public

After the cli and taxonomy repos are made public, we need to change our references to them to use the https URLs which will support anonymous access.
➜  cli env:(instruct-lab) git:(main) ✗ git --no-pager grep "git@"
README.md:88:   pip install git+ssh://git@github.com/instruct-lab/cli.git@stable
README.md:149:3. When prompted, clone the `git@github.com:instruct-lab/taxonomy.git` repository into the current directory by typing **y**.
README.md:160:   `taxonomy` seems to not exists or is empty. Should I clone git@github.com:instruct-lab/taxonomy.git for you? [y/N]: y
README.md:161:   Cloning git@github.com:instruct-lab/taxonomy.git...
cli/config.py:13:DEFAULT_TAXONOMY_REPO = "git@github.com:instruct-lab/taxonomy.git"
containers/cuda/Containerfile:16:RUN --mount=type=ssh,id=default python3.11 -m pip install git+ssh://git@github.com/instruct-lab/cli.git@stable
docs/containerization.md:29:RUN --mount=type=ssh,id=default python3.11 -m pip install git+ssh://git@github.com/instruct-lab/cli.git@stable
docs/gpu-acceleration.md:39:  # git clone git@github.com:instruct-lab/cli.git

Closing as we now use pip install instructlab in documentation.


[5.5] Resolve issue with queuable notifications

This PR fixes the error reported by several people after a change in https://github.com/laravel/framework/pull/22119

Maybe @aaronhuisinga and/or @stevebeyatte who reported having issues with #22119 could take a look if this fix solves their use case?

This fixes the issue for me.

How does this actually affect anything? All you did was get rid of a temporary variable.

The temporary variable calls new $value->class which throws this exception when serialising queueable notifications.
Symfony\Component\Debug\Exception\FatalThrowableError · Class name must be a valid object or a string". Thrown from Illuminate/Queue/SerializesAndRestoresModelIdentifiers.php on line 51

I restored it to the way it was before my previous PR, whilst keeping the added functionality.
A better solution seemed to write a more explicit check:
if ($value->class) {
    $model = // ...;
}

But this seemed more intrusive, so I opted for the way it was in 5.5.21. If you'd like a more explicit condition, I'm more than happy to make the changes and add a test or two.

The issue occurs when trying to serialize an empty collection. Can you add a test on this so it's covered for future changes.
// ModelSerializationTest.php

    /** @test */
    public function it_serializes_an_empty_collection()
    {
        $serialized = serialize(new ModelSerializationTestClass(
            new \Illuminate\Database\Eloquent\Collection([])
        ));
        unserialize($serialized);
    }

Thanks @Daursu , added your test.
The question still stands if it would be a better idea to make the check before making a model based on $value->class more explicit by using is_class.

An empty collection will always have $value->class = null, but $value->id = [] will always be an array.
The code looks fine as it is now, and it preserves the intended behaviour in #22119.


Update index.md

Per customer question

Why did you said that "Razor Pages is the recommended approach to create a Web UI with ASP.NET Core 2.0."?
Does it mean that we should migrate to the Razor Pages approach from MVC approach?

@scottaddie  please review.


timestamp navigation moves POINT to interior of properties drawers

When the next/previous timestamp is within a property drawer,
functions org-mpv-notes-{next,previous}-timestamp move point to that
location. It should probably move to the first position after the
drawer.

Now org-mpv-notes-next-timestamp and org-mpv-notes-previous-timestamp use org-next-link to find links so links insides property drawers are not considered as links.
In previous version of org-mpv-notes while inserting a headline note, the timestamp was kept in property drawer, so this function needed to look in the whole buffer. But since now we ignore timestamp string and only consider mpv: links we can ignore looking inside property drawers.


Restore support for data annotations adapter registrations

The following methods were removed as part of porting over:
RegisterAdapter
RegisterAdapterFactory
RegisterDefaultAdapter
RegisterDefaultAdapterFactory
RegisterValidatableObjectAdapter
RegisterValidatableObjectAdapterFactory
from DataAnnotationsModelValidatorProvider. We'll need to revive this once we finalize on the design of validation.
| 116 | 10216 | Reported By: Pranav K |

/cc @Eilon @danroth27 this is the missing extensibility point I mentioned in PR #3649. See https://github.com/aspnet/Mvc/pull/3649#discussion-diff-46242525 in particular. Users who create ValidationAttribute subclasses can't register client-side support for that attribute.
Fallback is to implement  IClientModelValidator in the custom ValidationAttribute or write an IClientModelValidatorProvider.

We've had no requests to port forward these old extensibility points.
Suggest closing /cc @Eilon @dougbu


TokenMismatchException in VerifyCsrfToken.php line 67:

I used default installation of Laravel 5.3.
and i did
laravel new blog
php artisan make:auth
configuration in .env
php artisan migrate
That's all I did. Everything wen smoothly but when I submit register form I get:
TokenMismatchException in VerifyCsrfToken.php line 67:

@et4m1r Just followed your exact steps and didn't end up with that problem. I was using a sqlite database, was running on my local macbook (no VM, homestead, etc) with PHP 7.0.9 and its built in server. Can you provide more details on your environment, because it seems like it isn't anything to do with laravel/framework.

i tried it on osx and windows.
osx was ok. but my installed project on windows is showing error like that. im using mysql.

@et4m1r Did you keep the register form open for too long before submitting it ?
Because csrf token expire in a certain time which depends on the config value of session.lifetime

Please ask on the forums.

http://laravel.io/forum/11-16-2016-tokenmismatchexception-in-verifycsrftokenphp-line-68
@GrahamCampbell asked alrdy. no reply now.
@shadoWalker89 i clicked login button immediately. tried after restart server


adding row of big ownCloud users to home page

@jancborchardt here you go, try two succeeding #562
Added first three logos. Forgive horrible test image, I had overlapping logo issues but that's solved now :dart:

Current look.
TODO:

[ ] decide on the 'other' three logo's.
[ ] ask & add Amnesty International Germany
[ ] ask & add Airbus (?)
[ ] ask & add Migros

Make the logos dark instead (half-grey) and don’t change the background. The blue is for the header and footer only. :)

@jancborchardt oh, again you crush me - so much work I put to find out how to do it this way ;-)

state before making it blue & grey background.

And after following orders:

I reluctantly and grudgingly admit it looks very nice.
Note that we can't put this live until we've had an OK about ARD and Amnesty.

NICE! Just details:

make the logos a slight bit darker. If it was 50% grey, make it 75% ;)
do not full-capitalize the »TRUSTED« – only »Trusted«
reduce the size of the TU Berlin logo a tad so it fits better with the others
can we add the »Amnesty« text below the logo, similar to this one their name is well-known, their logo not so much

Thanks! :)

Current state. But as discussed we might have to remove ARD (for now).

Bauhaus it is. @karlitschek if you like it this can go live later this week...

Great stuff!

really awesome guys :+1:

@jospoortvliet Nice :+1:

@jospoortvliet the link to bauhaus is broken. Can you fix that in a sep. commit?

@danimo done in a separate commit


Refactor few code style rules to separate docs

Summary
Creating this initial PR as the proposed structure of IDE code style rule docs.

Rule ID + option name based index
We retain the rule ID-agnostic table based on just the option groups and option names in individual Language rules, Formatting rules and Naming rules pages. This could be a preferred browsing approach for users who just want to look at options, and don't care about rule severities, and hence rule IDs.
All the rule specific content moves to separate idexxxx.md pages. Whenever multiple rules are used by the same option or an option group, we will create a single doc page, but have necessary id based redirects so the IDE analyzers themselves can use deterministic help links which end in idexxxx.

[Edit by gewarren to add preview link.]

@gewarren I cannot figure out the reason for the build failure. toc looks fine to me..

@gewarren I had to remove the quotes to fix it. I have also restructured the toc, so please take a look at Preview link.

I have few more rule ports in my branch, will address this feedback and push those out by EOD day. Thanks for the review.

@gewarren I think I addressed your feedback. Please let me know if I missed something. Thanks!

Thanks @gewarren!


Move Index folder out of Blogs folder

This is a pretty low priority request, but it has always bugged me slightly. Would it be possible to move the Index folder out of "Blogs" and into the parent folder, TumblThree?

It's easy to do, we could simple add a button and textbox for the index alone right under the download location in the settings.

I think this would be a good addition to the program well.  I'm not sure if this would allow the running of multiple instances but it would allow multiple instances to be able to use a common blog folder.  Actuslly, if the grouping of blogs idea was implemented this need becomes a moot point for me.


Only add commas between array elements when needed

Old behavior:
[1, -> [1,2, etc.
New behavior:
[1 -> [1,2 etc.
This fixes at least following tests:
ArrayValuesTest
MultipleArrayValuesTest
NestedArraysTest
EmptyStringSpaceTest

Thanks. I'm going to merge this, but it might get replaced in the future by code that is based on the way JSON5.stringify handles arrays, which is in turn based on how ES6 stringify handles arrays.


Add DevUtils.app (updated)

Types of Changes

[X] New addition to list

Proposed Changes
This adds https://github.com/DevUtilsApp/DevUtils-app to the list
There is already a PR for this, but it is 2 years old: https://github.com/jaywcjlove/awesome-mac/pull/835
PR Checklist

[X] I have read the CONTRIBUTING guide
[X] I have explained why this PR is important
[X] I have added necessary documentation (if appropriate)

@Nezteb thx!


refine error logs and messages, mainly for error cases of -strict-reconfig-check

Current error logs and messages, mainly for error cases of membership changes with -strict-reconfig-check, are not correct. This PR refines it. It would also improve other error cases.
I made this PR with 3 commits for easy review because they have relatively independent topics. If maintainers like squashed one, I'll update this PR.

I would prefer to see they are committed in separate PRs one by one, so we could dig into each of them deep enough to see whether the change is good.

@yichengq thanks for your review. I'm closing it and create new PRs.


Internal error - unsuported array::outbound_clicks

https://keboola.slack.com/archives/C09U3R1J4/p1557746189118400
unsuported array::outbound_clicks[{:action_type "outbound_click", :value "1"}]

duplicate of https://github.com/keboola/ex-facebook-graph-api/issues/68


Smithy-Tags not present in jar consistently

For any project that uses the Smithy gradle plugin, e.g., https://github.com/awslabs/smithy-gradle-plugin/tree/main/examples/adds-tags, on running gradle clean jar, the jar has the Smithy-Tags. Running gradle jar again changes the jar and it no longer has the Smithy-Tags.

After gradle jar, running the 2nd gradle jar -info shows:
> Task :smithyBuildJar UP-TO-DATE
Caching disabled for task ':smithyBuildJar' because:
  Build cache is disabled
Skipping task ':smithyBuildJar' as it is up-to-date.
:smithyBuildJar (Thread[Execution worker for ':',5,main]) completed. Took 0.011 secs.
:processResources (Thread[Execution worker for ':',5,main]) started.

> Task :processResources UP-TO-DATE
file or directory '/Volumes/workplace/github/smithy-gradle-plugin/examples/adds-tags/src/main/resources', not found
Caching disabled for task ':processResources' because:
  Build cache is disabled
Skipping task ':processResources' as it is up-to-date.
:processResources (Thread[Execution worker for ':',5,main]) completed. Took 0.002 secs.
:classes (Thread[Execution worker for ':',5,main]) started.

> Task :classes UP-TO-DATE
Skipping task ':classes' as it has no actions.
:classes (Thread[Execution worker for ':',5,main]) completed. Took 0.0 secs.
:jar (Thread[Execution worker for ':',5,main]) started.

> Task :jar
file or directory '/Volumes/workplace/github/smithy-gradle-plugin/examples/adds-tags/build/classes/java/main', not found
Caching disabled for task ':jar' because:
  Build cache is disabled
Task ':jar' is not up-to-date because:
  Input property 'rootSpec$2$1' file /Volumes/workplace/github/smithy-gradle-plugin/examples/adds-tags/build/tmp/jar/MANIFEST.MF has changed.
file or directory '/Volumes/workplace/github/smithy-gradle-plugin/examples/adds-tags/build/classes/java/main', not found
:jar (Thread[Execution worker for ':',5,main]) completed. Took 0.007 secs.

BUILD SUCCESSFUL in 573ms
3 actionable tasks: 1 executed, 2 up-to-date

which shows that smithyBuildJar task didn't run again (UP-TO-DATE), and when the jar task runs and says .../build/tmp/jar/MANIFEST.MF has changed and so builds a new jar.

This logic in SmithyBuildJar is finding the Jar task and adding Smithy-Tags to the manifest. So when smithyBuildJar is not re-run, when the jar task runs, the MANIFEST.MF doesn't have the Smithy-Tags.

Fixed in https://github.com/awslabs/smithy-gradle-plugin/pull/47


I am using npm and 'npm start' did not work complained of missing

I am on ubuntu 17.10.
New install of reason-cli.
Then installed bs-platform and create-react-app as in the example here.
Running npm start gave me the following error
./node_modules/reason-react/lib/js/src/ReactDOMRe.js
Module not found: Can't resolve 'bs-platform/lib/js/caml_array.js' in '/home/rluiten/cra2/node_modules/reason-react/lib/js/src'

I figured out I need to do a npm install before the npm start then things worked.
Just thought I would mention it as it stumped me for 10 minutes.

I just ran into the same issue.

Can you try using reason-scripts@beta3?

Sure! I would need some info on how to install beta3 though. I tried with npx create-react-app foo --scripts-version reason-scripts@beta3 but it doesn't work.

Try reason-scripts@next

It works with @next. Thanks!

As soon as tests are fixed that branch will be promoted to latest 🙂


Fetch unhandled curator exceptions

Resolves #6130 by stopping druid if curator reports unhandled errors

@hoesler I've checked https://issues.apache.org/jira/browse/CURATOR-229 for more details about this issue. This patch looks good to me. +1 after Travis.


Only apply UTC time if not tz info provided

allows filtering log when log time is not UTC

shall we add until argument to get_transaction_log_entries method as well?

Yes. That could be useful.


Updated README.md

Issue - #37
->Added a GIF
->Mentioned features
->Mentioned techstacks
->added collaborators at end

@apoorvaron  Can You check once and approve the PR

@divya-2910 Someone's PR have been merge. So, use updated Readme and do some changes

2 times back to top button
Live site + Demo are same , so remove live Live Site part
Add All Technologies used : PHP, MySQL, HTML5, CSS3, JavaScript, jQuery, Bootstrap
Gif not appearing check this
"https://github.com/apoorvaron/Shorty/blob/69fcb0109b8cd162a7523d4a7f91314eee012f67/README.md"

@apoorvaron
All changes that you mentioned above have been done.
The GIF is appearing  -> I clicked on the link that you gave and it is visible... Its taking a few seconds to parse
Letme know if any other changes needed

@divya-2910 Great Work !
Happy Contributing.

@apoorvaron Can you please add a GSSOC tag to this pr


Allow step regexes to span multiple lines.

Currently, the regexes used for step definitions are not allowed to span multiple lines, which makes them very hard to work with when they are long.  It also throws CodeSniffer warnings in our context files due to the line-length checks we have in place.
Standard DocBlock parsing allows for tags to span multiple lines, and Behat should support this.  If the line following the @tag line starts with more than one space character, then it is considered to be a continuation.
(See the parseTags() function at https://github.com/phpDocumentor/ReflectionDocBlock/blob/master/src/phpDocumentor/Reflection/DocBlock.php for the phpDocumentor parsing algorithm.)
Given that this will be in the middle of a regex, we need to handle white-space in a sane and understandable way.  I propose that all leading/trailing white-space is stripped from the lines, so that there is no unexpected behaviour.  In situations where there is white-space at the point of the line-break, we allow the regex to be closed/opened so that this can be explicitly included.
This means that either of the following would be equivalent:
/**
 * @When /^I do something that has quite a long description and sp
 *         ans multiple lines such as "([^"]*)"$/
 */

/**
 * @When /^I do something that has quite a long description and /
 *       /spans multiple lines such as "([^"]*)"$/
 */

They would both result in the following regex:
/^I do something that has quite a long description and spans multiple lines such as "([^"]*)"$/
However, this is just a suggestion for implementation.  You may be able to come up with a better alternative to handling this.
The important point is to allow these regular expressions to be wrapped.

:(


Chrom H.264

It looks like some people with chrome are beginning to have issues with pure h.264 video...
I hear that users who have upgraded from a version that used to support h.264 will still have the codecs available, and will appear to use h.264 correctly.
On the other hand, newer chrome users (or newer installed) are not able to play h.264 video.
Should we be falling back to flash when we play in chrome?  Do we need a different way of checking to see if we should use h.264 vs. flash -- since some users' chrome just breaks on the video.
(It seems the error occurs if you go here [chrome://flags/] and set to enable hardware-accelerated video decode... strangely enough some computers seem to have this enabled by default, while others have it disabled...)
Help?

@jbhorsewriter7 Closing old issues. If you'd like to reopen this, let us know. Thanks!


malloc() needs <stdlib.h>

Thanks fro contribution @saper. I think we should not use malloc here in first place. It should be C++ style memory allocations (new and delete).
But that can wait until later! :+1:
Is it compiling on FreeBSD otherwise?

Yes, it compiles and even the tests pass. I also compiled libsass 3.2.0 beta2  separately and it linked fine via LIBSASS_EXT.
Didn't try older versions of FreeBSD yet (and 32 bit).


How to enable at least one PCINT port and pin

Hi Nico
I am stuck, I use your IRLremote library and have the signal attached at A0 PC0. Therefore I included <PinChangeInterrupt.h> before
<IRLremote.h>  https://github.com/ArminJo/QuadrupedControl/blob/504561d053f1939da62ddb7e9c2d038050b99f22/src/IRCommandDispatcher.cpp.h#L72
The difference in code size between using pin 2 and pin A0 is now 500 bytes. How can I restrict your PinChangeInterrupt library to support only Pin PC0 aka A0.
Using
#define PCINT_ENABLE_PCINT8
#define PCINT_ENABLE_MANUAL

leads to #error Please enable at least one PCINT port and pin!
But I do not know how to enable at least one PCINT port and pin  😟
Why
using
#define PCINT_ENABLE_PCINT8
#define PCINT_ENABLE_PORT1
#define PCINT_ENABLE_MANUAL

gives no error (I feel the define PCINT_ENABLE_PORT1 is redundant) but also does not save one byte.
BTW: Whats about enabling discussions?

I've enabled the discussions (good suggestion), but how can i transfer this issue?
What board are you using? The library itself works properly, but now you want to make the code size even smaller, correct?

I've enabled the discussions (good suggestion), but how can i transfer this issue?
What board are you using? The library itself works properly, but now you want to make the code size even smaller, correct?

I've enabled the discussions (good suggestion), but how can i transfer this issue?
I guess transfering is not possible.

I have a Nano board. I used your NEC IR library together with the PinChangeInterrupt library, but wanted to switch to my own NEC library and keep the PinChangeInterrupt. But now I build my own Interupt handler and saved around 750 bytes compared to the former solution.

I've enabled the discussions (good suggestion), but how can i transfer this issue?
I guess transfering is not possible.

I have a Nano board. I used your NEC IR library together with the PinChangeInterrupt library, but wanted to switch to my own NEC library and keep the PinChangeInterrupt. But now I build my own Interupt handler and saved around 750 bytes compared to the former solution.


Bonfire: how to display a value of variable in a function

I would like to see the varaible value in the side panel , how can i do that. I tried using alert & console.log to no effect.
Thanks

return the variable.
This is not really an issue, but something that should be asked in the FCC Help Chat: https://gitter.im/FreeCodeCamp/Help
Please avoid making an issue for anything that is not a bug with FCC itself. The reporting guidelines: https://github.com/FreeCodeCamp/FreeCodeCamp/wiki/Help-I've-Found-a-Bug

i did ask didn't get a response thus i asked here

my bad i asked on https://gitter.im/FreeCodeCamp/FreeCodeCamp


[AutoRelease] t2-elasticsan-2022-09-26-92098(Do not merge)

https://github.com/Azure/sdk-release-request/issues/3095
Live test success

issue link:https://github.com/Azure/sdk-release-request/issues/3095


Likely libusb fault on Windows 10

Tried to install pyocd on Windows 10 today:
(venv) C:\Users\andrewl\Desktop\python\pyocdvenv\pyOCD>pyocd list
Exception ignored in: <function _AutoFinalizedObjectBase.__del__ at 0x000002DF16228AF0>
Traceback (most recent call last):
  File "C:\Users\andrewl\Desktop\python\pyocdvenv\venv\lib\site-packages\usb\_objfinalizer.py", line 84, in __del__
    self.finalize()
  File "C:\Users\andrewl\Desktop\python\pyocdvenv\venv\lib\site-packages\usb\_objfinalizer.py", line 144, in finalize
    self._finalizer()
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.8_3.8.1008.0_x64__qbz5n2kfra8p0\lib\weakref.py", line 566, in __call__
    return info.func(*info.args, **(info.kwargs or {}))
  File "C:\Users\andrewl\Desktop\python\pyocdvenv\venv\lib\site-packages\usb\_objfinalizer.py", line 104, in _do_finalize_object_ref
    obj._do_finalize_object()
  File "C:\Users\andrewl\Desktop\python\pyocdvenv\venv\lib\site-packages\usb\_objfinalizer.py", line 71, in _do_finalize_object
    self._finalize_object()
  File "C:\Users\andrewl\Desktop\python\pyocdvenv\venv\lib\site-packages\usb\backend\libusb1.py", line 604, in _finalize_object
    _lib.libusb_unref_device(self.devid)
OSError: exception: access violation writing 0x0000000000000024
  #   Probe                                               Unique ID
---------------------------------------------------------------------
  0   Thirdwayv DAPB Thirdwayv Bulk CMSIS-DAP Interface   AAAAAAAA

Presumably the fact that you're ignoring it means that you have seen it before.  I believe that this is a libusb bug and it's biting a lot of people in other projects as well.

I experience a similar issue with version 0.27.2 on Windows 10
C:\Users\Thomas>pyocd list
  #   Probe       Unique ID
--------------------------------------------
  0   STLINK-V3<PHONE_NUMBER>37510D33333639
Exception ignored in: <bound method _AutoFinalizedObjectBase.__del__ of <usb.backend.libusb1._Device object at 0x000002A2C8CDE780>>
Traceback (most recent call last):
  File "C:\Users\Thomas\AppData\Roaming\Python\Python36\site-packages\usb\_objfinalizer.py", line 84, in __del__
    self.finalize()
  File "C:\Users\Thomas\AppData\Roaming\Python\Python36\site-packages\usb\_objfinalizer.py", line 144, in finalize
    self._finalizer()
  File "c:\program files\python36\lib\weakref.py", line 548, in __call__
    return info.func(*info.args, **(info.kwargs or {}))
  File "C:\Users\Thomas\AppData\Roaming\Python\Python36\site-packages\usb\_objfinalizer.py", line 104, in _do_finalize_object_ref
    obj._do_finalize_object()
  File "C:\Users\Thomas\AppData\Roaming\Python\Python36\site-packages\usb\_objfinalizer.py", line 71, in _do_finalize_object
    self._finalize_object()
  File "C:\Users\Thomas\AppData\Roaming\Python\Python36\site-packages\usb\backend\libusb1.py", line 604, in _finalize_object
    _lib.libusb_unref_device(self.devid)
OSError: exception: access violation writing 0x0000000000000024

This should be addressed now. The problem was a long-standing bug in the pyusb package that surfaced after libusb changed something related to allocation management. pyusb 1.1.0 was recently released that should fix it. (Frustratingly, the fix was available in the pyusb repo for a long time, but never released until recently due to maintainership issues.)

@flit thank you, so the fix will be available in the next release?

The fix (and bug) was in pyusb, not pyocd. So if you run pip install -U pyusb it will update to the latest pyusb 1.1.0 that has the fix.
Fwiw, you can instead run pip install -U --upgrade-strategy=eager pyocd to update all pyocd's dependencies to the latest versions.

@flit I confirm it helped, the issue appears to be fixed

Excellent, thanks for confirming it works on your system!


Add swannodette

swannodette

ClojureScript (project)
"A Tool For Thought" (post)

I think the title of this issue needs to be changed from Add swannodette to Add handle swannodette to generate an automated PR.


Fixes geometry render bounds when curves are present

What does the pull request do?
This PR fixes the render bounds of geometries containing curves.
What is the current behavior?
The render bounds are too large, containing the curve control points.
Example:

At the top is DrawingImage with incorrect bounds, having the height almost twice as high as necessary.
At the bottom is a Path with correct bounds (Path has its own bounds calculation).

Show code
<StackPanel Orientation="Vertical" Spacing="20" Margin="20">

  <Border HorizontalAlignment="Left" Background="Blue">
    <Image Width="128">
      <DrawingImage>
        <DrawingImage.Drawing>
          <GeometryDrawing Brush="Yellow" Geometry="{StaticResource Geometry}" />
        </DrawingImage.Drawing>
      </DrawingImage>
    </Image>
  </Border>

  <Border HorizontalAlignment="Left" Background="Blue">
    <Path Width="128" Fill="Yellow" Data="{StaticResource Geometry}" />
  </Border>

</StackPanel>

Geometry:
<Geometry x:Key="Geometry">M0,0 A128,128 0 0 0 128,0</Geometry>

What is the updated/expected behavior with this PR?
The bounds are correctly computed.
Result:

How was the solution implemented (if it's not obvious)?
SKPath.TightBounds is used instead of SKPath.Bounds.
(These were the only two usages of Bounds, other types using SKPath were already using TightBounds.)
A unit test has been added.
Note that an existing unit test has been modified, because it used round line caps, which caused the same problem.

The new test was passing on Windows but failing on Linux and macOS due to a floating point rounding error at the 6th decimal (17.14875030517578 vs 17.148752212524414).
The tests were already using a tolerance of 0.001, but still checked for a perfect Equals match right after. This has been changed to use xUnit's Assert.Equal(x, y, tolereance) instead.


Implement the missing parts to link message layer to CHIP

Problem
Currently, message layer was pulled in with headers-only for dependencies,  it was not linked to CHIP stack yet.
Proposed Solution
Need to implement the dependencies of message layer to make it link to CHIP stack. Those dependencies includes a basic set of protocol implementation which enable basic feature of message layer

We have decided to cherry-pick the features from wml to current stack instead of using /lib/message


nix-daemon systemd unit security

Hello,
Are there any plans for 21.11 to secure nix-daemon unit?
Current situation is as follows:
$ systemd-analyze security nix-daemon
  NAME                                                        DESCRIPTION                                                             EXPOSURE
✗ PrivateNetwork=                                             Service has access to the host's network                                     0.5
✗ User=/DynamicUser=                                          Service runs as root user                                                    0.4
✗ CapabilityBoundingSet=~CAP_SET(UID|GID|PCAP)                Service may change UID/GID identities/capabilities                           0.3
✗ CapabilityBoundingSet=~CAP_SYS_ADMIN                        Service has administrator privileges                                         0.3
✗ CapabilityBoundingSet=~CAP_SYS_PTRACE                       Service has ptrace() debugging abilities                                     0.3
✗ RestrictAddressFamilies=~AF_(INET|INET6)                    Service may allocate Internet sockets                                        0.3
✗ RestrictNamespaces=~CLONE_NEWUSER                           Service may create user namespaces                                           0.3
✗ RestrictAddressFamilies=~…                                  Service may allocate exotic sockets                                          0.3
✗ CapabilityBoundingSet=~CAP_(CHOWN|FSETID|SETFCAP)           Service may change file ownership/access mode/capabilities unrestricted      0.2
✗ CapabilityBoundingSet=~CAP_(DAC_*|FOWNER|IPC_OWNER)         Service may override UNIX file/IPC permission checks                         0.2
  NAME                                                        DESCRIPTION                                                             EXPOSURE
✗ PrivateNetwork=                                             Service has access to the host's network                                     0.5
✗ User=/DynamicUser=                                          Service runs as root user                                                    0.4
✗ CapabilityBoundingSet=~CAP_SET(UID|GID|PCAP)                Service may change UID/GID identities/capabilities                           0.3
✗ CapabilityBoundingSet=~CAP_SYS_ADMIN                        Service has administrator privileges                                         0.3
✗ CapabilityBoundingSet=~CAP_SYS_PTRACE                       Service has ptrace() debugging abilities                                     0.3
✗ RestrictAddressFamilies=~AF_(INET|INET6)                    Service may allocate Internet sockets                                        0.3
✗ RestrictNamespaces=~CLONE_NEWUSER                           Service may create user namespaces                                           0.3
✗ RestrictAddressFamilies=~…                                  Service may allocate exotic sockets                                          0.3
✗ CapabilityBoundingSet=~CAP_(CHOWN|FSETID|SETFCAP)           Service may change file ownership/access mode/capabilities unrestricted      0.2
✗ CapabilityBoundingSet=~CAP_(DAC_*|FOWNER|IPC_OWNER)         Service may override UNIX file/IPC permission checks                         0.2
✗ CapabilityBoundingSet=~CAP_NET_ADMIN                        Service has network configuration privileges                                 0.2
✗ CapabilityBoundingSet=~CAP_SYS_MODULE                       Service may load kernel modules                                              0.2
✗ CapabilityBoundingSet=~CAP_SYS_RAWIO                        Service has raw I/O access                                                   0.2
✗ CapabilityBoundingSet=~CAP_SYS_TIME                         Service processes may change the system clock                                0.2
✗ DeviceAllow=                                                Service has no device ACL                                                    0.2
✗ IPAddressDeny=                                              Service does not define an IP address allow list                             0.2
✓ KeyringMode=                                                Service doesn't share key material with other services
✗ NoNewPrivileges=                                            Service processes may acquire new privileges                                 0.2
✓ NotifyAccess=                                               Service child processes cannot alter service state
✗ PrivateDevices=                                             Service potentially has access to hardware devices                           0.2
✗ PrivateMounts=                                              Service may install system mounts                                            0.2
✗ PrivateTmp=                                                 Service has access to other software's temporary files                       0.2
✗ PrivateUsers=                                               Service has access to other users                                            0.2
✗ ProtectClock=                                               Service may write to the hardware clock or system clock                      0.2
✗ ProtectControlGroups=                                       Service may modify the control group file system                             0.2
✗ ProtectHome=                                                Service has full access to home directories                                  0.2
✗ ProtectKernelLogs=                                          Service may read from or write to the kernel log ring buffer                 0.2
✗ ProtectKernelModules=                                       Service may load or read kernel modules                                      0.2
✗ ProtectKernelTunables=                                      Service may alter kernel tunables                                            0.2
✗ ProtectProc=                                                Service has full access to process tree (/proc hidepid=)                     0.2
✗ ProtectSystem=                                              Service has full access to the OS file hierarchy                             0.2
✗ RestrictAddressFamilies=~AF_PACKET                          Service may allocate packet sockets                                          0.2
✗ RestrictSUIDSGID=                                           Service may create SUID/SGID files                                           0.2
✗ SystemCallArchitectures=                                    Service may execute system calls with all ABIs                               0.2
✗ SystemCallFilter=~@clock                                    Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@debug                                    Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@module                                   Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@mount                                    Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@raw-io                                   Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@reboot                                   Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@swap                                     Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@privileged                               Service does not filter system calls                                         0.2
✗ SystemCallFilter=~@resources                                Service does not filter system calls                                         0.2
✓ AmbientCapabilities=                                        Service process does not receive ambient capabilities
✗ CapabilityBoundingSet=~CAP_AUDIT_*                          Service has audit subsystem access                                           0.1
✗ CapabilityBoundingSet=~CAP_KILL                             Service may send UNIX signals to arbitrary processes                         0.1
✗ CapabilityBoundingSet=~CAP_MKNOD                            Service may create device nodes                                              0.1
✗ CapabilityBoundingSet=~CAP_NET_(BIND_SERVICE|BROADCAST|RAW) Service has elevated networking privileges                                   0.1
✗ CapabilityBoundingSet=~CAP_SYSLOG                           Service has access to kernel logging                                         0.1
✗ CapabilityBoundingSet=~CAP_SYS_(NICE|RESOURCE)              Service has privileges to change resource use parameters                     0.1
✗ RestrictNamespaces=~CLONE_NEWCGROUP                         Service may create cgroup namespaces                                         0.1
✗ RestrictNamespaces=~CLONE_NEWIPC                            Service may create IPC namespaces                                            0.1
✗ RestrictNamespaces=~CLONE_NEWNET                            Service may create network namespaces                                        0.1
✗ RestrictNamespaces=~CLONE_NEWNS                             Service may create file system namespaces                                    0.1
✗ RestrictNamespaces=~CLONE_NEWPID                            Service may create process namespaces                                        0.1
✗ RestrictRealtime=                                           Service may acquire realtime scheduling                                      0.1
✗ SystemCallFilter=~@cpu-emulation                            Service does not filter system calls                                         0.1
✗ SystemCallFilter=~@obsolete                                 Service does not filter system calls                                         0.1
✗ RestrictAddressFamilies=~AF_NETLINK                         Service may allocate netlink sockets                                         0.1
✗ RootDirectory=/RootImage=                                   Service runs within the host's root directory                                0.1
  SupplementaryGroups=                                        Service runs as root, option does not matter
✗ CapabilityBoundingSet=~CAP_MAC_*                            Service may adjust SMACK MAC                                                 0.1
✗ CapabilityBoundingSet=~CAP_SYS_BOOT                         Service may issue reboot()                                                   0.1
✓ Delegate=                                                   Service does not maintain its own delegated control group subtree
✗ LockPersonality=                                            Service may change ABI personality                                           0.1
✗ MemoryDenyWriteExecute=                                     Service may create writable executable memory mappings                       0.1
  RemoveIPC=                                                  Service runs as root, option does not apply
✗ RestrictNamespaces=~CLONE_NEWUTS                            Service may create hostname namespaces                                       0.1
✗ UMask=                                                      Files created by service are world-readable by default                       0.1
✗ CapabilityBoundingSet=~CAP_LINUX_IMMUTABLE                  Service may mark files immutable                                             0.1
✗ CapabilityBoundingSet=~CAP_IPC_LOCK                         Service may lock memory into RAM                                             0.1
✗ CapabilityBoundingSet=~CAP_SYS_CHROOT                       Service may issue chroot()                                                   0.1
✗ ProtectHostname=                                            Service may change system host/domainname                                    0.1
✗ CapabilityBoundingSet=~CAP_BLOCK_SUSPEND                    Service may establish wake locks                                             0.1
✗ CapabilityBoundingSet=~CAP_LEASE                            Service may create file leases                                               0.1
✗ CapabilityBoundingSet=~CAP_SYS_PACCT                        Service may use acct()                                                       0.1
✗ CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG                   Service may issue vhangup()                                                  0.1
✗ CapabilityBoundingSet=~CAP_WAKE_ALARM                       Service may program timers that wake up the system                           0.1
✗ RestrictAddressFamilies=~AF_UNIX                            Service may allocate local sockets                                           0.1
✗ ProcSubset=                                                 Service has full access to non-process /proc files (/proc subset=)           0.1

→ Overall exposure level for nix-daemon.service: 9.6 UNSAFE 😨

nix-info:
$ nix-info -m
 - system: `"x86_64-linux"`
 - host os: `Linux 5.14.10, NixOS, 21.11 (Porcupine)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.16`
 - channels(root): `"nixos-21.11pre323079.2cf9db0e3d4"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Anyway, nix-daemon is a single point of failure for all deployed instances, drawing a perimeter is a wise action. I believe its better to start hardening mostly used services.

What is the threat model here? The report doesn't even seem to care to distinguish protect-the-service and protect-against-the service, and a significant compromise of Nix daemon is a game over because of store access. Even if we fool naïve audit by tricks, Nix daemon can alter the installed glibc package. And data leaks from daemon do not mean that much as long as paths built are world-readable. Nix daemon launches things that should indeed be sandboxed (builds), but it sandboxes them itself.

@.*** Honestly, I am not sure, never met such an omnipotent daemon.
Doesn't any distribution have an option to install some updates automatically? Whatever daemon manages this, has the same issue of effective omnipotence. Which is indeed often abused in supply chain security attacks…

Nevertheless, I believe it is possible to start with an adversary with rw access to nix-daemon.socket similar to docker.

Presumably, if the attacker manages to create a socket of type Nix should not create, i.e. make a syscall with parameters that cannot be passed by simply taking a wrong branch, we have a code injection of some kind (which is most likely a game over), what am I missing here? But sure, taking wrong branch / opening file in a wrong way / something like that could happen, measures that protect about that could be of some use.

I have doubts, is that true? I mean the capabilities of nix-daemon should be separate, no?

Separate from what? It surely restricts what is available to builds, but as it spawns them they cannot have more than the daemon has. I guess you could fork Nix and make a daemon that writes to the store and the daemon that starts the builds separate processes with different sandboxing, but this is a lot of work and not on the level of the service file. Protocol audit and fuzzing could surely be useful in any case, no question there.


Configurable moderation workflow

Sometimes an organization wants to be able to share content without having to give members user accounts on the CMS because of man power, bureaucracy, etc. Should there be a mechanism that allows this sort of behavior?
I'm thinking of having multiple sites that could provide two different versions of the content based on a "shared" status.
I'm cooking up a PR that would support this though subclassing the Page model and making good use of Wagtail's Site class, but I thought I might get the community's thoughts on it.

Hi @kurtw - can you give some more details of the mechanism you're proposing, and how you expect it to be used? It sounds like you're suggesting having a secondary site with locked-down access (e.g. by IP block, or htaccess password) but I'm not quite sure.

@gasman The first part is basically covered in the concept you proposed in 1283 (comment). Imagine a scenario of having www.website.com and content.website.com where www is public facing and content is internal (only accessible via VPN or something), but they both exist on the production server so they can use the same database. In essence, they are just two versions of the same site.
What I'm suggesting is that there be some way of "replicating" the publishing workflow on a per site basis. One site would be used for sharing content among those with access without the need for an account and the other would be where the finalized content goes.
I opened a PR that illustrates what I'm talking about. It works in combination with some wagtail hooks that are in my app. Admittedly, there's some bugs in it and again it won't work without the hooks but it does the job okay. I'm not necessarily suggesting this be the way it's done but it's one way I guess.

@kurtw Thanks for the clarification! Looking at the PR, this feels like a very "heavy" change (in terms of additions to the admin UI, and the work involved in dealing with it during future Wagtail development) for something that's only useful to a minority of users.
This is really hinting at a much bigger feature, the idea of "configurable workflow". Currently Wagtail implements one simple kind of workflow, the "submit for moderation" button - and your PR implements a different workflow, designed for your own organisation's requirements (namely, the ability for users without Wagtail accounts to review pages). Undoubtedly other organisations will have different requirements - such as multiple levels of moderators, perhaps. It wouldn't be practical for Wagtail to implement each organisation's requirements on an individual basis - it would quickly become unmaintainable.
A better approach would be to create a general framework that allows organisations to build their own workflows. I believe other CMSes use the concept of a 'state machine' for this, where a page has any number of available statuses, and there is a configurable set of rules for changing from one status to another. (In Wagtail's case, these status changes could be represented as actions in the footer of the 'edit page' view.) This is probably something for Wagtail's far future, though - it's not something we've even considered up to now.

Paging @mitchellrj - is this (configurable workflow) the kind of thing your team has in mind?

@gasman thanks a lot for the reply. We've gone with configuring our own django project instead of editing Wagtail. The idea of a configurable workflow is very interesting. In any organization, there's always a need for a custom workflow so I could see this being a huge feature for Wagtail users.
I would like to see document management part of this future custom workflow. It's amazing how many well known organizations use archaic and arduous technologies for document management.

Hi folks,
I would like to find out of this feature(Configurable moderation workflow) was actually worked on.
If so , please provide a link, if not, I would like to work on it.

Just stumbled across this, and it seems that https://github.com/cfpb/wagtail-sharing could be a pretty good start for this feature. Not quite as all encompassing as the original ask, but a step in the right direction.

Configurable workflow is part of the forthcoming 2.10 release, with the ability to have external users as reviewers being provided by the wagtail-review add-on package.


feat: add Windows New Arch Support

Overview

Add support for the New Architecture on Windows.
Test Plan
Run the following in a command line tool at the clipboard root:
yarn
yarn start:windows:fabric

Screenshots of Example app on both Old and New Architecture:
Old Arch:

New Arch:

Note: hitting some intermittent hoisting issues with the example app, where duplicate copies of certain packages are being created in both ~/package.json and ~/example/package.json, causing build issues for the example app.

@Naturalclar I think the most recent commit to bump to 0.76 is broken on windows - is it possible to reopen the PR and then merge once I revert the commit?

@Yajur-Grover sure! sorry for rushing the merge. i will revert the change for now


support avalonia?

hi , this great lib have plan to support Avalonia?

The library already supports Avalonia. You will need to implement your own way of requesting permissions where required as the InTheHand.Bluetooth.Permissions library is tied to Xamarin.Forms or .NET MAUI.

The library already supports Avalonia. You will need to implement your own way of requesting permissions where required as the InTheHand.Bluetooth.Permissions library is tied to Xamarin.Forms or .NET MAUI.

tks for your reply ,this lib is very great.


Allow setting custom rules

Add support for custom rules such as the one introduced by #3 to mark otherwise as fully covered.

From what I can tell, the way to do this with hpc is to:

create an overlay using hpc draft
edit that overlay to say how you want coverage to go
turn that into a tix file with hpc overlay
combine the tix file with the other coverage output

(see https://wiki.haskell.org/Haskell_program_coverage#Example)
I think the way I want to do this is to keep the overlays in version control and then run hpc overlay and hpc combine as part of my build process.
What I don't know is how to do this such that hpc-coveralls sends the combined output to coveralls. My own experiments are complicated by my use of stack (#47) and multiple packages (#51).


Make FBPs configurable by allowing them to export options from their sub-nodes.

An options_description will be created for the type, copying the
option_description_member from the corresponding option of the node,
with default values being taken either from the default in the sub-node's
type, or from the options used to instantiate that specific instance of the
node.
Changes since v1:

Fixed 'leaks' for correctness, even though they would be freed when the
vectors they come from are freed.
Return error when strdup() fails while creating options.
Killed foosball example changes, added them to the declare test instead.
All options related methods receive the type, so we don't need to pass it
along in the options anymore.

+2


Selenium example

It seems that there is no geckodriver installed in the image google/python-hello, so the python code won't work as expected
Another image inodb/python-selenium can support the example.

I get following error >>> check_browser("CHROME") Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "<stdin>", line 4, in check_browser   File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 151, in __init__     self.start_session(desired_capabilities, browser_profile)   File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 240, in start_session     response = self.execute(Command.NEW_SESSION, parameters)   File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 308, in execute     self.error_handler.check_response(response)   File "/usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 194, in check_response     raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: None
when running  check_browser("CHROME") or check_browser("FIREFOX"). Is this error related?


Support new iPhones screen ratio

Is there a plan to support for the new iPhones screen size?

Hey @marcoscurvello
What are the current issues? I've tested this on the iPhone 4, 5s, 6 & 6+ and it all seems to be working fine.
What issues are you experiencing?

I have probably found the bug @marcoscurvello is talking about. In case you have setted up a background view, on a new iPhones (iPhone 6 & iPhone 6 Plus) blurring view is applied, but not for the whole screen that is caused by this:
_contentView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, MIN(frame.size.height, 568.0f))];

IMHO if you will decide to make contentView bigger it doesn't look as good as if it stays smaller.
So what I did is that I changed this
_backgroundBlurringView.frame = _contentView.frame;

to this:
_backgroundBlurringView.frame = self.frame;

This changes are made in ABPadLockScreenSetupView.m
See my Pull Request...

Ah I see. That makes sense. Thanks for bringing it up!
I'll try and have a look at this in the next few days.

My pleasure.

Well tested and it works.

This has been merged closed.


Update galaxy-cvmfs-csi

Update the galaxy-cvmfs-csi that uses the latest cvmfs-csi that resolves problems with the nodeplugin automount. Note that the cvmfs-csi is now deployed to an oci: repository which requires Helm>=3.8

This should be put on hold until we can determine why the CVMFS CSI get stuck in a crashloop on OpenStack.  May be related to the Cinder CSI and outdated sidecar containers.

Closed by: https://github.com/CloudVE/galaxy-cvmfs-csi-helm/pull/28


ARROW-5748: [Packaging][deb] Add support for Debian GNU/Linux buster

It'll be released 2019-07-06.

@ursabot crossbow package debian-buster

"AMD64 Ubuntu 16.04 Python 3" CI failure is unrelated because this doesn't change C++ nor Python related files.

@ursabot crossbow package -g linux

+1
All builds are green.


weston: Allow zero input devices; wait for graphics card

Two problems exist with Weston running immediately upon boot:

Weston requires an input device to exist; it's considered a fatal error if there's none. However, Weston works all right even if there isn't an input device, or if one appears later on.
Weston requires a graphics card to work. While this is not surprising, it might happen that due to the lightning-like speed of some 96boards and some rather weird timing, the /dev/dri/card0 device may not exist by the time Weston is launched.

These commits take care of those two issues by:

patching Weston to allow zero input devices during launch,
adding a systemd service that is launched upon boot (weston.service),
adding a helper script (wait-for-card.sh) that will time out after 5 seconds if /dev/dri/card0 doesn't exist when running the systemd service unit.

For the input device creation: Should we just add an uinput device? It would be also useful for test automation and would not require any changes in Weston. Will this still work if not the DRM backend is used? Also I don't like the idea of changing the behavior  of Weston in a way that may be not acceptable in the upstream project.

@ndechesne Thanks for the link, interesting discussion! It seems best, then, to allow via weston.ini to not have any input device on launch, and hot-plugging devices (real or virtual) later on. How that is configured in weston.ini I don't know, but I shall see.
I am no systemd expert either, but did try a whole bunch of options to make sure that it would launch Weston every single time, with long and short boot times. Just waiting for a bit for the /dev/dri/card0 to pop up made it work all of the times in Hikey with the existing configuration.
It seems that the path unit configuration is now sorted out, so a new pull request should be coming along soon.


Cannot find ".git" in parent directory

Getting an error Error: Cannot find file ./.git becouse my package.json in subfolder from git root. Husky works fine with find-parent-dir: https://github.com/typicode/husky/blob/master/src/index.js#L24
Im pretty sure this package should do the same way

Thanks for bringing this up. That solution sounds good to me! Want to makeapullrequest.com?

Sure, I will do it


Add usage examples of arrays

Nice project! They nicely demonstrate to use all of the various types, except C arrays.

Thank you.
There's an open issue #3 about adding proper C API binding examples. All in all the whole 'nomicon is badly missing good examples. I'll... maybe get around to it one day? No promises about quick work though, my apologies.
If you want to, I would happily accept PRs adding examples.


Frozen funds

Expected behavior
Funds availability after 175 confirmations
Actual behavior
Two jars have frozen funds
Steps to reproduce the problem

Transferred funds from outside wallet with one transaction and two receive addresses for two different jars. Used RBF to push through the transaction.
Tried to send funds to collaborative transaction several times, ignoring the warnings to wait for 5 confirmations because they had already passed. Was still able to select the jars with funds.
Today updated Umbrel to 1.2.1 which restarted everything, including Jam. Jam now shows the snowflake icon beneath both jars with funds.

Specifications

Version: 0.2.0

Platform: umbrel
umbrel_jam_2024-06-20_18-59.log

Browser: Safari

Additional context
Confirmed lockup period is prior to the confirmation block. Jam logs don't look helpful but are attached. I did notice the following line in the umbrel log file: "Jun 20 21:32:00 umbrel umbreld[3380]: time="2024-06-20T21:32:00Z" level=warning msg="/home/umbrel/umbrel/app-data/jam/docker-compose.yml: version is obsolete""
umbrel_jam_2024-06-20_18-59.log

Hey @Bonzbonanza, thanks for the report.
It is not totally clear to me, what is actually happening. Could you please be more specific of what you want to achieve?
e.g. if funds are frozen, you should be able to unfreeze them from the Jar Details view (click on any jar in the dropdown of the home screen).
Or is it related to a fidelity bond?
What does "Confirmed lockup period is prior to the confirmation block." mean exactly?
Thanks, and please forgive me for not understanding it straight away. :pray:

Thank you for the reply! My apologies for being unclear.
I wanted to unfreeze the funds but couldn't figure out how to do so. It is not intuitive how to do this. Thank you for the suggestion, which worked.
I was trying to say that I did not purposely freeze the funds, especially by using a Fidelity bond, so "Confirmed lockup period is prior to the confirmation block" refers to the fact that the lockup time for the transaction was in the past and not the reason for the freeze.
It is still concerning that the funds were locked in the first place was whatever caused it was not something that I selected.

Please know, that fidelity bonds are unable to be moved and locked by the Bitcoin protocol. They do not participate in collaborative transactions.
So, is it a fidelity bond utxo you are talking about? Fidelity bonds are frozen in order for them not to be used accidentally, once the locktime expires. Additionally, if you reuse an address the UTXOs are frozen automatically as a privacy preserving measure. Since you can always freeze and unfreeze them (except fidelity bonds that are not expired yet), what do you mean with "concerning"?
If you used a pristine address that has never received any funds before and the UTXO is subsequently frozen automatically, then this would be a bug. But I highly doubt that this is the case here. Can you confirm?

Yes, actually, that is what I'm confirming. This was an unused address in a new installation. That is the concerning part. Two incoming transactions to two different jars with two different addresses in a brand new wallet were frozen. I understood the warning to wait for 5 confirmations though I did try, as it said I could, to send to a collaborative transaction before 5 confirmations. Those failed, and they still gave a warning about being frozen though the snowflake didn't show up until after the reboot. At that time there was no option to try a collaborative transaction at all, but I was able to find the option to unfreeze with your help.
There was never a fidelity bond (not least because the order book shows no activity so I'm unwilling to tie up funds).
-------- Original Message --------
On 6/21/24 2:18 PM, Thebora Kompanioni  wrote:

Please know, that fidelity bonds are unable to be moved and locked by the Bitcoin protocol. They do not participate in collaborative transactions. So, is it a fidelity bond utxo you are talking about?
DuckDuckGo removed one tracker.  More
Deactivate
Please know, that fidelity bonds are unable to be moved and locked by the Bitcoin protocol. They do not participate in collaborative transactions.
So, is it a fidelity bond utxo you are talking about? Fidelity bonds are frozen in order for them not to be used accidentally, once the locktime expires. Additionally, if you reuse an address the UTXOs are frozen automatically as a privacy preserving measure. Since you can always freeze and unfreeze them (except fidelity bonds that are not expired yet), what do you mean with "concerning"?
If you used a pristine address that has never received any funds before and the UTXO is subsequently frozen automatically, then this would be a bug. But I highly doubt that this is the case here. Can you confirm?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

Okay, thanks @Bonzbonanza. If you are totally sure that this is what happened, would you be able to open an issue at https://github.com/JoinMarket-Org/joinmarket-clientserver
Jam is just a UI and cannot do anything about it. Thank you :pray:


Update source-code-explore.md

fix some markdown mistakes

Coverage remained the same at 72.327% when pulling cb49b9aad795ea3d7c8ba74e63c1306abbce0b0f on fxbabys:patch-1 into 5517fea0b0e31cad61507be5c71a5b58782004da on dvajs:master.


python312Packages.validators: 0.28.0 -> 0.33.0

Description of changes
Diff: https://github.com/python-validators/validators/compare/refs/tags/0.28.0...0.33.0
Changelog: https://github.com/python-validators/validators/blob/0.33.0/CHANGES.md

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

fixes https://github.com/NixOS/nixpkgs/pull/313809

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

@ofborg eval


kill spec improvements

@charlierudolph @allewun
I think these branch names are more descriptive. What do you think?

all comments addressed

I personally dislike good-feature. It's too generic and doesn't tell me more than feature. That is meant to represent a feature that is in active development right? What about naming if active-feature or something along those lines?

Renamed good-feature to active-feature. Please take another look!

:ship:


Add message for when tibia character doesn't exist, but a discord user does.

Blaming @Nezune.

That's true, I'll close this and update my fork to check the problem again when I have some more time.


removed wrongfully added recipe yield reduction

Unfortunately, I added a yield reduction by 2, cause I mistakenly assumed that kptncook have a default recipe yield of 2. In reality, they have a yield of 1, so this PR removes the reduction. I'm really sorry, if you already imported recipes with that bug.

No problem, I couldn't use quantities until last week  and I have to multiply the default yield with some factor anyway. Although it would be beneficial from a health perspective the probability of me preparing too little food is quite low.
If we want to starve mealie users on purpose, cutting the quantity in half as a first step is probably too obvious to go unnoticed 😆. We have to slowly reduce the quantity over time and maybe drop some essential ingredient now and then.
Thanks for the fix 🎉!
Jochen


Warning: Location "/app/" did not match any routes

Hi guys,
I guess I have more of a question about hosting my app. I tried looking around the docs, I'm thinking maybe it has to do with pattern matching? I'm using 1.0.0-rc1.
I would like to use webpack bundle my app to a dist folder, and then use IIS to host the application (I'm on a windows machine and need to share the app on an internal network)
My routes look something like this:
import React from 'react';
import { Route } from 'react-router';
import Root from './containers/Root';
import Feed from './containers/Feed';
import App from './containers/App';

export default (
  <Route component={Root} path="/">
    <Route component={App} path="app" />
    <Route component={Feed} path="feed" />
  </Route>
);

I bundle the application with webpack normally and use the output bundle in the index.html file.
I browse to the application on my local box:
http://my.machine.name/app
but then I get this error message in the console:
Warning: Location "/app/" did not match any routes

If I change the routes file to do something like this:
export default (
  <Route component={Root} path="*">
    <Route component={App} path="app" />
    <Route component={Feed} path="feed" />
  </Route>
);

it will work, but then no routes will load properly after that.
Is there some pattern matching magic I can do to make this work? Thanks.

<Route component={Root} path="/app">{/* ... */}</Route>

hmm, sorry but this looks like some pretty basic functionality that is well tested and all the examples are working, I can reopen if you find a bug somewhere.

When you get that error, is there actually a trailing / in the address bar? Might be a long shot, but IIS sometimes does weird things when missing a trailing /
You might also want to try using https://www.npmjs.com/package/serve temporarily to host the app without IIS while troubleshooting.

What routes are you trying to load after that?

@Aourin any child routes
@danmartinez101 yes, I do notice that it appends a '/' to the end of the route. Is that what is causing the issue?
When I run the above app with something like webpack dev server it will run fine with no issues.
The thing with IIS, as you probably know, is that it requires an alias at which you will navigate to to run your app. So, '/', is no longer the main route in a sense, but really could be anything... '/home', '/app', '/foobar' etc. When navigating to 'http://my.machine.name/app' I don't have my routes setup to handle /app, only '/'.
This is probably more SO content, so I can take it over there, but I couldn't tell by the docs if there was a way to handle this scenario.

You will probably have better luck on SO but one last thing I can recommend trying is instead of a '/' path for your root component, make your root components path = "/app/" or "/app" if that is truly the base path from IIS. Otherwise, maybe someone on SO will have had similar experience and has a solution.

Thanks @danmartinez101. If I set the root component path to '/app' and the IIS base url to '/app' everything works fine.

excellent :D Glad that worked out for you


[FIX] Unnecessary spacing in active filter marker

Description

I have remove unnecessary spacing of border bottom marking the active filter.

Related Issues

Closes #1375

Screenshots / videos (if applicable)

Hey @roushan-code, please check your changes again; they are not correct and may be problematic. I have sent the screenshot; please see it below. Please don't be discouraged, but I cannot merge this pull request. Thank you!

Hey @mdazfar2 , Could you please review it again?

@roushan-code, I don't understand what you changed. I don't see any changes on the deployment link; the website looks fine on my side. Please check the screen recording below as proof.

https://github.com/user-attachments/assets/02e1e1ec-854a-4d42-af24-a7a0da26ec6a

Hey @mdazfar2, I have attached a video below. Is this you want?
video
https://github.com/user-attachments/assets/1b1455e5-4bd3-46fb-a94b-ab4a31894bb3
Actually Firstly, I was solving the issue that is mention in issue number #1375 with the screenshot given below.


Add config for MedianStoppingRule

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Please describe the motivation of this PR and the goal you want to achieve through this PR.
Modification
Please briefly describe what modification is made in this PR.
Checklist

Pre-commit or other linting tools are used to fix the potential lint issues.
The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
If the modification has potential influence on downstream projects, this PR should be tested with downstream projects, like MMDet or MMCls.
The documentation has been modified accordingly, like docstring or example tutorials.

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@85e7ce2). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #115   +/-   ##
=======================================
  Coverage        ?   72.79%
=======================================
  Files           ?       59
  Lines           ?     1632
  Branches        ?      235
=======================================
  Hits            ?     1188
  Misses          ?      345
  Partials        ?       99

Flag
Coverage Δ

unittests
72.79% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Support CREATE TABLE statements

Thank you for this great plugin!
Can a Pull request to support CREATE TABLE statements be accepted?
Current behavior returns empty data for CREATE TABLE statements and it would be great to check the results.

@minodisk
I will close this if not accepted :)

@Matts966
Thanks for using it.
I don't usually run CREATE TABLE, so I wasn't aware of its behavior.
I will check CREATE TABLE with the return value of the query and see how easy it is to support.

You can get destination table references like
bigquery.createQueryJob(`
CREATE OR REPLACE TABLE \`test_expected.test\` AS
SELECT 1 as a;
`).then((job) => {
  console.log(job[1].configuration.query.destinationTable)
});

// returns

{
  projectId: 'project',
  datasetId: 'test_expected',
  tableId: 'test'
}

If this is accepted, I will try making a PR. If you have a plan to implement this, I will wait it :)

I want you to try #6.

Pull the create-table-as-select branch to your local machine.
Run npm i
Run npm run debug to build BigQuery Runner and install into VSCode.
Run the command Developer: Reload Window in VSCode to activate the newly installed BigQuery Runner.
Run the create or replace table query with BigQuery Runner: Run.

https://user-images.githubusercontent.com/514164/156774998-ac5cda1a-d3d2-4848-a70e-763f1ab0b308.mov

@minodisk
Hi, this is exactly what we want! Could you please release this feature?

@Matts966
Released as v0.0.36 😉

https://marketplace.visualstudio.com/items/minodisk.bigquery-runner/changelog

I found edge cases with characters such as - in the table identifiers, but it was already fixed in 0.0.37 :D

The experience is great! I will share this with my colleagues :)
Thank you very much!


Inline CSS (Convert

Is it possible to inline CSS styles from <style> into attributes for <symbol>?
SVGO have this option enabled by default, but I still have <style> within <symbol> in generated sprites file.
Also is there any option to extract <linearGradient> and other filters to <defs> section in generated sprites file?

@Mevrael It's currently not svg-sprite's focus to manipulate the SVG sources other than in a way that's absolutely necessary for creating a sprite. The extraction of gradients has already been requested and I might be working on that one day, but probably not in the near future. Please be aware that SVGO is part of svg-sprites optimization process so maybe you can partly achieve your goals by configuring the respective SVGO plugins. Also, you have always the possibility to use a custom post-transformation to alter the SVG result in every way you can think of, but that's up to you and not directly part of svg-sprite.

@Mevrael It's currently not svg-sprite's focus to manipulate the SVG sources other than in a way that's absolutely necessary for creating a sprite.

@jkphl you should not have

@Mevrael FYI svg-sprite is accounting for that. Please see the namespaceClassnames option. Having <style> elements inside the sprite is not a problem at all (although there's a known problem with class namespacing in certain situations).


MWPW-158455: Promobar overlays with localnav elements in devices

The z-index for the Promobar has been reverted from 40,000 back to its original value of 4 to avoid overlap with local navigation.
The change to 40,000 was a temporary fix (MWPW-155694,), confirmed by @Brandon32 , and is no longer necessary.
Resolves:
MWPW-158455
MWPW-159426
Test URLs:
Before: https://main--milo--adobecom.hlx.page/?martech=off
After: https://mwpw-158455--milo--akanshaa-18.aem.page/?martech=off
QA: https://main--cc--adobecom.hlx.page/ee/products/photoshop?milolibs=mwpw-158455--milo--akanshaa-18

Validation has been done on below urls :
https://main--cc--adobecom.hlx.live/ee/products/photoshop?milolibs=mwpw-158455--milo--akanshaa-18

https://main--cc--adobecom.hlx.live/ee/creativecloud?milolibs=mwpw-158455--milo--akanshaa-18

Validation across the cloud is done and details are updated in below subtask
https://jira.corp.adobe.com/browse/MWPW-159543
issue reported on iframe modal when promobar is overlayed is also resolved, validation is done using requestly  and details are updated in subtask
https://jira.corp.adobe.com/browse/MWPW-160077
CC : @sigadamvenkata , @salonijain3  , @Ruchika4

Validation has been done in stage after the PR merge :
https://www.stage.adobe.com/ee/products/photoshop.html#modal-photoshop


Invalid Mime-type? Cannot upload customers files with new core

The file I was trying to upload was downloaded from a viur2 production system, it is an *.oft file. I don't know what the correct mimetype should be here, but I doubt that we are doing everything correctly when checking. Why do we check the mimetype at all? Do we reject any type of file or is this just for the mimetype field?
[2023-04-27 13:44:13,608] /.../viur/core/request.py:299 [ERROR] ViUR has caught an unhandled exception!
[2023-04-27 13:44:13,608] /.../viur/core/request.py:300 [ERROR] Invalid Mime-Type
Traceback (most recent call last):
  File "/home/user/.local/share/virtualenvs/project-viur3-5lETOfwa/lib/python3.10/site-packages/viur/core/request.py", line 275, in processRequest
    self.findAndCall(path)
  File "/home/user/.local/share/virtualenvs/project-viur3-5lETOfwa/lib/python3.10/site-packages/viur/core/request.py", line 623, in findAndCall
    res = caller(*newArgs, **newKwargs)
  File "/home/user/.local/share/virtualenvs/project-viur3-5lETOfwa/lib/python3.10/site-packages/viur/core/modules/file.py", line 520, in getUploadURL
    assert len(mimeType.split("/")) == 2, "Invalid Mime-Type"
AssertionError: Invalid Mime-Type
[2023-04-27 13:44:13] [500] [POST] /json/file/getUploadURL

If someone wants to take a look at the file in question, message me and I will provide the file. Obviously not on github and only for internal usage.

I took some time to check this locally and the mimeType variable that is being checked returns an empty string for some reason. Using unix file to check the mimetype returns "application/vnd.ms-outlook" and trying the assertions on that string works as expected. It seems that the mimetype cannot be read at all for some reason.

Okay, it appears that the core is not at fault here. This is a bug in the new vue vi... it should pass the mimetype as a string to getUploadURL, but in this case it's an empty string so the assertions fail. I will close this issue now and open a new one in the correct place.

Okay as #743 is now merged, this issue can be closed.


haskell infra, ghc: Slight cleanup

Motivation for this change
These changes are good for future cross work. They don't add much benefit now while that stuff doesn't work for other reasons, but they are also harmless in that no hashes are changed.
Reviewing each commit separately will be easier.
Things done

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

[ ] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

@Ericson2314, what are you doing? I cannot review those changes in less than an hour!


Persons doesnt have device_trackers

In the home-assistant UI, you can set a list of device trackers on a person. Those seams to be, based on what I can find in https://github.com/home-assistant/core/blob/dev/homeassistant/components/person/init.py#L401-L414 not available normally.. But they are still there in the code refeered by device_trackers on a person.
How can I get to that list on a person using pyscript. I have looked around, anI d I think I need to use the hass object to get to some raw configuration about the person, but unsure how that object is structured.
In []: state.getattr('person.lars_solberg').keys()
Out[]: dict_keys(['editable', 'id', 'latitude', 'longitude', 'gps_accuracy', 'source', 'user_id', 'friendly_name'])

I imagine this is also the case for other integrations, so it would be very nice with this documented a little, at least in this little issue :)

Found this information @ hass.data['person'][1].data['lars_solberg']['device_trackers' :)


Show return Type of functions

With this change, when hinting for functions
we not only show the function name but also
it's return value.
E.g.
get -> Option<&V>
A picture says more than a thousand words ;)

The regex could also include the matching for MATCHes with return types:
MATCH (\w*)\,(\d*)\,(\d*)\,([^\,]*)\,(\w*)\,(?:.*?-> (.*?)|(.*?))(?:\s\{|$)
https://regex101.com/r/zU6aM6/1
Just something I quickly threw together.

Just something I quickly threw together.

:stuck_out_tongue_winking_eye:
I wonder if it's better (performance and maintainability wise) to squeeze everything in one regex. I leave this up for smarter folks but are happy to update the PR if we decide to just go with one regex ;)

Well this is embarrassing...
From #42:

yeah, i never merged that because it sounded like there was some discussion that needed had. Let's see if we can revive that conversation and get it merged.

Oh nooooes @kylewlacy, hours wasted because I didn't look through the open PRs. Your's is obviously superior!

Oh nooooes @kylewlacy, hours wasted because I didn't look through the open PRs. Your's is obviously superior!

Closing here ;)


AttributeError: 'str' object has no attribute 'options'

Hello,
I am using deoplete-go on ArchLinux and get the following error:
[deoplete] Traceback (most recent call last):
[deoplete]   File "/home/nate/.cache/dein/.dein/rplugin/python3/deoplete/deoplete.py", line 47, in completion_begin
[deoplete]     complete_position, candidates = self.gather_candidates(context)
[deoplete]   File "/home/nate/.cache/dein/.dein/rplugin/python3/deoplete/deoplete.py", line 85, in gather_candidates
[deoplete]     results = self.gather_results(context)
[deoplete]   File "/home/nate/.cache/dein/.dein/rplugin/python3/deoplete/deoplete.py", line 150, in gather_results
[deoplete]     context['candidates'] = source.gather_candidates(context)
[deoplete]   File "/home/nate/.cache/dein/repos/github.com/zchee/deoplete-go/rplugin/python3/deoplete/sources/deoplete_go.py", line 104, in gather_
candidates
[deoplete]     result = self.get_complete_result(buffer, context)
[deoplete]   File "/home/nate/.cache/dein/repos/github.com/zchee/deoplete-go/rplugin/python3/deoplete/sources/deoplete_go.py", line 182, in get_com
plete_result
[deoplete]     column) - 1
[deoplete]   File "/home/nate/.cache/dein/.dein/rplugin/python3/deoplete/util.py", line 68, in charpos2bytepos
[deoplete]     return len(bytes(input[: pos], vim.options['encoding']))
[deoplete] AttributeError: 'str' object has no attribute 'options'
[deoplete] An error has occurred. Please execute :messages command.

Deoplete itself works and and when I type gocode -in main.go autocomplete 86 gocode returns:
Found 3 candidates:
  func main()
  package fmt
  package mymath

That means gocode works also.
It seems like the problem is with deoplete-go itself.
Thanks for any help!

@dalliard It is not deoplete-go bug.
Your deoplete seems old.  Please update deoplete.

@Shougo Thanks for reaching out. I am using your Dein.vim. Doesn't it update the plugins by itself? If not, how can I update them?

@Shougo Thanks for reaching out. I am using your Dein.vim. Doesn't it update the plugins by itself? If not, how can I update them?

call dein#update()

call dein#update()

Oh wow. My bad. Thanks!! Works fine now.


Wrong EXT_SUFFIX on python 3.7 on Windows

Delegating get_config_var to the built-in sysconfig breaks extension module builds with python 3.7 (and unpatched 3.8, 3.9 installs) on windows.
For context see pypa/setuptools#3219
Pasting the contents below:

setuptools version
>=61
Python version
3.7
OS
Windows
Additional environment information
No response
Description
This setuptools commit changed the bundled distutils.sysconfig to transparently forward get_config_var to the interpreter builtin sysconfig: https://github.com/pypa/setuptools/commit/4b313f0d8600e8957736df7d0ffb795d187ab955
However, as mentioned in this python bug, sysconfig is (was) broken and returns a bad EXT_SUFFIX on python >=3.7. The issue was fixed in 3.10, with a backport into 3.8 and 3.9, however 3.7 was completely left behind.
This problem was mentioned on the setuptools issue tracker in the past, but the knowledge seems to since have slipped the collective mind.
Since setuptools hijacks import distutils by default, this means that anyone using python 3.7, or an older 3.8 or 3.9 installation, will suddenly start getting a wrong EXT_SUFFIX by simply updating to setuptools>=61, and the only way to get back the correct behavior is to set SETUPTOOLS_USE_DISTUTILS=stdlib to prevent the hijacking. Given this overarching impact I believe it's unfair to impose such a breaking change on users unsuspectingly using older python versions.
Notably, this completely breaks CMake builds of extension modules with FindPython when using affected python versions, since they use distutils.sysconfig to determine the required EXT_SUFFIX.
Expected behavior
Return proper EXT_SUFFIX on any python version >=3.7 (e.g. .cp37-win_amd64.pyd)
How to Reproduce

Install setuptools>=61
py -3.7 -c "from distutils import sysconfig; print(sysconfig.get_config_var('EXT_SUFFIX'))"

Output
.pyd

Fixed in https://github.com/pypa/distutils/pull/131


[DOC] We need a project structure doc for a rust smart contract

This page:

closing since this is being tracked by other issues


Looped Cascade Directive when parent and child are of same object.

Bug Report
Current behavior
Consider the folowing data type:
type Folder @model {
  id: ID! @unique
  parent: Folder @relation(name: "FolderOnFolder", onDelete: SET_NULL)
  children: [Folder!]! @relation(name: "FolderOnFolder", onDelete: CASCADE)
}

This seems reasonable. A folder will cascade its deletes down the tree, but only set null up the tree.
This causes an error:
{
  "data": {
    "deleteFolder":null
  },
  "errors": [
    {
      "message":
        "There was a loop in the path generated by the onDelete: Cascade directives on your schema when trying to do the delete.",
      "locations":[],
      "path":["deleteFolder"],
      "code":3043,
      "requestId":"api:api:cjeh2wc500055016429dfdckw"
    }
  ]
}

Reproduction
This seems to be the case in any situation in which an object has a parent/child of its own data type.
Expected behavior?
Behavior like one would expect from a folder.

I can confirm this bug.
It seems like the recursive CASCADE is correct detected as a loop, but I don't see why that shouldn't be allowed.

+1

@marktani Any update on this?

still stucked on this

Same

Same

+1

Hi,
I was facing the same issue and solved it by declaring children relation before parent relation:
# This will generate error
type Folder @model {
  id: ID! @unique
  parent: Folder @relation(name: "FolderOnFolder", onDelete: SET_NULL)
  children: [Folder!]! @relation(name: "FolderOnFolder", onDelete: CASCADE)
}
# This wont generate error
type Folder @model {
  id: ID! @unique
  children: [Folder!]! @relation(name: "FolderOnFolder", onDelete: CASCADE)
  parent: Folder @relation(name: "FolderOnFolder", onDelete: SET_NULL)
}

Hope it helps! :)

prisma 1.17.1
Changing the order fixed the issue for me too.

We just released an update that fixes this bug. We were also able to remove most of the restrictions around cascading deletes. So looping is not checked for anymore.