text:
Problem with GTK#

I have tried but it doesn't show Gl-Viewport on Gtk.Window -
It always hide me.
Example code for Window or Container If I don't know that.
using Gtk;
using OpenGL;

namespace GtkGame{
    class GtkGameWindow : Window
    {
        public bool GLinit;

        public GtkGameWindow() : base(WindowType.Toplevel)
        {
            GLinit = false;
            WidgetEvent += new WidgetEventHandler(GtkInitalizeHanlder);
        }

        private void GtkInitalizeHanlder(object sender, WidgetEventArgs we)
        {
            int width = 0, height = 0;
            GetSizeRequest(out width, out height);
            float aspectRatio = width / height;
            Gl.Viewport(0, 0, width, height);
            Gl.ClearColor(1.0f, 1.0f, 1.0f, 1.0f);
            Gl.Clear(ClearBufferMask.ColorBufferBit);
            Gl.MatrixMode(MatrixMode.Modelview);
            Gl.LoadIdentity();
            Gl.ShadeModel(ShadingModel.Smooth);
            //Matrix4 projection = Matrix4.CreatePerspectiveFieldOfView((float)Math.PI / 4, aspectRatio, 1.0f, 64.0f);
            Gl.MatrixMode(MatrixMode.Projection);

            Gl.ClearDepth(1);
            Gl.Disable(EnableCap.DepthTest);
            Gl.Enable(EnableCap.Texture2d);
            Gl.Enable(EnableCap.Blend);
            Gl.DepthFunc(DepthFunction.Always);
            Gl.Hint(HintTarget.PerspectiveCorrectionHint, HintMode.Nicest);
            //add idle event handler to process rendering whenever and as long as time is availble.
            GLinit = true;
        }
    }
}

But I found example but it is old of OpenTK StackOverFlow
I try replace - But OpenGL Matrix4x4 hasn't static method CreatePerspectiveFieldOfView(). How do I fix for replacement of your OpenGL.net

Use PerspectiveProjectionMatrix, or OrthoProjectionMatrix if you want an orthographic projection. I'm evaluating the introduction of methods like CreatePerspectiveFieldOfView, it seems more intuitive for many users.
You should elaborate more about your GTK# solution. I've never tried that toolkit, even if I always wished to implement it. For example: who creates the device context? I fear that you really should call Gl.BindAPI() before using Gl methods.

Thanks for resolving.. I will fix it

Well, the commit reference above is my first shot on GTK3. It actually does not work, I suspect because there is some misunderstanding about the double buffer (essentially the widget does not swap the buffers. The commit introduce a new sample, and try to create a DrawingArea that creates the GL context, and draw on itself. The GL context and it concurrency is managed correctly, but the buffers are not swapped.
OpenGL.Net is not aware about the windowing system. You need a display handle and a window handle to create a GL context; those handles must be the ones that wglCreateContextAttribs expect to get, and obviously this is platform dependent.
The GTK sample is essentially based on this code, linked to this Question on mono. I had changed the gdk_win32_drawable_get_handle, because it returns always IntPtr.Zero whatever handle I passed to it. Currently I can create a GL context, but I'm not sure if the handles are actually linked to the widget or the window of anything else.

The solution on windows is to pass to DeviceContext.Create the handle returned by CreateWindowW. Indeed the question is: how to get that handle from GTK?

Thanks I will try later..

So now I say that bad support :( So sad because I already tried and it gots error :( 24/25 not working now.
I think I recommend with OpenGL.net because it has default gtk3 it hasn't problem with OpenTKL. Yay
Now I am working. Thanks!

Sorry for that forget to say... I have problem if I call eventhandler why does GLWidgetEventArgs doesn't exist - if i use

glWidget.ContextCreated += new EventHandler.(MyCreatedListener);
private void MyCreatedListener(object sender, GlWidgetEventArgs e)
{
...
}

Shows error syntax 👎
I try to use delegate function
like this

glWidget.ContentCreated += delegate {
...
};

Why does example gtk app not show triangle  :(
I really miss that. :( I wish I understand because I want create my own application for Half-Life :(
I tried example but after compiled shows only white screen????????????

using System;
using Gtk;
using OpenGL.GTK3;
using OpenGL;
namespace HelloTriangle.GTK
{
class ExampleWindow : Window
{
private GlWidget glWidget;
private static float _Angle;
private static readonly float[] _ArrayPosition = new float[] {
0.0f, 0.0f,
0.5f, 1.0f,
1.0f, 0.0f
};
private static readonly float[] _ArrayColor = new float[] {
1.0f, 0.0f, 0.0f,
0.0f, 1.0f, 0.0f,
0.0f, 0.0f, 1.0f
};
    private MemoryLock vertexArrayLock = new MemoryLock(_ArrayPosition);
    private MemoryLock vertexColorLock = new MemoryLock(_ArrayColor);

    public ExampleWindow() : base("Hello Triangle (GTK# 3)")
  {
  	SetDefaultSize(800, 600);
  	SetPosition(WindowPosition.Center);

  	glWidget = new GlWidget();

  	Add(glWidget);

        glWidget.SetSizeRequest(100, 100);

        glWidget.ContextCreated += delegate
        {
            Gl.MatrixMode(MatrixMode.Projection);
            Gl.LoadIdentity();
            Gl.Ortho(0.0, 1.0, 0.0, 1.0, 0.0, 1.0);

            if (glWidget.MultisampleBits > 0)
            {
                Gl.Enable(EnableCap.Multisample);
            }
        };

        glWidget.Render += delegate
        {
            Gl.Viewport(0, 0, glWidget.WidthRequest, glWidget.HeightRequest);
            Gl.Clear(ClearBufferMask.ColorBufferBit);

            Gl.MatrixMode(MatrixMode.Modelview);
            Gl.LoadIdentity();
            Gl.Rotate(_Angle, 0.0f, 0.0f, 1.0f);

            Gl.VertexPointer(2, VertexPointerType.Float, 0, vertexArrayLock.Address);
            Gl.EnableClientState(EnableCap.VertexArray);

            Gl.ColorPointer(3, ColorPointerType.Float, 0, vertexColorLock.Address);
            Gl.EnableClientState(EnableCap.ColorArray);

            Gl.DrawArrays(PrimitiveType.Triangles, 0, 3);
        };

        glWidget.ContextUpdate += delegate
        {
            _Angle = (_Angle + 0.1f) % 45.0f;
        };

        DeleteEvent += delegate { Application.Quit(); };
  	ShowAll();
  }

}
static class Program
{
///
/// Punto di ingresso principale dell'applicazione.
///
[STAThread]
static void Main()
{
Application.Init();
new ExampleWindow();
Application.Run();
}
}
}

And it doesn't work? Or I should use Gl.Shader feature?
Please give me example..... Thanks!

authors: luca-piccioni sourceskyboxer


text:
Client Credentials access token can get everything

I create a client 'test' in the table, then request an access token with the /oauth/access_token endpoint
$response = $this->client->post('/oauth/access_token', [
  'body' => [
    'client_id' => 1,
    'client_secret' => '123456',
    'grant_type' => 'client_credentials',
  ],
]);

With the token I got, I can access everything I want, but I want to restrict it only to the resource of this client,
$response = $this->client->post('/api/1/orders', [
  'headers' => [
    'Authorization' => 'Bearer '.$token,
  ],
  ....
]);

I was expecting when I change the endpoint to '/api/2/orders', it would be denied.
This is the routes.php file
/**
 * OAuth2.0
 */
Route::post('oauth/access_token', function() {
  return Response::json(Authorizer::issueAccessToken());
});

/**
 * API endpoint
 */
Route::post('api/{client_id}/orders', ['before' => 'oauth', function($client_id) {
  // something
}]);

I think I missed something, any suggestions for me?

You have to validate the client in order to check whether it can access an endpoint or not. api/1/orders or api/2/orders contain no intrinsic logic to allow or deny the access.

Oh, is that mean I need to create a client-resource map, and after a token is accepted by the oauth, I check whether the resource like api/1/orders belongs to the client?

No, you just need to check wether the /1/ in the URL matches the client associated with the access token . You can do that by running Authorizer::getResourceOwnerId()

source: gharchive/issue

license: mit

license_type: permissive

license_source: bigquery


text:
🛑 Sunshine Lettering is down

In 9f34932, Sunshine Lettering (https://sunshineletteringpy.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Sunshine Lettering is back up in d56ae3b.

repo: lucasboh/upptime

license: MIT

license_source: github-api


text:
🛑 Sunshine Lettering is down

In a8b8cbe, Sunshine Lettering (https://sunshineletteringpy.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Sunshine Lettering is back up in 1f973fa.


text:
fix typos in README

There was a typo in the README.

Thanks! Also, feel free to add material to the README that you think would be helpful

Codecov Report

Merging #2 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #2   +/-   ##
=======================================
  Coverage   72.31%   72.31%
=======================================
  Files           2        2
  Lines         437      437
=======================================
  Hits          316      316
  Misses        121      121

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 75cc67e...d4c01b2. Read the comment docs.

source: gharchive/pull-request

authors: codecov-io joshrule lucasem

repo: lucasem/polytype-rs


text:
When TabView is present, tab items are displayed over the bottom sheet

Describe the bug
When TabView is a parent of the view containing bottom sheet, tab items are displayed over the bottom sheet.
Minimal reproduce-able code
Use this preview code in BottomSheetTests project:
struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        @State var selectedTab = 0
        TabView(selection: $selectedTab) {
            ContentView()
                .tabItem {
                    Image(systemName: "person")
                    Text("Profile")
                }.tag(0)
        }
    }
}

Expected behavior
Bottom sheet should be always displayed on top of all the UI elements.
Screenshots

Target version

Environment: iOS 15+
Version: 3.1.1

Hello @uliashkevich, @SpectralDragon, this is expected behaviour; if you want to display it above the TabView, you will have to move it up in the SwiftUI View Hierarchy see #60.

authors: lucaszischka uliashkevich

repo: lucaszischka/BottomSheet


text:
🛑 Higyrus-prod is down

In 4910571, Higyrus-prod (https://client.nasini.com.ar) was down:

HTTP code: 504
Response time: 10075 ms

Resolved: Higyrus-prod is back up in 55e341f.

repo: luciano-buono/upptime


text:
show license info on website

It will be more clear and descriptive to show lucide package license on website.

@mittalyashu good idea!

authors: ericfennis mittalyashu

repo: lucide-icons/lucide

license: ISC


text:
How did you train this?

Usually AIs train towards a tangible and absolute output but this does the complete opposite.
How?

i might not be completely right, still working to truly understand the inner workings--  but to my understanding it uses two pre-trained models, bigGAN and CLIP. CLIP has been trained to associate text and images, and bigGAN is trained to generate images. Putting them together you get:
text -> CLIP -> text encoding which associates to an image that fits the text well -> bigGAN, which attempts to make a "realistic" image from the encoding from CLIP.
probably someone else could explain better, but that's my understanding from an abstract level

authors: KCGD xnghu

repo: lucidrains/big-sleep


text:
🛑 Bitwarden is down

In 049c1df, Bitwarden (https://bitwarden.kerl.io) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Bitwarden is back up in d204c86 after 4 minutes.

repo: lucienkerl/status


text:
🛑 Nextcloud is down

In ce31b76, Nextcloud (https://nextcloud.kerl.io) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Nextcloud is back up in e9f83f9 after 4 minutes.


text:
Multiple perm adding

I am unable to find a local file for adding bulk perms in 1 go. with cmi for an example i have to add 17 individual perms just for access to armor stand editing. Is there a way the web editor can allow for pasting in multiple perms in one go. or can someone tell me the location of the file so i can do it there to save some time? Thanks alot.

Currently the web editor does not allow for bulk adding. It will be added in the next version.
Also the default storage type is not editable (assuming you haven't changed it). If you want the ability to copy/paste bulk permissions then you may need to consider changing it to YAML. Be sure to follow this guide if that is what you want to do. Be aware that editable database types are generally not recommended.
Another thing - remember that wildcard and regex permissions are possible, so if your CMI permissions follow a similar pattern, you could just add one permission that covers them all (e.g: cmi.armorstand.*).

Also, requests for the web editor should be made on the right repository, which in this case is lucko/LuckPermsWeb or for the future update Turbotailz/LuckPermsWeb

authors: Andre601 Arkkanus Turbotailz

repo: lucko/LuckPerms


text:
Extra placeholder suggestion

Description
Hi is it possible to introduce a papi that shows all the suffixes and / or prefixes of a user regardless of their priority? for example% luckperms_prefixs% and% luckperms_suffixs%? thanks
Proposed behaviour
I think that adding these two popes does not involve any change in the config level, but only an aspect of utility for the server administrators

Description
Hi is it possible to introduce a papi that shows all the suffixes and / or prefixes of a user regardless of their priority? for example% luckperms_prefixs% and% luckperms_suffixs%? thanks
Proposed behaviour
I think that adding these two popes does not involve any change in the config level, but only an aspect of utility for the server administrators

Download LuckPerms Placeholder extension

Yes but it does not include the placeholders that show all suffixes / prefixes of a user, the existing placeholder is the following: "luckperms_suffix" or "luckperms_prefix" which show the prefix or suffix with the highest priority, I am requesting the placeholder "luckperms_suffix" and "luckperms_prefixs" to show all the prefixes and / or suffixes of a user without considering the priority.

Could you give an example use case? I can't see when this would be useful.

Yes, of course, an example would be the following: if I wanted to add a kind of notes on a user through suffixes, making them all visible to the staff through deluxechat, or if I wanted to assign 4 or 5 prefixes to a user and make them visible in chat all 4 or 5 without having to use tracks. Thanks!

Adding notes would be better achieved using meta (/lp user Luck meta set note "some note") but bear in mind there are restrictions on the length if you are using SQL based storage. A purpose built notes plugin would be a better idea!
I've added a placeholder for you that will return all values for a given key: meta_all
https://github.com/LuckPerms/LuckPermsPlaceholders/commit/8558c6d7c368d811e20a84a6dcf6bc4dfae1e802
Making more than one prefix visible can be best achieved using the meta stacking functionality.

authors: Denis99s DevJoey lucko


text:
Specific permission to add a player in a group

Hi !
I'm wondering if your plugin allows to add a group to a player according to a specific permission.
Case example:

You have the default track "Player", "Moderator", "Admin".
You have several secondary groups "Mayor", "Trader", "Bandit"

As an Admin, we can add anyone in anygroup but we would appreciate if we can delegate some group addition for our Moderators.
That said they'll be able to add any player in group Mayor, Trader and/or Bandit with a permission like "luckperms.user.group.add.Mayor" and "luckperms.user.group.remove.Bandit"
Thank for the good work :+1:

That page may help you: https://github.com/lucko/LuckPerms/wiki/Argument-based-command-permissions

Well, indeed that's what I'm looking for, yet it's not sufficient.
Giving the permission [base command permission].modify.others will allow "Moderator" to grant any group of any player. We really want to segregate action on groups (add/remove).
In fact we would like to allow them to add/remove group Mayor but only remove the Bandit one.
Is there any permission node to manage a group specifically such as luckperms.group.modeartor.info instead of luckperms.group.info ?

Yes, it's covered in the last section.
https://github.com/lucko/LuckPerms/wiki/Argument-based-command-permissions#checks-when-a-player-makes-changes-with-a-set-of-specific-arguments

Ok nice, thank you for your reactivity. That's really appreciated.
Looking forward to migrate zPermissions into Luckperms ;)

I have an issue can we resolve it in discord? Thanos#4755


text:
Consider an even newer name for task_name

Ref: https://github.com/luckyframework/lucky/issues/1834
In https://github.com/luckyframework/lucky_task/pull/19 I deprecated name because that's a fairly common arg that people might use. I called it task_name thinking people would be less likely to use it. However, it turns out that Lucky uses it for the task that generates new tasks... :man_facepalming:
lucky gen.task --task-name=new_task
Now, of course, I could use name here; however, there's still task-summary that's an arg, and I can't use summary for the same reason I couldn't use name before. I could also deprecate summary for task_summary here, but how bad is that?

After some Discord discussions, it might be better to move these methods to the class level. There's really no reason for them to be instance methods anyway since the name of your task and the summary don't change between new instances. This will be a breaking change, but should take the burden of name collisions away.


text:
Using SDK Version variables from root project

Instead of assuming the compileSdkVersion, targetSdkVersion, etc, read it from the root project.
Default compileSdkVersion and targetSdkVersion to the latest versions.
Android Target API Level 26 will be required in August 2018.
https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html
And the React Native team is already working on this:
facebook/react-native#17741
facebook/react-native#18095

Can we merge this in please? @pedro
This is pretty urgent since it solves problems with RN >=0.56 when compiling apps using this package.
Thank you very much!

@DusanDimitric, only @pedro has permission to merge PRs and I do not think he is maintaining this project any more.  See Issue #269.  I hope he is okay.  I ended up forking this repo and making the changes myself.

hey folks! I'm so sorry for totally dropping the ball here, I'll definitely review this and other pending things and ship a new release this week 👌

Awesome man, thanks! This is an important package for a lot of people - 23,633 dls/week ATM :)

@pedro thx Pedro, we're also share the same issue for our app and need your click of a button too :)

@pedro any updates on this?

authors: DusanDimitric lkknguyen okrand pedro rayronvictor taranda

repo: luggit/react-native-config


text:
Fix flavor matching in dotenv.gradle

getCurrentFlavor is returning flavor in lower case but loadDotEnv just compare flavor with the key in envConfigFiles directly
Example:
If the flavor named as tempRelease, getCurrentFlavor will return temprelease and the comparison will be failed

@booker-dragon do you have any problem reading from .env?
For example, when using multiple flavors I can read from staging and production
project.ext.envConfigFiles = [
development: ".env",
production: ".env.production",
staging: ".env.staging",
]
But when runing in development flavor, it doesnt read from .env

authors: booker-dragon mushinz


text:
Would it be possible to make it Python3 compatible ?

no py3 wheel on http://www.lfd.uci.edu/~gohlke/pythonlibs/#milk

Yes, a python 3 compatible release has not been made. I guess I can take care of it, though.

authors: luispedro stonebig

repo: luispedro/milk


text:
🛑 lnh is down

In 196b783, lnh (https://lnh.ge) was down:

HTTP code: 530
Response time: 550 ms

Resolved: lnh is back up in 726cc8f after 6 minutes.


text:
Configuration option to remove the "Interface"-tab

Is your feature request related to a problem? Please describe.
In my scenario I'd like the editors to only use the downloads block for selecting (and sorting) a bunch of files to generate a simple download list inbetween other content blocks – no filters, no search, no nothing.
Right now I can't get rid of the interface tab and the search option which causes confusion as the result in the frontend should be a simple list of downloads without any interface/interaction.
Solution you'd like
A configuration option that would allow to remove the "Interface"-tab would be great.
return [
  'lukasbestle.downloads' => [
    'path' => 'downloads',
    'fields' => null,
    'paginate' => null,
    'template' => null,
    'interface' => false,
  ]
];

I've implemented a new search option. If both fields and search are disabled, the Interface tab is hidden automatically.

authors: lukasbestle twiro

repo: lukasbestle/kirby-downloads


text:
chore: simpler and more compatible package configuration

Closing: 00
Tasks:

[ ] issue connected
[x] summary
[ ] self review

Summary:
We don't need too complicated npmignore. Only need to be in package.json set the file to be published to files. Then, for better compatibility, we will set exports. You can see 👉 publish-esm-and-cjs.

Done. Implemented, thank you.

authors: lukasborawski markthree

repo: lukasborawski/vue-use-state-effect


text:
V2

I tried to port the code to comply with Astronomy v2.
What do you think? Maybe it helps somebody to upgrade Astronomy? Until the new version is done, or as simple alternative.
Note: currently the relations are always refetched from the database.

Hi, thanks for your work. I will test it after the weekend. From what I remember there was some problem with the original relations package. I think it was about caching but you said that in your solution relations are always refetched so it should work. I will let you know after I test your code.

Thank you for your effort.

@cryptic23dj1 sorry that it took me so long to take a look at the code but I was pretty busy. I've played with the code, found some places for improvements and fixed them. So far, I have a working version of the relations module here https://github.com/lukejagodzinski/meteor-astronomy-relations/tree/cryptic23dj1-v2
It's not perfect and probably does not cover all the cases. But it would be great if you could test it. There has been one change to API from v1. Instead of providing class name, you have to provide an actual class function in the "class" property:
{
  fields: {
    /* ... */
    postsIds: {
      type: [String],
      default: () => []
    }
  },
  relations: {
    posts: {
      type: "many",
      class: Post, // It's not class name but an actual class.
      local: "postsIds",
      foreign: "_id"
    }
  }
}

Awesome work!
I will test it and I will let you know if I make a noticeable finding

This time I want to apologize for the latency.
I have run some tests and I think your code looks great.
The only thing I noticed is that due to the API change you need to extend a class-model after class-creation for relations refering the same class. But that shouldn't be a big problem.
`  const Reference = Class.create({
name: 'Reference',
collection: new Mongo.Collection(null),
secured: false,
fields: {
ref: {
type: String,
default: ""
}
}
});
Reference.extend({
relations: {
getRef: {
type: 'one',
class: Reference,
foreign: '_id',
local: 'ref'
}
}
});`


text:
Request: Install from git uri

It would be great if manifests could reference a git repo as a url so that a private repo could be used to install files.

You can: scoop install /a/path/to/app.json works

@rasa What would the root / refer to? I don't understand how your answer relates to git

authors: krokofant rasa

repo: lukesampson/scoop

license: unlicense


text:
docId and sentenceId

added methods to preserve previous api

should we go ahead and merge this?

It looks like I had approved but not pressed the merge button.  Usually I defer to @marcovzla for that, but since he asked...

authors: BeckySharp kwalcock marcovzla

repo: lum-ai/odinson


text:
Reuse the IndexSearcher to keep caching advantages

This allows the Controller to maintain an IndexSearcher (the thing that is making use of the cacheing) and create each ExtractorEngine with it, so the speed-up is maintained in subsequent calls, but each call still gets its own extractorengine
FYI @marcovzla

Thanks, @BeckySharp , for taking the initiative with this!  I had the same idea in mind after a discussion last week.

@myedibleenso I can't take any credit for the idea, @marcovzla shared the idea you guys discussed last week, just had some time

authors: BeckySharp myedibleenso


text:
fix(lightbox): fix body scrollbar flickering when children updates

General summary

Remove children from useEffect dependencies, causing the effect to execute every time the children changes
Split useEffect into two separate effects (one for scroll management and one for focus management)

The dialog should still work as it did
Screenshots

Check list

[ ] (if has style) Add need: review-integration label
[ ] (if has textual documentation) Add need: review-doc label
[x] (if has code) Add need: review-frontend label
[ ] (if has react) Check through the react dev check list
[x] (if fix or feature) Add need: test label

Check out the contribution guide for general guidelines for submissions to the design system.

@GuillaumeNachury Je me permet de te mettre en reviewer puisque j'ai modifié une partie sur laquelle tu avais travaillé.

no flickering noticed but tags are simple text now instead of chips...

no flickering noticed but tags are simple text now instead of chips...

This was a ImageBlock related issue. The demo hadn't been updated.
It is now fixed, but the tag now seem to be behind the overlay.

Was that the case before ?
If not, there might be a css fix to apply @matmkian

https://zpl.io/adX401R

@FlorentDinet Pushed a fix, should be ok now.

excellent

authors: FlorentDinet Mcourt

repo: lumapps/design-system


text:
Visual Studio filter

Add source_group to create .filter for visual studio.
https://cmake.org/cmake/help/v3.4/command/source_group.html
https://stackoverflow.com/questions/33808087/cmake-how-to-create-visual-studio-filters

PR : https://github.com/luminousmining/miner/pull/64
Done

repo: luminousmining/miner


text:
Restructure project into multiple Gradle modules

Problem(s)
The current single module project is large, and cluttered. This creates two problems.

If I want to create an extension, plugin, or tool, I have to rummage through the entire repository to find all of the code related to that feature.

This is partial due to the issues discussed in #176.

If I'm testing a core game feature, I have to compile the entire project (including those pesky kotlin files that have a long compilation time).

Solution
Creating a multi-module Gradle project allows us compile only the required modules, instead of the entire application, when unit testing or manually debugging the server after changes are made. But we can reduce build times even more.
Builds on modules that use sub-modules as dependencies, by default, do so sequentially. We can leverage Gradle to execute builds in parallel, as long as these modules are decoupled, and do not share state.
From Gradle:

Most builds consist of more than one project and some of those projects are usually independent  of one another. Yet Gradle will only run one task at a time by default, regardless of the project  structure.

The Resulting Project Structure
This is just my opinion of the best project structure at this point. The features listed may or may not exist, but are listed to convey how extensible the project can get. Any and all feedback or improvements are welcome.

luna (root-project)

plugins (devs can build content here)
benchmarks
luna-application (and run the application from here)
luna-core
luna-network
luna-plugin-api
luna-plugin-engine
services-vote
services-high_scores
services-web
tools-rsa_generator (run this application if you need a new key pair)

We can address this and #176 after I review your PR

I could see things getting tricky in the implementation here, specifically when reading resources or classes in other modules. For instance, right now the PluginBootstrap, while apart of the core module, uses reflection to load all files from the plugins folder.

This is something I want to tackle sooner rather than later. I like your idea and was thinking of this structure

This is something I want to tackle sooner rather than later. I like your idea and was thinking of this structure for the future (0.5.0 -> 1.0). Plugins are also loaded using ClassLoader now so it fixes that issue you were worried about.

luna (root-project)

luna-cache (Cache I/O)
luna-cache-server (Ondemand)
luna-network (I/O, codecs, connection filtering)
luna-game (World synchronization, entity types, etc.)
luna-utility (Everything in io.luna.util)
luna-app (Run server)
plugin-sdk (Everything in io.luna.game.plugin, Everything in plugins/api)
plugins (Content plugins)

Tools should be shipped separately IMO but that's up for debate

The updates you've made to the structure looks good. After some further thought, there's two caveats that I'd like to address here.

It's best if module names don't have a luna prefix as it's assumed to be included in the project. So the resulting module would be cache instead of luna-cache.

The inclusion of a utility module is a bit of an anti-pattern. I think we could do with moving   those classes closer to their implementations, either as-is within the same package or directly into the classes that are making use of them.

repo: luna-rs/luna


text:
Transition Promise issues

Im having issues with the promises in the start() function of my transition
It appears that the this.newContainerLoading promise is resolving, but if I attempt to access this.newContainer in a function that is called immediately after this.newContainerLoading is resolved, it is undefined.
For example, if I use this code:
Promise.all([
	this.newContainerLoading,
	this.gsapAnim()
])
.then(Promise.all([
	this.fadeOut.bind(this),
	this.preload.bind(this)
]))
.then(this.fadeIn.bind(this))

It doesnt work, because preload() expects this.newContainer to be defined.
But if I do this:
Promise.all([
	this.newContainerLoading,
	this.gsapAnim()
])
.then(this.fadeOut.bind(this))
.then(this.preload.bind(this))
.then(this.fadeIn.bind(this))

It does work, because by the time preload() gets called, this.newContainer is defined.
The issue is, when the this.newContainerLoading promise is resolved, it appears that anything in a  then() that immediately follows it happens TOO EARLY for this.newContainer to be defined.
Therefore Im thinking in your code, wherever you resolve this.newContainerLoading you are assigning this.newContainer AFTER calling resolve()

Hello @matthewjumpsoffbuildings ,
newContainer is defined before resolving the promise, so it's strange that you have this problem.
https://github.com/luruke/barba.js/blob/9f66f8ebc03394a666fbc865c05dde99c2fc4ebf/src/Transition/BaseTransition.js#L63
I'll investigate on it when I have some time

Hmm thats bizzare. Just to confirm, this example:
Promise.all([
	this.newContainerLoading,
	this.gsapAnim()
])
.then(Promise.all([
	this.fadeOut.bind(this),
	this.preload.bind(this)
]))
.then(this.fadeIn.bind(this))

doesnt look obviously wrong to you? both preload() and gsapAnim() return deferred.promise using you Utils.deferred helper.

Hmm ok ive been debugging a bit and it turns out the 2 functions in the second Promise.all() are not even getting called. Im guessing there is an issue with my Promise chain.
And now, when I try this:
this.newContainerLoading
.then(this.preload.bind(this))
.then(this.fadeOut.bind(this))
.then(this.fadeIn.bind(this))

The preload() function does have access to the this.newContainer variable... but it wasnt working before :/
Sorry for all the posts... Im pretty sure now there is something wrong with how Im using the then() and Promise.all()

Ok - turns out I was using Promise.all() wrong. Sorry about that.
I was passing this.fadeOut.bind(this) and this.preload.bind(this) to it - but Promise.all() doesnt want binds, it wants Promises.
Also, then() doesnt want Promises, it wants functions
So, doing this works:
Promise.all([
	this.newContainerLoading,
	this.gsapAnim()
])
.then(() => Promise.all([
	this.fadeOut(),
	this.preload()
]))
.then(this.fadeIn.bind(this))

Interesting @matthewjumpsoffbuildings, I am doing almost the same thing ,but i don't understand something : What your preload() function do ? does it preload newContainer images ??
I would like to preload some images whit imagesLoaded, but i can't succeed. My preloadImages() promise have a statut of "pending" because i put deferred.resolve() in the ImagesLoaded callback.
But i think i am doing wrong, Promise are asynchronous, so maybe i shouldn't use a Promise functon to preload some images. Actually, I want to set up a preloader between pages if there are some images with [data-preload] attributes in the newContainer

authors: luruke matthewjumpsoffbuildings proov


text:
🛑 Client - matrix.luschmar.ch is down

In c3e938b, Client - matrix.luschmar.ch (https://matrix.luschmar.ch/.well-known/matrix/client) was down:

HTTP code: 502
Response time: 3108 ms

Resolved: Client - matrix.luschmar.ch is back up in 9959118 after 25 minutes.

repo: luschmar/upptime


text:
Extend cloud-init ISO builder to include vendor-data and network-config

Current implementation is missing support for vendor-data and network-config.
Vendor data is similar to user-data, but allows a clean separation of cloud-config scripts from infrastructure providers and clients. Network config is basically a netplan config file and is the recommended way to setup networking use-cases different from the default cloud-init behavior (DHCP on the first working interface).

https://cloudinit.readthedocs.io/en/latest/reference/datasources/nocloud.html#file-formats says vendor data is supported, is network config just not documented? if it works np to merge this

welp there it is: https://cloudinit.readthedocs.io/en/latest/reference/datasources/nocloud.html#example-meta-data
it is supported. answered my own question

network-config is how PVE is implementing the various network cloud-init properties on virtual machines like nameservers, searchdomains or ipconfigX for the nocloud datasource.

@jqueuniet I tested the network-config with this iso mechansinm but it doesn't work

I'm sorry to hear that, but I'm not sure an old closed PR is the best place to talk about this. Could you open a new issue and provide a sample non-working ISO file, the network-config string provided, the overall network setup used for PVE and the VM configuration?

I tested it.
Great!
I tested the network-config and it worked ✅
´´´yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
match:
name: en*
dhcp4: 'no'
addresses:
- 10.10.10.17/24
routes:
- to: default
via: 10.10.10.1
nameservers:
addresses:
- 8.8.8.8
- 8.8.4.4
´´´
Thanks

Do you know how to set the hostname via metadata?
As it doesn't work for me!

what did you try? i think you're supposed to use local-hostname in the metadata file but that's just what i've learned from reading docs which might be old

I'm using the fqdn field in vendor-data for that at the moment.
https://cloudinit.readthedocs.io/en/latest/reference/modules.html#set-hostname

Oh, well.
For local-hostname, it works.
For fqdn,
I have to try.

We are building the capi provider for proxmox.
And we are relying on this client.
So, we are supporting it.
Thanks for your help.

lol everyone is working on a capi provider then, there are 2 more already started. keep it up! let's get one good one eventually :)

join us in the slack channel by the way if you want more realtime support: https://gophers.slack.com/archives/C05920LDDD3

good! keep working hard

btw, do you know if we can use bios uuid as a unique identifier for machines accros proxmox nodes?

better to have a thread on in the slack channel if you don't mind, come over there and pose the question and let's start a thread about it

i can't join with that link :)

try this https://gophers.slack.com/archives/C05920LDDD3

mc.benjemaa@gmail.com doesn’t have an account on this workspace.

make one! it's free

authors: jqueuniet luthermonson mcbenjemaa

repo: luthermonson/go-proxmox


text:
Build error (no ) on Ubuntu 18

I'm trying to use this code from an ubuntu 18 embedded ARM64 system, with the default (gcc-7) compilers.  The DepthAI code compiled just fine, but when I attempt to call the code from my own file:
In file included from /home/autoguide/opt/include/depthai/device/CalibrationHandler.hpp:9:0,
                 from /home/autoguide/opt/include/depthai/depthai.hpp:9,
                 from /home/autoguide/perception-sim/oakd/OakDModule.cpp:1:
/home/autoguide/opt/include/depthai/utility/Path.hpp:3:14: fatal error: filesystem: No such file or directory

I cannot figure out how to avoid this message.  I am using Cmake, and doing find_package(depthai CONFIG) so I should be pulling the correct configuration.
The problem goes away if I upgrade to gcc-9, but that interferes with other parts of my build (namely CUDA, which cannot abide a different compiler).
I'm guessing there's a missing define or something that causes my build to choke on the missing file where the hunter build does not, but looking at the code I don't see how; it seems to switch only on compiler version, which should have been the same.  I can manually edit the Path.hpp code, but that seems unsatisfactory.

Sorry about the trouble.  I'm not familiar enough with the build system to provide meaningful advice.  So I'm asking the team for help on this one. Thanks for using OAK!

Hi @nathanieltagg
Thanks for the report. Seems like GCC-7, while supporting C++17 standard, does NOT yet implement the filesystem fully. Its still under experimental/filesystem.
I'll recheck if there is a means of adding a conditional there for C++17 & filesystem support

Addressed in #533

authors: Luxonis-Brandon nathanieltagg themarpe

repo: luxonis/depthai-core


text:
🛑 BrandTag Staging is down

In 2460eb1, BrandTag Staging (https://app.staging.brandtag.io) was down:

HTTP code: 0
Response time: 0 ms

Resolved: BrandTag Staging is back up in 7bfe5d1.

repo: luxtagofficial/upptime


text:
Eduke32 for Duke Nukem 3D: 20th Anniversary World Tour

Project Link
https://voidpoint.io/terminx/eduke32
Project License
https://voidpoint.io/terminx/eduke32/-/blob/master/source/duke3d/gpl-2.0.txt
Steam App Ids
https://store.steampowered.com/app/434050/Duke_Nukem_3D_20th_Anniversary_World_Tour/
Additional Context
Hello d10sfan!
Duke Nukem 3D: Megaton Edition is no longer available for purchase on Steam. Instead, I have the 20th anniversary edition and I play eduke32 on archlinux outside of steam without problems using the GRP it provides. Can you include eduke32 among the available engines for this edition in luxtorpeda?
Thank you!!

@cyberconan Thanks for the issue, I've added it in https://github.com/luxtorpeda-dev/packages/commit/6e0a45bf98fbf81eb244e75418ba216b362f4889
Let me know if you run into any issues.

Hi d10sfan, the eduke32 version than use luxtorpeda is from 2019, is almost compatible with 20th edition but have some issues and chapters can't be selected, only individual maps.

Latest Eduke32 versions works perfect. Thanks!!

@cyberconan The commit that is in use is from 7 months ago. Are you saying that the most recent master branch (https://voidpoint.io/terminx/eduke32) works better?

@cyberconan I updated eduke32 to the latest master, is it working for you now?

I have found the problem. Eduke32 don't need GAME.CON and USER.CON files and those files generate the issue.
https://wiki.eduke32.com/wiki/Installation_and_configuration
A dirty trick is rename those files and now Eduke32 runs well and shows the Duke Nukem chapters.
Regards!!

@cyberconan Thanks for the help! I've fixed this in https://github.com/luxtorpeda-dev/packages/commit/1bc1623f96d77288d6653902f969f32f908801fe
It should work next time you launch the game. Let me know if that works for you as well.

repo: luxtorpeda-dev/packages

license: Zlib


text:
手机写博客啦，真好！

https://lweigithub.github.io/2018/09/30/create-post-by-ios/
##手机写博客APP名字叫CodeHub也是GitHub上的一个工程文本编辑器略难用。。。其他在测试

手机回复还成 写md真心难受

是时候整一个MD模板生成tool了


text:
error: Get http://unix.socket/1.0/containers?recursion=1

Hello,
I'm experimenting a bit with lxd and I have to say that it is really promising, so first of all congrats to all people involved in its development!
Today I did an apt-get upgrade; during the process it hanged forever while configuring lxd.conf and since then I cannot use my lxd infrastructure anymore.
I also tried to remove lxd and reinstall it.
$ lxc version
2.0.0.beta2
$ sudo service lxd start
start: Job is already running: lxd
$ sudo lxc list
error: Get http://unix.socket/1.0/containers?recursion=1: dial unix /var/lib/lxd/unix.socket: connect: no such file or directory
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04.3 LTS
Release:        14.04
Codename:       trusty

Please, let me know if you need logs or other.
thanks
rob

# tail /var/log/upstart/lxd.log
error: LXD still not running after 600s timeout.
WARN[02-12|10:13:01] CGroup memory swap accounting is disabled, swap limits will be ignored.
error: no such column: creation_date
error: LXD still not running after 600s timeout.

Ok, I saw this issue in the lxd-users mailing list yesterday, I'll have a look at it.

uhmm...
that above was an old message. I tried to do:
sudo sqlite3 /var/lib/lxd/lxd.db "ALTER TABLE containers ADD COLUMN creation_date DATETIME NOT NULL DEFAULT 0;"
but then
sudo tail /var/log/upstart/lxd.log

WARN[02-12|16:04:06] CGroup memory swap accounting is disabled, swap limits will be ignored.
error: duplicate column name: creation_date

damn! :)

You're the second person reporting a problem with that particular DB update, I'm really not sure what's going on...
As for your second error, the following should fix it:
sudo sqlite3 /var/lib/lxd.db 'INSERT INTO schema (version, updated_at) VALUES (22, strftime("%s"));'

Yep!
It is working now, of course the correct path of the db is:
/var/lib/lxd/lxd.db
Thanks and keep up the great work! :)

And that particular bug has now been fixed upstream and uploaded to Ubuntu, closing this issue.

authors: robcarGIT stgraber

repo: lxc/lxd


text:
Add support for the PATCH method

Right now the LXD API only supports GET, POST, PUT and DELETE. It would be very beneficial to support PATCH for all endpoints which support PUT today.

Someone willing to work on this should look at all existing Put actions in the API and for each of them define a new matching Patch action which when called will cause LXD to get the current state of the resource (similar to a GET), apply the changes sent by the client and then call the same code as a Put.


text:
Inconsistent support of CLI flag --format

Required information

Distribution: Ubuntu
Distribution version: 19.04
The output of "lxc info" or if that fails:

Kernel version: 5.0.0-21-generic
LXC version: 3.15
LXD version: 3.15
Storage backend in use: zfs

Issue description
LXD inconsistently offers the --format flag amongst its CLI commands. It's convenient to use the flag to use when checking lxc programatically (without using the API directly).
The commands that support --format

lxc list
lxc image list
lxc network list
lxc profile list
lxc remote list

The commands that don't support --format

lxc alias list
lxc cluster list
lxc project list
lxc snapshot list
lxc storage list

Steps to reproduce
$ lxc storage list --format json
Error: unknown flag: --format

Yep, it's something I've been meaning to sort out for a while, ideally we'd move them all to a shared set of functions to handle the various outputs.
I may take a look at it next week, see if we can't sort that out in time for 3.16.

I'm on LXD 4.2 installed from snap and I still see this issue. Is it normal?

I've just checked and all our list commands with the exception of config device list (which doesn't have a list structure to dump in the first place) all support --format.

sorry, my fault, you can safely ignore my previous comment.

authors: AdamIsrael lucrus73 stgraber


text:
changing running vm config won't work and won't persist reboot

Required information

Distribution: Ubuntu
Distribution version: 18.04.5
The output of "lxc info":
config:
core.https_address: '[::]:8443'
core.trust_password: true
api_extensions:

storage_zfs_remove_snapshots
container_host_shutdown_timeout
container_stop_priority
container_syscall_filtering
auth_pki
container_last_used_at
etag
patch
usb_devices
https_allowed_credentials
image_compression_algorithm
directory_manipulation
container_cpu_time
storage_zfs_use_refquota
storage_lvm_mount_options
network
profile_usedby
container_push
container_exec_recording
certificate_update
container_exec_signal_handling
gpu_devices
container_image_properties
migration_progress
id_map
network_firewall_filtering
network_routes
storage
file_delete
file_append
network_dhcp_expiry
storage_lvm_vg_rename
storage_lvm_thinpool_rename
network_vlan
image_create_aliases
container_stateless_copy
container_only_migration
storage_zfs_clone_copy
unix_device_rename
storage_lvm_use_thinpool
storage_rsync_bwlimit
network_vxlan_interface
storage_btrfs_mount_options
entity_description
image_force_refresh
storage_lvm_lv_resizing
id_map_base
file_symlinks
container_push_target
network_vlan_physical
storage_images_delete
container_edit_metadata
container_snapshot_stateful_migration
storage_driver_ceph
storage_ceph_user_name
resource_limits
storage_volatile_initial_source
storage_ceph_force_osd_reuse
storage_block_filesystem_btrfs
resources
kernel_limits
storage_api_volume_rename
macaroon_authentication
network_sriov
console
restrict_devlxd
migration_pre_copy
infiniband
maas_network
devlxd_events
proxy
network_dhcp_gateway
file_get_symlink
network_leases
unix_device_hotplug
storage_api_local_volume_handling
operation_description
clustering
event_lifecycle
storage_api_remote_volume_handling
nvidia_runtime
container_mount_propagation
container_backup
devlxd_images
container_local_cross_pool_handling
proxy_unix
proxy_udp
clustering_join
proxy_tcp_udp_multi_port_handling
network_state
proxy_unix_dac_properties
container_protection_delete
unix_priv_drop
pprof_http
proxy_haproxy_protocol
network_hwaddr
proxy_nat
network_nat_order
container_full
candid_authentication
backup_compression
candid_config
nvidia_runtime_config
storage_api_volume_snapshots
storage_unmapped
projects
candid_config_key
network_vxlan_ttl
container_incremental_copy
usb_optional_vendorid
snapshot_scheduling
container_copy_project
clustering_server_address
clustering_image_replication
container_protection_shift
snapshot_expiry
container_backup_override_pool
snapshot_expiry_creation
network_leases_location
resources_cpu_socket
resources_gpu
resources_numa
kernel_features
id_map_current
event_location
storage_api_remote_volume_snapshots
network_nat_address
container_nic_routes
rbac
cluster_internal_copy
seccomp_notify
lxc_features
container_nic_ipvlan
network_vlan_sriov
storage_cephfs
container_nic_ipfilter
resources_v2
container_exec_user_group_cwd
container_syscall_intercept
container_disk_shift
storage_shifted
resources_infiniband
daemon_storage
instances
image_types
resources_disk_sata
clustering_roles
images_expiry
resources_network_firmware
backup_compression_algorithm
ceph_data_pool_name
container_syscall_intercept_mount
compression_squashfs
container_raw_mount
container_nic_routed
container_syscall_intercept_mount_fuse
container_disk_ceph
virtual-machines
image_profiles
clustering_architecture
resources_disk_id
storage_lvm_stripes
vm_boot_priority
unix_hotplug_devices
api_filtering
instance_nic_network
clustering_sizing
firewall_driver
projects_limits
container_syscall_intercept_hugetlbfs
limits_hugepages
container_nic_routed_gateway
projects_restrictions
custom_volume_snapshot_expiry
volume_snapshot_scheduling
trust_ca_certificates
snapshot_disk_usage
clustering_edit_roles
container_nic_routed_host_address
container_nic_ipvlan_gateway
resources_usb_pci
resources_cpu_threads_numa
resources_cpu_core_die
api_os
container_nic_routed_host_table
container_nic_ipvlan_host_table
container_nic_ipvlan_mode
resources_system
images_push_relay
network_dns_search
container_nic_routed_limits
instance_nic_bridged_vlan
network_state_bond_bridge
usedby_consistency
custom_block_volumes
clustering_failure_domains
resources_gpu_mdev
console_vga_type
projects_limits_disk
network_type_macvlan
network_type_sriov
container_syscall_intercept_bpf_devices
network_type_ovn
api_status: stable
api_version: "1.0"
auth: trusted
public: false
auth_methods:
tls
environment:
addresses:

192.168.1.1:8443
10.119.221.1:8443
'[fd42:37c0:474c:12e2::1]:8443'
architectures:
x86_64
i686
certificate: |
-----BEGIN CERTIFICATE-----
....
-----END CERTIFICATE-----
certificate_fingerprint: 403a6265740bc000653c9f9ffba6650542234291d8ab36830419278f529dfff9
driver: lxc
driver_version: 4.0.4
firewall: xtables
kernel: Linux
kernel_architecture: x86_64
kernel_features:
netnsid_getifaddrs: "false"
seccomp_listener: "false"
seccomp_listener_continue: "false"
shiftfs: "false"
uevent_injection: "false"
unpriv_fscaps: "true"
kernel_version: 4.15.0-112-generic
lxc_features:
cgroup2: "true"
devpts_fd: "false"
mount_injection_file: "true"
network_gateway_device_route: "true"
network_ipvlan: "true"
network_l2proxy: "true"
network_phys_macvlan_mtu: "true"
network_veth_router: "true"
pidfd: "true"
seccomp_allow_deny_syntax: "true"
seccomp_notify: "true"
seccomp_proxy_send_notify_fd: "false"
os_name: Ubuntu
os_version: "18.04"
project: default
server: lxd
server_clustered: false
server_name: lxd01
server_pid: 22250
server_version: "4.6"
storage: dir
storage_version: "1"

Issue description
Changing a running VM network device won't take effect. It does not display any error (actually, if the device is templated and I override its config, it shows success), but nothing changes at all.
Not being able to add a device is ok for a VM, but not having the ability to change its network is not, IMO.
I was able to change the VM network with 'ip link set master lxdbr1 dev tap...', but I cannot change the vm config, so it will be back to lxdbr0 after reboot. Only way I could find to persist this was to change the profile, which is not desirable.
I don't know if there is any limitation for changing the nictype of a runing VM from bridge to macvlan (I think there must be, because it might remove the 'tun' device and add a 'macvlan', which for a container is fine, but a VM might not recognize), but changing a bridge to another should be trivial.
Steps to reproduce

lxc network create lxdbr1
lxc launch ubuntu myvm --vm
lxc config device override myvm eth0 network=lxdbr1
lxc config device get myvm eth0 network

So for it to work:

nicname=$(lxc config get myvm volatile.eth0.host_name)
ip link set master lxdbr1 dev $nicname
lxc profile device set default eth0 network=lxdbr1
lxc exec myvm -- netplan apply

I believe @tomponline fixed this issue this morning by making it properly fail now.
Live config updates for VMs are currently limited to shrinking memory or setting user config keys, everything else must be done with the VM offline. We intend to improve this in the near future, especially around networking, but it is currently not supported.

https://github.com/lxc/lxd/pull/7955

authors: markkrj stgraber tomponline


text:
lxd/storage/drivers/zfs: Fix optimized refresh in migration

Signed-off-by: Thomas Hipp thomas.hipp@canonical.com

jenkins: test this please

Testsuite passed

@tomponline can you give this one a review?

authors: lxc-jenkins monstermunchkin stgraber


text:
NIC: Bridged device fix openvswitch port leak

Stopping an instance was not detaching the bridged NIC device from the openvswitch bridge, causing port leaks such as:
sudo ovs-vsctl show
84593e35-9a66-45ba-b647-929e396b3a59
    Bridge lxdbr1
        Port lxdbr1
            Interface lxdbr1
                type: internal
        Port veth1d5cd6a9
            Interface veth1d5cd6a9
                error: "could not open network device veth1d5cd6a9 (No such device)"

Also includes some other comment/code clarity improvements.

jenkins: test this please


text:
test/suites: Fix cephfs backup tests

This disables cephfs testing if the backend support optimized backups.
Signed-off-by: Thomas Hipp thomas.hipp@canonical.com

Should this just check for lxd_backend == ceph (as I understand it the cephfs checks are overlaid as part of the ceph checjs)?

Should this just check for lxd_backend == ceph (as I understand it the cephfs checks are overlaid as part of the ceph checjs)?

We could do that. However, the actual issue here is that cephfs and optimized storage don't play well in the test.

Should this just check for lxd_backend == ceph (as I understand it the cephfs checks are overlaid as part of the ceph checjs)?

We could do that. However, the actual issue here is that cephfs and optimized storage don't play well in the test.

Shouldn't that issue be fixed then? Otherwise we are not testing it?

Should this just check for lxd_backend == ceph (as I understand it the cephfs checks are overlaid as part of the ceph checjs)?

We could do that. However, the actual issue here is that cephfs and optimized storage don't play well in the test.

Shouldn't that issue be fixed then? Otherwise we are not testing it?

There's nothing to be fixed here. If the test is running with an optimized storage driver (btrfs or zfs), a cephfs storage pool and volume should just not be created as that screws up the entire test due to ${pool} being overridden.

Should this just check for lxd_backend == ceph (as I understand it the cephfs checks are overlaid as part of the ceph checjs)?

We could do that. However, the actual issue here is that cephfs and optimized storage don't play well in the test.

Shouldn't that issue be fixed then? Otherwise we are not testing it?

There's nothing to be fixed here. If the test is running with an optimized storage driver (btrfs or zfs), a cephfs storage pool and volume should just not be created as that screws up the entire test due to ${pool} being overridden.

OK, but why are the cephfs tests even running when the storage driver being tested isn't ceph?
Basically I don't yet understand why you went for excluding explicitly btrfs/zfs rather than targetting only ceph?

OK, but why are the cephfs tests even running when the storage driver being tested isn't ceph?

That is a very good question to which I don't know the answer ;)

Basically I don't yet understand why you went for excluding explicitly btrfs/zfs rather than targetting only ceph?

So, the issue you pointed out was caused by LXD_CEPH_CEPHFS being set when running the test with btrfs. If the storage backend support optimized backups that will be tested. Now, as LXD_CEPH_CEPHFS was set as well, the ${pool} value was overriden, now pointing to a cephfs pool instead of a btrfs pool, and optimized backups would not be possible anymore.
What I've done in this PR is fix the path being taken. It won't perform any optimized tests of LXD_CEPH_CEPHFS is set. In theory, the tests should succeed if the backend is dir, lvm, or ceph.

@tomponline I've changed the test to check for ceph.

OK, but why are the cephfs tests even running when the storage driver being tested isn't ceph?

That is a very good question to which I don't know the answer ;)

Basically I don't yet understand why you went for excluding explicitly btrfs/zfs rather than targetting only ceph?

So, the issue you pointed out was caused by LXD_CEPH_CEPHFS being set when running the test with btrfs. If the storage backend support optimized backups that will be tested. Now, as LXD_CEPH_CEPHFS was set as well, the ${pool} value was overriden, now pointing to a cephfs pool instead of a btrfs pool, and optimized backups would not be possible anymore.
What I've done in this PR is fix the path being taken. It won't perform any optimized tests of LXD_CEPH_CEPHFS is set. In theory, the tests should succeed if the backend is dir, lvm, or ceph.

OK so I've looked into this more closely.
If you look at a passing ceph test https://jenkins.linuxcontainers.org/job/lxd-github-pull-test/4783/arch=amd64,backend=ceph,compiler=golang-1.16/consoleFull#console-section-115
You can see that its actually now testing only cephfs:
...
pool=lxdtest-7Sa-cephfs
...
lxc storage volume create lxdtest-7Sa-cephfs testvol --verbose
...

So this commit https://github.com/lxc/lxd/commit/5a8e33271f4dcbbee180de53299065292b41189d#diff-34f09c33c15b1579d3862c8d2f6fe8d90b0fd08d03a7341d7fd4bc563cb68bbe effectively silently disabled the ceph custom volume export tests.
I'm also confused why we create a cephfs storage pool but don't delete it (but that is a separate question to the issue at hand):
https://github.com/lxc/lxd/commit/5a8e33271f4dcbbee180de53299065292b41189d#diff-34f09c33c15b1579d3862c8d2f6fe8d90b0fd08d03a7341d7fd4bc563cb68bbeR681
Back to the main issue then:
It feels to me like we need to call test_backup_volume_export_with_project (with and without project) twice when lxd_backend=ceph, once for ceph and then once for cephfs (if available).
And in the latter scenario we'd still create the instances on the ceph storage pool (that is already created for us), but we would then create a cephfs pool for the custom volumes.
In order to do this we would need a way for the test_backup_volume_export_with_project test to know which pool to use for custom volumes (which may be different from the pool use for the instance in the profile).
I suggest adding a 2nd argument to test_backup_volume_export_with_project called something like customVolPool and if thats empty/not supplied then the tests will set customVolPool to the same as the pool variable. Then update all the custom volumes to use customVolPool instead of pool.
Finally detect if cephfs is available and call test_backup_volume_export_with_project passing in the name of a custom pool that has been setup.

Oh actually, the reason I suggested using a different var name than pool, was because you still want the ceph pool (i.e pool="lxdtest-$(basename "${LXD_DIR}")") used for the profile's root disk otherwise you won't be able to create an instance (cephfs doesn't support instances).

I see. That would bite us if project != default.

jenkins: test this please

@monstermunchkin this is breaking tests, needs fixing.

authors: monstermunchkin stgraber tomponline


text:
VM: Check lxd-agent is running (via QEMU status ringbuffer) before attempting to connect

Also ensure if lxd-agent is stopped inside the VM that the STOPPED status is written to the ringbuffer before lxd-agent exits.
This is a workaround to an issue we believe was introduced with https://github.com/lxc/lxd/pull/9869 from @mdlayher as the vsock.Dial() function now appears to hang when there is no listener, rather than failing as it did before.

Interesting, apologies for that. I figured there might be some regressions but logically this makes sense: we previously called connect(2) using blocking I/O and now it is using non-blocking I/O. I wonder what the error reporting mechanism would look like.
I will try to investigate a bit too.

@stgraber that should improve the situation.

authors: mdlayher tomponline


text:
RPC Relay "DCERPCSessionError code: 0x80070057 - E_INVALIDARG"

Hello there!
First of all, absolutely love this tool. 10/10, use it all the time in my operations.
However, with regards to ESC11, relaying to RPC endpoints appears to be broken in the most current version. As you can see below, attempting to relay results in a "RequestSessionError":

Command: certipy relay -template DomainController -ca '<CA_server_FQDN>' -target rpc://<CA_server>
Certipy Version: 4.7.0
Python Version: 3.11.4
Note that the command above was attempting to get a Domain Controller template by coercing authentication, but the error also occurs when a normal user is relayed:

Let me know what other information you need; this is occurring in my personal test lab, so I can do what you'd like to try and reproduce the issue.

Hello. The -ca parameter should be the name of the CA, not the DNS name.


text:
Lychee fails with 503 on www.php.net

Since a few days all links of the www.php.net host fail with 503, which I can replicate from different machines and locations with a single www.php.net URL to check. Using browsers, curl and wget --spider, GET and HEAD requests all work fine. I also tried a few other user agents and between GET and HEAD, HTTP and HTTPS with Lychee, but it keeps failing the exact same way. I'm puzzled as it is not the user agent and I can't replicate it with any other client.
Can someone replicate this and does someone have any idea how this can be and at best how to resolve it? We test thousands of links all without issues or with simple explanations when one fails, but I am out of ideas how to debug that one.

Must be something we're doing in lychee, because reqwest works as expected:
use std::collections::HashMap;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let resp = reqwest::get("https://www.php.net").await?;
    println!("{}", resp.status());
    Ok(())
}

200 OK

Same for http://www.php.net.
Currently don't know where the problem is. 😕 Could you try a different user-agent?

Could you try a different user-agent?

Already done.

I also tried a few other user agents

There must be some dark magic going on, I'm somehow eager to know what the issue is, must be an interesting or funny one  😄. I'll try to look into the code, and check packets via tshark.

Any update on this btw?

Weird. We didn't change much around checking links that could fix this. It's likely something they fixed on their end, but thanks for the update.

Issue reappeared. Not sure what they are doing 😄.

Hum... seems to work again over here. Can you check?
❯❯❯ echo 'http://www.php.net' | lychee -
🔍 1 Total ✅ 1 OK 🚫 0 Errors
❯❯❯ echo 'https://www.php.net' | lychee -
🔍 1 Total ✅ 1 OK 🚫 0 Errors

Still failing here with latest lychee release (in case you tested development build): https://github.com/MichaIng/DietPi-Docs/runs/5512501346?check_suite_focus=true

Still failing: https://github.com/MichaIng/DietPi-Docs/runs/5650313828?check_suite_focus=true
✗ [503] https://www.php.net/manual/en/index.php | Network error: Service Unavailable
✗ [503] https://www.php.net/ | Network error: Service Unavailable
✗ [503] https://www.php.net/download-logos.php | Network error: Service Unavailable
✗ [503] https://www.php.net/manual/en/getting-started.php | Network error: Service Unavailable

Seems to be a Github Actions issue, though. At least for me it works locally. :/

You are right, now it works locally here as well (it did not when I opened the issue). Probably PHP explicitly blocked access for GitHub runners/IPs 🤔. I will try again with a custom user agent from GitHub actions, just to rule that out.
However, now it seems to be nothing on lychee end, so I'll close this issue. But I'll keep posting here if I find out something.

authors: MichaIng mre

repo: lycheeverse/lychee


text:
listener manager: handle listener creation failures on workers

This commit properly handles listener creation failures on worker threads.
Specifically, the race condition that can happen between bind() and
listen(). (To be perfectly honest I don't understand how this can happen
at the OS level but we have seen it in practice).
This turned into somewhat of a complicated change. It does the following
things:

Add an add listener completion which can tell the listener manager
if a creation failed. As part of this work, locking was replaced with
posts inside the listener manager which makes synchronization simpler.
The failed listener is removed, in the hope that a future addition
it might succeed at that point.
Listeners are now always added to workers via post.
Because of (3), this caused race conditions in the integration tests.
The integration startup code needed to be refactored so that we now
wait for all listeners to be up before starting to run the tests.
Because of (4) it exposed an issue in the TCP proxy integration test
with trying to handle a response from the client SSL auth filter which
happens before the listeners are actually up. To fix this, I removed
the code in the tests trying to handle client SSL auth filter calls.
I also replaced all "random" upstream clusters with a host pointing
at reserved port 4 which should always fail in any reasonable case.
This still has value in testing startup with failure, but won't block
startup. If we want to bring back testing of initial startup things
like SDS, RDS, etc. we will need to revisit how this works but IMO
this is fine for now.

@lyft/network-team @htuch @dnoe @alyssawilk
@alyssawilk this is going to conflict with your flow control change in the tests. Also LMK what you think about that part of the change. We can get your change in first and then I can merge master into this.

FWIW 1k is sadly nowhere enough - I've spent more of the day debugging a
1:20k failure which I bet this is the fix to.
(I got as far as figuring the SSL auth code was getting a bad FD which
aligns well with the idea not everything is set up right)
On Thu, Jul 13, 2017 at 3:29 PM, htuch notifications@github.com wrote:

@htuch commented on this pull request.
Will take a look in a bit, have you verified flake free with
--runs_per_test=1000? Asking as you seem to have uncovered a bunch of
concurrency issues in the integration tests, just wanted to check there
aren't any more.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lyft/envoy/pull/1257#pullrequestreview-49882136, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ARYFvRUSLO4ShCfKLxwxrRzkWqzjQDBdks5sNnAngaJpZM4OXbgw
.

Asking as you seem to have uncovered a bunch of concurrency issues in the integration tests, just wanted to check there aren't any more.

Not exactly, it's really an ordering issue. The old code would add listeners on the startup thread. This no longer happens, so new sync is needed. This also broke the TCP proxy tests. However I will run a long test cycle locally to make sure it works with multiple iterations. @alyssawilk I have no doubt there are still some edge cases in the existing code.

@htuch updated

@htuch comment updated

repo: lyft/envoy


text:
add build_amazon_linux.sh

Initial run took 33m16s on 8-core aws c3.2xlarge

@bobzilladev thanks a ton for contributing this. Can you sign CLA then we can merge.


text:
Add Redis database number to settings

@lyft/network-team add ability to pass Redis database number to ratelimit

@junr03 PTAL

@anpryl what is the use case for this setting?

@junr03 we have single redis instance for multiple applications. Each application uses own database by number.

Thanks for the explanation @anpryl. Three high level comments:

We need to add documentation for this feature.
We need to add tests for this feature.
I would like to work to make this feature use a new NewPool method like @repl-david-winiarski did in #96. It would be ideal if we don't change the "legacy" plain method. This way we have a precedent for acquiring different types of pools from the driver.

Working on it

@junr03

I would like to work to make this feature use a new NewPool method like @repl-david-winiarski did in #96. It would be ideal if we don't change the "legacy" plain method. This way we have a precedent for acquiring different types of pools from the driver.

I'm not sure that I understand you correctly.
Do you propose to add new function like NewPoolImplWithDatabaseNumber instead of extending an existing one?
I think that the database number is very generic connection parameter. Both TLS and non-TLS functions could accept it. In other case we need two version of non-TLS NewPool and two versions for TLS NewPool.
Could you please explain why do we need separate function to accept database number?

@junr03 I reworked NewPoolImpl to accept a list of functions to configure redis client. Also, I add WithDatabase to configure the database number.
Also, it will be easier to extend the connection configuration (for example: TLS).
Working on tests.

@henryyyang for a second pair of eyes.

bump to remove stale tag

I just realized that this is for ratelimit service which use a local copy of redis.  I don't have a lot of context on this.  That said, multiple database on a single redis is generally a bad thing with little benefit see this discussion.  https://groups.google.com/forum/#!topic/redis-db/vS5wX8X4Cjg/discussion
A better alternative would be to change the key to create logical partition within a single database, or create multiple redis instances.

@HenryYYang database numbers is stable redis feature. I believe multiple teams already using it. Why not add support of stable feature?

repo: lyft/ratelimit


text:
张量的数学运算中矩阵特征值演示错误

#矩阵特征值
tf.linalg.eigvalsh(a) 是self-adjoint matrix 的特征值， 而不是一般矩阵的矩阵特征值

@lyhue1991 I agree, the tf.linalg.eigvals(a) should be used instead of tf.linalg.eigvalsh(a). What do you think?

@lynquantumman @nbwuzhe  Thank you very much, The error has been fixed!

authors: lyhue1991 lynquantumman nbwuzhe


text:
Daily mode

Allows Day Planner to automatically link to the current daily note.
Fixes #114

@lynchjames would you mind taking a look at this PR? It seems like it is a pretty requested feature

@teaqu Nice PR. But shouldn't the plugin for daily note be added as a peerDependencies instead ? As this is an optional feature.

Hey @Kitefr nice to learn about peer dependencies, I haven't come across them before. I'm still not sure I quite understand them but I think maybe not in this case. This pull request would create a hard requirement on obsidian-daily-notes-interface which is actually a is a small library for interacting with the daily notes plug-in, not the actual plug-in itself (https://github.com/liamcain/obsidian-daily-notes-interface).

peerDependencies means that in that case, if you want this part to work, you should have the plugin daily notes installed but it is up to the user to install it. It should not be included in this plugin as this plugins only mention to use it is it is available.
But as this is for the interface, It might be correct.

What is the status of this project @lynchjames? The last commit is 1.5 years ago. Thanks.

@lynchjames I understand you've probably moved on, but this is such a popular community plugin I was wondering if you'd consider a maintenance spike to merge a few PRs like this one?
It's popular enough that people would probably chip in to fund some maintenance, if you showed a 'fundraiser tracker' somewhere to show that you'll work on it for some amount of time after hitting donation milestones, I think many would chip in to move things along.
Thanks for the work on this, its a great plugin.

@teaqu I forked the main repo, checked out your daily-mode branch, merged, and npm run dev
I got this error:
$ npm run build

> obsidian-day-planner@0.5.8 build
> rollup --config rollup.config.js

src/main.ts → dist/...
(!) Plugin typescript: @rollup/plugin-typescript TS2339: Property 'sourceMode' does not exist on type 'MarkdownView'.
src/planner-md.ts: (34:34)

34         const currentLine = view.sourceMode.cmEditor.getCursor().line;

(that may just be a missing Typescript definition)
Then, I swapped the dist/main.js and put it into my vault's plugins/obsidian-day-planner, set the GUI mode option to Daily mode and nothing happens.
I then tried deleting the original plugin, and creating a new folder composed ofdist/main.js, and manifest.json and styles.css from test-vault/.obsidian/plugins/obsidian-day-planner with the same result. No planner data in daily notes.
Any ideas?

I've just realized as a requirement for something else, probably Periodic Notes (in order to get weekly notes) meant that Daily Notes was disabled. I'll have a poke around and see exactly what's causing that.

This seems to break command mode, anyways I'm going to move back back to the dead plugin and command mode for now. Maybe someone will come along and revive this plugin in the future!

Pulled a fork and merged this, works well!

@replete Are you thinking of adding a timer/stop watcher to track the time?
It would be awesome!

@replete Are you thinking of adding a timer/stop watcher to track the time?
It would be awesome!

That's a pretty cool idea. A focus timer. How do you think it should work? As a special task item?
- [ ] 09:00 Work on thing
- [ ] 09:20 Focus (timer: 25:00)

I might actually make some changes to the UI, I've already redesigned it with CSS (snippet link in README.md):

@replete Are you thinking of adding a timer/stop watcher to track the time?
It would be awesome!

That's a pretty cool idea. A focus timer. How do you think it should work? As a special task item?
- [ ] 09:00 Work on thing
- [ ] 09:20 Focus (timer: 25:00)

I might actually make some changes to the UI, I've already redesigned it with CSS (snippet link in README.md):

Is this plugin creating daily plans from the calendar itself? Like replacing daily notes?
It would me a small stop watch widget either in the planer panel title or in the bottom toolbar too, what do you think?

I was thinking a subtask with prominent timer that shows up like this perhaps, maybe more prominent

@SalahAdDin No, this is just a screenshot that happened to show the day planner CSS changes I made. It works on the checklist items under 'Day Planner' heading in daily notes as expected..

- [ ] 10:30 Work on Obsidian Daily
- [ ] 11:30 (25:00) Focus
- [ ] 12:00 Breakfast
- [ ] 12:30 GTD Obsidian

I need to think about it a bit more, but I like the idea

@SalahAdDin I'm probably going to add this feature to my fork, in which I've merged the other useful PRs.
If you'd like to continue this conversation and feed into the development process, comment in this Feature issue
-Phil

@replete it seems @ivan-lednev updated it!!!

Yup, I've been working on a fork for a while, rewriting almost all of it. James Lynch contacted me and transferred ownership of the original repo. PRs and issues are welcome.

@ivan-lednev That's great to hear Ivan, I forked it with intent to fix it but it just hasn't happened. I'll check your version out and probably forward people on

authors: Kitefr SalahAdDin aviaryan ivan-lednev replete teaqu wvffle

repo: lynchjames/obsidian-day-planner


text:
mods explained

What i've done ?

Published the package in npmjs.org https://www.npmjs.org/package/ng-token-auth also the package version.
Fixed the package name in the package.json file.
Added minified version in the dist dir. for better bower usage and for cdnjs.com .
i'll add the package in cdnjs.com. so i had to put the lines 13 - 19 in package.json for auto-update.

Please accept ASAP in order to put it on cdnjs.com
thank you for the WTFPL License :D .

Hey @dyaa - lol I was just freaking out because I thought I'd lost control of the npm package. I forgot that you were the one that created the package. Can you please add me and @booleanbetrayal as collaborators so that we can push updates to it?
Thanks!!

authors: dyaa lynndylanhurley

repo: lynndylanhurley/ng-token-auth

license: WTFPL


text:
Question about discrite sampling in RT-DETRv2

Hello,
I love your work. I have a question regarding the discrete sampling.
You state on the paper:
we propose an optional discrete_sample operator to replace the grid_sample, thus removing the deployment constraints of RT-DETR. Specifically, we perform a rounding operation on the predicted sampling offsets, omitting the time-consuming bilinear interpolation.

Could you please explain how much faster the model is when you use discrete sampling?
Also, what is the difference between your proposed grid_sampling and torch.grid_sample with interpolation = nearest?

Also, why is there a deployment constraint when torch.grid_sample is used?

When you deploy with TensorRT, grid_sample is only supported in versions above 8.5. Therefore, it is necessary for some old devices and scenarios where software cannot be upgraded.
And other proprietary inference engines for some npu may not support grid_sample as well.
So RTDETRv2 is necessary for the community.

For specific speed, this is related to specific equipment and software. We only give the difference of theoretical calculation.

Thank you so much for your well-explained answer.
If, for deployment, you used discrete sampling, why is the model not trained using torch.grid_sample(..., mode='nearest')

authors: SebastianJanampa lyuwenyu

repo: lyuwenyu/RT-DETR


text:
Possibility of serverside TikZJax rendering?

Just as mdbook-katex leverages existing KaTeX javascript, the same structuring could apply to the existing obsidian-tikzjax javascript implementation which is run clientside to generate html outputs, all we would need to do is to feed it the markdown input during the preparse time and it becomes serverside rendering.
If the use of ```tikz blocks is a potential issue, a custom tag could always be used instead as the default i.e. <tikz></tikz>, though I guess since mdbook-mermaid is a thing this wouldn't be a problem.

Feel free to fork either this repository or mdbook-mermaid for a starting point and implement a preprocessor yourself.
Closing because this is out of bound of this project

authors: SichangHe expikr

repo: lzanini/mdbook-katex