Defining the directory structure

We need to come up with a directory structure which sets the basis for the conventions used in this package.
(issue imported from https://github.com/dfeyer/Ttree.Cqrs/issues/1)

Suggestion (by @robertlemke):
Your.Package/
  Application/
    Controller/
    Command/
    Service/

  Domain/
    Service/
    Aggregate/
      YourAggregate/
        Command/
        CommandHandler/
        Event/
        EventListener/
        Service/
        YourAggregate.php
        YourAggregateRepository.php

  Projection/
    MostValuableBooks/
      MostValuableBooksProjector
      MostValuableBooksReadModel
      MostValuableBooksFinder

  CommandHandler/
  EventListener/

A concrete example for that:
My.CrmContext
  Application
    Controller
      CustomerController.php
    Service
      MailService.php
  Domain
     Service
        ?
     Aggregate
       Customer
         Command
           RegisterCustomer.php
         CommandHandler
           CustomerCommandHandler.php
         Customer.php
         CustomerRepository.php
         Event
           CustomerRegistered.php
         EventListener
           ?
         Service
           CustomerOnboardingService.php (?)
  Projection
    CustomerDetails
      CustomerDetails.php
      CustomerDetailsProjection.php
      CustomerDetailsFinder.php
    CustomerListItem
      CustomerListItem.php
      CustomerListItemProjection.php
      CustomerListItemFinder.php

With the decision to skip the CommandBus for now (#3), I'd suggest one slight adjustment:
There will usually be one CommandHandler for each Aggregate, so I'd suggest to move that one level up so that you'd have sth like:
Customer
  Command
  Customer.php
  CustomerCommandHandler.php
  CustomerRepository.php
  Event

Besides I'm not 100% about the term "Projection" as 1st level directory name.. Any thoughts on that?

FYI: There are some related questions on discourse but we decided to keep the technical discussions in the respective GH issues

Will bounded context with more directories (Contexts) in the "root" of the package cause any issues here?

Will bounded context with more directories (Contexts) in the "root" of the package cause any issues here?

I don't think so, but I think that BCs should even reside in their own packages. At least that's what Vaughn Vernon and other experts keep telling: separate the BCs as if they were completely different services (microservice style) i.e. one team = one BC   (even if you don't have so many teams I think it helps to think in these boundaries)

Okay, then that discussion can go somewhere else :-)

FYI: Christian just argued that we should not avoid using Subpackages (see https://discuss.neos.io/t/deprecating-subpackage-concept/1415).
One way around this would be to establish the best practice to have only one Bounded Context per Package and consider the UI part as one (or at least have the Application part in a separate package)

should avoid! :)

I will update the README with single and multiple package recommentation

As just discussed in our weekly hangout we should probably recommend something along those lines:
Especially in larger applications it's recommended to only have one Bounded Context per Package and to consider UI/API part as one.
If one decides to have it all in one package it's advised to use a SubPackage at least to encapsulate the Application logic.
Robert also brought up the point that Projections could be considered part of the Application

I don't really see why you need the Application folder. Seems superfluous to me. Why was this introduced?

I don't really see why you need the Application folder

It's only needed if you want to put application & domain logic into one package in order to avoid mixups like this one: https://github.com/neos/Neos.Cqrs/tree/master/Classes/Command

Maybe the wording should be worked on then?

Maybe the wording should be worked on then?

OK, do you have any suggestions or can you elaborate what you don't like please?

As said, I think the Application folder is not needed. I see that Command (CLI) and Command (CQRS) shouldn't mix, but then maybe one of them should be reworded (probably CLI) to solve this issue.

But if we rename Command that would be quite a breaking change in Flow. That's why we said: You probably want to separate your Bounded Context via Packages (and consider the Application/UI one BC) or use SubPackages if you insist on a single package.
I'm all for renaming Command (or at least remove the hard-coded part that expects CLI command controllers to be in a command folder) but IMO that's a different topic

BTW: I also dislike SubPackages. Robert came up with the idea to make the "MVC-Entrypoint" configurable somehow. So you could put your App logic in some(tm) folder and point there

Some new insights after our workshop with Mathias that we should consider in the suggested directory structure:

Aggregates are not part of the API, they should be hidden lower in the structure (Mathias suggested to use "public" vs "private" entry folders)
Commands & Events are both part of the Domain and define the public API
Separate read from write in the structure
Projections are part of the Domain, too. Don't put them into your application logic

Related to that: Where to put DTOs/ValueObjects?
In general I think we should encourage a structure around processes (aka Nouns) rather than nouns (aka Aggregates/Entities) so maybe sth along those lines:
My.CrmContext
  Application
    Controller
      CustomerRegistrationController.php
    Service
      SomeNonDomainService.php
  Domain
     Service
        MailService.php
     UseCase
       CustomerRegistration
         Command
           RegisterCustomer.php
         CommandHandler
           CustomerRegistrationCommandHandler.php
         Event
           CustomerWasRegistered.php
  Projection
    CustomerDetails
      CustomerDetails.php
      CustomerDetailsProjection.php
      CustomerDetailsFinder.php
    CustomerListItem
      CustomerListItem.php
      CustomerListItemProjection.php
      CustomerListItemFinder.php

But I'm not really confident with that yet.. Where would we put some UniqueUsername constraint/aggregate in that example?
Also it still kinda mixes write & read (commands & events) and doesn't clearly distinguish API (public) and infrastructure (private) classes

@robertlemke Can you share your POV (again)? Did you suggest just to go with the first suggestion but replace "Aggregate" by "Model"?
I'd be fine with that, too. Regarding "process > structure" one could still achieve that like:
My.CrmContext
  Application
    Controller
      CustomerRegistrationController.php
    Service
      SomeNonDomainService.php
  Domain
     Service
        MailService.php
     Model
       CustomerRegistration
         Command
           RegisterCustomer.php
         CommandHandler
           CustomerRegistrationCommandHandler.php
         Event
           CustomerWasRegistered.php
  Projection
    CustomerDetails
      CustomerDetails.php
      CustomerDetailsProjection.php
      CustomerDetailsFinder.php
    CustomerListItem
      CustomerListItem.php
      CustomerListItemProjection.php
      CustomerListItemFinder.php

One rule of thumb we should follow IMO is: Don't mix predefined and custom folders on one level (i.e. within one folder there should only be either pre-defined subfolders (like "Service", "Model", "Projection", ...) or app-specific ones (like "CustomerRegistration", "CustomerDetails", ...)

Sorry for spamming, but I'm still "unhappy" with this (after thinking about it once again):
The Domain folder doesn't make sense to me, as all of this is part of the domain really, even projections. And if they're not, they belong to a different package I'd say.
Same with Model: Most of this is part of the domain model somehow – maybe not the command handler, but we put it in there anyways.
I just stumbled upon this, because I try to create a separate (sub)package for every business capability (aka Bounded Context). And while this works out quite nicely, it feels tedious to have such a deep folder hierarchy.
Also we don't really make the distinction between write vs read and/or public vs private classes very clear like this..
Maybe we can discuss this once again during our friday's weekly, now that we all have a bit more experience with this package

Can we drop the notion of subpackage please? I am really unhappy with it and IMHO there is no benefit (only constraints and possible problems) compared to just a separate package.

Can we drop the notion of subpackage please?

Didn't we already have this discussion above? ;)

The Domain folder doesn't make sense to me, as all of this is part of the domain really, even projections. And if they're not, they belong to a different package I'd say.

Yes. I guess the actual intent is more "Core Domain" than generally "Domain".

And while this works out quite nicely, it feels tedious to have such a deep folder hierarchy.

We're currently having the same in our node.js project. I still haven't found a good convention/rule for how to group commands, events, models and command handlers - even though they clearly belong closely together. After all, they form the write side (see next point).

Also we don't really make the distinction between write vs read and/or public vs private classes very clear

Absolutely, and after playing again and updating my little pet example project for this package, I had the deep urge to create separate Controllers for the write and the read side. It just felt totally awkward, trying to create a CQRS architecture, where there's still a single controller for all reads and writes on a single model/aggregate. So I'd like to propagate that we also recommend a structure, where those are clearly separated.
I see two possiblities ways to achieve this clear separation:

recommend having separate packages for write and read

create two top-level folders (i.e. subpackages) for write and read side, e.g. Command (does this interfere with current Flow convention for CLI?) and Query:

My.CrmContext
  Command
    Controller
      CustomerRegistrationController.php
    Service
      SomeDomainService.php
    Model
      CustomerRegistration
        Command
          RegisterCustomer.php
        Event
          CustomerWasRegistered.php
        CustomerRegistration(Constraints).php
        CustomerRegistrationCommandHandler.php
    Process
      CustomerRegistrationProcess(Manager).php

  Query
    Controller
      CustomerController.php
    Service
      SomeNonCoreDomainService.php
    Projection
      CustomerDetails
        CustomerDetails.php
        CustomerDetailsProjection.php
        CustomerDetailsFinder.php
      CustomerListItem
        CustomerListItem.php
        CustomerListItemProjection.php
        CustomerListItemFinder.php
    Dto
      ...

The good thing about this structure is obviously, that it can very easily be split or joined to two/one package(s) (e.g. My.CrmContext.Command and My.CrmContext.Query). The bad is that the second structure has even deeper directory hierarchy.
Regarding private/public classes, I think this distinction is harder to propagate through folder structure. I see the public parts as: Commands, Events, Finders and Controllers (and maybe DTOs) - those form the public API of the application. Everything else is supposed to be private/implementation detail.
My rule of thumb would be: Colocate things that change together. Obviously this is not the case for private and public classes.

Just my 2c.
Projections are also part of the domain, thus it's a bit illogical to put them outside of the Domain folder.
I really like the separation into Command and Query. We should segregate them after all.

@albe I like your suggestion, but some comments

I guess the actual intent is more "Core Domain" than generally "Domain"

I'm not sure about that. In my understanding the domain is everything about the business/world you're creating a solution for. The core domain is the part that the domain experts consider the fundamental and critical parts of the business, i.e. the competitive advantage. IMO that separation got nothing to do with the folder structure really (except for the fact that you might want to use existing packages for parts of the domain that are not part of that core domain)..
I think you're idea of having Command  and Query folders on the top level is worth considering – although I have cases where they share some DTOs etc – but maybe I should avoid that to begin with.
Also the idea of having separate controllers for read and write side is interesting. But I wouldn't force that and especially move it outside of the command / query part.
The controller is just one possible gateway to interact with your domain, it belongs to the Application  IMO.
I like your rule of colocating things that change together. It can be quite hard to tell though.. For example: It might be a common usecase that you add a new property to an event - so it needs to be added to the corresponding command, aggregate and maybe ReadModel, too ;)

From today's weekly meeting the following idea came up:
It will be very difficult to come up with a structure that fits all needs, so we should consider documenting the suggested structure(s) in multiple steps starting with the easiest case of a Service that publishes Events (and where to put them).
The final example could be a structure like the ones discussed above, including Application, Process Managers, Services, ...  with the noticeable advice to split up complex projects into multiple packages (maybe even separating read/ride in the application layer)

In my understanding the domain is everything about the business/world you're creating a solution for. The core domain is the part that the domain experts consider the fundamental and critical parts of the business, i.e. the competitive advantage.

Check

IMO that separation got nothing to do with the folder structure really (except for the fact that you might want to use existing packages for parts of the domain that are not part of that core domain)..

Well, normally you should only be doing DDD and all the advanced mumbo jumbo on the core domain at all, because everything else is most likely time not spent optimally (by the schoolbook at least). But of course as soon as you implement your core domain you will be touching cross-cutting concerns and other parts of your domain, that are not core. So I would have considered the implementation of business rules (i.e. aggregates) and the things that domain experts care about (i.e. events and commands) to be the major part of the implementation of the core domain. Projections are part of the domain, but at the visualization and representation layer (unless your core domain is really a reporting/statistics UI - google analytics maybe?).
But at the bottom line, I'm not convinced either of having a folder named just "Domain" and then leaving parts out that clearly belong to the domain, just not the core.

But I wouldn't force that and especially move it outside of the command / query part.

No, not force of course. Just recommend, because it better carries the whole concept of CQRS and clearly separating write and read sides. The only reason we have Controllers is because it's a leftover from the MVC pattern, where the Controller is the central entry point to your application. There, Controllers were only separated per Use Case, but moving that further to read/write is just the logical next step when going CQRS IMO.

I like your rule of colocating things that change together.

It's not originally by me. IIRC I grabbed that up from some tweet by Dan Abramov (aka Mr. Redux). So props there :)

It can be quite hard to tell though

Yes, absolutely and it also depends on your domain and work process. But I do believe there is a generic bottom line that whenever a command or event changes, the according ConsistencyModel (i.e. "Aggregate", if one exists) and CommandHandler needs to change too. Projections might need to change, but not necessarily. Otoh, if you do change a Projection, you do need to adjust the Projector, ReadModel and/or Finder together every time.
Otherwise I'm all in for the "growing" structure and documenting that incrementally. But we still need to find a "final" recommendation for the top complex projects.

Hi folks,
after the event-sourced-content-repository-week, here's the structure I'd like to propose. Still not fitting every case, but, in my opinion, better than what we currently suggest in our Readme:
My.CrmContext
  Application
    Controller
      CustomerController.php
    Service
      MailService.php
  Domain
     Service <--- This is not new, but well, could be used for cross-context services?
     Context <--- This is new (instead of "Aggregate")
       Customer
         Command
           RegisterCustomer.php
         CustomerCommandHandler.php <--- I put the command handler into the context namespace, but it's because I only have 1 usually
         Customer.php
         CustomerRepository.php
         Event
           CustomerRegistered.php
         EventListener <--- I think we should get rid of this, because different classes can be listeners
         Service
           CustomerOnboardingService.php (?)
    ProcessManager <--- this is new. "Process" would be fine too, but I tend to this
      CustomerSignUpProcessManager.php
      (you might also create a sub structure here if you have many process managers)
    Projection <--- Projection belongs to Domain
      CustomerDetails
        CustomerDetails.php
        CustomerDetailsProjection.php
        CustomerDetailsFinder.php
      CustomerListItem
        CustomerListItem.php
        CustomerListItemProjection.php
        CustomerListItemFinder.php

Please let me know if you like this more or less than what we currently suggest, so we can update the Readme accordingly.

Just for clearity, this is our current recommendation (as of April 2017) for the structure as of the Readme:
Your.BoundedContextPackage.Command/
  Classes/
    Controller/
      [UseCase]Controller.php
      …
    Service/
      [SomeDomain]Service.php
      …
    Model/
      [YourAggregate]/
        Command/
          [DoSomething].php
          …
        Event/
          [SomethingHappened].php
          …
        [YourAggregate].php
        [YourAggregate]CommandHandler.php
        [YourAggregate]Repository.php
      …
    Process/
      [Some]ProcessManager.php
      …

Your.BoundedContextPackage.Query/
  Classes/
    Controller/
      [ReadUseCase]Controller.php
      …
    Dto/
      [SomeQueryDto].php
      …
    Service/
      [SomeNonDomain]Service.php
      …
    Projection/
      [ProjectionName]/
        [ProjectionName].php
        [ProjectionName]Finder.php
        [ProjectionName]Projector.php
      …

So a few points:

Application / Domain: I have no issue with reintroducing those folders, though I tend to prefer shallower hierarchies if the additional dir level doesn't add much clearity/readability. In this case it's IMO an 50:50 case - the distinction into "Application" and "Domain" generally makes sense, but in the concrete example only really adds something if you have both "Application Services" and "Domain Services" (Controllers are always Application layer anyway)

Context <--- This is new (instead of "Aggregate"): What context exactly is that, since we already recommend separating Bounded Contexts into own packages? "instead of Aggregate" implicates it's a "model context", in which case I'd say: Why not just let it be "Model" as it currently is instead of changing to the generic and ambiguous term "Context"?

CustomerCommandHandler.php <--- I put the command handler into the context namespace, but it's because I only have 1 usually: Not a change really

EventListener <--- I think we should get rid of this, because different classes can be listeners: Wasn't even in any more explicitly, because I think we agree that you can build whatever kind of additional EventListeners you come up with and place them whereever you see fit

ProcessManager <--- this is new. "Process" would be fine too, but I tend to this: That's already there, just named "Process". I'm fine with naming it "ProcessManager", though I think it's slightly more technical, so I slightly prefer "Process"

Projection <--- Projection belongs to Domain: Absolutely, that was already a consens I think :) It doesn't show that well in the current recommendation because of the package split for read/write (command/query). Maybe we should now add a recommendation for a "combined" package structure as well, and there the "Projection" clearly is on the same level as the "Aggregate/Model", so within the domain.

Again @robertlemke please no subpackages. So no (CLI) controllers in sub structures unless we introduce a first class concept for that to work correctly.


Demo for transitions in current docs broken

http://vuejs.org/guide/transitions.html#Staggering_Transitions
The embedded fiddle: http://jsfiddle.net/yyx990803/ujqrsu6w/light/
error: [Vue warn]: Failed to resolve directive: transition
Because it's using the js from the dev branch which is rc1, but the fiddle uses the old 0.12 syntax (v-repeat, v-transition)

If you want old syntax with deprecation warnings you can use the migration branch
http://jsfiddle.net/ujqrsu6w/41/
This is a working rc fiddle
http://jsfiddle.net/ujqrsu6w/40/

Thanks, I'm mainly concerned about anyone looking at the broken example in the doc

Fixed, thanks!


🐛 VS code complain/warns about lock of biome installed in a project that doesn't use biome

VS Code version
1.93.0
Extension version
v2.3.0
Biome version
n/a
Operating system

[ ] Windows
[x] macOS
[ ] Linux

Description
I love biome and I use it in all new projects. So much faster than prettier.
The problem is that it complains that I don't have biome installed. Can it not know that my the fact that the currently opened project does not have a biome.json file?

Steps to reproduce

Fresh new JS project (e.g. npx create-next-app@latest && cd my-app
Start vs code in the new JS project (e.g. code .)

Expected behavior
No warning.
Does this issue occur when using the CLI directly?
No
Link to a minimal reproduction
No response
Logs
No response

Hey, thanks for opening this issue. Actually, the upcoming version of the extension solves this problem by introducing the biome.requireConfigFile setting which will prevent the extension from starting in projects that do not have a biome.{json,jsonc} file.
You can try this today by switching to the pre-release channel of the extension within VS Code.

I just keep "biome.enabled": false in my user settings and add "biome.enabled": true to .vscode/settings.json in the workspace where I use it.
The upcoming biome.requireConfigFile will be very much appreciated though!


Add dataset: images_de_la_revolution_francaise

A URL for this dataset
https://exhibits.stanford.edu/frenchrevolution
Dataset description

The 5,126 images selected for this digital archive concentrate solely on the period from 1787 through 1799, from the years immediately preceding the outbreak of the Revolution through the emergence of Napoleon. Only visual materials directly tied to the Revolution itself are included. The creators of the initial incarnation of the Images anticipated that scholars would use them for their research and teaching purposes, and that the public at large would find in them an important way of learning more about this foundational moment for the French nation.
Detailed metadata exists for the images, so that researchers can search by artist, subject, genre, and place. Users can also browse and search within different themes.

Parent website: https://frda.stanford.edu/

Every photo has a link to a resource URI on the purl.stanford.edu domain e.g.: https://purl.stanford.edu/qt429tp5691
Access field says:

This image(s) is a digital reproduction of works from the collections of the Bibliothèque nationale de France that are no longer protected by intellectual property rights. The use of these contents for commercial purposes is subject to payment and covered by a license. Commercial use includes the resale of the contents in the form of prepared products or the supply of services. For commercial use, contact<EMAIL_ADDRESS>The use of these contents for non-commercial purposes is free of charge, subject to compliance with applicable French legislation and notably the inclusion of the source’s statement.

Dataset modality
Image
Dataset licence
No response
Other licence
No response
How can you access this data
Via an open API
Confirm the dataset has an open licence

[X] To the best of my knowledge, this dataset is accessible via an open licence

Contact details for data custodian
No response

Looks good. We could maybe also think about adding some more general guidance on working with IIIF images/manifests. I have some code for parsing manifest which I can try and tidy up a bit.


Cannot use mock due to private type

When trying to use a mock created with
#[entrait::entrait(pub MyTrait, mock_api=MyTraitMock)]

for a generic function that is from another file, I could import the mock with version 0.5.0 and use it. Now, when I do that, I get a compile error
type `my::module::path::_::__GenericMyTraitMock<T>` is private

In the macro expansion, I can see that this struct is created in an anonymous constant block and it is not defined as pub.
I would expect the code to compile as with 0.5.0.

That was never intended to be public, as should be obvious given the __ prefix.

Yes, sure. But it is a required dependency if you want to use a Mock generated by entrait in another file. The private struct is referenced and cannot be accessed. I am not using the private strict directly. I just wanted to point you to the place where the error comes from.

Here you go.
https://github.com/wackazong/entrait-private-type
Using cargo test produces the following output for me:
   Compiling entrait-private-type v0.1.0 (/Users/alexander/Development/Repos/ibexus/entrait-private-type)
error: type `__GenericAnotherTraitMock<T>` is private
  --> src/one_trait.rs:19:17
   |
19 |         let _ = Unimock::new(AnotherTraitMock
   |                 ^^^^^^^^^^^^ private type

error: type `__GenericAnotherTraitMock<T>` is private
  --> src/one_trait.rs:19:30
   |
19 |           let _ = Unimock::new(AnotherTraitMock
   |  ______________________________^
20 | |             .with_types::<ConcreteThing>()
21 | |             .some_call(matching!(_))
22 | |             .answers(&|_, _| ()),);
   | |________________________________^ private type

error: could not compile `entrait-private-type` (bin "entrait-private-type" test) due to 2 previous errors

Putting a pub(crate) in front of the struct definition solves it for me. But how do I figure out where to patch your code? This is above me, sorry.

released 0.6.7


Update discovery documentation

Someone pls do a final review

thanks for keeping the doc in sync !
once there is a stable 1.0 version, we should add versionadded blocks when we add new features, to make the doc useful and understandable for existing users. with pre-1.0 versions we should not bother or we clutter docs with too much information.

I added only one: the NotFoundException deprecation


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


add run scripts and utils to get user input

ML-4351
The prior PR has been split into two PRs for better review.
This PR contains the run script, utils, and tests.

[ ] Tests (if applicable)
[ ] Documentation (if applicable)
[ ] A full explanation here in the PR description of the work done and statistical methods used

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Tests
[ ] Other

Backward Compatibility
Is this change backward compatible with the most recently released version? Does it introduce changes which might change the user experience in any way? Does it alter the API in any way?

[ ] Yes (backward compatible)
[ ] No (breaking changes)

You might also want to consider adding a [tool.poetry.scripts] section to the pyproject.toml for your scripts. For example: https://github.com/godaddy/tartufo/blob/main/pyproject.toml#L36-L37
This way, when people install the project, the script/command is automatically available to them. So for example you could have:
[tool.poetry.scripts]
run-sample-size = "scripts.sample_size_run:main"

And then users would have a run-sample-size command available to them.
One other big thing to keep in mind is the actual paths you are using. Since scripts is a top-level module here, that means that it will get bundled by poetry when you build a wheel with poetry build. Then, when an end-user installs that wheel, they will then have a module named scripts in their Python installation. Vitally, this will not be scoped under sample_size, but rather global. This can be dangerous, as it might conflict with other projects/packages.

Maybe can include some instructions on how to use this script somewhere (we can add more details later after we publish the package) then it is clear about how to use this script


[Fixed]: Removed duplicate files (CODE_OF_CONDUCT.md, CONTRIBUTING.md)

Fixes
Fixes #218 by @nox1134
Description
This PR removes the duplicate files CODE_OF_CONDUCT.md and CONTRIBUTING.md from the repo and updates the README.md file accordingly to ensure the utilization of organization default community health files as outlined in GitHub Repo Guidelines.
Related to (https://github.com/creativecommons/.github/issues/38)
Screenshots

Checklist

[x] My pull request has a descriptive title (not a vague title like Update index.md).
[x] My pull request targets the default branch of the repository (main or master).
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[x] I added or updated documentation (if applicable).
[ ] I tried running the project locally and verified that there are no
visible errors.

Developer Certificate of Origin

For the purposes of this DCO, "license" is equivalent to "license or public domain dedication," and "open source license" is equivalent to "open content license or public domain dedication."

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

Glad to help.


Build pipeline and .NET 3.5 support

This is my attempt at adding automated build scripts. I needed to get multiple frameworks supported in the Nuget packages, so I've also added .NET 3.5 support (so should solve #25). It works by having a separate project for .NET 3.5 so it can target that framework, but just links the original files.
The HowToBuild.md in the build folder is a good starting place. I've linked my forked repo to AppVeyor so you can see the output (https://ci.appveyor.com/project/CodeHex/bugsnag-dotnet). It also builds a Nuget package for the Mono version of Bugsnag which I managed to quickly test in Xamarin Studio.
Let me know what you think, not really sure if its along the same lines of your existing build process for the other apps.
Need to test it a bit more, but thought I'd put the pull request in so you can look at it.

This looks good - does this mean that we will always have two nuget packages (mono and .net) with the .net package bundling support for as many framework versions as we want?
This is slightly different to how we build for other platforms, but in a good way. Usually we just manually build on our dev machines, but we dont run windows so having it automatically producing build artifacts will be incredibly useful for us.

That's right, but both the normal version and the Mono version would support different .NET frameworks. That way, e.g. if you created a library for .NET 3.5 and wanted it to run on Mono as well, you could use the BugsnagMono nuget package, which would use the Mono/.NET 3.5 compatible version for that library. That's the idea anyway. The build script would handle testing each variation automatically.
The AppVeyor way of building should hopefully let you build the artifacts without needing a Windows environment.

Looks like the IconUrls in the nuget packages need to point to 32x32 icons or they don't show. I've added a local .png logo file and updated the links to file in github if this gets merged into master.
If you want them to point to something else, just need to delete the logo .png and update the nuspec links.


Login failed for user 'sa' when creating the db in Chapter 5

Could not connect to the db via Azure Data Studio either with the same error.

After some digging I went to inspect the container and checked the MSSQL_SA_PASSWORD value. It was completely different from the one in the instructions MSSQL_SA_PASSWORD=Pa$$w0rd. Once you use the password form the container - it seems to be working fine.

I missed updating the readme file here. With a previous Aspire version we had to set the password (and retrieve it using the secrets) and need to pass it to the app model for the database. With the changes it's simpler now.
I'll update the readme file, thanks!

I already had password with SQL updated in the book and in samples, thus it was working as expected. I've added more details to the readme file of chapter 5.
What you might run into is that the docker volume was already created with the other password you mentioned:
Running the application with this configuration:
var sqlServer = builder.AddSqlServer("sql")
    .WithDataVolume("codebreaker-sql-data", isReadOnly: false)
    .AddDatabase("CodebreakerSql");

Creates a volume with a random password. This only works once, because next time a new password is created, and this does not match the one stored.
Setting Parameters:sql-password  to a password, always this password is used, and you can re-run the application keeping the data.
Another option is to retrieve the password from parameters, and pass it to the AddSqlServer method:
var sqlPassword = builder.AddParameter("SqlPassword", secret: true);

var sqlServer = builder.AddSqlServer("sql", sqlPassword)
    .WithDataVolume("codebreaker-sql-data", isReadOnly: false)
    .AddDatabase("CodebreakerSql");

Here, the configuration Parameters:SqlPassword needs to be set.
I hope this helps.
Moving this to discussions.


Print to stderr

see https://github.com/yt-dlp/yt-dlp/issues/7271#issuecomment-1979912216

Thank you!


Add support for required_providers

Terraform added the required_providers block a while ago, and as of Terraform 0.14, it gives a warning at plan time if you don't have one. It'd be great if Terrascript supported this! See https://www.terraform.io/docs/configuration/provider-requirements.html#requiring-providers for details.

Came here to ask if this is supported and, if not, if it could be added!
Need to add the equivalent to this HCL:
terraform {
  required_providers {
    datadog = {
      source = "datadog/datadog"
    }
  }
}

Came here to ask if this is supported and, if not, if it could be added!
Need to add the equivalent to this HCL:
terraform {
  required_providers {
    datadog = {
      source = "datadog/datadog"
    }
  }
}

As of today, this is easy to add to ones generated configuration like this:
Python 3.8.6 (default, Sep 25 2020, 00:00:00)
[GCC 10.2.1 20200723 (Red Hat 10.2.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import terrascript
>>> terrascript.Terrascript(terrascript.terraform(required_providers={"aws": {"source": "hashicorp/aws", "version": "~> 3.0"}}))
{'terraform': {'required_providers': {'aws': {'source': 'hashicorp/aws', 'version': '~> 3.0'}}}}

What is the requested feature? That any provider that gets added to the config are automatically added as a required_provider as well?
This would be possible to do for the providers where a version have been specified, but would otherwise be hard.

As of today, this is easy to add to ones generated configuration like this:
Python 3.8.6 (default, Sep 25 2020, 00:00:00)
[GCC 10.2.1 20200723 (Red Hat 10.2.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import terrascript
>>> terrascript.Terrascript(terrascript.terraform(required_providers={"aws": {"source": "hashicorp/aws", "version": "~> 3.0"}}))
{'terraform': {'required_providers': {'aws': {'source': 'hashicorp/aws', 'version': '~> 3.0'}}}}

What is the requested feature? That any provider that gets added to the config are automatically added as a required_provider as well?
This would be possible to do for the providers where a version have been specified, but would otherwise be hard.

I agree that automatically adding providers to required_providers would be hard -- we're planning to use Terrascript to write code that does that, and we'll require versions in our configs, but I don't think Terrascript itself should be enforcing that.
I hadn't put together that you could do it like in your example, but looking at our code now, I see that this is how we do backends too, so the same thing should work here! Let me try it out, and if it works as expected for us, I'll close this out. Stay tuned!

I agree that automatically adding providers to required_providers would be hard -- we're planning to use Terrascript to write code that does that, and we'll require versions in our configs, but I don't think Terrascript itself should be enforcing that.
I hadn't put together that you could do it like in your example, but looking at our code now, I see that this is how we do backends too, so the same thing should work here! Let me try it out, and if it works as expected for us, I'll close this out. Stay tuned!

@jbscare I realized there is some limitations for the terraform property (namely, you can not update it by providing it multiple times). I prepared a fix for that: https://github.com/mjuenema/python-terrascript/pull/142 which I intent do get into develop ASAP.

@jbscare I realized there is some limitations for the terraform property (namely, you can not update it by providing it multiple times). I prepared a fix for that: https://github.com/mjuenema/python-terrascript/pull/142 which I intent do get into develop ASAP.

The solution @ilons suggested above will be documented in release 0.10.0.


Remove version: THS.THS.Hevo version <IP_ADDRESS>

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

https://github.com/microsoft/winget-pkgs/issues/142854


conflicting with tailwind forms plugin

Hey there,
"Toggle" behavior conflicts with Tailwind Forms Plugin.
https://play.tailwindcss.com/digFSceQaP

Tailwind Forms applies style for all inputs by default so this is not something we can fix on daisyUI side.
You should either use the strategy: 'class' config for Tailwind Forms so this plugin only applies style to the inputs with specific class names or you should disable Tailwind Forms completely if you're not using it (because it basically does the same job as daisyUI)
Let me know if you have any questions.


[[FIX]] Throw W033 instead of E058 when the ; after a do-while stmt is missing

In ES6, ; is always inserted after a do-while statement (even if there isn't a line break): - 11.9.1 Rules of Automatic Semicolon Insertion.
This pr makes JSHint trigger a warning (which can be disabled using asi: true) instead of an error.

Following up with gh-3066.

We landed an update version of this in gh-3066. Thanks, @nicolo-ribaudo!


Rename marketplace into catalog

Replace all references to Marketplace with Catalog to make it appear less like a storefront... This will affect the UI elements as well as URLs and class/module names.

Done with #14.


tfcompile with tf.nn.dynamic_rnn crashes

Trying to build a C++ binary with tfcompile crashes with INVALID ARGUMENTS: Mising Exit successor to rnn/while/Switch if the graph contains tf.nn.dynamic_rnn, but it works with tf.while_loop in general, and also works with tf.nn.static_rnn (and just stacking/unstacking around the RNN). Why is this?

@tatatodd any idea?

@carlthome What version of tensorflow are you using?  Since XLA and tfcompile support is currently experimental, I'll suggest you build from sources at HEAD.
Also, can you provide a minimal test case that demonstrates the problem?  Thanks!

I'm having the same issue with tfcompiler and tf.nn.dynamic_rnn.
OS:
Ubuntu 16.04
TF version:
1.2.1 built from source without GPU support and no XLA JIT.
Test case:
xin = tf.placeholder(tf.float32, [1, 10, 10], name='input')
cell = tf.contrib.rnn.LSTMCell(512)
out, _ = tf.nn.dynamic_rnn(cell, xin, dtype=tf.float32)
out = tf.identity(out, name='output')

sess = tf.Session()
sess.run(tf.global_variables_initializer())

saver = tf.train.Saver()
saver.save(sess, 'outgraph')

outgraph.config.pbtxt:
feed {
  id {
    node_name: "input"
  }
  shape {
    dim { size: 1 }
    dim { size: 10 }
    dim { size: 10 }
  }
}

fetch {
  id {
    node_name: "output"
  }
}

BUILD file:
load("//tensorflow/compiler/aot:tfcompile.bzl", "tf_library")

tf_library(
  name = "test_dyn_rnn",
  cpp_class = "TestDynRNN",
  graph = "outgraph.pb",
  config = "outgraph.config.pbtxt",
  freeze_checkpoint = "outgraph.ckpt"
)

Command:
bazel build //tensorflow/compiler/aot/tests/test_dyn_rnn:test_dyn_rnn
The build command results in INVALID ARGUMENTS: Missing Exit successor to encoder/rnn/while/Switch.
Swapping to tf.nn.static_rnn works however.
Here's a complete example.

I've been able to consistently reproduce the error INVALID ARGUMENTS: Missing Exit successor to rnn/while/Switch with master, thanks to @patrikohlsson's example. Perhaps @ebrevdo has some insight into what makes tf.nn.dynamic_rnn finicky with tfcompile?

With the XLA JIT fix posted by kayzhu in #11122 I can now reproduce the Missing Exit successor with XLA JIT enabled as well.

The tf.nn.dynamic_rnn library uses TensorFlow control-flow, which isn't well supported by XLA.  There's a little bit of special support in the JIT codepath, but the AOT (i.e. tfcompile) codepath doesn't support this at all right now.
Errors about Enter, Exit, Switch and Merge nodes are all symptoms of of this problem.
There is no workaround at the moment.  There are some in-process discussions and prototyping about how to handle this.  Our exact approach hasn't been fleshed out yet.
@hawkinsp may have some more details.

Cool. It would be nice if XLA supported loops eventually. Is there a list in the documentation about what ops are not well supported at the moment? Particularly, the tf.nn stuff I'd expect to work as it's a core package.
For my particular use case with a recurrent neural network (RNN), it's fine to unroll it before tfcompile and pad/truncate test data as needed, but I'd imagine there are applications where that fix would not be straightforward.

@carlthome Yeah, one way or another we'll have support for loops in XLA AOT; we just need to work out the technical details.
We don't have documentation about what TensorFlow ops we support via XLA AOT or JIT at the moment, but the implementation of all of the TF->XLA translations is here:
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/compiler/tf2xla/kernels
And yes, thanks for mentioning unrolling.  Indeed for some models, a workaround is to statically unroll your loops before feeding into XLA.  An example for LSTMs is here:
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/compiler/tests/lstm.py
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/compiler/tests/lstm_test.py

Keep in mind that tf.nn.dynamic_rnn relies on tf.while_loop; there are now
some XLA primitives you can use (as of the last couple of days) in github
master; see, i.e.,
https://github.com/tensorflow/tensorflow/commit/3e9cd2e13da566e279396d232004d3c4ffad336e
https://github.com/tensorflow/tensorflow/commit/eb1fe50da445d3880b588215f6fadcc7f48dd3ff
You'll want to download a tensorflow nightly if you want to try it.
Keep in mind this code will perform a full unroll internally on the XLA
side, and nested while_loops (while_loop inside a dynamic_rnn) are not
really supported.
You want to be really careful with this new, relatively untested, xla
bridge.  See the new xla rnn unit tests for examples.
On Thu, Jul 13, 2017 at 10:42 AM, Todd Wang<EMAIL_ADDRESS>wrote:

@carlthome https://github.com/carlthome Yeah, one way or another we'll
have support for loops in XLA AOT; we just need to work out the technical
details.
We don't have documentation about what TensorFlow ops we support via XLA
AOT or JIT at the moment, but the implementation of all of the TF->XLA
translations is here:
https://github.com/tensorflow/tensorflow/tree/master/
tensorflow/compiler/tf2xla/kernels
And yes, thanks for mentioning unrolling. Indeed for some models, a
workaround is to statically unroll your loops before feeding into XLA. An
example for LSTMs is here:
https://github.com/tensorflow/tensorflow/blob/master/
tensorflow/compiler/tests/lstm.py
https://github.com/tensorflow/tensorflow/blob/master/
tensorflow/compiler/tests/lstm_test.py
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/11275#issuecomment-315150279,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtimxN9jaKDnZKGMyRBiV6cEDQCLllHks5sNlcDgaJpZM4ONgEv
.

@tatatodd I'm assigning to you to take out of triage queue. Feel free to re-assign

ETA on tf.nn.dynamic_rnn support in XLA AOT?

@carlthome For inference (not training), it might actually work right now. No-one has been working directly on AOT support for tf.nn.dynamic_rnn(), but as it happens I think all the pieces are there. Give it a go and let me know what happens!

Don't we need the new max iterations attribute on while_loop?
On Sep 19, 2017 8:56 AM, "Peter Hawkins"<EMAIL_ADDRESS>wrote:

@carlthome https://github.com/carlthome For inference (not training),
it might actually work right now. No-one has been working directly on AOT
support for tf.nn.dynamic_rnn(), but as it happens I think all the pieces
are there. Give it a go and let me know what happens!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/11275#issuecomment-330585427,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtimx_mR7NDx2bST4JCr89lQLeGXpkQks5sj-QVgaJpZM4ONgEv
.

@ebrevdo I suspect not, actually. We need an iteration bound only for training (for Stacks as it happens, not for TensorArrays.)

Well, new error at least so that's good:
INVALID ARGUMENTS: Input 0 of node encoder/rnn/while/add/y was passed int32 from encoder/rnn/while/Switch:1 incompatible with expected INVALID.

@carlthome Yes, we're making progress :-) Would you be able to give me a small self-contained reproduction to look at? Thanks!

Yeah! :man_dancing:
Anyway from latest master with all defaults (e.g.
git clone git@github.com:tensorflow/tensorflow.git && cd tensorflow && PYTHON_BIN_PATH=$(which python) USE_DEFAULT_PYTHON_LIB_PATH=1 CC_OPT_FLAGS='-march=native' TF_ENABLE_XLA=0 TF_NEED_MPI=0 TF_NEED_JEMALLOC=1 TF_NEED_GCP=0 TF_NEED_HDFS=0 TF_NEED_VERBS=0 TF_NEED_OPENCL=0 TF_NEED_CUDA=0 TF_NEED_GDR=0 ./configure)
And this is basically just @patrikohlsson's example:
create_graph.py:
import tensorflow as tf

x = tf.placeholder(tf.float32, [1, 10, 10], name='input')
c = tf.nn.rnn_cell.LSTMCell(32)
y, _ = tf.nn.dynamic_rnn(c, x, dtype=tf.float32)
y = tf.identity(y, name='output')

with tf.Session() as session:
  session.run(tf.global_variables_initializer())
  saver = tf.train.Saver(write_version=tf.train.SaverDef.V1)
  saver.save(session, 'graph.ckpt')

graph.config.pbtxt:
feed {
  id { node_name: "input" }
  shape {
    dim { size: 1 }
    dim { size: 10 }
    dim { size: 10 }
  }
}
fetch {
  id { node_name: "output" }
}

BUILD:
load("//tensorflow/compiler/aot:tfcompile.bzl", "tf_library")

tf_library(
  name = "dynamic_rnn_graph",
  cpp_class = "Graph",
  graph = "graph.pb",
  config = "graph.config.pbtxt",
  freeze_checkpoint = "graph.ckpt"
)

Assuming TensorFlow is installed, run create_graph.py and put its output files into the repo root together with BUILD and graph.config.pbtxt, and then run bazel build :dynamic_rnn_graph.

Looking at the codebase, r1.4 includes this https://github.com/tensorflow/tensorflow/commit/0e71ecaf9512cd8a69af01ac85e5e1632171c651 which is mostly what we already had as a workaround on https://github.com/mozilla/tensorflow/ repo.

I tried again just now with master and still failing with INVALID ARGUMENTS: Input 0 of node encoder/rnn/while/add/y was passed int32 from encoder/rnn/while/Switch:1 incompatible with expected INVALID.

Ping @ebrevdo, could we expect tf.nn.dynamic_rnn to work with XLA eventually?

Yes; though I don't promise it'll happen by end of December.
On Tue, Dec 19, 2017 at 11:04 AM, Carl Thomé<EMAIL_ADDRESS>wrote:

Ping @ebrevdo https://github.com/ebrevdo, could we expect
tf.nn.dynamic_rnn to work with XLA eventually?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/11275#issuecomment-352855390,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtimy7sJCmmS4s50fmMM6RRPxqOIwR_ks5tCAjMgaJpZM4ONgEv
.

@ebrevdo do you expect to see any speed gains?

As a follow-up question, is it within XLA's goals to work with seq2seq models at some point? Will it be possible to use XLA on graphs that have variable length inputs and outputs? Right now, it seems that tfcompile does not like fetches with dimension -1.

It is a goal; but because XLA will JIT a graph and perform memory layout
before any execution, you will have to provide a "maximum max_time" for
the memory layout (even if the loop will not calculate up to this maximum
size).  When working with dynamic_rnn, for example, this will mean you will
have to pad your batched sequence inputs to some specific max_time size(s),
like 10, 50, 100, ...; to ensure XLA doesn't try to JIT compile for every
possible max(sequence_length) across your minibatches.  The tensorflow NMT
tutorial shows how to bucket batches by sequence lengths, but does not
currently pad the input max_times to the bucket boundaries.
On Wed, Dec 20, 2017 at 8:49 AM, leod<EMAIL_ADDRESS>wrote:

As a follow-up question, is it within XLA's goals to work with seq2seq
models at some point? Will it be possible to use XLA on graphs that have
variable length inputs and outputs? Right now, it seems that tfcompile
does not like fetches with dimension -1.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/11275#issuecomment-353117651,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtim2kBtt6Pd9UOPkYyfUgpZtuBgwDeks5tCTqkgaJpZM4ONgEv
.

Sounds good, the requirement to pad sequences makes sense. Thank you for the quick reply!

Nagging Assignee: It has been 14 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

@ebrevdo So, it looks like with current master, it's not an issue anymore ? At least I can again use tfcompile

Yes; we've fixed this up recently.  I'll close this bug so if you run into
any issues please open a new one.
On Mon, Feb 12, 2018 at 3:58 AM, lissyx<EMAIL_ADDRESS>wrote:

@ebrevdo https://github.com/ebrevdo So, it looks like with current
master, it's not an issue anymore ? At least I can again use tfcompile
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/11275#issuecomment-364902429,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtim2W-19LdOYnoaUi9hC3FuEXqH6OZks5tUCd7gaJpZM4ONgEv
.

Nice! Looking forward to testing this again. 🎉

@ebrevdo Is it supposed to be fixed on r1.5 as well ?

I think not, only nightlies and the upcoming 1.6
On Tue, Feb 13, 2018, 1:51 AM lissyx<EMAIL_ADDRESS>wrote:

@ebrevdo https://github.com/ebrevdo Is it supposed to be fixed on r1.5
as well ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/issues/11275#issuecomment-365210803,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABtimz5KMABVuKMiYsvPXCSa4zAgM8efks5tUVstgaJpZM4ONgEv
.


Applications hangs when attempting to download certain url

Ripme version: 1.7.89
Java version: 11.0.5-ea
Operating system: Ubuntu 19.10 x86_64
Exact URL you were trying to rip when the problem occurred (nsfw): https://www.reddit.com/user/jettetje/

Expected Behavior
The page to be ripped.
Actual Behavior
Application always hangs after downloading https://i.redd.it/x92hm58hzqw31.png. The rip can be stopped but any rip started after will be stuck on "Starting rip...". The app then can't be closed or ended/killed through htop etc. ripme.log is empty, I'm guessing because of the hang.
This seems similar to #845 but a fix for that was pushed.

Go to issue #1477 and download the testbuild, change the .zip to .jar.    I used the test build on https://www.reddit.com/user/jettetje/ and it worked fine.

Yep! That build's fixed it. Time to get RipMeApp/ripme#1487 merged!


Fix tergite version >2024.9.1

Why
Tergite versions +v2024.9.1 have clear dependencies listed so that incompatibilities with other packages are automatically resolved by pip. It also comes with qiskit pre-installed. Attempting to install another qiskit (e.g. +1.0) will raise errors either at runtime or during installation.
We fix tergite to versions above v2024.9.1 for this reason.
Note: this forces older versions of qiskit_iqm to be installed. This will change when tergite starts supporting qiskit +v1.0 in its next major release
What was done

Fixed tergite version to >=2024.9.1
Removed qiskit from requirements (in requirements.txt and as default requirements)

lgtm, let's update CHANGELOG and then merge?


M00-LAB00: QUICK_DESCRIPTION

Contact Details
No response
What happened?
Exercise : Module 2 - Lab 1 - Exercise 1 - Deploy Microsoft Defender for Endpoint
Task: 2: Onboard a Device.
Description of issue:
After the device is onboarded, in the Microsoft 365 Defender portal,  the device is never shown, even waiting for more than an hour.
Is anyone else facing same issue?
Lab
Lab 02 Exercise 01 Deploy Microsoft Defender for Endpoint
Relevant screenshots
No response
Do you want to help us? 👏

[ ] Create a Pull Requestt by following this project's Contribution Guide

its work fine for me ......... it will take 5 mins to onboard the device


请问admin下得前端资源可以开源吗

Question
请问admin下得前端资源可以开源吗

@justlemontree
Hey, please communicate in English.
The front end of shenyu is in this repository.

ths~~

@justlemontree
please close this issue，thanks


Error creating memory

I also reported this via the in app screenshot bug reporting tool. So I'm not sure where those go.
My friend captured a gigantic amount of speech to text today and throughout the day got the error about creating a memory.
And one release I lost all memories
And here I'm also losing memories
I am an unhappy user

the huge amount of text not even discarded it just disappears.

I'm fairly certain the issue has something to do with connectivity.  i have some evidence that when at home with a solid wi-fi / cell connection I do not see this problem.  however when at work with a very poor wifi or cell connection I see these errors.

I propose that a loss of all memories is a P0

Report on discord tampino_the_incredible
Yeah... It's capturing nothing, even when I talk directly into it... So definitely not recording memories. It was working okay in the house yesterday... But not today when I'm out and about
Might be a coincidence, but I have seen a correlation between "listening / memories" capture not working , and my phone switching between wifi / 4g / 5g.

Not sure if this helps diagnose, but I'm getting no audio in my GCP bucket.  This was working as of June 17.

This is environmental @josancamon19 .  When i use friend with good wifi, I do not see this.

I guess my reception is better at work because I am in fact getting memories today

Thank you @bbookman for the feedback. I've implemented a few layers of handling exceptions, edge cases, so this doesn't happen anymore, still there's room for improvement, will release this version soon.


add uplink implant

About the PR
basically a more stealthy (hey johnny whered your pda go) and single-use version of putting pda in a storage implant
to fill with tc simply use tc on yourself. unlike pda uplink, its popup is only visible to you (open to change)
costs 4 tc i think like in /tg/ (open to change)
Media
uplink entry:

action:

store:

https://user-images.githubusercontent.com/39013340/234721478-4b9b8b19-ee7c-4074-8843-68fd57e6747f.mp4

[X] I have added screenshots/videos to this PR showcasing its changes ingame

Changelog
:cl:

add: The Syndicate is now offering uplink implants so you can buy a super surplus when locked up for gibbing the mime.

(gaming reference)


[Bug] _switching_application_in_edinormal

About Bug
in  EDINORMAL i cannot switch applications using alt-tab when i  map to get that functionality I cannot get enter to work
Steps to reproduce

i create the config

    nmap <Tab> <taskview>
    nmap <Enter> <Enter>

pressing TAB opens the alt-tab and i can navigate between tasks, Enter is working like arrow down, and when i try to remap enter to enter it still will not select the application. is there a command to select or how to remap enter?

Environments
Delete the example and fill in your information.

Windows Edition
[e.g. 10 Home, 10 Pro, 10 Enterprise, 11 Home]

Windows Version
[e.g. 1909, 20H2]

Windows Build
[e.g. 19042.804]

Architecture
[e.g. 64bit/32bit]

win-vind Version
[e.g. 4.0.0]

win-vind Install Type
[zip/installer/chocolatey/winget]

I also experienced difficulties in switching apps, but took a different approach. Try this and let me know if helpful:
ennoremap <alt-tab> <to_resident>{<alt-tab>}


Dosage

Motivation for this change
Package was marked broken. I updated it and moved it to its own file
Things done

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

[ ] NixOS
[ ] macOS
[ ] 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"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

Sorry, the PR wasn't ready :/


create a demo page?

Hi.
Please provide a demo page for your project?
Thank you

@mortezakarimi64 What extra information would a demo page for an extension library provide? moment js has a big website for it that somehow documents pretty much anything you can do with this one. And there really isn't anything visual we can represent.
But if you have creative ideas that could help people learn the code faster. A PR is always welcome 👍 👍


Remove no longer needed error for little endian conversion

Codecov Report

Merging #292 (71bd871) into master (9b1bfbb) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #292   +/-   ##
=======================================
  Coverage   80.00%   80.00%
=======================================
  Files          30       30
  Lines        4672     4672
=======================================
  Hits         3738     3738
  Misses        934      934

Impacted Files
Coverage Δ

src/lib.rs
27.27% <ø> (ø)

src/value.rs
68.84% <ø> (ø)

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 9b1bfbb...71bd871. Read the comment docs.


Grid too small in Y direction

Hello,
I am attempting to run a wind farm simulation (with one turbine) using FAST.Farm in a Windows environment, but I am consistently encountering the following error:

Everything runs smoothly when I use FAST.
As you can see, I am using version 3.5.2 of FAST.Farm_x64_OMP, with Mod_AmbWind set to 2. The specific fstf file and fst file are as follows. I am puzzled about where the Y boundary [-600, 600] comes from. Could you provide some suggestions regarding this issue?
issue.zip
THANKS!

Unfortunately, the same error persists in version 3.5.3.
By the way, both versions 3.5.2 and 3.5.3 directly downloaded and used will prompt a stack overflow error, which requires adjusting the stack reserve size during compilation. This issue was supposed to be resolved in version 3.5.3, but it appears that it has not been addressed.

Dear @shipors,
The Y boundary range of [-600, 600] comes from the TurbSim wind data file you are using (which is using GridWidth = 1200 m).  (Note: You shared a TurbSim input file, but this does not appear to be the one you are using because GridWidth in that file is 145 m.)  The points at -4000 m etc. triggering the error comes from your settings of the low- and high-resolution domains within FAST.Farm.  Naturally, with Mod_AmbWind = 2, all points in the low- and high-resolution domains of FAST.Farm must fall within the bounds of the wind specified within InflowWind, which in your case is the 1200-m wide TurbSim domain.
FYI: We generally recommend using the Python scripts provided in the OpenFAST Toolbox when generating inflow and setting up FAST.Farm models: https://github.com/OpenFAST/openfast_toolbox/tree/main/openfast_toolbox/case_generation.
Best regards,


cmd/cue: unable to reference definition from package-embedded definition

What version of CUE are you using (cue version)?

$ cue version
cue version +aee9955 linux/amd64

Does this issue reproduce with the latest release?
Yes
What did you do?
-- cue.mod/module.cue --
module: "mod.com"
-- x.cue --
package x

import "mod.com/y"

y.#G

Ts: ["hello"]
x: #T
-- y/y.cue --
package y

#G: {
	Ts: [...string]
	#T: or(Ts)
}

Running:
$ cue def
x: reference "#T" not found:
    ./x.cue:8:4

Which makes sense because there is no #T in scope.
To my knowledge there is no way of referring to the package instance in which y.#G is embedded. But that is the only way to correctly refer to #T (because #T, is defined in terms of the fields of y.#G)
Hence I think we need some way to refer to the "current" package instance.

Noting a workaround per an offline conversation with @mpvl:
// x.cue
package x

import "mod.com/y"

y.#G

#T: _

Ts: ["hello"]
x: #T

Another idea we kicked around was using a bare . to mean "the current scope", enabling something like this:
// x.cue
package x

import "mod.com/y"

y.#G

Ts: ["hello"]
x: .#T

This issue has been migrated to https://github.com/cue-lang/cue/issues/564.
For more details about CUE's migration to a new home, please see https://github.com/cue-lang/cue/issues/1078.


Rewrite Babel's identifiers, synonyms and labels so that they can be used to train SAPBert

Babel is the backend that creates a single set of clustered identifiers for NodeNormalization (the slightly out of date production instance is at https://nodenorm.transltr.io/1.3/docs) and NameRes (out of date; I'll be updating this tomorrow or early next week). If we train an instance of SAPBert on the vocabulary included in Babel rather than UMLS, then it should remove the need to normalize the results and will include Biolink types for every identifier.
Currently, Babel has two kinds of files:

compendia/ files provide sets of identifiers that refer to the same concept. For example, one of the lines is compendia/GrossAnatomicalStructure.txt reads:
{"type": "biolink:GrossAnatomicalStructure", "ic": "100", "identifiers": [{"i": "UBERON:0002107", "l": "liver"}, {"i": "UMLS:C0023884", "l": "Liver"}]}

synonyms/ are tab-delimited files that provide lists of synonyms for the identifiers. For example, synonyms/GrossAnatomicalStructure.txt contains the lines:
UBERON:0002107	http://www.geneontology.org/formats/oboInOwl#hasExactSynonym	Liver structure
UBERON:0002107	http://www.geneontology.org/formats/oboInOwl#hasExactSynonym	liver
UBERON:0002107	http://www.geneontology.org/formats/oboInOwl#hasExactSynonym	Organ System, Hepatic
UBERON:0002107	http://www.geneontology.org/formats/oboInOwl#hasExactSynonym	Liver, NOS
UBERON:0002107	http://www.geneontology.org/formats/oboInOwl#hasExactSynonym	Hepatic Organ System
UBERON:0002107	http://www.geneontology.org/formats/oboInOwl#hasExactSynonym	LIVER

We're working to replace this with an SSSOM-based format.
I've had a look at the SAPBert training example code, and I think we will want to convert this into the following format by combining compendia and synonym files:
UBERON:0002107||liver||Liver structure
UBERON:0002107||liver||liver
UBERON:0002107||liver||Organ System, Hepatic
UBERON:0002107||liver||Liver, NOS
UBERON:0002107||liver||Hepatic Organ System
UBERON:0002107||liver||LIVER

These are now on Hatteras in /projects/babel/sapbert-training/2022oct13/compendia, but in a slightly different format:
biolink:Disease||UMLS:C2861831||Nondisplaced fracture of left tibial tuberosity, subsequent encounter for open fracture type I or II with nonunion||Nondisplaced fracture of left tibial tuberosity, subsequent encounter for open fracture type I or II with nonunion
biolink:Disease||UMLS:C2861831||Nondisplaced fracture of left tibial tuberosity, subsequent encounter for open fracture type I or II with nonunion||Nondisp fx of l tibial tuberosity, 7thM
biolink:Disease||MONDO:0033558||autoinflammation, immune dysregulation, and eosinophilia||Atopic Dermatitis, Enteritis, Colitis, and Eosinophilia
biolink:Disease||MONDO:0033558||autoinflammation, immune dysregulation, and eosinophilia||autoinflammation, immune dysregulation, and eosinophilia
biolink:Disease||MONDO:0033558||autoinflammation, immune dysregulation, and eosinophilia||ATOPIC DERMATITIS, ENTERITIS, COLITIS, AND EOSINOPHILIA
biolink:Disease||MONDO:0033558||autoinflammation, immune dysregulation, and eosinophilia||AIIDE
biolink:Disease||MONDO:0033558||autoinflammation, immune dysregulation, and eosinophilia||AUTOINFLAMMATION, IMMUNE DYSREGULATION, AND EOSINOPHILIA

The code to generate this from Babel outputs is in a PR at https://github.com/TranslatorSRI/babel-validation/pull/15
Most of the files in that directory should be of a single Biolink type, except for umls.txt, which has multiple Biolink types in it.
I'm closing this issue for now, but please open another issue if I need to change the output format in any way!


ENH missing decimal parameter in .to_latex and .to_html

.to_csv has a decimal parameter to specify the decimal mark for floats since version 0.16
It would be nice to have the same thing in .to_latex and .to_html.
I'll work on a PR.
This issue is a spin-off of #7061, in which @TomAugspurger  said:

There’s a possibility that we’ll be able to replace some of the to_latex code with a Jinja template, similar to the Style stuff. So don’t spend too much time on it :)

think we had 2 issues (#12030)


Broken build on node 10.5.0

node: 10.5.0
npm: 6.1.0
Debian Stretch
The error reported is:
../node_modules/nan/nan_maybe_43_inl.h: In function ‘Nan::Maybe<bool> Nan::ForceSet(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Value>, v8::PropertyAttribute)’:
../node_modules/nan/nan_maybe_43_inl.h:88:15: error: ‘class v8::Object’ has no member named ‘ForceSet’
   return obj->ForceSet(GetCurrentContext(), key, value, attribs);

I see from looking at other issue here that ForceSet has been deprecated for a while and has finally been removed from V8.
Came upon this by way of https://github.com/kelektiv/node.bcrypt.js/releases/tag/v2.0.1
tracking: https://github.com/digitalbazaar/bedrock-authn-password/issues/21 https://github.com/kelektiv/node.bcrypt.js/issues/625

That was addressed with the release of 2.8.0 in November last year.


Increase pagination options

Describe the solution you'd like
Currently when loading a container which has a large number of blobs, the pagination is automatically handled as below:
If total items in container are less than 1000, the total number of blobs is displayed.
If the total number of items is over 1000, the most which will be displayed is 1000. To get the number of items you then need to keep going to the next 1000 pages, then keep going until you finally get to the end.
This is incredibly frustrating when you have large number of blobs.
I would therefore like to suggest the following:

The total number of blobs is displayed with page numbers. E.g. it would display page 1, 2, 3 then the final 3 pages.

Option to increase the amount of items per page.

Option to display all items in the container.

I currently use Storage Explorer and Azure Explorer from Redgate together which, by default, will load a list of all items in the container.

Hi,
We are now actively working on a configurable setting which will allow you to set the pagination option that fit you best.

Any updates? @JasonYeMSFT

Move to near future so we can prioritize this one earlier.
We haven't worked on this yet because we are still thinking of a balanced solution to this problem. Caching as much data as possible (performance) and synchronizing local cache to be up to date (consistency) are two competing demands. Ideally the feature should be configurable to optimize for performance or consistency.

Move to near future so we can prioritize this one earlier.
We haven't worked on this yet because we are still thinking of a balanced solution to this problem. Caching as much data as possible (performance) and synchronizing local cache to be up to date (consistency) are two competing demands. Ideally the feature should be configurable to optimize for performance or consistency.

Did we ever get any further to implementing this?
It's currently very difficult to do simple things like arrange by date modified as you have to first go through ALL the pages, THEN you can arrange by date modified.
What are the discussions looking like currently? I know that the older Azure Explorer I mentioned will load a number of blobs one by one, so say 1000 blobs at a time and list them. If we could get this as a configurable option it would be great.
If we could get the same on the tree menu when you open a storage container also, so that you just list ALL the blob containers instead of having to keep clicking "load more" over and over again, this would be great.
Should probably implement natural sorting also, instead of 1_filename, 100_filename, 1000_filename

Closing this issue as merged for 1.32. In 1.32, all of the following settings will exist and be supported by blob explorer (normal and gen2), file explorer, and table explorer:

Global Sort: If enabled, all available data will be loaded when sorting items by column, even if Load All is disabled.
Load All: If enabled, load more will load all available data instead of just the next batch.
Load Batch Size: The minimum number of items to load per batch during load more. If set, data will continue loading until at least the configured number of items have been retrieved.


Kirby 11.57 previous TAS WR

should this technically be considered a previous TAS WR?
Ask the community

leaving it in


Moving "@types/pino": "^6.3.12", to dev dependency

Declined in favour of wrapping the logging library and then including @types/pino as an optional dependency.


Missing output value in 03_classification

Hi,
This issue applies to Chapter 3's code sample (i.e.: 03_classification).
When calculating the desired threshold value for a precision >= 0.09, the following is done:
threshold_90_precision = thresholds[np.argmax(precisions >= 0.90)]
Right after this statement, the following is written:
threshold_90_precision
Correct me if I'm wrong, but I believe this was done in order to demonstrate that the threshold in question is equal to 7816.155523682526 (note: 7813 is used in the graph examples / shown in comments, so there's a disparity there).
The issue is that the output is missing.
Thanks,
Hussein Khalil

Hi @velaris1 ,
Good catch, thanks a lot! 👍
Indeed, the comment says 7813, but it should be ~7816.
I'll fix this now, and add the missing outputs.


Display "Published ports" information when output format is JSON

This PR is to implement what is mentioned in Issue #634.
The actual implementation is a breaking change, since the up until now top level array of container data moved under the "container_data" entry and at the same time introduces another array called mysocket_data which keeps the mysocketio information.
This still needs to be tested. Actually it seems like my endpoint protection considers mysocketio harmful and blocks it.

@hellt: Tested and ready for review now.

Hi @steiler
thanks for that
do you mind checking the failed tests?

Alright, all green!
Be aware, that this is a breaking change in inspect commands json output.
it used to output the anonymous array of containers which is now pushed a level down under the key container_data and right next to it the mysocketio_data key is being introduced.
https://github.com/srl-labs/containerlab/pull/887/files#diff-f8d2bd35e1a8c9b86c8c4448dde00bc5480652f85ed0630efc012c3906d3a14fR280-R292

I think we have discussed this before and wrongfully asked to put info message back when no containers found.
But it makes sense to return an empty json when no containers found, instead of an invalid json as it is today.

Alright, @hellt, took me quite a while to get back to this, but take a look at the actual changes.
using the GenericContainer type, thereby allowing for "-a" but also "-t" in both, table as well as json output format.

Thanks @steiler !


stress-cpu to cpu-stress

In four locations in the lab the cpu-stress Docker image is referred to as stress-cpu (including when building the image). This commit changes the stress-cpu references to cpu-stress for consistency with the rest of the lab, including the directory name and docker-compose.yml.

Side note: the lab also has a line sudo docker run -rm -it --pids-limit 200 debian:jessie bash where the arg should be --rm.

Thanks @mschuchard  @riyazdf can you review?

oops, thanks for catching this @mschuchard!  LGTM.
I'm ok with including the --rm fix in this PR if you'd like to do that @mschuchard, or I can follow up in a separate one.

@riyazdf Thanks for the quick action. The --rm fix seems a little silly for me to add as a commit since it is one character. Please include that in a future commit of yours.


updated to v0.7.0 after the error,cannot unmarshal hex number with leading zero digits into Go struct field StorageProofEntry.storageProof.value of type *hexutil.Big"

Heya, please upgrade to 0.8.1. https://github.com/base-org/node/releases/tag/v0.8.1
If this doesn't resolve the issue, it would be best to join the Base Discord and open a #developer-support ticket. We can take a closer look at your configuration there! 👍


voice-javascript-sdk-quickstart-python twilio.Device Error: AccessTokenInvalid (20101):

Where has this bug occurred?
I followed the instructions in README
Describe the bug
The event log contains the error which prevents making any further call.
>  Requesting Access Token...
>  Got a token.
>  Initializing device
>  Twilio.Device Error: AccessTokenInvalid (20101): Twilio was unable to validate your Access Token

To Reproduce
I followed the README on linux Ubuntu 20.04 server and tried two versions of twilio JS SDK "twilio-voice.js-2.0.1" and "twilio-voice.js-2.3.0" with the same result.
And use MacOS Safari for client.
Any tips how to setup my twilio account or use this example are very welcome.
Screenshots

also having the same issue, hoping I'm not just daft.  Any help on this?
Requesting Access Token...

Got a token.
Initializing device
Twilio.Device Error: AccessTokenInvalid (20101): Twilio was unable to validate your Access Token

Are you using a different Twilio region? I had the same problem, but solved it by specifying the Twilio region. See: https://www.twilio.com/docs/iam/access-tokens#step-3-generate-token

Hi guys, check if you set it up correctly

Where has this bug occurred? I followed the instructions in README
Describe the bug The event log contains the error which prevents making any further call.
>  Requesting Access Token...
>  Got a token.
>  Initializing device
>  Twilio.Device Error: AccessTokenInvalid (20101): Twilio was unable to validate your Access Token

To Reproduce I followed the README on linux Ubuntu 20.04 server and tried two versions of twilio JS SDK "twilio-voice.js-2.0.1" and "twilio-voice.js-2.3.0" with the same result. And use MacOS Safari for client.
Any tips how to setup my twilio account or use this example are very welcome.
Screenshots

I had the same issue. How I can fix this?


The block placer can dupe items when moved by a piston

Industrial Foregoing Version: 1.12.2-1.12.13-237
TeslaCoreLib Version: <IP_ADDRESS>
Crashlog (If Any): No crashlog

This needs more context

well the problem is from a long time ago, like 8 or 9 months, i was trying to make an automatic placer for the tree extractor but i didn´t have the space so i needed to move the placer and put a pipe, first i tried moving the block placer with a piston to see if i could move it then it dropped the blocks it had inside, when i broke the placer it dropped the items again, i replicated it a couple of times to see if whats the placer or something else, and everytime the placer is moved it drops the items but the items are still inside the placer.
I am sorry  for the bad english is not my first language, and i reported it now beacause i thinked that you would fix it. Maybe its a mod that i have so i will do it now without other mods.

Don't move tile entities, another mod enables tile entity moving and it's wrong.

oh ok, sorry for the trouble


Cannot supply enabled_if parameters in CLI

In the first iteration of the loop in Config.augment_argparse(), parameters in sections defined with enable_if are skipped:
https://github.com/GuillaumeLeclerc/fastargs/blob/b39083a0075a95cbc7cb4d74295190fde349da8b/fastargs/config.py#L80-L81
However, all command line arguments are then passed to the parser:
https://github.com/GuillaumeLeclerc/fastargs/blob/b39083a0075a95cbc7cb4d74295190fde349da8b/fastargs/config.py#L103
https://github.com/GuillaumeLeclerc/fastargs/blob/b39083a0075a95cbc7cb4d74295190fde349da8b/fastargs/config.py#L148
The parser.add_argument() call has not happened yet, so the parser will exit with  error: unrecognized arguments: ...

hey @dpaleka did you solve this? if not i will take a stab but just being lazy first

seems like commenting out those two lines produces the desired behavior, yeah?
 # if not param.section.is_enabled(self):
 #    continue

To be honest, not sure how I hacked around it, I don't have access to the code anymore. Sorry!


Displaying HTML in a table cell?

I have a situation where I need to display HTML links in a table cell.  I've experimented with using a formatter like your commands example.  The problem is that I need to check user permissions as I build the links, so I need to build the HTML on the backend instead of in the js.  Any suggestions?

And how would we actually render html data?

Nerian, I ended up building my HTML using a formatter similar to how Rafael suggested.  But I check permissions when setting up bootgrid initially instead of in the response object.  In my table head, I've got an extra column for my buttons like:
Actions
Then in the bootgrid declaration:
formatters: {
'userActions': function (column, row) {
var root = '/User/';
var res = "";
@if (CurrentUser.HasAccess("User", "Edit")) {
@Html.Raw("res += '" + @Html.Raw(Users.LinkEdit) + "';\n")
}
@if (CurrentUser.HasAccess("User", "Delete")) {
@Html.Raw("res += '" + @Html.Raw(Users.LinkDelete) + "';\n")
}
return res;
}
}
That code just checks the user permissions when the page is initially built.  Does that make sense?

Looks good. I took the same approach and used a formatter.
I think it would be convenient to package have a HTML formatter.

I second this. Would be great to have bootgrid use the raw HTML from the backend.


Cloud storage for SecRef Issuer and Security ID mapping database

Hello ODP! The securities reference data project is working towards developing an open source cloud-based solution to map securities and issuer IDs. Can we (FINOS) provide storage for that solution? Who would pay for it, and what are the guidelines around maintaining the storage, etc? (see Action Item 1 in https://github.com/finos/secref-data/issues/20 for context) / cc @saileshpandey @mcleo-d @maoo

Thanks @aitana16 , interesting topic.
I'd need more specs in order to understand what is required here, as there are many solutions around Cloud storage.
If the content is supposed to be publicly shared (which is the default assumption for all assets managed or produced by FINOS hosted projects), I'd suggest to use GitHub, see https://git-lfs.github.com/
For other requirements and use cases, I'd suggest to meet with me (optionally, via the ODP bi-weekly meetings), discuss and publish requirements, in order to find out the best solution.
Thanks!

thanks @maoo! I spoke with Sailesh, who leads the SecRef project, and he said https://git-lfs.github.com/ does not meet the requirements. He will join the first 15 minutes of next week's ODP meeting in order to provide more context.

@aitana16 - added to the next ODP meeting agenda, see https://github.com/finos/open-developer-platform/issues/156 . Feel free to comment the issue if I missed anything. TY

Meeting with SecRef project team on Friday 7th August at 3pm BST / 10am ET where the cloud and API requirements for the SecRef project were explored.
During the call we discussed the need for "data storage" that can be audited and "API access" for adding and retrieving data. In the same call @mcleo-d raised a minor concern about compliance and cyber security given the data nature of the project.
@mcleo-d took the action of passing information related to this topic to the SecRef team so they can present specific requirements for the "data storage" and "API access" technologies to be explore.


Hey

I'd like to join the project etc.

@theicon1 Please merge your branch first with beta and prepare a puch on beta branch again, will then review you change and make you sign contributor document if needed.
cc @EricDavies

Too many old and invalid changes, I also looked at your repo. may be we can merge in the future. try another push once you are sync.


Attack step "firstSteps" is missing an asset

Not sure if this is intended, but should not everything belong to something?
Is the asset field optional?

It is optional but highly recommended. There are two reasons it is optional:

If you load an attack graph from a file you may not have the instance model from which it was generated. This will not be the case for most of our work where we generate the attack graph out of instance model.
What you have identified, the Attacker is not really an asset of the language, and as such its attack graph node doesn't have an asset associated with it. We could change this, but it would be contrived, MAL languages do not have Attacker assets.

Was this a curiosity or did you actually need the asset for a reason? If it's the former feel free to close this issue.

Alright, then I know.


ac-map-layer-provider not support wms

Into component ac-map-layer-provider the switch for providers does not have implemented WebMapService
switch (this.provider) {
case MapLayerProviderOptions.WebMapService:
case MapLayerProviderOptions.WebMapTileService:
case MapLayerProviderOptions.ArcGisMapServer:
case MapLayerProviderOptions.SingleTileImagery:
case MapLayerProviderOptions.BingMaps:
case MapLayerProviderOptions.GoogleEarthEnterpriseMaps:
case MapLayerProviderOptions.MapBox:
case MapLayerProviderOptions.UrlTemplateImagery:
this.layerProvider = new this.provider(this.options);
break;
case MapLayerProviderOptions.MapTileService:
case MapLayerProviderOptions.OpenStreetMap:
this.layerProvider = this.provider(this.options);
break;
case MapLayerProviderOptions.OFFLINE:
this.layerProvider = this.createOfflineMapProvider();
break;
default:
console.log('ac-map-layer-provider: [provider] wasn't found. setting OFFLINE provider as default');
this.layerProvider = this.createOfflineMapProvider();
break;
}
I tried with:
case MapLayerProviderOptions.WebMapService:
this.layerProvider = this.createWebMapServiceProvider(this.options);
break;
private createWebMapServiceProvider(options) {
return new Cesium.WebMapServiceImageryProvider(options);
}
This solution works fine for me but i do not know how to include it into the library

I made a pull request fixing it

Hi thx for the issue,
The WMS option is supported under MapLayerProviderOptions.WebMapService
I tested it with the following option and it worked for me:
<ac-map-layer-provider *ngIf="appSettingsService.showMapLayer"
[provider]="MapLayerProviderOptions.WebMapService"
[options]="{
 url : 'https://nationalmap.gov.au/proxy/http://geoserver.nationalmap.nicta.com.au/geotopo_250k/ows',
    layers : 'Hydrography:bores',
    parameters : {
        transparent : true,
        format : 'image/png'
    }
}">
</ac-map-layer-provider>

Maybe you have another issue?

Thanks, that works fine.


cpu-default-namespace.md error

line 248
kubectl create namespace default-cpu-example
kubectl delete namespace constraints-cpu-example

@OrochW could you provide example on which you find it incorrect so that it would be easy to resolve

/remove-lifecycle rotten

This issue is out of date. There is no line 248 in the page. There is no namespace named constraints-cpu-example.
/close


[Azure Linux 3.0] Support for OpenSSL 3.1

https://www.openssl.org/news/openssl-3.1-notes.html

3.0 development branch is now on OpenSSL 3.1


Failing tests in API repository

The following are currently unstable and are failing a lot.
Example in CI:
https://circleci.com/gh/opencollective/opencollective-api/12813

graphql.collective.test.js edits edit payment methods - edit payment methods
graphql.matchingFund.test.js happy path one time donation - happy path one time donation
graphql.matchingFund.test.js happy path recurring donation - happy path recurring donation
stripe.creditcard #processOrder() should create a new customer id for a host for post-migration users - should create a new customer id for a host for post-migration users

They might fail for the same reason.

Tentatively addressing the 1st in https://github.com/opencollective/opencollective-api/pull/1972

Looks like it's fixed now. We'll keep an eye open.


[IMPROVEMENT] Separate the default backup target settings from default settings

Is your improvement request related to a feature? Please describe (👍 if you like this request)
The default backup target settings are removed. To prevent any confusion, we need to decouple these settings from global settings in chart values.yaml when working on a PR on longhorn repo.
Describe the solution you'd like
Describe alternatives you've considered

Additional context

We can move the three settings from chart/values.yaml#L196 into a new category, such as default-backupstore. However, the rendered manifest generated from the Helm values will still be included in default-settings.yaml (source code). To implement this, we need to introduce a YAML file in the ConfigMap or a new ConfigMap YAML file.
In summary, we need to:

Update chart/values.yaml
Update chart/templates/default-setting.yaml (if introduce YAML file in the  ConfigMap) or a new template ConfigMap YAML file.
Regenerate new manifests
Modify the Longhorn Manager's settings parsing code.

Unfortunately, the changes are unable to be applied in v1.8.0.-rc2. It is not a big change, so let's add in v1.8.0-rc3 (release date will be 1/3).
cc @ja@innobead

@mantissahz
We can move the three settings from chart/values.yaml#L196 into a new category, such as default-backupstore. However, the rendered manifest generated from the Helm values will still be included in default-settings.yaml (source code). To implement this, we need to introduce a YAML file in the ConfigMap or a new ConfigMap YAML file.
In summary, we need to:

Update chart/values.yaml
Update chart/templates/default-setting.yaml (if introduce YAML file in the  ConfigMap) or a new template ConfigMap YAML file.
Regenerate new manifests
Modify the Longhorn Manager's settings parsing code.

Unfortunately, the changes are unable to be applied in v1.8.0.-rc2. It is not a big change, so let's add in v1.8.0-rc3 (release date will be 1/3).
cc @innobead


Add support for core.dns_address

Fixes #66.
I initially wanted to add lxd-listen-dns to tests but this fails due to LXD failing to bind port 53 that's already taken by systemd-resolved. A possible solution would be to reconfigure systemd-resolved to disable the stub listeners but I didn't feel it was worth it.

@stgraber all the listeners simply use the default port for the listener because there is no convenient way to have the operator provide a different port. What we do tell LXD to use the address associated with the "space" bounded for that listener.

I initially wanted to add lxd-listen-dns to tests but this fails due to LXD failing to bind port 53 that's already taken by systemd-resolved. A possible solution would be to reconfigure systemd-resolved to disable the stub listeners but I didn't feel it was worth it.

This turned out to be the wrong explanation. I was testing by having LXD binding to <IP_ADDRESS>:53 which was prevented by systemd-resolved. However, that is not what Juju does. Juju finds the specific IP address from the bound "space" and configures LXD to use it (ie: lxc config set core.dns_address <IP_ADDRESS>). This part was failing because I had omitted the lxd-dns interface.
The interface bit is now in the PR as well as expanded test coverage.


Type: BigInt: Add Debug impl

@jayz22 We'll need functions for getting the binary of a BigInt to display in this Debug, which I assume is dependent on https://github.com/stellar/rs-stellar-contract-env/issues/171.

@jayz22 should this issue be assigned to you? and what is the current status?

@jayz22 What's your thought on how to render the BigInt? I was thinking it'd render as base10, but I could see arguments for hex too.

I would prefer base10 too, but you probably know better what's the most useful representation from developer's view.
It should be an easy switch from hostfn side, we'll be able to pass in a radix to the function to get the digits in any base we want.

Or return binary and let the SDK figure that out.


crest output file

show crest.out during the whole calculation, not only at the end in case it fails

fixed


Include typedefs.js in closure compiler tutorial build configurations

This changes the configurations used in https://openlayers.org/en/latest/doc/tutorials/closure.html to include typedefs.js.
Fixes #6698
Please review.

Thanks for the review, Frédéric.


Generated python code has a syntax error

In notifications.py.
There are four double quotes at the end, that results in invalid syntax.
See the issue at https://github.com/quicktype/quicktype/issues/2247 and a possible fix: https://github.com/quicktype/quicktype/pull/2253

Fixed - see linked issue/PR for more details


mlock prevents usage of RAM + Swap tmpfs for chain state db

A recent commit to chainbase here:
https://github.com/EOSIO/chainbase/commit/2f0bbe484bba5233fb02fac2930c1fa9cce38cd3
has applied a call to mlock to attempt to lock the shared_memory file into RAM. Unfortunately, this actually prevents usage of a shared_memory greater than RAM size, as this call will crash the program, not fail gracefully.
This hinders the usage of "Cheap, Light Nodes" that, for example, use 64GB of main memory, and 64GB of swap on NVME, allowing for a ~128GB shared_memory file.
To reproduce: Simply try launching with a chain-state-db-size-mb = greater than physical RAM.
Expected behaviour: shared_memory file should exist despite being > RAM and use swap space when needed.

On what OS or configuration are you running where mlock produces a fatal crash as opposed to a warning message?

Ubuntu 18.04. Fresh install.
When it hits this section of the code, you can watch htop and you can see the memory start to fill, until it uses all memory and the process is killed.
In the previous versions of chainbase, the use of swap works perfectly fine: for example, on steem you can easily run a node with 32 gb of memory even though the shared_memory file is >40gb already.
In addition, removing the mlock call allows the system to function with a large chain state specified, as expected.

The SSD access time has latency of 100us, which is 1000x slower than RAM access time. I don't think using swap file can catch up with other nodes in real-time given the unpredictable location of state access. However, there maybe some workaround in the future.

That assumes that every request goes to disk.
What you will find happening is that "Hot" data finds itself in the real memory, while "Cold" data gets paged out to the swap file. This natural process of hot and cold data would be discovered by the operating system (albeit not as good a solution that does it based on the data, but it works /good enough/). It would only become a problem when too much data needs to be fed from disk.
There is a ton of research in database literature on "hot" and "cold" data, and I encourage a read of this to understand why we do not need to keep "cold" data in main memory at all times. A good starting point is F4, which contains many useful references and great ideas on datastores:
https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-muralidhar.pdf

Closing, addressed by
https://github.com/EOSIO/eos/pull/5618


import type {foo} from 'foo' should not remove foo from export {foo} from 'foo'

Describe the bug
Hi! First of all thank u for the swc.
Looks like it has a bug with type keyword.
Input code
No response
Config
{
  "jsc": {
    "parser": {
      "syntax": "typescript",
      "tsx": true
    },
    "target": "es2021",
    "loose": false,
    "minify": {
      "compress": false,
      "mangle": false
    }
  },
  "module": {
    "type": "es6"
  },
  "minify": false,
  "isModule": true
}

Playground link
https://play.swc.rs/?version=1.2.115&code=H4sIAAAAAAAAA8vMLcgvKlEoqSxIVahOy8%2BvVUgrys9VUAcy1bm4UisQsm75%2BQq2YGZ%2BmgJQ2houja4PAGYvU81UAAAA&config=H4sIAAAAAAAAA0WOSwrDMAxE76J1FsWLLnyHHsK4SnDxD0mBGuO7VzYp2Q0zo6fp8GEPtkN1xEhTccvivmBBWkX2FKrABsJqCZ04VDs6ULSBbB7GaBpLYQS7u8i4QQo57G2yfEmVkPmOXD7ivzmUlcr7nEZf7xbzCeNmXHeBX1dxbfgBaADhoLcAAAA%3D
Expected behavior
Like in TS playground
export { foo } from 'foo';

Actual behavior
export { };

Version
1.2.122
Additional context
No response

Is typeof foo valid in this context? foo is a type and I think it should be
export type Foo = foo;

(I changed the title as the previous one did not contain any useful information.)

foo is a function (for example).

Oh... So a function can be imported with a type keyword?
Or is there a type named foo along with the function?
import type {foo} from 'foo'

There is a practice that if imported value used only as a type it must be imported with type keyword. It's normal for me. There is also a rule of eslint.
In other cases the type keyword would be unnecessary:
import { foo } from 'foo';

export type Bar = typeof foo;

export const bar = foo;

import { foo } from 'foo';

export const bar = foo;

fyi import type is introduced in<EMAIL_ADDRESS>(https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-8.html#type-only-imports-and-export) to support babel which runs in a isolated mode cannot infer if imported one is type or actual runtime.
As discussed already in here, we may need to strip import type syntaxes but preserve references to runtime import (or export).

Thank you!


Download-artifact testing

just testing with workflow artifacts and variables :sunglasses: :grinning:

Fixed!
woohoo, figured out how to use variables and contexts within workflow, job, and step components
https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/store-information-in-variables
Used those vars to interact with download-artifact