Modal refactoring

Checklist before merging

[X] I added an appropriate entry to CHANGELOG.md

I introduced a new generic Modal component on which the developer can attach functions to the Bootstrap modal events, so that we can detect the modal closure regardless of the chosen mode (button, esc key, click on backdrop). It also provides generic methods for displaying an error inside the modal and automatically cleaning up the previous errors if the modal is closed and then opened again.
After this refactoring the delete workflow confirm modal behaves like delete dataset confirm modal: the error is always displayed inside the modal and the modal is not closed when an error happens.
Moreover, it was now possible to remove the static backdrop mentioned in #264, meaning that now the edit task modal can be closed in all the possible ways.
I've also investigated the issue of the backdrop remaining stuck when clicking on the back browser button. It seems to be related to Svelte invalidation not being triggered for the modal when going to the previous page and I fixed it adding a check directly in the layout page.
All the modals involved in the refactoring:

generic confirm action
edit task (it is now possible to close the modal in all the possible ways)
import workflow
create dataset resource
update datatset
job info
job logs
project info
task collection logs
task info
edit project
dataset meta properties
unsaved changes
new workflow task
edit workflow properties
change workflow task order
run workflow

Closes #264

After this refactoring the delete workflow confirm modal behaves like delete dataset confirm modal: the error is always displayed inside the modal and the modal is not closed when an error happens

I agree with this choice, and here are some examples that match with the expected behavior:

Perhaps in some cases we may make the modal a bit wider, since error messages tend to be verbose, but this can also be postponed to future "style" cleanups

I've also investigated the issue of the backdrop remaining stuck when clicking on the back browser button. It seems to be related to Svelte invalidation not being triggered for the modal when going to the previous page and I fixed it adding a check directly in the layout page.

In my first tests this generally works, and I observe this behavior:

I am on page A
I go to page B
I open a modal
I click backspace
I am back to page A

edit task (it is now possible to close the modal in all the possible ways)

I tried by:

"close" button
clicking outside the modal
backspace

In all three cases, any change that I made inside the modal before closing it (e.g. changing type from zarr to somethingelse) were not present upon re-opening it.
This matches with expectations.

It also provides generic methods for displaying an error inside the modal and automatically cleaning up the previous errors if the modal is closed and then opened again.

I confirmed this works, for the add-resource-to-dataset modal.
Here is the error:

And this is after I close the modal, and re-open it:

A question: does the generic Modal component include any instruction on when to close the modal?
For instance when a resource is successfully added to a dataset we see the following, and we need to click somewhere to close the modal

In this case, would it make sense to close it automatically?

Note: this specific modal was part of an old issue (https://github.com/fractal-analytics-platform/fractal-web/issues/108), which probably was already somehow fixed in the past. From the old issue:

Currently, when a user adds a new resource, a confirmation is shown in the add resource pop-up. The pop-up then closes after about 2 seconds.

This is not the case any more.

If the user is impatient and closes the resource adding modal before it closes itself, a new & empty add resource modal pops up, which is quite confusing

This is also not happening any more.
Therefore I am now closing that old issue, and the only question left is whether it makes sense to automatically close the modal after it "success".

In general I think that the top-right X button is useful and doesn't introduce too much "noise", and I would always include it in all modals. No problem if there are different opinions here ;)

I've included the top-right X button in the generic Modal component.

A question: does the generic Modal component include any instruction on when to close the modal?

The generic modal provides a method to automatically close the modal on a successful action, but one can choose to use it or not. I've refactored the following modals to close automatically on success:

Create dataset resource
Edit project
Import workflow (this now redirects to the newly created workflow, as happens for the simple workflow creation)
Edit project properties
New workflow task
Edit Workflow properties
Update dataset properties

After the closure, a success alert message is displayed in the page for a few seconds.


Versioned File Appender

I Jerome, I have created a pull request with a patch of the file appender in which we avoid the log file to be overwritten every time the logger is launched. But with this patch the log file will grow forever. There is multiple solution to this small problem:

We check the size of the file and when it reach a value we add the date to the name of the log file and create a new one. We also only keep some of them. The number of files to keep and the size could be parameters one the appender configuration.
Parameter could be:
versionable: BOOL
maxFileSize: 2Mb
numberOfHistoryFiles: 10
We do the same as in 1 but create a new file on every run, keeping the las n ones with the creation date attached.
Parameter could be:
versionable: BOOL
numberOfHistoryFiles: 10

What do you think?

I would vote for suggestion #1. But you should maybe also consider leaving the current file appender as is and implement your suggestion as a new appender: the rolling file appender

That could work as well.
But in that case we need to inform in the documentation about the exact behaviour of the current one. That is that it gets overwritten every run.

Sorry for having been unclear with my thoughts, what I meant was that we could leave the the current file appender as is AFTER your pull request got accepted. The log file would grow forever, but it would be a feature. Those who don't want that feature could use the new rolling file appender.

Hi Jose and Markus,
That would be great !
I agree with the proposal of a rolling file appender that would be override the file appender, to add the new behavior.
The ever-growing log file can be useful in environments where logs are rotated by an external service, like newsyslog (the one used on OS X) or logrotate. The FileAppender is built to work gracefully with such systems (it will re-create a log file on the fly if the previous one has been moved or deleted).
That is not very imaginative, but I would suggest to use the same behavior as Log4j's default one (at least in my memory) : once the file has reached the rolling condition, it is renamed by appending ".1" at the end. If a logFile.log.1 file exists, it is renamed to logFile.log.2.
I think we could also reuse their parameters names : maxFileSize and maxBackupIndex.
For a later evolution, we could imagine having two kind of rolling conditions : one on the file size, with the numeric suffix added when rolling, and one with the date (hourly, daily, weekly, monthly, ...), that would add a meaningful suffix depending on the mode.
That would certainly be useful if swifts starts to get used on server side.

Ok, Thanks. So I'll move to to do the implementation of the rolling file appender.

Hi,
Is File rolling feature available,  If available how to use please can you help us with docs.

Hi SanthoshSellavel,
I just pushed the rolling feature for the file appender. It is not yet integrated in the master branch, but you will find it on FileAppenderRotationFeature.
Can you take a look and tell me if it fits your expectations ? If you have a chance to give it a try, it would be awesome !
I did it so that custom rolling policies can be added, but for the moment, the naming of the rotated files is hard coded. I plan to add a naming policy protocol, with at least a simple implementation with '.1', '.2', '.3', so that rotated files name can also be customized if needed.

Hi @jduquennoy,
I have checked out file rolling feature, awesome work!
Everything works cool. By default SizeRotationPolicy can be used if maxFileSize is initialised.
Few suggestions,

Instead getting filePath from user, If fileAppender dynamically create a logDirectory  and a Log file in that folder, adding set of properties to fileAppender like logFilePath or logDirectory to get those values will be more helpful. Or Add an option initialise fileAppender with logDirectory which makes more useful.

As of today, the path of the file appender is configured with a destination file. The naming of the rotated log files is hard coded, a number is added to the filename, and the folder stays the same.
I was thinking about adding a new protocol, for an object that would be responsible for providing the rotated file name for a current file name.
The idea would be that when a rotation happens, this object is requested a new name for each file in the logging folder. It can then return a new name, or nil. If nil is returned, it means the provided file should not be renamed.
With such an object, a client of the library could specify its own naming policy.
It could, optionally, send the file to a subfolder by returning a relative path, or to a folder located elsewhere by returning an absolute path. But then log4swift will lost track of that file. This means that the file will no longer be rotated after it has been moved.
To avoid erasing files by mistake, Log4swift would still automatically add a suffix if the destination file already exists.
Do you think that would fit your needs ?
If yes, I think I will create the protocol, and two implementation: one equivalent to the currrent hard-codded one, that adds '.1', '.2, '.3' to the name of the file, and another one that would add the date at the end of the file name.

@jduquennoy  this Feature  in  FileAppenderRotationFeature, when to merge this with master ?

Hi Ahmed,
The feature in that branch is validated, and covered by unit tests.
The issue I have is that I tried to add several test projects, to smoke test the library in different use cases (swift and obj-c, using carthage or cocoapods, on different platforms).
Some tests are running perfectly, but the ones using cocoaPods are failing. As I am not a user of cocoaPods, I need to spend time on it to fix the issue, but due to some recent changes in my live, it is not that easy to find spare time currently :-D.
I think I should merge the branch to master, but not release an official version before I can have all those tests working as expected.


ci: add codespell

Adds codespell github actions
Updates: #12

Added only codespell
golangci linter need some extensive changes and config files(to ignore a few linters)

manually merging, since this modifies mergify.yml


Simplify creating unicode keyboards and create a demo keyboard as well

I am currently working on a custom keyboard that needs to replace the keyboard characters and keyboard outputs with unicodes , as if they were a font.
Example of keyboard:

if we press the shift key or activate the caps locked, I would like to see the "uppercase unicodes ".
Example  of this:

I have added more utils for creating unicode keyboards to the master branch. You can check them out and see if they simplify things.

@danielsaidi I found a way to change alphabeticInputSet to unicode chars for lowercase, but is there a way to do it also for uppercase? KeyboardInput is public so I can't override it to provide some sort of logic. One way to fork the library and make appropriate changes, but maybe I miss something.

@denandreychuk Can't you create a custom input set provider with the inputs you want?

@denandreychuk KeyboardKit 5.5 contains more utils that make it easier to create upper- and lowercased layouts. This is for instance used by the new Kurdish keyboard. The same features can be used to create unicode keyboards.

I will close this once we have a demo keyboard in place.

I will add a demo keyboard that demonstrates this in the 6.0 release. If you have nice unicode sets that you'd like to share, I'd love to add them to the demo.

Ping @dariogallegos @TechnikEmpire @denandreychuk
I have (finally) added a super-simple unicode keyboard to the demo app in the v6 feature branch. Have a look at it and let me know what you think.

@dariogallegos
How did you change the font to unicode?
Can you please help me with this question?

I am currently working on a custom keyboard that needs to replace the keyboard characters and keyboard outputs with unicodes , as if they were a font.
Example of keyboard:

if we press the shift key or activate the caps locked, I would like to see the "uppercase unicodes ".
Example of this:

how can you change the different unicode forms on the keyboard

@ducduy20 I would like to ask you to create your own separate issues instead of using the issue system as a discussion forum, specially when it comes to closed issues. You have a unicode demo in the demo app, so I suggest looking at it for inspiration and reading the docs to understand how input sets work and how it all connects to each other.


feat: export some plugin functions

What type of PR is this?

What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

Additional documentation e.g., design docs, usage docs, etc.:

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

1 of 4 (25.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.06%) to 54.965%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/modules/generators/app_configurations_generator.go
1
2
50.0%

pkg/modules/plugin.go
0
2
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.06%

Covered Lines:
8828

Relevant Lines:
16061

💛  - Coveralls


Compile error: Feature has been removed (const_fn)

When trying to compile using cargo, I run into the following error:
(crypten) lvdmaaten@devfair0297:~/secure_mpc/delphi/rust$ cargo +nightly build --release
   Compiling algebra v0.1.0 (/private/home/lvdmaaten/secure_mpc/delphi/rust/algebra)
warning: couldn't execute `llvm-config --prefix` (error: No such file or directory (os error 2))
warning: set the LLVM_CONFIG_PATH environment variable to a valid `llvm-config` executable
error[E0557]: feature has been removed
  --> algebra/src/lib.rs:28:12
   |
28 | #![feature(const_fn)]
   |            ^^^^^^^^ feature has been removed
   |
   = note: split into finer-grained feature gates

error: aborting due to previous error

For more information about this error, try `rustc --explain E0557`.
error: could not compile `algebra`

Any advice on how to resolve this compile error?

Replacing the relevant line by #![feature(const_fn_trait_bound)] resolved this issue for me.
The library then builds successfully and so the the tests (with some warning about null pointer dereferences). But some of the tests appear to fail: test gc::test::test_relu ... FAILED
The benchmarks do not compile.

Thanks for bringing this up! The feature issue is due to some recent changes. If you want to make a PR for the change that would be great, otherwise I will update things within a few weeks. I will get to the benchmarks within a week or so (I haven't touched the benchmarks for awhile since we relied primarily on the experiments folder for benchmarks, so I'm not surprised they don't currently compile).
Could you provide some more details about the null pointer warnings? I don't believe I've seen those before.
The ReLU test should fail as there's a bug that was never fixed. If the resulting error trace shows an off-by-one from the expected result than everything is fine.

Hi! The compilation issue + benchmark issues are fixed now :+1:
I will making a PR hopefully later this week which fixes some stuff in the C++ backend (including the null pointer warnings).


cluster command cd-hit-est with cov 0.95 and similarity 0.9

Dear Sir:
I want to try mmseqs2 cluster as cd-hit-est.
cd-hit-est -i $CLUSTERS.IN -c 0.95 -T $MC_CPU -M 0 -G 0 -aS 0.9 -g 1 -r 1 -d 0 -o $CLUSTERS.OUT > $CLUSTERS.log
Please kindly suggest me the corresponding parameter to set for mmseqs cluster and lincluster.
Thanks a lot.
Xianghui

Expected Behavior
Current Behavior
Steps to Reproduce (for bugs)
Please make sure to execute the reproduction steps with newly recreated and empty tmp folders.
MMseqs Output (for bugs)
Please make sure to also post the complete output of MMseqs. You can use gist.github.com for large output.
Context
Providing context helps us come up with a solution and improve our documentation for the future.
Your Environment
Include as many relevant details about the environment you experienced the bug in.

Git commit used (The string after "MMseqs Version:" when you execute MMseqs without any parameters):
Which MMseqs version was used (Statically-compiled, self-compiled, Homebrew, etc.):
For self-compiled and Homebrew: Compiler and Cmake versions used and their invocation:
Server specifications (especially CPU support for AVX2/SSE and amount of system memory):
Operating system and version:

@liuxianghui thank you for asking this question!
cd-hit-est -i $CLUSTERS.IN -c 0.95 -T $MC_CPU -M 0 -G 0 -aS 0.9 -g 1 -r 1 -d 0 -o $CLUSTERS.OUT > $CLUSTERS.log

CD-HIT computes in default global sequence identity, while MMseqs2 computes local. Therefore it is not possible to mimic exactly the same behaviour. But since you turn of the the global sequence identity computation, you can get fairly close to CD-HIT's criteria. Here is my suggested parameter mapping.
-c 0.95    -> --min-seq-id 0.95 --seq-id-mode 1
-T $MC_CPU -> --threads $MC_CPU
-G 0       -> local alignments is the default of MMseqs2
-aS 0.9    -> --cov-mode 1 -c 0.9
-g 1       -> it is not possible with MMseqs2 using greedy incremental clustering (needed for --cov-mode 1). However, setcover assigns sequence to the best matching representative in default.
-r 1       -> MMseqs2 in default considers forward and reverse strand

Final command:
mmseqs easy-cluster in.fa clu tmp --min-seq-id 0.95 --seq-id-mode 1 --cov-mode 1 -c 0.9 --threads $MC_CPU

thank you. That 's great.


[c++] Support empty range query and Arrow nullable fields

This PR:

Provides the empty range query support described in #593 (a query containing only empty ranges should return empty results).

Fixes an issue in #618 related to nullable, variable length fields (a TileDB core library check fired if the offsets buffer and the validity buffer were not the same size). We still allocate an extra offset buffer entry as required for Arrow, but hide the extra buffer entry from TileDB core.

Adds support for Arrow nullable fields, by reusing the bytemap to bitmap code written for TileDB bool to Arrow bool conversion.

Codecov Report
Base: 64.02% // Head: 74.77% // Increases project coverage by +10.74% :tada:

Coverage data is based on head (538f099) compared to base (0ca89e6).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##             main     #622       +/-   ##
===========================================
+ Coverage   64.02%   74.77%   +10.74%
===========================================
  Files          61       26       -35
  Lines        3213     1855     -1358
===========================================
- Hits         2057     1387      -670
+ Misses       1156      468      -688

Flag
Coverage Δ

python
74.77% <100.00%> (+0.02%)
:arrow_up:

r
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

apis/python/src/tiledbsoma/query_condition.py
56.09% <100.00%> (+0.43%)
:arrow_up:

inst/tiledb/include/tiledb/deleter.h

src/rinterface.cpp

R/SOMASparseNdArray.R

src/rutilities.cpp

inst/tiledb/include/tiledb/dimension.h

R/utils.R

src/include/span/span.hpp

src/include/tiledbsoma/soma_reader.h

src/rutilities.h

... and 26 more

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

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


Traffic Manager version 2017-05-01 with new MonitorConfig settings

Support for Traffic Manager API version 2017-05-01 with new MonitorConfig settings
Swagger spec: https://github.com/Azure/azure-rest-api-specs/pull/1180
This checklist is used to make sure that common guidelines for a pull request are followed.

[x] I have read the contribution guidelines.
[x] The pull request does not introduce breaking changes.

General Guidelines

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

SDK Generation Guidelines

[x] If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
[ ] (Pending swagger spec merge) The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as a link to the swagger spec, used to generate the code.
[x] The project.json and AssemblyInfo.cs files have been updated with the new version of the SDK.

@vladca,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

The AutoRest branch is retired and no longer takes pull requests. vs17Dev is the new autorest based .net sdk branch located here:  Azure/azure-sdk-for-net.  Please submit pull requests to that branch.

The AutoRest branch is retired and no longer takes pull requests. vs17Dev is the new autorest based .net sdk branch located here:  Azure/azure-sdk-for-net.  Please submit pull requests to that branch.


Upgrade to Elasticsearch 5.x

We need to reindex all data and update the client for Elasticsearch 2.0 as things have been deprecated. We should compile a list of these as well as look into performance gains that could be achieved via a reindex.

[x] Update Foundatio.Repositories
[ ] Update Indexes
[x] Decrease the shard size to 4 or 5
[ ] Setup new cluster to test
[ ] Test upgrading and redindexing

Performance gain:

Look into precomputed hashes for cardinality lookups
Correctly map extended data numeric types to the right elastic numeric type (for dynamic mapped fields). https://github.com/exceptionless/Exceptionless/issues/173 which is related to https://github.com/elastic/elasticsearch-net/issues/1643

https://www.elastic.co/blog/performance-considerations-elasticsearch-indexing

https://www.elastic.co/blog/performance-indexing-2-0

When plans to support Elasticsearch 2.x

We will be skipping 2.x completely and going straight to 5.x by using external reindexing support built into 5.x. We are starting work on this process this week so we can be ready for the 5.x release and reap the many rewards of 2.x+5.x (80% faster indexing, update by query and much more).

https://www.loggly.com/blog/nine-tips-configuring-elasticsearch-for-high-performance/

Support Elasticsearch 5.x, also supports Elasticsearch 2.x?

We will be skipping 2.x and going straight to 5.x via external reindexing.

We have an /elastic5 branch that we are working out of :)

elastic5 release ,This release introduces a number of breaking changes.  https://www.elastic.co/blog/elasticsearch-5-0-0-released

Yep, a whole lot of them, we just got foundatio.repositories completely upgraded and are working on exceptionless, we almost have the mappings done but we are blocked until they release a NEST-5.0-rc2 client

https://www.nuget.org/packages/NEST/5.0.0-rc2  NEST-5.0-rc2  release

https://docs.microsoft.com/en-us/azure/guidance/guidance-elasticsearch-tuning-data-ingestion-performance

We need to work on reindexing next (dev will be upgraded to elastic 5 today or tomorrow).. The reindex will need to have an ingest pipeline which choices the right daily index.

App is looking good. Tons of hard work paying off. :)

https://www.elastic.co/guide/en/elasticsearch/reference/current/important-settings.html

I have exceptionless up and running on elastic 5 (https://dev-app.exceptionless.io/)
Feel free to play around with it or stress test it. I only have it running on a single node (haven't even optimized that node)
I just did find an issue where I wasn't able to invite users / get users list for an org, will look into that very soon. Other than that I'm aware of no issues but I'm sure there probably are

https://www.youtube.com/watch?v=cI-3mEUW_F4
https://sematext.com/blog/2015/11/30/running-elasticsearch-clusters-on-docker/

We've deployed this into production, we'll create a release soon once we have more data


Houdini, Max: Fix missed function interface change

Changelog Description
This PR https://github.com/ynput/OpenPype/pull/5321/files from @kalisp missed updating the add_render_job_env_var in Houdini and Max as they are passing an extra arg:
TypeError: add_render_job_env_var() takes 1 positional argument but 2 were given

Testing notes:

Submit a render to Deadline in Houdini

Oh, thanks for the PR.


I can't filter and sort animes using API

Thank you for taking the time to open an issue!
For bug reports please include the following section in your issue details.

Description:
I tried use the api to get a filter of animes by year and get it sorted by popularityRank and I get Internal server error response:
{
"errors": [
{
"title": "Internal Server Error",
"detail": "Internal Server Error",
"code": "500",
"status": "500"
}
]
}
Steps to reproduce:
This is the curl command I am using:
curl --globoff "https://kitsu.io/api/edge/anime?sort=favoritesCount&filter[year]=2017" -v -H "Content-Type: application/vnd.api+json"
Screenshots (if applicable):
OS and Browser:
Linux. No browser.

you can sort by userCount to sort by popularity

Thanks for the report! It looks like that filter can't be used with that sort due to our ElasticSearch instance not having any knowledge about the favorites_count.
Happy to accept a PR for this, or will be fixed when someone can find some time.

Filtering by userCount works, with this url https://kitsu.io/api/edge/anime?sort=userCount&filter[year]=2017 , thanks!

Here is the PR https://github.com/hummingbird-me/hummingbird-server/pull/155, it's only needed that change, right?

Thanks!


Make key and secret optional

For use with IAM EC2/ECS/Task Roles
It looks like you had done this - however if statements don't work if the key is not set, a better method is to use array_key_exists

Thanks for taking the time to make a PR!
Would you mind changing those to !empty() checks?
The current code prevents creating the credentials if key or secret are false-y, but as you've seen, will throw an exception if they're not defined at all.
Your update to array_key_exists() will prevent the exception from occurring, but does not prevent the credentials from being set if key or secret are false-y.
A change to !empty() will protect against both scenarios.
Thanks again.

This functionality has been included in the latest release with the empty() checks. Thank you for your suggestion!


possible synonyms

would  it be app ropriate to add  synonyms
increased proliferation
to terms related to
FYPO:0000636 increased cell population growth rate (and decreased)

Well, I wouldn't add exact synonyms because "proliferation" doesn't seem like it's necessarily restricted to the rate of population growth. But we can be pretty free with related synonyms.

Yep, I  was thinking  related. It just struck me from the wording when people are describing various population growth phenotypes, they might be likely to search on it.

OK, added a bunch to the various population growth rate terms


Michael-Scott queue : safe - unsafe versions

This PR follows PR #122 work: the optimizations or changes made in this previous PR are separated into two to get a safe Michael-Scott queue and an "unsafe" one (with Obj.magic use).
TODO :

[x] For now, the dscheck tests for  the unsafe version get segmentation faults.
[x] Documentation

@polytypic: The dscheck tests of the unsafe version result in a segmentation fault. I encountered the same issue with PR #122 after rebasing on main and adding the few necessary changes. Could you have a look?

@polytypic  : this PR is ready for review. Could you have a look ?

Looking at the "safe" version, the push logic:
(* ... *)

let push { tail; _ } value =
  let rec find_tail_and_enq curr_end node =
    if not (Atomic.compare_and_set curr_end Nil node) then
      match Atomic.get curr_end with
      | Nil -> find_tail_and_enq curr_end node
      | Next (_, n) -> find_tail_and_enq n node
  in
  let new_tail = Atomic.make Nil in
  let newnode = Next (value, new_tail) in
  let old_tail = Atomic.get tail in
  find_tail_and_enq old_tail newnode;
  if not (Atomic.compare_and_set tail old_tail new_tail) then
    fix_tail tail new_tail

doesn't have some of the (entirely safe) optimizations from the "unsafe" version:
(* ... *)

let push { tail; _ } value =
  let (Next _ as new_node : (_, [ `Next ]) Node.t) = Node.make value in
  let old_tail = Atomic.get tail in
  let link = Node.as_atomic old_tail in
  if Atomic.compare_and_set link Nil new_node then
    Atomic.compare_and_set tail old_tail new_node |> ignore
  else
    let backoff = Backoff.once Backoff.default in
    push tail link new_node backoff

In particular, notice how the "unsafe" version does not call any recursive functions in the fast path:
let push { tail; _ } value =
  let (Next _ as new_node : (_, [ `Next ]) Node.t) = Node.make value in
  let old_tail = Atomic.get tail in
  let link = Node.as_atomic old_tail in
  (* first we try the fast path *)
  if Atomic.compare_and_set link Nil new_node then
    Atomic.compare_and_set tail old_tail new_node |> ignore
  else
    (* failed, so we do the slow path *)

It should be possible to incorporate this optimization into the "safe" version and it might speed it up a tiny bit.

About the missing safe optimizations: I added the fast path in the push function. However, the benchmarks suggest that adding backoff (either for in fix_tail or find_tail_and_end) does not improve performance (at least on my computer). Did I miss other safe optimizations ?

About the missing safe optimizations: I added the fast path in the push function. However, the benchmarks suggest that adding backoff (either for in fix_tail or find_tail_and_end) does not improve performance (at least on my computer). Did I miss other safe optimizations ?

Hmm... One could also leave the backoff out.  It is possible that the backoff helps on other CPU (micro)architectures and we can add that later.

Hi there! While I understand and appreciate the hard work that went into optimizing the queue, what is the recommended alternative to grab the elements of the queue? A pop loop followed by a push loop?

As a side note, the removal of the snapshot mechanism wasn't just about optimization.
Here is a puzzle about the "snapshot" mechanism.  The code below uses the previous 0.4.1 version of this library, which is the only published version of this library that has the MS queue with the "snapshot" mechanism and no (additional) space leaks.  Let's first define a module alias:
module Q = Saturn.Queue

Here is a function that converts a "snapshot" into a list:
let[@tail_mod_cons] rec to_list s =
  match Q.next s with
  | None -> []
  | Some (v, s) -> v :: to_list s

Question A: What is the return value of the below program?
let q = Q.create () in
let s = Q.snapshot q in
Q.push q 101;
ignore (Q.pop q);
to_list s

Question B: What is the return value of the below program?
let q = Q.create () in
Q.push q 101;
let s = Q.snapshot q in
Q.push q 42;
ignore (Q.pop q);
ignore (Q.pop q);
to_list s

Click to see answer and explanation
The first program returns [] and the second program returns [101; 42].
To me, a "snapshot" should be an immutable instant. But that is not how the mechanism worked.  Instead, snapshot simply returned a pointer to the first non-dummy (if any) node of the queue and the next operation then dereferenced the (mutable) pointer to the next node.
This meant that if the queue happened to be empty, the snapshot would be empty. If the queue happened to be non-empty, the snapshot would potentially contain all elements pushed to the queue at that point and all the element to be pushed to the queue in the future.
This behaviour of the snapshot mechanism is, of course, not limited to simple sequential programs.  Concurrent pushes to the queue are also potentially visible through the "snapshot".

Good to know! Given the nature of the concurent queue, I was never expecting a strict control over the interleaving calls but this is clearly opposite to what it was advertising.
I think it'd be nice to have a way to get through the elements in the queue without removing them, basically a deeper peek API.
I might see if I can propose a PR for that.

Note that providing a snapshot operation can be easier for some other lock-free queue approaches.
The "lazy" queue, for example, makes it particularly easy.
Also the approach using two (essentially immutable) stacks, it is quite easy to take a snapshot of the queue.  The Picos project has an implementation of a two-stack multi-producer, multi-consumer queue that should be relatively easy to extend with a snapshot operation.
Also, the queue provided with Kcas has snapshot functionality.


v0.5.0

New features:

Tower CLI bash auto-completion.
Auto-synchronize offline hosts and thinclient time with 'router' time.
Hosts status in taskbar.
Lock screen and suspend on lid close.
Power-off button works.
TowerOS config file (for wallpaper, screen lock timeout and Labwc autostart).
Added 2 additional TowerS wallpapers to /var/towercomputers/wallpapers.
Enable sound in Thin Client.
Support one RJ45 cable for the Thin Client.
startw alias.

Documentation:

Update QA script and usage with new features.
Improvements and tweaks.

Miscellaneous:

Use APK to install tower-cli.
Use doas instead sudo.
Bugs fixes, code cleaning and tweaks.

This is going to be a great release! So many nice quality-of-life improvements!


Improve layout of gallery page at various breakpoints

So it begins... the versatility of the simple approach reached its limit. I suppose in practice it was always Jekyll under the hood, so the added complexity is mostly making things less magical and more explicit, which in a way is good; but I'm saddened that the portability and accessibility has been reduced (no longer there's a plain-markdown gallery that can be viewed by any markdown renderer).
That said, I'm genuinely curious: was the previous layout that problematic in handling smaller screens? :thinking: I think the grid wrapping effect worked quite well. Beyond making the images progressively smaller, are there any other obvious layout improvements from this PR that am I missing?


Latest JAX breaks build

Looks like it's mainly problems related to using jnp for shape calculations.

I'll have a look. Cleaning up jax backend right now


Tracking issue: STARK verifier added to the standard library

Goal(s)

be able to support recursive verification for Miden VM

Details
Now that we have a FRI verifier (#548), we need to write a Miden assembly implementation of a full STARK verifier in order to support recursive verification of proofs of execution in the Miden VM.

### Must have

- [ ] https://github.com/0xPolygonMiden/miden-vm/issues/751
- [ ] https://github.com/0xPolygonMiden/miden-vm/issues/752
- [ ] https://github.com/0xPolygonMiden/miden-vm/issues/753
- [ ] https://github.com/0xPolygonMiden/miden-vm/issues/754

### Nice to have
- [ ] Implement proof-of-work verification

Working group:
@Al-Kindi-0, @bobbinth

Workflow

Discussion should happen here or in the related sub-issues.
PRs should only be merged by the coordinator, to ensure everyone is able to review.
Aim to complete reviews within 24 hours.
When a related sub-issue is opened:

add it to the list of sub-issues in this tracking issue

When opening a related PR:

request review from everyone in this working group

When a sub-issue is completed:

close the related issue with a comment that links to the PR where the work was completed

Coordinator: @Al-Kindi-0

The working group coordinator ensures scope & progress tracking are transparent and accurate. They will:

Merge approved PRs after all working group members have completed their reviews.

add the PR # to the relevant section of the current tracking PR.
close any completed sub-issue(s) with a comment that links to the PR where the work was completed

Monitor workflow items and complete anything that slips through the cracks.
Monitor scope to see if anything is untracked or unclear. Create missing sub-issues or initiate discussion as required.
Monitor progress to see if there's anything which isn't moving forward. Initiate discussion as required.
Identify PRs with especially significant changes and add @grjte and @bobbinth for review.

To serve as a reference for future discussions, here is a simple outline of the parts making up the STARK verifier for Miden VM. This is adapted to the case of blowup factor 8, maximum degree 9 and 1 auxiliary trace segment.

Load public input:

Stack input
Stack output
Program hash
Kernel: Vec<Word>.
This is done using advice_pipe and assuming that the length of the vector of kernels is upper bounded by a fixed number in order to simplify memory management[^1]. advice_pipe will result in a digest which is going to be the seed initializing our random oracle for Fiat-Shamir, call it public_coin.

Read trace commitments:
We have the main trace and one auxiliary trace and hence two commitments trace_commitment[0] and trace_commitment[1]. Then:

Reseed public_coin with trace_commitment[0].
Draw random elements aux_rand_elements used in the auxiliary trace segment using public_coin
Reseed public_coin with trace_commitment[1].

Draw constraint_coefficients from public_coin
These are tuples $(\alpha_i, \beta_i)$ used in computing the sum $$\sum_{i = 0}^k{C_i(x) \cdot (\alpha_i + \beta_i \cdot x^{d_i})}$$ where $C_i$ is the $i$-th constraint and $d_i$ is its corresponding degree adjustment.

Get constraint_commitment and reseed public_coin with it.

Draw the random Out-Of-Domain field element $z$

Read [[ood_main_trace_frame], [ood_aux_trace_frame]]

Reseed with [[ood_main_trace_frame.current(), ood_aux_trace_frame.current()], [ood_main_trace_frame.next(), ood_aux_trace_frame.next()]]

Evaluate constraints computing ood_constraint_eval_1 using:

constraint_coefficients
ood_main_trace_frame
ood_aux_trace_frame
aux_random_elements
z

Get ood_constraint_evaluations which is just a length m = 8 array of extension field elements [value_0, ... , value_{m-1}] and use it to compute ood_constraint_eval_2 as $\Sigma_{i =0}^{m-1} z^i value_i$.

Assert ood_constraint_eval_1 == ood_constraint_eval_2

Reseed with ood_constraint_evaluations

Draw deep_composition_coefficients which are $\alpha_i$, $\beta_i$, $\gamma_i$ and $\delta_i$ used to compute the one-value-per-trace-row $$Y(x) = \sum_{i=0}^k{\left(\alpha_i \cdot \frac{T_i(x) - T_i(z)}{x - z} +\beta_i \cdot \frac{T_i(x) - T_i(z \cdot g)}{x - z \cdot g} +\gamma_i \cdot \frac{T_i(x) - T_i(\overline{z})}{x - \overline{z}}\right)} + \sum_{j=0}^{m-1}{\delta_j \cdot \frac{H_j(x) - H_j(z^m)}{x - z^m}}$$
To bring the degree bound to be equal to trace length minus 1 we use $\lambda$ and $\mu$ to compute the degree-adjusted quantity
$$C(x) = Y(x) \cdot (\lambda + \mu \cdot x)$$

Get power-of-work nonce pow_nonce and reseed public_coin with it.

Check that the resulting internal seed of public_coin contains the correct number of leading zeros.

Draw query_positions which are row indices ranging from 0 to the length of LDE domain minus 1.

Get the queries at the query_positions of:

queried_main_trace_states
queried_aux_trace_states
queried_constraint_evaluations
These are unhashed arrays from leafs that were authenticated against previously received Merkle tree commitments i.e.  trace_commitment[0], trace_commitment[1] and constraint_commitment.

Using query_positions, z and deep_composition_coefficients compute:

t_composition := compose(queried_main_trace_states, queried_aux_trace_states, ood_main_trace_frame, ood_aux_trace_frame)
c_composition := compose(queried_constraint_evaluations, ood_constraint_evaluations)

Compute deep_evaluations = combine(t_composition, c_composition)

Lay out query_positions and deep_evaluations in memory in preparation for FRI verification.

Read FRI layer commitments and use them to seed the public_coin and draw the next folding challenge $\alpha$. Lay out in memory the layer commitment followed by [d_size, t_depth, alpha_1, alpha_0] for each FRI layer.

Read the remainder codeword together with remainder polynomial coefficients and lay them out in memory.

Call FRI_Verifier

The above assumes that the FRI verification procedure has been updated in two ways:

The stack input for FRI verification has been updated from [layer_ptr ... rem_ptr ... query_start_ptr ... query_end_ptr] to  [query_ptr ... layer_ptr ... rem_ptr].
The STARK verifier lays out the remainder codeword using adv_pipe and compares the resulting hash with the commitment received from the prover. It then continues using adv_pipe to lay out the remainder polynomial coefficients in order to compute the challenge points $\tau$ for the remainder verification procedure. The STARK verifier determines, based on the lde_domain_size, which of verify_remainder_32 or verify_remainder_64 to use.

[^1]: Is this a reasonable assumption?

Here is a tentative proposal for how the memory should be laid out. Since the number of queries is fixed and by putting an upper bound on the number of FRI layers, we can make all of the memory manipulations static and thus increase the performance of the resulting code.

Question: Do we have a well of telling which version of AIR the proof corresponds to? I suppose this can be done out-of-band if not, but eventually we will rollout changes to the AIR constraints, and we will end up in a situation with local proofs generated for more than one version of the constraint, when the sequencer needs to verify the local proofs it needs a way to identify the version of AIR used.

@hackaugusto - no way currently, but that's something we can probably track as a part of ExecutionProof struct.

@Al-Kindi-0 - this is awesome! Thank you for putting it together.
I agree with the preliminary layout proposal - though, I do think we'll probably change it a few times as we work though the actual implementation.
By the way, looking at this now, I am rather pessimistic that we can complete all non-FRI steps in about 40K cycles. Seems like step 17 alone could be about 40K cycles. I'd probably create a separate sub-task for it as we may try figure out was to optimize it (i.e., maybe we can remove the conjugate constraint check from Winterfell).

Thank you @bobbinth !
I add #754 to track point 17.

I remember Eli tweeted that the third term is not needed but I can't find the justification written anywhere.
As for needing a new instruction, I think it might make sense if we remove the third term. In this case, there will be 8 extension field elements and thus 16 (top) stack elements.

The tweet is here (and it does reference some part of the paper).
I actually count 6 elements in the extension field and 2 elements in the base field ($T_i(x)$ and $x$ are in the base field, right?).

Yes, you are correct. The trace elements and LDE domain coordinates are in the base field. So overall 14 base field elements.


feat(icons): added image frame icon

What is the purpose of this pull request?

[x] New Icon

Icon Design Checklist
Concept

[x] I have provided valid use cases for each icon.
[x] I have not added any a brand or logo icon.
[x] I have not used any hate symbols.
[x] I have not included any religious or political imagery.

Author, credits & license

[x] I've based them on the following Lucide icons: image

Naming

[x] I've read and followed the naming conventions
[x] I've named icons by what they are rather than their use case.
[x] I've provided meta JSON files in icons/[iconName].json.

Design

[x] I've read and followed the icon design guidelines
[x] I've made sure that the icons look sharp on low DPI displays.
[x] I've made sure that the icons look consistent with the icon set in size, optical volume and density.
[x] I've made sure that the icons are visually centered.
[x] I've correctly optimized all icons to three points of precision.

Before Submitting

[x] I've read the Contribution Guidelines.
[x] I've checked if there was an existing PR that solves the same issue.

Hi @gooyoung,
Please provide some use cases for this icon. Also be aware that it conflicts with multiple design guidelines we have in place, the 2px gap one in particular, see https://lucide.dev/guide/design/icon-design-guide

No use cases provided


[Wave 6: Workspace Chats] Submitting requests failing on a Collect policy

Steps to reproduce:

In NewDot, click into the [Contributors+] Expensify, Inc. workspace chat
Within the chat, click the + (not the green button one) then Request money
Complete the Amount
Click on Description and add the GH url
Click the green Request button

Expected result: It works.
Actual result: It fails.

Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~013c3c71f8a2924ec9
Upwork Job ID:<PHONE_NUMBER>953666560
Last Price Increase: 2023-11-17

Ah this is a Wave6 issue, I'll recruit from the wave6 team.

Sorry added Engineering by mistake, ignore.

here are the logs when trying to delete the request https://www.expensify.com/_devportal/tools/logSearch/#sort=asc&size=10000&query=request_id%3A"82759e04dbfdf3d9-BOM" AND timestamp%3A[2023-11-15T00%3A00 TO 2023-11-18T00%3A00]
The info is not correct, this error seems to happen after attempting to delete the request

Did some digging with @rushatgabhane in this thread and found out that the issue for him is that when he tries to create a new request, the code is using the approver account to load the workspace chat to notify them but they do not have access to the report, logs:
ReportUtils - Found notifiable participants ~~ participantAccountIDs: '[0: '4087623']'

That accountID is Kevin's and when we try to load the chat here it fails because he as an approver now does not have access to the workspace chat

We will try to move to Collect policy where there is only one approval

Ah it was Jason and Jenna handling that, I believe they have changed to Collect policy or at least changed the settings of the Control policy to one approver
@JmillsExpensify How is this looking? Are there still issues with the new set up?

Assigning @JmillsExpensify in case he missed @mountiny's question.

Gonna bump in slack


Add support for passing in Error objects as breadcrumbs

Closes #67

Coverage increased (+0.0%) when pulling 9d650ea4609efef1521fcfeccf57e98566a9a744 on error-breadcrumbs into cfeafb941b962aa3d46516816b8a14c3fe23ba8e on master.


Add deprecation message to v1 and v1beta1 module

This PR adds deprecation message to v1 and v1beta1 module, so that the CLI command that deprecates a module can use v1 API.

This is also one of the rare cases where buf lint fails, a fix should be up soon.


Add more devices

I have 2 Symo and 1 ohmpilot but in the setup you can only enter one IP - how can I add more devices

You need 1 instance per datamanager. If you have multiple datamanagers then you have to use for each ip an individual instance

I think it should also be possible to have 2 Symo's with 1 datalogger and getting all data for both Symo with the one datalogger. It's depend on the hardware configuration.

One instance shall always relate to 1 IP address. Multiple inverters with 1 datamanager are working properly. Therefore no change is planned


Create PopScope widget to detect the user leaves the current page

Use case
We often use WillPopScope widget so that we detect the user leaves the current page like this https://stackoverflow.com/questions/53038560/detect-if-the-user-leaves-the-current-page-in-flutter . However, somehow the widget have a bug https://github.com/flutter/flutter/issues/14203, and that usecase is not expected, according to the document below

Registers a callback to veto attempts by the user to dismiss the enclosing ModalRoute.

We just want to detect it on the pushed ModalRoute widget side without the veto.

Proposal

PopScope widget like WillPopScope widget
import 'package:flutter/widgets.dart';

class PopScope extends StatefulWidget {
  const PopScope({
    Key? key,
    required this.child,
    required this.onPop,
  })  : assert(child != null),
        super(key: key);

  final Widget child;

  final VoidCallback? onPop;

  @override
  State<PopScope> createState() => _PopScopeState();
}

class _PopScopeState extends State<PopScope> {
  ModalRoute<dynamic>? _route;

  @override
  void didChangeDependencies() {
    super.didChangeDependencies();
    if (widget.onPop != null) {
      _route?.removeScopedPopCallback(widget.onPop!);
    }
    _route = ModalRoute.of(context);
    if (widget.onPop != null) {
      _route?.addScopedPopCallback(widget.onPop!);
    }
  }

  @override
  void didUpdateWidget(PopScope oldWidget) {
    super.didUpdateWidget(oldWidget);
    assert(_route == ModalRoute.of(context));
    if (widget.onPop != oldWidget.onPop && _route != null) {
      if (oldWidget.onPop != null) {
        _route!.removeScopedPopCallback(oldWidget.onPop!);
      }
      if (widget.onPop != null) {
        _route!.addScopedPopCallback(widget.onPop!);
      }
    }
  }

  @override
  void dispose() {
    if (widget.onPop != null) {
      _route?.removeScopedPopCallback(widget.onPop!);
    }
    super.dispose();
  }

  @override
  Widget build(BuildContext context) => widget.child;
}

@takassh
Can you provide your use case in which WillPopScope doesn't work as expected ?

@darshankawar

We can't swipe to go back on iOS.
We can't detect it if we use pop() before

WillPopScope(
      onWillPop: () {
        return Future.value(true);
      },
      child: Scaffold(...

I created a draft PR
https://github.com/flutter/flutter/pull/96858

@takassh
Check this SO answer and see if it helps to resolve your case. https://stackoverflow.com/a/66227393

@darshankawar
Oh... It looks great. it helps me.
Sorry for inconvenience.
BTW, since we often use that widget, it is good that flutter provides the widget officially.
What do you think?

Glad to know the link helped.
Closing this as resolved.


Add a constant for the estimation of size in the UTxO

Alexey just found that it should be 160 instead of 168, since our estimation was based on an output with a single lovelace, and one that actually contains one Ada would actually have required more than one Ada to be valid.


Add ResultSelector

Closes #13

Codecov Report

Merging #17 into master will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master       #17   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            6         6
  Lines          126       157   +31
  Branches        18        25    +7
=========================================
+ Hits           126       157   +31

Impacted Files
Coverage Δ

src/awsstepfuncs/state_machine.py
100.00% <100.00%> (ø)

src/awsstepfuncs/task_state.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Extend xhr object with deep copy.

This allows to tap into upload.* events too.
$http.get('/blah', null, null, {xhr: {upload: {onprogress: function(event) { return true}}}});

Added this feature as uploadoption in 0.7.0

:+1:


allow multiple URLs for CF_TARGET

The CF_TARGET env variable is only allowed to have a single URL in it. These changes allow it to contain multiple URLs using comma as a delimiter. Example:
CF_TARGET: https://api.foo.com,https://api.foo.com:8080,https://api.foo.com:8443

Is there some information on this?
Would be a really helpful feature that we have already run into our own blockers over.

Since my pull request I've since learned there's alternative solution that should be used instead. See https://docs.pivotal.io/spring-cloud-services/1-2/config-server/writing-client-applications.html.
So this pull request probably go away if TRUST_CERTS is the more correct way of doing this.

Awesome! Thanks
On Dec 14, 2016 10:44 AM, "Winston Rast"<EMAIL_ADDRESS>wrote:

Since my pull request I've since learned there's alternative solution that
should be used instead. See https://docs.pivotal.io/
spring-cloud-services/1-2/config-server/writing-client-applications.html.
So this pull request probably go away if TRUST_CERTS is the more correct
way of doing this.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/pivotal-cf/cloudfoundry-certificate-truster/pull/2#issuecomment-267085640,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AG5JKrVUJgRUZVVCJXVt-5bScisgQkgWks5rIBzegaJpZM4Jgbdh
.

Sorry @wrast @mcnichol , I haven't set up watchers on this repo. For multiple certs use the TRUST_CERTS environment variable, documented in the 1.0.1.RELEASE README. This was going to be removed which is why it's not in master but we'll make sure it stays.


[flutter_markdown] Feature Request: Custom Widget for h1, h2 etc.

I just started to look into this package and wanted to implement a custom styling (Padding and underline that requires a stack) of h1 - h6. After briefly trying out to pass a custom MarkdownBuilder to the builder function of MarkdownBody like this {'h1': _H1Builder(), I realized that I'm not able to do this because h1 - h6 are defined in _kBlockTags. So I can't use a custom builder here.
Is there a way how I can achieve this behavior with the current implementation?
Proposal
My proposal would be to check if the tag is inside the builder map. If yes use the provided builder, if not use the custom one for builder tags e.g.

@domesticmouse Any idea how this could be achieved?

@creativecreatorormaybenot Nope. I'm just making sure that PRs have good test coverage and the changes pass the sniff test.
@tomkuschka If the problem is something is defined in an enumeration or similar I hereby give you the option of changing it to be a enumeration style class or something similar. Just make sure the tests pass, and your new code has test coverage. 😎

@domesticmouse Who is codeowner for flutter_markdown / who knows the implementation? Would be useful to get some insights.

I'm the code owner in as much as I make sure the build stays sane. To figure out who to chat to about which part of the codebase you can go digging in the original repo - https://github.com/flutter/flutter_markdown

@domesticmouse No, I cannot. I am aware that it was moved and I tried checking the blame, but the repo is not accessible to me.


time: cannot parse GMT timezones with colon-separated offsets

go version
go version go1.4 linux/amd64
uname -a
Linux daniel-linux 3.16.0-28-generic #38-Ubuntu SMP Fri Dec 12 17:37:40 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
This program shows my attempt to parse the time: http://play.golang.org/p/2-YXz2wdIx
I've traced it to src/time/format.go, which consumes any integers following the letters GMT.
The minutes (after the colon) then cause a parse failure.
Because the letters GMT are treated specially, I don't think it's possible to parse this time with the time package.

I apologize for not picking up this issue earlier, but it is now too late to fix for the 1.5 release: it would be unwise to change the internals of time.Parse and time.Format at this late date. I will mark it to be addressed early in the 1.6 release cycle.

Unfortunate. The special handling of GMT, which is needed for other things, makes it very difficult to know whether the :10:00 should be considered part of the time zone or left alone to match the layout.

A workaround I used in my project, in case anyone finds it useful - https://play.golang.org/p/EshUUdz-fz
in1 := "Mon, 4 Jul 2016 16:13:17 +0830 (GMT+08:30)"
in2 := "Mon, 4 Jul 2016 16:13:17 -0500 (GMT-0500)"

regGMTTimezone := regexp.MustCompile(`(?i)GMT([+-]\d{2}:?\d{2}]?)`)

out1 := regGMTTimezone.ReplaceAllString(in1, "$1")
out2 := regGMTTimezone.ReplaceAllString(in2, "$1")

fmt.Println(out1)
fmt.Println(out2)

f1 := "Mon, 2 Jan 2006 15:04:05 -0700 (-07:00)"
f2 := "Mon, 2 Jan 2006 15:04:05 -0700 (-0700)"

if t1, err := time.Parse(f1, out1); err == nil {
	fmt.Println(t1.UTC().Format(time.RFC822))
}
if t2, err := time.Parse(f2, out2); err == nil {
	fmt.Println(t2.UTC().Format(time.RFC822))
}

outputs:
Mon, 4 Jul 2016 16:13:17 +0830 (+08:30)
Mon, 4 Jul 2016 16:13:17 -0500 (-0500)
04 Jul 16 07:43 UTC
04 Jul 16 21:13 UTC

The regex will only affect timezones given in GMT, it won't affect say "UTC+08:00".


[Traefik Plugin Catalog] Plugin Analyzer has detected a problem.

The plugin was not imported into Traefik Plugin Catalog.
Cause:
failed to run the plugin with Yaegi: failed to create a new plugin instance: invalid CIDR address: <IP_ADDRESS>/8║<IP_ADDRESS>/8║<IP_ADDRESS>/8

Traefik Plugin Analyzer will restart when you will close this issue.
If you believe there is a problem with the Analyzer or this issue is the result of a false positive, please contact us.

Closing this issue to force traefik validator to re-run


Pion Mediadevices example

Description
This example demonstrates how you can read a camera using the Pion Mediadevice library and publish the stream to the ION-SFU server.

I got some error when i try on my mac.
go build examples/pub-mediadevice/main.go      15:49:23
# github.com/pion/mediadevices/pkg/avfoundation
In file included from /Volumes/vm/workspace/go/pkg/mod/github.com/pion/mediadevices@v0.0.0-20200911163948-70f7360b92d3/pkg/avfoundation/avfoundation_darwin.go:7:
./AVFoundationBind/AVFoundationBind.m:179:9: error: use of undeclared identifier 'AVCaptureDeviceTypeExternalUnknown'
        AVCaptureDeviceTypeExternalUnknown
        ^
./AVFoundationBind/AVFoundationBind.m:177:9: error: 'AVCaptureDeviceTypeBuiltInWideAngleCamera' is unavailable: not available on macOS
        AVCaptureDeviceTypeBuiltInWideAngleCamera,
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:441:38: note: 'AVCaptureDeviceTypeBuiltInWideAngleCamera' has been explicitly marked unavailable here
AVF_EXPORT AVCaptureDeviceType const AVCaptureDeviceTypeBuiltInWideAngleCamera API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(macos) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
                                     ^
In file included from /Volumes/vm/workspace/go/pkg/mod/github.com/pion/mediadevices@v0.0.0-20200911163948-70f7360b92d3/pkg/avfoundation/avfoundation_darwin.go:7:
./AVFoundationBind/AVFoundationBind.m:178:9: error: 'AVCaptureDeviceTypeBuiltInMicrophone' is unavailable: not available on macOS
        AVCaptureDeviceTypeBuiltInMicrophone,
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:435:38: note: 'AVCaptureDeviceTypeBuiltInMicrophone' has been explicitly marked unavailable here
AVF_EXPORT AVCaptureDeviceType const AVCaptureDeviceTypeBuiltInMicrophone API_AVAILABLE(ios(10.0)) API_UNAVAILABLE(macos) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
                                     ^
In file included from /Volumes/vm/workspace/go/pkg/mod/github.com/pion/mediadevices@v0.0.0-20200911163948-70f7360b92d3/pkg/avfoundation/avfoundation_darwin.go:7:
./AVFoundationBind/AVFoundationBind.m:181:5: error: 'AVCaptureDeviceDiscoverySession' is unavailable: not available on macOS
    AVCaptureDeviceDiscoverySession *refSession = [AVCaptureDeviceDiscoverySession
    ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1711:12: note: 'AVCaptureDeviceDiscoverySession' has been explicitly marked unavailable here
@interface AVCaptureDeviceDiscoverySession : NSObject
           ^
In file included from /Volumes/vm/workspace/go/pkg/mod/github.com/pion/mediadevices@v0.0.0-20200911163948-70f7360b92d3/pkg/avfoundation/avfoundation_darwin.go:7:
./AVFoundationBind/AVFoundationBind.m:182:9: error: 'AVCaptureDeviceDiscoverySession' is unavailable: not available on macOS
        discoverySessionWithDeviceTypes: refAllTypes
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVCaptureDevice.h:1711:12: note: 'AVCaptureDeviceDiscoverySession' has been explicitly marked unavailable here
@interface AVCaptureDeviceDiscoverySession : NSObject

merged in #155! thanks!


feat: add .gitignore instead of readme

:tada: This PR is included in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Vendor asset management

Considering using https://rails-assets.org for asset management

done!

This isn't done.


Fix infinite loop in manage access widget

Assign to @nicolaasmatthijs for review

@nicolaasmatthijs I think we should get this merged ASAP. Updated the title to hopefully reflect importance

@sathomas feel free to pick this up and review if you get here first. I had only assigned it to Nico because he had made a comment about it in Slack.

+1 for merging. I can review and merge if you like

guess we're thinking alike :)

Verified and merged

Sorry, I completely missed this. PR looks good though.


No alert pop-up msg is coming if we are creating duplicate Dispatcher. (Company Panel)

Describe the bug
If we creating a duplicate Dispatcher with same values of the earlier Dispatcher then No alert pop-up msg is coming if we are creating duplicate Dispatcher.
To Reproduce
Steps to reproduce the behavior:
1.Enter in the address bar-pulseptt.com
2.Login With Id and Password.
UserName-pulse123
Password-123456789
3.Click On 'Create User' and Create Dispatcher.
4. Now, with same values create another Dispatcher.
Expected behavior
alert pop-up msg should come if we are creating duplicate Dispatcher.
Desktop (please complete the following information):
OS: Windows 10
Browser: Version 100.0.4896.60 (Official Build) (64-bit)
Version: [0.2.10]

For every user we create, this pop-up we get


[Event Change Request] table 5621 "FA Journal Line" - OnAfterCreateDim

Describe the request
Could you please update the event OnAfterCreateDim in table 5621 "FA Journal Line" to include some additional parameters?
    procedure CreateDim(DefaultDimSource: List of [Dictionary of [Integer, Code[20]]])
    var
        IsHandled: Boolean;
    begin
        IsHandled := false;
        OnBeforeCreateDim(Rec, IsHandled, CurrFieldNo);
        if IsHandled then
            exit;

        "Shortcut Dimension 1 Code" := '';
        "Shortcut Dimension 2 Code" := '';
        OldDimSetID := Rec."Dimension Set ID"; //CHANGE
        "Dimension Set ID" :=
          DimMgt.GetRecDefaultDimID(
            Rec, CurrFieldNo, DefaultDimSource, "Source Code", "Shortcut Dimension 1 Code", "Shortcut Dimension 2 Code", 0, 0);

        //+CHANGE
        //-OnAfterCreateDim(Rec, CurrFieldNo);
        OnAfterCreateDim(Rec, CurrFieldNo, xRec, OldDimSetID, DefaultDimSource);
        //-CHANGE
    end;

[IntegrationEvent(false, false)]
//+Change
//-local procedure OnAfterCreateDim(var FAJournalLine: Record "FA Journal LineFAJournalLine: Record "FA Journal Line"JobJournalLine: Record "Job Journal Line"; CurrFieldNo: Integer; xFAJournalLine: Record "FA Journal Line"; OldDimSetID: Integer; DefaultDimSource: List of [Dictionary of [Integer, Code[20]]])
//-Change
begin
end;

Additional context
We already have those additional parameters in similiar events in table 36 "Sales Header".
With the additional parameters we're able to restore some Dimensions, that are manually entered for specific dimensions.
Those values are cleared by recreating the DimensionsSetID from the DefaultDimSource List.Internal work item: AB#495330

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 14917.


Feat: Enhance Hamburger Menu to Toggle to 'X' on Mobile

Describe the feature
Currently, the hamburger menu icon on mobile screens does not change when the navigation menu drops down. This can lead to confusion for users, as they may not realize that the menu is open or that they can close it.
When the hamburger menu icon is clicked and the navigation menu is expanded, the hamburger icon should transition to an "X", indicating that users can click it again to close the menu.
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a gssoc-24-extd contributor
[X] I want to work on this issue

assigned @MutiatBash

Solved via #83


chore(source): Add docker support

Looks good to me.

docker-compose up -d
[+] Running 0/1
 - webapi Error                                                                                3.0s
[+] Building 1.3s (22/27)
 => [internal] load build definition from Dockerfile                                                         0.0s
 => => transferring dockerfile: 32B                                                                          0.0s
 => [internal] load .dockerignore                                                                            0.0s
 => => transferring context: 2B                                                                              0.0s
 => [internal] load metadata for mcr.microsoft.com/dotnet/aspnet:6.0                                         0.5s
 => [internal] load metadata for mcr.microsoft.com/dotnet/sdk:6.0                                            0.5s
 => [build  1/17] FROM mcr.microsoft.com/dotnet/sdk:6.0@sha256:ce977e0ce71ce4aeecde3917f3abf0dcffcf952e9ca1  0.0s
 => [internal] load build context                                                                            0.2s
 => => transferring context: 81.60kB                                                                         0.1s
 => [base 1/2] FROM mcr.microsoft.com/dotnet/aspnet:6.0@sha256:af97531c4f335ce9a039659b3ce4436a558494257d55  0.0s
 => CACHED [base 2/2] WORKDIR /app                                                                           0.0s
 => CACHED [final 1/2] WORKDIR /app                                                                          0.0s
 => CACHED [build  2/17] WORKDIR /src                                                                        0.0s
 => CACHED [build  3/17] COPY [src/rentACar/WebAPI/WebAPI.csproj, WebAPI/]                                   0.0s
 => CACHED [build  4/17] COPY [src/corePackages/Core.Mailing/Core.Mailing.csproj, Core.Mailing/]             0.0s
 => CACHED [build  5/17] COPY [src/rentACar/Application/Application.csproj, Application/]                    0.0s
 => CACHED [build  6/17] COPY [src/corePackages/Core.Application/Core.Application.csproj, Core.Application/  0.0s
 => CACHED [build  7/17] COPY [src/corePackages/Core.CrossCuttingConcers/Core.CrossCuttingConcerns.csproj,   0.0s
 => CACHED [build  8/17] COPY [src/corePackages/Core.Security/Core.Security.csproj, Core.Security/]          0.0s
 => CACHED [build  9/17] COPY [src/corePackages/Core.Persistence/Core.Persistence.csproj, Core.Persistence/  0.0s
 => CACHED [build 10/17] COPY [src/corePackages/Core.ElasticSearch/Core.ElasticSearch.csproj, Core.ElasticS  0.0s
 => CACHED [build 11/17] COPY [src/rentACar/Domain/Domain.csproj, Domain/]                                   0.0s
 => CACHED [build 12/17] COPY [src/rentACar/Infrastructure/Infrastructure.csproj, Infrastructure/]           0.0s
 => CACHED [build 13/17] COPY [src/rentACar/Persistence/Persistence.csproj, Persistence/]                    0.0s
 => ERROR [build 14/17] RUN dotnet restore "src/rentACar/WebAPI/WebAPI.csproj"                               0.6s
------
 > [build 14/17] RUN dotnet restore "src/rentACar/WebAPI/WebAPI.csproj":
#0 0.584 MSBUILD : error MSB1009: Project file does not exist.
#0 0.584 Switch: src/rentACar/WebAPI/WebAPI.csproj
------
failed to solve: executor failed running [/bin/sh -c dotnet restore "src/rentACar/WebAPI/WebAPI.csproj"]: exit code: 1

Pull request timed out.


By some some reason class mark as not implemented interface but build is ok

By some some reason class mark as not implemented interfaces
i.e. writes not implemented  setLineId() getLineId() (interface WithLineNumber), but build is OK.

Intellijidea 2018.1, 2018.2
I made invalidate cache and reinstall plugin
Lombok 1.16.20, maven, multi module project.
Colleagues project with same settings are ok.
Can provide some additional info.

I have no idea what the problem is. It sounds like you should file this bug with the lombok-intellij-plugin project, though.


Add reusable workflow for windows CI

setup-ros has hardcoded python 3.8, as it is the default version acc. to REP-2000 for jazzy
whatever I tried, python 3.12 is selected by action-ros-ci
action-ros-ci uses cmd.exe -> Git\bin\bash.exe, which gives the correct version in the first step, but
ament_cmake is always finding the newest python version -> dependencies are not installed

See also https://github.com/ros2/ros2/issues/1430#issuecomment-1634580503
--> the only working solution I've found is to remove the other python versions first.

It would have been so easy :see_no_evil:
  - uses: actions/setup-python@v5
    with:
      python-version: '3.8'


typo document-modification-error

Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

2.0.0 changed to JSON


what's the mean of "alternative optimization" for the result table

Hello,
I was stuck in the meaning of "alternative optimization" for the result table, is that mean "another choice of optimization" OR "5-Step Alternating Training" training method as shown in the paper?

It is for "5-Step Alternating Training"


[DOCS] Add new features

[x] beam alignment
[x] measurement tools

Added new page in docs called "Features". can be expanded in the future


Can't upgrade tfbridge to v3.33.0 or higher due to azcore conflict

What happened?
This is a follow-up from #192 for which a workaround was added in #196. However, we are currently blocked from taking a new version of the bridge because updating pulumi-terraform-bridge to v3.33.0 causes a build failure:
github.com/hashicorp/terraform-provider-vault/internal/provider
../../../go/pkg/mod/github.com/pulumi/terraform-provider-vault@v1.9.1-0.20221013032412-e762e637392b/internal/provider/auth_azure.go:185:9: tOpts.TenantID undefined (type policy.TokenRequestOptions has no field or method TenantID)
# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:19:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:62:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:105:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:148:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:191:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:234:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:277:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:320:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:363:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:406:13: undefined: azcore.Poller
../../../go/pkg/mod/github.com/!azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources@v0.3.1/zz_generated_pollers.go:406:13: too many errors

The underlying issue seems to be because of these updates (going from tfbridge 3.32.0 to 3.33.0):
go: downloading github.com/pulumi/pulumi-terraform-bridge/v3 v3.33.0
go: upgraded cloud.google.com/go v0.102.1 => v0.103.0
go: upgraded github.com/Azure/azure-sdk-for-go v61.4.0+incompatible => v66.0.0+incompatible
go: upgraded github.com/Azure/azure-sdk-for-go/sdk/azcore v0.22.0 => v1.1.1
go: upgraded github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.13.2 => v1.0.0
go: upgraded github.com/Azure/azure-sdk-for-go/sdk/internal v0.9.1 => v1.0.0
go: upgraded github.com/Azure/go-autorest/autorest v0.11.24 => v0.11.28
go: upgraded github.com/Azure/go-autorest/autorest/adal v0.9.18 => v0.9.21
go: upgraded github.com/Azure/go-autorest/autorest/azure/cli v0.4.5 => v0.4.6
go: upgraded github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a => v0.0.0-20210307081110-f21760c49a8d

This is because of the bump of pulumi/pkg etc. to v3.44.2 which brought in new versions of the above package in https://github.com/pulumi/pulumi/pull/10900/.
Vault terraform provider is still using the older versions of the above libraries which causes the conflict.
Steps to reproduce
cd provider ;  go get -u github.com/pulumi/pulumi-terraform-bridge/v3; make build

Expected Behavior
Build succeeds
Actual Behavior
Build fails
Output of pulumi about
No response
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

encountered this in pulumi-consul as well, but for the tfexec package

I've bumped into this today again and tried a few resolutions.
Unfortunately upstream provider is very much behind the latest Azure SDKs.
-	github.com/Azure/azure-sdk-for-go/sdk/azcore v0.22.0
-	github.com/Azure/azure-sdk-for-go/sdk/azidentity v0.13.2
-	github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v0.3.1
-	github.com/Azure/go-autorest/autorest v0.11.24
+	github.com/Azure/azure-sdk-for-go/sdk/azcore v1.7.2
+	github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.3.1
+	github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1

I've tried upgrading the provider on our end, that is possible, azureAccessCredentialsDataSourceRead function needs to be rewritten against new Azure SDK APIs, that looked like a day of work with testing, not entirely trivial.
The other way to solve this is if we could get a form of https://github.com/pulumi/pulumi/issues/12139
The source of the conflict now is a diamond dependency where we are inheriting one version of azcore through upstream, and another version of azcore through a transitive dependency to pulumi filestate,  which is coupled to pulumi/pkg dependency, but is not really in use for this project. Breaking that cycle somehow so that bridge and bridged providers do not pull in ascore dependency would pave a way forward and be generally beneficial.


[LiveComponent] Feature Request: Make #[LiveListener] repeatable

Hey folks! Wouldn't it make sense to make the #[LiveListener] attribute repeatable? Let's say there is a method that needs to listen to different events. Would be great if I'd do like so:
#[LiveListener(eventName: 'rocket:launched')]
#[LiveListener(eventName: 'rocket:landed')]
public function foo(){
    // do something...
}

What do you think? 😃

@barbieswimcrew you can try with the PR #1343 if you want :-)

@smnandre that is gorgeous! really looking forward to this being merged :-)

It's merged @barbieswimcrew :)


PHPDoc should have a dolar before the property name

Based on https://docs.phpdoc.org/latest/references/phpdoc/tags/var.html

Maybe properties should have properly set the data types of PHP, integer -> int, number -> float, too?

@vishalinfyom ?


Public Repositories cannot be seen on dashboard without logging in (works on 3.4.3, fails on 3.5.1)

What happened?
https://dzikoysk.medium.com/reposilite-3-x-setup-your-own-maven-repository-manager-in-5-minutes-e72cc8b67bc3

Followed this guide and pushed an artifact to the release repository on my instance.
Visited the dashboard, but couldn't see the files
Logged in and was able to see them
Double checked if the releases repository was marked public

Downloaded the 3.4.3 jar and then ran it, I was able to see those files in the dashboard
Reposilite version
3.x
Relevant log output
No response

Indeed, it looks like a bug with a new directory emulator. You can use 3.5.0 and it should be just fine, thanks for reporting this.

JavaScript moment

It'll be fixed in 3.5.2, I'll try to release it later today


Configurable request matching

Every request is matched against a request previously recorded to determine the associated response. This match is currently done using request's URL but to accommodate every test-case this should be configurable. An example where this can be helpful are cases where requests are non-deterministic, e.g. query includes a timestamp parameter.
The following attributes can be combined and used to configure this match:

Method
URL
Path
Query
Headers
Body

In addition to this attributes and to promote a fine-tuning configuration it should be possible provide a custom matcher with a signature similar to this one:
func match(aRequest: Request, anotherRequest: Request) -> Bool

Should we address the idea of an array with pre-defined responses on this issue?

I think we can introduce that behaviour when the turntable is configured with an empty array of attributes, since there is not a single attribute to match we can use the pre-defined responses in order, first request receives first response and so on.
What do you think?

We can make it a separated piece of work (at least I put it like this in the RoadMap).


Parameter behavior changed

The behavior of handling optional parameters has changed from Ziggy 0.6.2 to 0.6.8 (I could not install any version in-between because of laravel version constraint) and the newest version is not working for me.
It always takes the "id" query parameter as route-parameter which it didn't do in my previous installed version (0.6.2). Do I have to change some configuration to make this work again?
Expected Behavior
In chrome dev-tools:
> route('myRoute', { bookId: 1819, id: 123456 }).toString()
"https://my.site/data/1819/text?id=123456"
> route('myRoute', { bookId: 1819 }).toString()
"https://my.site/data/1819/text"

(with Ziggy 0.6.2)
Current Behavior
In chrome dev-tools:
> route('myRoute', { bookId: 1819, id: 123456 }).toString()
"https://my.site/data/123456/text"
> route('myRoute', { bookId: 1819 }).toString()
"https://my.site/data/1819/text"

(since Ziggy 0.6.8)
For bug reports only please provide
Currently installed Laravel version:
5.5.44
Currently installed Ziggy version
0.6.9
Example route from your Laravel Routes file.
Route::group(array('prefix' => 'data'), function () {
    Route::group(array('prefix' => '{bookId}'), function() {
        Route::post('text', array('as' => 'myRoute', 'uses' => 'TextController@createSave'));
    });
});

Ziggy 0.6.2:
> route('myRoute', { bookId: 1819, id: 123456 })
	Router {name: "myRoute", absolute: undefined, numericParamIndices: false, urlParams: {…}, queryParams: {…}}
	absolute: undefined
	name: "myRoute"
	numericParamIndices: false
	queryParams: {bookId: 1819, id: 123456}
	urlParams: {bookId: 1819, id: 123456}
	__proto__: String

Ziggy 0.6.8:
> route('myRoute', { bookId: 1819, id: 123456 })
	Router {name: "myRoute", absolute: undefined, ziggy: {…}, template: "https://my.site/data/{bookId}/text", numericParamIndices: true, …}
	absolute: undefined
	name: "myRoute"
	numericParamIndices: true
	queryParams: {0: 123456}
	template: "https://my.site/data/{bookId}/text"
	urlParams: {0: 123456}
	ziggy: {namedRoutes: {…}, baseUrl: "https://my.site/", baseProtocol: "https", baseDomain: "my.site", basePort: false, …}
	__proto__: String

Heads up, I've been working on debugging this for a few hours. Its very annoying, but a fix should be coming soon

Pretty sure this is because as of 0.6.7 we're specifically looking for an id key on the object passed in:
https://github.com/tightenco/ziggy/blob/master/src/js/route.js#L24-L34


Update node serializer to accept tags.

Purpose
Tags are a model now, not just a ListField. This updates the node serializer to allow creation and update of nodes in the v2 API with get_or_create of tags.
Changes

Side effects

Ticket

Merging. Verified on staging3 that it works. All tests past. lgtm


Add License for HWC

Android CI has started Engineering Build for this issue ,Please check the linked Tracked-On issue/Android CI Web  for more details.

Android CI has completed Engineering Build for this issue, build is SUCCESS.To merge the changes please click on APPROVE FOR MERGE button in Android CI WEB


mqin.inutil.info not resolving

Hello,
I installed latest 0.1.13 version from the Palette. Generating the key works fine as well as sending messages.
However the receiver stays disconnected, and after checking the source code, I realized that the MQTT/WSS the node is trying to connect to (mqin.inutil.info) is not being resolved by DNS:
nslookup mqin.inutil.info
Server:		<IP_ADDRESS>
Address:	<IP_ADDRESS>#53
** server can't find mqin.inutil.info: NXDOMAIN
Is that an issue or has the service been abandoned, which makes this node deprecated?
Regards,
Kickouille

Same story here... whin-receive node stays "disconnected"...
Btw, whin-confirm node is not working neither.

Same story here to... whin-receive node stays "disconnected"...
Btw, whin-confirm node is not working neither.

Same story here to... whin-receive node stays "disconnected"...
Btw, whin-confirm node is not working neither.

@MiMoertel , @luisfpadovani , @kickouille , @Seba200086
can you please check if it works for you now?. We had an issue on the cluster last May 2nd, it was a local holiday, and we did not notice it till the next day.
BTW: next time, you can check if any service is failing here: https://status.inutil.info/
(if you have any issue, pls reopen the issue).

@lu4t I need to report that whin-receive node still have status "disconnected"

I'll have a look. Thx!

we need to work on this @Seba200086
You're right, the broker is dropping connections; essentially there're too many people connected and the CPU is exhausted. For some users it is working though.
When we tweak the config I will close the issue to let you know :)

OK, great. Thank you in advance!

update to node-red-contrib-whin 1.14 and it should work now

Thank @lu4t


[Check-in] Introduce new attributes to replace the deprecated ones

Summary
This PR introduces the following changes:

Add distinguishedName in the deprecated attributes table of the SAML migration guide
Remove eduPersonScopedAffiliation attribute from "Affiliation" attribute description
Add description for "Subject DN" attribute
Add description for "Issuer DN" attribute
Update Claims/Scopes table
Update Attribute Descriptions

So it seems that due to #589 we invited a new checker to join the party, welcome https://github.com/editorconfig-checker/editorconfig-checker :)
That said I think we may have to just disable it for markdown files, or at least disabling the part on indentation check, as what is currently reported as error, seems legitimate :/
So we can likely ignore it for this PR, we will address this conf in a separate PR.

I've opened #594 that should help.


Can´t import proton private key

Dear ledger team,
I cannot import my Proton Private key. When I digit my 51 characters the button + Import Account is still unavaliable.
There´s no issue with the key. I have tested and it´s working properly.
Please, send my any solution. I have to do all this process to use my assets with Ledger Wallet.
Thanks

From the looks of it, it's not recognizing it as a key - otherwise it would say "account not found".
Here's something to try:

Click the gear icon in the upper right
Change the 2nd option to "Show Advanced Options"
A Tools section will appear in the left sidebar, click that
Go into the Key Converter or Key Validator sections, and enter your private key there
See whether or not it recognizing what you're entering as a private key

By any chance did you change the API server it was using for Proton?
This would have been done through the Manage Blockchains area, by editing the Proton chain.

What do you mean?
Em sáb., 16 de out. de 2021 às 13:12, Aaron Cox @.***>
escreveu:

By any chance did you change the API server it was using for Proton?
This would have been done through the Manage Blockchains area, by editing
the Proton chain.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/greymass/anchor/issues/1194#issuecomment-944943609,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWBORMGR2XMPZM3T24FCQ23UHGP6NANCNFSM5F5XO7FA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

--
Atenciosamente,
Eduardo Menezes.

I also have the same error. Both standard and legacy key formats were tested.


AMBARI-24254 - Refactor renaming service ambari infra to ambari infrasolr when upgrading to ambari 2.7.0

What changes were proposed in this pull request?
same as #1693

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/2997/
Test FAILed.
Test FAILured.

retest this please

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/3000/
Test PASSed.


Show Mouse Coordinates sample throws Exception

On initial page load the Mapping > Show Mouse coordinates sample throws an unhanded exception until the MapView has finished initialization.

@katydalton Could you QA this please?
https://github.com/Esri/arcgis-runtime-samples-dotnet/pull/80

@macca400 - Looks good for merge. Sorry for the delay; was out of town. Seems like a better way to do the initial null check, so does this need to happen on other samples eventually?


Looking up manifest by ARK

Fixes #965

FWIW, I like this pattern more that what I had in mind. I was thinking it would be a route something like:
/resolver?ark=ark:%2F%2F{naan}%2F{noid}
which would give you a json body something like:
{
  "ark" : "ark://{naan}/{noid}",
  "iiif" : "https://..."
}

but unless there are other keys we might want to include, better to just use HTTP as intended.

👍  I think this will make it easy for OL to use: no need to encode the ARK, just append it to the base URL of the lookup service, and either get the manifest or a 404 back.

I agree, and scoping the route to /iiif makes it clear. If we ever wanted to resolve PUDL identifiers, we could do /pudl, etc.

Looks good. We'll have to see if UV can follow the redirect, but if it can't we can just parse it ourselves.


CSIP20 - weird sentence

Review the sentence:

If used the two values “SUPERSEDED” or “CURRENT” from the vocabulary is used.

The values has been removed and only the vocabulary is called since there might be changes made.


misc: Specify unsupported DataType in error

Hello!
Thanks

Codecov Report

Merging #3 (782218c) into cubestore-2021-01-02 (dfb783f) will decrease coverage by 0.00%.
The diff coverage is 0.00%.

@@                   Coverage Diff                    @@
##           cubestore-2021-01-02       #3      +/-   ##
========================================================
- Coverage                 81.28%   81.28%   -0.01%
========================================================
  Files                       208      208
  Lines                     52521    52523       +2
========================================================
- Hits                      42694    42693       -1
- Misses                     9827     9830       +3

Impacted Files
Coverage Δ

rust/arrow/src/datatypes.rs
72.61% <0.00%> (-0.17%)
:arrow_down:

...ust/datafusion/src/physical_plan/hash_aggregate.rs
79.40% <0.00%> (ø)

rust/datafusion/src/physical_plan/hash_join.rs
87.56% <0.00%> (ø)

rust/parquet/src/encodings/encoding.rs
95.24% <0.00%> (-0.20%)
: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 dfb783f...f2faac7. Read the comment docs.

Codecov Report

Merging #3 (782218c) into cubestore-2021-01-02 (dfb783f) will decrease coverage by 0.00%.
The diff coverage is 0.00%.

@@                   Coverage Diff                    @@
##           cubestore-2021-01-02       #3      +/-   ##
========================================================
- Coverage                 81.28%   81.28%   -0.01%
========================================================
  Files                       208      208
  Lines                     52521    52523       +2
========================================================
- Hits                      42694    42693       -1
- Misses                     9827     9830       +3

Impacted Files
Coverage Δ

rust/arrow/src/datatypes.rs
72.61% <0.00%> (-0.17%)
:arrow_down:

...ust/datafusion/src/physical_plan/hash_aggregate.rs
79.40% <0.00%> (ø)

rust/datafusion/src/physical_plan/hash_join.rs
87.56% <0.00%> (ø)

rust/parquet/src/encodings/encoding.rs
95.24% <0.00%> (-0.20%)
: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 dfb783f...f2faac7. Read the comment docs.


python-ujson missing on Trusty i386 ("No module named ujson")

While installing Zulip on a Ubuntu 14.04 Server VM, scripts/setup/install gave the following error (buried in the middle of the output; it was willing to continue in spite of this):
Error: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install python-ujson' returned 100: Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package python-ujson

Error: /Stage[main]/Zulip::App_frontend/Zulip::App_frontend::Safepackage[python-ujson]/Package[python-ujson]/ensure: change from purged to present failed: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install python-ujson' returned 100: Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package python-ujson

When I tried to run initialize-database, it gave the following output:
++ dirname /home/zulip/deployments/current/scripts/setup/initialize-database
+ cd /home/zulip/deployments/current/scripts/setup/../..
+ python manage.py checkconfig
Traceback (most recent call last):
  File "manage.py", line 21, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python2.7/dist-packages/django/core/management/__init__.py", line 312, in execute
    django.setup()
  File "/usr/lib/python2.7/dist-packages/django/__init__.py", line 17, in setup
    configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
  File "/usr/lib/python2.7/dist-packages/django/utils/log.py", line 86, in configure_logging
    logging_config_func(logging_settings)
  File "/usr/lib/python2.7/logging/config.py", line 794, in dictConfig
    dictConfigClass(config).configure()
  File "/usr/lib/python2.7/logging/config.py", line 576, in configure
    '%r: %s' % (name, e))
ValueError: Unable to configure handler 'zulip_admins': Cannot resolve 'zerver.handlers.AdminZulipHandler': No module named ujson

This was easily fixed by running apt-get install python-pip libpython2.7-dev; pip install ujson, but it would obviously be better if the python-ujson package were properly available. It might also be better if the setup script were more thorough about error checking (or if Zulip were a traditional .deb package that could declare its own dependencies - but that's a whole other can of worms).

The python-ujson package is available in the zulip PPA that is setup at the top of scripts/lib/install, so the actual problem here is that somehow that PPA wasn't added correctly.  Can you post what happened at the start of the installation process (should be in /var/log/zulip/install.log if you don't have the terminal history handy)

+ wget -O /root/zulip-ppa.asc https://zulip.com/dist/keys/zulip-ppa.asc
--2015-10-07 07:45:23--  https://zulip.com/dist/keys/zulip-ppa.asc
Resolving zulip.com (zulip.com)... <IP_ADDRESS>
Connecting to zulip.com (zulip.com)|<IP_ADDRESS>|:443... connected.

I don't think that python-ujson is being properly included in the PPA. See http://ppa.launchpad.net/tabbott/zulip/ubuntu/dists/trusty/main/binary-i386/Packages, or here's what my system thinks is available from the PPA (based on here):
root@ubuntu:/var/lib/apt/lists# ls /etc/apt/sources.list.d
zulip.list
root@ubuntu:/var/lib/apt/lists# cat /etc/apt/sources.list.d/zulip.list
# zulip
deb http://ppa.launchpad.net/tabbott/zulip/ubuntu trusty main
deb-src http://ppa.launchpad.net/tabbott/zulip/ubuntu trusty main
root@ubuntu:/var/lib/apt/lists# awk '$1 == "Package:" { print $2 }' /var/lib/apt/lists/*zulip*Packages
python-django
python-flup
python-django-doc
python-django-auth-ldap
python-wal-e
python-django-auth-ldap-doc
python-pyjwt
python-django-bitfield
python-django-guardian
python-django-guardian-doc
python-django-common
python-diff-match-patch
python-sourcemap
postgresql-9.3-tsearch-extras

Ahh I see the issue.  You're running on i386 and the python-ujson build in the PPA failed for amd64.

If you want to help fix this, can you try building the python-ujson package, e.g. via e.g.:
apt-get source python-ujson
cd ujson-VERSION
debuild -b
And figure out why it doesn't build on trusty i386 -- the PPA system didn't report a build log showing the cause for the failure.

It looks like there are a couple of issues.
First, Ubuntu's Python packages have a bug that caused problems with me installing the build dependencies. I'm not familiar with the PPA system, so I don't know if this is causing problems or not.
Second, the unit tests fail, due to floating point rounding issues:
F.......................F.................................................................................
======================================================================
FAIL: test_decimalDecodeTest (__main__.UltraJSONTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/tests.py", line 93, in test_decimalDecodeTest
    self.assertNotEqual(sut, decoded)
AssertionError: {u'a': 4.56} == {u'a': 4.56}

======================================================================
FAIL: test_decodeFloatingPointAdditionalTests (__main__.UltraJSONTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/tests.py", line 912, in test_decodeFloatingPointAdditionalTests
    self.assertEquals(-1.7893, ujson.loads("-1.7893"))
AssertionError: -1.7893 != -1.7893000000000001

----------------------------------------------------------------------
Ran 106 tests in 0.568s

This is apparently a known issue. Disabling tests completely is probably overkill, so I guess the best solution would be to patch the test suite to either skip those tests or test for approximate instead of exact equality.

Please let me know when / if there is a fix or workaround for this different to the suggested apt-get install python-pip libpython2.7-dev; pip install ujson.
Not sure if I want to install pip etc for just that one package due to all the dependencies it pulls in.
Cheers

I don't have a better workaround than that; hopefully upstream will fix the issue with ujson on i386 soon.

@joshkel if you post the patch to disable those two tests, I'd be up for rebuilding the zulip PPA ujson packages with that patch applied.

I submitted a PR to ultrajson at https://github.com/esnme/ultrajson/pull/191 to fix the two failing tests.
If you'd like me to do it up as a proper Debian / Ubuntu package update (with a debian/patches file and updates to debian/patches/series and debian/changelog), I should have time to do so tomorrow.

@joshkel that would be awesome!

I put together an updated set of debian packaging files and uploaded them to Dropbox. Sorry for the delay.

Great, thanks @joshkel !  I've uploaded your package to the Zulip PPA and it built fine, so this is now resolved.
@dertobes you should no longer need that workaround at this point.

pip install ujson
its work in python 3