Add documentation around caching behavior

There is little, well actually no, documentation in the User Guide explaining how caching in Siesta works. It's a little inconvenient. For example, I had to skim through the source code to figure out when Siesta attempts to load data from the cache: it involves some function like initializeFromCache which is invoked from observersChanged and observersChanged gets invoked when adding observers to a resource.  While EntityCache does have it's own section in the API docs, it would be nice to have some accompanying explanation in the User Guide to fill in missing information like this (where else does a resource load data from the cache?) or provide best practices, if any.

Caching in the current release is a bit half-baked. The behaviors you're looking at also have a subtle bug (#237).
A revamp of caching is coming, including a working default cache implementation. You can get a preview on the file-cache branch. (Note that the API on that branch is still in flux! It does work, though.) That branch will land with better docs.

Fantastic! Can't wait. My apologies for re-opening this issue, in another issue. I didn't realize you closed it. Thank you.


UI tweaks

Closes #691

Changed the training board metrics and added tool tip informations

@tharvik I'm merging this PR right now to have more time for internal feedback and I'll create a new PR to address your answers if needed (as well as feedback)


[Bug] 1.2.1 has "latest-release" instead of "latest" tag forcing 1.1.0 download

Describe the bug
If you use the default docker command as described in the readme.md to run the container, then instead of running 1.2.1 you end up redownloading 1.1.0 - this is because (at least on Docker for Windows) the "latest-release" tag is not the same as the "latest" tag, and "latest" takes priority. You can work around this by adding :latest-release to the end of the container name.

Good catch, I will update the readme.
One thing to note though, latest will always be newer than (or the same as) latest-release, so if latest-release is 1.2.1, then without specifying a tag, it would redownload latest, which would also be at least 1.2.1. I'm guessing what happened to you is that you pulled the new latest-release version, then started the container without a tag (which would default to latest), and since you already had that one previously it would start it (without pulling the newer latest version).

Weird – so for me, I -had- 1.1.0, and then I downloaded 1.2.1, but then it ran 1.1.0 when I ran it without a tag. I then deleted my 1.1.0 thinking it would just failover to 1.2.1 – but instead it redownloaded 1.1.0 without a tag. I had to explicitly use :latest-release to run 1.2.1 instead of 1.1.0. Why that is, I honestly couldn’t tell you, and it sounds like it should never do that based on your explanation.
From: Tycho Bellers @.>
Sent: Thursday, June 9, 2022 10:56 PM
To: TychoTheTaco/Twitch-Drops-Bot @.>
Cc: Michael Wray @.>; Author @.>
Subject: Re: [TychoTheTaco/Twitch-Drops-Bot] [Bug] 1.2.1 has "latest-release" instead of "latest" tag forcing 1.1.0 download (Issue #124)
Good catch, I will update the readme.
One thing to note though, latest will always be newer than (or the same as) latest-release, so if latest-release is 1.2.1, then without specifying a tag, it would redownload latest, which would also be at least 1.2.1. I'm guessing what happened to you is that you pulled the new latest-release version, then started the container without a tag (which would default to latest), and since you already had that one previously it would start it (without pulling the newer latest version).
—
Reply to this email directly, view it on GitHub https://github.com/TychoTheTaco/Twitch-Drops-Bot/issues/124#issuecomment-1151906674 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ADMZY6XISQRGGP2PLTDDO4DVOK4FVANCNFSM5YMFNHDQ .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/ADMZY6SMMF5NUADAV2TDC43VOK4FVA5CNFSM5YMFNHD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOISULG4Q.gif Message ID: @.*** @.***> >


Mongoid Issue with @provider.find_by_key etc

The issue is same
https://github.com/pelle/oauth-plugin/issues/closed/#issue/27
lib/oauth/controllers/application_controller_methods.rb
80 @oauth2_token = Oauth2Token.find_by_token(token)
139 @client_application = ClientApplication.find_by_key(request_proxy.consumer_key)
lib/oauth/controllers/provider_controller.rb
35 @client_application = ClientApplication.find_by_key params[:client_id]
53 @token = ::RequestToken.find_by_token params[:oauth_token]
61 @token = current_user.tokens.find_by_token params[:token]
122 @client_application = ClientApplication.find_by_key params[:client_id]
152 @client_application = ClientApplication.find_by_key params[:client_id]
182 @verification_code =  @client_application.oauth2_verifiers.find_by_token params[:code]
Mongoid does not recognise this.
undefined method find_by_xxx....
Solution is to override or change this line to
find(:first,:conditions=>{:xxx=>....})
or
where(:xxx=>...).first

Here is what I did to fix it, exactly as you pointed out @imackinn : https://github.com/arnklint/oauth-plugin/commit/55f4728c7de451f560c8b02854bc2225e5213f97
Ran the tests, and they are all fine with this change.


upload_options + S3 presigning

Looking at lib/shrine/storage/s3.rb:207, I'd expected options set using the upload_options plugin to be taken into consideration when generating a presigned request. However,  lib/shrine/plugins/upload_options.rb:23 reveals that these options are only applied on put to the storage.
I was going to submit a PR making the two work together, but realized the block form of upload_options expects an IO object, which we won't have at presigning time… so I'm opening this to document the issue and see you have any thoughts about ways forward.

Yes, unfortunately, in the direct_upload plugin the storage is used directly, and doesn't go through Shrine (it's a storage-specific feature so it doesn't make sense to expose it in Shrine), so it's not possible for the upload_options plugin to be applied to the presigning in direct_uploads.
However, there are two alternatives. If your upload options aren't dynamic, you can add :upload_options when instantiating the storage:
Shrine::Storage::S3.new(
  upload_options: {acl: "public-read", ...},
  **s3_options
)

Alternatively if the upload options need to be dynamic, you can pass a block to :presign option in the direct_upload plugin:
plugin :direct_upload, presign: ->(request) do
  {acl: "public-read"}
end

Since you've found upload_options options not being upload to direct_upload plugin surprising, I'm wondering if those two are connectable but that I'm not seeing a way. Did you have something in mind?

Thanks — I ended up using the global upload_options, like you mentioned. The main source of surprise was that the documentation seemed to imply that the upload_options plugin would work. I think a slight clarification there would probably dodge the issue. :)
I should also admit that I only ran across this by following a somewhat non-standard workflow. I'm implementing presigning in an API that uses JSON-API doesn't serve any HTML views, so I needed to reimplement the functionality provided by the endpoint in the direct_upload plugin.

Ok, fixed in https://github.com/janko-m/shrine/commit/0c2aeb6a873903be4e316f51f673311697218cf0. Thanks for bringing it up.

:tada:


⚠ Grafana has degraded performance

In 4d55374, Grafana ($SERVER_BASE/grafana/) experienced degraded performance:

HTTP code: 403
Response time: 5150 ms

Resolved: Grafana performance has improved in 511b071.


Bump Dependencies #3705288316

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/3705288316

 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.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Make VCDM credential subject a non-empty vec

As described in https://www.w3.org/TR/vc-data-model/#credential-subject it is a MUST.

A verifiable credential MUST have a credentialSubject property.

In the context of JSON there's a difference between "the property must be there" and "the property must be non-empty". My interpretation of this sentence is "the property must be there" but implicitly it can be empty. Can we have a third opinion? Just to be sure :sweat_smile:

I don't have much of an opinion, it's just from https://w3c-ccg.github.io/vc-api-issuer-test-suite/#Issue Credential - Data Integrity


ISS-255 # stop the previous WireMock instance before overwriting it w…

…ith a new one

Solves #255

If we are merging PR #259 , we don't need this PR, Right?

Correct, just wanted to keep things super tidy :)


feat(topic): search keyword by splitting provided values by ,

as @lafriks comments https://github.com/go-gitea/gitea/pull/4505#issuecomment-415661745

In such cases it should search for repositories where both tags are present (and not or)

Moved this to 1.7 since we're in feature freeze.

Codecov Report

Merging #4939 into master will decrease coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master   #4939      +/-   ##
=========================================
- Coverage   37.41%   37.4%   -0.01%
=========================================
  Files         306     306
  Lines       45379   45381       +2
=========================================
- Hits        16978   16977       -1
- Misses      25947   25949       +2
- Partials     2454    2455       +1

Impacted Files
Coverage Δ

models/repo_list.go
62.2% <100%> (+0.44%)
:arrow_up:

modules/process/manager.go
76.81% <0%> (-4.35%)
:arrow_down:

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 e79e924...9dc2eb7. Read the comment docs.


Advanced Tab - User Migration

Users migration is disabled. Enabling it will expose the migration webservices but the connection need to be updated manually on the Auth0 dashboard.

Typo: needs to be
Question: How can I do that? Does it refer to "Import Users to Auth0"? The option is blocked when I try to activate it in Auth0.com

Good point, it should point to that doc, and the reason it has to be manual is exactly that, you need to create a new db connection, we want this to be explicit to avoid issues with existing users since they will not be able to access anymore.

Added the reference

Great!


Better error message

Codecov Report

Merging #7 (b884d50) into master (bd89fe5) will increase coverage by 0.93%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master       #7      +/-   ##
==========================================
+ Coverage   91.69%   92.62%   +0.93%
==========================================
  Files          15       15
  Lines         975      976       +1
  Branches      162      164       +2
==========================================
+ Hits          894      904      +10
+ Misses         67       59       -8
+ Partials       14       13       -1

Impacted Files
Coverage Δ

lazycon/__version__.py
100.00% <100.00%> (ø)

lazycon/parser.py
90.14% <100.00%> (+1.56%)
:arrow_up:

lazycon/semantics/analyzer.py
98.41% <100.00%> (+0.02%)
:arrow_up:

lazycon/semantics/locals.py
100.00% <100.00%> (ø)

lazycon/visitor.py
94.44% <100.00%> (+16.18%)
:arrow_up:

lazycon/main.py
95.20% <0.00%> (+2.40%)
:arrow_up:


Added Lit with TypeScript usage example

Description (required)
Added Lit with TypeScript usage example
When you want use TypeScript decorators in Lit component, need to enable experimentalDecorators in tsconfig.json
Related issues & labels (optional)

Closes #
Suggested label:

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

en
guides/integrations-guide/lit.mdx
Source changed, localizations will be marked as outdated.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Is it possible to run multiple test scenarios from the same file at once?

Hello, I wanted to see if I could create one file for all the test scenarios which will be run with Node.js.
I tried doing this by having multiple scenario modules defined in one test scenario file, and then in the node test file I have designated different directories for each scenario's results and included all the run statements in one function.
However when I run the node test file, it only produces a result for the first scenario, followed by an error in the console that states "target  is unknown to synthesizers". I have the node test file function set up like the example on this page.
I also tried splitting up the memlab run commands for each scenario in the node test file into separate asynchronous functions but then nothing runs successfully and I get an error of "unknown app: UNSET".
Is there a way to set up my tests so that I can have them all defined in one file and ran at once, with the results all going into separate directories? Thanks in advance

Could you provide a specific coding example illustrating how you define all test cases into a single file?

Sure - I kept all the scenarios pretty simple just for now until I get this working.
Scenario test file:
const scenario1 = {
  url: () => 'https://www.google.com/maps/@40.7381132,-73.9914544,17z?entry=ttu',
  action: async (page) => {
    await page.click('button[aria-label="Restaurants"]')
  },
  back: async (page) => {
    await page.click('button[aria-label="Clear search"]')
  },
}

const scenario2 = {
  url: () => 'https://www.google.com/maps/@40.7381132,-73.9914544,17z?entry=ttu',
  action: async (page) => {
    await page.click('button[aria-label="Hotels"]')
  },
  back: async (page) => {
    await page.click('button[aria-label="Clear search"]')
  },
}

const scenario3 = {
  url: () => 'https://www.google.com/maps/@40.7381132,-73.9914544,17z?entry=ttu',
  action: async (page) => {
    await page.click('button[aria-label="Things to do"]')
  },
  back: async (page) => {
    await page.click('button[aria-label="Clear search"]')
  },
}

module.exports = { scenario1, scenario2, scenario3 };

Node test driver file:
const { run } = require('@memlab/api');
const { scenario1, scenario2, scenario3 } = require('./test-scenario.js');
const fs = require('fs-extra');

// Running all tests in one function - produces result for the first scenario, then an error of "target is unknown to synthesizers" after the first retainer trace
(async function () {
	const workDir = './results';
	const workDir2 = './results2';
	const workDir3 = './results3';

	fs.mkdirsSync(workDir);
	fs.mkdirsSync(workDir2);
	fs.mkdirsSync(workDir3);

	const result = await run({scenario1, workDir});
	const result2 = await run ({scenario2, workDir2});
	const result3 = await run ({scenario3, workDir3});
})();

/*
// Separating each test into separate functions - produces error "unknown app: UNSET"
(async function test1() {
	const workDir = './results';
	fs.mkdirsSync(workDir);
	const result = await run({scenario1, workDir});
})();

(async function test2() {
	const workDir2 = './results2';
	fs.mkdirsSync(workDir2);
	const result = await run ({scenario2, workDir2});
})();

(async function test3() {
	const workDir3 = './results3';
	fs.mkdirsSync(workDir3);
	const result = await run ({scenario3, workDir3});
})();
*/

I can't reproduce the problem, having multiple test scenario in one file works on my machine.
There are bugs in your example files and maybe that is the root cause:
	const result = await run({scenario1, workDir});
	const result2 = await run ({scenario2, workDir2});
	const result3 = await run ({scenario3, workDir3});

It should be:
	const result = await run({scenario: scenario1, workDir});
	const result2 = await run ({scenario: scenario2, workDir: workDir2});
	const result3 = await run ({scenario: scenario3, workDir: workDir3});


Strange behaviour with undo commit.

when i undo commit. and click commit again it doesn't ask me anything and amends to the previous commit. the same behaviour occurs with minor changes. but when i do major changes it doesn't amend and rather asks me to create a new commit. how does this work.

When you undo a commit, the commit is undone and your working tree keeps the changes in the commit in the staging area. This is expected. There is no amend happening. Why do you say there is an amend?


Format with rustfmt

This fix build failure in #449 and #448
It seems old rustfmt did not properly format the module in the macro.

Thanks!  bors r+

bors r+


Annotation for DSR Mode

Annotation required to specify DSR mode for service.

#134  It is now available with mode= "dsr" annotation. The details can be found in kube-loxilb's README


legion_prof_rs: load archive when navigating to directory in browser

legion_prof archive should create an index.html with this in it:
<html>
<script>
window.onload = function() {
  var prof = location
  if(location.protocol !== 'https:') {
    prof = location.replace(`https:${location.href.substring(location.protocol.length)}`);
  }
  window.location.replace("https://legion.stanford.edu/prof-viewer/?url="+prof.href);
}
</script>
</html>

Then we can just load an archive when navigating to the directory on sapling.
See this as an example: http://sapling2.stanford.edu/~seshu/legion_prof/

Not sure if we should embed the html file directly in archive_data.rs as a string, but here is a patch:
diff --git a/src/archive_data.rs b/src/archive_data.rs
index da61fd7..a97d839 100644
--- a/src/archive_data.rs
+++ b/src/archive_data.rs
@@ -254,6 +254,19 @@ impl<T: DeferredDataSource> DataSourceArchiveWriter<T> {
             }
         });

+        std::fs::write(self.path.join("index.html"),
+                       "<html>
+<script>
+window.onload = function() {
+  var prof = location
+  if(location.protocol !== 'https:') {
+    prof = location.replace(`https:${location.href.substring(location.protocol.length)}`);
+  }
+  window.location.replace(\"https://legion.stanford.edu/prof-viewer/?url=\"+prof.href);
+}
+</script>
+</html>")?;
+
         Ok(())
     }
 }

I'm happy to take this as a PR. The file seems sort enough that for now I'm ok with just embedding the string like that.


Strata layers not generating in newest build of terraforged

Minecraft Version
For example: Minecraft 1.20.1
Forge Version
For example: Forge - MC 1.20.1 - 47.2.16
Description
Latest build of ReTerraforged seem's to have broken strata layer generation.

Due to a bug in the latest version of ReTerraForged version 0.0.6 The strata layer where different types of rock would be doesn't appear at all. It should be fixed in version 0.0.7 once released. If not address this issue to the developer.


Plumb through the testing library version into a function instead of a C++ macro.

This PR moves the consumption of the testing library version (via C++ macro SWT_TESTING_LIBRARY_VERSION) to a C++ function. It seems that defining it in CMake for C++ targets doesn't trigger for the Swift side when it imports symbols from C headers.
Will verify with a toolchain build.
Checklist:

[x] Code and documentation should follow the style of the Style Guide.
[x] If public symbols are renamed or modified, DocC references should be updated.

@swift-ci test

Verified this works in a toolchain build:

◇ Test run started.
↳ Testing Library Version: 6.1-dev<PHONE_NUMBER>3ecb2)
✔ Test run with 0 tests passed after 0.001 seconds.

Self-reviewing. @briancroom is aware of the change.


Mark our infra pods as critical

https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/
In order to avoid that some component is killing our infra pods, we should mark them as critical.
The task is really just to just add the correct annotations to the pod templates.

I will take a look on this one

/assign shiywang


how to update/change password from backend

hi how to update or change password of an user who has forgotten password from backend

Hi @saileshsp
Please use PATCH /auth/v2/users/{user_id} - https://my.optscale.com/auth/v2/swagger/spec.html#/users/patch_auth_v2_users__user_id_ with cluster secret authorization. Cluster secret can be found in etcd, look for /secret/cluster key.


[CWS] Fix test connect

What does this PR do?
This PR aims to fix the connect event tests
Motivation
Describe how you validated your changes

Possible Drawbacks / Trade-offs
Additional Notes

/merge


Kong ingress controller is applying ingress rules from other namespaces

Summary
Kong ingress controller is applying ingress rules from other namespaces. In my cluster I have 2 namespaces, each with a kong ingress controller. When I check the /routes endpoint, I see a route for all ingress rules in the cluster, regardless of namespace
Version
helm chart 0.9.8
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.2", GitCommit:"bb9ffb1654d4a729bb4cec18ff088eacc153c239", GitTreeState:"clean", BuildDate:"2018-08-07T23:17:28Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.11", GitCommit:"1bfeeb6f212135a22dc787b73e1980e5bccef13d", GitTreeState:"clean", BuildDate:"2018-09-28T21:35:22Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
running on AKS
Expected behaviour
Kong ingress controller should only generate routes for ingress rules in the same namespace
Steps To Reproduce

Deploy 2 ingress controllers in separate namespaces
Deploy an ingress rule to namespace A
Deploy an ingress rule to namespace B
Call /routes on namespace A ingress controller.
2 Routes will be returned, one for each ingress

Kong ingress controller should only generate routes for ingress rules in the same namespace

This is not the expected behavior.
Ingress controller will satisfy the Ingress from all namespaces by default.
You've two options:

Use the --watch-namespace CLI flag in the Ingress controller to limit it to a single namespace.
Use ingress.class annotation on your Ingress resources and your Kong CRDS, to filter the Ingress that a particular Ingress Controller should satisfy.


Optimize the class selector (Match.INCLUDES).

This method is perf sensitive (CPU and memory allocations)
Replace the split of the class attribute with a custom implementation
that do not allocate unneeded memory.
With this patch a simple test calling NodeSelector#select in a loop went
from 1.5Gb allocated to 6Mb (document used size was 800Kb)
GC times were reduced.
No real jmh benchmarks were done BUT it's faster in all my test.
Fixes #327

Just started reviewing :):rocket:

@igorspasic , any release planned soon ?
For info, the release notes page for 3.7 is empty , is it voluntary ?
Thanks for your very nice library.

Hey @pmouawad the lates is 3.7.1 but to time to update the site :(
I do plan, huh, just 3.8 is a little big step... doing my best, really!


Project-wide diagnostic messages in quickfix?

Sorry if this is answered in the docs somewhere but there are a lot of features and using LSPs at all is new to me!
Is it possible to load the quickfix list with diagnostics for all source files in the project, not just the current buffer?

This should be possible by using :help :caddexpr, for example, for all open buffers:
function! ConcatenateLocationLists()
    redir => loclist_contents
    windo echo getloclist(0)
    redir END
    caddexpr loclist_contents
endfunction

call ConcatenateLocationLists()

I'm not expert in LSP but isn't this something the server (or some servers) provide?

Neither am I. The information per window or filename is the same, so it seems a matter of taste if one prefers to bundle them or not. But maybe you mean that it lints all files of a certain file type in a directory? I thought of LSP as a protocol to rather apply to opened files than crawling directories

maybe you mean that it lints all files of a certain file type in a directory?

That's what I meant, all files the LSP understands to be source files within a project directory. But:
From https://github.com/dense-analysis/ale/issues/4613#issue-1906926633

Note in documentation that Language Server Protocol currently does not offer a way to get a list of all problems for an entire project.

So it looks like your concept of the LSP is right, mine wrong. If I find time I'll play around with your approach above, thanks for the chat @Konfekt

I'm still the out-of-date Syntastic due to the lack of this.
It has issues with newer Nvim.
Do you know a good alternative?

You also would like to join the contents of :help location-list into a single :help quickfixlist like
let s:all_locs = []
for bufnr in range(1, bufnr('$'))
    let s:locs = getloclist(bufnr)
    if !empty(s:locs)
        call map(s:locs, {idx, val -> extend(val, {'filename': bufname(bufnr)})})
        let s:all_locs += s:locs
    endif
endfor
call setqflist(s:all_locs)
copen

does?


[New Feature] Categories for apps

Please add categories for Apps as well. It is perhaps even more useful there, than for Bookmarks.
Thanks.

Possible duplicate of #7


Flutter background service

Am trying to run it in background service but it keeps give me error about missing plugin exception no implementation found for method listen on channel flutter_voice_processor_events.
I need to run it in background service, how to fix this issue?

duplicate of https://github.com/Picovoice/picovoice/issues/82
creating duplicate issues won't accelerate resolution and simply delays it by creating extra admin work.

I recreated the issue because i used porcupine flutter package and forgot to close it in the other one. Forgive me for my mistake but could you reopened again, i really need help on this issue.

This is my main page:

And speech_service.dart file has the initialize method for porcupineManager and all the logic that i need to fire get location and record sample of audio when the wake word detected.
Everything work fine in foreground but when i try to run it in background service it fails with the error above.

@FadiChaalab we've never claimed or attempted Porcupine Flutter on a background service. There is definitely some complications around running the cross-platform audio recorder outside the app. This is definitely a valid use-case that we'd like to support, but I can't promise we'll add this capability right away. We'll keep the issue open and hopefully someone can help you out in the meantime.

Would this be why I can't get the flutter example on iOS to work with wake word when the app is not in the foreground?

Hi
@kenarsa this issue was closed as completed, is there a background listener available for flutter, I don't seem to see anything?
Similar to @FadiChaalab commented I get MissingPluginException(No implementation found for method listen on channel flutter_voice_processor_error_events) if I run it in Flutter Background Service
Thank you in advance for any assistance.

@olivermoo that was my mistake. I closed the issue as not planned. We do have background recording for native Android and iOS but never claimed nor planned to add it to cross-platform mobile SDKs. If contributors what to add this based on our native SDKs we are very much open to PRs. Sorry about the confusion.

Has there been any development on this feature since?


Official release version - PyPi or Github?

Confirm this is a feature request for the Python library and not the underlying OpenAI API.

[X] This is a feature request for the Python library

Describe the feature or improvement you're requesting
I'm just wondering what the official release version is. I see on PyPi version 1.12.0 and here on Github version 1.13.2. Since I packaged it for Mageia, I chose to go for the version on PyPi because it felt "safer".
Thank you.
Additional context
N/A

Sorry about this – we had a few releases not go out to PyPI due to a bug recently. The next release will go out to PyPI as well.

The latest version has been released to PyPI: https://pypi.org/project/openai/1.13.3/


Port Request: 1.21

Hello! I hope I'm not being annoying with this, but are there plans for a port for 1.21? I'm thinking about upgrading to this version but this mod is so essential to me that it would hurt my soul to simply discard it

Yes! I do plan on porting this mod eventually. I've got quite a few bugs to fix though before that can happen, so it may be a while.


Remove use of new Date() causing test bugs

This is in a few places, and this updates them to use context.nowFn now, since these tests started failing today.

selfie


Read vendor directory from project's composer.json, if set.

If not set, default to "vendor".
This PR also includes a bugfix for finding the appropriate composer.json and composer.lock files.
This PR does not address an existing issue with files that are included in composer.json via the "repositories" mechanism with a type of "package" mechanism, e.g.:
        {
            "type": "package",
            "package": {
                "name": "ezyang/htmlpurifier",
                "version": "4.6.0",
                "dist": {
                    "url": "https://github.com/ezyang/HTMLPurifier/archive/v4.6.0.zip",
                    "type": "zip"
                }
            }
        }

These are not currently cached.  Those files are stored in the [vendor]/composer/[some hash]/[packageName]-[packageVersion] directory.  A future enhancement could cache these files as well.

There are a few places where vendor occurs, but I'm at a loss for a good strategy to deal with all of them all.  Some are embedded in interesting places and getting a reference to composerJson in there is not straightforward.  I'd like to centralize the logic if possible, but if you could give me a bit of architectural direction that would be quite helpful...

src/PhpDocument.php
231:        return strpos($path, '/vendor/') !== false;

src/Server/TextDocument.php
412:            if (preg_match('/\/vendor\/([^\/]+\/[^\/]+)\//', $def->symbolInformation->location->uri, $matches) && $this->composerLock !== null) {

src/Server/Workspace.php
125:                    preg_match('/\/vendor\/([^\/]+\/[^\/]+)\//', $def->symbolInformation->location->uri, $matches);

I think TextDocument will be straightforward but not PhpDocument.  Workspace might be doable simply, too.  Looking into it now.

The isVendored() method can be removed in favor of just checking from the outside on getUri(). The other places shouldn't be too hard to inject an instance of the composer.json file

Lotta commits in here, might want to squash and merge so it's cleaner (I usually rebase and squash for my own work)

Thanks!

Thank you!  Happy to collaborate with a responsive maintainer.


Check for .git directory, suppress destructive actions to shared folder

Check for .git directory in shared folder, suppress destructive actions on provision if it is a git repo. Most users will not notice any change, but users that put their own WordPress repo (git) in the shared folder will notice that it stays the same on provision.

Hi @hegemanjr
always looks useful! Thanks. :)

Ah, I didn't read your comments.
Can you send pull-request again with new branch.
Thanks 😊


Using Write + Seek types for output

This pull request enables any Write + Seek type to be used as the writer for OpenEXR output.

Okay, made the changes you suggested (I think... assuming I didn't misunderstand anything).  If you want to give it one more once-over, then we can merge and do the same thing for the input API.

Okay, I think I've got everything done now.  Can you look over what I've done with the error handling and see if it makes sense to you?
As I said in some other comments, ideally I'd like to find a way to transparently pass the rust error through the C++ code.  But for now I'm thinking this is good enough.

Yay!  Okay, I'm going to do the same thing for input now.
Thanks for your help!


New plugin loading

This PR prepares quasar to work with new installers. Note that when it is merged installers PR also has to be merged. It won't be possible to build valid installers with old installer scripts and this version of quasar, because plugin resolution behavior changes.
Backend-Module
This attribute was originally only added to fat jar, now it is added to thin jars as well. It was done in order to allow quasar to resolve plugin main classes from thin jars, that will replace fat jars.
Plugin loading
The previous behavior of --plugins/-P option was to find all fat jars in specified directory with Backend-Module attributes and load them.
Now this option behaves differently. It looks for files with .plugin extension. Those should be json files looking like this:
{
  "main_jar": "https/dl.bintray.com/slamdata-inc/maven-public/org/quasar-analytics/quasar-marklogic-internal_2.12/0.0.7/quasar-marklogic-internal_2.12-0.0.7.jar",
  "classpath": [
    "http/developer.marklogic.com/maven2/com/marklogic/marklogic-xcc/8.0.5/marklogic-xcc-8.0.5.jar",
    "https/repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/2.4.4/jackson-core-2.4.4.jar",
    "https/dl.bintray.com/slamdata-inc/maven-public/org/quasar-analytics/quasar-marklogic-internal_2.12/0.0.7/quasar-marklogic-internal_2.12-0.0.7.jar",
    "https/repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-annotations/2.4.0/jackson-annotations-2.4.0.jar",
    "https/repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-databind/2.4.4/jackson-databind-2.4.4.jar",
    "https/repo1.maven.org/maven2/com/slamdata/xml-names-core_2.12/0.0.1/xml-names-core_2.12-0.0.1.jar",
    "https/repo1.maven.org/maven2/eu/timepit/refined-scalaz_2.12/0.8.3/refined-scalaz_2.12-0.8.3.jar"
  ]
}

main_jar entry is for the main jar that contains the MANIFEST.MF file with Backend-Module attribute.
classpath is a list of paths representing the classpath. It includes the main jar, but excludes what is already on quasar's classpath.
All those paths are relative to the specified plugin directory.
For example we could run quasar with --plugins /tmp/cache/plugins. Using the above example of marklogic, ls /tmp/cache/plugins should return marklogic.plugin http https.

Haven't reviewed yet, but just a quick note…  I'm not too fussed about the fact that merging this a bit out of sequence will break installer construction.  We're already broken because the bintray/sonatype publication hasn't really ever worked in master due to the atomicity issue.


v1.0.7

Pull Request Test Coverage Report for Build 896490802

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

Totals

Change from base Build 849756706:
0.0%

Covered Lines:
0

Relevant Lines:
39

💛  - Coveralls


Attribution API fails on MeasurementSampleApp - Caller is not authorized

Hi,
We're trying to test the attribution API using:

Pixel4 emulator with google play - on developer preview 7
Pixel6a device with google play - with the latests beta (and updated google play services version)

On both cases, after following all the steps in the documentation, including running:
adb shell device_config put adservices mdd_measurement_manifest_file_url "{ENROLLMENT_URL}"
After pressing the register click/view event buttons ends without any action, and we don't get data fired into the server URL we configured.
Logcat shows the following error: com.google.android.adservices.api    E  Caller is not authorized.
We follow some instructions on closed issues that look similar, like: https://github.com/android/privacy-sandbox-samples/issues/23 without success
Anything we're missing?

We are also being blocked by the exact same issue on both developer preview and beta release. Wondering how could we further debug on this.
Appreciate for any guidance!

Hi @ozadi3 and @shen714,
Would you mind following these steps and then try calling the API again?

Make sure all necessary permissions are declared in the AndroidManifest as shown on lines 17, 18, and 19 here

Reset your allow list by running the commands

adb shell device_config delete adservices ppapi_app_allow_list

adb shell device_config put adservices ppapi_app_allow_list [your app package name]

Note: you will need to use the 'put' command for each app package name you are testing with.

Hi @shen714
The latest suggestions didn't work for us as well. We experience the same error as before

Hi @shen714 and @ozadi3, we have recently pushed a new update to the sample app. Would you mind trying again and making sure the URLs entered match the ones registered during enrollment? Thank you!!

Hi,
We're able to get the source and trigger events while using real device/emulator with the preview of Android UpsideDown Cake.
Just to verify - There is a time difference (~1hr) between calling register_source & register_trigger and the time the servers actually gets the POST requests - is it by design?

@ozadi3 that's great to hear! Yes, the timing is intentional, and will be shortened with the next release. You can also run this command to send the requests faster - adb shell cmd jobscheduler run -f com.google.android.adservices.api 15


Blog: Unikube’s frontend Sentry integration

https://docs.google.com/document/d/1qIvErzyM8G363gGESj-rsPbTb3G1t5wS-L0Z7OirKMQ/edit

This text looks more like a guide to me, do you think it should be in the blog section @Truthans ?


Remove duplicated tests for health endpoints

Description
Remove duplicated tests for health endpoints. There are basically the same tests at the top (also with metrics).
Type of change

[x] Refactor

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

Project coverage is 95.46%. Comparing base (5573278) to head (4d5f46d).
Report is 16 commits behind head on main.

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #1172   +/-   ##
=======================================
  Coverage   95.46%   95.46%
=======================================
  Files          56       56
  Lines        2380     2380
=======================================
  Hits         2272     2272
  Misses        108      108

/approve


remove .dll files and .settings directory

I'm unsure if the .settings directory should be removed, should it?
Possibly somebody should add the required .dlls to the README.

They should remain there until we have a proper setup. That is, when they aren't windows-only and compiling on multiple platforms is easier. Currently working on it - it's coming soon(TM)


Down-level lexical 'arguments' binding for arrow functions

Related compatibility test: arrow functions - lexical "arguments" binding

Currently we make this an error when compiling to ES5, however we recently added lexical argument capturing for ES6 async functions in #3078, so we may want to revisit this.

We decided to not bother with this unless someone shows up and asks for it.


Operate simultaneously as a matrix bot and external API

Currently, a single deployment of the faucet backend operates in one of two modes:

Mode
Description

EXTERNAL_ACCESS: false (default)
The backend expects requests to be coming from the (trusted) matrix bot. We trust matrix account registration to be the first line defense against spam.

EXTERNAL_ACCESS: true
The backend expects requests to be coming from external (untrusted) API calls. We add captcha as a first line defense against spam

I'm opening this issue to discuss the matter of changing the backend so that it could operate in both modes simultaneously.
Why it could be beneficial

Decrease the amount on deployments

It is probably safer to run the two different modes in separate deployments, in order to separate the risk of draining the faucet.
But if we want to add the API mode to every environment, that we would double the amount of deployments.
If we tolerate the risks (e.g. staging?), or add two separate treasuries in code, we could reduce the amount of new deployments needed.

Simplify testing

It would be easier to test a single instance in different ways, than to test two different instances.
Can relate to E2E tests, local development, manually testing staging.

We're not losing anything.

We would not lose the possibility to operate in these two modes separately.
No matter the code changes, you can always deploy the backend without exposing any external ports (so matrix bot only), or deploy the backend container without the bot container (so external API only).
Possible ways

Detect where the request is coming from

If we can detect automatically whether the request is coming from the sibling docker container or not, we can use it to deduct whether the request is coming from the bot or not.
(I spent some time to explore this direction. As you dig into it, there are more and more caveats and now I think this is NOT the right way).

Add a secret password/token

We could add a secret password/token shared between the backend and the bot.
Then, if an API requests has that password, the backend knows it's coming from the bot.
Seems simple to implement but would add operation complexity to manage the secret.

Leave it as it is

Also an option - we could not make any changes and leave it as it is if we're happy with current approach.

@paritytech/opstooling does anyone has any thoughts on this?

I like option 2 as it requires the less involment from a devops side.
Can we have the secret being set in an env variable on build and then simply set that same secret on the bot?

Can we have the secret being set in an env variable on build and then simply set that same secret on the bot?

I think so, that would be nice because it wouldn't need a runtime variable.

Can we have the secret being set in an env variable on build and then simply set that same secret on the bot?

I think so, that would be nice because it wouldn't need a runtime variable.

Yeah, I would say this could be the easiest way of handling secrets without increasing the complexity too much as it would be used for only one case.
Let's see what the rest of @paritytech/opstooling thinks

checking if it's a sibling docker container

this is mixing a business logic with a deployment environment (or not mixing, but we're making it dependent on env, which is temporary) ? doesn't look like a good practice imo 🤔
Thinking outloud...
if this is one server, which accepts "external" (web) and "internal" (matrix)...
lets say we have an api
single-server.com/drip
in one case (external==true) it accepts the username + address, otherwise (external==false) address+captcha token
but still we will need 2 different wallets for this right? as web version is managed by INK, while matrix - devops
so then the env would look like:
Server 1:
WEB_MNEMONIC=... (westend)
BOT_MNEMONIC=... (westend)
Server 2
WEB_MNEMONIC=... (rococo)
BOT_MNEMONIC=... (rococo),
etc...
but if we expose the /drip endpoint for bot, then anyone can POST a query there with "fake_username123" + "address" and if you generate tons of addresses, you can drain it pretty quickly.. so there should be some additional "auth" from the bot to server then, to make sure that it comes from the bot, and not from someone else. Looking up to whether it comes from the sibling docker container would not be a stable solution for this IMO.
not making a final conclusion yet, prob still worth discussing other ways of how can we simplify it?
one of the options I had in mind - if we have a one server, may be making a mapping of configs for all kind of networks
so it may support /drip?network=rococo&parachain_id=&token=123xyz, taking all needed configs of env.server.config.json from some map.. so there will be 2 servers, 1st for bot with map, and 2nd for server with map of networks. But still not sure about it

I made changes in https://github.com/paritytech/substrate-matrix-faucet/pull/219 to make the bot backend and endpoint backend run on two different ports.
It's currently implemented and all the tests pass.
But it cannot be merged, not without coordinating the change of environment variables.
@paritytech/opstooling Can you please take a look at that PR and review it?

@rzadp the env variable solution, where depends on server it would set either WEB or BOT mnemonic looks a bit ambiguous & harder to infer. if we indeed want to reduce deployments (i am still not sure why), i'd go with a config maps, so each network + web/bot mode would be configured fully & separately, instead of playing with env variables. But this also adds a complexity on maintaining this map config, as it should be stored in secret vault as a string, so there's increased level of a mistake of parsing json and support overall
if we really want to go this way, may be would be better to spit it a bit differently.. like for BOT - do we really need/want bot to call the rest API? (i mean like /api/bot) Can't BOT instance which is listening for events from matrix do the drip functionality within an event?
and then if we have a web api, that's a separate application, with its own config, like we have, and then it's only for external use..
but we have a one codebase, for both, then the drip core functoinality - couldit  be moved out into a lib? and be reused within bot and web api?
then the tests could be simplified and we could reduce deployments etc


Implement clock-skew flag to skew time in the VM to test cert rotation in the CI

It would be good to create the VM with skew time so that we can test the cert rotation as part of CI.  We can make this time-skew flag hidden also so that it is not visible to end users.
$ crc start --clock-skew <number of days>

If you want to change the time of the crc VM, it can also be achieved by changing its libvirt domain definition, without stopping chronyd or running any guest-side  commands.

while right for the firstset of tests, this has to be reproducible on other platforms. I would suggest an external command to interact with the VM, but not sure if this needs to be part of the crc binary

This is fixed by #1390


decoded encoded performance doesn't reconstruct the original

It seems like decoded encoded performance doesn't reconstruct the original. Example can be reproduced from the data in 4*22 dataset:
score = pt.load_musicxml('Chopin_op10_no3.musicxml')
performance, alignment = pt.load_match('Chopin_op10_no3_p01.match')

Comparing the note_array of original performance part and generated performance part demonstrates large difference. It seems that the silence in the beginning is trimmed, and duration is unchanged, but pitch and velocity are much different from the original.
parameters, snote_ids = pt.musicanalysis.encode_performance(score.parts[0], performance.performedparts[0], alignment)
>>> dpt = pt.musicanalysis.decode_performance(score.parts[0], parameters, snote_ids)
>>> dpt.note_array()[:10]
array([(0.        , 0.8775    ,    0,  842, 59, 44, 0, 1, 'n1'),
       (0.71000004, 2.4375    ,  682, 2340, 40, 22, 0, 1, 'n4'),
       (0.78375006, 2.36375   ,  752, 2270, 56, 26, 0, 1, 'n3'),
       (0.7112503 , 2.43625   ,  683, 2339, 64, 54, 0, 1, 'n2'),
       (1.44      , 1.7075    , 1382, 1640, 47, 20, 0, 1, 'n6'),
       (1.4537501 , 1.6937501 , 1396, 1626, 59, 37, 0, 1, 'n5'),
       (2.02      , 1.1275    , 1939, 1083, 56, 32, 0, 1, 'n8'),
       (1.98      , 1.1675    , 1901, 1121, 63, 52, 0, 1, 'n7'),
       (2.5262504 , 0.62125003, 2425,  597, 47, 26, 0, 1, 'n11'),
       (2.5100002 , 0.6375    , 2410,  612, 59, 41, 0, 1, 'n10')],
      dtype=[('onset_sec', '<f4'), ('duration_sec', '<f4'), ('onset_tick', '<i4'), ('duration_tick', '<i4'), ('pitch', '<i4'), ('velocity', '<i4'), ('track', '<i4'), ('channel', '<i4'), ('id', '<U256')])
>>> performance.note_array()[:10]
array([(4.9925 , 0.8775 , 39940,  2200, 47, 44, 1, 0, 'n0'),
       (5.7025 , 2.4375 , 45620, 14770, 28, 22, 1, 0, 'n1'),
       (5.70375, 2.43625, 45630,  9650, 52, 54, 1, 0, 'n2'),
       (5.77625, 2.36375, 46210,  5620, 44, 26, 1, 0, 'n3'),
       (6.4325 , 1.7075 , 51460,  4320, 35, 20, 1, 0, 'n4'),
       (6.44625, 1.69375, 51570,  5000, 47, 37, 1, 0, 'n5'),
       (6.9725 , 1.1675 , 55780,  4430, 51, 52, 1, 0, 'n6'),
       (7.0125 , 1.1275 , 56100,  2480, 44, 32, 1, 0, 'n7'),
       (7.47625, 0.66375, 59810,  5090, 52, 59, 1, 0, 'n8'),
       (7.5025 , 0.6375 , 60020,  4500, 47, 41, 1, 0, 'n9')],
      dtype=[('onset_sec', '<f4'), ('duration_sec', '<f4'), ('onset_tick', '<i4'), ('duration_tick', '<i4'), ('pitch', '<i4'), ('velocity', '<i4'), ('track', '<i4'), ('channel', '<i4'), ('id', '<U256')])

What is the expected behavior of decode encoded performance?

After some inspection it seems like the pitch differences are exactly one octave: score notes are one octave higher than the performed note, starting from the match file (E2 is matched with performed note 28. But E2=40 in standard conversion). I think this is created by different MIDI numbering standard (or the performance is just one octave down??).
Good news is that this is the only example so far.  But anyways we need to think about how this case work (reproduce the score pitch or performed pitch?), and also test for checking pitch.

so it's an old version of vienna 4*22...


AQARA switch  WXKG03LM 2016 no events

There is a problem with the AQARA WXKG03LM 2016 switch that is identified as lumi.sensor_86sw1. He registers without problems and uses the Quirk zhaquirks.xiaomi.aqara.remote_b186acn01.
But when I press it I can't get him to detect anything. I have observed that this interrupt uses cluster 6 OnOff to notify that it has been pressed. And the following messages appear:
[zigpy_deconz.uart] Frame received: 0x17a10031002a00220200000104a7823dca8301008d150001040106000b00182f0a000010010000100000afefa3000102c3
[zigpy_deconz.api] APS data indication response: [42, 34, , 1, , b, 260, 6, 1, 260, 6, 6 x18 / \ n \ x00 \ x00 \ x10 \ x01 \ x00 \ x00 \ x10 \ x00 ', 0, 175, 239, 163, 0, 1, 2, -61]
[zigpy.device] Ignoring message (b'182f0a0000100100001000 ') on cluster 6: unknown endpoint or cluster id:' No cluster ID 0x0006 on (00: 15: 8d: 00: 01: 83: ca: 3d, 1) '
[zigpy_deconz.api] 'aps_data_indication' response from , ep: 1, profile: 0x0104, cluster_id: 0x0006, data: b'182f0a0000100100001000
I tried to add the cluster 6 OnOff to the Quirk but I have not succeeded.

Hi! I seem to have the same problem, no events under zha_event.

using the Sonoff Zigbee 3.0 USB Dongle Plus V2 I can pair my 2 WXKG03LM devices but when I press the button there is no zha_event


Budget logic analyzer

Hi Peter,
First of all, I would like to thank you for the great project. Since the price range is enormous (10-1000 €) I wanted to ask for a recommendation for a useful (low) budget logic analyzer for monitoring ESP32 applications.
Many thanks in advance!
Tim

About a year ago I bought a Saleae clone for under 10€. This works fine, but only with old Saleae firmware. Its big failure is that it can't capture pr-trigger data, so I replaced it with an 8 channel Saleae. This is brilliant, but expensive. I haven't tried any others, but I do recommend getting one that can record pre-trigger data. This is crucial as you usually need to know what was going on prior to an event like CPU hogging, so that you can figure out the cause. One that can decode protocols such as UART data, I2C, SPI and suchlike is very useful (Saleae can do all of that). Jim Mussared (@jimmo) has a DSLogic: these are cheaper than Saleae and might be worth investigating.
A proper LA is definitely best, but for the one purpose of monitoring MicroPython code there is also my analyser back-end. However I get the feeling that most people with a need for monitoring are already equipped with a LA. Unless there is a definite interest I'll probably abandon this.


pai-management refactor

Coverage increased (+0.8%) to 49.945% when pulling cab98e47c3d688692ab4a206052ed4844ac71127 on yuye/management-refactor into fdd08fbd27743026918d397ab765dd6b5b38d5d2 on master.

Coverage increased (+0.8%) to 49.945% when pulling cab98e47c3d688692ab4a206052ed4844ac71127 on yuye/management-refactor into fdd08fbd27743026918d397ab765dd6b5b38d5d2 on master.

Coverage increased (+0.8%) to 49.945% when pulling cab98e47c3d688692ab4a206052ed4844ac71127 on yuye/management-refactor into fdd08fbd27743026918d397ab765dd6b5b38d5d2 on master.

Coverage increased (+0.8%) to 49.945% when pulling cab98e47c3d688692ab4a206052ed4844ac71127 on yuye/management-refactor into fdd08fbd27743026918d397ab765dd6b5b38d5d2 on master.


Add missing audio fields

Closes #22

Nice, thanks! The PR looks good so far.
The only thing you could add are doc comments for the getters. The (semi-generated) ones use the field comment from raylib.h, like https://github.com/raysan5/raylib/blob/master/src/raylib.h#L421 https://github.com/tjammer/raylib-ocaml/blob/master/src/raylib/raylib.mli#L1403

Perfect :) Again, many thanks for contributing this

Glad to help!


React step 3

Closes #
{{short description}}
Changelog
New

{{new thing}}

Changed

{{change thing}}

Removed

{{removed thing}}

cancel


feat(api): allow using wildcards with custom colors

Fixes #537

Heads up, release page https://github.com/prymitive/karma/releases/tag/v0.30 shows the example using "regex" instead of "value_re".

Fixed, thanks


using packs is broken in master

While looking at #743 I tried using master, however when I try to launch with a pack specified in the command line an exception is thrown. This does not happen if I checkout the release/0.24 branch.
pyOCD$ python pyocd.py gdb --target stm32g071rbtx --pack Keil.STM32G0xx_DFP.1.2.0.pack
0000368:INFO:board:Target type is stm32g071rbtx
0000443:CRITICAL:__main__:uncaught exception: join() argument must be str or bytes, not 'PackFlashAlgo'
Traceback (most recent call last):
  File "/home/kieran/software/pyOCD/pyocd/__main__.py", line 360, in run
    self._COMMANDS[self._args.cmd](self)
  File "/home/kieran/software/pyOCD/pyocd/__main__.py", line 622, in do_gdbserver
    with session:
  File "/home/kieran/software/pyOCD/pyocd/core/session.py", line 299, in __enter__
    self.open()
  File "/home/kieran/software/pyOCD/pyocd/core/session.py", line 415, in open
    self._board.init()
  File "/home/kieran/software/pyOCD/pyocd/board/board.py", line 83, in init
    self.target.init()
  File "/home/kieran/software/pyOCD/pyocd/core/coresight_target.py", line 163, in init
    seq.invoke()
  File "/home/kieran/software/pyOCD/pyocd/utility/sequencer.py", line 208, in invoke
    resultSequence = call()
  File "/home/kieran/software/pyOCD/pyocd/core/coresight_target.py", line 230, in create_flash
    flmPath = self.session.find_user_file(None, [region.flm])
  File "/home/kieran/software/pyOCD/pyocd/core/session.py", line 210, in find_user_file
    thisPath = os.path.join(self.project_dir, filename)
  File "/usr/lib/python3.6/posixpath.py", line 94, in join
    genericpath._check_arg_types('join', a, *p)
  File "/usr/lib/python3.6/genericpath.py", line 149, in _check_arg_types
    (funcname, s.__class__.__name__)) from None
TypeError: join() argument must be str or bytes, not 'PackFlashAlgo'

Thanks for the report, will look at this one quickly.


networking.wlanInterfaces..mac sets wrong device

I've been playing with setting up an AP on NixOS and noticed you can conveniently use networking.wlanInterfaces to create virtual/sub-interfaces on a wireless NIC to handle multiple SSIDs and/or use a NIC in dual-mode client+AP (side note: this discourse discussion has some good examples).
When using a config like below that attempts to set the sub-interfaces' MAC addresses, I was getting really inconsistent MAC's:
  # Original MAC like "04:11:22:33:44:a3";
  networking.wlanInterfaces = {
    wap0v0 = { device = "wlp5s0"; mac = "06:11:22:33:44:a0"; };
    wap0v20 = { device = "wlp5s0"; mac = "06:11:22:33:44:a1"; };
    wap0v21 = { device = "wlp5s0"; mac = "06:11:22:33:44:a2"; };
  };

After switching to the config and running ip a, then I'd see one of the lower three sub-interfaces' MAC's assigned to the main device (i.e. wlp5s0), and the sub-interfaces wouldn't have the desired MAC. From looking at the source for the module in nixos/modules/tasks/network-interfaces.nix it seems like this and surrounding lines in newInterfaceScript are adjusting the main interface, not the sub-interface being created:
${optionalString (new.mac != null) "${pkgs.iproute2}/bin/ip link set dev ${device} address ${new.mac}"}

I forked the repo and have a test fix working here. It seems like this corner of network-interfaces.nix hasn't been touched in a long time, so I'm not sure if the existing behavior is a bug or intended (FWIW, the four lines in question seem like a copy/paste from curInterfaceScript which seems intended operate on the main interface).

I'm running into this issue again so will create a PR from the forked repo.


Unable to start go-langserver with Oni 0.2.18

Just upgraded to Oni 0.2.18 and now I'm no longer able to get go-langserver started.
It was fine with the previous release.

Strange - I wonder if there is a change in the $PATH behavior due to #934?
Would it be possible to check the following?

In Oni, run :term and then echo $PATH
In a separate bash shell, outside of Oni, run which go-langserver

My guess is that Oni is missing some path that is needed to find go-langserver. In the worst case, we can add it to environment.additionalPaths as a workaround. Sorry this regressed for you!

Inside of Oni:
bash-3.2$ echo $PATH
/Users/josemarluedke/.nodenv/shims:/Users/josemarluedke/.rvm/gems/ruby-2.4.2/bin:/Users/josemarluedke/.rvm/gems/ruby-2.4.2@global/bin:/Users/josem
arluedke/.rvm/rubies/ruby-2.4.2/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/josemarluedke/.rvm/bin:/Users/josemarluedke/.rvm/bin:/User
s/josemarluedke/code/go/bin :/usr/bin:/usr/local/bin::/Users/josemarluedke/.fzf/bin:/Users/josemarluedke/.rvm/bin
bash-3.2$

bash-3.2$ which go-langserver
bash-3.2$

Outside of Oni:
$ echo $PATH
/Users/josemarluedke/.nodenv/shims:/Users/josemarluedke/.rvm/gems/ruby-2.4.2/bin:/Users/josemarluedke/.rvm/gems/ruby-2.4.2@global/bin:/Users/josemarluedke/.rvm/rubies/ruby-2.4.2/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/josemarluedke/.rvm/bin:/Users/josemarluedke/.rvm/bin:/Users/josemarluedke/code/go/bin

$ which go-langserver
/Users/josemarluedke/code/go/bin/go-langserve

You are probably right, that PR seems to be the cause of it.

@bryphe @josemarluedke  it seems that with that PR by pulling in the PATH variable and concatenating it with the users additional paths there is a trailing space added as well as a duplicate colon. luedke/code/go/bin :/usr/bin:/usr/local/bin::/ here is the section, I believe this makes the variable invalid so the lang server isn't picked up. I think a possible solution would be to remove the additional variables (which might not be ideal although the variables should ideally be in a users path) another solution is to fix the concatenation on oni end but this then leaves the door open to an invalid oni path due to potential mix up in the config option or at least causes duplicates, which doesn't invalidate the path but can cause very minimal slowdown on executing commands

Done a bit of debugging and it seems the process which generates the PATH variable includes a \n and an unnecessary extra separator. which I believe is what is causing the path to be invalid

Thanks for the investigation and fix, @Akin909 ! Looks like PR #1066 takes care of this 👍 - I'll close this out.


Applying CartoCSS after a buffer analysis breaks the map

Create a map with point data
Add an AOI analysis with buffers
Apply the same cartocss generated that has been pre-generated
Look at the analysis tab, there should be an error on the last one

It works pretty good right now, closing! :)


feat(module-index): Import workspace endpoint on module index

We're merging the modules index changes first since they're additive, and we can test the export/import loop more thoroughly - wiping the local database also wipes the local module index

bors merge


Make rate constants use the State to calculate their values

          Actually, this can be done in a future task. I'll make a ticket for it.

Originally posted by @K20shores in https://github.com/NCAR/micm/pull/67#discussion_r1202502134

Closed by #68


fix detection of generic ARMv8 CPUs

If I can see right on our systems, then all ARMv8 CPUs have "8" as value for "CPU architecture" in /proc/cpuinfo. This change unblocks building OpenBLAS on APM Mustang system (X-Gene CPU).

In theory we could remove the AArch64 string from the check, but rather don't break anything.

My android tv has number 8 there, as minimum this improves detection.

Bit of googling shows that the transition from "AArch64" to "8" in the arm64 cpuinfo output happened in late 2014/early 2015 so probably too recent to simply drop the old string already. Looks good to me. (Interestingly xianyi comitted the equivalent to cpuid_arm.c a year ago (for armv8 32bit mode) but apparently did not check cpuid_arm64.c , and conversely cpuid_arm.c does not appeat to know how to handle a plain "7" (or "6") yet)

Plain 7 exists:
https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=146742

Yep, that's where I got the idea from (and "6" exists as well in the new cpuinfo scheme)


gtest won't allow to check for code which should not compile

gtest won't allow to check for code which should not compile. Maybe we can try another framework which allows a semantic like "THIS_SHOULD_NOT_COMPILE(... code...)" (not sure if possible).
Usage example: Check that for C++23 std::optional the next code won't compile:
    std::optional<int> opt{};
    for (auto && x : opt) {}

@ldionne , you mentioned at C++Now the idea of using the LLVM unit test framework in Beman. Is this something you would still recommend? Does it support this use case? Where can we learn more about it?

@camio Yes, Lit has support for something called clang-verify, which allows checking that code fails with a specific diagnostic. In general, note that you don't want to just check that code fails to compile, since that's too brittle (e.g. a typo would render the test useless since it would indeed fail, but not for the reason you expect). You really want to say "this fails for THAT reason" instead.
Clang-verify supports various directives like expected-error, expected-warning, etc. The full set of directives supported and how to use them is documented in the Clang documentation.
Here's an example we have in libc++ where we check that a specific instantiation triggers a static assertion with a message (from here):
#include <semaphore>

void f() {
  std::counting_semaphore<-1> s(2); // expected-error-re@*:* {{static assertion failed{{.*}}The least maximum value must be a positive number}}
  (void)s;
}

You can also specify the file / line where the diagnostic should happen, how many times it should happen, etc. It's pretty flexible -- it originated as a way to test Clang itself and we're merely making use of the same functionality in libc++.

I consider it essential to be able to test for specific diagnostics for std::lib code. A static assert that clearly says the template argument must be copy constructible is an important QoI property.


Updated Contributers.md file

What type of PR is this? (check all applicable)

[ ] 🚀 Added Name
[ ] ✨ Feature
[ ] 🌟 stared the repo
[ ] 🐛 Grammatical Error
[ ] 📝 Documentation Update
[ ] 🚩 Other

Description
Add Link of GitHub Profile

merge pull request


Deprecate and remove support for ~/.elvish

0.19.0: Print a warning if ~/.elvish exists as a directory.
0.20.0: Ignore ~/.elvish.

See also #832, #1385, and #1420. As I type this there is at least one widely used module (github.com/href/elvish-gitstatus) that has a hardcoded ~/.elvish path:
var appdir = ~/.elvish/package-data/gitstatus

Thus generating a deprecation warning every time a new Elvish instance is started.

OK, it was probably a bad idea to always warn about the existence of ~/.elvish; I'll make the warning only appear when Elvish itself is actually using a file from ~/.elvish.


Preserve compatibility in base_mail_client

Summary of Changes
The current backwards incompatibility in the notifications project is simply due to the change in the name of a parameter on base_mail_client.send_email.  The parameter optional_data, in hindsight would be better called options. However because the change creates a backwards incompatibility -- i.e. this change will break everyone's current implementations of the base_mail_client -- I propose we keep the parameter as optional_data and update it in the future when we have more reason to create a new major release.
This PR reverts use of options back to optional_data, and the notifications project can become a new minor release at 1.1.0.
Tests
Reverted use of options back to optional_data.
Documentation
N/A
CheckList
Make sure you have checked all steps below to ensure a timely review.

[x] PR title addresses the issue accurately and concisely. Example: "Updates the version of Flask to v1.0.2"

In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

[x] PR includes a summary of changes, including screenshots of any UI changes.
[x] PR adds unit tests, updates existing unit tests, OR documents why no test additions or modifications are needed.
[x] In case of new functionality, my PR adds documentation that describes how to use it.

All the public python functions and the classes in the PR contain docstrings that explain what it does

[x] PR passes all tests documented in the developer guide

Codecov Report

Merging #290 into amundsen-notifications will decrease coverage by 1.3%.
The diff coverage is 100%.

@@                    Coverage Diff                     @@
##           amundsen-notifications     #290      +/-   ##
==========================================================
- Coverage                   72.39%   71.08%   -1.31%
==========================================================
  Files                         142      140       -2
  Lines                        3756     3538     -218
  Branches                      479      425      -54
==========================================================
- Hits                         2719     2515     -204
+ Misses                       1003      989      -14
  Partials                       34       34

Impacted Files
Coverage Δ

...undsen_application/api/utils/notification_utils.py
100% <ø> (ø)
:arrow_up:

amundsen_application/base/base_mail_client.py
100% <ø> (ø)
:arrow_up:

amundsen_application/api/mail/v0.py
96.55% <100%> (ø)
:arrow_up:

...undsen_application/static/js/ducks/search/sagas.ts
80.76% <0%> (-14.58%)
:arrow_down:

...n/static/js/components/common/Breadcrumb/index.tsx
94.11% <0%> (-2.66%)
:arrow_down:

...lication/static/js/components/SearchPage/index.tsx
99.2% <0%> (-0.8%)
:arrow_down:

amundsen_application/static/js/ducks/rootSaga.ts
0% <0%> (ø)
:arrow_up:

...dsen_application/static/js/ducks/search/reducer.ts
100% <0%> (ø)
:arrow_up:

...undsen_application/static/js/ducks/search/types.ts
100% <0%> (ø)
:arrow_up:

...tatic/js/components/SearchPage/SearchBar/index.tsx
100% <0%> (ø)
:arrow_up:

... and 4 more

Continue to review full report at Codecov.

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


Rpc secrets bugfix

Reverting changes to signature of NewRPCMonitor

Codecov Report

Merging #177 into master will decrease coverage by -0.03%.
The diff coverage is 53.33%.

@@           Coverage Diff            @@
##           master   #177      +/-   ##
========================================
- Coverage   52.02%    52%   -0.03%
========================================
  Files          34     34
  Lines        4219   4217       -2
========================================
- Hits         2195   2193       -2
  Misses       1872   1872
  Partials      152    152

Impacted Files
Coverage Δ

processmon/processmon.go
60.5% <ø> (ø)
:white_check_mark:

monitor/linuxmonitor/cgnetcls/cgnetcls.go
4.72% <0%> (ø)
:white_check_mark:

cmd/remoteenforcer/remoteenforcer_linux.go
0% <0%> (ø)
:white_check_mark:

monitor/rpcmonitor/rpc.go
82.3% <66.66%> (-0.27%)
:x:

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 61cf304...6c54ce7. Read the comment docs.


feat(cat-voices): registration confirm exit dialog

Description
This PR adds confirmation VoicesQuestionDialog before closing RegistrationDialog when called via Navigator.of(context).maybePop(). Navigator.of(context).pop() will close dialog without question.
Screenshots

Related Pull Requests
Part of #815
Please confirm the following checks

[x] My code follows the style guidelines of this project
[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
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream module

@digitalheartxs have a look pls


exclamation mark (!)  in commit message instead BREAKING CHANGE missbehavior

Exclamation mark causing wired behavior
Our configuration
this is our step in pipeline:
        steps:
            -   uses: actions/checkout@v2
            -   name: Generate changelog and tag (without writing to file nor committing)
                id: changelog
                uses: TriPSs/conventional-changelog-action@v3
                with:
                    github-token: ${{ secrets.GITHUB_TOKEN }}
                    output-file: 'false'
                    skip-commit: 'true'
                    skip-on-empty: 'false'

            -   name: Create Release
                uses: actions/create-release@v1
                env:
                    GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
                with:
                    tag_name: ${{ steps.changelog.outputs.tag }}
                    release_name: ${{ steps.changelog.outputs.tag }}
                    body: ${{ steps.changelog.outputs.clean_changelog }}

our commit message is containing an exclamation mark ! and no BREAKING CHANGE in footer
    feat(attribute)!: add attribute-key for attribute references

    task #VILO-517

Current Behavior
the action is not crating the change log (it is empty) and the next tag contains is a patch not a major bump
Try to dig into the problem
we tried to add the BREAKING CHANGE into the footer:
    feat(attribute)!: add attribute-key for attribute references

    task #VILO-517
    BREAKING CHANGE: mandatory field added

this ends up with an correct bump to major version and we have a changelog, but the format looks like this:

Features

attribute: add attribute-key for attribute references (ca21dcc), closes #VILO-517

feat!: remove entity property fk prefixes (3463fc5), closes #VILO-493

BREAKING CHANGES

attribute: mandatory field added

as you can see the feat!: remove entity property fk prefixes (3463fc5), closes #VILO-493 contains the feat!: part
Expectation
the conventional commits doc is giving this rule:

If included in the type/scope prefix, breaking changes MUST be indicated by a ! immediately before the :. If ! is used, BREAKING  CHANGE: MAY be omitted from the footer section, and the commit description SHALL be used to describe the breaking change.

should  be ok as commit message
    feat(attribute)!: add attribute-key for attribute references

    task VILO-517

I think you should then create the ticket at conventional commit repo since we just execute their code.

there is already an issue created for that on conventional commit repo: https://github.com/conventional-changelog/conventional-changelog/issues/648

Given that https://github.com/conventional-changelog/conventional-changelog/issues/648 is still open, you can also change the preset of this GitHub action from angular into conventionalcommits and the exclamation mark will work
- uses: TriPSs/conventional-changelog-action@v3
  with:
    preset: "conventionalcommits"


replaced function pointer with function object

I'm working on a sensor network projekt, using your excellent Homie framework. I have different sensors (light, temperature), and some actors (led, relay). I modularized my code, so I have a class for every kind of device. And I'm unable to subscribe my HomieNodes to topics when I'm inside of a method.
The problem is, that HomieNode.subscribe() only takes a function pointer as a second parameter, which I'm unable to provide. I'd rather give a function object.
With this change I'm able to subscribe my method ledOnHandler() in one of these two ways:
ledNode.subscribe("on", [this](String value) { return ledOnHandler(value); });
ledNode.subscribe("on", std::bind(&DeviceLed::ledOnHandler, this, std::placeholders::_1));

I successfully tested that the old way of doing this still works:
ledNode.subscribe("on", ledOnHandler);

So I don't think that this change breaks anything.
To be honest, I didn't make this change myself. I had a friend helping me, who is far more used to write code in C++. To me, this looks even stranger than usual... ;-)
I'd be happy to learn that there is another way to register, so that this change is obsolete. Please tell me if you know something. Thanks in advance!

I knew this would be requested. Thanks for the PR. :)


Newlayout

There is a suite of new functionality with this change.  The repo has been modified to have a layout that can have sub-projects.  This is to allow for the new corediff tool that has knowledge of CoreCLR repo layout.
Also added is a cross-platform installer that will copy published utilities into stand alone locations that may be added to the PATH for use on the command line.

@BruceForstall I created this PR as an initial look at my direction.  I've added some more tooling that addresses some pain points (not an answer for all pain points).  Feed back would be welcome.

Looking good. I'll try it out when you push it to master. btw, the markdown format of your README.md files isn't quite right. Try using VS Code (e.g.) to see the preview (not raw) view.


Dropdown opens and re-closes with one click in Firefox when emulating mobile device

Prerequisites

[X] I have searched for duplicate or closed issues
[X] I have validated any HTML to avoid common problems
[X] I have read the contributing guidelines

Describe the issue
When clicking on a dropdown menu in quick succession, clicks after the first seem to trigger both a show and hide event, so the menu ends up in the same state (either shown or hidden) as when I clicked. I've provided a minimal CodePen example below and included a GIF of the behavior exhibiting.
This happens in Firefox when emulating a mobile device. I used Galaxy S20 Android 11. It does not occur when using Firefox at a normal resolution with no mobile emulation enabled. It does not occur in Chrome with or without emulation.
In this GIF, I click a few times slowly to demonstrate the menu opening and closing as expected. I then click somewhat quickly, and the menu frequently opens and re-closes or closes and re-opens in response to a single click.

Reduced test cases
Minimal reproduction example. A menu with a single dropdown element.
https://codepen.io/ryanwawr/pen/gOBOYWd?editors=1111
What operating system(s) are you seeing the problem on?
Windows
What browser(s) are you seeing the problem on?
Firefox
What version of Bootstrap are you using?
5.2.3 in CodePen. Also exhibits in a project I'm developing that uses 5.1.0.

Hello, @ryanwawr
When simulating a mobile device, I think that Firefox has a recognized problem with this I already had this issue. to avoid it I suggest including the "data-toggle" property and setting it to "dropdown" on the dropdown button element. Adding the
"data-flip" property and setting it to "false" will also stop the menu from flipping to the button's other side. The following CSS rule may be added to the dropdown menu element as an alternative remedy:
.dropdown-menu {   touch-action: pan-y; }
This will make menu touch scrolling possible, which could stop the problem from happening. To determine if the problem has been fixed, you may also try upgrading Firefox or Bootstrap to their most recent versions. sometimes the browser and Bootstrap's latest versions can fix this error.

@mootezaloui I updated the CodePen with your recommended fixes, (other than updating Bootstrap, as it doesn't appear that 5.3 is out of alpha yet), and it didn't seem to resolve the issue. I'm not sure why setting data-flip or touch-action would resolve anything, as the button isn't flipping to start with, and I'm not doing anything other than clicking a few times to reproduce the issue.

@ryanwawr One thing that might be worth trying is to add the "data-boundary" property to the dropdown button element and set it to "viewport". This will constrain the dropdown menu to the bounds of the viewport, which could help prevent it from getting stuck in an open or closed state.
If that doesn't work, you could also try using a different approach to handling dropdown menus, such as using a custom JavaScript implementation instead of relying on Bootstrap's built-in functionality.

<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton">
 Dropdown Button
</button>

Option 1
Option 2
Option 3


Fix false positive for Style/GlobalStdStream for namespaced constants

I also added a test for redundant constant base since that currently works and I almost accidentally broke that.

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

Thanks!


Defaults not showing in help for fs.SizeSuffix

Eg
$ rclone-v1.33 -h | grep chunk-size
      --b2-chunk-size int               Upload chunk size. Must fit in memory.
      --drive-chunk-size int            Upload chunk size. Must a power of 2 >= 256k.
      --dropbox-chunk-size int          Upload chunk size. Max 150M.
      --onedrive-chunk-size int         Above this size files will be chunked - must be multiple of 320k.
      --swift-chunk-size int            Above this size files will be chunked into a _segments container.

$ rclone-v1.30 -h 2>&1| grep chunk-size
      --b2-chunk-size value            Upload chunk size. Must fit in memory. (default 96M)
      --drive-chunk-size value         Upload chunk size. Must a power of 2 >= 256k. (default 8M)
      --dropbox-chunk-size value       Upload chunk size. Max 150M. (default 128M)
      --onedrive-chunk-size value      Above this size files will be chunked - must be multiple of 320k. (default 10M)
      --swift-chunk-size value         Above this size files will be chunked into a _segments container. (default 5G)

A pflag regression or a change to do with cobra refactor?

not a change do with cobra refactor - checked out and compiled v1.30 with current pflag with same result

Bisected the change and made an issue for spf13/pflag#91

This is fixed now in pflag :-)


Component metadata

I have tried searching around for quite a bit, but have not been able to find anything about this. Is it possible to download the component metadata? I need to see how long the participant stays within each component. I see that the data is available on the results page, but it is not downloadable. I know how to collect this data myself, but it just seems like extra work since jatos already has that information.

In both, the study's results and the component's results, you can export metadata. It's not often used, but each component has a 'Result' button too and there one can export the component's metadata. Does this help already?

Yes, kind of. I just wish there was a way to export all data, with the associated metadata, in one click. I will write my own scripts to aggregate the data for my project. If I have any time left over I might have a look at the source code.

Yes, I agree, the export of metadata and result data is not ideal yet. The metadata export were added later and that's why it appears a bit artificial.

See https://github.com/JATOS/JATOS/projects/1#card-41852591


net.connman.Error.InvalidArguments on connect to protected wifi

Thanks for contributing this awesome node module! I have been playing around with it and would love to use it in a project. Though there are some bumps in the road, I hope you might be able to bring about a solution.
Here is the problem. When connecting to a previously unknown wireless network protected with a passphrase, the call to wifi.js:connect() results in this error: net.connman.Error.InvalidArguments.
Connecting to an open network, or a network which has been connected to before (through the connman cli) works fine. We have tested this.
I've tried tracking down the error in the connman source code and it looks like it is thrown here, although I'm not 100% sure of this. Checking the service type in the node.js module yields 'wifi', so this is all a bit confusing.
Very much looking forward to your response,
Best regards from the Netherlands

I think this isn't an issue anymore?


Use tox

This PR makes it simple for contributors to run tests on all supported versions without making a PR on GitHub, and make TravisCI use the same list.
I decided it base it off the django_19 branch - https://github.com/ojii/django-sekizai/pull/55 - to avoid re-work once that branch is merged.

Thank you for your contribution.
I really dislike tox, so unfortunately I will have to decline this pull request.

Thanks for your consideration. Is there a particular reason you dislike tox?  (I'd like to know it in case it affects the other projects where I use it). Also, do you have an alternative for people who would like to contribute, and want to run the tests on supported environments (as all good contributors would)?

I think using tox is a waste of disk space and time. Locally I just test "edge" configurations (lowest Py, lowest Dj, highest Py, highest Dj; so 4 configurations in total). For all the rest we have CI. Running the tests themselves is super easy, install the dependencies and execute runtests.py.

In other words, you would want to reduce the 'envlist' in tox.ini to 4 configurations. This still leaves you with the option to specify other environment. e.g. you can have:
envlist = py26-django{13,16}, py35-django{18,19}

and doing "tox" will run 4 environments, and you are still also able to do, e.g.:
tox -e py27-django17

That resolves that 'wasted time' argument. I'm curious how you switch between the 4 different environments that you test - it's difficult to believe it is faster for you to do that than run a single command.
I'm not sure you are serious about "wasted disk space". If you are running tests against 4 versions, you presumably have a virtualenvs for each one (or waste further time by having to manually install different Django versions). Even with all the extra configuration, the cost of each virtual environment created by tox is $0.002 with today's prices...
Personally I think that 'edge' configurations are often more numerous than you think. I've seen cases where intermediate Django versions cause problems, and intermediate Python versions can have issues too. I'd much rather find these things out sooner rather than later if developing a patch.

I'm curious how you switch between the 4 different environments that you test

I have different venvs for different python versions. I generally work on one configuration and when it gets to the point I need to start testing, I switch between venvs and install the Django version I want. Thanks to wheels and pip caching, the installation is usually near-instant. Yes this isn't as fast, but it's how I do things and I like it this way.

If you are running tests against 4 versions, you presumably have a virtualenvs for each one (or waste further time by having to manually install different Django versions).

Depending on the project, I either have only per-Python venvs (sometimes just short-lived ones) or per-Python/per-Django venvs.

Even with all the extra configuration, the cost of each virtual environment created by tox is $0.002 with today's prices...

The "cost" for sekizai would be  almost 1GB (22*40MB). If I started using tox across my projects my home partition (which is on an "expensive", "small" SSD) would quickly run out of space, especially for projects with a lot more dependencies.
If you want to use tox, go ahead. I just don't want it in my projects (you can have a tox.ini locally in your clone).

I still don't really understand the problem. If there is a tox.ini file, you are not forced to use it, and neither is anyone else, but it makes things significantly easier for contributors who do not have your (perhaps very unusual) constraints of very limited disk space. I could indeed create a tox.ini in my own repo, but then that work has to be duplicated by everyone else who has to do the same.
I'm very happy to rewrite this patch so that:

the TravisCI conf is left alone
the envlist is reduced to 4 configurations
the instructions indicate how to run tests without using tox

It just seems like a no-brainer to me to help contributors run tests quickly and easily against the versions you would like patches to support.


vertical alignment not working

Hello,
Thanks a lot for your library!
For the sample code below, the vertical alignment of the labels is not working properly: instead of appearing at the same level of the "steps", they are above where they should be.
It's like their height is fixed and the more steps you "next", the more distant they get from the step where you are in.

<!doctype html>
<html lang="it">
  <head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>test</title>

    <!--

Also facing this issue.
@Johann-S any guidelines on how to fix it?
Tried placing it within "rows" but it just messes up the entire design.

@invoicer-it can you provide a live example of your problem ?
Same for the others
Without it, it's impossible to me, to help you. Slease create a reduced test case via CodePen/JS Bin or Stackblitz and report back with your link.

I have the same issue and created a simple testcase.
When one step is very long (like Section 1 in the testcase), the subsequent step will not be placed on top of the page or horizontal aligned with the corresponding circle, but under the previous step. That way, a lot of scrolling is needed and since the section and it's circle is not visible at the same time, there's no indication to which step is currently shown.
It would be awesome, if there would be a mode where all steps are simply shown on top of the page, replacing the previous step, not just making it invisible. That way, very large steps could be used.


Begin user management UI

Create a new React component that will be used to manage users in packages/jbrowse-plugin-apollo/src/components/. This component will be accessed by adding a menu item under the top-level "Apollo" menu that launches a dialog with this component in it. The "View change log" menu item in packages/jbrowse-plugin-apollo/src/index.ts and component in packages/jbrowse-plugin-apollo/src/components/ViewChangeLog.tsx are probably good examples to use to see how to add a menu item that opens a component.
For the first version, this component can work on some hard-coded data, something like this:
const users = [
  { id: 'user0123', email<EMAIL_ADDRESS>role: 'read-only' },
  { id: 'user4567', email<EMAIL_ADDRESS>role: 'user' },
  { id: 'user8910', email<EMAIL_ADDRESS>role: 'admin' },
]

The users should be in an MUI data grid, with non-editable columns for "id" and "email", an editable column for "role" (possible choices are "read-only", "user", and "admin", and a column with a delete button.
Some useful demos for the data grid:
General grid: https://mui.com/x/react-data-grid/#mit-version
Delete column: https://mui.com/x/react-data-grid/column-definition/#special-properties

I've pushed a basic Manage Users panel using the Data Grid and presenting just the dummy data - i.e. don't have the editable role or delete buttons yet. Will polish off on Tuesday.


Open Closed not working in Domoticz 2022.2

https://www.domoticz.com/wiki/Blinds is changed

Don't really know how writing an update works. But I replace all the "Off" with "Open" and all the "On" with "Close" in the plugin.py file and everything works fine again.

Thanks. It's updated now.


Create Benchmarking Suite

Create a general benchmarking suite that we can use to continuously test the PhotoshopAPI to its limits. This benchmark suite is not meant to test the library but should provide a rather broad range of use cases such as:

Writing very large files (>2GB) in PSD and PSB with all bit depths
Reading very large files (>2GB) in PSD and PSB with all bit depths
Read Complex nested hierarchies
Create Complex nested hierarchies
Benchmark Modifying complex nested hierarchies

All of these test cases should profile their speed, ram usage and file size on disk against Photoshop itself and we will run these benchmarks on all the PCs available at home. Their specs can be found below:

AMD Ryzen 9 5950x || 96GB DDR4 3200MHz
AMD Ryzen 5 2600x || 32GB DDR4 3200MHz
...

Implemented in #34


Does not work in Dark mode

As you can see it generates but we can't see the text in dark mode

ohhh thanks for this! I will update so the text is white when you are using the dark mode. The text is by default black this is why!


[Bug?] Creating a new container broke font cache

After opening the app for the very first time and creating a new container my font cache got broken.
I had to resoter this by running fc-cache --force on my host machine.

BoxBuddy doesn't touch anything to do with the font cache, so I assume this is a flatpak issue or GTK issue outside of BoxBuddy's scope.

BoxBuddy doesn't touch anything to do with the font cache, so I assume this is a flatpak issue or GTK issue outside of BoxBuddy's scope.

I pretty much assume this as well. I had similar symptoms in the past with just the cli tools already. Sorry for the false positive report.


Potential fix for #87

There is a problem with the AcceleratorTable in recent KiCad versions on Linux.
With these changes it works on Linux as well as on Windows 10.
OSX still needs testing, @DanielO would you mind helping me aut with a OSX test, please?

Hi, sorry for the delay!
Unfortunately it crashes with what looks like a GUI call from a non-main thread.
I will file a bug about it.


Schedules | Finder Tool - Trip Details

Summary of changes
Asana Ticket: ⏱Schedules | Finder Tool - Trip Details
Add trip details. Includes adding fares for each trip leg and adding a total time duration for each trip.

Assigned to: @ryan-mahoney

Incredible work! Feels great to see it come together like this. A couple comments below:

Getting a 404 when I click "view fares". Example link: http://localhost:4001/fares/bus_subway?destination=110&origin=place-dudly

Let's remove the horizontal line above the table/header that says 'Stops' and 'Arrival'

Can we add the down/up disclosure arrows to the end of the schedule rows? They look really similar to the live predictions rows above (which aren't clickable or expandable).

There's a tiny little jitter "dance" that the letters inside the pills do when you click the row open and closed. This is a very minor nitpick, sorry.

Question: My original intent was that people should only be able to click open one schedule details list at a time. But now that I'm playing around in it, would making this change cause scrolling issues if you click open a row and something collapses above it?

Can we make the ferry table rows look more like Commuter Rail? Right now entire ferry line name appear on every row in addition to the headsign. Should just have the ferry icon instead. Compare:

Noticed some odd wrapping, when the destination/headsign gets too long for one line.

@ingridpierre I've addressed your comments beside the one about only one Trip being expanded at a time. We should move that into a separate task as I didn't realize it from the mockup that was expected. It shouldn't be a terribly hard ticket, but this ticket was large and I now have some extensive rebasing to do.

@ingridpierre This is ready for review and rebased off master  / the spinner PR. It looks like the modal is pretty jumpy with the spinner when you switch from services with many trips -> less trips, but that existed before my change, we should add that as followup polish.

I think this looks beautiful, thanks for your attention to detail here. The spinner is great, super useful to have it around - I didn't catch the jumpiness myself.
I caught a few extant data-related bugs (unrelated to this ticket) that I'm adding to Asana.
I would say this is ready to go, but I managed to get snagged on an error that I can't evaluate on my own. Will send the console output over slack.

Forgot to mention steps to reproduce the bug:

Go to Newbury/Rockport schedule page
Open up any schedule from the schedule finder.
Choose a holiday schedule from the picker
Modal will crash and sidebar disappears

Looked great when I looked at it in the office, glad we caught that bug. Little language tweak then 👍.


JavaScript Algorithms and DataStructures (beta): Inssue with "findIndex" Method

Describe the Issue
I encountered an issue while completing a task (Step 11) on freeCodeCamp. The test involves using the findIndex method to determine whether a task already exists in an array and then either updating it or adding a new task. The problem appears to be related to the comparison order in the arrow function passed to findIndex.
const taskData = [];
let currentTask = {};

const dataArrIndex = taskData.findIndex((item) => currentTask.id === item.id); // This causes an error

When I change the comparison order, the code works without any issues:
const dataArrIndex = taskData.findIndex((item) => item.id === currentTask.id); // This works fine

Affected Page
https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures-v8/learn-localstorage-by-building-a-todo-app/step-11
Your code
const taskData = [];
let currentTask = {};

const dataArrIndex = taskData.findIndex((item) => currentTask.id === item.id); // This causes an error

and
const dataArrIndex = taskData.findIndex((item) => item.id === currentTask.id); // This works fine

Expected behavior

Screenshots
No response
System

Device: [e.g. iPhone 6, Laptop]
OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04]
Browser: [e.g. Chrome, Safari]
Version: [e.g. 22]

Additional context
No response

You didn't mention the issue caused.


using colon as part of URL

Describe the bug
I tried to send a GET request with a URL, which contains a colon and it failed with error 401.
My request looks like
 const<EMAIL_ADDRESS> spec().get(url)

I'm using API_KEY and API_SECRET for the basic authentication, that I provide as part of the URL.
Important to notice, that when I use axios.get(url); it works as required.
As workaround, I can use also Pactum, but with some changes:
const encode=Buffer.from(`${process.env.API_KEY}:${process.env.API_SECRET}`).toString('base64');
 const baseUrl=`https://${process.env.URL}/v2/profiles`;
 await pactum.spec().withHeaders({
         'Authorization': `Basic ${encode}`,
     })
         .get(baseUrl)
         .expectStatus(200);
 });

Expected behavior
could you please check the option to use the first command without basic authorization
Software (please complete the following information):

OS: macOS
NodeJS Version 14.15.1

Tracking it https://github.com/ethanent/phin/issues/77


Missing document about "idempotency_token" attribute in "RunsSubmit" API

Based on document here: https://docs.microsoft.com/en-us/azure/databricks/kb/jobs/jobs-idempotency, the "RunsSubmit" API supports an attribute "idempotency_token", but it's not reflected in the API documentation.

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

ID: 94757e87-8be2-3279-4a7e-51fbbaf7d678
Version Independent ID: 9cfad152-bba2-390c-edce-63d3aba3f4fa
Content: Jobs API - Azure Databricks
Content Source: databricks/dev-tools/api/latest/jobs.md
Service: azure-databricks
GitHub Login: @mamccrea
Microsoft Alias: mamccrea

Hi @memoryz - Thank you for your feedback. This issue is being tracked and is currently in review. I will respond here once the documentation has been updated. Please let us know if you have any additional feedback.
#please-close


requirments.txt need to be updated in the main branch

requirments.txt need to be updated in the main branch,
it creates the [ ERROR: Invalid requirement: 'aiohttp=3.8.4=pypi_0' (from line 4 of requirements.txt)
Hint: = is not a valid operator. Did you mean == ? ]  issue

Thanks for the comment! This is addressed in the latest main branch.


Minor refacto of search class delete method

Hi 👋
I used you projet and love it. Save me some times, so let me help you to improve it a bit 🙂
Flavien

Hi @FlavienRx,
Sorry for the delay with handling your pull request. Thanks so much for contributing to making difPy better! 👍🏼
Best,
Elise