ipython broken on python2.7

Issue description
The ipython update introduced in 60eaa476ab only supports for python3.
/cc @FRidh
Steps to reproduce
$ nix-shell -p pythonPackages.ipython
error: ipython-6.0.0 not supported for interpreter python2.7

Technical details

Nixpkgs version: (9e764af72f)

That's because from 6.0.0 on upstream only supports 3.3 and up. See the mail I sent about it earlier.

Yes, but shouldn't we keep a 5.x version around? python2.7 is still the default version in nixpkgs.

If someone wants to add and support it I suppose they could add it. I wonder how long having multiple packages will work though due to upgrades of dependencies.


DacFx shows permanent diff on some permissions if there was a grantor specified in the project sources

SqlPackage or DacFx Version:

SSDT - 16.0.62205.05200
SqlPackage - <IP_ADDRESS>

.NET Framework (Windows-only) or .NET Core:
Environment (local platform and source/target platforms):

Windows 10
VS 2019

DacFx shows permanent diff on grantor option in permission definition if the permission is on user-defined type or schema. Other permissions (on sp or fn) are not affected by this bug. GRANT <whatever> ON SCHEMA::my_schema AS dbo is a valid syntax and should not produce any diff between project sources and target database.
Steps to Reproduce:
Minimal repro: permissions_diff.zip

Deploy project from sources above to a new db
Run "Schema compare" from sources to the db and back from db to sources, see no diff
Uncomment AS dbo lines in permissions.sql
Run "Schema compare" from sources to db - no diff, back from db to sources - see permanent diff which cannot be fixed by redeployment

Diff on schema permissions:

Diff on type permissions:

As a workaround we have a rule in our custom linter which prevents devs from defining grantor in permissions on types and schemas.
Did this occur in prior versions?  If not - which version(s) did it work in?
If I'm not mistaken then in some of previous versions there was the same bug in forward-comparison from the project to DB but I have no proofs, unable to reproduce this behavior right now.
(DacFx/SqlPackage/SSMS/Azure Data Studio)

may be related to #493


Cannot serialize op cirq.CNOT

Description of the issue
A simple circuit involving one CNOT gate can't be serialized to proto
How to reproduce the issue
cirq_google.serialization.CircuitSerializer().serialize(cirq.Circuit(cirq.CNOT.on(cirq.LineQubit(0), cirq.LineQubit(1))))

Cirq version
1.5.0.dev20241105230840

This is intentional, because the CircuitSerializer creates protos meant to run on hardware via qcs, and hardware does not support CNOT natively. You have to translate the circuit to a gateset that is natively supported by hardware for it to run, and this limited gateset is all that is included in the proto schema. For serializing generic circuits and other cirq objects you can use the json format. Is there any reason why json serialization wouldn't work for your use case?

Discussed during Cirq Cynq 2024-12-11: This was done by design, for the way the hardware works.
Will follow up with the OP about why he needs the serialization – what's the use case or situation.


Add initial generator and generated API descriptions.

This creates an initial API generator and a sample API server.
TODO:

GitHub Actions
The server could be made more generic (currently on startup it requires a collection name)
The generated API specs have some gaps (the create operations don't describe their inputs)

The annotations are just to show things being annotated. I think we might want to add additional methods to get some of that info but didn't think that was necessary yet.
The TODOs are almost done...


Remove certstore

Use the previous root on disk to directly validate new roots on update, parsing out its own certificates in from the root metadata's Keys section instead of consulting a certificate store.
As a consequence, the certificate store in the notary repository (also in trustmanager x509 utils) and notary cert are no more :wave:

LGTM!  All the red is so beautiful!  :D  Thanks for adding this!
Just wanted to add a caveat for other reviewers that while it'd be good if we checked that previous root was validly signed (not just that it was valid metadata) before we used it for trust pinning, that functionality should  be happening in the builder, and this PR already improves upon existing behavior (where we do even less validation of the previous root object, and we don't check for signing thresholds).

[Current coverage][cc-pull] is 73.41%

Merging [#693][cc-pull] into [master][cc-base-branch] will increase coverage by -1.26%

@@           master       #693   diff @@
========================================
  Files          88         84      -4
  Lines        9163      10952   +1789
  Methods         0          0
  Branches     1449          0   -1449
========================================
+ Hits         6843       8040   +1197
- Misses       1686       2322    +636
+ Partials      634        590     -44

2 files (not in diff) in utils were modified. more

Misses +6
Hits +31

4 files (not in diff) in tuf/utils were modified. more

Misses +4
Hits +17

5 files (not in diff) in tuf/store were modified. more

Misses +24
Hits +32

5 files (not in diff) in tuf/signed were modified. more

Misses +27
Hits +50

9 files (not in diff) in tuf/data were modified. more

Misses +30
Hits +113

2 files (not in diff) in tuf/client were modified. more

Misses +13
Hits +94

3 files (not in diff) in tuf were modified. more

Misses +67
Hits +132

2 files (not in diff) in trustmanager/yubikey were modified. more

Misses +26
Hits +114

4 files (not in diff) in trustmanager were modified. more

Misses +22
Hits +74

2 files (not in diff) in storage/rethinkdb were modified. more

Misses +22
Hits +2

[][cc-pull]

Powered by Codecov. Last updated by 39e2696
[cc-base-branch]: https://codecov.io/gh/docker/notary/branch/master?src=pr
[cc-pull]: https://codecov.io/gh/docker/notary/pull/693?src=pr

Looks like we would not be able to merge this PR because of merge conflicts. Please rebase, fix conflicts, and force push to your branch.

Looks like we would not be able to merge this PR because of merge conflicts. Please rebase, fix conflicts, and force push to your branch.

LGTM!  Thanks for all your hard work getting this awesome batch of deletions in!

LGTM!


Autoform options reactivity

I'm having trouble with reactivity in the computed options(...) method feature. Here's a sample of my code
        options:() => {
          let opts = this.categoriesQuery.fetch().map((category) => {
            return {
              label: category.name,
              value: category._id,
            }
          });
          return opts;
        },

I'm using grapher to run my queries, and I'm also doing this inside a react component using TrackerReact.
Do you have any idea why this options method isn't behaving reactively?

It looks fine, though you could try switching to options() {} instead of the arrow func to rule out that. Otherwise you'll need to post a link to a repo with a minimal reproduction of this issue.

I've also tried using reactive code inside options in V6 and failed to get it working. It would show the initial values, but would not react to changes. I think schema options are not reactive, or there is a bug somehow.
However I understood from the docs that if you want reactivity then you need to create a custom autoform and pass the options...


Final group capstone: set up your Kanban board

hello reviewer in this issue we are a team there

@bernabasy ,
@michaelamponsah ,
@SaeqaSultani

We decided to split the front-end and back-end into 2 repos, each repo has its own Kanban board with the issues related to that repo.
Front-end Kanban Board:
Here is a link to the project's Kanban board.

Back-end Kanban Board:
Here is a link to the project's Kanban board.

here is also back end repo

Hi Team,
Great work so far👏
However there are some issues preventing me from giving the 👍
Highlights

Kanban board with front-end tasks present 👍

Required Changes (Consider these for other kanban before submitting as well)

Your back-end kanban seems to be broken :

One of the tasks in the front-end do not have a weight appointed to it, All tasks show hae a weight
I cannot fully judge whether distribution of tasks across kanban are equal due to broken link and missing weight, but please ensure the total weight of tasks across both kanbans for any individual team member is not significantly different in weight from another, ie, no team member should have a difference in weight of more than or equal to fine (or more than 4) when compared with any other team member. What may help with this is to maybe have on kanban for both back-end and front-end

Optional suggestions (Consider these for other kanban before submitting as well)

[OPTIONAL] Consider adding labels to your issues, it makes it easier to filter by different types and gives another added level of differentiation among tasks (front-end vs back-end etc.)
[OPTIONAL] Maybe consider having one kanban, it just makes more sense (you can use a label to differentiate tasks if needed)
[OPTIONAL] Some of your issues seem to have been created initially without description, then a description was added after as a comment. Consider creating your issues with a description to begin with. Maybe you can fix those that are currently like that?
[OPTIONAL] You can be more descriptive with your tasks, eg. main page can probably be broken down by components in the description (maybe even add weights to those individual components)
[OPTIONAL] Ensure that you are adding realistic weight to your tasks.

Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the Issue thread if something is not 100% clear.
Please, do not open a new Issue for re-reviews. You should use the same Issue submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


fix: regression of lu and qna import resolver

Description
crosstrain can't find the qna import file.
In #3919 has solved the issue.

Task Item
#minor

Screenshots

Coverage increased (+0.002%) to 55.397% when pulling 2de331106c4f79a72e3118742ad654ec536cffbd on lei9444:resolver into 76b0af67407ee1e99a7a6e9e79510ab1d54bb029 on microsoft:main.


Add automatic setting logic for ENABLE_LEGACY_FSGROUP_INJECTION

The previous logic was available only for IstioOperator,
hence helm based integration tests on k8s 1.16 were failing.
Signed-off-by: Faseela K<EMAIL_ADDRESS>Please provide a description of this PR:
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[ ] Configuration Infrastructure
[ ] Docs
[X] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

Do we need this in release-1.15?

@ericvn : I would wait till all the post submit tests pass before putting to 1.15


Git init settings do not work with older versions of git

Describe the bug
https://stackoverflow.com/questions/42871542/how-can-i-create-a-git-repository-with-the-default-branch-name-other-than-maste
With git version 2.25, the init.defaultBranch setting was not taking.  Differentiate between before or after 2.28.
Machine (please complete the following information):

OS: [e.g. iOS]
CLI Version [e.g. 22]

To Reproduce
What can we do to reproduce your bug?
Please provide:

Relevent CLI commands
Relevent environment details

Expected behavior
What did you expect to happen?
Screenshots
If applicable, add screenshots to help explain your problem. (Be sure to scrub any sensitive information.)
Additional context
Add any other context about the problem here.

https://github.com/meroxa/cli/pull/569


Replace github.com/sourcegraph/lib/errors for mini dep

During the period before the release of golang1.20, many unnecessary dependencies may also bring some obstacles to the use of some large-scale projects. It is hoped that it can be temporarily resolved in the current pr.
https://github.com/sourcegraph/conc/issues/52
tmp usage:
replace (
    github.com/sourcegraph/conc v0.2.0 => github.com/exfly/conc-fork main
)

Codecov Report

Merging #76 (496e9c8) into main (e5ed75f) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main      #76   +/-   ##
=======================================
  Coverage   99.46%   99.46%
=======================================
  Files          11       11
  Lines         374      374
=======================================
  Hits          372      372
  Misses          2        2

Impacted Files
Coverage Δ

iter/map.go
100.00% <100.00%> (ø)

pool/error_pool.go
100.00% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Hi @exfly! Thanks for the PR
@bobheadxi, would you take a look at this one? You're a bit more familiar with the lib/errors package, and I don't know if this would cause any unreasonable behavior changes.

IIRC the hashicorp multierror package caused issues in sourcegraph/sourcegraph due to swallowing errors when used in conjunction with error wrapping (https://github.com/sourcegraph/sourcegraph/pull/31431, https://github.com/sourcegraph/sourcegraph/pull/31466) - I'm a bit fuzzy on the specifics, but I'd encourage just holding off until Go 1.12.
Alternatively, the multierror implementation is pretty minimal - we could just copy-pasta it into conc as an internal package: https://github.com/sourcegraph/sourcegraph/blob/main/lib/errors/multi_error.go

Thanks @exfly! I'm traveling this week and am unlikely to get some time to get this merged until after, but I'll try to get to it ASAP

Thanks for the review, I will reimplement this with your suggestion later @camdencheek

Thanks for the review. Can I use https://github.com/uber-go/multierr.Combine directly in 1.19?

The modification is complete, it has passed in my own ci, please help to review it again, thanks.
@bobheadxi

Hi @exfly! I just merged this PR in the form of this commit (attributed to you). Thanks for your patience on getting this in. A smaller dependency tree is always welcome 🙂


Add Issue Template

To stop annoying people like me asking not very detailed issues :)
We should ask for things like Xcodeproj version, Struct version and example Specfile.
@maximkhatskevich is very good with documentation and stuff so maybe he can suggest a template :)

Good point! I'm unaware of how to do this, some research needed 👍

I'm happy to help with documentation on Struct, but not sure what exactly do you mean @jcampbell05 Add a special paragraph in Readme file how to file an issue on Struct GitHub repo?

@maximkhatskevich I'm meaning this :) https://github.com/blog/2111-issue-and-pull-request-templates but documentation would be great too :)

Interesting, didn't know about that :) Okay, I'll take a look.

The issue template is now added.


[Correction] Remove Debugify recommendation for Forge 1.18.X and 1.19.X

Checklist

[X] I've checked that this correction is valid and accurate.
[X] I've checked that this correction has not already been suggested.

What mod is this correction for?
Debugify
What section(s) of the list is this correction for?
Bugfixes
What version(s) dose this correction apply to?
1.18.X (Forge), Other (Forge)
What needs correcting?
I don't think that Debugify should be recommended for 1.18 or 1.19 Forge seeing that the developer has decided to not support it. The mod also only seems to only be actively supported for the latest version of Minecraft which has caused issues for me with JEI 1.18.
Input a link(s) which can be used to verify the correction.
Forge support removed: https://github.com/isXander/Debugify/pull/136
JEI bug (fixed in 1.19 but not backported to 1.18): https://github.com/isXander/Debugify/issues/74
(OPTIONAL) Any extra information about the correction.
No response

Additional context regarding debugify stealing code from other people's mods:
https://gist.github.com/fxmorin/9770473614e3e5e0703e44273dab33f7


[ADD] labphew

What is your project about?
labphew (lowercase) is a minimalist functioning code module and folder structure for computer-controlled hardware. While trying to be a standalone and accessible module, labphew is, first and foremost, built to teach and exercise with computer-controlled measurements using Python.
https://labphew.readthedocs.io/en/latest/
Why do you think your project is a great addition?
labphew is meant to be:

out-of-the-box package, capable of communicating with Supported devices.
instructive code documentation that allows users to learn how it works and how to customize it.
a low entry-level template for building new user-interfaces for a measurement.
a good example of structuring lab-automation code and how to document it.
fun to play with, edit, and contribute to the code.

Does your project fit into a category or do you want to suggest a new one?
labphew matches a bit to all the categories. The closes category is research code.

Dear @SanliFaez, thanks for your suggestion. Interesting and nice project. Are you interested in doing a PR?

Does your project fit into a category or do you want to suggest a new one?
labphew matches a bit to all the categories. The closes category is research code.

Yes I agree, maybe it fits best with Research Project Management?
https://github.com/UtrechtUniversity/awesome-utrecht-university#research-project-management. Maybe we should extend the description of Research Project Management with something like "lab tools".

I think "lab tools" or "automation" could be a good (sub)category.
what sort of PR do you have in mind @J535D165 ?

I think "lab tools" or "automation" could be a good (sub)category. what sort of PR do you have in mind @J535D165 ?

You can create a Pull request to add your proposed changes to this repository. You can find more information here: https://docs.github.com/en/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork
Please note that you have to first fork the repository and add your changes to that.
You can then create a new pull request here: https://github.com/UtrechtUniversity/awesome-utrecht-university/pulls
The reason for doing this instead of having us add your repository is that you will have contributed to the repository directly and you will be marked as a contributor:

If you need further assistance with this, I would be happy to help.


Can not communicate with cluster nodes

Hi, I'm trying to use autocluster (version 0.6.1) with etcd (version 2.3.7). I have 2 nodes with host-10-100-9-26 names, host-10-100-9-20. Auto-appointed systemd names.
When rabbitmq start, the first node correctly add information about yourself in etcd, on the second node I see errors (below).
I tried to add a few records by hand, with the names 'node.ru' and 'server', they are so well-trimmed.
Thanks.
=INFO REPORT==== 2-Mar-2017::20:07:13 ===
Starting RabbitMQ 3.6.6 on Erlang 18.3.2
Copyright (C) 2007-2016 Pivotal Software, Inc.
Licensed under the MPL.  See http://www.rabbitmq.com/
=INFO REPORT==== 2-Mar-2017::20:07:13 ===
node           : rabbit@host-10-100-9-20
home dir       : /root
config file(s) : /opt/co/config/rabbitmq.config
cookie hash    : nhKz8+dd7aw1WRGExT1YCA==
log<EMAIL_ADDRESS>sasl log<EMAIL_ADDRESS>database dir   : /opt/co/rabbitmq/data/rabbit@host-10-100-9-20
=INFO REPORT==== 2-Mar-2017::20:07:15 ===
autocluster: log level set to debug
=INFO REPORT==== 2-Mar-2017::20:07:15 ===
autocluster: Using etcd backend
=INFO REPORT==== 2-Mar-2017::20:07:15 ===
autocluster: Delaying startup for 6309ms.
=INFO REPORT==== 2-Mar-2017::20:07:21 ===
autocluster: Starting etcd registration.
=INFO REPORT==== 2-Mar-2017::20:07:21 ===
autocluster: GET http://<IP_ADDRESS>:2379/v2/keys/nct%2Fco%2Frabbitmq-autocluster/co-mq-cluster?recursive=true
=INFO REPORT==== 2-Mar-2017::20:07:21 ===
autocluster: Response: [{ok,{{"HTTP/1.1",200,"OK"},
[{"date","Thu, 02 Mar 2017 17:07:21 GMT"},
{"content-length","558"},
{"content-type","application/json"},
{"x-etcd-cluster-id","cf619686c64f3b3d"},
{"x-etcd-index","3701"},
{"x-raft-index","7796"},
{"x-raft-term","2"}],
"{"action":"get","node":{"key":"/nct/co/rabbitmq-autocluster/co-mq-cluster","dir":true,"nodes":[{"key":"/nct/co/rabbitmq-autocluster/co-mq-cluster/host-10-100-9-26","value":"enabled","expiration":"2017-03-02T17:07:38.092323902Z","ttl":17,"modifiedIndex":3618,"createdIndex":3618},{"key":"/nct/co/rabbitmq-autocluster/co-mq-cluster/node.ru","value":"enabled","modifiedIndex":1311,"createdIndex":1311},{"key":"/nct/co/rabbitmq-autocluster/co-mq-cluster/server","value":"enabled","modifiedIndex":3593,"createdIndex":3593}],"modifiedIndex":37,"createdIndex":37}}\n"}}]
=INFO REPORT==== 2-Mar-2017::20:07:21 ===
autocluster: Registering node with etcd.
=INFO REPORT==== 2-Mar-2017::20:07:21 ===
autocluster: Registered node with etcd.
=INFO REPORT==== 2-Mar-2017::20:07:21 ===
autocluster: Discovered ['rabbit@-10-100-9-26','rabbit@.ru',rabbit@er]
=ERROR REPORT==== 2-Mar-2017::20:07:31 ===
autocluster: Can not communicate with cluster nodes.
=INFO REPORT==== 2-Mar-2017::20:07:31 ===
Error description:
{could_not_start,rabbit,
{{case_clause,error},
[{rabbit_boot_steps,'-run_step/2-lc$^1/1-1-',1,
[{file,"src/rabbit_boot_steps.erl"},{line,49}]},
{rabbit_boot_steps,run_step,2,
[{file,"src/rabbit_boot_steps.erl"},{line,49}]},
{rabbit_boot_steps,'-run_boot_steps/1-lc$^0/1-0-',1,
[{file,"src/rabbit_boot_steps.erl"},{line,26}]},
{rabbit_boot_steps,run_boot_steps,1,
[{file,"src/rabbit_boot_steps.erl"},{line,26}]},
{rabbit,start,2,[{file,"src/rabbit.erl"},{line,687}]},
{application_master,start_it_old,4,
[{file,"application_master.erl"},{line,273}]}]}}
Log files (may contain more information):
<EMAIL_ADDRESS><EMAIL_ADDRESS>

See inter-node communication requirements.


Ready for Auto Complete Demo. Also added TopNByKey accumulation (test…

Ready for Auto Complete demo. Added TopNByKey accumulation (testing needed). Need to take off Twitter API credentials after demo.

Please let me know if there's any changes need to be done.


EpiSteps submodule

We should consider moving the accumulate_scan,ModelSteps, and get_state functionality into its own submodule. At the same time we should think about the changes needed to make these utilities composable so they can represent say renewal processes with susceptible depletion and also ARIMAs etc from the same code base. I think we should look to do this after #407 is merged as this will give more examples to work from (i.e to inform the design).

A potential pattern that could work here for composing steps is the following:
function compose_steps(steps...)
    return (state, ϵ) -> foldl((s, step) -> step(s, ϵ), steps, init=state)
end

# Usage
arma_step = compose_steps(ar_step, ma_step)
result = accumulate_scan(arma_step, initial_state, ϵ_t)

A more manual approach to this would be:
struct CompositeStep{T<:Tuple{Vararg{AbstractAccumulationStep}}} <: AbstractAccumulationStep
    steps::T
end

function (cs::CompositeStep)(state, ϵ)
    for step in cs.steps
        state = step(state, ϵ)
    end
    return state
end

# Usage example
ar_step = ARStep([0.5, 0.3])
ma_step = MAStep([0.2, 0.1])
arma_step = CompositeStep((ar_step, ma_step))

result = accumulate_scan(arma_step, initial_state, ϵ_t)

Some obvious questions that come to mind are that different states can be of different lengths (i.e a p length AR and a q length MA). If  the same state is passed then it would need to be the longest available one and only the last step in the iterator should drop a value from the state.
It might therefore be simpler if we constrain the design such that all states are independently tracked but this would mean that the values would only represent those at the current step of the composition vs the final value).

In some sense I think this suggests detecting the state updating from the iterative process of applying the steps i.e it is

Buildout recursive functions that each track a state and take inputs from the initial values
Add a final layer that increments the state of each recursive step (i.e each step is a 3 things 1. Update a new value 2. Update the state 3. Extract the state of interest).
Apply these using accumulate_scan to each step
Extract the states of interest to rebuild the timeseries

Reformulating the ARMA model introduced in #407 should be a good test of the composability of the design. It might also be worth exploring the LatentDelay usage of accumulate_scan as another example use case (this is can be effectively thought of as a AR applied to a distinct time series so not a true AR process).

I think at the moment we should constrain this design to be vector based but an obvious extension is into VARMA like models where the currency of interest is a state matrix vs vector.

Some obvious questions that come to mind are that different states can be of different lengths (i.e a p length AR and a q length MA). If the same state is passed then it would need to be the longest available one and only the last step in the iterator should drop a value from the state.
It might therefore be simpler if we constrain the design such that all states are independently tracked but this would mean that the values would only represent those at the current step of the composition vs the final value).

This is an, in general, hard problem e.g "how much information do you need to construct a Markov process?"
My preference would be for compose_steps to be restricted on a Steps subtype where max(p, q) solves the required state space problem whilst leaving a general accumulate_scan for non-composed steps.

We don't want to get caught in endless redesigns but I think we should also consider Transducers.jl
i.e https://juliafolds.github.io/Transducers.jl/dev/reference/manual/#Transducers.ScanEmit
Manual · Transducers.jl
and https://juliafolds.github.io/Transducers.jl/stable/reference/interface/#Transducers.combine
For a very similar problem being solved.
Also note @SamuelBrand1 flagged #373 as an option

Note Transducers.jl dev is now here: https://juliafolds2.github.io/Transducers.jl/dev/explanation/state_machines/
(and state machines I think might allow us to do away with "initilisation" as a separate code step.

Hey @seabbs . How are your thoughts on this? The Transducer side looks exciting

I think it looks exciting but I am worried about it under auto-diff so I think it needs more investigation


Fix wrong dependency version in README

1.0.0 doesn't seem to exist, only 1.0.0-SNAP1: https://mvnrepository.com/artifact/org.scalatest/autofix-3.0.8_2.12

@Daenyth Sorry the correct version should be 3.0.8-0, as in the following PR:
https://github.com/scalatest/autofix/pull/19
We thank you for your help, highly appreciated!


white screen after social login

social login shows a white screen after clicking login, using emulator, will it be fixed, or I should use a real device?

Hey @mhsnprvr can you please open the issue on web3auth.io/community?


JWT_AUTH_COOKIE makes APIs CSRF vulnerable.

Using the JWT_AUTH_COOKIE is vulnerable to CSRF attacks and this is not mentioned in the documentation nor mitigated against in the code.

How is that? please explain.

Maybe by brute forcing the default hs256 JWT_ALGORITHM as mentioned here and here

@mahmoodi ? input please.

@mahmoodi is right. Because JWT is saved in a cookie, it will be automatically sent with every request, causing successful authentication without any need to add JWT to request header by the application. Because of this, it is generally vulterable to CSRF in exactly the same way as usual cookie session, so actually there is no need to provide any example here as general CSRF vulnarability exaples could be applied here.

Hey @klis87 thanks for jump in, yeah I got that from @Radobilly's links and some googling .. I will write some docs and will update this ticket so you can proofread and add/delete more info to the main docs.

Please correct me if I'm wrong, but seems to me that default Django CSRF protection, if used correctly, prevents problems:
https://docs.djangoproject.com/en/1.11/ref/csrf/
https://stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5-web-storage also says that:

Leveraging your web app framework’s CSRF protection makes cookies rock solid for storing a JWT.

Any update on this?

I noticed this risk and created a pull request adding an option to handle csrf protection when using JWT in http-only cookie.
Now I see it's an open issue, for those interested, check out https://github.com/GetBlimp/django-rest-framework-jwt/pull/434 and maybe we can close this.

Perhaps this post might be illuminating?

It is @CapedHero, that is the behaviour that you get when using #434.

Enabling the django.middleware.csrf.CsrfViewMiddleware should mitigate csrf.  By default, I think anti csrf tokens are stored in a cookie you can access from javascript, and send in a  X-CSRFToken header.
see: https://docs.djangoproject.com/en/2.1/ref/csrf/#ajax
Just note: DjangoRestFramework disables CSRF protection for unauthenticated requests in the APIView class. You will need to manually setup csrf protection if you want those on unauthenticated endpoints (which would mostly be login/signup).

As well as requiring CSRF protection, shouldn't JWT_AUTH_COOKIE also be set with the Secure flag?

Perhaps use the Secure flag by default and have an option to turn it off then?

There is currently no way to customise the cookie settings. It would be really useful to have the choice to set them, especially the secure and samesite flags. Thanks!

Yes @pou426 you can customize it the way you want using CSRF_COOKIE_SECURE and CSRF_COOKIE_SAMESITE respectively.


Home store routing example not working properly

Hello!
I was running the home-store.py routing example from here, and I faced this issue:

It starts with this:

Then I click on 'Visit Store':

I do the step 1 and 2 twice, then I land on this:

This produces ping sound everytime, I click by mouse.
Terminal:-

(python_flutter) ➜  python_flutter python3 src/main.py

(flet:19284): Gdk-CRITICAL **: 13:47:24.916: gdk_window_get_state: assertion 'GDK_IS_WINDOW (window)' failed

My system:
OS: Ubuntu 22.04.3 LTS x86_64
Kernel: 6.2.0-36-generic

You are right! this is a bug which popped up in v0.12.0 to be precise.

You are right! this is a bug which popped up in v0.12.0 to be precise.
I am just from noticing that, the content of the window reappears when the window is moved.

Oh, yes when I was trying to screenshot it, it returned back to normal, then I did the same thing and it disappeared.
What is the bug? Can you give me brief, if it's possible, I might be able to contribute.

It's a bug, looking into that.

Closing in favour of https://github.com/flet-dev/flet/issues/2082


"Unknown Error" when signing with brand new Apple ID

When signing in with a new registered Apple ID which has not been used for Apple Store, mas complains with Unknown Error.
$ mas signin<EMAIL_ADDRESS>"password"
==> Signing in to Apple ID<EMAIL_ADDRESS>Unknown Error.

After review the terms, it worked fine.


Add a license to repository since there currently is none

Since there is no license it means that the default copyright laws apply to the code/text in this repository.
To read more about what/why/how you can look at the following links:
https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository#choosing-the-right-license
https://choosealicense.com/

Should we just use the same (or slightly modified) license as the main destiny.gg site? @ILiedAboutCake

The base of Docusaurus and recent DGG projects have been licensed as MIT, and we will likely follow that pattern with this repo.


How to run style2paints v4 offline?

How do I run style2paints v4 offline on windows 10?

The server it launches is on localhost <IP_ADDRESS>, should launch regardless of internet connectivity.


Error after following RR7 quick start guide - useNavigate() may be used only in the context of a  component

Preliminary Checks

[X] I have reviewed the documentation: https://clerk.com/docs

[X] I have searched for existing issues: https://github.com/clerk/javascript/issues

[X] I have not already reached out to Clerk support via email or Discord (if you have, no need to open an issue here)

[X] This issue is not a question, general help request, or anything other than a bug report directly related to Clerk. Please ask questions in our Discord community: https://clerk.com/discord.

Reproduction
https://github.com/sanisoclem/clerk-rr7-repro
Publishable key

Description
Starting a new RR7 project and following the clerk guide doesn't produce a working app. The page errors out with:

useNavigate() may be used only in the context of a  component.
Error: useNavigate() may be used only in the context of a  component.
at invariant (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/react-router@7.1.0_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/react-router/dist/development/chunk-W3HZJLUQ.mjs:182:11)
at useNavigateUnstable (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/react-router@7.1.0_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/react-router/dist/development/chunk-W3HZJLUQ.mjs:4118:3)
at useNavigate (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/react-router@7.1.0_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/react-router/dist/development/chunk-W3HZJLUQ.mjs:4115:46)
at useAwaitableNavigate (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/@clerk+react-router@0.1.5_react-dom@19.0.0_react@19.0.0__react-router@7.1.0_react-dom@19.0.0__ctw3iynjxr5uzeptdtabadn6ge/node_modules/@clerk/react-router/src/client/useAwaitableNavigate.tsx:8:20)
at ClerkProviderBase (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/@clerk+react-router@0.1.5_react-dom@19.0.0_react@19.0.0__react-router@7.1.0_react-dom@19.0.0__ctw3iynjxr5uzeptdtabadn6ge/node_modules/@clerk/react-router/src/client/ReactRouterClerkProvider.tsx:36:29)
at Object.react-stack-bottom-frame (C:\Users\me\clerk-rr7-repro\node_modules.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:8723:18)
at renderWithHooks (C:\Users\me\clerk-rr7-repro\node_modules.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:46

A few things I have tried:

move ClerkProvider to layout - same outcome
downgrade to react 18 - same outcome

Steps to reproduce:

npx create-react-router@latest my-react-router-app
pnpm add @clerk/react-router
continue following instructions in: https://clerk.com/docs/quickstarts/react-router

update root.tsx to use rootAuthLoader()
update root.tsx's default export App and wrap Outlet with ClerkProvider

pnpm install
pnpm dev

Expected behavior:
To be redirected to login page
Actual behavior:
Error is shown:
Oops!

useNavigate() may be used only in the context of a <Router> component.

Error: useNavigate() may be used only in the context of a <Router> component.
    at invariant (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/react-router@7.1.0_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/react-router/dist/development/chunk-W3HZJLUQ.mjs:182:11)
    at useNavigateUnstable (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/react-router@7.1.0_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/react-router/dist/development/chunk-W3HZJLUQ.mjs:4118:3)
    at useNavigate (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/react-router@7.1.0_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/react-router/dist/development/chunk-W3HZJLUQ.mjs:4115:46)
    at useAwaitableNavigate (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/@clerk+react-router@0.1.5_react-dom@19.0.0_react@19.0.0__react-router@7.1.0_react-dom@19.0.0__ctw3iynjxr5uzeptdtabadn6ge/node_modules/@clerk/react-router/src/client/useAwaitableNavigate.tsx:8:20)
    at ClerkProviderBase (file:///C:/Users/me/clerk-rr7-repro/node_modules/.pnpm/@clerk+react-router@0.1.5_react-dom@19.0.0_react@19.0.0__react-router@7.1.0_react-dom@19.0.0__ctw3iynjxr5uzeptdtabadn6ge/node_modules/@clerk/react-router/src/client/ReactRouterClerkProvider.tsx:36:29)
    at Object.react-stack-bottom-frame (C:\Users\me\clerk-rr7-repro\node_modules\.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:8723:18)
    at renderWithHooks (C:\Users\me\clerk-rr7-repro\node_modules\.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:4621:19)
    at renderElement (C:\Users\me\clerk-rr7-repro\node_modules\.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:5056:23)
    at retryNode (C:\Users\me\clerk-rr7-repro\node_modules\.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:5704:22)
    at renderNodeDestructive (C:\Users\me\clerk-rr7-repro\node_modules\.pnpm\react-dom@19.0.0_react@19.0.0\node_modules\react-dom\cjs\react-dom-server.node.development.js:5530:11)

Environment
System:
    OS: Windows 11 10.0.26100
    CPU: (32) x64 AMD Ryzen 9 7950X3D 16-Core Processor
    Memory: 36.24 GB / 63.14 GB
  Binaries:
    Node: 22.12.0 - C:\Program Files\nodejs\node.EXE
    npm: 10.9.0 - C:\Program Files\nodejs\npm.CMD
    pnpm: 9.15.0 - C:\Program Files\nodejs\pnpm.CMD
  Browsers:
    Edge: Chromium (127.0.2651.74)
    Internet Explorer: 11.0.26100.1882
  npmPackages:
    @clerk/react-router: ^0.1.5 => 0.1.5
    @react-router/dev: ^7.1.0 => 7.1.0
    @react-router/node: ^7.1.0 => 7.1.0
    @react-router/serve: ^7.1.0 => 7.1.0
    @types/node: ^20 => 20.17.10
    @types/react: ^19.0.1 => 19.0.2
    @types/react-dom: ^19.0.1 => 19.0.2
    autoprefixer: ^10.4.20 => 10.4.20
    cross-env: ^7.0.3 => 7.0.3
    isbot: ^5.1.17 => 5.1.18
    postcss: ^8.4.49 => 8.4.49
    react: ^19.0.0 => 19.0.0
    react-dom: ^19.0.0 => 19.0.0
    react-router: ^7.1.0 => 7.1.0
    tailwindcss: ^3.4.16 => 3.4.17
    typescript: ^5.7.2 => 5.7.2
    vite: ^5.4.11 => 5.4.11
    vite-tsconfig-paths: ^5.1.4 => 5.1.4

I was just migrating my repo to rr7 and @clerk/react-router and ran into this as well, would appreciate a solution :)
Happy to provide more information / reproductions if necessary.

See here: https://github.com/clerk/javascript/issues/4641#issuecomment-2524696977
Temporarily downgrading Vite from v6 to v5 also worked for me.

We had the same issue, downgrading Node from 22.12 to 22.11 seemed to resolve.


data-uri-to-buffer error since 0.20.0

What version of the module is the issue happening on? Does the issue happen on latest version?
Version used: 0.20.0

What platform and Node.js version? (For example Node.js 6.9.1 on Mac OS X)
Node 8.9.4

Since we updated to mailgun v 0.20.0 we received the following error from our error tracking system:
Error: Cannot find module 'data-uri-to-buffer'
The line where this error occured was exactly on the line where we instantiate the mailgun plugin.
const mailgun = require('mailgun-js')({apiKey: api_key, domain: domain});
Adding data-uri-to-buffer to our package.json fixed the problem and we were again able to receive emails. Should this be added as a dependency for mailgun or is there something else going on? The previous version of mailgun worked perfectly for us.

Hmm that is strange... I can't reproduce this with Node.js 8.9.3, using npm (version 5.5.1 which comes with Node.js 8.9.3) or yarn 1.5.1. Also works with latest Node.js 10.6.0 (npm v6.1.0). What OS? Are you using a different registry (ie artifactory or something similar)?

We had this error on google app engine (using the Google-maintained Node.js docker image based on Debian Jessie). But also locally on mac os x 10.13.5 I received the same error after updating to mailgun 0.20.0.
We're not using a different registry.

Now we can't reproduce this issue also anymore. I think something went wrong with our npm install.


Update airflow installation docs for 1.10.15

Update https://docs.open-metadata.org/integrations/airflow/custom-airflow-installation passing the airflow 1 plugin instead

Done


Syntax error on lookbehind expression

CTRE doesn't seem to support lookbehind rules, like (?<=x) or (?<!x).
Compiler-explorer / GCC trunk reports a failed assertion in functions.hpp:
/opt/compiler-explorer/libs/ctre/master/include/ctre/functions.hpp:74:23: error:
   static assertion failed: Regular Expression contains syntax error.

Example:
#include <ctre.hpp>

constexpr bool a_not_preceded_by_b(const std::string_view s)
{
    constexpr auto pattern1 = ctll::fixed_string{ "[^b](?=a)" };  // Works
    constexpr auto pattern2 = ctll::fixed_string{ "(?<!b)a" };  // Fails
    return ctre::search<pattern2>(s);
}

static_assert(a_not_preceded_by_b("xa"));
static_assert(!a_not_preceded_by_b("ba"));

Is this a known issue? The lookahead expressions (?=x) and (?!x) seem to work though.

It's not implemented. If you want, send a PR.

@hanickadot Any progress/alternatives?


[FEATURE] Add option for media buttons to first applescript > config.json

Add skip forward and skip back (which work on both Main and Backup computers simultaneously), only visible if requested – probably hide and show the same way as the BACKUP button.

In progress for v4.1.0

Done


Made predefined error messages more consistent

Also switched from fmt.Errorf to errors.New (as no formatting is necessary to produce those particular predefined errors).
go mod tidy also introduced some changes to go.mod and go.sum.

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


Disable tests for registry or special folders

I disabled the 2 tests that PR #296 broke because they either use the registry or windows special folders.

Looks good, except I would consider targeting the #if scope just around the [Fact] attribute (and [Fact(Skip=...] in the #else). That way we can track tests that compile but are ignored (Jenkins tracks this).

Updated

LGTM


Database loss effect on sessions

Laravel Version: 6.0.3
PHP Version: 7.2.22
Database Driver & Version: MySql
Session Driver: Redis

Description:
Due to the recent unrecoverable failure in an AWS RDS MySQL used by our Laravel application, I find the following scenario may happen:
Steps To Reproduce:

Alice register in our website. We assign a user id = 1000 to her account. The id is stored in a MySQL database record as well as in a session stored in Redis.
MySQL crashes and we are afraid it may not recover anytime soon.
Fortunately we have a backup. We create a new database server using that backup. However, the backup is not up-to-date and it doesn't have Alice's records.
After the "partial recovery", Bob registers and we assign user id = 1000 to him as well. He then fills his profile and gives us some potentially sensitive information.
Alice visits our website again. Now she is seeing Bobs profile and sensitive data instead of hers because Laravel only checks session validity by the value of user id.

How to fix
If we know in advance this could happen, we might simply clear the whole cache to prevent such issues. But we didn't know :(
However, maybe a better alternative is to store user's create_at in session as well and perform an extra validation against it:
$id = $this->session->get($this->getName());
// Changing this line:
$this->user = $this->provider->retrieveById($id);
// To
$createdAt = $this->session->get('created_at');
$this->user = $this->provider->retrieveByIdAndCreateAt($id, $createdAt);

I don't know if this should be taken care of inside the framework or not, but when it happens it hurts!

if ive understood correctly, the AuthenticateSession middleware (which is provided by laravel but not enabled by default) might help with this kind of situation. can read more about it https://laravel.com/docs/6.x/authentication#invalidating-sessions-on-other-devices but basically it stores a hash of the password in session so if the password changes it invalidates the session

@rs-sliske thanks. AuthenticateSession seems to be good, except that, as you mentioned, it is password dependent, so it won't work with users registered by Google oAuth for example.

And AuthenticateSession is disabled by default.

I'm not sure the framework needs to take care of this when handling manual database recovery from a backup. I wonder what the chance of this occurring during an automated database failover are (when AWS RDS flips to the replica during a failure).
I suspect in this case when you're manually restoring you'd be best to cycle the APP_KEY so that all existing cookies are invalidated forcing users to sign in again.

@dwightwatson changing the app key will potentially do a lot more than just invalidating cookies, it will also lose any encrypted data
for session cookies you can just clear sessions
as for the framework being able to deal with this scenario properly that seems like an almost impossible problem, you have a database which says that user with id of 1000 is john, then after some set of actions your database says user 1000 is jane, but you still have references in other places that think user 1000 is still john,
the only defenses against this are either to make sure that primary keys never get reused, or to make sure that everywhere storing the users id also stores a bunch of other data about the user incase the id gets reused

Imo this can't be the responsibility of the framework. Like others have said above, id collision because of system failure can't be guarded against. Sessions being kept with ids can indeed be covered more thoroughly with the AuthenticateSession middleware but is opt-in.


Update MLIR (again)

PR for upgrades to MLIR 14.0 pre-release (d51e347).  To install conda package of this MLIR release:
conda install 'metagraph/label/mlir14_test::mlir=14=*_10'

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Files with Coverage Reduction
New Missed Lines
%

mlir_graphblas/engine.py
1
75.84%

mlir_graphblas/tests/test_profile.py
4
51.32%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
4559

Relevant Lines:
5308

💛  - Coveralls

Changes required:

Add environment prefix to CMAKE_PREFIX_PATH.  This ensures that libraries installed in the conda environment are discovered (which is very useful when working with x86 packages on macOS M1 system).   New MLIR cmake scripts seem to be explicitly searching for terminfo libraries that are not found unless this is added.
WhileOp accessors for before and after regions have been renamed from before() and after() to getBefore() and getAfter().
memref.tensor_load -> bufferization.to_tensor
linalg.tensor_expand_shape -> tensor.expand_shape
linalg.tensor_collapse_shape -> tensor.collapse_shape

going to merge this now.   Still to do in subsequent PRs:

Update notebooks that reference operations that have moved dialects
Update the SparseUtils.cpp file to reflect the new upstream version


Dev arrow orientation

Checklist for this pull request

[x] I have read the guidelines for contributing
[x] Checked that my code additions did fail neither code linting checks nor unit/UI test.

Description
i have finished the arrow orientation support left and right development, but don't make big change for the layout engine, just add new case for layout. And the arrowView isn't a UIImageView anymore, but a UIView,and draw the arrow according the orientation, so the “highlighted” not work temporarily(i think that's not hard to fix). While , i also add backgroundImageView var for interface of BodyView, then user can hidden it,and set custom background color if they want.
(Thanks!)

Thanks again for the work.
I can't accept the PR as is, sadly. The code review that follows might be a bit overwhelming, but it's not meant to belittle your hard work in any way. I'll begin with the presentation, then I'll discuss the content.
Additionally, I will comment on specific lines of the diff.
Presentation
To be fair, I didn't exactly write a CONTRIBUTING.md before, so that one is partially on me. There are general consistency issues. Here's the stuff which will need to be addressed:

Linting • The code does not pass Swiftlint's linting. You'll need to install Swiftlint and make sure to correct any warning/error you may encounter.

Comments • Some comments are written using Chinese characters, while I don't hold any particular view on which language should be used while coding, it needs to remain consistent throughout the code. For Instructions, comments have to be written in English.

Commit messages • While I'm fairly lenient with commit messages, they should still follow the standard rules. They should be no longer than 80 characters and if details are necessary, these can be put on the next line. Similarly, they shouldn't be written as the first person. Rather, they should describe the change in an impersonal way. Finally, commits should be written in English. This won't be too much of an issue however, as I will squash them before merging, but keep this in mind if you intend to submit other PRs.

Content

I'm not sure I understand why CoachMarksViewController and most of its fields became a public class. CoachMarksViewController has to remain internal, it's not supposed to be exposed as a public API. CoachMarksController.coachMarksViewController needs to remain private as well. The rational behind this choice, is that Instructions's internals can radically change without breaking the API for everyone.

Supplementary cutoutPaths (extraViews, extraCutoutPath) are included but don't seem to be used in any way. I'm not sure I understand where this is going. If multiple cutout paths were to be implemented, the delegate would need to support this as well; besides, I believe it wouldn't make much sense to keep both cutoutPath and extraCutoutPaths, as a single array could do the same. This very much seems to be an unrelated work in progress, so it shouldn't be included in this PR.

While I'm not against using Core Graphics instead of images for the coach marks, it needs to be fully transparent for users. In this particular case, I see three issues with the current implementation:

the highlight system no longer works on the arrow, I know that you said that you would fix it later, but it needs to work for the PR to be accepted;
the arrow is missing its border; it needs to look like the body, it's about consistency;
there's a one-pixel gap between the arrow and the body.

All in all, I don't think it's necessary to use Core Graphics yet. While it's an entirely valid option for the future, I don't feel it provides a significant improvement. I've attached the proper graphical assets (left/right versions of the arrow) at the end of this comment, use these images and you won't need to rewrite the entire system.

About background colors
I made the opinionated choice to not support background colors on default views (or any kind of customization beside hiding the next button). These views are meant to be an example. As I said on #155, if you need custom background colors, you should provide your own views, since I can't provide a one-size-fits-all solution. Besides, providing custom views is extremely easy.
What could happen in the future, however, is to have a subproject of Instructions, lying in another repository, providing a wide range of extensible, good looking, coach marks. Core Graphics based coach marks would be perfectly at home in such place and I believe it could satisfy everyone. ;)
Arrows.zip

I see that you have merged master back. I branched layout-engine from the same commit as you, so that you could work in total isolation, while I would continue to update master. Given that your changes are not simple fixes, I would have preferred handling merge conflicts myself, sorry if I didn't give you a heads up.
Additionally the PR now shows 157 files changed, most of them are noise and make the review process harder. Would you be able to revert the upstream merge in your branch and start fixing the PR from the last original commit (which was, if I'm not mistaken, 69145b2).
You could also create an entirely new PR, if you wish, by re-starting from master's latest commit and re-adding your work on top.
Either way is fine by me. Sorry to be a bit stern, but I need the process to be clean. PR must have a relatively narrow scope and change a limited number of files (unless they are related to the project architecture). I'll clarify that in CONTRIBUTING.md.

i have checkout a new branch to make the PR, close this one! thanks.


Missing references for values in body

This document is incomplete as it does NOT explain any configurable values in the JSON body example or where to get them or what they are.

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

ID: f59dfdee-26f3-a54d-6899-8182434895e9
Version Independent ID: c92ef943-2b16-54b2-2c6c-810a054c4e85
Content: Create or modify an offer - Azure Marketplace
Content Source: articles/marketplace/cloud-partner-portal-api-creating-offer.md
Service: marketplace
Sub-service: partnercenter-marketplace-publisher
GitHub Login: @mingshen-ms
Microsoft Alias: mingshen

@stderr-to-devnull Thank you for reaching out with your query, we will review and get back to you at the earliest.

hello, any update?

@stderr-to-devnull Our sincere apologies for delay in getting back to this thread.  We are trying to find the right owner with in our internal team who can help on this query and @mingshen-ms is helping on the same. We will update the thread as we get more information on this. Appreciate your patience on this.

Hello, any update?

Hello, any update?

Hello, any update?

Hello @stderr-to-devnull , thank you for the feedback. We are redoing these docs to bring them up to date, and your feedback will be incorporated in upcoming changes. #please-close


Preview interesting incoming changes before a user has to Sync

Few git tools out there highlight conflicts of local edits with remote changes before the user pulls. GitHub has some affordance this for Pull Requests, where it does of a branch is behind, will have merge conflicts, and/or can be auto-merged.

Why this matters? For users this would make pulling in remote code more predictable and less surprising. It is also a more complex operation that git doesn't offer built-in and no easy workaround for (like git pull --dry-run). As an extension of this, getting a sense of how much remote code drifts it could help developers to commit and push more often, avoiding conflicts.
Idea 1: Show more than just the number of commits to/from the remote branch, but also file changes +9 −8. Commits from from a 1-line change to major refactoring; so the file edits would give more context.
git diff main origin/main --shortstat provides summary and seems fast to run.
The UI for this could be in the button.
Idea 2: Highlight remote file changes against local files in the staging area.
git diff master origin/master --numstat provides the list of +/- for all changed files.
cc @lszomoru
Other ideas:

When users don't have background fetch enabled yet, the UI for this feature could prompt them to do so.
Do the same for branches against main; maybe GHPRI could provide that information from GitHub's API.

We got 99% there with the new view 🚀.


Unexpected regexp behavior in useThrottledEffect demo

This demo for useThrottledEffect exhibits some strange behavior. To reproduce, try slowly entering the string a1aaaaaa into the text box, and you'll see the status toggle repeatedly between "no digits" and "has digits".
I think the regexp in this line should drop the "global" flag. From these docs:

JavaScript RegExp objects are stateful when they have the global or sticky flags set (e.g., /foo/g or /foo/y). They store a lastIndex from the previous match.

Same for the useDebouncedEffect demo

Yep, this is a demo issue -- as all the examples and documentation will be rewritten soon - closing this issue.


Compatible with serde 1.0

serde::error::Error was removed
For details see:
https://github.com/serde-rs/serde/commit/3cc14c2a6dfea730cc0d7e6eb9d6b9fa1607ca78

Added lifetime parameter for Deserialize

Closes https://github.com/georust/rust-geojson/issues/63

@frewsxcv Let's get a 0.7 release out the door :)

Thanks for PR! just released 0.7.0


Migrate pallet-scored-pool to pallet attribute macro

Part of #7882.
Converts the ScoredPool pallet to the new pallet attribute macro introduced in #6877.
Following the upgrade guidelines here: https://crates.parity.io/frame_support/attr.pallet.html#upgrade-guidelines.
⚠ Breaking Change ⚠
From https://crates.parity.io/frame_support/attr.pallet.html#checking-upgrade-guidelines

storages now use PalletInfo for module_prefix instead of the one given to decl_storage: Thus any use of this pallet in construct_runtime! should be careful to update name in order not to break storage or to upgrade storage (moreover for instantiable pallet). If pallet is published, make sure to warn about this breaking change.

So users of the ScoredPool pallet must be careful about the name they used in construct_runtime!. Hence the runtime-migration label, which might not be needed depending on the configuration of the ScoredPool pallet.

Please review :)

bot merge


bc 1.0.6 (new formula)

keg_only :provided_by_osx?

Done. Thanks for the feedback, Dominyk.

Merged; thank you @sjackman! :tada:

Thanks for merging, Baptiste!


Add support for treating line/list as node

As https://github.com/dundalek/markmap/blob/master/examples/example.txtmap, a file with headers such as
# level 101
## level 201
### level 301
#### level 401
## level 202
### level 302
#### level 402

can be simplified as
- level 101
    - level 201
        - level 301
            - level 401
    - level 202
        - level 302
            - level 402

or
level 101
    level 201
        level 301
            level 401
    level 202
        level 302
            level 402

which would have a clear hierarchy and avoiding to input a lot of # chars.

This is now supported in the new version 0.4.0. You can use dashes like in your first example, or you can use asterisks (*) for lists as well. From your example you get this:


Actually when we run Script it gives Native app, how can we do same thing for Web App/Server-side app

Hi Ted,
Actually it create Native app, could you please suggest me how to do the Web app for same thing, Thanks.

Yes, my utility app creates a "native app" in Azure and not a "web app" because web app registration is not currently supported in Power BI embedded. The only supported way to use 3rd party Power BI embedding
today is to create the app as a native app. I certainly hope that the Power BI embedding plumbing evolves to support registering a Power BI embedding app as a web app before too long because it will make things far more secure., and when it does I will update this code.
FWIW, it is the code that sets the application's PublicClient property to true that makes the app a "native app" in Azure as opposed to a "web app".

Hi Ted,
Thanks for your response, I have one more question regarding Pbix installer for PowerBI script.
It actually pull the pbix files from local server to power bi workspace and also it update Azure sql credentials.
Is there any possibility we can do same thing for Web app instead of Native app.
So that we can create Web app manually in Azure AD and call Client ID and Secret key in the script, right now it will accept only Native app and only it takes client ID, if you know what needs to be change please suggest me, Thanks.
Regards,
Krishna
(732)524-4230

On Aug 4, 2017, at 11:41 AM, Ted Pattison<EMAIL_ADDRESS>wrote:
Yes, my utility app creates a "native app" in Azure and not a "web app" because web app registration is not currently supported in Power BI embedded. The only supported way to use 3rd party Power BI embedding
today is to create the app as a native app. I certainly hope that the Power BI embedding plumbing evolves to support registering a Power BI embedding app as a web app before too long because it will make things far more secure., and when it does I will update this code.
FWIW, it is the code that sets the application's PublicClient property to true that makes the app a "native app" in Azure as opposed to a "web app".
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Hi Krishna,
You only need to install as a "native app" for one specific scenario when you are using 3rd party Power BI embedding because you must authenticate the master user account without an interactive behavior. However, for general usage of the Power BI Service API, you can certainly register your application as a "Web App" and use the Authorization Code Grant flow to authenticate the user in an interactive session. If you use Authorization Code Grant flow, you will need to register a key for the client secret and use that key as part of the authentication process.


bump json-path from 0.9.1 to 2.4.0

Bumps json-path from 0.9.1 to 2.4.0.

Release notes
Changelog
Commits

FINERACT-964

This is red. I'll close this and open a PR with this fully resolved.

#894


No default() or new() method for Detail_ImageFeatures

When trying to use compute_image_features2, we need to pass in a &mut Detail_ImageFeatures. There's no implementation of a default() or new() method for this struct. If there is a different way to use this particular function, please provide a snippet.
I'm aware of compute_image_features, which takes in a vector of images, this works. However I have to clone from my image references into contiguous memory, which I'd like to avoid.

Hi, looks like you're right, there doesn't seem to be an obvious way to create an instance of Detail_ImageFeatures. I'll need to investigate the sources to see how it's handled internally, but for now indeed, looks like using the compute_image_features is the only workaround.

In v0.80.0 there should now be a default constructor for this class and some others, can you please check and reopen the task if it doesn't work?


Expression 2: Pass-By-Reference feature?!

(This is pissing me off, but actually not just me...)
Expression 2 code:
function vector check_ByRef( Input:vector )
{
    #local Input = vec()
    Input:setX( -Input:x() )
    Input:setY( -Input:y() )
    Input:setZ( -Input:z() )
    return Input
}

local Output = vec( 1, 2, 3 )

print( check_ByRef( Output ) ) # Prints: [1,2,3]   UNEXPECTED!
print( Output )                # Prints: [1,2,3]   UNEXPECTED!

And just to proof that Vector is "passed-by-reference" with GLua:
local vec = Vector
local VECTOR = FindMetaTable( "Vector" )
VECTOR.getX = function( this ) return this.x end
VECTOR.getY = function( this ) return this.y end
VECTOR.getZ = function( this ) return this.z end
VECTOR.setX = function( this, x ) this.x = x return this end
VECTOR.setY = function( this, y ) this.y = y return this end
VECTOR.setZ = function( this, z ) this.z = z return this end
------------------------------------------------------------
local check_ByRef = function( Input )
    --local Input = vec()
    Input:setX( -Input:getX() )
    Input:setY( -Input:getY() )
    Input:setZ( -Input:getZ() )
    return Input
end

local Output = vec( 1, 2, 3 )

print( check_ByRef( Output ) )
print( Output )
--[[--------------------------------------------------------
] lua_openscript_cl check-byref.lua
Running script check-byref.lua...
-1.000000 -2.000000 -3.000000
-1.000000 -2.000000 -3.000000
----------------------------------------------------------]]

The results are unexpected to many users, because they assume data-types such as Angle and Vector are classes/objects to be pass-by-ref...
But, as you can see with the above Expression 2 code, it shows that Vector is always "passed-by-value"; it is made wrong and is unwanted behavior, it also results in slower performance! However, there is one exception, the table type seems to be the only type which is "passed-by-reference" in Expression 2. And just to proof that with the following example:
function table check_ByRef_Table( Input:table )
{
    #local Input = table()
    Input["Key", string] = "New Value"
    return Input
}

local Output = table( "Key" = "Value" )

print( check_ByRef_Table( Output )["Key", string] ) # Prints: "New Value"   as expected.
print( Output["Key", string] )                      # Prints: "New Value"   as expected.

... I don't know whether Expression 2 will ever have this implemented correctly (taking into an account how much time have passed since active E2 development by wire devs, and the number of E2s out there). So, me personally won't bother with this though maybe there is somebody who is still and will care enough to create a new operator (or keyword ref) to allow "pass-by-reference" while preserving the current (wrong) behavior, so that it is backward compatible and wouldn't break any of the E2s. Moreover, this is my warning to users/newcomers since wiki lacks many information ...
/sorry-for-bad-english
/end-of-complain
/sign-out

The problem here is that the defined behavior of setX is not what you think. In E2, it is defined as Returns a new vector where the specified value has been replaced. See https://github.com/wiremod/wire/blob/master/lua/entities/gmod_wire_expression2/core/vector.lua#L373-L386 for more details.

Ah, of course array is also pass by reference.
function array check_ByRef_Array( Input:array )
{
    #local Input = array()
    Input[1, string] = "New Value"
    return Input
}

local Output = array( 1 = "Value" )

print( check_ByRef_Array( Output )[1, string] ) # Prints: "New Value"   as expected.
print( Output[1, string] )                      # Prints: "New Value"   as expected.

@Divran Now that you mention that, yeah... But, why close this issue?

Because it's intended behavior.

What do you think about implementing ref?

I don't believe there are any vector functions in E2 that actively modify the vector itself. If we were to implement any, it would be a break from the rule, and would be more confusing, not less.

Be precise in what you're requesting.
As @Divran says, it's an invisible implementation detail whether vectors are passed by reference or by value, because no vector is ever modified. Assuming your code was correct according to the V V:setX(n) behaviour mentioned above (ie. it read ... Input = Input:setX( -Input:x() ) ...), would you still expect the 'pass-by-reference' behaviour you're expecting to occur? Because in that instance even the Java equivalent of your code wouldn't give you the behaviour you're expecting.
When you say "implementing ref", do you mean an explicit reference wrapper type similar to C++'s std::ref(T&) or Java's Reference<T>, or a keyword on function parameters similar to C#'s ref, Pascal's VAR and Swift's inout keyword?
The former would be infeasible due to the lack of an expressive type system - ie. we could invent a reference type, but it wouldn't be a reference to a particular type, just to any value in general. It'd act like a singleton array or table, essentially.
The latter I wouldn't be entirely opposed to, but it would need a lot of thought - and given the E2 function system is one of the worst thought out parts of the E2 codebase I imagine the implementation would be seven shades of horrible.

(indexer) operator

is not a

vector function

@oldmud0 Technically, doesn't matter...
Because it doesn't change the fact that [] operator is still an (e2)function:
https://github.com/wiremod/wire/blob/e775ff49b3be94610e6039c2a92dc8f2e35a985e/lua/entities/gmod_wire_expression2/core/vector.lua#L165-L172

@CaptainPRICE feel free to open a new issue where you actually specify what you want - this one confuses multiple different requests, bug reports, and fake news together in one.

 Anyway, this was done back in 2013, so if we got rid of them it'd probably break a few E2s.

I have no idea why I thought that was a good idea back then.
Anyway, it's a bad idea, since it allows spooky action at a distance.
Luckily the output converters limit that effect to E2.

Anyway, it's a bad idea, since it allows spooky action at a distance.

What is that supposed to mean?!

This is useful, so we can avoid creating a new instance(object/table) over and over again. Besides, changing these properties is possible with Angle/Vector (and other) objects in GLua too, usually this can be used to improve performance/speed and actually allows for "pass-by-reference" type of thing in E2 (I will show an example in a moment).
There are also GMod functions which alter the existing object instead of returning a new one (some examples are Vector.Normalize, Angle.SnapTo and many more).
So, yes this is a good thing.
And yes of course, by removing [] (indexer) operators (or modifying how they work at the moment) on those types, it would break existing E2s (for no good reason). I certainly do NOT recommend removing/modifying them in any way.
And here is a small E2 example of angle "pass-by-reference", I've simply ported GLua Angle.SnapTo function to E2:
angle-snapto.txt

What is that supposed to mean?!

"Spooky action at a distance" is a phrase that Einstein used to describe quantum entanglement. What TomyLobo means in this context is that reference parameters allow faraway parts of your code to affect you in ways that aren't obvious, which can be hard to read and debug. The Google C++ Style Guide, for example, bans non-const references because of this.

This is useful, so we can avoid creating a new instance(object/table) over and over again ... usually this can be used to improve performance/speed

This is an implementation detail. It's typically easier for compilers to optimize code when types are pass-by-value and immutable, so by wishing for your own, so we'd miss out on optimization opportunities in future.

Besides, changing these properties is possible with Angle/Vector (and other) objects in GLua too ... There are also GMod functions which alter the existing object instead of returning a new one (some examples are Vector.Normalize, Angle.SnapTo and many more).

E2 and Lua are different languages, and they have different semantics. I don't file bugs against C because its structs aren't pass-by-reference like Java.

And yes of course, by removing [] (indexer) operators (or modifying how they work at the moment) on those types, it would break existing E2s (for no good reason). I certainly do NOT recommend removing/modifying them in any way.

Nobody said anything about that.

And here is a small E2 example of angle "pass-by-reference"

The code you posted would work fine without reference semantics, except for the very last line. See? You're already used to working with value semantics. Embrace it.


[LOC] Invalid link in an article

There is an invalid link in an article.
Repro steps:

Go to https://docs.microsoft.com/en-us/office/dev/add-ins/excel/custom-functions-authentication
Search for "OfficeRuntime.storage"
Click on the link

Actual results:
Link is not working
Expected results:
Link works or is removed from the topic
GH article:
https://github.com/OfficeDev/office-js-docs-pr/blob/live/docs/excel/custom-functions-authentication.md

This broken link has been fixed (as part of #1082)  and the fix will be published to the live docs later today (when master gets merged into live). Closing this issue since the problem's been addressed.


CPU Usage and Apple Installers

I wonder if there is a way to stop zsh being used by Apple installers and such as I'm currently seeing every time I install some apple software on Yosemite I get one of my CPUs pegged at 100%.
This seems very severe and consistently reproducible.  A detailed analysis is available from someone on stack overflow:
https://superuser.com/questions/803713/zsh-process-taking-95-of-my-cpu/#840792
Not really sure if you can detect who is calling zsh and if it's installd just default to bash.

That's very interesting, and concerning. I'd like to try reproducing it. I run zsh as my default shell and now I'm wondering if it's caused problems too. (As far as I can tell, it is an incompatibility, but that zsh -c should just fail to remove the defaults (which is also a problem) and return.)
Can you give me an example of a specific piece of Apple software that causes this reproducibly?
And if you could, post the output of omz_diagnostic_dump from here as a gist so I can try to reproduce your zsh-related setup exactly?
ps $PPID can be used to detect the parent process of your zsh session, and you might be able to detect installd usage with that, or similar process-tree walking. So self-replacement seems feasible. A replace-with-bash is a pretty extreme workaround, though, so I'd like to test it carefully before employing.

I can't reproduce this with iWork. I'm on OS X 10.10.3, with /bin/zsh as my default shell, and oh-my-zsh installed and updated as of today. I tried installing the iWork programs and it worked fine each time.
I installed, uninstalled, and reinstalled Keynote, Numbers, and Pages several times, either individually or queuing them all up by hitting their "install" buttons in rapid succession. I threw in GarageBand, Aperture, iPhoto, Evernote, and Twitter, too. All worked fine.
By any chance do you have anything in /Library/LaunchDaemons? That could include low-level configuration that's visible to GUI apps, whereas my settings wouldn't be.

If we can reliably detect the problem situation, we may also be able to fix it by just using emulate and/or re-parsing the command line during startup.
However, I don't think OMZ can actually do that. I wasn't able to reproduce the problem, so I couldn't see the whole command line for the problematic process. But unless the installer program is explicitly calling zsh with the -l or -i option, it will be a non-interactive shell. And ~/.zshrc only gets loaded for interactive shells. So OMZ would never get loaded in this case, and wouldn't have an opportunity to do anything about it.

Okay so I'll get back to you next time this happens.  No time to test right now!

Closing then, if it happened again feel free to reopen.


Training codes and dataset

Thanks for your great work! Do you plan to share the training scripts and the dataset? Or any hints to build the dataset? You mentioned your dataset comes from GeoWizard but seems they don't offer the dataset, too.

We are cleaning training code. For access to the preprocessed dataset, you could contact me at<EMAIL_ADDRESS>


Added config option to display in km/h and method to do so

First time looking at this project in a long time. Nice work!


Add support for basic named params in partials

Closes #165
Allow a partial inclusion expression, e.g., (!mypartial.mdx!) to assign named parameters that replace template variables in partials. For example, (!mypartial.mdx var="value"!) replaces the template variable {{ var }} in mypartial.mdx with value.
Design details:

Variable values must be in quotes, single or double, and the quotes must match.

There can be multiple variables/values. The inclusion expression separates these with spaces, e.g.:
(!mypartial.mdx var1="val" var2='val'!)

Allows for default parameter values, which will make it easier to add parameter support to existing partials. E.g., with a template variable like this:
{{ myvar="myval" }}
This partial will populate the template variable with myval at this particular location if the inclusion expression does not assign it a value.

If a parameter does not have a default value, and an inclusion expression does not provide one, the {{ myvar }} expression will be left untouched, allowing for situations where a partial needs to include a literal {{ }} string.

Escapes: Unfortunately, due to some JavaScript quirks I didn't give myself time to look into, quotes must be escaped twice, e.g., \\". Double escapes are removed within double-quoted strings but not within single-quoted strings.

There's a proof of concept for using partial params in this branch in gravitational/teleport: paul.gottschling/2022-10-add-role-partial.
I need to resolve some linter issues, but thought I would open this first to get feedback on more substantial issues first.

What do you think about:

making (!mypartial.mdx var1="val" var2="val"!) whitespace significant.
only allowing a single quote type.
using (!foo="bar"!) to set the default instead of {{

Making these changes should simplify the parser and also allow you to support multiple defaults (!foo="bar" bax="baz"!) with the same parser. I also feel it makes the syntax a bit more consistent.
The operating systems we support include {{ systems="macOS, Windows Server, and Linux" }}

would instead become
(!systems="macos, WindowsServer, and Linux"!)
The operating systems we support include {{ systems }}

@hatched Thanks again for giving this a look!

What do you think about:

making (!mypartial.mdx var1="val" var2="val"!) whitespace significant.

The current behavior is to separate parameter assignments with spaces (e.g., using it to detect the start of a parameter name). Was there another kind of significant whitespace you were thinking of?

only allowing a single quote type.

This makes a lot of sense!

using (!foo="bar"!) to set the default instead of {{

The {{ that sets the default is in the partial itself, rather than the page that's including the partial. Just to double-check, would we be using the (! !) syntax in both the page that's including the partial and the partial itself?
One possible issue is when one partial needs to include another partial (e.g., in start-auth-proxy.mdx), but we could write a test case to prevent the (!var="val"!) inside a partial form being parsed as including another partial.

Making these changes should simplify the parser and also allow you to support multiple defaults (!foo="bar" bax="baz"!) with the same parser. I also feel it makes the syntax a bit more consistent.

With the current approach, the defaults are assigned at each position where a partial substitutes a single variable. For example, for this partial...
This is a partial.

Here, we're substituting a word with {{ other="another word" }}.

Here, we're substituting a word with {{ other="yet another word" }}.

If a page includes this partial without assigning a value to other (e.g., (!mypartial.mdx!)), the docs engine would render:
This is a partial.

Here, we're substituting a word with another word.

Here, we're substituting a word with yet another word.

To have multiple variables with multiple defaults, you would just declare another {{ myvar="mydefault" }} in the partial.
The alternative could be to include separate syntax within a partial that only exists to assign defaults, e.g.:
{{ other="Another word" }}

Here, we're substituting a word with {{ other }}.

Here, we're substituting a word with {{ other }}.

In this case, the parser would remove the first line from the partial and use the default value to substitute {{ other }}.
Is that what you meant in the example below?

The operating systems we support include {{ systems="macOS, Windows Server, and Linux" }}

would instead become
(!systems="macos, WindowsServer, and Linux"!)
The operating systems we support include {{ systems }}

making (!mypartial.mdx var1="val" var2="val"!) whitespace significant.

The current behavior is to separate parameter assignments with spaces (e.g., using it to detect the start of a parameter name). Was there another kind of significant whitespace you were thinking of?

Sorry what I meant was that if superfluous spaces were added to that statement it would be invalid ex) (!mypartial.mdx var1="val" var2 = "val"!)

using (!foo="bar"!) to set the default instead of {{

The {{ that sets the default is in the partial itself, rather than the page that's including the partial. Just to double-check, would we be using the (! !) syntax in both the page that's including the partial and the partial itself?
One possible issue is when one partial needs to include another partial (e.g., in start-auth-proxy.mdx), but we could write a test case to prevent the (!var="val"!) inside a partial form being parsed as including another partial.

So my thought was that because the (!foo="bar"!) statement didn't include a partial name it would only apply to the file it was defined in. I'm not too stuck on this, I just thought that because it's using a similar syntax you wouldn't need a special handler for {{ defining the default values.

The alternative could be to include separate syntax within a partial that only exists to assign defaults, e.g.:
{{ other="Another word" }}

Here, we're substituting a word with {{ other }}.

Here, we're substituting a word with {{ other }}.

In this case, the parser would remove the first line from the partial and use the default value to substitute {{ other }}.

That's correct. I couldn't see a use case where other would (should?) have two different values within the same partial so having the ability to define it as a variable that can be overridden externally seemed like a good idea. ex)
(!systems="macos, WindowsServer, and Linux"!)

The operating systems we support include {{ systems }}
...
Remember that we only support {{ systems }} so if you're trying this on something else it'll fail.

would become:
The operating systems we support include macos, WindowsServer, and Linux
Remember that we only support macos, WindowsServer, and Linux so if you're trying this on something else it'll fail.

Sorry what I meant was that if superfluous spaces were added to that statement it would be invalid ex) (!mypartial.mdx var1="val" var2 = "val"!)

Sounds good—I've added this logic.

That's correct. I couldn't see a use case where other would (should?) have two different values within the same partial so having the ability to define it as a variable that can be overridden externally seemed like a good idea. ex)

That also sounds good. I'll get this done next time I return to this.

it looks great to me. Would wait to get the thumbs up from @hatched after the review feedback

@hatched @avatus Thanks for the reviews! Just added a comment above the regexp—looks like my push dismissed the two approvals.

Unfortunately, I'd forgotten that we needed to support NodeJS v14 for CI to pass, and replaceAll is only available beginning in v15. I've pushed another commit swapping replaceAll for replace.


Handle value result parameter

Update the addrlen of accept() and recvfrom() based on the protocol family.

@pfalcon, please review this PR.


Support building multi-file specs from tar files

Adds a new --tar-file option which causes source files to be opened from
the tar file, instead of from the filesystem. It applies to the toplevel
source file and any file includes (pre class=include), so a tar file
for a multi-file spec can be built from a single file.
This makes it easy to do multi-file builds using the Bikeshed API
(http://api.csswg.org/bikeshed/). Bikeshed operates on the tar file in
memory, avoiding extracting arbitrary files to the local filesystem.
It supports whatever compression is supported by Python's tarfile,
e.g. gzip, bzip2, lzma.
Since this is meant for use with multi-file specs, input defaults to
index.bs or Overview.bs only, and doesn't search for other .bs or
.src.html files.
Output always defaults to - (stdout), because the input source file
doesn't exist in the filesystem and a proper output location can't be
guessed.
Usage:

Output to a file:
bikeshed spec --tar-file=myspec.tar myindex.bs outfile.html
Output to stdout:
bikeshed spec --tar-file=myspec.tar myindex.bs -, or
bikeshed spec --tar-file=myspec.tar myindex.bs
If using index.bs or Overview.bs:
bikeshed spec --tar-file=myspec.tar, or
bikeshed spec myspec.tar, or
bikeshed spec myspec.tar outfile.html

Ooooh, pretty cool overall. Some significant questions/nits before I merge, tho.

Is there a particular reason you merged this functionality into FileInputSource rather than making a new TarInputSource? It looks like the two don't actually share much code, and for the methods you didn't add stuff to, it's not clear to me that they're correct.
The tarFile shouldn't be a global constant; it's particular to a given Spec file and should be a property of that object. (Or rather, probably just encapsulated in the InputSource object?)
Rather than passing the input path in the --tar-file argument and ignoring the infile argument, I think --tar-file (or just --tar?) should be a boolean, and we can still use the infile argument for the path.
The outfile argument still makes sense, and I think the default should be to write to a [same name].html file in the same directory as the tarfile, like we currently do for plain BS files.

Thanks for the review! I'll look into revisions soon. I think your suggestions all make sense.

Rather than passing the input path in the --tar-file argument and ignoring the infile argument, I think --tar-file (or just --tar?) should be a boolean, and we can still use the infile argument for the path.

I did this because if you had a .bs file with a name other than index.bs or Overview.bs then this would let you specify the filename inside the tar. But that doesn't matter for us (we use index.bs) and you can always work around it by renaming your toplevel file. So I'm happy to simplify this.

2/4: Done.

1. Is there a particular reason you merged this functionality into FileInputSource rather than making a new TarInputSource? It looks like the two don't actually share much code, and for the methods you didn't add stuff to, it's not clear to me that they're correct.

TBH because my screen was too small when I was doing this and I didn't see that FileInputSource was a small class I could reimplement ^_^

3. Rather than passing the input path in the --tar-file argument and ignoring the infile argument, I think --tar-file (or just --tar?) should be a boolean, and we can still use the infile argument for the path.

I did roughly this but without adding an argument at all - it just detects .tar in the filename.
Do you think this is OK? It seems easier for bikeshed-web (assuming it preserves the filename, which I'm not sure about) because then hopefully it won't need any updates.

2/4: Done.

Is there a particular reason you merged this functionality into FileInputSource rather than making a new TarInputSource? It looks like the two don't actually share much code, and for the methods you didn't add stuff to, it's not clear to me that they're correct.

TBH because my screen was too small when I was doing this and I didn't see that FileInputSource was a small class I could reimplement ^_^

Rather than passing the input path in the --tar-file argument and ignoring the infile argument, I think --tar-file (or just --tar?) should be a boolean, and we can still use the infile argument for the path.

I did roughly this but without adding an argument at all - it just detects .tar in the filename. Do you think this is OK? It seems easier for bikeshed-web (assuming it preserves the filename, which I'm not sure about) because then hopefully it won't need any updates.

Oh, I just read my email. Peter suggested using tarfile.is_tarfile because PHP may not preserve the file extension. This seems reasonable, so I'll try it out when I have a chance.

Drafted that.

@tabatkins ping for re-review! :)

Sorry for the delay! Will review today. <3

Thank you! Eager to start trying this out :)


Automate release creation

Goal
Automate release creation with a PR-based workflow and semantic versioning.
Release versioning will cue off conventional commits inherited from PR titles to identify if a set of changes is a major, minor, or patch release.
Approach
This will be powered by the google-github-actions/release-please-action. While we might use the simple release as a catch-all, in order to increment versions in individual components of this repository we should use a monorepo type.
We have #360 to define the plumbing necessary for release notes. #358 is related, shifting our linter to PR-title basis.

This plan seems to be blocked on https://github.com/google-github-actions/release-please-action/issues/427

We can model off of https://github.com/GoogleCloudPlatform/samples-style-guide/blob/main/.github/workflows/release-please.yaml, adding an option to use GitHub release notes instead of those provided by release-please.


Windows menu unreadable (Unibody interface)

Hi,
this problem happens whenever you activate the "Unibody" interface on windows, and essentially, the colour of the text in the menù happens to be too light and it does not contrast enough to be readable as the following picture shows (left menu).

and this happens both on the light and dark theme, but in the case of the dark theme, the unreadbale part is no more the menu but the right part, for example when you want to open a file etc... (as follows)

Thank you for the detailed issue, I will look into it and test it on Windows.
How do you exactly activate this view? I'm not familiar with it.

no problem, you need to go to "File -> Settings -> (on the left side) appearance (i hope this is the english name typora uses, however it should be the second list item on the lft hand side of the settings) ->Window Style " and then you need it to set to Unibody.
In order for your changes to take effect you are required to restart the application.

Hey! I just pushed a new release (v1.1.1) including a basic fix. I still want to work a little bit more on the colors/contrast to make it beautiful but this should make the themes usable 😄
Thank you for reporting this issue and using the theme!

thank you, i'll try it out!


Fix k8s reporter audit / dmsg log collection

What this PR does / why we need it:
This PR attempts to fix 2 different issues in the K8s test reporter:

some parameters on the dmsg / audit logs print to stdout had whitespaces in between, causing an invalid command to be displayed
the command to print the audit log features the audit log path twice

Other than this, I set the command in a variable, so we do not repeat ourselves.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/lgtm
/approve

/lgtm
/approve

/retest

/retest

/retest

/retest

/retest

/retest


Add YouTube API scraping functionality

We need to be able to scrape YouTube for the relevant PyCon Ireland videos, for each talk.
Please add code here:
https://github.com/PythonIreland/python_ireland_talk_database/blob/main/api_modules/youtube.py

I can contribute here, what are the details that need to be extracted?


#364 soul-admin 增加Swagger用于生成、描述、调用和可视化 Restful 风格的 Web 服务。

improve: #364

Codecov Report

Merging #366 (efd89a9) into master (aaa6913) will not change coverage.
The diff coverage is 0.00%.

@@          Coverage Diff           @@
##           master    #366   +/-   ##
======================================
  Coverage    0.00%   0.00%
======================================
  Files          21      22    +1
  Lines          47      60   +13
  Branches        1       1
======================================
- Misses         47      60   +13

Impacted Files
Coverage Δ

...romara/soul/admin/config/SwaggerConfiguration.java
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update aaa6913...efd89a9. Read the comment docs.


SEO Improvements

The <head> in the index.html page is very bare bones right now. No title tag, no meta tags of keywords, etc.
Tags to help with SEO are definitely needed, but my knowledge of what's important vs what isn't is limited. Would love to have some help with this so that PaperCSS is easier to discover via search.

I'll work on this tonight, and I think I will also clean up a bit the HTML, it looks clunky as hell. :ok_hand:


Add force_destroy to S3 bucket

Signed-off-by: Teddy Reed<EMAIL_ADDRESS>
Summary

The S3 bucket is used for temporary state. It can be safely removed at anytime.
How did you test this change?

Run the module locally and remove (verify no error on removal).
Issue
N/A

@alannix-lw great idea, done


How to install a vpk on vita shell

I copied the entire app folder on the vpk folder (the vpk, eboot, and some other folders) when i try to install the folder i get error 0xB0AF5500

Because you need to unlock the  enable unsafe homebrew in  henkaku
settings. The henkaku settings is on the vita settings page
On Mon, 20 Aug 2018, 03:58 psvita2018<EMAIL_ADDRESS>wrote:

I copied the entire app folder on the vpk folder (the vpk, eboot, and some
other folders) but when i press triangle i dont have the install folder
option, doing a live refresh wont add the app neither...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/TheOfficialFloW/h-encore/issues/54, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AnVATF9TjlPonZ5ZKVSbT-8uyrSSbCVNks5uSiXJgaJpZM4WDRPq
.


React - Expand tree area

Both source and target areas have a large list of possible fields, but the height of the container element is just 1.5 rows, forcing the user to scroll with very little room to read the entries down the list.

mine works fine.

Fixed by https://github.com/atlasmap/atlasmap/pull/1816


weights for inference

I can't find the weights "saved_models/ExpSDv5_MapV6_Log_v11062026/Val_best.pth".
Do you plan to provide the trained weights?

Thank you for reaching out. Unfortunately, we currently do not have plans to release the weights as they have been deleted.


test: HACBS-916/Check-Correct-Naming for the release service E2E tests

Check-Correct-Naming for the release service E2E tests
Description
Please include a summary of the changes and the related issue. Please also include relevant motivation and context. List any dependencies that are required for this change.
Issue ticket number and link
https://issues.redhat.com/browse/HACBS-916
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Checklist:

[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation

//assign @davidmogar

/assign @davidmogar


Fix bug with inline code and code block replacement

Summary/context
All my inline code written like this in Logseq was being removed and replaced by zmkjfnd.
Changes

fix: bug with inline code and code blocks
refactor: use constants instead of string literals
docs: add "Development" section to README

Thanks for the PR!


Questions about data write security

I've taken a look at the littlefs design documentation, and there are some examples of how to identify and deal with bad areas. I wonder if calling lfs_file_write() returns LFS_ERR_OK, does that mean the data was written correctly? Do we also need to customize the contents of the file, such as adding crc, and then reading it out to verify the crc after successful writing?

Hi @binlaodi, thanks for creating an issue, sorry about the late response.
First thing to note is that lfs_file_write caches data and doesn't write it immediately, but you can force pending writes to be written to disk with lfs_file_sync.
Second thing to note is that LFS_ERR_OK indicates the data was written to disk to the best of littlefs's knowledge. The way littlefs works is that on every prog operation, it immediately reads back the data to check that the data read matches the data written. If it doesn't match littlefs move the data to a different block.
But this only happens at write time, and doesn't account for errors that may occur to the data after writing. There are some plans to add data checksumming in the future, but right now any bit errors that develop after writing+verification go undetected.

So you don't need a separate CRC to verify writes, but it may be useful for verifying data at read time.
Alternatively, implementing error correction in the block device layer (some block devices provide this in hardware) can also protect against bit errors, but may require more work to implement.


Update Package to align with latest video_player

Absolutely LUV this package. Combined with video_player it provides the best video playing experience for network content I've found ... and I think I've tried them all ❤
But have noticed I cannot get to the latest version of video_player (which is 2.4.10) running with Flutter 3.7.x due to a dependency conflict. The highest version I can get with ext_video_player is latest 0.1.2 ... but I need to fall back to video_player version 2.4.7. If I try to go any higher I get:
Because video_player >=2.4.3 <2.4.10 depends on video_player_platform_interface ^5.1.1 and video_player >=2.3.0 <2.4.3 depends on video_player_platform_interface ^5.1.0, video_player >=2.3.0 <2.4.10 requires video_player_platform_interface ^5.1.0.
And because video_player >=2.4.10 depends on video_player_platform_interface >=5.1.1 <7.0.0, video_player >=2.3.0 requires video_player_platform_interface >=5.1.0 <7.0.0.
Because no versions of ext_video_player match >0.1.2 <0.2.0 and ext_video_player 0.1.2 depends on video_player_platform_interface ^4.1.0, ext_video_player ^0.1.2 requires video_player_platform_interface ^4.1.0.
Thus, ext_video_player ^0.1.2 is incompatible with video_player >=2.3.0.
So, because fluttertmdb depends on both video_player ^2.3.0 and ext_video_player ^0.1.2, version solving failed.
pub get failed

Aware of this existing PR https://github.com/ponnamkarthik/ext_video_player/pull/39 for Android ExoPlayer update, but hoping to catchup to video_player for all platforms.