nixos support

I have tried to get lemurs work using the provided flake and use services.displayManager.execCmd with no luck, couldn't get it working and wasn't seeing any error messages either in journalctl.
I copied this user's config https://discourse.nixos.org/t/lemurs-dm-doesnt-work/45300
I did execCmd = "${lemurs.packages.${system}.default}/bin/lemurs --no-log"; instead. While passing lemurs as a specialArg and using this repo as the flake.
Also saw the recent work done on it previously #177 #199.
@antonmosich @NullCub3 could you share your nixos configs for lemurs if you got it working?

I had tried to get lemurs to work on nixos with the updated flake/module on the nixosmodule branch, and I never actually quite got it to work back then. If I remember correctly I got it to show up and start however it wouldn't display any options for sessions to log in with. Wasn't sure what to do about it, and it was a separate branch that was evidently in progress, so I've just been using SDDM in the meantime. But I've learned a decent bit more about nixos in the recent months, so I would like to take a crack at it again.
As for your issue, I took a scroll through your configs in your profile and don't see anything that jumps out at me as wrong with regard to lemurs. I haven't seen that format for executing the package before though, but I don't know much about flakes/building stuff with flakes so that could just be me lol, I'm assuming you're doing it like this because you're directly referencing the flake instead of adding it like as a module or something?
Anyways, what exactly is going wrong with lemurs for you? Is it just not showing up for you or is it something else like what I was experiencing a while back?

I'm assuming you're doing it like this because you're directly referencing the flake instead of adding it like as a module or something?

I'm pretty new to this too. Yes I'm trying to use the flake from this repo, instead of pkgs.lemurs from nixpkgs just to see if it builds and left it lying there since I'm not using it (benefit of specialisations).
It builds and when I boot via that specialisation it goes to tty directly, I guess I need to use startx. The thing that needs to be done is to get lemurs into displayManagers in nixpkgs (ofcourse no flakes allowed in nixpkgs), I thought of doing it but I first need to understand what startx etc. are so trying something else.
Can you share you config? It doesn't start at all, lemurs.

Well my current configs aren't going to help you much since I removed the lemurs parts a long time ago, but I can show you what I had done:
flake.nix
  inputs = {
    ..
    # Forked the nixosmodule branch to edit (see below)
    lemurs = { url = "github:NullCub3/lemurs/nixosmodule"; inputs.nixpkgs.follows = "nixpkgs"; };
    # Probably a better way to do this would have been something like this
    # and do all your modifications here, offline
    # not 100% sure if this works though lol:
    # lemurs = {
    #   url = "git+file:///home/username/clonelocation/lemurs";
    #   inputs.nixpkgs.follows = "nixpkgs";
    # };
    ..
  };

  outputs =
    { self
    , nixpkgs
    , lemurs
    , ...
    }@inputs:
    {
      nixosConfigurations = {
        systemName = nixpkgs.lib.nixosSystem {
          specialArgs = { inherit inputs; };
          system = "x86_64-linux";
          modules = [
            lemurs.nixosModules.default
            ./hosts/systemName/configuration.nix
          ];
        };
      };
    };

lemurs.nix (imported from configuration.nix)
{ lib, inputs, ... }:
{
  imports = [
    inputs.lemurs.nixosModules.default
  ];

  services.displayManager.sddm.enable = lib.mkForce false;
  services.displayManager.enable = true;

  services.lemurs = {
    enable = true;
    #x11.enable = true;
    wayland.enable = true;
  };
}

And with my fork of the nixosmodule branch all I had done was fix the existing shell issue here and here (although with it just replacing it anyways I don't think it actually matters) and then removing the couple of lines here pointing to the wayland and x sessions because they were causing issues for some reason and then with that lemurs would start up properly and everything but I don't think there was any way for me to log in or anything. Currently my fork of it doesn't actually have all of those changes made though, so you'll have to make your own. Hopefully this helps?

I completely missed the nixosmodule branch thanks for posting your config

Yes I see what you mean, It boots to lemurs and I see two options Plasma ( Plasma ( with text cut off. (x11, wayland versions) And I can't boot into either of them, neither does F1 and F2 work (had to press the power button once to shutdown)

Hey there, I've been working on setting up the lemurs module for a while and in my research I came across these couple of repos and I was wondering if they might be able to help you out a bit:

https://github.com/QuantumCoded/nix-lemurs
https://github.com/JeremiahSecrist/lemurs-nix

They seem to be mostly identical and I haven't tried out the module configs, but the person who made the second one was the one who added lemurs to nixpkgs

Hey, thank you all for your effort. As you have seen, I had tried myself for some time to get lemurs to work on NixOS. I think the problem currently is to do with how lemurs relies on PAM to lower the privilege, but I am not 100% sure.
I feel like I might need to copy something similar to what greetd is doing for it to work properly.

I'm completely new to Nix & NixOS, but I was able to run lemurs in my NixOS setup. You can see the full config here: https://github.com/auvred/nixos-config/blob/3e3b86a988a25fd0bae13192a5c5e2c107c47de5/nixos-modules/lemurs/default.nix. I hope this helps someone!
The main parts I've struggled with:

Properly start the Xorg server with configuration defined in the services.xserver.*
First of all, I enabled services.xserver.enable = true and disabled lightdm (since it's enabled by default) services.xserver.displayManager.lightdm.enable = false. Then I set x11.xserver_path in lemurs config to the let dm = config.services.xserver.displayManager; in "${dm.xserverBin} ${toString dm.xserverArgs}". This basically starts the Xorg like every other display manager in nixpkgs.

Use window manager provided by home-manager
Since I use home-manager and configure my window manager (i3) with it, I'd like to run it as is (without having to further configure i3 in nixosConfiguration).
My solution to this problem is far from perfect, but at least it works and looks pretty clean.
home-manager starts window manager in xsession.scriptPath file (.xsession by default) - https://github.com/nix-community/home-manager/blob/7e68e55d2e16d3a1e92a679430728c35a30fd24e/modules/xsession.nix#L196-L222.
I've changed xsession.scriptPath to ".xsession-hm" to avoid collisions with default xsetup.sh - https://github.com/coastalwhite/lemurs/blob/9bc429735c2b5284c68cecb6e9789a4eabf3a83a/extra/xsetup.sh#L94-L96
This ~/.xsession-hm is executed in the hm-xsession start script (see code for more details).

Issue with PAM
See https://github.com/coastalwhite/lemurs/issues/166.
I haven't had that much time to dig into this more deeply yet, so as a temporary workaround I just set security.pam.services.login.setLoginUid = false.

Oh that's fantastic! Very well documented, thank you for sharing that, that's incredibly useful. If it's okay with you, I'll just roll that into the improved module I'm working on at the moment.
Do the shutdown/reboot keys work for you at all with that config? I haven't yet investigated what exactly lemurs wants to run for those but it clearly isn't finding the right commands.

Do the shutdown/reboot keys work for you at all with that config?

No, I just haven't tried pressing on them.
After a little straceing, it appears that the lemurs is trying to execute a bash here:
https://github.com/coastalwhite/lemurs/blob/9bc429735c2b5284c68cecb6e9789a4eabf3a83a/src/ui/key_menu.rs#L103
It's pretty easy to patch. See this commit https://github.com/auvred/nixos-config/commit/e304bf40926b7ce7ac6cdd4afbcc1d80dd54ce36.
Perhaps this patch should be applied in lemurs itself, because this is the only place in the project that spawns not a system_shell from the config: https://github.com/search?q=repo%3Acoastalwhite%2Flemurs "command%3A%3Anew"&type=code.

Ah, makes sense. But yeah why don't you just open a pull request with that patch applied? Probably just got missed in fixing the assuming of binary locations if I had to guess.

fyi: #208 just got merged. thanks to @coastalwhite  :+1:

my first attempt to have a nixos-module: https://github.com/NixOS/nixpkgs/pull/329496 .
the poweroff and shutdown does not yet work, but the rest seems fine to me. (At least QEMU boots fine)

Okay thanks. I had stepped away from this for a bit as I wasn't sure exactly what config settings to include, and the next major step for me was to do some extensive testing to find and fix some bugs* but I have a functional module integrated into the flake right now. Power buttons work, login works, config, etc.
The only couple of things I wanted to do was figure out what the most common config options people wanted and also add some kind of system to add your own init scripts. Both of those would be an easy add that I could get in there.
https://github.com/NullCub3/lemurs/tree/nixosmodule-dev
*for example, trying to log back in with a wayland session after having logged out of one doesn't work? Not sure if that's a me issue or not. I also have not tested X11 since I don't have that set up on my system right now.

By the way, as I mentioned here, the latest release for lemurs is very old and doesn't include any of the newer configuration for the X server paths, @coastalwhite would you be willing to publish a new release including all the newer changes so that it can be more easily merged into nixpkgs?

@coastalwhite following up on this! I would like to start using Lemur from the nixpkgs.


NuGet Package incompatible with .NET 4.5

Please update the NuGet package Tubular.ServerSide to also include a build for .NET 4.5

I merged the tubular and tubular-core project. Targeting Net Fx 4.5.2 and NET Core.

The NuGet is 1.0.8 correct?

Yes

Ok, tested with embedio samples. Closing.


Add a recent conference talk link

add link to droidcon London 2021 talk about detekt under "As mentioned in..."

Thank you <3


Add "mse" metric option to ALSTM.metric_fn

Enhance the metric_fn method of the ALSTM class to include the "mse" metric option.
Description

Add "mse" metric option to ALSTM.metric_fn
Motivation and Context

https://github.com/microsoft/qlib/issues/1780#issue-2257857368

User can choose "mse" metric to evaluate the model
How Has This Been Tested?

[x] Pass the test by running: pytest qlib/tests/test_all_pipeline.py under upper directory of qlib.
[x] If you are adding a new feature, test on your own test scripts.

Screenshots of Test Results (if appropriate):

Pipeline test:

Your own tests:
Use the file qlib/examples/benchmarks/ALSTM/workflow_config_alstm_Alpha158.yaml for testing. Set task -> model -> kwargs -> metric to mse and set n_jobs to 5 due to the memory limit of my computer.

Types of changes

[ ] Fix bugs
[x] Add new feature
[ ] Update documentation

Thanks for your great effort!


Modal flickering for some decimal widths

🐛 Bug Report
When sizing a modal based on screenSize like this
const width = screenSize * 0.56

Note: this is also an issue for height
If the resulting number is a decimal number the modal can flicker from the right and after a minute or two leads to an object property storage error in metro, or app crash in production.
To Reproduce
Steps to reproduce the behavior:
Set modalWidth to 225.28 to show error
Expected behavior
Expect modal not to flicker, perhaps to handle this case internally?
Wrapping the offending number or calc in Math.round() fixes this.
Link to runnable example or repository (highly encouraged)
https://snack.expo.dev/v95Tv2-QT
UI Kitten and Eva version

Package
Version

@eva-design/eva
2.1.1

@ui-kitten/components
5.1.2

Environment information

  System:
    OS: macOS 13.0.1
    CPU: (8) arm64 Apple M1 Pro
  Binaries:
    Node: 16.15.1 - ~/.nvm/versions/node/v16.15.1/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 8.11.0 - ~/.nvm/versions/node/v16.15.1/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: DriverKit 22.4, iOS 16.4, macOS 13.3, tvOS 16.4, watchOS 9.4
  IDEs:
    Android Studio: 2022.1 AI-221.6008.13.2211.9477386
    Xcode: 14.3.1/14E300c - /usr/bin/xcodebuild
  npmPackages:
    react: 18.1.0 => 18.1.0
    react-native: 0.70.6 => 0.70.6

Hi! I'll soon try to submit a PR to fix this but in the meantime I've patched (with https://github.com/ds300/patch-package) the package in my app, if anyone needs it, here is the patch that works for me:
index 02180f9..c9b33f7 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -42,7 +42,7 @@ const MeasureElement = (props) => {
         if (frame.origin.x < window.size.width) {
             return frame;
         }
-        const boundFrame = new type_1.Frame(frame.origin.x - window.size.width, frame.origin.y, frame.size.width, frame.size.height);
+        const boundFrame = new type_1.Frame(frame.origin.x - window.size.width, frame.origin.y, Math.round(frame.size.width), Math.round(frame.size.height));
         return bindToWindow(boundFrame, window);
     };
     const onUIManagerMeasure = (x, y, w, h) => {
@@ -51,7 +51,7 @@ const MeasureElement = (props) => {
         }
         else {
             const originY = props.shouldUseTopInsets ? y + react_native_1.StatusBar.currentHeight || 0 : y;
-            const frame = bindToWindow(new type_1.Frame(x, originY, w, h), type_1.Frame.window());
+            const frame = bindToWindow(new type_1.Frame(x, originY, Math.round(w), Math.round(h)), type_1.Frame.window());
             props.onMeasure(frame);
         }
     };

I am seeing vibration on my Modal on some widths. It looks like it vibrating 1 pixel horizontally. Like also described in https://github.com/akveo/react-native-ui-kitten/issues/1681
Could that also be related to this rounding issue? I am running 5.3.1


Slightly reduce asynchronicity in the Catalog.getPageDict method (PR 14338 follow-up)

After the changes in PR #14338, specifically in the XRef.parse-method, the /Pages-entry will now always have been fetched/validated when the Catalog-instance is created.
Hence we can directly access the /Pages-entry in Catalog.getPageDict and thus avoid one asynchronous data-lookup per page in the document. (In practice this is unlikely to show up in e.g. benchmarks, but it really cannot hurt.)
Finally, make sure that the getPageDict/getAllPageDicts-methods track the /Pages-tree reference correctly to prevent circular references in corrupt documents.

/botio test

Looks good!


Some parts are confusing

Just some feedback - I've been trying to migrate from classic pipelines to the new-style YAML pipelines and I found this article pretty confusing.
Some pointers to the specific things I found confusing:

The 'Note' that starts "Deleting or overwriting Pipeline Artifacts is not currently supported..." is in a completely unrelated section about how artifacts are automatically downloaded in deployment jobs. It also contains the advice:

The recommended workflow if you want to re-run a failed pipeline job is to include the job ID in the artifact name.

This is contradicted by an earlier section which states:

A good way to approach this if you want to be able to rerun failed jobs without facing an error package already exists, is to use Conditions to only run if the previous job succeeded.

The "Use Artifacts across stages" section seems to suggest artifacts can be passed between stages using a variable, rather than having to use the publish and download tasks. That doesn't seem right, given the entire rest of the article is dedicated to explaining how to do it using publish/download.

The "Artifacts in release and deployment jobs" section says that "The download artifact task will be auto injected only when using the deploy lifecycle hook in your deployment". But it's not clear where the artifact gets downloaded to in this case, or how it knows what artifacts are needed. Some additional explanation would be nice, and an example would be even better.

In the "Migrate from build artifacts" section it says:

For build artifacts, it's common to copy files to $(Build.ArtifactStagingDirectory) and then use the Publish Build Artifacts task to publish this folder. With the Publish Pipeline Artifact task, you can just publish directly from the path containing the files.

This suggests that copying files to $(Build.ArtifactStagingDirectory) before publishing is not best practice for the new Pipeline Artifacts. But the code example directly above this section does exactly this.

Hope that is helpful to improving this article.

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

ID: 861ce7a5-4fa4-55f1-2c97-46a9cc6a2f66
Version Independent ID: bdf954b9-9bbe-8b34-b674-71ad8153519d
Content: Publish and download artifacts in your pipeline - Azure Pipelines
Content Source: docs/pipelines/artifacts/pipeline-artifacts.md
Product: devops
Technology: devops-cicd-artifacts
GitHub Login: @ramiMSFT
Microsoft Alias: rabououn

@craigbrown Thanks for your feedback! It's now possible to leverage dependsOn to publish an artifact in one stage and download it/use it in another stage. I'm updating the article shortly


Remove MemoryStreamFactory and replace with RecyclableMemoryStreamFactory

The only usage of MemoryStreamFactory internally is withing tests/documentation.
Removing these uses as its doubtful if use in this situation is worthwhile.
This does remove the MemoryStreamFactory implementation as well, so this is technically a breaking change, so could be made non-breaking by reinstating this class.

One of its use cases is also to benchmark/profile the recyclable memorystream factory against one that does not pool.
I'm okay reinstating the class existence for folks for whom the memory characteristic of recyclable memory stream come as a surprise. We had tickets in the past where folks suspected a memory leak due to recyclable memorystreams buffers. In some cases it might also be preferable to have GC to be more aggressive (e.g cron tooling)

One of its use cases is also to benchmark/profile the recyclable memorystream factory against one that does not pool.
I'm okay reinstating the class existence for folks for whom the memory characteristic of recyclable memory stream come as a surprise. We had tickets in the past where folks suspected a memory leak due to recyclable memorystreams buffers. In some cases it might also be preferable to have GC to be more aggressive (e.g cron tooling)

I think reinstating is fine, lets just not use it internally.

Closed in favor of: https://github.com/elastic/elasticsearch-net/pull/4509


allow arbitrary number of scalars in riemann solver

This simplifies the Riemann solver, and assumes that any components of the hydro state vector left over at the end (i.e., after the auxiliary internal energy component) are passive scalars. The total size of the hydro state vector is read from HydroSystem::nvar_, which is set at compile time.

/azp run


Incorrect balance shown on bitcoin-qt

I don't know if Sparrow is the cause of what I am observing, but hopefully someone will be able to point me in the right direction.
I am running Sparrow 1.8.1 on Debian 12, connecting to a fresh bitcoin-qt v25.0.0. (No wallet was set up directly on bitcoin-qt). I added several wallets to Sparrow (nested segwit and native segwit), and successfully imported all past transactions into Sparrow.
At this point, the bitcoin-qt interface also started showing transactions and a balance. I checked, and the list of transactions in bitcoin-qt's "Transactions" tab is identical to the combined transactions of the wallets registered in Sparrow, and all dates and amounts are correct. However, the Available Balance in bitcoin-qt's "Overview" tab is completely incorrect: much too low. It does not equal the sum of amounts in the "Transactions" tab (the latter being correct).
I don't know how to investigate why this happened. Glad for any pointers, and my apologies if this is not an appropriate place to post this.

Never mind, I found the problem.
listbalances showed a positive balance for mine:used, which the documentation describes as "balance from coins sent to addresses that were previously spent from".
The total of mine:trusted and mine:used is as expected.


Add support for performing meridian flips

The task is simply to implement execution of meridian flips with a German equatorial mount. This does not include the algorithms required to determine when to perform such a flip; these are covered in #63.

A meridian flip involves slewing in DEC past +90 degrees (or -90 degrees) and then back to the same DEC coordinate. When passing through this pole, the RA angle is instantaneously shifted 180 degrees. So the declination axis will need to rotate by an angle that is equal to 2*(90 - DEC) in degrees and the right ascension axis will always need to rotate by 180 degrees.

The BlindErrorSource now contains an attribute "meridian_side" that determines how the RA and DEC errors are computed. A meridian flip requires simply changing the value of this attribute.


Add SPAR user's suggestion into Figma suggested feature board/tracker

Task:
A SPAR user has reach out with a suggested improvement that they would find helpful. These suggestions need to be added to our Figma board so that we can included them in future discussions.

In the Request Key Search screen, the user would like to be able to see the assigned nursery in the output table below:

in the seedling request nursery assignment screen (SPR202) the user would like to be able to see the number of seedlings or the number of grams of seed that is being grown at the nursery in the output table.

Completion check list:

[] items 1 and 2 are added to the lean inception workshop screen feature tracking board and other necessary places (Mural SPAR/CONSEP master board?)

This request was added to the Lean Inception Developer's Workshop Figma board and the Lean Inception Results Data Synthesis feature list.


Support recent versions of THREE

Recent version of THREE.js have some breaking changes that impact this loader. Here is a short list of changes that might be of interest in cityjson-threejs-loader:

v152 introduces colorspace management
v155 introduces physical lighting changes
v163 drops support for WebGL 1

Hi @sguimmara.
Thank you so much for reporting this 🙌 And apologies for the late response.
Indeed, the library is now breaking with recent versions of three.js. I have them in my radar and planning on addressing them soon.

de6628b30b6c9cca6fdfad11469a4d7ffe17dfa0 is addressing the issue regarding changes in colorspace management. Therefore the library is now expected to work with v165.
I have not spotted any issues with the the other two issues: light changes should affect the setup of the renderer and scene on the client side, rather than this library. Am I missing something? Any suggestions?

@sguimmara
de6628b30b6c9cca6fdfad11469a4d7ffe17dfa0 is addressing the issue regarding changes in colorspace management. Therefore the library is now expected to work with v165.
I have not spotted any issues with the the other two issues: light changes should affect the setup of the renderer and scene on the client side, rather than this library. Am I missing something? Any suggestions?

For the color space change, you might want to check that colors specified by on the materials generated by the library look the same before and after the upgrade. If they don't, it means that their color space is not correct. We had this issue when working with Giro3D


Modifying Fixture.Behaviors

Trying to fill an object with circular dependencies gives this nice error:
AutoFixture.ObjectCreationExceptionWithPath: 'AutoFixture was unable to create an instance of type AutoFixture.Kernel.SeededRequest because the traversed object graph contains a circular reference. Information about the circular path follows below. This is the correct behavior when a Fixture is equipped with a ThrowingRecursionBehavior, which is the default. This ensures that you are being made aware of circular references in your code. Your first reaction should be to redesign your API in order to get rid of all circular references. However, if this is not possible (most likely because parts or all of the API is delivered by a third party), you can replace this default behavior with a different behavior: on the Fixture instance, remove the ThrowingRecursionBehavior from Fixture.Behaviors, and instead add an instance of OmitOnRecursionBehavior:
fixture.Behaviors.OfType<ThrowingRecursionBehavior>().ToList()
    .ForEach(b => fixture.Behaviors.Remove(b));
fixture.Behaviors.Add(new OmitOnRecursionBehavior());

However Fixture.Behaviors is an IList and therefore fixture.Behaviors.IsReadOnly could be true and should be checked. Shouldn't it just be a List instead?
More info here:
https://msdn.microsoft.com/en-us/library/0cfatk9t(v=vs.110).aspx
https://stackoverflow.com/questions/400135/listt-or-ilistt

@peheje Thanks for the report. Did I get it clear and your concern is purely about the exception message and not the real case you have?
If so, probably, we have the message like that because we know that it should not be read-only. We have a set of other fixture properties of IList<> type (like Customizations, ResidueCollectors) and if we start to assume in our samples that it could be read-only, it will pollute our samples a lot without bringing any real value - currently they could never be read-only.
Does that answer your question, or I missed something? If so, please describe what exactly I missed 😉

Shouldn't it just be a List instead?

Just noticed that part. Well, in fact we are not using the List under the hood. We implement the IList interface manually, as types are not the real collections - they are adapters. Therefore, it's unlikely that we can change the type of properties even if we decided that it's better :pensive:

Thank you for the detailed response. Yes indeed my question was about the modifiable IList. I still think it's better to encourage checking for read only before trying to modify but granted I am probably nitpicking here.
But very cool took I like it a lot.

I still think it's better to encourage checking for read only before trying to modify

Well in this particular case it will be redundant as we have no plans to make it readonly. In any case, you shouldn't worry too much about it - if collection becomes read-only, your tests will fail with exception and you'll quickly find out what is going wrong 😉


SQLAlchemyModelFactory _create should at least flush the session

SQLAlchemyModelFactory _create
(https://github.com/rbarrois/factory_boy/blob/master/factory/alchemy.py#L45-50) should at least flush(I think flush in this context is better than commit) the SQLAlchemy session to produce the behaviour described in the docs:
>>> session.query(User).all()
[]
>>> UserFactory()
<User: User 1>
>>> session.query(User).all()
[<User: User 1>]

I'm using Flask-SQLAlchemy 2.0, SQLAlchemy 1.0.5, and factory_boy 2.5.2. Autoflush is set to true on my flask_sqlalchemy scoped_session (by default), but I still have to manually call session.flush() after creating instances via factories in order to get the model's id to populate. Is this expected? It's certainly not the behavior I'd desire.

I just experimented with this a bunch. Using Flask-SQLAlchemy 2.0, SQLAlchemy 1.0.6 and factory_boy 2.5.2
I have a factory that creates categories. The initial category is seeded with no parent, but after that, all other categories are created with a randomly selected ID of another category as their parent.
parent = factory.LazyAttribute(lambda p: random.choice(         gear_models.GearCategory.query.options(load_only("id")).all()).id)
I observed the following behavior:

when first category created from the factory, it has no ID.
When second category created from the factory, it has no ID, but SQLAlchemy has correctly flushed the previous category and allows this second category to pick the previous category.

So basically SQLAlchemy handled flushing the category when it was required in order to provide a PK ID that another object could use. But it didn't flush it until then... ie, if I tried to access ID immediately upon creation, it failed.
To me, this seems like reasonable default behavior on the part of SQLAlchemy. If for some reason you need a PK ID right away, then it's easy enough to call db.session.flush() as a Factory boy post_generation hook.
Personally, I think it'd be just fine to close this issue.


refactor tool definition

Motivation
Based on:
https://www.notion.so/labdao/PLEX-0-5-Let-s-clean-up-to-make-things-more-useful-21fd329e1bc241039d57932f7af5f7be?pvs=4
TLDR: tools (eventually chains of tools) should be easier to define, have explicit inputs/outputs and define to best practices (CWL) if there is no good reason to deviate from it.
Changes introduced:

[x] rename "app" to "tool" for consistency with the ontology
[x] introduce a set of example tool definitions: equibind and simpdock - with the focus being on simpdock, a testfile
[x] change the install.sh to not download the individual instruction.jsonl and app config, but download the directory of json tool definitions.
[ ] rewrite the tests for test_instruction.go -> Instruction is where the tool definition and data definitions (data includes input parameters) are integrated to then eventually run jobs.
[ ] adapt and simplify instruction.go -> the main idea is that the tool definition (generated through a reader function in tool.go -currently implemented in ligase.go-) and the data(input + params) is used to construct a complete instruction set.
[ ] update the toolConfigsFilePath in main.go to list all json files in the config directory as possible applications
[ ] check that InstructiontoDockerCmd and InstructiontoBacalhauCmd work properly

Consequences:
no apps but equibind will work in this implementation, and equibind will only be able to take one protein and one small molecule.

stale


improved error messages

Hi - I'm trying this out on a connection that's super broken at the moment. It has been erroring, but the error messages are not particularly expressive. My two most common are:

[error] Cannot read:
[error] Cannot open socket

Would it be possible to either add in some more descriptive text to the errors to help narrow down exactly what went wrong, or to get them to print out a URL to where we could get more info?

I would suggest maybe using Ookla's CLI speedtest if you have an issue. Closed source, but maybe it's a lot more polished and can give relevant error messages.


add readme in tsuru folder

Codecov Report

Merging #626 (500e5fc) into master (c3f6023) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #626   +/-   ##
=======================================
  Coverage   42.28%   42.28%
=======================================
  Files         321      321
  Lines       23122    23124    +2
=======================================
+ Hits         9778     9779    +1
- Misses      13344    13345    +1

Flag
Coverage Δ

unittests
42.28% <ø> (+<0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

dbaas/workflow/steps/util/vip_provider.py
40.63% <0.00%> (+0.03%)
:arrow_up:

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 c3f6023...500e5fc. Read the comment docs.


Add syslog support for log and errors directives

Cool, that wasn't too bad :smile: Will look at this soon. Should be of interest to @stephane-martin

Overall +1 to merging this PR, once we have tests.
Reasoning:

It is worth logging to well-known system logger with centralized config and file paths.

It is not flexible/efficient enough to, e.g., Caddyfile:log stdout and then
$ caddy | logger
(but Cf. logger(1))

It is worth adopting the github.com/hashicorp/go-syslog wrapper to facilitate 1, above, because the stdlib log/syslog will not have a transparent adapter for the Windows Event Log in the go1.5 release and therefore for the near future: See: https://go-review.googlesource.com/#/c/2953/. (However when/if that CR is merged into golang, we can come back and drop the wrapper.)

Notes:

Systemd-journald exposes a compatible interface to calls coming via syslog(3), so having syslog logging should give caddy journald logging, I think.

There are very many go logging packages. CoreOS/pkg/capnslog has a funny name, and some design principles I find useful when thinking about logging in service programs.

Cool :)
Classical conundrum Unix/Windows.
On Unix, no problem: the libc just has a syslog API. Use it and don't care
about syslog destination, as it will be configured with the global syslog
server (rsyslog, syslog-ng, ...).
For Windows you have a make a choice: either
1 - use a full syslog-client inside caddy, so that caddy on windows can
forward logs to a remote syslog server. But thus you have a provide some
configuration parameters in caddy conf (syslog host, syslog port, use TLS
or not, TCP framing of event, ...). More complexity for the user.
2 - use Windows Event API to send logs to the Windows Event log repository.
More complexity for the coder.
Thanks for your work,
Stephane
2015-07-31 2:24 GMT+02:00 Josh Wood<EMAIL_ADDRESS>
Overall +1 to merging this PR, once we have tests.
Reasoning:

It is worth logging to well-known system logger with centralized
config and file paths.
2.
It is not flexible/efficient enough to, e.g., Caddyfile:log stdout and
then
$ caddy | logger
(but Cf. logger(1))
3.
It is worth adopting the github.com/hashicorp/go-syslog wrapper to
facilitate 1, above, because the stdlib log/syslog will not have a
transparent adapter for the Windows Event Log in the go1.5 release and
therefore for the near future: See:
https://go-review.googlesource.com/#/c/2953/. (However when/if that CR
is merged into golang, we can come back and drop the wrapper.)
Notes:

Systemd-journald
http://www.freedesktop.org/software/systemd/man/systemd-journald.service.html
exposes a compatible interface to calls coming via syslog(3), so
having syslog logging should give caddy journald logging, I think.
2.
There are very many go logging packages. CoreOS/pkg/capnslog has a
funny name, and some design principles
https://github.com/coreos/pkg/tree/master/capnslog#design-principles
I find useful when thinking about logging in service programs.
—
Reply to this email directly or view it on GitHub
https://github.com/mholt/caddy/pull/210#issuecomment-126528451.

Thanks for your remarks!
I am a bit struggling with how to test it, as the syslog files are not the same on every computer and I don't know if Travis has syslog at all, I am a bit concern if the tests would pass all the time.
@joshix do you have anything in mind for testing?

@evermax On my system this code compiles but does not function as intended.
STEPS
I merged your PR into master on my fork, then built it on linux amd64 go1.4.2 and on darwin amd64 go1.4.2.
I have a Caddyfile with log syslog.
EXPECTED
Access log lines written to syslog facility (stdout on windows). Lines appear in /var/log/syslog or similar path depending on system & syslog.conf.
GOT
Caddy logs to a file in the working directory named syslog.
Does it work for you?

@joshix This is pretty odd, it is working for me on darwin amd64, errors are logged in /var/log/system.log. Perhaps something happened during the merge, you could try by just pulling my fork.

@evermax Caddy with your PR is working for me on Linux amd64. I'm not sure what I was doing wrong yesterday. Nevertheless, a build from my fork with your PR merged works now -- access log lines appear in /var/log/syslog.
In my environment, that means we're working with systemd-journald's syslog compatibility API, too.
Have not rebuilt on darwin yet.

On Aug 3, 2015, at 02:56, Maxime Lasserre<EMAIL_ADDRESS>wrote:
@joshix This is pretty odd, it is working for me on darwin amd64, errors are logged in /var/log/system.log. Perhaps something happened during the merge, you could try by just pulling my fork.
―
Reply to this email directly or view it on GitHub.

On darwin, it is working fine as well, it was indeed my settings about the levels of the syslogs that were from notice but caddy access logs are info.
I will now investigate on how to mock to add tests to that.

Since this is difficult to test, I'll merge it in now and as we find a good way to test this, we can do that later. Thanks @evermax for your contribution, and all others for your input!


hub.KerasLayer error when run_functions_eagerly = True

In Tensorflow 2.3 (Windows, GPU) the following code results in an error, only when run_functions_eagerly is True:
tf.config.run_functions_eagerly(True)

image_input = keras.Input(shape=(224, 224, 3), name="image")
x = hub.KerasLayer("https://tfhub.dev/google/imagenet/resnet_v2_50/feature_vector/4")(image_input)

The error is:
    ValueError: Could not find matching function to call loaded from the SavedModel. Got:
      Positional arguments (1 total):
        * Tensor("image:0", shape=(None, 224, 224, 3), dtype=float32)
      Keyword arguments: {'training': False}

    Expected these arguments to match one of the following 4 option(s):

    Option 1:
      Positional arguments (4 total):
        * TensorSpec(shape=(None, None, None, 3), dtype=tf.float32, name='inputs')
        * False
        * False
        * TensorSpec(shape=(), dtype=tf.float32, name='batch_norm_momentum')
      Keyword arguments: {}

    Option 2:
      Positional arguments (4 total):
        * TensorSpec(shape=(None, None, None, 3), dtype=tf.float32, name='inputs')
        * True
        * True
        * TensorSpec(shape=(), dtype=tf.float32, name='batch_norm_momentum')
      Keyword arguments: {}

    Option 3:
      Positional arguments (4 total):
        * TensorSpec(shape=(None, None, None, 3), dtype=tf.float32, name='inputs')
        * False
        * True
        * TensorSpec(shape=(), dtype=tf.float32, name='batch_norm_momentum')
      Keyword arguments: {}

    Option 4:
      Positional arguments (4 total):
        * TensorSpec(shape=(None, None, None, 3), dtype=tf.float32, name='inputs')
        * True
        * False
        * TensorSpec(shape=(), dtype=tf.float32, name='batch_norm_momentum')
      Keyword arguments: {}

Process finished with exit code -1

Could reproduce the error. Please find the Colab Gist. Thanks!

This is a problem with the way a tf.function restored from a SavedModel gets its arguments matched if tf.config.run_functions_eagerly(True) has been set, independent of the SavedModel at hand or the operating system being used. The expected behavior is to execute that tf.function normally (that is, non-eagerly, because its Python code is no longer available) instead of failing. This needs to be fixed inside TensorFlow, and we have raised it with them.
Until this gets fixed in a future TensorFlow release, the only advice for users of SavedModels from TF Hub is to not use this debugging facility. Sorry.

Thanks @arnoegw.
Do you have a link to the issue on the main Tensorflow repository so I can follow?
Also, can you suggest any workarounds?
Happy for you to close the issue if not.

Hi @JustASquid, I'm not aware of a better workaround than having run_functions_eagerly set to False for the part of your code that handles SavedModels (possibly indirectly via hub.KerasLayer.
Our report to TensorFlow team is tracked outside GitHub (so I can't link to it), but I'll keep TF Hub users posted here.

I've been playing with this issue for a bit, and setting run_functions_eagerly to False hasn't worked. Even on the most basic example below, the error is still there.
tensorflow==2.31 , tensorflow-hub==0.10.0

model = hub.KerasLayer('https://tfhub.dev/google/imagenet/inception_v3/classification/4', run_functions_eagerly)

image = np.asanyarray(Image.open('photos/2007_000033.jpg'))
model(image)```

That's correct, our report to the TensorFlow team has not been resolved yet.

@dellis23 has fixed this in commit https://github.com/tensorflow/tensorflow/commit/a02ad9725c47a7b24d96ffe09e1dbcd1065a4a1f which is already available in the latest tf-nightly pip packages, and will become part of TF 2.5.0.
No update is needed for the tensorflow_hub library or the models on TF Hub.


Correctly fall back to home folder if HOME is unset

Fixes #532

Hello @mitsuhiko, thanks for your amazing work ! Maybe a dumb question but why do not consider home::home_dir function coming from official cargo crates ? If it's relevant I'm glad to propose a PR in this way.

Ok, can't wait your answer :laughing: so I proposed the PR (#534) feel free to take a decision to merge it or not :smiley:

Works too. Applied the PR.


Mention tower-http's logging/tracing middleware in the interceptor docs

Several people are wondering if interceptors is the correct place to add logging, which it isn't since they cannot access the response. Instead once tower-http is released we should guide people towards its Trace middleware which supports gRPC out of the box as the recommended way to setup logging.

Awesome! Thanks for the example.

Was very happy to find this, but unfortunately regressions in prost==0.8.0 means that it's unusable for me (and likely many others) until those are fixed, and because tonic has upgraded to that version of prost, we're stuck on tonic==0.4.3. Just FYI.

That regression isn't related to tracing, middleware or interceptors. The middleware can also be used with tonic 0.4 as shown here https://github.com/tower-rs/tower-http/blob/master/examples/tonic-key-value-store/src/main.rs


Search not supporting full text search?

Not sure how the search index works but I would have expected it to find pages with the search term "rich text":
https://guide.wagtail.org/en-latest/search/?query=rich+text
But I get 0 results, even though there are pages mentioning "rich text" e.g.
https://guide.wagtail.org/en-latest/how-to/creating-and-editing-pages/

I also just encountered this issue - searching for comment doesn't seem to find any of the pages that talk about commenting.
https://guide.wagtail.org/en-latest/search/?query=comment

I would expect that this page at least would come up in the results.
https://guide.wagtail.org/en-latest/how-to/creating-and-editing-pages/#commenting


When dragging item don't move other box until it gets on the middle of that other box

I would like when I drag the item that other box moves when I reach middle of it. Is it possible?
Thanks

What settings are you currently using? If you are using the max_cols property and resizing each column dynamically, and then each box uses a single column, then it will behave as described.

I didn't understand about each box uses a single column? Here is my grid config:
'margins': [5],
'draggable': true,
'resizable': true,
'max_cols': 25,
'max_rows': 0,
'visible_cols': 0,
'visible_rows': 0,
'min_cols': 1,
'min_rows': 1,
'col_width': 2,
'row_height': 2,
'cascade': 'up',
'min_width': 50,
'min_height': 50,
'fix_to_grid': false,
'auto_style': true,
'auto_resize': false,
'maintain_ratio': false,
'prefer_new': false,
'zoom_on_drag': false,
'limit_to_screen': true
and for items (boxes):
[{ 'dragHandle': null, 'resizeHandle': null, 'resizable': true, 'draggable': true, 'col': 1, 'row': 1, 'sizex': 1, 'sizey': 1, 'borderSize': 15 },
{ 'dragHandle': null, 'resizeHandle': null, 'resizable': true, 'draggable': true, 'col': 26, 'row': 1, 'sizex': 1, 'sizey': 1, 'borderSize': 15 },
{ 'dragHandle': null, 'resizeHandle': null, 'resizable': true, 'draggable': true, 'col': 51, 'row': 1, 'sizex': 1, 'sizey': 1, 'borderSize': 15 },
{ 'dragHandle': null, 'resizeHandle': null, 'resizable': true, 'draggable': true, 'col': 76, 'row': 1, 'sizex': 1, 'sizey': 1, 'borderSize': 15 },
{ 'dragHandle': null, 'resizeHandle': null, 'resizable': true, 'draggable': true, 'col': 1, 'row': 26, 'sizex': 1, 'sizey': 1, 'borderSize': 15 },
{ 'dragHandle': null, 'resizeHandle': null, 'resizable': true, 'draggable': true, 'col': 26, 'row': 26, 'sizex': 1, 'sizey': 1, 'borderSize': 15 }
];

Yes, that's about the configuration I was expecting. Does the behaviour not already work as described? If not, at what point does the item move?

Yes it moves but as soon as one box interacts with another that other box moves. I need a behavior that one box get a little bit over another and than that other moves.

Ah, hang on, I know what's going. I misread your config. Basically, ever column in the grid is only 2 pixels wide according to your config, which means that it only take 2 pixels of movement to update an item's position and force another item out of the way. If you want the behaviour like you've described, you'll need to set a larger column/row width (say, 50 or 100) so that it takes more movement to actually change an item's position.


InterceptorManager

Current coverage is 57.48% (diff: 51.72%)

Merging #22 into dev will decrease coverage by 0.63%

@@                dev        #22   diff @@
==========================================
  Files            16         17     +1
  Lines           437        494    +57
  Methods           0          0
  Messages          0          0
  Branches         44         61    +17
==========================================
+ Hits            254        284    +30
- Misses          163        181    +18
- Partials         20         29     +9

Powered by Codecov. Last update c2c6645...2d0854b


Nagios warning message with ceph-radosgw

With the recent 20.05 charm release, the ceph-radosgw register the object service into keystone service catalog as "s3" instead of "swift" [1]. However the openstack-service-checks charm is always checking the /healtcheck in case of s3 endpoint and Nagios is throwing the following constant warning for admin, internal, public endpoints:
XXX-openstack-service-checks-0-s3_admin
WARNING 	2020-05-29 13:07:32 	4d 22h 20m 28s 	4/4 	HTTP WARNING: HTTP/1.1 404 Not Found - 476 bytes in 0.012 second response time
XXX-openstack-service-checks-0-s3_internal
WARNING 	2020-05-29 13:03:05 	4d 22h 19m 55s 	4/4 	HTTP WARNING: HTTP/1.1 404 Not Found - 476 bytes in 0.013 second response time
XXX-openstack-service-checks-0-s3_public
WARNING 	2020-05-29 13:03:39 	4d 22h 19m 21s 	4/4 	HTTP WARNING: HTTP/1.1 404 Not Found - 476 bytes in 0.013 second response time
The rendered nrpe check looks like that:
cat check_s3_admin.cfg
check s3_admin
The following header was added automatically by juju
Modifying it will affect nagios monitoring and alerting
servicegroups: juju
command[check_s3_admin]=/usr/lib/nagios/plugins/check_http -H swift-internal.XXXX -p 443 -u /healthcheck -S
The s3 check endpoint has a "/healthcheck" hardcoded value in src/lib/lib_openstack_service_checks.py:
health_check_params = {
...
's3': '/healthcheck',
'swift': self.charm_config.get('swift_check_params', '/'),
}
A similar issue had been addressed before for swift endpoints, and the swift endpoint got a swift_check_params charm config option to make the health check endpoint configurable. [2]
I suggest to do the same for s3 endpoints to properly handle the change happened in ceph-radosgw charm.
[1] Add S3 endpoint to service catalog
https://github.com/openstack/charm-ceph-radosgw/commit/0667a64be650abb253ac871024a34901fa68befd
[2] Add swift_check_params config
https://code.launchpad.net/~xavpaice/charm-openstack-service-checks/+git/charm-openstack-service-checks/+merge/363815

(by marton-kiss)
And this is a very simple patch to fix the issue:
https://paste.ubuntu.com/p/T9qRbVMD82/

(by marton-kiss)
An improved version: https://pastebin.canonical.com/p/nfxvS4DtN3/

(by dparv)
Could you create a merge proposal for the requested changes? Thanks!

(by marton-kiss)
Sure, I already did, you can find it here:
https://code.launchpad.net/~marton-kiss/charm-openstack-service-checks/+git/charm-openstack-service-checks/+merge/384838
I did a test yesterday with the patched charm, and I got an all-green nagios this time. You can find the patched one released here:
https://jaas.ai/u/marton-kiss/openstack-service-checks/0

(by pguimaraes)
Hi, this is a potential blocker for handovers since Nagios won't be ready. We have a fix in place waiting for merge, I will raise it as field-high. Can anyone review it?

(by vultaire)
This is available in cs:~llama-charmers-next/openstack-service-checks-7.  Note that to avoid potentially breaking existing deployments, the API in question still defaults to "/healthcheck"; you need to set s3_check_params to "/" to support the case in this ticket.

(by andre-ruiz)
Interestingly enough the default shown in the charmstore for this particular release is:

swift_check_params
(string) URL to use with check_http if there is a Swift endpoint. Default is '/', but it's possible to add extra params, e.g. '/v3 -e Unauthorized -d x-openstack-request-id' or a different url, e.g. '/healthcheck'. Mitaka Swift typically needs '/healthcheck'.
Default: /
Note the default value.
https://jaas.ai/u/llama-charmers-next/openstack-service-checks/7

(by andre-ruiz)
A correction to my last comment. swift_check_params actually defaults to "/" since it's inception, what is defaulted to "/healthcheck" is s3_check_params, I confused the two.

(by yoshikadokawa)
I'm having the same issue, but I only could mitigate this issue by using the charm from llama-charmers-next.
I believe the status should be "Fix committed", since it is still not available in llama-charmers.

(by gabor.meszaros)
I'm facing the same.
Yoshi, fix committed will become fix released once it's available. Committed means it's in the master, under testing, pending release.

(by nobuto)
I've requested cherry-picks in:
https://code.launchpad.net/~nobuto/charm-openstack-service-checks/+git/charm-openstack-service-checks/+merge/387819
Please review and leave some feedback there. Thanks!

(by vlgrevtsev)
FWIW, this issue is still actual and reproducible with cs:~llama-charmers-next/openstack-service-checks-9.
The workaround is the same: juju config openstack-service-checks s3_check_params='/'

(by aieri)
MP#384838 is in 20.10, so this is now fix-released


Project: To Do List

I hope you enjoy the project!
Features: Every changed or added items go into the first table. The reason is because this table is a FIFO storage. Therefore no order is imposed.
After refreshing the page, all added or changed Items go to their project in the correct order (by date).  This only happens once because otherwise, the changes in the DOM and the backend will be more substantial than necessary.

As explained in the beginning, you needed to refresh the page to see the organized version of the to do's in their project. I added a button "Organize projects" when you add or change a to-do item so the user can click it and, thus, see all the elements organized by date in their respective project container.
Added the server for development mode so now you can start it with npm run start:dev.
Thanks!


UPS power failure

So far, only one notification arrives on power failure.
Need to add Alert when system is on UPS + notifications with remaining time.
Probably should also try to intercept shutdown and send message too.

Also you can add that when you detect power outage (UPS on battery mode) and after power is back online you turn OFF lights. Ikea lights has fun feature that they turn ON when they got power.
Its just happened to me while we were in vacation. Power outage and after all lights in house was ON, of course I didnt think about it and lights was ON for one day till I didnt see it on my mobile phone :/

That's great idea! And you are right!
Philips Hue had that problem, but they updated firmware long time ago to fix this issue.
Have to think a bit more about this one, since it's possible for UPS to shutdown Synology NAS and HA then would not know what to do on boot, when power get's back.

Well yes, I was thinking about it. For that case when UPS shutdowns everything you cannot do much and this is the worst scenario. You can put that on every restart of HA turn off lights but then you need to add boolean sensor for development (intentional restart) to skip that automation but its not easy and you need to remember to set boolean before restart otherwise you will turn off lights at evening and family will be, lets say, unhappy :D.
I didnt cover this worst scenario because I know that I will forget that boolean. Also I set notification for low battery on UPS so I will know that soon it will shutdown everything. If that happens when nobody are at home than I cannot do anything because you cannot start Synology remotely (if Im not worng).

To be precise Synology will get in safe mode, it will not shut down itself BUT in safe mode he shutdowns everything (all services) and also unmounts all disks and next expected action is power loss or cold boot according to Synology documentation.

I've done some work on this based on my Powerwall usage.  You might find some ideas and code in there.
https://github.com/CCOSTAN/Home-AssistantConfig/issues/779

@deadly667  - it would be great if you cold save state between HA restarts. If there is a way, I'm not sure on how to do it.
In theory, I have an idea, but that would be big hack - to publish specific MQTT message and then on each reboot to check for that message state.... Maybe that could work. But since I now use add-on MQTT, I guess that it's not running or could be delayed during HA startup.
Or based on your idea, probably, easiest way would be to have automation on statrup check if it's daylight and if specific light is on (light that is NEVER on during day), to then turn all lights off...

@CCOSTAN  - that will be a great inspiration and help with DIYBMS project I'm working on and DIY PowerWall. Thanks for pointing me in that way! Although I'll have it set as proof of concept projects since I live in apartment and would break bunch of building codes I guess :)

I've captured 3 states of UPS so far. Haven't tested if there is "OB CRITICAL" or not when battery is at critical state, but I guess that there is additional state available.
States I got so far:
When all is OK - Battery full and on mains
Ups Status : Online
Ups Status Data : OL
When on batteries:
Ups Status : On Battery Battery Discharging
Ups Status Data : OB DISCHRG
When on mains and battery charging
Ups Status : Online Battery Charging
Ups Status Data : OL CHRG
Now I should catch states OB DISCHRG and temporarily save it in booblean.
It should be checked on startup of HA and if set to true/on - wait 5 minutes and turn lights off (just to give Zigbee network few more minutes to try and sync back).

Now we have 3 automation:

UPS_power_failer.yaml - this one is triggered when UPS kicks in sets input_boolean to on
UPS_battery_full.yaml - it is triggered when battery is full and if input_boolean state is on .
This is for when power is restored while HA is still running
UPS_battery_failed.yaml - every HA restart this one runs, but is only triggered if input_boolean is set to on.
Turns lights off and notifies.

If I thought of everything, this should handle all events of UPS correctly. Both when power is restored without failure and also when power is restored after UPS shuts down.
Is this it @deadly667  ?

Closing this issue for now as I can't test anything until I replace UPS batteries.
Had replace battery alarm (continuous high pitch beep) at 5:50 AM on Sunday - not funny, took about 15 minutes to reset it.

Old batteries have been removed and new ones are in.
I will conduct some power failure tests over the weekend.

Due to new unplaned test, I have a bit more stats about UPS now.
Power lost:

UPS depleted:

And power restored.

But HA didn't start properly - have to see what happened there.


Optional license agreement

IDEA:

Opening DMG file on macOS presents a license text and requires user to agree before moving forward.
Installing MSI file on Windows would do something similar.
Other "non-installers" like just-ZIPPED things would include a LICENSE.txt or something.

INVESTIGATION:

Both Windows MSI and macOS dmgbuilder seem to use RTF formatted text for their license agreements -- horrible, but at least the same on both platforms. :P
We'd like to use a UTF-8 encoded text file as the source for that, something very common and covering all possible characters. If non-trivial, we'll go ASCII only, which serves near-term goals.
Browsing PyPI did not bring immediate / obvious solutions to the RTF generation problem.
This may help, though, regarding UTF-8 vs ASCII: https://pypi.org/project/rtfunicode/
Generating a minimal RTF document from "plain text" can be seen here: https://stackoverflow.com/questions/10725438/converting-txt-to-rtf

MORE WRT Windows MSI:

WiX includes some "GUI Dialog Sets" -- the one called WixUI_Minimal seems to address our needs.
Using such Dialog Sets seems simple: https://wixtoolset.org/documentation/manual/v3/wixui/wixui_dialog_library.html.
Customizing the License Agreement text: <WixVariable Id="WixUILicenseRtf" Value="res/License.rtf" />, from here.

WRT to macOS:

dmgbuild docs include an example with a commented out license thingie: https://dmgbuild.readthedocs.io/en/latest/example.html.

INVESTIGATION:

Both Windows MSI and macOS dmgbuilder seem to use RTF formatted text for their license agreements -- horrible, but at least the same on both platforms. :P
We'd like to use a UTF-8 encoded text file as the source for that, something very common and covering all possible characters. If non-trivial, we'll go ASCII only, which serves near-term goals.
Browsing PyPI did not bring immediate / obvious solutions to the RTF generation problem.
This may help, though, regarding UTF-8 vs ASCII: https://pypi.org/project/rtfunicode/
Generating a minimal RTF document from "plain text" can be seen here: https://stackoverflow.com/questions/10725438/converting-txt-to-rtf

MORE WRT Windows MSI:

WiX includes some "GUI Dialog Sets" -- the one called WixUI_Minimal seems to address our needs.
Using such Dialog Sets seems simple: https://wixtoolset.org/documentation/manual/v3/wixui/wixui_dialog_library.html.
Customizing the License Agreement text: <WixVariable Id="WixUILicenseRtf" Value="res/License.rtf" />, from here.

WRT to macOS:

dmgbuild docs include an example with a commented out license thingie: https://dmgbuild.readthedocs.io/en/latest/example.html.

PROGRESS:

macOS implementation in #105, depending on dmgbuild, seems to handle "plain text" files reasonably well:

Works with Mu's ASCII LICENSE and with puppy's one.
Worked with puppy's after adding a non-ASCII ã character.
Failed with puppy's if it contained a 🙂.

Good enough for now.

PROGRESS:

macOS implementation in #105, depending on dmgbuild, seems to handle "plain text" files reasonably well:

Works with Mu's ASCII LICENSE and with puppy's one.
Worked with puppy's after adding a non-ASCII ã character.
Failed with puppy's if it contained a 🙂.

Good enough for now.

PROGRESS:

Minimal Windows MSI implementaion in #105.

FUTURE IMPROVEMENTS:

Customizing the bitmaps / icons in the MSI UI -- #103.
Adjusting the license text font in the MSI UI -- #106.

PROGRESS:

Minimal Windows MSI implementaion in #105.

FUTURE IMPROVEMENTS:

Customizing the bitmaps / icons in the MSI UI -- #103.
Adjusting the license text font in the MSI UI -- #106.


Add minimal-raw and clean up the compose handler a bit

Firstly, this adds the minimal-raw image type to the cloud API.
However, I wasn't sure how to test it - we surely shouldn't build all images in the composer's CI - that's what the images' CI is for. Since adding an image type to cloud API is about implementing a translation between cloud API and the image definitions API, I decided to clean up the translation code a bit to reduce its API surface and cover it with a smoke test. The test itself is pretty dumb, but that's just how tests for translation layers look like. :shrug:

The nightly pipeline failure is a known issue tracked in https://issues.redhat.com/browse/RHEL-24346

The failure in the edge test case is a known issue, as confirmed by https://github.com/osbuild/osbuild-composer/pull/3828#issuecomment-1952384801.
The failure in the nightly pipeline is a known issue, tracked in https://issues.redhat.com/browse/RHEL-24346
All the required tests passed. Merging manually (@nullr0ute asked to get this in ASAP), since there is an unresolved discussion, which I want to keep open.


containerd: limit the amount of storage user can write on root

Currently, if a user creates a container without any volume mounted. He can abuse the root of is container and store pretty much unlimited amount of data in there.
This data ends up in the cache of the node itself.
We need to limit this as much as possible. I don't think we can make root fully read-only, but the usage of volume in container should be really encouraged.

One solution to this would be to implement this in flistd itself. 0-fs already allow to choose where to set the Read-Write layer.
So if flistd does creates a small sub-volume before starting the 0-fs process, he can point the RW layer to the sub-volume. Like this the user will get a nice no more space on device error if he tries to abuse it's root.

also, from experience, people just don't use volumes, and expect / to not be ephemeral. Nasty surprises ensued, as well as dirty hacks using backups and restores for restarts. you'd be amazed at the imagination and inventivity


Changed honey nav cam gain and exposure to match bumble.

We didn't intentionally calibrate it this way for some reason?

We didn't intentionally calibrate it this way for some reason? (just checking)

From what Ruben said, the Bumble values were adjusted from ISS activities a long time ago. But the other robot config files weren't updated to match it, so when Honey was deployed on-orbit, it had the old values


Improve DuckDB

Codecov Report

Merging #289 (8b1e3de) into master (db8b235) will decrease coverage by 0.06%.
The diff coverage is 98.57%.

@@             Coverage Diff             @@
##            master     #289      +/-   ##
===========================================
- Coverage   100.00%   99.93%   -0.07%
===========================================
  Files           95       98       +3
  Lines         8776     9183     +407
===========================================
+ Hits          8776     9177     +401
- Misses           0        6       +6

Impacted Files
Coverage Δ

fugue_duckdb/_io.py
95.16% <95.16%> (ø)

fugue/_utils/io.py
100.00% <100.00%> (ø)

fugue/dataframe/arrow_dataframe.py
100.00% <100.00%> (ø)

fugue_duckdb/__init__.py
100.00% <100.00%> (ø)

fugue_duckdb/_utils.py
100.00% <100.00%> (ø)

fugue_duckdb/dataframe.py
100.00% <100.00%> (ø)

fugue_duckdb/execution_engine.py
100.00% <100.00%> (ø)

fugue_duckdb/ibis_engine.py
100.00% <100.00%> (ø)

fugue_test/dataframe_suite.py
100.00% <100.00%> (ø)

fugue_test/execution_suite.py
100.00% <100.00%> (ø)

... and 1 more

Continue to review full report at Codecov.

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


'tsc --init' shouldn't generate an "exclude" field if files are present

tsc --init foo.ts

Right now, we'll generate the following:
{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "noImplicitAny": false,
        "sourceMap": false
    },
    "exclude": [
        "node_modules"
    ],
    "files": [
        "foo.ts"
    ]
}

which violates the schema that we've specified. If files are present as arguments, we shouldn't emit the "exclude" field.

Thanks @tinganho!


Circular structures

Can you handle circular instance graphs? I.e. inst1->inst2->inst1. Frameworks like JSOG (from the Java world) handle these by adding an @id reference to the JSON data and each object gets an id-attribute. The deserializer then restores the dereferentiated instance graph. Just want to check before starting to use the framework. NSCoding does this in a similar way with XMLID when serializing to XML.

This is not supported out of the box, however, you can build a custom transform that returns an object from a local cache based on an ID.
Issue #309 is where this functionality was added. Hopefully this helps.


KOGITO-4911 - add test container wait condition

JIRA: https://issues.redhat.com/browse/KOGITO-4911
Many thanks for submitting your Pull Request :heart:!
Please make sure that your PR meets the following requirements:

[x] You have read the contributors guide
[x] Your code is properly formatted according to this configuration
[x] Pull Request title is properly formatted: KOGITO-XYZ Subject
[x] Pull Request title contains the target branch if not targeting master: [0.9.x] KOGITO-XYZ Subject
[x] Pull Request contains link to the JIRA issue
[x] Pull Request contains link to any dependent or related Pull Request
[x] Pull Request contains description of the issue
[x] Pull Request does not include fixes for issues other than the main ticket

How to retest this PR or trigger a specific build:

Pull Request
Please add comment: Jenkins retest this

Quarkus LTS checks
Please add comment: Jenkins run LTS

Native checks
Please add comment: Jenkins run native

Full Kogito testing (with cloud images and operator BDD testing)
Please add comment: Jenkins run BDD
This check should be used only if a big change is done as it takes time to run, need resources and one full BDD tests check can be done at a time ...

The Linux check has failed. Please check the logs.

jenkins retest this please

@r00ta
Previous execution failed because of timeout on Kafka test, it's strange 🤔
09:37:41,506 [INFO] --- maven-failsafe-plugin:2.22.2:integration-test (default) @ kafka-persistence-addon ---
09:37:41,513 [INFO]
09:37:41,513 [INFO] -------------------------------------------------------
09:37:41,513 [INFO]  T E S T S
09:37:41,513 [INFO] -------------------------------------------------------
09:37:42,017 [INFO] Running org.kie.kogito.persistence.kafka.KafkaProcessInstancesIT
Cancelling nested steps due to timeout
Sending interrupt signal to process
18:55:21,389 [INFO]

jenkins retest this please

jenkins retest this please

@r00ta
Previous execution failed because of timeout on Kafka test, it's strange
09:37:41,506 [INFO] --- maven-failsafe-plugin:2.22.2:integration-test (default) @ kafka-persistence-addon ---
09:37:41,513 [INFO]
09:37:41,513 [INFO] -------------------------------------------------------
09:37:41,513 [INFO]  T E S T S
09:37:41,513 [INFO] -------------------------------------------------------
09:37:42,017 [INFO] Running org.kie.kogito.persistence.kafka.KafkaProcessInstancesIT
Cancelling nested steps due to timeout
Sending interrupt signal to process
18:55:21,389 [INFO]

I've seen this failure yesterday too, it might be that the image registry was inaccessible.

The Linux check is successful.


rename PbAggKind to PbAggType

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

#18632
#18631  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @stdrc and the rest of your teammates on  Graphite

ew proto message called AggKind which contains both agg_type and agg metadata like UDF meta or wrapped scalar expression node

Personally I prefer the opposite 🤣, i.e., Type composed of Kind (discriminant) and other fields.

superseded by #18640


Collection of tools and databases required for GTN that cannot be synchronized easily between the main servers

humann nucleotide and protein database: https://github.com/galaxyproject/usegalaxy-tools/issues/855 (missing on AU/ORG)

kraken2 - 5 toturials, multiple DBs - should all be updated to 2024 versions on the servers and the tutorials

blastn: https://training.galaxyproject.org/topics/assembly/tutorials/assembly-decontamination/tutorial.html

DBs for https://training.galaxyproject.org/training-material/topics/microbiome/tutorials/pathogen-detection-from-nanopore-foodborne-data/tutorial.html

phyloseq IT (only in EU)

Will try to add to this list step by step. Still need to check versions of the DBs on the servers if they exist.

Another issue are tools that are differently configured in TPV. E.g. quast on org cannot access the internet and therefore fails in this tutorial: https://training.galaxyproject.org/training-material/topics/microbiome/tutorials/metagenomics-assembly/tutorial.html

Thanks for filing this @paulzierep ! Really appreciate it. cc @bgruening @natefoo @cat-bro since some databases/etc may be needed on each.

quast on org cannot access the internet

i'm shocked that it needs internet access. That shouldn't be necessary :/ cc @jennaj

phyloseq IT (only in EU)

this should already be tested. we test for tools used in the tutorial / workflow. If you notice any bugs here please let me know! :) See the tools key in https://training.galaxyproject.org/training-material/api/topics/microbiome/tutorials/dada-16S//tutorial.json where phyloseq is mentioned. That's the data that goes into compatibility checking.

I installed the phyloseq IT on .org but don't have data to test it, can someone do that please?
humann databases are updated as per the linked issue.
kraken2, blastn, and pathogen detection DBs, any specific details about what is needed there?


Feature: add batch mode

Add --batch-file to provide an path to an file containing  paths/Plugin-Keys for all plugin-related commands.
Add --batch-directory for installing multiple plugins at the same time.

We may also want to add the ability to download plugins from the marketplace by providing an url

Following the unix philosophy (do one thing, and one thing only): This can be done by writing an script. If someone really wants this feature, we can think about adding it again, but for now, lets keep it out.


journal: ui serializer formatting improvements

:heart: Thank you for your contribution!
Description
This PR includes a number of improvements to how journal metadata is displayed in the UI. I'm kind of touching citation styles here, which is always controversial. My goal is to address inconsistencies between the default citation and "Published In" section, including the following behavior that is odd:

Issue is at the end of the section, not near volume
ISSN labeled with "no."
"pp." appears for both page ranges and article numbers
Section only appears if a journal title is present (there are no required fields for the journal metadata)
Full publication date in the middle of the block (this isn't present in Zenodo)

I've tried to use the  default citation style (APA) as much as I could.
Full metadata:

Without ISSN:

Without Issue:

Without Volume:

Without Title:

Checklist
Ticks in all boxes and 🟢 on all GitHub actions status checks are required to merge:

[ ] I'm aware of the code of conduct.
[ ] I've created logical separate commits and followed the commit message format.
[ ] I've added relevant test cases.
[ ] I've added relevant documentation.
[ ] I've marked translation strings (for relevant code).
[ ] I've followed the CSS/JS and React guidelines (for relevant code).
[ ] I've followed the web accessibility guidelines (for relevant code).
[ ] I've followed the user interface guidelines (for relevant code).
[ ] I've identified the copyright holder(s) and updated copyright headers for touched files (>15 lines contributions).
[ ] I've NOT included third-party code (copy/pasted source code or new dependencies).

Third-party code
If you've added third-party code (copy/pasted or new dependencies), please reach out to an architect.
Reminder
By using GitHub, you have already agreed to the GitHub’s Terms of Service including that:

You license your contribution under the same terms as the current repository’s license.
You agree that you have the right to license your contribution under the current repository’s license.

Great! I'll work on adding in the publication date (even though it's technically not in that part of the citation, we agreed it would be a nice addition). It should be a pretty fast addition.

hello Tom! I hope you don't mind if I add the pub date, we need to finalise this one

I think you don't allow to push to this branch because I couldn't update, therefore I branched out to https://github.com/inveniosoftware/invenio-rdm-records/pull/1524, (its merge of this PR and https://github.com/inveniosoftware/invenio-rdm-records/pull/1305
if you agree mine is fine we can close this and #1305

Merged as part of #1524


updated by GinforJM

the issue 81 has been solved.
I will preprocess the background image and change it to be transparent.

Thanks for your reply and Suggestions!
I will read your Suggestions carefully and take time to figure out if I can solve them.
------------------ 原始邮件 ------------------
发件人: "Kenny<EMAIL_ADDRESS>发送时间: 2020年6月23日(星期二) 凌晨4:03
收件人<EMAIL_ADDRESS>抄送: "1452044324"<1452044324<EMAIL_ADDRESS>主题: Re: [kennycason/kumo] updated by GinforJM (#91)
@kennycason requested changes on this pull request.
@GinforJM 谢谢你支持KUMO！我评论了一些小的推荐和请求。
我觉得第一重要的应该是那个“sun.font.FontDesignMetrics”的class。因为这个class从sun（oracle）的package来的，所以好像不能用，因为有很大的可能别的JDK就没有这个package，所以就不能compile。我还没想到最好的办法解决这个。最坏情况是我们可以直接把那个class拷贝到KUMO里。我们先去研究一下。
如果还有什么不清楚的地方，马上跟我说，谢谢：）。
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>          final BufferedImage bufferedImage = ImageIO.read(imageInputStream); -        this.collisionRaster = new CollisionRaster(bufferedImage); +        /** +         *  preprocess the image if the image is not +         */ +        //CS304 Issue link: https://github.com/kennycason/kumo/issues/81
go ahead and remove the line 38 comments.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>      @Override -    public void mask(final RectanglePixelCollidable background) {
I intentionally want final on all variables and method parameters. It's considered best practice and most programming languages now include val/var types as first level types as well with preference on val, including new versions of Java.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>  import com.kennycason.kumo.collide.RectanglePixelCollidable;  import com.kennycason.kumo.image.CollisionRaster; - +import sun.font.FontDesignMetrics;
Can you find another way to implement this without using sun.* package. In general, usage of sun.* packages have been deprecated for some time if I recall correctly.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>          this(new File(filepath));      } -     + +    /** +     *Creates a PixelBoundaryBackground using an image-path +     * +     * @param example a string which you want to use to be a background +     * @param size the size of each character in the string +     */ +    //CS304 Issue link: https://github.com/kennycason/kumo/issues/70 +    public PixelBoundryBackground(String example , int size){
final variables/parameters. (and space between ) {)
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>  import com.kennycason.kumo.collide.RectanglePixelCollidable;  import com.kennycason.kumo.image.CollisionRaster; - +import sun.font.FontDesignMetrics;
https://stackoverflow.com/questions/8565708/what-is-inside-com-sun-package
Check out the top rated answer for more details:
Please note that the com.sun.* package should not be confused with sun.* package which are the internal classes behind Oracle JRE which you should absolutely not import/use in your code as it would make your code tight coupled to the JRE make/version. Not using sun.* package at all enables you to run your code on all other JRE implementations (OpenJDK, GCJ, etc).
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>  import com.kennycason.kumo.collide.RectanglePixelCollidable;  import com.kennycason.kumo.image.CollisionRaster; - +import sun.font.FontDesignMetrics;
I'll also research a better alternative. If you can't find another alternative, feel free to literally just copy the implementation into Kumo if it is small enough.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
> +        graphics.drawString(example, 0, metrics.getAscent());//图片上写文字 +        graphics.dispose(); +        BufferedImage b = preprocess(bufferedImage,5); +        // changed +        this.collisionRaster = new CollisionRaster(b); +      //  this.collisionRaster = new CollisionRaster(bufferedImage); +      //  write(bufferedImage, "D:\Gin_app\IDEA\kumocore\test.jpg"); +    } + +    /** +     * +     * @param font the font of each character +     * @param content the content of the input string +     * @return return a width of a word +     */ +    //CS304 Issue link: https://github.com/kennycason/kumo/issues/70
remove comment on line 137.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
> +        FontDesignMetrics metrics = FontDesignMetrics.getMetrics(font); +        int width = getWordWidth(font, example); +        int height = metrics.getHeight(); +        BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); +        Graphics2D graphics = bufferedImage.createGraphics(); +        graphics.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); +        graphics.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER)); +        //Set the back to white +        graphics.setColor(Color.WHITE); +        graphics.fillRect(0, 0, bufferedImage.getWidth(), bufferedImage.getHeight()); +        graphics.setFont(font); +        graphics.setColor(Color.BLACK); +        graphics.drawString(example, 0, metrics.getAscent());//图片上写文字 +        graphics.dispose(); +        BufferedImage b = preprocess(bufferedImage,5); +        // changed
delete this comment on line 125.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
>          this(new File(filepath));      } -     + +    /** +     *Creates a PixelBoundaryBackground using an image-path +     * +     * @param example a string which you want to use to be a background +     * @param size the size of each character in the string +     */ +    //CS304 Issue link: https://github.com/kennycason/kumo/issues/70 +    public PixelBoundryBackground(String example , int size){ +        Font font = new Font("微软雅黑", Font.BOLD, size);
I think we should make this:
rename example to text
final Font font = new Font(settings.getFontName(), settings.getFontWeight(), settings.getFontSize());
This way we can configure the font and we should also come up with a better default font. I don't think most people are familiar with "微软雅黑". Maybe Calibri for now, or something else more common.
Then where you use example below, you can also just say settings.getText()
you could then construct with PixelBoundryBackground(final PixelBoundryBackgroundSettings settings)
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
> +     * @return we will return a bufferedimage object which has been preprocessed +     */ +    //CS304 Issue link: https://github.com/kennycason/kumo/issues/81 +    private BufferedImage preprocess(BufferedImage srcImage,int alpha) { +        int imgHeight = srcImage.getHeight();//取得图片的长和宽 +        int imgWidth = srcImage.getWidth(); +        int c = srcImage.getRGB(3, 3); +        //防止越位 +        if (alpha < 0) { +            alpha = 0; +        } else if (alpha > 10) { +            alpha = 10; +        } +        BufferedImage bi = new BufferedImage(imgWidth, imgHeight, BufferedImage.TYPE_4BYTE_ABGR);//Create a new type that supports transparent BufferedImage +        for(int i = 0; i < imgWidth; ++i)//Copy the contents of the original image to the new image, and set the background to transparent +        {
put the brackets on the same same line as for, also note spacing/finals.
for (int i = 0; i < imgWidth; ++i) {
Apply to all below code.
In kumo-core/src/main/java/com/kennycason/kumo/bg/PixelBoundaryBackground.java:
> +        this.collisionRaster = new CollisionRaster(b); +    } + +    /** +     * +     * @param srcImage srcImage will be preprocessed , the method will set the background to be transparent +     * @param alpha  alpha is a transparency +     * @return we will return a bufferedimage object which has been preprocessed +     */ +    //CS304 Issue link: https://github.com/kennycason/kumo/issues/81 +    private BufferedImage preprocess(BufferedImage srcImage,int alpha) { +        int imgHeight = srcImage.getHeight();//取得图片的长和宽 +        int imgWidth = srcImage.getWidth(); +        int c = srcImage.getRGB(3, 3); +        //防止越位 +        if (alpha < 0) {
I feel we should set alpha value between [0.0, 1.0], and if the users sets it over < 0.0 or > 1.0, throw an exception since it's bad input. Then later you can more easily do: rgb = ((alpha * 255).toInt() << 24) | (rgb & 0x00ffffff); below.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.


remove/refactor examples to match v0.1.0 UX

in V0.1.0, a lot of the UX around deployment and using those deployments has changed. We need to go through ALL examples and either delete or refactor

This is a duplicate


Ability to customize number of recent projects on taskbar / dock

It would be great to have the ability to customize a number of recent files available on right-click on doc icon, which is currently limited by 10 items only.

I would like to make this dependent on the macOS setting for this purpose and not introduce a setting in VSCode that we could not easily enforce anyway:

If someone has a suggestion how to get at this setting via Electron APIs, feel free to comment here 👍
I think the following API is a good place to start: https://github.com/electron/electron/blob/17-x-y/docs/api/system-preferences.md#systempreferencesgetuserdefaulttype-extends-keyof-userdefaulttypeskey-type-macos

That can be a good solution!

May I ask what the conclusion is? Is it can't be done?


Feed URL
https://simonwillison.net/atom/everything/
More Info
No response

fixed in https://github.com/murtuzaalisurti/rssed/commit/3c62d126f89df0458d771b6257233bbbe1296d2e


Update README to reflect tutorials, videos, and guided demos

We currently say "coming soon", but we now have all of that material

The readme also needs the doc generation portion of the manual release steps updated to reflect the new comand used in the github workflow


Please add support for pytorch 1.0.0 and msgpack-numpy <IP_ADDRESS>

I used msgpack-numpy==<IP_ADDRESS>, but the code goes wrong when store and load preprocessed file.
I used pytorch==1.0.0, but it goes wrong when starting training.
So I have to downgrade to msgpack-numpy==<IP_ADDRESS> and pytorch==0.4.1, and they worked!
I would be very grateful if you could add support for the higher version, thanks~

Good suggestion. We will possibly do that in the future.

OMG @ssdf93 , thanks for this issue, it solved all my problems. @zcgzcgzcg1 , you really should specify the exact packages to use on the README or (and it would be the best solution) write a requirement.txt.


The documentation lists a reference to 'PSO Cloud Build project', where is it?

I looked around the GCP and searched github but couldn't find it.  Does it exist under another name?

Can you please link where in the documentation this is referenced?

We have a couple references to pso-kokoro-resources GCP project where we run our Cloud Build tests and host some test images. It is not accessible by the public. You should be able to run tests locally with pytest or nox if needed.


deps: bump aws sdk

Sure, but any particular reason?

Sure, but any particular reason?

I'm hitting "KeyNotFound" when restoring encryption metadata although the key is there ( might be eventual consistency issues ) when restarting perkeep. Bumping AWS SDK was just first shot in the dark to try solving that issue. I'm also thinking about retrying this error code a few times even though it feels weird.


Functional tasks do not have meaningful name

Description
For tasks defined as a function, the console output doesn't really show a meaningful name (because it emits only the first word of the command). Having a way to name tasks in the config (requested before in #410) would solve this issue, as well as for tasks that are not functional, but may have long or confusing commands. For example, npx --no-install eslint --quiet --fix could be shown in console output as simply eslint --quiet --fix if we could provide a custom name.
Steps to reproduce
Here's an example, for this config:
module.exports = {
    "*.{ts,tsx}": [
        "npx --no-install eslint --quiet --fix",
        (filenames) => (filenames.length > 0 ? 'npx --no-install tsc --noEmit' : '')
    ]
}

The console output I currently get:
husky > pre-commit (node v12.12.0)
  ✔ Preparing...
  ❯ Running tasks...
    ❯ Running tasks for *.{ts,tsx}
      ✔ npx --no-install eslint --quiet --fix
      ✔ [Function] npx ...

What I'd like:
husky > pre-commit (node v12.12.0)
  ✔ Preparing...
  ❯ Running tasks...
    ❯ Running tasks for *.{ts,tsx}
      ✔ eslint --quiet --fix
      ✔ [Function] tsc --noEmit ...

Maybe even the ability to get rid of [Function] if specifying a custom name.

Hey,
We did try to create a custom name using placeholders, but the problem was that the function was evaluated multiple times. This was problematic for when the task had side-effects.
Feel free to suggest a good way of generating the name. We have the full command string (including arguments) at that point, but it can be very long depending on how many staged files there are.

This is basically where we generate the name:
https://github.com/okonet/lint-staged/blob/master/lib/makeCmdTasks.js#L46
I guess we could try splitting from the first stage filename, since we know that, instead of the first space.

Sure, let me try putting together a PR for that.
Would it also make sense to strip common package runner commands like yarn/npm/npx and their options from the beginning of the command when generating the name? That would fix the other issue I alluded to.

This has been fixed in 10.2.5 by using the full command string, and truncating it to fit on a single console line.


patch: implement unmarshalling and clean-up of the package

What this PR does
Before this PR:
Messy implementation of the unmarshaling of the patch operations in the tests.
After this PR:
Implement the unmarshaling for the patch operations, set the patchOperation as private and clean-up of the patch package.
Release note

NONE

/hold
This PR includes the commits of https://github.com/kubevirt/kubevirt/pull/12598  which cleans up the PatchOperation around the code. This needs to be merged before this one, otherwise the code doesn't compile

@fossedihelm @EdDev would you mind to take a look to this?

The last thing I'd like to clean-up of the package is the EscapeJSONPointer, but well, this another time :)

/sig code-quality

/unhold


Toggles for cycling through comments

The first down toggle works usually but after that, cycling down comments with those arrow buttons rarely seem to work and the upwards one hasn't worked at all yet.

Fixed!


fix grammar/spelling mistakes in errors.go

Fixes Or Enhances # .
Make sure that you've checked the boxes below before you submit PR:

[ ] Tests exist or have been written that cover this particular change.

Change Details:

Fixing grammatical/spelling mistakes in function/field documentation in errors.go

@go-playground/admins

Should be something like
if no registered translation can be found, it returns the original value

Updated the error message slightly different than this PR.


Wrong Data

I don´t Know why that is but the modules shows me completely wrong Data. For example I have done 6000 Steps a Day and the module only shows 2,1 K
Where is the Problem?

My module no longer shows any steps.. :(
(The author has discontinued support for the module.)

How sad. :(
Please bring it Back amoclash!!!

Did anybody get to the bottom of this?
I find mine is very tempromental, it has worked and then suddenly decides not to.


add elm-search extension

Description
Add an extension called Elm Search, which allows you to search Elm functions and packages by name (using the official package website: https://package.elm-lang.org) (also has a preference to open in https://dark.elm.dmy.fr if the user prefers dark mode), and by type signature, author and module name (all three using https://klaftertief.github.io/elm-search), and then open the result in the browser.
Type of change

New extension

Screencast
https://user-images.githubusercontent.com/39280468/149662163-7b044656-95d0-4f54-815f-5dfbb07a4651.mp4
Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing

Thanks for the clarification @NeoVier 💪
I'm going to accept it and then will my colleague do a final review before it's finally merged.


Add Support for Ubuntu

Please add support and installation instructions for ubuntu

@ashishpatel1992 the installation instructions for Ubuntu is the same as MacOS or Linux once you have pip. I've edited the README accordingly too.

Successfully able to setup after installing package sudo apt-get install libpq-dev
But on registration page it got stuck after filling details.
Just curios to know if it is trying to send email for verification and got stuck?
If yes is there any way I can setup SMTP for sending email?


ci/cd work

Warnings

:warning:
Please include a description of your PR changes.

  Generated by :no_entry_sign: dangerJS against d0c019bdd68395edd74c3c0ce333b98318c00099


MWPW-146796 Add localization to Marketo destination URLs

Add automatic localization to Marketo destination URLs.

Resolves: MWPW-146796
Test URLs:

Before: https://main--milo--adobecom.hlx.page/test/features/blocks/marketo-mcz-short-form-2259?martech=off
After: https://bmarshal-marketo-localized--milo--adobecom.hlx.page/test/features/blocks/marketo-mcz-short-form-2259?martech=off

Bacom URLs:

Before: https://main--bacom--adobecom.hlx.page/fr/drafts/bmarshal/marketo-mcz-production-2277
After: https://main--bacom--adobecom.hlx.page/fr/drafts/bmarshal/marketo-mcz-production-2277?milolibs=bmarshal-marketo-localized

@Brandon32 Unit Test failing

@Blainegunn The tests aren't failing, it's just timing out or something.


Simulator Focus (Feature Request)

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I have read the Contribution Guidelines

Issue Description
Not an issue, but potential feature request.
Is it possible to keep iOS simulator in the background while running snapshot?  I have a build server running fastlane and few other things, but may need to keep focus on something else (like a VM, or Xcode).  Is there a tweak or setting that can be added to keep simulator from taking focus?
Thanks so much for all of the effort in building fastlane.  You guys are awesome.
Complete output when running fastlane, including the stack trace and command used
N/A
Configuration Files
N/A
Environment
N/A
fastlane version (run fastlane -v):
1.97.0
Do you use bundler to execute fastlane (i.e. bundle exec fastlane)?
NO
Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)?
NO

Hey @jeffreyjackson! Thanks for the feature request, this is definitely a cool feature that would be nice to have. We would be happy to review a PR with these changes and can keep discussion going if you would need any help! I am going to close it for now and mark it as a feature request, but let us know if you have some time to bite off this chunk of work and we can reopen the issue for discussion! Thanks! 🐙

As far as I know we're using xcodebuild to launch the simulator and its tests. If there is a way to tell the simulator to launch in the background, let us know 👍

Would putting this key in the Info.plist of simulator.app be acceptable?
<key>LSBackgroundOnly</key>
<string>True</string>

We already have some of those work-arounds to make snapshot work:
https://github.com/fastlane/fastlane/blob/master/snapshot/lib/snapshot/fixes/hardware_keyboard_fix.rb
https://github.com/fastlane/fastlane/blob/master/snapshot/lib/snapshot/fixes/simulator_zoom_fix.rb
We're happy to accept a PR adding a new file, applying the patch, as I think it's really useful 👍

Cool, I'll try to get to it in the next couple days. Unless someone beats me to it!  Thank you!

Cool, thanks @jeffreyjackson 👍

Turns out this flag doesn't do what I originally thought.  Will close this until I can find a different option.  🍻

Cool, thanks @jeffreyjackson for looking into this, keep us up to date :+1: