SharedPreferences should have better singleton instantiation

As discussed in this StackOverflow question, the getInstance() method in the SharedPreferences plugin is not reliable when called from both a microtask and regular code. The problem seems to be that _instance == null will be true until   await _getSharedPreferencesMap(); has returned, and therefor it's possible to get two different instances from this singleton factory.
static Future<SharedPreferences> getInstance() async {
  if (_instance == null) {
    final Map<String, Object> preferencesMap =
        await _getSharedPreferencesMap();
    _instance = SharedPreferences._(preferencesMap);
  }
  return _instance;
}

Steps to Reproduce
@override
void initState() {
  initAsync();
  super.initState();
}

initAsync() async {
  scheduleMicrotask(() async {
    print("microtask: START ");
    TestClass microtask = await TestClass.getInstance("microtask");
    print("microtask: FINISH (instance: ${microtask.hashCode})");
  });

  print("initAsync_1: START");
  TestClass initAsync_1 = await TestClass.getInstance("initAsync_1");
  print("initAsync_1: FINISH (instance: ${initAsync_1.hashCode})");

  Future.delayed(Duration(seconds: 3)).then((_) async {
    print("initAsync_2: START");
    TestClass initAsync_2 = await TestClass.getInstance("initAsync_2");
    print("initAsync_2: FINISH (instance: ${initAsync_2.hashCode})");
  });
}

class TestClass {
  static TestClass _instance;
  static Future<TestClass> getInstance(String call) async {
    if (_instance == null) {
      print("$call: without instance before");
      await Future.delayed(Duration(seconds: 3));
      _instance = TestClass();
      print("$call: without instance after");
    } else {
      print("$call: with instance");
    }
    return _instance;
  }
}

Logs
initAsync_1: START
initAsync_1: without instance before
microtask: START
microtask: without instance before
initAsync_1: without instance after
initAsync_1: FINISH (instance: 674207757)
microtask: without instance after
microtask: FINISH (instance:<PHONE_NUMBER>)
initAsync_2: START
initAsync_2: with instance
initAsync_2: FINISH (instance:<PHONE_NUMBER>)

Possible solution
One possible solution would be to use a Completer:
static Future<SharedPreferences> getInstance() async {
    if( _initialization != null && !_initialization.isCompleted ) {
        await _initialization.future;
    }

    if (_instance == null) {
        _initialization = Completer<void>();

        try {
            final Map<String, Object> preferencesMap =
            await _getSharedPreferencesMap();
            _instance = SharedPreferences._(preferencesMap);
        }
        finally{
            _initialization.complete();
        }
    }

    return _instance;
}

This issue still actual and can produce more than 1 instance:(

By "this" I mean cases where data stored is not able to be read moments later in the app. There is definitely some challenges around the async nature and even using reload() seems to have no improvement in ensuring the data is kept. I'm always using await with setString but for some unexplained reason, there are cases when getString followed after a setString results in the value not being stored !?

I've raised an issue #128368 that speaks to the issue I'm having, of which this issue here seems to be related

This issue still actual and can produce more than 1 instance:(

It turns out that this was fixed years ago (slightly before this issue was filed, in fact), but regressed during the NNBD transition.

even using reload() seems to have no improvement in ensuring the data is kept

If calling reload() before reading doesn't help, then your case is unrelated to this one. This could cause there to be different instances of the Dart-side cache, but the purpose of reload() is to update that cache with the current native state.


Collect official images for candidates

image size and format TBA

Kent Graham - Mayoral Candidate

Francisco Herrara - Mayoral Candidate

Ed Lee - Mayoral Candidate

Reed Martin - Mayoral Candidate

Stuart Schuffman - Mayoral Candidate

Amy Farah Weiss - Mayoral Candidate

Aaron Peskin - D3 Supe

Julie Christensen - D3 Supe

Wilma Pang - D3 Supe (Photo from SF Examiner)

Thanks, John. Once we determine the max size we'll need one the site, I'll resize, crop, and compress these images.
That photo of Wilma Pang isn't the most flattering. It's not recent, but maybe we should use her last official campaigning photo?

Sounds like a plan

FYI adding django models so that you'll be able to enter these  right from disclosure.caciviclab.org.. I'll keep you posted.

Now, for each Candidate, there is a photo_url:
http://admin.caciviclab.org/admin/office_election/candidate/73/

Note: If we load this information manually now, we should also have a way to save it. Fixtures aren't a great choice at the moment, because the data in the database isn't clean. Perhaps writing a simple load/dump script that does loads/saves metadata by name, rather than id.

We should probably also be very careful about where we get images from, perhaps writing a set of rules for how we get them, so that people don't question the method and suggest some bias (e.g. is there an official campaign photo? or perhaps facebook photo, twitter photo, etc)

What is the difference between "ballot item" and "election office"?

On Jan 18, 2016, at 5:11 AM, Ben Cipollini<EMAIL_ADDRESS>wrote:
Now, for each Candidate, there is a photo_url:
http://admin.caciviclab.org/admin/office_election/candidate/73/
Note: If we load this information manually now, we should also have a way to save it. Fixtures aren't a great choice at the moment, because the data in the database isn't clean. Perhaps writing a simple load/dump script that does loads/saves metadata by name, rather than id.
—
Reply to this email directly or view it on GitHub.

BallotItem is a generalization, encompassing both Referendum and OfficeElection.

@bcipolli is the candidate photo upload fixed?

@adborden It is.

I think we should offload this to Cloudinary.com. Unless we want to handle image optimization and caching ourselves, this will really slow down the frontend.  Do you guys think we'll be able to stay within the free plan?

Also, I think ^it can be integrated directly with Django

@jnmarcus I don't understand, sorry. Django has facilities for uploading & serving photos. Django & the browser communicate to cache images when appropriate. We have 5 lines of code to specify to Django where to store the images uploaded by back-end admins who define candidate information.
Is there anything left for Cloudinary to solve? Remember: I'm relatively new at modern front-end technologies, so I'm asking because I figure I'm not seeing the whole picture.

Hello Jamie and Ben,
I'm not a front end developer either, but I feel like if we can handle this with Django, and incorporating new services that would be best.  I'm hesitant to integrate Cloudinary if we might ever need to scale up from the free plan.  And since it is my hope that we'll be able to scale rapidly.
A quick note: I've met with Spike about how our team will make technical decisions, since it has been a point of contention.  I'll say a bit more about this in our meeting but in short, if we reach an impasse on a technical decision we will have a board made of reps from each brigade, and a technical advisor to help serve as a tiebreaker for technical issues.
In short, do you think we can resolve this with Django, or do we need to hurry and onboard the technical advisor?

Closing this, we don't need the mayoral candidates right now.


Return a default response if there is no reason provided.

When we got a 401 request back, requests library raises an error with following arguments
('401 Client Error: Unauthorized',)

But when we mock the the library with requests-mock, we get the error with following arguments
('401 Client Error: None',)

This pr tries to fix the issue by using default reason from requests library if no reason is provided.

Thank you for contributing to stackforge/requests-mock!
stackforge/requests-mock uses Gerrit for code review.
Please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.


Events

Most of the items in the events section should not be displayed here. How can we import a calendar feature? Could we generate a calendar from sigs.yaml since thats where they display the times/dates? The problem with that is hosts for those meetings won't be able to change their times if they cancel a meeting, reschedule, etc. We would also need a way to import contributor events not sig/wg meetings like the summit and meet our contributors.

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

/lifecycle frozen


feat(select): add helper-text

related #697

Codecov Report

:exclamation: No coverage uploaded for pull request base (feat/select/2enhanced@04fcc4e). Click here to learn what that means.
The diff coverage is n/a.

@@                   Coverage Diff                    @@
##             feat/select/2enhanced     #820   +/-   ##
========================================================
  Coverage                         ?   94.09%
========================================================
  Files                            ?       73
  Lines                            ?     2981
  Branches                         ?      459
========================================================
  Hits                             ?     2805
  Misses                           ?       64
  Partials                         ?      112

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 04fcc4e...0132dad. Read the comment docs.


How to get monaco-editor working?

We are currently evaluating snowpack and I am very grateful for your work on this integration.
We use monaco-editor in our app and using @monaco-editor/react for this works quite well.
The only issue I am facing is that by default that package loads monaco sources from a CDN. We need to provide them ourselves and for that we have to include monaco-editor/min/vs directly or at least all scripts that are used from there (editor.worker.js, etc and one for every language).
What do I have to do to achieve this?  I have tried using snowpack-plugin-copy but haven't yet found the place to copy these sources to.
I also tried using mount in snowpack.config.js  like this:
module.exports = {
  mount: {
    'node_modules/monaco-editor/min/vs': {static: true, resolve:false, url: '/monaco-editor'},
  },
}

and then use loader like this:
import { loader } from "@monaco-editor/react";

loader.config(
    {
       paths: {
         vs: "/monaco-editor"
       }
     }
 )

This kind of works but I get these errors:
[snowpack] [404] /min-maps/vs/loader.js.map
  ✘react-typescript-snowpack/public/min-maps/vs/loader.js
[snowpack] [404] /min-maps/vs/editor/editor.main.js.map
  ✘ react-typescript-snowpack/public/min-maps/vs/editor/editor.main.js
[snowpack] [404] /min-maps/vs/editor/editor.main.nls.js.map
  ✘ react-typescript-snowpack/public/min-maps/vs/editor/editor.main.nls.js
[snowpack] [404] /min-maps/vs/base/worker/workerMain.js.map
  ✘ react-typescript-snowpack/public/min-maps/vs/base/worker/workerMain.js

I would really appreciate any help you can provide.

Ignoring those 404 for source maps it also does not work on production builds (with yarn run dist as in the react-typescript example).
How to bundle the files monaco-editor needs?

Hey there,
As this package focuses on the integration between Electron and snowpack I suggest first trying to run your use-case via snowpack and then debugging if there are any further issues with the Electron environment. Here's an https://github.com/microsoft/monaco-editor/issues/2227 issue that seems to discuss your issue, maybe that will help.

Hi sorry you're right. At first I was just wondering how to distribute files with this configuration and electron-builder. Thanks for the link to the monaco-editor issue, I'll try that one again :)


The .values property that hangs off of stepContext in JS is not properly documented.

The values property on stepContext in a waterfall dialog is not documented at all. It is extremely useful and simplifies state management, and should be properly documented as a result.

@lucashuet93 There is a small amount of documentation on the values property of the waterfall set context:

There's a mention of the values property in the Waterfall step context properties section of the Dialogs library conceptual topic.
The sample code for Create advanced conversation flow using branches and loops demonstrates how to access the values property.


Does not compile with newest version of Microsoft Visual Studio Community 2019 Version 16.8.3

glTF-SDK\GLTFSDK\Source\SchemaValidation.cpp(37,1): error C2440: '': cannot convert from 'initializer list' to 'Microsoft::glTF::rapidjson::SchemaDocument'
Does anyone have a solution for this?
Or is anyone able to compile this library with Visual studio?

If you take out the last 3 parameters of that line, the GLTFSDK project will build.
            auto result = schemaDocuments.emplace(uri, rapidjson::SchemaDocument(document));

If you take out the last 3 parameters of that line, the GLTFSDK project will build.
            auto result = schemaDocuments.emplace(uri, rapidjson::SchemaDocument(document));

Thanks a lot, it works!

Thanks a lot, it works!


The PagedAllocator can now allocate objects with non empty constructors.

Add the possibility to initialize the classes allocated with the PagedAllocator
It uses the (const T &&... p_args) forward reference, to avoid copying the memory in case the passed argument is an rvalue, or pass a reference in case it's an lvalue.
This is an example:
PagedAllocator<btShapeBox> box_allocator;
btShapeBox* box = box_allocator.alloc( /* Half extension */btVector3(1.0, 1.0, 1.0) );

You can still use the PagedAllocator as usual, initializing the class using the empty constructor:
PagedAllocator<Transform> transform_allocator;
Transform* tansform = transform_allocator.alloc();

Thanks!


[Documentation] Cosmovisor

Summary
Adds documentation on how to deploy a Validator and a Full Node using Cosmovisor.
Issue

#526

Type of change
Select one or more:

[ ] New feature, functionality or library
[ ] Bug fix
[ ] Code health or cleanup
[x] Documentation
[ ] Other (specify)

Testing

[ ] Documentation: make docusaurus_start; only needed if you make doc changes
[ ] Unit Tests: make go_develop_and_test
[ ] LocalNet E2E Tests: make test_e2e
[ ] DevNet E2E Tests: Add the devnet-test-e2e label to the PR.

Sanity Checklist

[ ] I have tested my changes using the available tooling
[ ] I have commented my code
[ ] I have performed a self-review of my own code; both comments & source code
[ ] I create and reference any new tickets, if applicable
[ ] I have left TODOs throughout the codebase, if applicable

Note for the reviewer:

The URL of the script is not live until this is merged. Use https://raw.githubusercontent.com/pokt-network/poktroll/dk-docs/tools/installer/full-node.sh if you want to pull the script from this branch;
Similarly, the config changes are not live until the PR is merged, and the release is cut. In order for the node to start successfully, the min-gas-prices needs to be adjusted in app.toml. With this code, that will become the default value when we provision the configs.

Added cosmovisor to container images in #796.


chore(master): release 1.0.0

:robot: I have created a release beep boop
1.0.0 (2022-11-04)
Features

initial repository commit (8cbbf10)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wayofdev/docker-build-deps/releases/tag/v1.0.0 :sunflower:


Updated the behavior control of asymmetic_clip (imbalanced_clip)

In the previous implementation, the numerical behavior about asymmetic_clip (imbalanced_clip) is determined in to_verilog() method. However, such options affecting computation results must NOT be included in the synthesis flow, because the NNgen dataflow (operator chain) can be executed as a software without hardware synthesis.
In this request, the asymmetric_clip option was removed from verilog.py, and the same control option is introduced as an argument of related operators.

Thanks for the quick review!


Workflow needs improving

From my initial experience changes made to custom.semantic.json always cause errors until you delete the site folder. I did the same when trying to change themes (deleted the themes folder but now get a different error.
I'm happy to look at a patch that improves this, if feasible.

Hi @DEfusion,
Would you mind to share step by step of what you did? I am interested to understand your flow.
Thanks,
Fred

Ok the issue I seem to be having is adding things back to semantic UI as I set a lot of definitions to false on my initial setup and am just adding things in as needed.
So if I have:
{
  "definitions": {
    "accordion": false,
    "ad": false,
    "api": false,
    "breadcrumb": false,
    "button": true,
    ...
}

Then change it so accordion is true I get the following error:
client/lib/semantic-ui/theme.import.less:30:1: Less compiler error: 'site//modules/accordion.variables.import.less' wasn't found.

In order to resolve this error I then tried deleting the dotfile and re-saving custom.semantic.json but that keeps the error. So I have to delete the site folder, which then gives you a similar error:
client/lib/semantic-ui/theme.import.less:29:1: Less compiler error: 'site//globals/site.variables.import.less' wasn't found

So I delete the dotfile again make a change to custom.semantic.json again and now it works.
Obviously I've now learnt that before editing custom.semantic.json I should just delete the site folder first but as this directory is not user editable shouldn't the package be smarter about when definitions are changed to avoid this little bump in the experience.

Thank you for the write up.
I didn't want to touch site once it's being generated because it is customized by the user. In your case, instead of deleting site to re-generate it, you could just manually add the folder with the element's name and the files inside site. :)
Maybe the readme should be more explicit about it although it has the following

site/
This folder contains your current site's theme. It is generated only when it does not exist. Therefore if you change custom.semantic.json to turn definitions/themes on/off, then it will not affect site/. You will either need to add/remove files in site/ or remove the site/ folder so it can be regenerated again.

Hey there, I also think the workflow is pretty flawed – in most cases i don't want to customize a module and having all these empty extra files in the code repository is also not really exciting.
I would much rather prefer that those overrides are optional and can be ignored most of the time until you really need to customize something.

@DominikGuzei The less imports in 2.0 are optional (since less added the ability for optional imports). You can safely delete them if you have no overrides.

Hey @jlukic! Awesome, let me know when it is available :+1:

@jlukic which version of less for optional imports?

Hey there! Can you give some directions how to enable the optional imports? i just updated to<EMAIL_ADDRESS>which loads less 2.5.1 but I still get the same errors. Do I have to override some config var to make the imports optional?

@DominikGuzei You'll have to wait till 2.0 comes later today that out that uses @import (optional) in the source code.


Upstream V = int to protoc's EnumTypeWrapper runtime

Currently, the NewType('MyEnumValue', int) only exists within mypy stubs, but not in the original python code generated by protoc.
This results in ugly callsites like
from proto.mylib import MyEnum

MYPY = False
if MYPY:
    from proto.mylib. import MyEnumValue

If we can upstream to protoc a simple line
MyEnumValue = int

Then, the callsites can use mypy-protobuf more smoothly by doing
from proto.mylib import MyEnum, MyEnumValue

After talking to @ilevkivskyi - we found an alternate solution involving the metaclass feature which doesn't involve serious changes to upstream.
https://mypy-play.net/?mypy=0.790&python=3.9&gist=7d0f7d6cc46a98cf8ebfc071642ef825
Potentially, we could add a V = int to the EnumTypeWrapper class, but it wouldn't be needed for generated code.

I requested adding V = int to
https://github.com/protocolbuffers/protobuf/pull/8182

I requested adding V = int to
https://github.com/protocolbuffers/protobuf/pull/8182

Oops didn't loop back here. The issue mentioned by MHDante was resolved by #260 independently without compromising the ability to use V.
Still actively trying to get .V into the upstream protocolbuffers/protobuf#8182

It landed upstream. Waiting for 3.20.0 to release and then will add (backward compatible) support here.
They used ValueType = int rather than V = int. I'll support both here for now, but update the docs to recommend ValueType


Add option to skip simplification

Summary
This diff adds a parameter to the constructor of the Fraction class
called $shouldSimplify. When set to false it skips the last step of
calling the simplify() function.
The parameter is defaulted to true so there is no change in existing
behavior.
Test Plan
See new unit test.
Questions

My other thought was making simplify() protected so that we could
subclass it and remove the simplification functionality in a subclass.

Context
We want to be able to validate that a string is "fraction-like", but
keep the format that the string was originally in.

Coverage remained the same at 100.0% when pulling 31078aabc49e5d53da6b320f07123dc4a89299a5 on jazzdan:dont_simplify into e89a7fdf867d1400f89df8928a8595f6a29add37 on phospr:master.

Hey @jazzdan,
That sounds interesting. Can you give me an example of when that might happen?
This may have a knock-on effect on operations and comparisons. For example, would you consider 1/2 as equal to 2/4?
Tom

Sure @tomhv,
We have users who are giving us measurements as strings such as "1", "1/2" or "1 1/4". We want to validate that those strings are valid fractions before storing them. However, it might be desirable to keep the fraction in the form the user supplied. Imagine a scenario where a user is expressing a list of measurements you can buy a rope in. The rope can be between 1/4 inch, and 1 inch with quarter inch steps. They might input that list like this:
[
  "1/4",
  "2/4",
  "3/4"
  "4/4",
]

We would want to keep it in that form rather than display it in the simplified form, which would look like this:
[
  "1/4",
  "1/2",
  "3/4",
  "1",
]

It's totally reasonable if this isn't functionality you want in this class. We could store the original format before handing it off to Fraction to get around this problem.
Another alternative is to make simplify() protected and then we could override its behavior in a subclass.
What do you think?

Very interesting. A few more questions:

Does 1/2 still equate to 2/4 using isSameValueAs?
When you operate on a Fraction, we would have to simplify, correct?
Do we really need to call simplify()in the constructor at all?

Does 1/2 still equate to 2/4 using isSameValueAs?
Looks like the answer is no.

When you operate on a Fraction, we would have to simplify, correct?
Yeah I believe you're correct.

Do we really need to call simplify() in the constructor at all?
Hmm interesting idea, let me play around with that!

I had originally envisaged Fraction as a value object. So 1/2 would equate to 2/4. And 2/4 + 1/2 would equate to 1.  I think what we're trying to do is to give the value object "a memory".  We want to remember that 1 1/2 was created from 6/4.  At first glance that works fine. We could simplify the fraction before comparing or operating upon. But we're still left with the following:
// given
$one = Fraction::fromSting('1/2');
$two = Fraction::fromSting('2/4');

// current functionality
$one->isSameValueAs($one); // true
(string) $one == (string) $two; // true

// proposed functionality
$one->isSameValueAs($one); // true
(string) $one == (string) $two; // false

I'm trying hard to get my head around this, but it still seems wrong.  I'm open to ways to rationalize this.

Yeah, I tried a couple options: removing the $this->simplify() call from the constructor, subclass but I wasn't able to remove simplification without breaking other parts of the library. As a result I'm going to close this PR.
Thanks @tomhv!

Sorry we couldn't work this out.  Thanks so much for the recent activity!

Hey @jazzdan,
The more and more I think about it, adding this does add more flexibility. It would have to be a major bump, which I'm OK with. I'm going to create the v1 branch, and then we can add this to master.
Tom

Coverage remained the same at 100.0% when pulling 31078aabc49e5d53da6b320f07123dc4a89299a5 on jazzdan:dont_simplify into e89a7fdf867d1400f89df8928a8595f6a29add37 on phospr:master.

I have some open questions here: #22.
@jazzdan, since it might take a bit more work than you had originally envisaged, I'm happy to put in a new PR.  Just let me know.

Cool, happy to collaborate @tomhv. I'll try to take another pass at it in a couple days with the new constraint that breaking backwards compatibility is OK.

Sir is there a way to simplify fractions by eighths?

@marknarciso61, what did you have in mind?

@jazzdan, did you ever get anywhere with this?

@imctomhv i was wondering if the simplified fromFloat function can produce a result of by eighths like for 1/2 should be 4/8(4 hours rendered by employees out of 8 hours of work required) coz i'm planning to produce such result. . .


Add solc-to-k command to kevm

The solc-to-k command takes as input a Solidity file and produces the K file needed to run proofs about it.
Todo:

[ ] Make sure solc is installed on CI and in the Docker image.

Blocked on: https://github.com/kframework/evm-semantics/pull/1158 and https://github.com/kframework/k/pull/2338

Need solc installed on CI, example of building Z3 from source (if that's the approach): https://github.com/kframework/evm-semantics/blob/master/Dockerfile#L29


Failed on 'first_control_plane`

Hehe back again with another question ;p
Do you mind to give pointers what might go wrong in this case? 🙏

@kiwinesian That is probably caused by the reboot in the previous block. It works well with Fedora, but you may want to remove the reboot on Ubuntu, especially if you do not upgrade, it may not be needed. Try removing it! Look for the "shutdown" command.

yes sirr!! That was the cause..
thank you so much for the pointer! 🙏
will continue playing around with your repo in the meantime ;)

Awesome, note that to take all the advantages of Cilium, it is important to use a Linux kernel > 5.10, which is not the case for current versions of Ubuntu.
On the other hand, Fedora is the distro used by Linus Torvalds himself and supported by RedHat, so always up to date with the latest and greatest!

thank you @mysticaltech !
I was planning to use Fedora for the production environment due to the higher release on the Linux kernel as you mentioned.
However, I did a bit of investigation and many said that Fedora could be a little unstable as it is always the latest and the greatest which may also introduce bugs.
Fedora also forces upgrade every year which will take down the node for sometime and unnoticed - for production environment, yikesss!!!
this time around is my first time using Fedora - are you aware of such an issue?
I was thinking to keep the Fedora for my development environment until I have a better idea on the stability of it.
But would love to hear your thoughts on it!

@kiwinesian Very interesting point, IMHO, for something as fundamental as running containers and Kube, I think it should remain near 100% stable. I personally never used it in production either, but I intend to do so.
Probably desktop usage is a lot more complicated than was we are trying to use here. But even with that, I have been running pretty stable for the last 6 months on my personal machine. I think it's pretty safe to bet that Fedora server stable releases as giving by Hetzner and should be really ok.

yes, that was my point of concern as well.
With that in mind, I was thinking to experiment with Fedora in the development environment and see how severe this upgrade process is.
Many mentioned that they do it at least once a year (could be twice if they found a major bug or security issue).
I will run the same testing, probably will have to wait for 12 months prior making a decision to move the production environment to Fedora.

I'll keep you posted on my findings - and hope you do too! :)

Yes, definitely will do! About security upgrades for both systems, it's best to set up automatic upgrades every day as to not leave the system vulnerable, and that's what I do for Fedora in this repo, otherwise, for Ubuntu, see how to install and configure unattended-upgrades.

@kiwinesian Just so you know, just fixed a bunch of issues. Actually, the internal k3s process was communicating with their external IPs! 🤦🏻 Found that out when I added and activated the Hetzner firewall to the config. Since I turn off the firewall at the OS layer, I set it up from Hetzner and assigned it to all servers, then all kinds of issues showed up. Turned out I was not configuring k3s well. Now all fixed and a lot more robust, accurate and secure!

ha! i was just about to get into setting up firewall, but did notice that the kubelet was not explicitly declared in the init-config.
Will do a pull ;)

Ah, you mean the kubelet-arg? Check this line

@kiwinesian I am happy to report that after the latest adjustments, cilium full native routing now works out of the box, so I have disabled the tunnel.
Also switch to DSR for the Kube-proxy internal load balancer (don't ask me details, I just know it's better than the previously used SNAT 😂, but required native routing to be activated first).

oh thank youuu for keeping me updated!
I haven't even had a chance to do a pull post the firewall changes. ;P
Hummm i haven't look into the DSR details - but thought kube-proxy was disabled and therefor was not running SNAT?
aahh yess, i think we declared --node-ip=x.x.x.x to ensure that the node is running with internal IP for the k3s communication.
I wasn't aware of any approach on how to set it otherwise
Ah, you mean the kubelet-arg? Check this line

sooo got time to rebase my code, but looks like Cilium is not quite happy.
I'm not sure whether this is because the tunnel being disabled + native-routing.
this was continuous challenge in getting native-routing running for Cilium :(
did you run into such an issue?

Ah, my pleasure! Glad to see that you've given Fedora a chance hehe! For the csi crash, I haven't had such issues. Make sure that the firewall is set up well and opens the required ports for it to function well, see https://github.com/mysticaltech/kube-hetzner/blob/6faccbc721941687757afb405a8036eb3927117b/main.tf#L23-L80

heyy,,
I cloned your repo and just tried as it is - can confirm that the csi is working!
hmmm.. maybe something on my code base 🤔
on a side note, would you deploy k3s over k8s in production?
i think k3s doesn't use etcd  which may hinder optimum performance of the control plane.
let me know what your thoughts are! :D

Ah very happy to hear that it is now working @kiwinesian! So actually no this is pure k3s, it turns out that they moved away from their previous default dqlite and now use "embedded etcd", so we do not really touch it. It was just something that came out in the logs when I was trying to set up the firewall.

Hey @kiwinesian, this kinda has become our messaging thread haha! Just like to keep you updated as one of the first users of this project. I completely revamped the system. Switched to k3os for the underlying nodes, removed cilium, while ensuring that k3s still use the Hetzner private network for low latency internode communication without the need for encryption.
This has the benefit of implying everything, as no node maintenance is needed, both k3os and k3s get upgraded automatically in a fully HA fashion! This should now be a just works experience, at least it was the aim! Please test if you feel like it and let me know.

heyy buddd @mysticaltech
so sorry for going AWOL to your notes - very kind of you for keeping me updated your project!
Was a little busy with work during that time and then took a little time off.
Only to remember that I haven't replied to your message!
i have never seen k3os before - might check it out!
Is it any better compared to regular k3s?
I kinda love Cillium actually.. hehe ;p
ill take the hit on the latency just to have Cillium.
btw, what's your thoughts on running k3s instead of k8s for full production load?
this will be a heavy load, potentially up to 200 nodes per cluster. will definitely need to be multi master instead of a single master
great stuff bud!

Hey @kiwinesian, no problem at all! Good to hear back from you.
k3os is good, as is it a container Linux that integrates very well with k3s (so upgrades are just seamless and automatic both for the node and k3s). The only thing, is Rancher was recently bought by SUSE, and they've dropped official support for k3os 🤦🏻, so right now updates are rare and done by the maintainer on the weekend. So will have to find another one like Fedora CoreOS maybe.
Glad to see you are still running Cilium, it's actually great! Just wanted to simplify things, but the good thing is that the work we did on Cilium thought me how to use the Hetzner underlying private network correctly. That was a huge deal!
About k8s, the only thing I know is that k3s merges code from k8s directly, on a regular basis. So it's probably they share a lot of the code base, it's just that k3s removes a few old artifacts and compiles everything onto the same binary. So it's IMHO it has good, if not faster and lighter.


Update User Guide for new changes

Re-add back features we do not plan on removing:

Add Locating patients by name
Add clearing all entries
Add information to add command about tagging patients

Formatting Issues

Fix Table of Contents links

Completed in multiple PRs


HTML option "wrap-attributes": "preserve" does not preserve line break before closing angle bracket

If you use "wrap-attributes": "force-expand-multiline", you get:
<tag
    attr1="val1"
    attr2="val2"
>content</tag>

The line break before the closing angle bracket is forced with this option.
Now, when you set "wrap-attributes": "preserve", I would expect this formatting to be preserved. However, you get:
<tag
    attr1="val1"
    attr2="val2">content</tag>

Please fix "preserved" or add a new option for keeping the line break before the closing angle bracket.

@vtduong PRs welcome.

I wanna contribute in this. Is there anything that I can help ?

Can I help with this?

@juhjuhjuhgian Go right ahead.

Can you point me to where I should be making changes?

is there anything that i can help?

hey is the issue still open? I would like to work on it


Proxy URL for request

Add ProxyURL to Request
Add ProxyURL via context
Update example

Addresses #110

I think you should close the issue, because it is done in https://github.com/gocolly/colly/blob/master/request.go#L52


apigateway: handlers: register cloudnet modules

这个 PR 实现什么功能/修复什么问题:
yunionapi: handlers: register cloudnet modules

是否需要 backport 到之前的 release 分支:

release/2.13

/area apigateway
/cc @zexi @swordqiu @tb365

Codecov Report

Merging #6225 into master will decrease coverage by 0.00%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #6225      +/-   ##
==========================================
- Coverage    7.04%    7.03%   -0.01%
==========================================
  Files         647      647
  Lines      110913   110913
==========================================
- Hits         7815     7804      -11
- Misses     102497   102509      +12
+ Partials      601      600       -1

Flag
Coverage Δ

#aFlag
7.03% <ø> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/cloudcommon/cronman/cronman.go
48.83% <0.00%> (-5.12%)
:arrow_down:

pkg/cloudcommon/validators/validators_cert.go
39.77% <0.00%> (ø)

Continue to review full report at Codecov.

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


$myId variable empty value

[Enter feedback here]
The variable $myId is empty after:
myId=$(az ad signed-in-user show --query objectId --output tsv)
This results in an error in the next step:
az role assignment create --role "Key Vault Secrets Officer" --assignee-object-id $myId --assignee-principal-type User --scope $vaultResourceId
The error:
argument --assignee-object-id: expected one argument
Solution:
myId=$(az ad signed-in-user show --query id --output tsv):
(replace  "--query objectId" with  "--query id")

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

ID: d9275453-a5b5-b423-8c0f-29ded8f68131
Version Independent ID: d65abb82-544e-fce5-edf3-48f984682c0e
Content: Tutorial: PHP connect to Azure services securely with Key Vault - Azure App Service
Content Source: articles/app-service/tutorial-connect-msi-key-vault-php.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@jflamman
Thanks for your feedback! We will investigate and update as appropriate.

Thank you AjayBathini and you're welcome, hope the feedback helps..
Kind regards, Jeroen Flamman
On Fri, 24 Feb 2023 at 17:00, AjayBathini-MSFT @.***>
wrote:

@jflamman https://github.com/jflamman
Thanks for your feedback! We will investigate and update as appropriate.
—
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/105734#issuecomment-1443898402,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJGAVA2RXSCQGNIQVP2GCLWZDLJNANCNFSM6AAAAAAVGYSJCI
.
You are receiving this because you were mentioned.Message ID:
@.***>

@jflamman We agree with your feedback after working through the doc. As a result, we setup a PR and the changes should be public within 24-48 hours on the on doc.
Thank you for bringing this to our attention! Have a great weekend.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Query parameters after-time and before-time for /v2/transactions always assume UTC even if a different timezone is specified

Summary
Query parameters after-time and before-time for /v2/transactions always assume UTC even if a different timezone is specified.
$ curl -s "https://testnet.algoexplorerapi.io/idx2/v2/transactions?after-time=2021-04-24T21:30:00-04:00&before-time=2021-04-24T21:30:08-04:00" | jq
{
  "current-round": 13748828,
  "next-token": "9LrRAAAAAAAAAAAA",
  "transactions": [
    {
      "asset-transfer-transaction": {
        "amount": 100000000,
        "asset-id": 12726651,
        "close-amount": 0,
        "receiver": "YM7QN2ORZGARPPMBPMZZMLLJDHSVPZU75HUPMRQUEUU6VQOXADQJ4HUIQM"
      },
      "close-rewards": 0,
      "closing-amount": 0,
      "confirmed-round": 13744884,
      "fee": 1000,
      "first-valid": 13744882,
      "genesis-hash": "SGO1GKSzyE7IEPItTxCByw9x8FmnrCDexi9/cOUJOiI=",
      "genesis-id": "testnet-v1.0",
      "id": "LGM5ZPNGECOXVKQOBUVVF7FX4DIAE24ZDAXWOUCP5ORWX5VTQSFA",
      "intra-round-offset": 0,
      "last-valid": 13745882,
      "note": "gqZwVHhuSWTZJDcwNmVlZGVmLWI0OTctNDcwMi1iYzcwLWNjNTdkYzRjZTIzNKR0eXBlpWlzc3Vl",
      "receiver-rewards": 0,
      "round-time":<PHONE_NUMBER>,
      "sender": "UPCPV3UZ4GKXERPFSKDZ3ZRJRN3AFKZYXU7CIENQQ6E4KOWEXRUJ7KOHUQ",
      "sender-rewards": 439,
      "signature": {
        "sig": "YsqUETiATb7n/AauJ0zCdZxPn2WVGpGcAYbJgXD35DCCJ5ZNdg5ZbTsvimnxdMRN2HvKTWJYQJZlimBSi+aSBg=="
      },
      "tx-type": "axfer"
    }
  ]
}

where the round timestamp is<PHONE_NUMBER>, that is 2021-04-24 17:30:05-04:00.
This is the same result as:
$ curl -s "https://testnet.algoexplorerapi.io/idx2/v2/transactions?after-time=2021-04-24T21:30:00Z&before-time=2021-04-24T21:30:08Z" | jq

Same issue with PureStake API indexer endpoint.
Scope/Requirements
Support for timezone or require explicitly parameters to be in the UTC timezone and fail otherwise.
Urgency
Since you can always convert the time you get, this isn't super urgent. However, this is a bug that we should fix.

I don't think we can implement this without a full db migration. Reason being is that the table schema records the real time as type timestamp without timezone. Since we do filtering at the sql level, the db is disregarding the timezone in the provided filter.
I think we can only fix this by creating a db migration from timestamp without timezone to timestamp (see https://www.postgresql.org/docs/current/datatype-datetime.html).
I would say that full db migration in that case is not worth it so I'm inclined to close this as a won't fix. I'm going to bring this up for others to comment on (feel free to thumbs up or down) if they feel like we should keep this open.

@bbroder-algo brought up a better solution which would just be converting before query construction. I'll look into this--it seems doable.


Add option to disable action preview on diagnostic jumps

Is your feature request related to a problem? Please describe.
Until recently, jumping between diagnostic messages displayed a float window with diagnostic text and available code actions. This float window was anchored above or below the problematic code line. Therefore, after a jump, I had a clear view of the problematic code line, a bit of context above or below, and available actions:

With current HEAD version, I started getting action preview diff as well, which is anchored on the opposite side of the problematic code line. As a result, I see neither the code line itself, nor any context around it. This makes it hard to comprehend where I jumped and what is the issue:

Describe the solution you'd like
Personally, I don't need to see action preview, so I'd like to have an option to disable it. For those who find the action preview useful, I guess it would be more convenient if the floating windows were attached above/below the problematic code line such that the line itself is not occluded by the floats.

because it default to select first action. i think we can add an option to do it

add diagnsotic.auto_preview default true you can set false to disable and you can still use <C-f> and <C-b> to show aciton preview

Tip. you can set FloatBorder color

Not sure I understand what you mean :smile:

:hi FloatBorder guifg=blue give it a try then

Oh, I see what you mean, thanks :+1:


cherry-pick(1.0.x): fix: ensure alias version isn't dropped round-trip (#6777)

Fixes #N/A
Description
Cherry-pick #6777
How was this change tested?
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>9
Details

15 of 15 (100.0%)  changed or added relevant lines in 1 file are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.03%) to 79.366%

Files with Coverage Reduction
New Missed Lines
%

pkg/providers/amifamily/ami.go
1
91.67%

Totals

Change from base Build<PHONE_NUMBER>9:
0.03%

Covered Lines:
5935

Relevant Lines:
7478

💛  - Coveralls


instarepl locks up (eagerly evaluating an infinite sequence)

When I type out:
(doseq [a (repeat "x")] (println "test"))

instarepl locks

This issue has moved to https://github.com/LightTable/ClojureInstarepl/issues/2 as the instarepl is its own plugin

This issue has moved to https://github.com/LightTable/ClojureInstarepl/issues/2 as the instarepl is its own plugin


Support for Windows?

This is a very promising package, but it doesn't work on Windows.
I tried to run the core/basic_window.jl example and got the following error:
UndefVarError: libraylib not defined
I'm assuming Raylib_jll is not available for windows, do you plan to support this package on Windows too?

Unfortunately we failed to build the Windows version with BinaryBuilder and I'm totally unfamiliar with Windows' building environment.
If anyone is interested in making Windows version work, you can find the current building script here

I understand, building on Windows without Visual Studio is a pain.
Should i close this issue?

Let's keep it open.

I tried out the BinaryBuilder script for windows and the makefile just seems to silently fail. I might try and investigate more when I have time. Did you have any idea what could be causing the problem or suggestions for where to look first?

Did you have any idea what could be causing the problem or suggestions for where to look first?

Unfortunately no, I don't even have a windows machine at hand. But there is a BinaryBuilder.run_wizard() that can run a windows container. You can test/investigate the compilation in that container and see what goes wrong. The building instructions can be found in the building script

So I'm a little bit out my depth here, but think I've made some progress, I can now build libraylib.dll  with the build script for windows 32 and 64 bit.
A few quick questions:

Is the generated libraylib.dll the only file we need to copy into the destdir at the end? make install doesn't work for the raylib makefile on windows, so I was just manually copying over the dll to destdir at the end.
Do we need to have USE_EXTERNAL_GLFW=TRUE in the make flags? for some reason this breaks on windows.
If I think I have a working build script, what's the best way to test it out with Raylib.jl to make sure before I submit a pull request to Yggdrasil?

Sounds like some good news!

Is the generated libraylib.dll the only file we need to copy into the destdir at the end? make install doesn't work for the raylib makefile on windows, so I was just manually copying over the dll to destdir/bin at the end.

There are two part of files that need to be copied at the end. One is the libraylib that should be copied to a lib folder. Another part is the headers (physac.h, raygui.h, raylib.h, raymath.h, and rlgl.h) that should be copied to a include folder. These folder are probably under the destdir, though I don't remember the full path. You could check with the BinaryBuilder wizard (it would told you if you didn't copy any files to it's product folder).

Do we need to have USE_EXTERNAL_GLFW=TRUE in the make flags? for some reason this breaks on windows.

By setting the USE_EXTERNAL_GLFW flag, it would use the GLFW managed by Julia (GLFW_jll). But if that is unworkable on windows, I think we can just turn that off for windows building script.

If I think I have a working build script, what's the best way to test it out with Raylib.jl to make sure it works before I submit a pull request to Yggdrasil?

Running the julia build script with --deploy=local as mentioned here. This would generate a Raylib_jll, and then cloning Raylib.jl and make sure it load the generated one.

Seem to have got it to work, made a pull request :)
https://github.com/JuliaPackaging/Yggdrasil/pull/4929

@jakkosdev I don't know why your comment disappeared, but I see that PR. Great works! Thanks!

Since Yggdrasil merged, now it should be supported on Windows.


Introduce accessors for Multiaddress

Description of the Change
Add accessor methods for Multiaddress content and remove its inner enum in favour of ProtocolList.

Benefits
Simplifies work with Multiaddress.

Possible Drawbacks
None

Usage Examples or Tests [optional]
In the code

Alternate Designs [optional]

Codecov Report

Merging #82 into master will increase coverage by 0.6%.
The diff coverage is 97.77%.

@@            Coverage Diff            @@
##           master      #82     +/-   ##
=========================================
+ Coverage    86.8%   87.41%   +0.6%
=========================================
  Files         140      140
  Lines        3766     3773      +7
=========================================
+ Hits         3269     3298     +29
+ Misses        497      475     -22

Impacted Files
Coverage Δ

test/core/libp2p/peer/peer_info_test.cpp
100% <ø> (ø)
:arrow_up:

core/libp2p/transport/tcp/tcp_server.cpp
85.29% <ø> (ø)
:arrow_up:

core/libp2p/transport/impl/transport_impl.cpp
100% <ø> (ø)
:arrow_up:

.../libp2p/transport/impl/transport_listener_impl.cpp
84.61% <ø> (ø)
:arrow_up:

core/libp2p/multi/multiaddress.hpp
62.5% <ø> (+12.5%)
:arrow_up:

core/libp2p/peer/peer_info.hpp
0% <ø> (ø)
:arrow_up:

test/core/libp2p/multi/multiaddress_test.cpp
100% <100%> (ø)
:arrow_up:

core/libp2p/peer/peer_info.cpp
93.93% <100%> (ø)
:arrow_up:

core/libp2p/multi/multiaddress_protocol_list.hpp
100% <100%> (ø)
:arrow_up:

core/libp2p/multi/multiaddress.cpp
89.28% <96.77%> (+17.98%)
:arrow_up:

... and 1 more

Continue to review full report at Codecov.

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


Please add Elizabeth, NJ!

Hi @lhelena, thanks for your interest in adding Elizabeth to the website. Emails on defund12.org are all written by community members. To add your city, you must provide:

Subject line for the email
Email addresses (at least one) of the government officials you’d like to receive the message
Detailed message concerning the budgeting decisions at stake in your community

Until you provide this content, we cannot post your city.
Follow our email style guidelines for quicker acceptance. Remember that messages must be city-specific and focused on defunding the police. If your message is copied from an external source, please provide a link to the original source.
Your request will be closed until you reply with the necessary content. Thank you!


add faculdade projecao

@derson247 Pull request merged. Thank you!

Hi philipto what do i have to do after that???


Shortcut to recently opened projects / folders to open VS Code with

I always open VS 2015 projects by right clicking on the taskbar icon, and choosing the project I want from the "Recent" list. In VS Code this option is not available, and I have to open VS Code first, and then open the recent project I want.

Starting with 1.6.0 release you can access recently used files and folders from the task bar menu.


docs(cdk/testing): Add documentation for harness authors

Super good docs overall, here's my proposed edits: https://github.com/jelbourn/components/commit/9fd3999c12ae0c5759f80be33d97a283d5a2d653
(mostly for active voice, some minor grammar / structure)

Accepted the proposed edits and added a few more small ones on top


master > Add an option for not adding vex-open class to body when opening a Vex model.

I would like to be able to prevent adding the vex-open class to the body element on open. Currently, the only way to achieve this is to manually remove the class with jQuery on afterClose and afterOpen which is a bit hacky. This PR adds a Vex option called dontPreventScroll which, if true, prevents injecting that body class.
Thanks!

@adamschwartz, sorry for the late response. This PR was intended to fix the issue I was experiencing which is documented here: https://github.com/HubSpot/vex/issues/75, however overriding the CSS achieves the desired effect.
I will close this out as it seems another approach is being explored.

@supernintendo Makes sense, thanks for the update.
Definitely working on a solution to all of #33, #43, #75, #85. Stuff gets tricky.

Hi @adamschwartz , I was just wondering if you have found a solution to the issues you listed (#33, #43, #75, #85).
Reason I ask is  because I'm getting a weird issue on iPhone 6S (only one I have tested so far). I cannot scroll in portrait until I flip the phone into landscape mode which fixes the scrolling issue and then I can flip the phone back to portrait mode and scroll again.
Any ideas?
Kind regards,
Eddy

Something like https://github.com/HubSpot/vex/issues/43#issuecomment-33303954 is probably the right thing, but I can’t say for sure that your iPhone 6S issue would be solved as well.


Switch RL learner to use Evaluator interface

Currently the learner calls in the internal functions in _dp_verification.py and those are on track to deprecate. All the new code is behind interfaces. Every algorithm (query) has to be behind a PrivacyAlgorithm interface with prepare, release, actual_release methods. The evaluator just has one function call .evaluate which gives back all the metrics RL learner will.
The benchmark function can take in multiple query strings in one shot but I believe RL learner won't use this because it needs to update after every evaluator result.

This is done


chore: master sync 9/17/2024

Please verify the following:

[ ] yarn test jest tests pass with new tests, if relevant
[ ] yarn lint eslint checks pass with new code, if relevant
[ ] yarn format:check prettier checks pass with new code, if relevant
[ ] README.md (or relevant documentation) has been updated with your changes

Describe your PR

Grabs updates from master as of v9.10.1

Accidentally duplicated this, sorry 😅


Fix typo

github -> GitHub

Hi, thanks for the contribution. Unfortunately this article no longer exists. Closing the PR.


Swift: Support renamed types as Clang types.

test with https://github.com/apple/swift/pull/22456
@swift-ci test

@swift-ci test and merge

@swift-ci test and merge

@swift-ci test and merge

@swift-ci test and merge

@swift-ci test and merge

@swift-ci test and merge

@shahmishal swift-ci doesn't hear me...

Looking into the issue, I will let you know once it’s back online

@swift-ci test and merge

@adrian-prantl CI is still not back online.

@swift-ci test and merge

Yay, Thanks!

@swift-ci test and merge


[Task] The CI environment in the extension library needs to support automatic testing of multiple Dubbo versions

Pre-check

[X] I am sure that all the content I provide is in English.

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Apache Dubbo Component
Java SPI Extensions (apache/dubbo-spi-extensions)
Descriptions
PR in Dubbo's main repository supports compatibility checks with the master branch of the associated extension library during CI environment construction
The CI environment in the extension library needs to support automatic testing of multiple Dubbo versions, which can ensure that the extension library supports multiple Dubbo versions and ensures forward compatibility
For example, testing multiple Dubbo versions in the case library：

Related issues
https://github.com/apache/dubbo/discussions/13833
Are you willing to submit a pull request to fix on your own?

[ ] Yes I am willing to submit a pull request on my own!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I'm willing to do that ，May you give me more detail for this task？

@songxiaosheng PTAL

I'm willing to do that ，May you give me more detail for this task？

The extension library needs to configure ci files to automatically perform checks on multiple Dubbo versions during automated testing


MWPW-123527  Gnav test

Add a Gnav test
Update test case tags
Update the E2E workflow to use operators on tags

Codecov Report

Merging #367 (aed8524) into stage (fd41020) will decrease coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##            stage     #367      +/-   ##
==========================================
- Coverage   92.80%   92.76%   -0.04%
==========================================
  Files          24       24
  Lines        2669     2669
==========================================
- Hits         2477     2476       -1
- Misses        192      193       +1

see 1 file with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Allow tasks to specify if they should use stdin or stdout directly

Is your feature request related to a problem? Please describe
There are times when using maru-runner that I'd like to run an interactive application or an application that rewrites lines (say it has a progress bar). Any interactive application is a non starter because stdin is not bound to the commands maru-runner runs. In the case of an application that rewrites lines you either have to hope the application has a (competent) ci mode or just deal with terminal spam when line rewrites happen.
Describe the solutions you'd like
1.

Given maru-runner is running a task with an interactive command
When interactive is specified in the task
Then the command is bound to stdin and stdout directly and the spinner is disabled

2.

Given maru-runner is running a task with a command that rewrites lines
When noSpinner is specified in the task (this is a bad name there's def a better one out there)
Then the command is bound to stdout directly and the spinner is disabled

Additional use case (example):

I have a task uds run test:ui-unit that under the hood runs a process for unit testing and will rerun on code changes.
because uds runner swallows stdin, I cannot interact with this tool using h or q keys.


barrier: fix compilation on Qt 5.11

Motivation for this change
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

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

Also, can you squash those changes into one commit?

LGTM. Thanks!


this.callback is a dirty word

When writing specs (BDD interface), writing to this.callback is apparently a no-no because it is overwritten by mocha for it's internal needs.
describe 'something', ->
  beforeEach ->
    @callback = name: 'good day, sir'
  it 'should be polite', ->
    @callback.name.should.equal 'good day, sir'

this.callback is no longer the object it once was in the beforeEach as one would have expected.

why are you calling an object callback

also the next release will use a Context so the only "reserved" key is "timeout"

it was a contrived example.
I actually was injecting a spy into my item under test and then
asserting on the spy in my spec
@callback seemed the most natural name for it. Everything became clear
once I renamed it.
On Sat, Feb 11, 2012 at 4:01 PM, TJ Holowaychuk
<EMAIL_ADDRESS>wrote:

also the next release will use a Context so the only "reserved" key is "timeout"

Reply to this email directly or view it on GitHub:
https://github.com/visionmedia/mocha/issues/259#issuecomment-3923470


register as default handler for archives

The app should register as default handler for archives.

More info: developer.android.com


evaluator: bounded recursion regression

What version of CUE are you using (cue version)?
v0.5.0-alpha.1.0.20221101144719-b3bcc7aaf3d0 built from commit b3bcc7aaf3d0
Does this issue reproduce with the latest release?
Reproduces starting in v0.5.0-alpha.1
Works as expected in v0.4.3
What did you do?
Following example at https://cuetorials.com/deep-dives/recursion/#bounded-recursion
Package r
recurse.cue:
package r

import "list"

#RecurseN: {
	// this is the bound on our recursion
	#maxiter: uint | *4

	// This is the function list element
	// we generate this to simulate recursion
	#funcFactory: {
		#next: _
		#func: _
	}

	// this is our "recursion unrolling"
	for k, v in list.Range(0, #maxiter, 1) {
		// this is where we build up our indexed functions and the references between them
		#funcs: "\(k)": (#funcFactory & {#next: #funcs["\(k+1)"]}).#func
	}

	// our final value needs to be null
	#funcs: "\(#maxiter)": null

	// we embed the head of the list so that the values
	// we write this into can be used like other CUE "functions"
	#funcs["0"]
}

depth.cue:
package r

import "list"

#DepthF: {
	#next: _
	#func: {
		#in:    _
		#basic: int | number | string | bytes | null
		out: {
			// if we have a basic type, we are at a leaf, depth is 1
			if (#in & #basic) != _|_ {1}

			// if we are not a basic type, then we are 1 + the max of children
			if (#in & #basic) == _|_ {
				// this is our "recursion" for each child
				let depths = [ for k, v in #in {(#next & {#in: v}).out}]
				list.Max(depths) + 1
			}
		}
	}
}

#Depth: #RecurseN & {#maxiter: 11, #funcFactory: #DepthF}

tree: {
	a: {
		foo: "bar"
		a: b: c: "d"
	}
	cow: "moo"
}

d: #Depth & {#in: tree}

Then run the command cue export --out cue ./r
What did you expect to see?
tree: {
        a: {
                foo: "bar"
                a: b: c: "d"
        }
        cow: "moo"
}
d: out: 5

What did you see instead?
d: undefined field: #maxiter:
    ./r/recurse.cue:17:28
d: cannot add field #funcs: was already used:
    ./r/recurse.cue:23:2

Thanks for raising this, @caleblloyd. Confirmed and bisected to 748a68589747fed6273d6338eb7e275a4fb116c6.
go mod tidy
go run cuelang.org/go/cmd/cue export
cmp stdout stdout.golden

-- go.mod --
module mod.com

go 1.18

require cuelang.org/go v0.4.4-0.20220622094641-748a68589747

-- deps.go --
//go:build tools
// +build tools

package tools

import (
	_ "cuelang.org/go/cmd/cue"
)
-- depth.cue --
package r

import "list"

#DepthF: {
	#next: _
	#func: {
		#in:    _
		#basic: int | number | string | bytes | null
		out: {
			// if we have a basic type, we are at a leaf, depth is 1
			if (#in & #basic) != _|_ {1}

			// if we are not a basic type, then we are 1 + the max of children
			if (#in & #basic) == _|_ {
				// this is our "recursion" for each child
				let depths = [ for k, v in #in {(#next & {#in: v}).out}]
				list.Max(depths) + 1
			}
		}
	}
}

#Depth: #RecurseN & {#maxiter: 11, #funcFactory: #DepthF}

tree: {
	a: {
		foo: "bar"
		a: b: c: "d"
	}
	cow: "moo"
}

d: #Depth & {#in: tree}
-- recurse.cue --
package r

import "list"

#RecurseN: {
	// this is the bound on our recursion
	#maxiter: uint | *4

	// This is the function list element
	// we generate this to simulate recursion
	#funcFactory: {
		#next: _
		#func: _
	}

	// this is our "recursion unrolling"
	for k, v in list.Range(0, #maxiter, 1) {
		// this is where we build up our indexed functions and the references between them
		#funcs: "\(k)": (#funcFactory & {#next: #funcs["\(k+1)"]}).#func
	}

	// our final value needs to be null
	#funcs: "\(#maxiter)": null

	// we embed the head of the list so that the values
	// we write this into can be used like other CUE "functions"
	#funcs["0"]
}
-- stdout.golden --
{
    "tree": {
        "a": {
            "foo": "bar",
            "a": {
                "b": {
                    "c": "d"
                }
            }
        },
        "cow": "moo"
    },
    "d": {
        "out": 5
    }
}

The underlying problem is a spurious structural cycle. The below is a simplification of what triggers it.
#maxiter: 2

// Trigger lookup of a.x0 before the "regular" evaluation of a.
x: a.x0

a: {
	for k, _ in [0, 1] {
		"x\(k)": (#DepthF & {#in: a["x\(k+1)"]}).#out
	}
}

a: x2: null // no cycle with {}!!!

#DepthF: {
	#in: _
	#out: {}
}

Another issue that is exposed by this once the cycle issue is fixed:
X: 1

for v in [0, X] + [] {
	x: "x\(v)": {}
}

x: _

x.x0

The issue is that X's evaluation is triggered by the evaluation of x.x0 before X has been added to the root. Normally these cases are handled fine, but the addition of + [] prevents its correct handling.


Implement support for MutateRows and use it in HappyBase send()

Suppose we add a method to Table which returns a context-manager for accumulating the various row mutations.  Noodling:
with table.batch() as batch:
    new_row = batch.row(new_key)
    new_row.set_cell(family_1, qualifier_2, 0)
    ...
    old_row = batch.row(old_key_1)
    old_row.delete()
    maybe_row = batch.row(maybe_key, filter_=maybe_filter)
    maybe_row.set_cell(family_2, qualifier_3, 1234, state=True)
    maybe_row.set_cell(family_2, qualifier_3, 2345, state=False)

The Batch object would keep track of the rows it returned from its underlying table.  In its __exit__(), assuming no exception was raised, it would emulate committing all the rows, gathering their mutations into a single MutateRowsRequest and submitting it.

There is already batch support in happybase so it could be easier to just have the Table method take a primitive list and do the "building up" in the happybase classes.

Hello,
One of the challenges of maintaining a large open source project is that sometimes, you can bite off more than you can chew. As the lead maintainer of google-cloud-python, I can definitely say that I have let the issues here pile up.
As part of trying to get things under control (as well as to empower us to provide better customer service in the future), I am declaring a "bankruptcy" of sorts on many of the old issues, especially those likely to have been addressed or made obsolete by more recent updates.
My goal is to close stale issues whose relevance or solution is no longer immediately evident, and which appear to be of lower importance. I believe in good faith that this is one of those issues, but I am scanning quickly and may occasionally be wrong. If this is an issue of high importance, please comment here and we will reconsider. If this is an issue whose solution is trivial, please consider providing a pull request.
Thank you!


(Support) Interaction with enabling/disabling TV input (TV wakes up despite not being enabled)

Following use case:

Display profile management software with hotkeys (Monitor Profile Switcher)
"Desktop" profile which enables my 3 desktop monitors and disables the LG TV
"TV" profile which disables the desktop monitors and enables the LG TV

When I'm in my "Desktop" profile and wake the PC from screensaver/screen off, LGTV Companion seems to send a wakeup signal to the TV.
This then leads to my monitors freaking out for a while, trying to manage display modes. I assume this has to do with HiDPI settings and HDR. It takes like 20 seconds for my monitors to stop turning on/off.
Then, the TV is on, but not showing anything (as the Windows display is disabled). I didn't want it to be on, since I turned it off in Windows display settings!

In this image, the TV is input 3, and this depicts my "Desktop" profile.
Questions:

Can the wakeup signal only be sent if the display is enabled?
Can I also disable any other interaction (auto enable monitor on startup, etc.) if the display is disabled?

Essentially, I'd like to use the LGTV Companion features when I'm in the "TV" profile, but not when I'm in the "Desktop" profile.

I see how you mean, I'll add it as a feature request and see what can be done about it.
In the meanwhile you can try experimenting with the command line parameters of LGTV Companion. If you can use the monitor profile switcher to launch the app with command line parameters you can directly control power on/off state and disable/enable automatic management. See the reference here

@ividyon Hi I have a test build for you if you want to beta-test. Let me know and I'll provide a link

Please check out the latest release which should do what you want: Releases

Closed due to feature has been implemented


[Bug] Busy popup does not show correctly on mobile

Expected Behavior
It should be scaled correctly to account for the screen width
Current Behavior

Describe the Bug
No response
Steps to Reproduce

Go to judge
Start judging
Click busy button

What device are you seeing this issue on?
Android Mobile Device, iOS Mobile Device
What browser are you seeing this issue on?
Firefox Mobile, Chromium Mobile, Safari Mobile
Possible Solutions
No response

Closed for #104


Option to turn off print out messages for identifiability analysis?

Function like assess_identifiability prints out a large number of messages. Is it possible to turn this prints off, e.g. using verbose=false? I tried looking, but did not find any mentions of such a feature.

I think verbose=true/false is a good idea

I agree, we should do this

@TorkelE
We have implemented this starting from 0.4.15 (will make a release right away). Now all main functions like assess_identifiability accept keyword argument loglevel which can be one of the levels from Logging. Therefore, you can suppress logs by setting loglevel=Logging.Error.
For more internal functions like preprocess_ode, you can write StructuralIdentifiability.restart_logging(loglevel=Logging.Error).

Thanks :)


Not receiving simultaneous events/polyphony

My system:
Esp32
Macbook Pro late 2015 15"
Issue happens when sending quantized midi chords from a DAW (tried with Reaper 6 and Pro Tools First) .
If the DAW send a 3 note chord, with the 3 notes starting at the exact same tick, Esp32 will recognize only 1 of the 3 note on events (the first sent from the DAW, I suppose).
The same thing applies both to simultaneous note off events or mixed note on and off events (for example, a note off event on one note happening at the same time as a note off event of other note).
This may cause stuck notes or avoid some note(s) being triggered since if a note on events is received simultaneously with a note off event, only one of them is received by ESP32.
Summing up, when multiple events are sent by the DAW simultaneously, only one is recognized and the others aren't received/recognized by ESP32.
My specific project is building a bluetooth midi receiver to control some synthetizers through my DAW wirelessly. My workaround for now is to slightly shift the midi notes so there's never 2 events happening at the same time.

Hi Cesar,
I am aware of this bug. I have already observed it too. It is caused by "running status messages", i.e. when several messages are packed because they contain the same command on the same channel.
I will work on it as soon as I can, it shouldn't be difficult to correct the receiving code.
best regards,
Maxime

Hi Maxime,
First and foremost, thank you for the library and the reply.
While working with another project (a "VU meter" for a Roland Vs2400, this mixer sends the volume of the tracks as the velocity of the notes 0-23 of channel 16) I have faced a similar situation, having to "filter" the incoming data to get only the relevant bytes.
By your reply, it seems the issue is being caused by multiple note on/off data following a single note on/off command, right?
If so, maybe the following code from my project may help.
void MidiHandler ()
{
byte BufferIn[3]; //input buffer
//Filter phase

BufferCheck[2] = BufferCheck [1];
BufferCheck[1] = BufferCheck [0];
BufferCheck[0] = Serial1.read();

//If not valid volume track data, abort - loop will call this function
if (BufferCheck[2] != 248 || BufferCheck[1] != 175 || BufferCheck[0] > 23)  {return;}

//End of Filter found the 3 bytes that signal the start of the chain of track volume data
// 248 = Midi Tick / 175 = Note On on Ch 16 / 0-23 = Tracks 1 to 24

BufferIn[0] = BufferCheck[0]; //stores the first mixer track number on the first array byte
BufferIn[1] = Serial1.read(); //reads velocity for the first mixer track in the array

//While data is valid and the Track number is lower than the number of tracks on the led strip
//While data is consistent BufferIn[0] have the note number, NumTracks is the criteria to determine if data is valid
while(BufferIn[0] < NumTracks)
{
  //Proceed to process the incoming data
  //LightenTrack (BufferIn[0], BufferIn[1], LedsPerTrack);

  BufferIn[0] = Serial1.read(); //stores new note
  BufferIn[1] = Serial1.read(); //stores new velocity
}

//loop break => no channel note. Goes Back to filter phase
}

Hi Cesar,
I have made a new release of the library, this bug should now be corrected. It is not yet available in the Arduino IDE (but it should be in a couple hours). But you can find it here or in PlatformIO. The new version is 0.2.0
Could you tell me if everything works for you ?
If you want, I have also made a new example, which dumps all the messages that the ESP32 receives, to make some quick tests.

Just tested it and new it seems to be working just fine!


Add 'EQL' Ebean query language parsing via ANTLR4, exposed via EbeanServer.createQuery(type, eql)

So we recently removed the old query parsing mechanism (and named queries) etc.
This is the new / rebuilt replacement that uses ANTLR4 to parse 'EQL' Ebean query language statements into Query objects (which we then can modify , set the named parameter values and execute).
This parses select, fetch, where and limit/offset clauses.  Each of these clauses is optional ... for example a valid statement can be "limit 10"
What is doesn't do:

It doesn't support raw expressions at this stage
It doesn't support setting 'having' expressions (which are used with RawSql queries)
It doesn't support setting 'text' expressions (i.e. ElasticSearch "query context" expressions as opposed to "filter context" expressions)

Examples
select (name) fetch billingAddress (line1, city) where name startsWith :name limit 100
// query.setParameter("name", "Ro");

where name startsWith :name
where not (name = 'Rob' and status = 'NEW')
where (name = 'Rob' or status = 'NEW') and smallnote is null
where name in ('Rob','Jim')
where name in (:one, :two)
where name in (:names)
// query.setParameter("names", Arrays.asList("Baz","Maz","Jim"));

select (name, status)
select distinct (name)

fetch billingAddress
fetch billingAddress (city)
fetch billingAddress (city) fetch shippingAddress (city)

limit 10
limit 10 offset 10

fetch lazy, fetch query
In the past (and still now) we have support for +lazy and +query hints in the fetch properties.
This change makes lazy and query explicit options to the fetch clause and so we can do use them more explicitly like:
fetch lazy billingAddress
fetch lazy(50) billingAddress

fetch query billingAddress
fetch query(50) billingAddress
fetch query(50) billingAddress (line1, line2, city)

We can still use the +query and +lazy hints in the fetch properties like:
// use +query hint inside the fetch properties
fetch billingAddress (+query(50), line1, line2, city)

EbeanServer.createQuery()
This changes adds a createQuery() method that takes the class of the (root) entity bean and the eql statement.

List<Customer> customers =
  server().createQuery(Customer.class, "where name startsWith :name order by name")
      .setParameter("name", "Ro")
      .findList();

If the statement includes named parameters then these are set via setParameter() as per the example above.  Named paramters can't have null value - they must have a non-null value set before the query will execute.

The commits for this are in master. closing.


Fix #208: Add code auto-save feature

With the new feature, the code will be auto-saved every minute.
This pull request contains UI change (Display/Hide 'Saving code now...')

@rabidbit you might want to take a look at the UI.

@seanlip Address backend code change. PTAL

Design comments:

Prefer "Saving code..." versus "Saving code now..." More succinct with unnecessary "now" qualifier
Prefer smaller font (13px)

From a UX perspective, rather than saving every minute, how hard would it be to activate auto-save 3 seconds after an edit event and spaced 5 seconds apart? That is, if I make a quick change, it auto-saves after 3 seconds. If I keep typing non-stop for while, it saves every 5 seconds while I type until I finish typing (it saves one last time 5 seconds after I finish typing the long code). If I don't change anything, it does not activate auto-save. I think this would be better than saving every minute, regardless of what the user does.

@rabidbit OK. I will make changes for 1 & 2.
For the third change, I will do some research and see how to accomplish that. But I think that's possible and makes sense. Though I think it will require a lot of changes. So, if I will be still on this project next week, I will try to finish that change.

@rabidbit While trying to figure out how to do that, I found one issue. How do you define quick change? I mean, can we combine the two cases? Meaning, if the model is changed, I will do a debounce and save the change, things like that? How does that sound like?

LGTM from code perspective. @rabidbit should we merge it or hold off until further design changes are made? Your call.

Also @wmcalyj tests are failing. PTAL.

I don't think this is the optimal approach, but it's better than what we have now (no auto-save at all). I recommend increasing the save frequency to 30sec (1min felt kind of long to me). I think we should update the auto-save feature to do what I described, but let's at least have an auto-save in there (merge this). I can open an issue with the requested design changes.

@rabidbit Addressed UI review changes. Can you assign me the issue once you created that? Want to work on that.

OK, SG. Will do. Merging.


test: add file test

Restructured the tests folder.
Added tests for file of the dagger standard API.

Still work in progress


Add resolve_hostname config param in in_syslog, fix #1614

I'll send this patch for master after merging this PR.

How about adding source_address_key together?

I've added source_address_key config parameter.

Thanks!


Edit Recipe Type is_active flag

Currently there is no way to edit the recipe type is_active flag. Add is_active to the edit recipe type api so users can activate/deactivate recipe types without editing the database.

Deactivating a recipe should probably update any parent recipes as well, potentially removing the deactivated sub recipe or deactivating the parent recipe.


[PRSS - PKI - CORE] API Review

New API Review meeting has been requested.
Service Name: PRSS - PKI - CORE
Review Created By: Arpit Saxena
Review Date: 3/28/2023 1:00 PM PT
PR:
Hero Scenarios Link: Not Provided
Core Concepts Doc Link: here
Description: Here is the approved spec:- https://github.com/Azure/azure-rest-api-specs-pr/pull/9062
We are requesting a cadl version review of above spec,
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

Meeting updated by Arpit Saxena
Service Name: PRSS - PKI - CORE
Review Created By: Arpit Saxena
Review Date: 3/28/2023 2:00 PM PT
PR: https://github.com/Azure/azure-rest-api-specs/pull/10562
Hero Scenarios Link: here
Core Concepts Doc Link: here
Description: Here is the approved spec:- https://github.com/Azure/azure-rest-api-specs-pr/pull/9062
We are requesting a cadl version review of above spec,
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

Meeting updated by Arpit Saxena
Service Name: PRSS - PKI - CORE
Review Created By: Arpit Saxena
Review Date: 3/28/2023 2:00 PM PT
PR:
Hero Scenarios Link: here
Core Concepts Doc Link: here
Description: Here is the approved spec:- https://github.com/Azure/azure-rest-api-specs-pr/pull/9062
We are requesting a cadl version review of above spec,
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

Meeting updated by Arpit Saxena
Service Name: PRSS - PKI - CORE
Review Created By: Arpit Saxena
Review Date: 7/27/2023 4:00 PM PT
PR: https://github.com/Azure/azure-rest-api-specs/pull/10562
Hero Scenarios Link: here
Core Concepts Doc Link: here
Description: Here is the approved spec:- https://github.com/Azure/azure-rest-api-specs-pr/pull/9062
We are requesting a cadl version review of above spec,
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

Meeting updated by Arpit Saxena
Service Name: PRSS - PKI - CORE
Review Created By: Arpit Saxena
Review Date: 07/27/2023 04:00 PM PT
PR: https://github.com/Azure/azure-rest-api-specs/pull/10562
Hero Scenarios Link: here
Core Concepts Doc Link: here
Description: Here is the approved spec:- https://github.com/Azure/azure-rest-api-specs-pr/pull/9062
We are requesting a cadl version review of above spec,
Detailed meeting information and documents provided can be accessed here
For more information that will help prepare you for this review, the requirements, and office hours, visit the documentation here

@arpit2408 The linked PR #10562 due to inactivity. Please reopen and update this to the current version of TypeSpec prior to the review.

API review was cancelled with no plan to reschedule. Closing.


RoutePrefixOverride not working inside UseFastEndpoints configuration

Hi, I'm not sure, if it is a bug or I'm using this incorrectly. My use case is to update endpoints globally with a route prefix, depending on a module. Code below is a simplified version
Given the endpoint configuration:
public override void Configure()
{
    Get("/test");
    RoutePrefixOverride("module_api");
    AllowAnonymous();
}

I get correct endpoint route /module_api/test
But this does not work:
public override void Configure()
{
    Get("/test");
    AllowAnonymous();
}

app.UseFastEndpoints(c =>
{
	c.Endpoints.RoutePrefix = "api";

	c.Endpoints.Configurator = (endpoint) =>
	{
		endpoint.RoutePrefixOverride("module_api");
	};
});

and I get route /api/test

should be sorted in v5.1.0-beta3.
will be on nuget in a few minutes...
thanks for reporting...

do note that however setting route prefix override at a global level will make the endpoint level call ineffective and will be ignored.

It's working now, thanks for quick response


Turn PGP back on

https://ucsc-cgl.atlassian.net/browse/SEAB-2027
Passed twice on branch in CircleCI, if PR passes let's turn it back on in develop.

Although I can approve this as is, I had expected this process to only be run when a release is performed and this seems like it is checking it for every build in CI? Perhaps this is because we don't have a separate script for when a tagged release is made.
https://ucsc-cgl.atlassian.net/browse/SEAB-1878

There had been some discussion about the initial fix in Slack which I should have captured in SEAB-1878-- the main concern then was that local builds were taking too long. So the fix was to turn it off locally and turn it on for CI, at least for the portion that builds the Docker image.
We are publishing every build to quay.io, and it seems like those images should all have been built from verified dependencies.
At that time, we were also building on Travis, which took much longer to complete, so the extra time spent building on CircleCI didn't matter -- it was still way less than the Travis time. Now that we're building only on CircleCI, hmm... We could only build if on a release branch or tag, but OTOH, if develop starts failing due to a PGP error, it would be good to have a heads up.

Hmm...I ran this locally and it worked. wonder when that package was fixed

Fair, how much of a performance hit is it?

Very confusing, doesn't seem to make a difference. I wonder if the cache is carrying across or something. In the screenshot, develop should not be using pgp, yet it actually took a little longer than the PGP branch.


Italian plurals

Matt McLauchlin<EMAIL_ADDRESS>wrote to us over email:

Hello there, I've spent some time reading your fascinating site.
I may have found an error in one of the data points, although I'm not sure if I've understood the property correctly. Feature GB039: Is there nonphonological allomorphy of noun number markers? for Italian is coded "no." However, I was able to think of several cases (a small number of nouns, but very frequent ones, including several body parts) in which the plural marker is irregular, i.e. unpredictable. The normal paradigm is:
masculine: o/io/e/a -> i (uccello->uccelli; bacio->baci; stivale->stivali; problema->problemi)
feminine: a -> e (donna->donne); e -> i (nazione->nazioni)
Nouns ending in a consonant, i, or stressed vowel remain the same, as do abbreviations: bar->bar; crisi->crisi; città->città; foto (abbreviation of fotografia) ->foto.
Irregular forms include:
uomo "man" -> uomini
dio "god" -> dei
uovo "egg" -> uova
braccio "arm" -> braccia
ciglio "eyelash" -> ciglia
dito "finger" -> dita. Note that uovo, braccio, ciglio, and dito are masculine nouns but their plurals are feminine.
In some cases, there are different plural forms based on meaning. For example, grido "cry," a masculine noun, has the feminine plural "gride" when referring to human cries/shouts, but the regular masculine plural "gridi" when referring to animal sounds. Dito "finger," a masculine noun, has the feminine plural "dite" usually, but the regular masculine plural "diti" if the fingers are specified (e.g. diti medi "middle fingers"). Muro "wall," a masculine noun, has the feminine plural "mura" when referring to city walls but the regular masculine plural "muri" when referring to house walls. The common plural of ginocchio "knee" is the feminine "ginocchia," but the regular masculine "ginocchi" also exists.
There are also a few slighter exceptions; for example, most masculine nouns ending in -co /ko/ have the plural -chi /ki/, e.g. succo->succhi, but some have the plural in -ci /tʃi/, e.g. amico->amici.
I hope I've correctly understood this marker and, if so, that this is helpful to the project!

@Michael90EVAMPI would you be able to look this over please?

Back then I rated those nouns as being not productive enough to trigger a 1. The given examples clearly emerge from the coincidence of Latin declension classes. I know these nouns, but did not have them in mind when coding. On Monday I will start with this issue and will use my fresh head to think it all through again.

Thinking it through it all makes sense. Should I just change it in the sheet adding a comment?

Done!


Enchanted CTA | When an HREF attribute in on the component (no SodaPop ID or onclick) navigation fails

The Span, neodigm-marquee, or pre element is canceling the event, making it impossible to follow the A href.

Sorry, this was not a bug in the library, but a bug in the implementation. Disregard.


Add events stuff for ops

Idk how to do interfacing between instances of player-scoped apps. gnembon, feel free to take over.

Well now that I know enough about events to make this work, I've almost forgotten what it what it was about.
But essentially it's something along the lines of ops being able to access some commands or something like that. I can't remember anymore lol


[Bug]: Add transition effect on version dropdown menu.

Describe the bug
The dropdown menu of the version  is to fast.
Add some transition so that the version will not pop immediately.
To Reproduce
Steps to reproduce the behavior:

Go to '.home page..'
Click on '.version dropdown option...'
See the version dropdown menu pop up very immediately.

Expected behavior
The drop-down option of the version will take some millesecond to show option . So , that it will make good user experience.
Screenshots

Desktop (please complete the following information):

OS: [e.g. windows 11]
Browser [e.g. chrome,]

Thanks for reporting this @Rohit-Sharmaa.  Would you be willing to help us with a solution?

@joshfischer1108 yes  i will try to solve and make a pr.

@joshfischer1108 is this issue still open? I would like to work on it.

@fkamau1 , the issue is still open. I'll assign it to you if you want it.
Thank you!

It's yours.  Thank you!


Custom templates

This is the closest packages I have found for server side forms, compared to angular-formly is for angular apps, But I was wondering if there is any easy way to create custom markup templates for the package ..
It would allow me to configure the package to use a specific markup template for a project...
since a project usually depends on a frontend framework like Bootstrap, foundation, or uikit.. It would be great if it was possible to just npm install this package, and a addon package for your frontend framework of choice, ad a option when bootrapping this package, and then just work with it as normal.

You can construct your own widgets by following the same patterns the included widgets use.

Something like forms.configure('bootstrap') would be nice as a way to use pre-configured templates for common frameworks.

Which version of bootstrap? I wouldn't want to add the maintenance burden of having to update this module with every bootstrap version - and https://github.com/caolan/forms#bootstrap-compatible-output hopefully already documents how to get bootstrap to work.

Something like forms.use(require('forms-bootstrap')) would enable this without the added maintenance of any single maintainer

I second this. I come from Symfony, using the excellent built-in forms and validator, and they just use a template for the widgets you can fully replace with whatever you want, instead of programmatically rendering them. You can just include the barest template possible and let the community to build specific templates for each UI framework.


AdaptiveCard - with submit action after selecting item from Input.ChoiceSet stopped working

i'm using "botbuilder": "^4.12.0" in my nodejs project
Below AdaptiveCard was working fine for more than a year.
Now i'm facing issues. below is the detail
if i choose any option from the Input.ChoiceSet ,  and click Action.Submit button, the backend server doesnot receive the request
if i didnot choose any option from the Input.ChoiceSet ,  and click Action.Submit button, the backend server receives the request
please help me to fix this issue
 await context.sendActivity({ attachments: [
                {
                    contentType : "application/vnd.microsoft.card.adaptive",
                    content  :
                    {
                        "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
                        "type": "AdaptiveCard",
                        "version": "1.3",
                        "body": [

                            {
                                "type": "Input.ChoiceSet",
                                "choices": [],
                                "choices.data": {
                                 "type": "Data.Query",
                                 "dataset": "executionqueueds"
                                },
                                "id": "queueidorname",
                                "isMultiSelect": false
                               }
                        ],
                        "actions": [
                          {
                            "type": "Action.ShowCard",
                            "title": "Comment",
                            "card": {
                              "type": "AdaptiveCard",
                              "body": [
                                {
                                  "type": "Input.Text",
                                  "id": "comment",
                                  "isMultiline": true,
                                  "placeholder": "Enter your comment"
                                }
                              ],
                              "actions": [
                                {
                                  "type": "Action.Submit",
                                  "title": "OK"
                                }
                              ]
                            }
                          },
                          {
                            "type": "Action.OpenUrl",
                            "title": "View",
                            "url": "https://adaptivecards.io"
                          }
                        ]
                      }

                }
            ]
            });

@Divine1 - This issue has been reported in below threads.

https://github.com/MicrosoftDocs/msteams-docs/issues/9066
https://github.com/OfficeDev/Microsoft-Teams-Samples/issues/868

We have a bug raised for the same issue. Please follow the above thread for further updates. Thank you.

@Meghana-MSFT  thank you for the update. links you have shared were reported around 20thJuly2023.
is there an ETA for receiving the fix?
Any idea what broke this feature?
because this feature was working fine perfectly previously

We currently do not have any ETA to share, we will update the threads once the fix is rolled out publicly.


Docs build v3

The Docs Build v3 migration script has been run against your repository, and a new docs-build-v3 branch has been created. The migration tool was run and found no issues.
Merging this PR completes the migration process. This enables the new DocFX engine.
Here is the list of currently supported features for Docs Build v3.

Improved Build performance
Faster iterations to improve Docs.com build pipeline
Lowered operating costs
Improved support for SRE and Engineering to perform troubleshooting
Latest version of DocFX

Docs Build status updates of commit 84eacfc:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error] Cannot sync git repo to specified state. Please make sure the pull request is mergeable. Details: Git merge results in conflict, repository remote url: https://github.com/MicrosoftDocs/message-analyzer-docs-pr, working directory: W:\kr2z-s, target branch: master, target branch commit: 81570494ac0b6a0d35714a6df2b3109bf5a9dd17, source commit: 84eacfccedf4e046363b0aa55276475bf19ae6d7.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.