text:
using SQLite and memory consumption

I noticed some memory consumption issue.
simple entity class:
class Test
{
    public Int32 ID { get; set; }
    public string Value { get; set; }
};

running function below for several hours, process takes slowly consuming more and more memory:
    static void do_sqlite()
    {
        DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SQLite");

        string[] databases = {@"test1.db", @"test2.db", @"test3.db", @"test4.db"};

        foreach (string name in databases) {
            File.Delete(name);
            using (NPoco.IDatabase db = new NPoco.Database(@"Data Source=" + name, factory))
            {
                db.Execute("CREATE TABLE Test(ID INTEGER PRIMARY KEY AUTOINCREMENT, Value TEXT NOT NULL DEFAULT '');");
            }
        }

        Random random = new Random();

        for (; ; )
        {
            using (NPoco.IDatabase db1 = new NPoco.Database(@"Data Source=test1.db", factory))
            using (NPoco.IDatabase db2 = new NPoco.Database(@"Data Source=test2.db", factory))
            using (NPoco.IDatabase db3 = new NPoco.Database(@"Data Source=test3.db", factory))
            using (NPoco.IDatabase db4 = new NPoco.Database(@"Data Source=test4.db", factory))
            {
                NPoco.Sql sql = NPoco.Sql.Builder
                    .Select("*")
                    .From("Test")
                    .Where("ID = @0", random.Next());

                foreach (var item in db1.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                foreach (var item in db2.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                foreach (var item in db3.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                foreach (var item in db4.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                Console.WriteLine(string.Format("---- {0:yyyy-MM-dd HH:mm:ss.fff} ----", DateTime.Now));
                Thread.Sleep(250);
            }
        }
    }

running almost same function using SQLServer in a day does not exhibit memory consuption problem:
    static void do_sqlserver()
    {
        DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SqlClient");

/*
CREATE TABLE Test(
ID INT NOT NULL IDENTITY,
Value NVARCHAR(MAX) NOT NULL DEFAULT ''
);
*/
Random random = new Random();
        for (; ; )
        {
            using (NPoco.IDatabase db1 = new NPoco.Database(@"Data Source=.\SQLExpress; Initial Catalog=Test1; Integrated Security=True;", factory))
            using (NPoco.IDatabase db2 = new NPoco.Database(@"Data Source=.\SQLExpress; Initial Catalog=Test2; Integrated Security=True;", factory))
            using (NPoco.IDatabase db3 = new NPoco.Database(@"Data Source=.\SQLExpress; Initial Catalog=Test3; Integrated Security=True;", factory))
            using (NPoco.IDatabase db4 = new NPoco.Database(@"Data Source=.\SQLExpress; Initial Catalog=Test4; Integrated Security=True;", factory))
            {
                NPoco.Sql sql = NPoco.Sql.Builder
                    .Select("*")
                    .From("Test")
                    .Where("ID = @0", random.Next());

                foreach (var item in db1.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                foreach (var item in db2.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                foreach (var item in db3.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                foreach (var item in db4.Fetch<Test>(sql))
                {
                    Console.WriteLine(string.Format("{0:d}: {1}", item.ID, item.Value));
                }

                Console.WriteLine(string.Format("---- {0:yyyy-MM-dd HH:mm:ss.fff} ----", DateTime.Now));
                Thread.Sleep(250);
            }
        }
    }

I have tested almost same procedure with raw System.Data.SQLite as below, it does not exhibit the issue:
    static void do_sqlite_raw()
    {
        DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.SQLite");

        string[] databases = { @"test1.db", @"test2.db", @"test3.db", @"test4.db" };

        foreach (string name in databases)
        {
            File.Delete(name);
            using (IDbConnection conn = factory.CreateConnection())
            {
                conn.ConnectionString = @"Data Source=" + name;
                conn.Open();

                using (IDbCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = "CREATE TABLE Test(ID INTEGER PRIMARY KEY AUTOINCREMENT, Value TEXT NOT NULL DEFAULT '');";
                    cmd.ExecuteNonQuery();
                }
            }
        }

        Random random = new Random();

        for (; ; )
        {
            using (IDbConnection db1 = factory.CreateConnection())
            using (IDbConnection db2 = factory.CreateConnection())
            using (IDbConnection db3 = factory.CreateConnection())
            using (IDbConnection db4 = factory.CreateConnection())
            {
                db1.ConnectionString = @"Data Source=test1.db";
                db1.Open();

                using (IDbCommand cmd = db1.CreateCommand())
                {
                    cmd.CommandText = "SELECT * FROM Test WHERE ID = " + random.Next() + ";";
                    using (IDataReader rdr = cmd.ExecuteReader())
                    {
                        while (rdr.Read()) {
                            Console.WriteLine(string.Format("{0}: {1}", rdr["ID"], rdr["Value"]));
                        }
                    }
                }

                db2.ConnectionString = @"Data Source=test1.db";
                db2.Open();

                using (IDbCommand cmd = db2.CreateCommand())
                {
                    cmd.CommandText = "SELECT * FROM Test WHERE ID = " + random.Next() + ";";
                    using (IDataReader rdr = cmd.ExecuteReader())
                    {
                        while (rdr.Read())
                        {
                            Console.WriteLine(string.Format("{0}: {1}", rdr["ID"], rdr["Value"]));
                        }
                    }
                }

                db3.ConnectionString = @"Data Source=test1.db";
                db3.Open();

                using (IDbCommand cmd = db3.CreateCommand())
                {
                    cmd.CommandText = "SELECT * FROM Test WHERE ID = " + random.Next() + ";";
                    using (IDataReader rdr = cmd.ExecuteReader())
                    {
                        while (rdr.Read())
                        {
                            Console.WriteLine(string.Format("{0}: {1}", rdr["ID"], rdr["Value"]));
                        }
                    }
                }

                db4.ConnectionString = @"Data Source=test1.db";
                db4.Open();

                using (IDbCommand cmd = db4.CreateCommand())
                {
                    cmd.CommandText = "SELECT * FROM Test WHERE ID = " + random.Next() + ";";
                    using (IDataReader rdr = cmd.ExecuteReader())
                    {
                        while (rdr.Read())
                        {
                            Console.WriteLine(string.Format("{0}: {1}", rdr["ID"], rdr["Value"]));
                        }
                    }
                }

                Console.WriteLine(string.Format("---- {0:yyyy-MM-dd HH:mm:ss.fff} ----", DateTime.Now));
                Thread.Sleep(250);
            }
        }
    }

Am I doing anything wrong ?
As far as I see, I should have disposed any IDatabase object...
my environment:
Windows7 64bit
Visual Studio 2012
.NET Framework 3.5 SP1
NPoco 2.10.11
//

I forgot to mention that number of entities in table not seems to matter.
Even empty table (as above), memory is keep consumed using SQLIte.

Try using parameterized queries in the raw one.
They are not identical to the NPoco ones.
Also what happens if you reuse the NPoco.Database object instead of newing it up each time. Then use can call OpenSharedConnection() and CloseSharedConnection() like the raw one does.

thanks for your suggestions, and sorry for delay.

slightly modified test program as following to reuse NPoco.Datbase, run the program almost 1 day, and found that memory consumption is 'stable' (always below 12MB in my environment)
using (NPoco.IDatabase db1 = new NPoco.Database(@"Data Source=test1.db", factory))
using (NPoco.IDatabase db2 = new NPoco.Database(@"Data Source=test2.db", factory))
using (NPoco.IDatabase db3 = new NPoco.Database(@"Data Source=test3.db", factory))
using (NPoco.IDatabase db4 = new NPoco.Database(@"Data Source=test4.db", factory))
{
for (; ; )
{

turned 'raw' SQLite query to be parameterized as following, run the program almost 1 day, found that memory consumption is also stable(below 10MB here)
cmd.CommandText = "SELECT * FROM Test WHERE ID = @Id;";
IDbDataParameter p = cmd.CreateParameter();
p.ParameterName = "Id";
p.Value = random.Next();
cmd.Parameters.Add(p);

It seems to me that disposing Database is not really, at least in SQLite case.
My requirement is

program is muti-threaded(10 or more threads)
program is supposed to be run without restarting/rebooting (at least 1 month or so)
DbProviderFactory may be changed by external configuration, I want to be 'database-independent' manner.

I think I have to create/destroy NPoco.Database on thread enter/exit,
or is it safe to share single (static) instance of NPoco.Database by multiple threads?
Any suggestions are appreciated.
NPoco is very suitable for my requirement except this issue...
//

It is safe to share but I normally use one per thread.

authors: mia-san schotime

repo: schotime/NPoco


text:
Object must implement IConvertible.

I'm getting the subject error when trying to retrieve a record from the database.
Repository:
public void RemoveItem(int value1, int value2)
{
    //// ERROR ON THIS LINE
    var result = this.Database.SingleOrDefault<MyTable>("WHERE Value1 = @0 AND Value2 = @1", value1, value2);

    if (result != null)
    {
        this.Database.Delete(result.Id);
    }
}

Poco Model:
[TableName("MyTable")]
[PrimaryKey("Id", AutoIncrement = false)]
public class MyTable
{
    public MyTable()
    {
        this.Id = Guid.NewGuid().ToString();
        this.CreatedDateUtc = DateTime.UtcNow;
    }

    [Column("Id")]
    public string Id { get; set; }

    [ComputedColumn] // (getutcdate())
    public DateTime CreatedDateUtc { get; set; }

    //// ISSUE WITH NULLABLE DATETIME?
    [Column("LastUpdatedDateUtc")]
    public DateTime? LastUpdatedDateUtc { get; set; }

    [Column("Value1")]
    public int Value1 { get; set; }

    [Column("Value2")]
    public int Value2 { get; set; }
}

Create script for table in SQL:
CREATE TABLE [dbo].[MyTable](
	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL,
	[Value1] [int] NOT NULL,
	[Value2] [int] NOT NULL,
	[CreatedDateUtc]  AS (getutcdate()),
	[LastUpdatedDateUtc] [datetime] NULL,
 CONSTRAINT [PK_MyTable] PRIMARY KEY CLUSTERED
(
	[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[MyTable] ADD  CONSTRAINT [DF_MyTable_Id]  DEFAULT (newid()) FOR [Id]
GO

I've tried a lot of different permutations. I can't seem to figure out what the issue is, and the error message doesn't say which 'object'. I also checked the wiki and didn't see anything related. I seem to be doing everything correctly, but what am I doing wrong?

Have you got the actual exception there? Everything looks ok at a first glance.

Yeah, that's the only exception: "Object must implement IConvertible."
Stack Trace:
at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
at NPoco.RowMappers.PropertyMapper.MapValue(GroupResult`1 posName, Object[] values, Func`2 converter, Object instance, PocoColumn pocoColumn, Object defaultValue)
at NPoco.RowMappers.PropertyMapper.<>c__DisplayClass8_2.<BuildMapPlans>b__3(DbDataReader reader, Object[] values, Object instance)
at NPoco.RowMappers.PropertyMapper.<>c__DisplayClass7_0.<BuildMapPlan>b__1(DbDataReader reader, Object[] values, Object instance)
at NPoco.RowMappers.PropertyMapper.Map(DbDataReader dataReader, RowMapperContext context)
at NPoco.MappingFactory.Map(DbDataReader dataReader, Object instance)
at NPoco.Database.<Read>d__156`1.MoveNext()
at NPoco.Database.<QueryImp>d__164`1.MoveNext()
at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source)
at MyProject.Infrastructure.Data.Repositories.MyRepository.RemoveItem(Int32 value1, Int32 value2)

Looks like there's an error trying to covert a GUID to a string on line 60 of MappingHelper.cs.
I changed the ID property on my model from string to guid and now everything is working.
Can I add some content to the Wiki about PK GUID columns?

Property type should be System.Guid
-- public Guid Id { get; set; }
AutoIncrement should be set to true
-- [PrimaryKey("Id", AutoIncrement = true)]
You don't need to initialize the property
-- //// Not necessary - this.Id = Guid.NewGuid();

Added. https://github.com/schotime/NPoco/wiki/Using-Guid-Column-as-Primary-Key

thanks

source: gharchive/issue

authors: SteveAndrews schotime

license_type: permissive

license_source: github-api


text:
Update scalafmt-core to 3.0.5

Updates org.scalameta:scalafmt-core from 3.0.3 to 3.0.5.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "scalafmt-core" } ]

labels: library-update, semver-patch

Superseded by #184.

source: gharchive/pull-request

repo: schrepfler/artemis


text:
About rounded corner fix and other things

Hi, mighty Scientiac! Some time ago we had a conversation on Reddit. I found the code that fixes the white blink on round corners, but I can't get it to work as intended. This is the code ArcWTF copypasted from edge-frfox:
#appcontent .browserStack {
    margin-inline: var(--uc-tweak-rounded-corners-padding) !important;
    margin-block-end: var(--uc-tweak-rounded-corners-padding) !important;
    border-radius: var(--uc-tweak-rounded-corners-radius) !important;
    box-shadow: var(--uc-tweak-rounded-corners-shadow) !important;
    background-color: var(--tabpanel-background-color) !important;
    position: relative !important;

    /* Use pseudo element overlay to simulate rounded corners, similar to the
     * tab corners, fixes bug with backdrop-filter. */
    &::after {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: inherit;
      /* Draw toolbar background on the negative corner space, then draw the
       * same shadow from the browser window on top. */
      box-shadow:
        var(--uc-tweak-rounded-corners-shadow, 0 0 transparent),
        0 0 0 16px var(--browser-frame-bgcolor) !important;
      clip-path: inset(0);
      pointer-events: none;
    }
  }

As you can see, it describes what it does in the comment.
About other things:
#sidebar-box[sidebarcommand="_3c078156-979c-498b-8990-85f7987dd929_-sidebar-action"] {
  --uc-sidebar-width: 38px !important;
  --uc-sidebar-hover-width: 250px;
  --uc-autohide-sidebar-delay: 600ms; /* Wait 0.3s before hiding sidebar */
  position: relative;
  min-width: var(--uc-sidebar-width) !important;
  width: var(--uc-sidebar-width) !important;
  max-width: var(--uc-sidebar-width) !important;
  z-index:1;
}

^ there you don't need to set min and max width, as I understand
[sidebarcommand="_3c078156-979c-498b-8990-85f7987dd929_-sidebar-action"] is needed when you have multiple things in your sidebar, not only sidebery. If you use only sidebery, you can remove it.
Also, as I understand, @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); is deprecated, so you can remove it.
If you like this comments, I would be happy to make a pr with them.
Also, I have my own nice theme now, which shares quite similar philosophy as your does (but it integrates with a system, not sites, so pages with round corners looks like something in the container and not distract the system stile):

Hey! This is great, thanks. I'll surely try to fix the issue with this information. BTW your theme looks great, I'd love to steal some of your ideas for the immersive branch, will you be uploading your theme somewhere, like a dotfiles repo?

You can see it in my NixOS config

authors: ArtemChandragupta scientiac

repo: scientiac/scifox

license: MIT


text:
Milestoning backports

Some projects have release branches. In those cases, they might use the backport bot to open a backport PR to the backport branch of something that is already merged into main. Or they can be doing a manual backport.
Would be nice to be able to auto milestone those too.
Example:

PR 1234 was merged into main. Got auto-milestoned to next major/minor release (depending how strict of a semver follower you are).
Backport bot opens PR 1235 that backports PR 1234 to v0.1.x branch. Would be nice if this gets auto-milestone to the next bugfix release milestone in the v0.1.x series.

How should the script figure out what the "next" milestone is in that scenario?

Looking at and matching the pattern of the name of the bugfix branch?
OTOH, backporting is automated (but even when it's manual) so milestoning shouldn't be an issue while in the open PR stage.
(I the main usecase of the milestone action is to milestone PRs that arch over multiple releases, e.g. no need to milestone something right at the beginning, and then keep remilestoning it. If something is a backport, those are very much release blockers, so should be kept in mind while open.)

This being said, in case of bugfix branching, the bugfix milestone should not be identified as the next one, so some tweaking to the logic may still be needed?

There's a branch filter on main atm, so I presume that'd at least stop incorrect milestone labeling.

not necessarily, as the bugfix milestone could be the next one, even though as that should not be the default for changes on main.

authors: bsipocz pllim stefanv


text:
Meta: use GitHub Issue Forms

GitHub now provides the ability to define Issue Forms, which establish a structured, validated form for creating Issues.
Here is an example form for Awkward.
Do you think this would be a useful addition?

Possibly. I've been thinking that since I saw a form on another repo. Some of our issue templates have text for the user to read, which must be deleted when writing the actual issue. A form would separate that text from the text box where the user writes, and trust would be somewhat cleaner, probably easier to read.

It also allows you to add the triple tick marks and language highlighting or traceback highlighting automatically. :)

It also adds drop downs!

The textbox with the pytb setting actually uses a monospace font, very nice attention to detail.

authors: agoose77 henryiii jpivarski


text:
Plotting histos and saving to pdf/png in script

Hi,
I've been trying Histbook for some experimental analysis and it seems very good! However I'd like to run over data samples and create plots of e.g. signal vs background(s) for many plottable variables, and save them to png/pdf.
As it is, I can do this via VegaLite using a web browser, by pressing save, but cannot seem to find a way to save directly to a file in the script without opening a browser, so that one can run e.g. in a headless gnu screen session or some sort of cluster/batch mode.
Is there a simple way plots can be exported/saved in Histbook without going through a web browser?
Thanks,
Alex

This is one of the reasons for VegaScope. That still goes through a web browser, but it can invoke the browser to save as PNG/SVG (use Inkscape or equivalent to convert SVG to PDF). Pop-ups need to be unblocked for VegaScope to have permissions to do that.
It might be a better option to install [vega-lite as an npm package] (https://www.npmjs.com/package/vega-lite), which of course means running nodejs, a non-browser JavaScript environment. This surely has vega-lite to PNG/SVG converters, and there are npm packages that do SVG to PDF conversion.
As you can see, I haven't figured out what would be a good workflow for this, but there are some leads. I don't know if nodejs would be considered an installation burden— it steps out of the Python ecosystem, but it's a well-maintained ecosystem on its own. (A lot of web services use it on the backend to unify server and client code.)
I'm going to leave this issue open, hoping to collect ideas.
Oh, there's another option: histbook Hists can be turned into Pandas DataFrames as easily as vega-lite, and Pandas plots as Matplotlib. I didn't want to bring this dependency into histbook itself (outputting pure JSON is zero-dependency), but you can get to it though Pandas. Just be sure to use the line-drawing and bar chart features of Pandas plotting— "histogram" features aren't relevant because the data passed to Pandas are already aggregated into bins.

authors: jpivarski professor-calculus

repo: scikit-hep/histbook


text:
Mismatch of return order vs. comments in iterative_stratification

The comment about what iterative_train_test_split returns is misleading. The comment says the order of objects returned is X_train, y_train, X_test, y_test, but it actually returns X_train, X_test, y_train, y_test.
I think this came over from the master branch of the original scikit-multilearn. On the master branch you see the same mismatch. Interestingly, they "fixed" this in v0.2.0 here, but that fix never made its way into the master branch.
To summarize, we have:

scikit-multilearn latest release: comment + code match in returning X_train, y_train, X_test, y_test
scikit-multilearn master branch, and scikit-multilearn-ng:

code returns X_train, X_test, y_train, y_test, comment says it returns X_train, y_train, X_test, y_test

scikit-learn's original train_test_split returns X_train, X_test, y_train, y_test, so I think that's the expected behavior by folks new to scikit-multilearn.

So if you want to align with the scikit-learn, I think you just need to update the comment here. But if you want to align with the latest release of scikit-multilearn, you'd want to update the return statement.
I'd be happy to make the PR if you tell me which you'd prefer :)
https://github.com/scikit-multilearn-ng/scikit-multilearn-ng/blob/07d7e44d2613d9abd8a697702c4e0215dfad19d2/skmultilearn/model_selection/iterative_stratification.py#L102-L121

Hello @willjobs,
Thank you for bringing this to our attention and for your thorough investigation into the discrepancies between the iterative_train_test_split documentation and its actual behavior.
Long-term, our objective is indeed to mirror the usability found in scikit-learn, as this simplifies the learning curve for new users. You can see this reflected in our documentation here: scikit-multilearn-ng usage example.
Although this will be a breaking change when transitioning from scikit-multilearn  to scikit-multilearn-ng. However considering the potential impact on existing scikit-multilearn-ng users who are accustomed to the current order, I propose we update the documentation to accurately reflect the current implementation rather than adjusting the code to match the documentation. This approach minimizes disruption for our current user base while clarifying expectations for new users.
I appreciate your offer to help by making a pull request. Please go ahead with openening a PR updating the comment in the documentation to match the actual behavior (X_train, X_test, y_train, y_test). Let me know if you need any assistance.
Thanks again for your contribution and keen eye on this issue!


text:
Support for multi-class multi-label problems?

Currently, it seems that multi-class multi-label problems are not supported (e.g. a classification problem with 5 target variables (generally n_outputs) where each target variable can take three possible values (generally n_classes)).
Is this something that the authors think that should/should not be supported?
One issue is that currently the output of predict_proba methods has shape = (n_samples, n_outputs), whereas to support multi-class multi-label it should be a list with n_outputs elements, where each element has shape = (n_samples, n_classes) (see output of MultioutputClassifier in sklearn).
It seems to me that currently ClassifierChain supports multi-class multi-label problems; but LabelPowerset doesn't. I have tried to use the LabelPowerset transformation to a multi-class multi-label problem that I have, but judging from the output of unique_combinations_  it seems to me that the code currently assumes binary multi-label problems. However, the code runs without any exceptions/warnings, which results in wrong results, therefore I suggest that in case the authors do not want to support multi-class multi-label problems, there should at least be some checks/exceptions/warnings to refrain the user from using such data.

However, the code runs without any exceptions/warnings, which results in wrong results, therefore I suggest that in case the authors do not want to support multi-class multi-label problems, there should at least be some checks/exceptions/warnings to refrain the user from using such data.

In my opinion we shouldn't clutter the code with such things. It's the user's responsibility to check what the code does. We don't indicate that we support multi-target classification anywhere, I guess.
I'm not sure it would be beneficial to the library if we implemented support for this. I didn't look into it, but even now there are few people willing to participate.
@niedakh what's your take?

I think we shouldn't support multi-output tasks, there's no real foundation for that in scipy sparse too, I don't thinkg scipy matrices can handle sparse matrices with additional subvectors. We do rely a lot in the optimizations on this.

just wanted to ask : does this also apply to IterativeStratification? I tried with multi-class multi-label target array, (for instance, arrays like :
array([[2, 1, 0],
       [0, 0, 0],
       [1, 1, 0],
       [1, 1, 1],
       [0, 1, 0]])

(the first label has three possible classes)
After playing around with a bit, it seems that when using IterativeStratification with multi class + multi-label does not throw any errors, the resulting stratified folds do not have similar class proportions to the original distributions (i.e. not stratified)

authors: ChristianSch agamemnonc dyhan316 niedakh

repo: scikit-multilearn/scikit-multilearn

license_source: bigquery


text:
Sparse inverse

The sparse inverse of sparse symmetric positive definite matrix K is a sparse matrix with the same sparsity structure (symbolically) as K but the non-zero elements are equal to the elements of the inverse of K. This pull request implements the sparse inverse method spinv for class Factor. Also, the documentation and the tests are updated accordingly.
The sparse inverse is implemented only for real matrices. In addition, only simplicial LDL and supernodal LL are implemented, these are the defaults in CHOLMOD. CHOLMOD doesn't support supernodal LDL, and simplicial LL would require one to change Common->final_ll to 1 but I think it is not possible through scikits.sparse interface.
For more details on the sparse inverse, see, for instance:
http://cholmod-extra.readthedocs.org/en/latest/functions.html#sparse-inverse

Hi! This feature would be indeed very helpful. Is there any chance that it will make it to one of the future releases?

I'm also very interested in this.

It seems like Suitesparse has implemented this though confusingly in MATLAB_Tools:
https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/stable/MATLAB_Tools/sparseinv/sparseinv.c

authors: Evfro howsiyu jluttine

repo: scikit-sparse/scikit-sparse


text:
Implement Hot Module Reload for the React pages

This could be useful for when we're working on the internal tools. I'm not sure if this is a good idea for the long term app development.

The new webpack setup we just added implements this.

repo: scimusmn/stele


text:
Fails when spaces in path

Caused by splitting by space when executing tool:
https://github.com/scionoftech/webp-converter/blob/master/webpconverter.js#L23

2020 and I'm having the same issue. Looks like the project is abandoned.

authors: danelkhen jav-user

repo: scionoftech/webp-converter

license: mit


text:
BS: send RevInfos to PS, not IFStateInfos.

Currently the BS sends IFStateInfos to the PS for simplicity, but the PS doesn't care about anything except the embedded RevInfo. Having the BS send a RevInfo directly would mean there's one less (non-obvious) message type the PS needs to implement.

partially fixed in #2625
When we do no longer support BS:PY we can drop the message handler in the PS

Python services are remove from the repo, thus this can be closed.

authors: Oncilla kormat worxli

repo: scionproto/scion


text:
lib/pathpol: drop PathSet, use slices instead

In pathpol.Filter, use []snet.Path slices instead of a map[snet.PathFingerprint]snet.Path.
This simplifies (most) callers; in the pathmgr/snetmigrate, the sets
are still used and are just created later, so no big win here.
Nevertheless the normal use case (e.g. in app/helper.go) becomes a bit simpler.
Note that internally, the pathpol still needs to use a set with path
fingerprints to compute the set union of the sub policy options.

This change is

/rebase

authors: lukedirtwalker matzf


text:
DEP: deprecate and remove remaining usages of slur-adjacent "trapz"

I am not finding any other appearances of these terms except for trapz, which is still allowed as an alias for the trapezoidal distribution and as a method option of quad_vec. (Those uses don't appear to have been deprecated.)
Originally posted by @mdhaber in https://github.com/scipy/scipy/pull/20278#pullrequestreview-1944140754

I will address this before the next release if nobody gets there first

thanks @h-vetinari

which is still allowed as an alias for the trapezoidal distribution

IIRC we kept it as an undocumented alias when introducing trapezoidal to avoid users having to write if-else constructs depending on SciPy version. That is quite a few releases ago, so +1 for the proposal deprecations now.

I'm going to close this one as fixed by #20716; we'll track removal in the deprecation meta-issue.

@h-vetinari the alias for the trapezoidal distribution still remains

Yes, but it got deprecated, which is what this issue was about. I also said that the actual removal (after two releases) can be tracked in the meta-issue.
So I don't see what purpose this issue still serves.

Ugh. Why are we not doing these at the same time. Let's deprecate both in 1.14 please

Ugh. Why are we not doing these at the same time. Let's deprecate both in 1.14 please

Politely, I would ask in the future you consider the tone of such comments.

The point is not to separate things that go together. If you do one without the other (like for the special.comb thing as well), it just creates yet more work. I don't mind when these things land, but it's pointless to split the same deprecation across PRs, much less releases. Let's avoid half measures.

The point is not to separate things that go together. If you do one without the other (like for the special.comb thing as well), it just creates yet more work. I don't mind when these things land, but it's pointless to split the same deprecation across PRs, much less releases. Let's avoid half measures.

Of course, we are allowed our own opinions on how things should be done. I am merely asking that we avoid unnecessary emotive language when addressing each other.

authors: h-vetinari j-bowhay rgommers

repo: scipy/scipy


text:
scipy.special.tests.test_orthogonal::test_roots_jacobi fails on 32-bit intel

Reproducing code example:
python3.6 runtests.py -v -t scipy.special.tests.test_orthogonal::test_roots_jacobi

In one of those "oh dear" sort of ways, it does not fail in a debug build. So it's probably some rounding thing caused by the C compilers optimization settings.
Error message:
https://gist.github.com/mwhudson/f40be8bc89eea32a469257d3d9cb478c
Scipy/Numpy/Python version information:
1.2.0.dev0+641bc92 1.14.5 sys.version_info(major=3, minor=6, micro=6, releaselevel='final', serial=0)

Ubuntu compiles 32-bit things to use x87 arithmetic, does your system use sse2 by any chance? There are also many other compiler flags that can make a difference... if just increasing the tolerance is OK I can certainly have a go at that.

Yes, IIRC my setup did use SSE2. Yes, if the test passes with reasonable increase in test tolerance, that should be OK.

authors: mwhudson rgommers


text:
MAINT: prepare for SciPy 1.3.3

add new files associated with the new
bug-fix release notes for SciPy 1.3.3

bump maintenance branch version to 1.3.3
unreleased

LGTM. build_docs passed, TravisCI is backed up - merging.

authors: rgommers tylerjereddy


text:
MAINT: interpolate: remove duplicated splint from _fitpack

Reference issue

A part of #16729
This PR is another option to #16871
What does this implement/fix?

As reported in #16729, _fitpack and dfitpack have some dupricated interfaces of FITPACK.
This PR focuses on splint and remove the _fitpack interface.
Additional information

gh-17038 gives a third alternative, following @rgommers 's comment above.
As to which one to remove from, _fitpack or dfitpack, I'm mostly following Pauli's original suggestion, https://github.com/scipy/scipy/issues/1408#issuecomment-24493859, Get rid of _fitpack in favor of dfitpack, and the
Try to replace _fitpack interface with f2py-generated version comment , https://github.com/scipy/scipy/blob/main/scipy/interpolate/_fitpack_impl.py#L33, which $ git blame -M -C -C attributes to Travis in his 2006 commit e315609f135.

The contents of this PR is merged as a part of gh-17038.  Thanks again @AtsushiSakai

authors: AtsushiSakai ev-br


text:
scipy.stats: generalized normal distribution

hi,
first time contributing to scipy for me, so please don't slap me for breaking any conventions. i'm trying to follow the rules.
this is an implementation of the generalized normal distribution for scipy.stats. this distribution is widely used in signal processing and in neuroscience.
the other distribution is the same, except that the lower half has been cut off. if i find the time, i might work out entropy/stats for it, but for now this is what i have.
i've done some manual testing. how do i include this in the unit tests/run the unit tests? also, i'd be glad to receive input/comments.
thanks!

Thanks for the contribution!
Looks reasonable at first sight.
A couple of things to do here:

Tests: Have a look at a recent https://github.com/scipy/scipy/pull/4533 on how to add this to the standart test loop --- you want to add an entry to  _distr_param.py.
Some more tests, if desired, go to tests/test_distributions.py. I'd add simple smoke tests comparing beta=1,2 to normal and exponential distributions.
It's a good idea to make sure  tests pass locally: see http://docs.scipy.org/doc/scipy/reference/hacking.html
Documentation: please add an explicit formula for the PDF to the docstring. It could be a good idea to model the docstring after docstrings of other distributions, including the magic str substitution keys, %(before_notes)s and all.
Vanity: please add yourself to Thanks.text

okay, added all of this, except additional tests. i haven't managed to run tests locally yet, and since i would probably have to play around to pick error bounds, it feels like i should leave it for now.

what do the standard distribution tests cover? i'm not sure i understand the structure of the distribution test suite.

The standard tests are consistency checks across the methods. For example moments, mean, variance are verified by numerical  integration with respect to the pdf. rvs is tested with kolmogorov smirnov test against the cdf, which has however relatively low power and only finds big discrepancies.

In addition to what Josef said: https://github.com/scipy/scipy/blob/master/scipy/stats/tests/test_continuous_basic.py#L91
is the main test loop over the distributions. Specific values of the shape parameters are taken from _distr_param.py.

Additional distribution is specific tests should go to https://github.com/scipy/scipy/blob/master/scipy/stats/tests/test_distributions.py
roughly speaking, it's a test class per distribution. You can have a look at for example https://github.com/scipy/scipy/blob/master/scipy/stats/tests/test_distributions.py#L505 which checks that genpareto agrees with the exponential distribution for a specific value of the shape parameter.

thanks for the pointers! i'll look at that when i find the time, and meanwhile wait for the standard tests to fail ;)
on a side note, regarding comparing to the normal/laplacian, i did some manual tests earlier and found the laplacian sf to be inaccurate. see my comment here:
https://github.com/scipy/scipy/issues/2509#issuecomment-77610250
so this would probably have to be fixed too to make that test pass ...

For the Laplace: I think it'd be best to fix it in a separate PR (I, for one, am/was certainly guilty of trying to squeeze unrelated things to a single PR, best don't do it).
Ideally, start that other PR (in a separate branch!) with a test which fails, this should go to test_distributions.py. Then fix the math like you suggested in that other issue, and send the PR :-). This way it's focused, it's easy to review, it's a clear improvement which is always welcome!
And while you're at it, have a look at the suggested format for the commit messages in the hacking.rst document I linked above: if needed, we'll help you rewrite those commit messages, but it's easier and quicker if they are already OK :-).

Thanks for your comments, I will work on them.
With regards to the test, I suspect the failed test (numerical derivative of cdf == pdf) is because with the parameter i set in _distr_param.py, the pdf has a kink at the median, which is where it gets evaluated.
i would like to run these tests locally to verify, but i can't compile scipy. it's missing some linear algebra dependencies. this is going to take a little longer …

done. the kink did turn out to be the problem. added further tests and fixed all the other points, too. i ran the unit tests locally, expecting that they will pass.
the only remaining thing is the commit messages, i couldn't find any documentation about that (in the hacking.rst).

I'm sure the moments of halfgennorm could be worked out, but this is definitely not required, not in this PR anyway. Looks quite good to me as is. I made a couple of small comments about the docs, could you address those.
Commit messages. the recommended format is listed here: ishttp://docs.scipy.org/doc/numpy/dev/gitwash/development_workflow.html
This also needs a rebase. Which would be a good opportunity to squash commits and rewrite the commit message. And this will hopefully trigger the TravisCI bot, not sure why it did notbrun this time.

i see. i'm having trouble working out how to squash the commits and do the rebase. my local repository is now messed up. i don't work with git very often. is there a way for you to help me with this? i would prefer to work things out and learn something about git, but i don't have the time to do that right now. if all else fails, i can send you a diff by email :)

Recovering from a mess can be easier than it seems to be:
$ git rebase --abort       # in case there is a botched rebase in progress
No rebase in progress?

# use the name of your branch instead of pr/4604
$ git checkout -b pr/4604-save   # so that you have a backup
$ git checkout pr/4604       # switch back

# This assumes the main scipy repo is called "upstream".

$git rebase upstream/master

# .... there's a trivial merge conflict in THANKS.txt, fix it in the editor
# (search for <<<< characters)

# Now on to squashing the commits: this opens your editor. Mark unnecessary
# commits as 's' instead of 'pick'; save and close the editor;
# the new editor window opens, write the new commit message, save and close
# the editor.

$ git rebase -i upstream/master

# check the result
$ git log

# rerun the tests
$ python runtests.py - s stats

# push the result (assuming your scipy fork is called 'origin')
$ git push origin <branch_name>

# yeah, this failed, check that the name of the branch is right... repeat with
# the -f flag (force-push)
$ git push origin <branch_name> -f

# check your PR on github, it's updated, hakuna matata

If something goes haywire, switch to backup, delete the original branch, clone the backup:
$ git checkout <backup>
$ git branch -D <PR branch>
$ git checkout -b <PR branch>  # you now have both your backup and it's copy with the name of the orig. branch

okay, i ended up doing things in a slightly less elegant manner, but your recipe helped a lot. thanks for the patience. let's see what travis says...

A branch with small style tweaks: https://github.com/scipy/scipy/compare/master...ev-br:pr/4604?expand=1
Can you take over commit https://github.com/scipy/scipy/commit/738b6a5c8ba0bab7abf82f4b6fced580a61ff696

LGTM

do i have to do anything?

I think it's ready. We typically leave things open for a while to let other people a chance to have a look if they want to. If there are no further comments for a reasonable amount of time, we'll take it as a silent yes and merge it.

Sweet.  Thanks for helping me out.

LGTM

OK rebased and merged in 11a0771. Thanks @jonycgn, @ev-br!

authors: ev-br gmcastil jonycgn josef-pkt rgommers


text:
Fix misleading wavelets/cwt example

extent is in the wrong order. if used as before the change, the
resulting image suggests that the best matching ricker wavelet
width (i.e. it's scale) is in (27, 28).
The widths, however, are related to the number of samples on the
time axis - in the examples case the time axis is 200 entries long
spanning from (-1, 1) seconds and contain a 7Hz signal.
This amounts 1 second being represented by 100 points on the t axis,
which - in turn - means a period covers 14.28 dots on the t axis.
According to the defintion of ricker wavelet the optimal scale
to match this signal would be 0.25 * period lenght or - in
this case - 3.57 as opposed to between 27 and 28
Reversing the axis conveys exactly this putting the best match
between 3 and 4

Tricked again by image plotting - extent is (bottom, top) while array goes into imshow (top, bottom). Thanks @andreas-kopecky

authors: andreas-kopecky rgommers


text:
Create RPM Spec for Fedora

Base on the spec file for vagrant-kvm

Not planning to do this myself, but someone else is welcome to.

It's packaged now.

repo: sciurus/vagrant-mutate


text:
Let's build s2i-core and s2i-base container each Tuesday at 1:00

This pull request builds s2i-core and s2i-base container each Tuesday at 1:00
@hhorak @frenzymadness @zmiklank Can you please take a look at it and review it?
Signed-off-by: Petr "Stone" Hracek phracek@redhat.com

Sorry for being lost, but why is this needed, and why rebuild specifically on Tuesdays? Is it a part of a chain-rebuilds?
Otherwise, it seems to me that the PR is functional.

Sorry for being lost, but why is this needed, and why rebuild specifically on Tuesdays? Is it a part of a chain-rebuilds?
Otherwise, it seems to me that the PR is functional.

Sorry for being lost, but why is this needed, and why rebuild specifically on Tuesdays? Is it a part of a chain-rebuilds?
Otherwise, it seems to me that the PR is functional.

During Friday's meeting with @frenzymadness @hhorak @pkubatrh We have decided, that we can use GitHub Action to do "chain rebuilds". It means, during Tuesday, we will build s2i-core and s2i-base containers, because they are in the same repository, and the day after or a couple of hours after s2i-core and s2i-base rebuilds we will initiate rebuilds of all our containers across Fedora, CentOS7, and CentOS Stream 9.

Oh, thanks for the explanation! :)

Looks good to me, let's verify that it works and then we can add dependant container images and see that they will build on top of this every week. Good job. Thank you!

authors: frenzymadness phracek zmiklank


text:
Could not load GDAL library

Hi there,
I get an error when trying to run the rails server with ffi-ogr:
/home/ronan/.rvm/gems/ruby-2.3.0/gems/ffi-ogr-0.1.0/lib/ffi-ogr.rb:324:in `rescue in module:FFIOGR': Could not load GDAL library (LoadError)
Would this be related to gdal removing ruby bindings?: https://trac.osgeo.org/gdal/wiki/GdalOgrInRuby
Thanks,
Ronan

Hello,
I don't think this is related because the bindings removed use swig and
this one use ffi.
--
Nabil Servais
nabil@eml.cc
Le Mar 31 janv 2017, à 18:03, Rónán Duddy a écrit :

Hi there,

I get an error when trying to run the rails server with ffi-ogr:

/home/ronan/.rvm/gems/ruby-2.3.0/gems/ffi-ogr-0.1.0/lib/ffi-
ogr.rb:324:in `rescue in module:FFIOGR': Could not load GDAL library
(LoadError)
Would this be related to gdal removing ruby bindings?:
https://trac.osgeo.org/gdal/wiki/GdalOgrInRuby
Thanks,

Ronan

— You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub[1], or mute the
thread[2].

Links:

https://github.com/scooterw/ffi-ogr/issues/16
https://github.com/notifications/unsubscribe-auth/AAwuoey1W3KgkUf8U79IOnx_FwtQbYX3ks5rX2lpgaJpZM4Ly5jz

I'll check it out my issue.. Cheers!

authors: blackrez ronanduddy

repo: scooterw/ffi-ogr


text:
Documentation: ISSUE_TEMPLATE.md

The purpose of an issue template is to guide Githubbers in providing detailed information when creating a new issue.
The main information I would like this issue template to include is as follows

Description of the feature, request or problem. Be specific. If it is a bug, what happened? What were you expecting to happen? If you are looking to make an improvement, outline what you are suggesting and how it might be achieved. You do not know how exactly to solve a problem or how to implement a new feature, but an idea can help to get the information started.

Here is an example of an issue template
https://github.com/thepracticaldev/dev.to/blob/master/.github/ISSUE_TEMPLATE.md
Ours does not need to be that detailed but think about what information you would like to know as a maintainer or would be helpful for contributors to know.

Hello, are you basically just looking for a markdown file with instructions on what to include for submitting bugs essentially? I think I can manage that!

hello, i will try to provide making template for issue template. May be try about feature and problem template.

authors: naufaldi scrabill tonytheleg

repo: scrabill/how-many-days-until-halloween


text:
OffsiteMiddleware TypeError: expected string or buffer

after I modified settings.py according to scrapy_splash documentation.
DUPEFILTER_CLASS = 'scrapy_splash.SplashAwareDupeFilter'
DOWNLOADER_MIDDLEWARES = {
    'scrapy_crawlera.CrawleraMiddleware': 610,
    'scrapy_splash.SplashCookiesMiddleware': 723,
    'scrapy_splash.SplashMiddleware': 725,
    'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware': 810,
}
SPIDER_MIDDLEWARES = {
    'scrapy_splash.SplashDeduplicateArgsMiddleware': 100,
}

This error started to appear
2018-01-08 18:15:13 [scrapy.utils.signal] ERROR: Error caught on signal handler: <bound method ?.spider_opened of <scrapy.spidermiddlewares.offsite.OffsiteMiddleware object at 0x7f475a7630d0>>
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
    result = f(*args, **kw)
  File "/usr/lib/python2.7/site-packages/pydispatch/robustapply.py", line 55, in robustApply
    return receiver(*arguments, **named)
  File "/usr/lib/python2.7/site-packages/scrapy/spidermiddlewares/offsite.py", line 65, in spider_opened
    self.host_regex = self.get_host_regex(spider)
  File "/usr/lib/python2.7/site-packages/scrapy/spidermiddlewares/offsite.py", line 58, in get_host_regex
    if url_pattern.match(domain):
TypeError: expected string or buffer

@aidiss Does it still happen? Could you share an URL affected by this issue?

authors: Gallaecio aidiss

repo: scrapy-plugins/scrapy-splash


text:
sort by modification date

would be very handy for some uses. e.g. notational velocity replacement.

+1

+1

+1

I created a fork of the plugin that enables sorting by access time: https://github.com/AndrewRadev/nerdtree/tree/sort-by-atime. The instructions on how to enable it and toggle it on or off, are at the top of the README.
I'm not making a PR, because it's a bit hacky. If Scrooloose wanted to implement the feature, I imagine he'd make a setting for a sorting callback or something, but I just toggle it with a global variable. It's also slow for large directories, since every single file needs to get stat-ed to get the access time, which means an extra shell-out. But, depending on your use case, you might find it useful.

@AndrewRadev it's exactly what I needed, thanks!!!

+1

Here's my workaround for NERDTree's lack of "timestamp sort":
:Ex /some/path/ (opens netrw in vertical split. Alternatively, :Se for horizontal split)
s (to sort by time)
r (reverse order -- look for "Sorted by time reversed")
Enter (open your file)
:NerdTreeFind (navigates NERDTree to the currently open file)

Implemented by #901

authors: AndrewRadev PhilRunninger XedMada hiberabyss rizjoj seanw2020 tadassce tebeka xinxingzhao

repo: scrooloose/nerdtree

license: WTFPL


text:
Add Gitter to docs

🗄 Docs report
Description
 A clear and concise description of the problem...
Add Gitter channel to the docs.
🔬 Minimal Reproduction
--
What's the affected URL?**

https://gitter.im/scullyio/community
Reproduction Steps**

--
Expected vs Actual Behavior**

--
📷Screenshot

🔥 Exception or Error

🌍  Your Environment
Browser info

Anything else relevant?

Close in #95

repo: scullyio/scully


text:
added dockerfile

build a docker container that ships the latest pip-installable version

The docker rapids-singlecell-deps and rapids-singlecell docker images work for me (you can get them from the docker hub and test if they work for you) They also work via singularity and all tests succeeded on our cluster. I also tried apptainer v1.2.3 but that did not work on our cluster (not sure if that is a problem of apptainer itself or specific to the installation on our cluster)
This is as far as I can get with the CI.
The github actions seem to do what they should, however they fail to push to the github container registry with a permission error (I guess because I am not allowed to push to this repository's container registry)
I guess the next steps would be:

[ ] merge this pull request and see if the CI works.
* if it does not work, I guess someone with developer or higher status in the repo should open a new pull request. I am happy to contribute there.
[ ] create a scverse account on docker hub and add pushing to docker hub to the CI workflow as documented here by github and here by docker

o.k. I got the docker pipeline to work for pull requests.
I changed the workflow so that the built images are not uploaded to the container registry for pull requests. I think this is sensible and it avoids permission problems.
For releases, the images should be uploaded to the github container registry (ghcr.io). This should not cause permission problems, since releases are triggered by someone with write permission to the repo. However, I have no way of testing this (but I will be happy to help with debugging in case of problems).
No Idea why the GPU-CI fails, but that should be unrelated to this PR.

Now we’re no longer testing if pushing works right?

Yes, you are right. This is as far as I can get with the permissions I have.
Pushing to the github container registry will work using the GITHUB_TOKEN, if the token permissions are set to permissive and if the action was not triggered by a public fork. Since this is a pull request from a public fork, we will not be able to test pushing to the github container registry from this pull request. This is the reason, why I don't think it makes a lot of sense to push to the container registry from pull requests. Testing pushing to the registry is only really necessary when you want to test/debug the github action (like we are at the moment).
I recommend the following approach in order to test pushing to the container registry:

merge this pull request
create a new branch test-container-push from within this repo, not from a public fork
temporarily activate pushing to the registry form pull requests by changing docker.yml as follows:

comment out all if: github.event_name == 'release' lines
replace all occurrences of push: ${{ github.event_name == 'release' }} with push: true

make sure that the GITHUB_TOKEN permissions are set to permissive
create a pull request from the test-container-push branch - since this is an internal branch, the GITHUB_TOKEN should have write access to the github container registry
pushing to the github container registry should work. If it doesn't, fix the problems within the pull request.
reverse the changes made in 3.
create a release which should trigger building and pushing a container to the github registry

An alternative would be to set up a token specifically for access to the container registry. But in that case, I would recommend to push to the docker registry instead, since the needed steps are very similar and then you have the image on docker hub, where more people will be able to find it.

I see now! Yeah, that makes sense, what do you think @Intron7?

I think this is a great idea. I can merge now if you are ok with it @flying-sheep

authors: Intron7 flying-sheep thawn


text:
Clarification on the format of input data

Hi,
Thank you for this awesome software! I am recently exploring peakVI. One thing came to my mind and I wish to clarify this with you. I am aware that the input data is AnnData format, and it is a sparse matrix. My question is: is this constantly a sparse matrix even when it is processed and inputted into the neural network and outputted from the decoder?
Yours sincerely,
Siqi Shen

No. We convert it into dense data before passing it into the network (see AnnTorchDataset for the source code).
The output of the networks is a matrix of distribution parameters estimated by the network. It is not sparse.

Just to add to what Valeh said, only minibatches of data are dense, so not all the data at once is made dense.

authors: adamgayoso sshen82 watiss

repo: scverse/scvi-tools


text:
docs: add myst parser

Related PR: https://github.com/scylladb/sphinx-scylladb-theme/pull/803
This PR replaces Sphinx's deprecated extension recommonmark with myst-parser, as per https://sphinx-theme.scylladb.com/stable/configuration/markdown.html#recommonmark-parser.
How to test
Check the docs build and display without errors.

cc/ @annastuchlik

repo: scylladb/care-pet


text:
Implement downgrading consistency retry policy

While downgrading consistency retry policy is generally deprecated among drivers (https://github.com/datastax/python-driver/blob/9a645c58ca0ec57f775251f94e55c30aa837b2ad/cassandra/policies.py#L895-L910) and not recommended unless really sure about all its pitfalls, there are some valid use cases for the policy, so let's implement it.

I believe that implementing such a policy requires some breaking changes in RetryDecision struct: it must contain also new CL info:
pub enum RetryDecision {
    RetrySameNode(Consistency),
    RetryNextNode(Consistency),
    DontRetry,
}

...and driver shall respect that CL during retries.
Do you agree with that? @psarna @cvybhu

I thought about that and I also suspected we need to extend the generic struct for handling this policy - I'm fine with that, it's only effectively used internally

The change will affect users that have implemented their own RetryPolicy, but I guess we suggest them dealing with that. After all, the change will only require them to reuse the CL received in QueryInfo.
BTW, what shall a policy do in case of LegacyConsistency::Serial(_) being returned?

authors: psarna wprzytula

repo: scylladb/scylla-rust-driver


text:
Memory leak with Qt5.12

Hi,
I am trying your wrapper with Qt5.12, and encountered a memory leak. This is due to imageFromVideoFrame() in SBarcodeDecoder.cpp (Line 188)
There is memory allocated for the frame to be copied, but QImage do not take ownership of the memory, so it is never released.
QImage provides a handler mecanism, intended to free the memory when the last intance of QImage using this memory is destroyed.
You need to create the handler to cleanup the memory, and provide it to the QImage when creating it, with the pointer to the memory.
Also, the memory must be allocated only when it is need, i.e. when imageFormat == QImage::Format_Invalid
Here is the modified code :
void imageCleanupHandler(void *info)
{
    delete[] (uchar*)info;
}

QImage SBarcodeDecoder::imageFromVideoFrame(const QVideoFrame &videoFrame)
{
    QImage::Format imageFormat = videoFrame.imageFormatFromPixelFormat(videoFrame.pixelFormat());
    if(imageFormat == QImage::Format_Invalid){
        uchar* ARGB32Bits = new uchar[(videoFrame.width() * videoFrame.height()) * 4];
        switch(videoFrame.pixelFormat()){
            case QVideoFrame::Format_YUYV: qt_convert_YUYV_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_NV12: qt_convert_NV12_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_YUV420P: qt_convert_YUV420P_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_YV12: qt_convert_YV12_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_AYUV444: qt_convert_AYUV444_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_YUV444: qt_convert_YUV444_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_UYVY: qt_convert_UYVY_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_NV21: qt_convert_NV21_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_BGRA32: qt_convert_BGRA32_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_BGR24: qt_convert_BGR24_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_BGR565: qt_convert_BGR565_to_ARGB32(videoFrame, ARGB32Bits); break;
            case QVideoFrame::Format_BGR555: qt_convert_BGR555_to_ARGB32(videoFrame, ARGB32Bits); break;
            default: break;
        }

        return QImage(ARGB32Bits,
                      videoFrame.width(),
                      videoFrame.height(),
                      QImage::Format_ARGB32,
                      imageCleanupHandler,
                      ARGB32Bits);
    }

    return QImage(videoFrame.bits(),
                  videoFrame.width(),
                  videoFrame.height(),
                  imageFormat);
}

These modifications solve the memory leak problem for me.
Sorry I don't have the time to create a proper PR, but I thought it might be usefull for others.

I'm closing this issue as it no longer applies.

authors: BartoszSkorka Inounx

repo: scytheStudio/SCodes


text:
Source for 13.1.1

Same source and details as #35

contact The Canadian Disaster Database team

CCD team has been contacted.

duplicate of #35


text:
Change NOX and ONOS links to absolute link

NOX and ONOS links have missing http:// header and hence it is
parsed by github as relative links. Also the pox link does not work.

Thanks you for your contribution.

repo: sdnds-tw/awesome-sdn


text:
Adding a Deployment action to upload a Collection to Ansible Galaxy

https://github.com/artis3n/ansible_galaxy_collection
This action automatically uploads a new version of a Galaxy Collection to Ansible Galaxy upon a published release in a Github repo. This is a new feature in Ansible 2.9.

@artis3n your changes have been merged, thanks for your contribution 👍

repo: sdras/awesome-actions


text:
Vim Visual Mode blanks out selected text if it's highlighted

Okay, so here's a weird one for you.
If you open up vim in the integrated terminal, and highlight some text via Vim's visual mode that isn't styled, it'll vanish (I think because it turns the text the same color as the background, not that the highlight is covering it up though I can't be sure).
I made a video to illustrate the problem https://cthos-backups.nyc3.digitaloceanspaces.com/images/vim_visual_mode.mp4
And here are some screenshots:
Before Visual mode highlighting:

After Highlighting:

Oh yuck! I'm so sorry! I'll get this fixed as soon as I can, that's a bug on my part.

No need to apologize! I'll start learning how VSCode theming actually works so I can give you a PR instead of just opening issues. 😸

Hi! I think I might have just fixed it- can you please reload the extension to the latest version and tell me how it is? Thanks!

Looks like it's still happening on 0.2.2:

This is also just on Vim's default colorscheme, changing it to ron doesn't have the same issue - the default clears out the normal color so I'm not really sure what's going on there.

@sdras - Actually, I don't think this is the theme's fault - It's also happening on the default themes.
I'm really sorry I should have checked that first.

For reference I think the problem is that Vim sets the highlight color by default to whatever the background color of the terminal is, and there doesn't appear to be a way to deal with that - I'm going to go check the VS Code repo and see if there's an issue for this already.

authors: cthos sdras

repo: sdras/night-owl-vscode-theme


text:
Change Model.deletePerson(ReadOnlyPerson) to Model.deletePerson(Index)

Command has no need to know which ReadOnlyPerson is being involved in the deletion process. Furthermore, we should standardise with other API in Model such as #updatePerson which takes in an index as well.

References to issue #446 .

Issue closed (see #466)


text:
Write CMD specification

SeaJS 遵循的规范，是 CommonJS/Modules 1.1.1 + NodeJS/Modules + 修改的 Wrappings 规范
得重新整理一下，提交到 CommonJS 社区。命名为 Common Module Definition
需要做的事：

重读 Modules 1.1.1 规范
研究 NodeJS 里 Modules 的细节
再读 Wrappings 规范
再研究 CommonJS/Modules 2.0 draft 规范
书写 CMD 规范并推广讨论

取消，先解决实际需求。跟进 Node 社区的一些 api 变化。

repo: seajs/seajs


text:
refactor(IMSession): 重构自动退群逻辑

收集了之前的使用者的问题后，总结原本的鲨群机的策略问题如下：

后台开着一个线程，线程豹炸可能导致海豹豹炸
由于锁机制，似乎用户无法进行热修改（必须重启海豹才能改单次退群时间）
对于时间戳=0的情况，会错误进行退群，引发麻烦
偶发退群莫名其妙消失的问题

针对上述问题，重构了鲨群机，大概方向不变，而修改代码如下原理：

后台不再维持一个线程，而是启动一个每x分钟调度一次的调度。
调度内首先先寻找要退的群，直到要退的群数量足够用户配置的数量（或等到群遍历完），忽略时间戳=0的情况
启一个线程，该线程只管退群，并等待x（从8秒到11秒取一个随机值）秒。
对线程进行recover，豹错后保证能继续执行，而不影响正常运行
补充部分日志。

Work on your machine?

Have a little try, seems works well.

repo: sealdice/sealdice-core


text:
Update build configuration

The build configuration of this project is outdated and may no longer work.
This pull request will be merged automatically if there are no conflicts.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

repo: sealsystems/node-connect-service


text:
Update build configuration

The build configuration of this project is outdated and may no longer work.
This pull request will be merged automatically if there are no conflicts.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

repo: sealsystems/node-tlscert


text:
Wrap modal contents in .seam-components class

          Will this make integration difficult for our consumers? Do we need to document this or can we find a solution that will wrap the model in the right class?

Originally posted by @razor-x in https://github.com/seamapi/react/pull/47#discussion_r1184397047
To avoid consumers from having to wrap modals in .seam-components, we'll automatically wrap all components in this class again.

How about this solution?

Remove class from provider.
Add to all top level components.
Remove from story dialog components.

Documented here https://github.com/seamapi/react/pull/477

authors: mikewuu razor-x

repo: seamapi/react


text:
fix: Use version of fake-devicedb that supports proxied image urls

https://github.com/seamapi/react/issues/646 was fixed upstream, we want to use the new version that contains the fix

Let's do all new PRs off of and back into the beta branch

authors: louis-pre razor-x


text:
Using macros in Ca65

If I am using ca65 and I use a macro, the first line shows no problem, but the second line shows the macro as a duplicate symbol.
For example.
BEGIN_FUNC _func1
                  :
END_FUNC

BEGIN_FUNC _func2
                  :
END_FUNC

If I look at the source code where I used these macros, I will see that
the second BEGIN_FUNC and END_FUNC will be marked with a duplicate symbol.
It would be nice to have a way to avoid being flagged as a problem in this case.

Thanks for the report.  Can you send a little longer code example -- something I can paste into VSCode and see the problem immediately?  Are BEGIN_FUNC and END_FUNC your macros?  I'm happy to fix bugs.  Code examples make it easier to know exactly what the problem is.

Yes, BEGIN_FUNC and END_FUNC are my macros.

.macro BEGIN_FUNC func
    .scope func
    .export func
    .ident(.string(func)) :

    .if ::CONFIG_DEBUG_ZP = 1
        DEBUG_LOG "function %s",.string(func)
    .endif
.endmacro

.macro END_FUNC
    DEFINE_RESERVED_ZP
    .endscope
.endmacro

These macros are for managing the zeropage variables used by functions.
The best thing would be to unpack and show the contents of the macros like in C, but it would be nice to not just get a warning.

I see a couple of problems that I can fix, but not exactly what you're seeing.

The .scope without .endscope in BEGIN_FUNC is getting reported as a dangling .scope when it shouldn't be.  Similar problem in END_FUNC with the .endscope.
The BEGIN_FUNC and END_FUNC invocations are not being reported as duplicate symbols as you describe.  _func being reported as an unknown symbol is something I can fix.  Is the file that uses the macros recognized as CA65? (rpw65 CA65 in the lower right corner?). Is the file including the file containing the macros?

The macro is being defined in a different file.

CA65 is showing in the lower right corner

Thanks for the extra information.  I think the dangling .scope/.endscope issue I mentioned is causing the macros to not parse correctly which causes their invocation to fail.  I'll fix that problem and see if the problems you're seeing go away.


text:
Basic auth shortcut encodes only password, should it encode the whole?

I was looking into sources out of curiosity and spotted curios thing.
According to RFC basic auth should form <username>:<pass> and be encoded using base64.
Am I missing something or is there alternative scheme for basic auth?
Sorry for stupid question, I'm not well read on HTTP protocol

Yep, looks like that is incorrect. It is supposed to base64 encode the full header value.

oh, ok I'll make PR to correct then

authors: DoumanAsh seanmonstar

repo: seanmonstar/reqwest


text:
PyTelTools

Using pyTelTools functions (fastest i/o available)

Hi Thomas,
I see some inconsistencies in the Selafin generated file, I think this is due to 2 reasons:

it forces to write double precision (while reading in single precision) but it does not update some size
it does not include my improvments in writing (I will report my commit) which also convert some float32/float64 if necessary

I will try to provide you a correction in the next hours.

authors: lucduron tomsail

repo: seareport/xarray-selafin

license: Unlicense


text:
Focus doesn't go to commit message input box after selecting an emoji

I am on the VSCode Insiders Preview version but, as the title says, pressing Enter on the emoji selection doesn't automatically move the focus back to the commit message text box. Not a major issue but would be nice to see fixed.
It does seem to work randomly from time to time but like 95% of the time it defaults to the code window instead.

Hi @megasanjay
This problem has been encountered before, but there was no code change, just waiting for VSCode to update to fix it.

+1 here

Still encounter this bug even in vscode version 1.82.0

authors: andywampir josegutierro megasanjay seatonjiang

repo: seatonjiang/gitmoji-vscode


text:
Mark spare parts in part list

Some parts are marked as spare parts. Check set 850-1 or 856-1 to see spare parts. Fixed isSpare property. Show partNum and not partId like on rebrickable homepage.

LGTM. Thanks again!

LGTM. Thanks again!


text:
support disable default-level setting

Add  attribute data-disabel-default-lable = true  to remove default-option ’Select One’

Thanks for the commit, however you can currently achieve the same thing by simply using space for the data-default-label attribute, just like so:
data-default-label=" "

authors: Guoxweii sebastiansulinski

repo: sebastiansulinski/cascading-dropdown


text:
Updated general/mod.rs since documentation is not compiling with nightly

there should be no visible changes in the compiled documentation

Thanks!

authors: sebcrozet wiep

repo: sebcrozet/alga


text:
SIMD integration

Ohai!
Are you interested in having a SIMD support? Because I truly am, and I might work on it and push a PR if you feel it’s an interesting feature to add to nalgebra.

@phaazon are you still interested in doing this? I think @sebcrozet has been busy lately, but I would not mind looking at your code and eventually merging it.
I assume, this is not going to change any public API, but only change implementation details to make use of SIMD, right? It would be nice to get a bit more into detail what you have in mind.

Hi.
No, I’m not. I should have updated the issue. nalgebra has changed too much and I don’t like the new design (the infinite type aliasing based on Row or I don’t remember what. I migrated my codebase to cgmath.

I've actually been working a lot on performances of nalgebra lately (so much that I did not maintain very actively existing issue/PRs). My observations is that explicit SIMD integration is currently not worth the effort so I'd prefer to postpone this until SIMD becomes stable in rust. I'll communicate more about this next week but the next major version of nalgebra will be as fast as the SIMD version of cgmath (except that we don't need to use SIMD intrinsics nor the simd crate).

I’ll be waiting the benchmarks ;)

What is the un-optimized performance like though? The advantage of explicit simd might be that debug builds might be faster.

@brendanzab You're right, the performance difference is significant for debug builds (SIMD cgmath is faster):
test lowdim::inverse::mat2_inverse_cgmath                     ... bench:         618 ns/iter (+/- 24)
test lowdim::inverse::mat2_inverse_na                         ... bench:       2,293 ns/iter (+/- 1,027)
test lowdim::inverse::mat3_inverse_cgmath                     ... bench:       2,282 ns/iter (+/- 768)
test lowdim::inverse::mat3_inverse_na                         ... bench:       4,793 ns/iter (+/- 853)
test lowdim::inverse::mat4_inverse_cgmath                     ... bench:      13,300 ns/iter (+/- 404)
test lowdim::inverse::mat4_inverse_na                         ... bench:      17,899 ns/iter (+/- 2,758)
test lowdim::product::mat2_mul_mat2_cgmath                    ... bench:         848 ns/iter (+/- 156)
test lowdim::product::mat2_mul_mat2_na                        ... bench:       5,468 ns/iter (+/- 426)
test lowdim::product::mat2_mul_vec2_cgmath                    ... bench:         499 ns/iter (+/- 111)
test lowdim::product::mat2_mul_vec2_na                        ... bench:       2,924 ns/iter (+/- 318)
test lowdim::product::mat3_mul_mat3_cgmath                    ... bench:       1,857 ns/iter (+/- 27)
test lowdim::product::mat3_mul_mat3_na                        ... bench:      12,486 ns/iter (+/- 1,639)
test lowdim::product::mat3_mul_vec3_cgmath                    ... bench:         636 ns/iter (+/- 12)
test lowdim::product::mat3_mul_vec3_na                        ... bench:       4,378 ns/iter (+/- 165)
test lowdim::product::mat4_mul_mat4_cgmath                    ... bench:       2,126 ns/iter (+/- 639)
test lowdim::product::mat4_mul_mat4_na                        ... bench:      26,624 ns/iter (+/- 5,408)
test lowdim::product::mat4_mul_vec4_cgmath                    ... bench:       1,123 ns/iter (+/- 108)
test lowdim::product::mat4_mul_vec4_na                        ... bench:       7,282 ns/iter (+/- 1,195)
test lowdim::product::vec2_dot_vec2_cgmath                    ... bench:         155 ns/iter (+/- 27)
test lowdim::product::vec2_dot_vec2_na                        ... bench:         982 ns/iter (+/- 113)
test lowdim::product::vec3_dot_vec3_cgmath                    ... bench:         121 ns/iter (+/- 29)
test lowdim::product::vec3_dot_vec3_na                        ... bench:       1,439 ns/iter (+/- 133)
test lowdim::product::vec4_dot_vec4_cgmath                    ... bench:         119 ns/iter (+/- 17)
test lowdim::product::vec4_dot_vec4_na                        ... bench:       1,898 ns/iter (+/- 183)

Here is the same benchmark with optimizations turned on:
test lowdim::inverse::mat2_inverse_cgmath                     ... bench:          15 ns/iter (+/- 0)
test lowdim::inverse::mat2_inverse_na                         ... bench:          15 ns/iter (+/- 0)
test lowdim::inverse::mat3_inverse_cgmath                     ... bench:          38 ns/iter (+/- 0)
test lowdim::inverse::mat3_inverse_na                         ... bench:          37 ns/iter (+/- 0)
test lowdim::inverse::mat4_inverse_cgmath                     ... bench:          84 ns/iter (+/- 1)
test lowdim::inverse::mat4_inverse_na                         ... bench:          70 ns/iter (+/- 1)
test lowdim::product::mat2_mul_mat2_cgmath                    ... bench:           4 ns/iter (+/- 0)
test lowdim::product::mat2_mul_mat2_na                        ... bench:           4 ns/iter (+/- 0)
test lowdim::product::mat2_mul_vec2_cgmath                    ... bench:           0 ns/iter (+/- 0)
test lowdim::product::mat2_mul_vec2_na                        ... bench:           1 ns/iter (+/- 0)
test lowdim::product::mat3_mul_mat3_cgmath                    ... bench:          13 ns/iter (+/- 0)
test lowdim::product::mat3_mul_mat3_na                        ... bench:          13 ns/iter (+/- 0)
test lowdim::product::mat3_mul_vec3_cgmath                    ... bench:           5 ns/iter (+/- 0)
test lowdim::product::mat3_mul_vec3_na                        ... bench:           5 ns/iter (+/- 0)
test lowdim::product::mat4_mul_mat4_cgmath                    ... bench:          21 ns/iter (+/- 0)
test lowdim::product::mat4_mul_mat4_na                        ... bench:          20 ns/iter (+/- 0)
test lowdim::product::mat4_mul_vec4_cgmath                    ... bench:           6 ns/iter (+/- 0)
test lowdim::product::mat4_mul_vec4_na                        ... bench:           6 ns/iter (+/- 0)
test lowdim::product::vec2_dot_vec2_cgmath                    ... bench:           0 ns/iter (+/- 0)
test lowdim::product::vec2_dot_vec2_na                        ... bench:           0 ns/iter (+/- 0)
test lowdim::product::vec3_dot_vec3_cgmath                    ... bench:           0 ns/iter (+/- 0)
test lowdim::product::vec3_dot_vec3_na                        ... bench:           0 ns/iter (+/- 0)
test lowdim::product::vec4_dot_vec4_cgmath                    ... bench:           0 ns/iter (+/- 0)
test lowdim::product::vec4_dot_vec4_na                        ... bench:           0 ns/iter (+/- 0)

I will post the source code of those benchmarks at the same time as my communication next week.

Okay, given that optimizations take care of this any way, I would question, whether the additional code complexity is worth adding the explicit SIMD code.

@aepsil0n I don't think the additional code complexity is worth it for now. I'm closing this for now. We might want to reexplore the question when SIMD becomes stable in Rust.
Here is the communication I was mentioning earlier in this thread: #274 .

Hey, not sure if it's alright to revive this issue or if I should be posting a new one, but I wanted to poke this topic after this much time has passed. I've recently run some benchmarks that have appeared earlier in this thread again, and the performance difference between this crate and cgmath is still staggering:
benchmarks
Especially on opt level 0, the difference is pretty huge. I've been working with the amethyst engine a bit, and we've been getting pretty significant performance drops in debug mode, which is probably related to this.
SIMD hasn't fully stabilized, but it's come a long way and I feel like it would be time to take another look at this.

Thank you for sharing your concerns @happenslol! I have created a new issue to discuss this.

authors: aepsil0n brendanzab happenslol phaazon sebcrozet

repo: sebcrozet/nalgebra


text:
Sidebar events section clipping

Chrome 57 / Wndows 8.1

Unable to recreate in:

Chrome 55.0.2883.87 / Windows 10
Edge 38.14393 / Windows 10
Safari 10.0.2 (12602.3.12.0.1) / macOS 10.12.2
Safari Technology Preview Release 20 (Safari 10.1, WebKit 12603.1.16) / macOS 10.12.2
Chrome 56.0.2924.51 / macOS 10.12.2

Might be a font issue? Its not the same as on my and I believe.

Sorry, to clarify, do you have the same issue?
It could well be missing, but I'm not sure. Hard to pin down when I can't even recreate the bug. Looks like font-size is also off.
Made some recent changes that affect event formatting so I'll check with the user again.

No I menat that the person who made the screenshot might be missing the font used by the subreddit, since it looks different in style and size from what I see on my end.

Gotcha, had to check!

Well it turns out the user had the Stylish extension installed with an old rule interfering with the sub's styling.

authors: Jawoll sebj

repo: sebj/r-CompetitiveOverwatch-CSS


text:
serving docker部署，能相互ping通，curl报错

alice的serving.config
{
  "id": "test_service_id",
  "serverConf": {
    "featureMapping": {
      "v24": "x24",
      "v22": "x22",
      "v21": "x21",
      "v25": "x25",
      "v23": "x23"
    },
    "host": "0.0.0.0",
    "servicePort": "9010",
    "communicationPort": "9110",
    "metricsExposerPort": 10306,
    "brpcBuiltinServicePort": 10307
  },
  "modelConf": {
    "modelId": "glm-test-1",
    "basePath": "/tmp/alice",
    "sourcePath": "examples/alice/glm-test.tar.gz",
    "sourceSha256": "c6308af488bcd6c54a48a145af17aa209dec463b5cb44d83c6b58195818c10a0",
    "sourceType": "ST_FILE"
  },
  "clusterConf": {
    "selfId": "alice",
    "parties": [
      {
        "id": "alice",
        "address": "alice-serving:9110"
      },
      {
        "id": "bob",
        "address": "bob-serving:9111"
      }
    ],
    "channelDesc": {
      "protocol": "http"
    }
  },
  "featureSourceConf": {
    "mockOpts": {}
  }
}

bob的serving.config
{
  "id": "test_service_id",
  "serverConf": {
    "featureMapping": {
      "v6": "x6",
      "v7": "x7",
      "v8": "x8",
      "v9": "x9",
      "v10": "x10"
    },
    "host": "0.0.0.0",
    "servicePort": "9011",
    "communicationPort": "9111",
    "metricsExposerPort": 10308,
    "brpcBuiltinServicePort": 10309
  },
  "modelConf": {
    "modelId": "glm-test-1",
    "basePath": "/tmp/bob",
    "sourcePath": "examples/bob/glm-test.tar.gz",
    "sourceSha256": "d45d34feae42d663875569c206ac20263480300a40e34deda4037e01aeb9b2f8",
    "sourceType": "ST_FILE"
  },
  "clusterConf": {
    "selfId": "bob",
    "parties": [
      {
        "id": "alice",
        "address": "alice-serving:9110"
      },
      {
        "id": "bob",
        "address": "bob-serving:9111"
      }
    ],
    "channel_desc": {
      "protocol": "http"
    }
  },
  "featureSourceConf": {
    "mockOpts": {}
  }
}

alice的docker-compose.yaml
version: "3.8"
services:
  serving:
    cap_add:
      - NET_ADMIN
    command:
      - /root/sf_serving/secretflow_serving
      - --serving_config_file=/root/sf_serving/conf/serving.config
      - --logging_config_file=/root/sf_serving/conf/logging.config
      - --trace_config_file=/root/sf_serving/conf/trace.config
    restart: always
    image: secretflow/serving-anolis8:latest
    container_name: alice-serving
    networks:
      - sf-network
    ports:
      - 4590:9010  # 服务端口
      - 9110:9110  # 通信端口
      - 10306:10306  # metrics端口
      - 10307:10307  # brpc端口
    volumes:
      - ./serving.config:/root/sf_serving/conf/serving.config
      - ./logging.config:/root/sf_serving/conf/logging.config
      - ./trace.config:/root/sf_serving/conf/trace.config
      - ./glm-test.tar.gz:/root/glm-test.tar.gz

networks:
  sf-network:
    external: true

bob的docker-compose.yaml
version: "3.8"
services:
  serving:
    cap_add:
      - NET_ADMIN
    command:
      - /root/sf_serving/secretflow_serving
      - --serving_config_file=/root/sf_serving/conf/serving.config
      - --logging_config_file=/root/sf_serving/conf/logging.config
      - --trace_config_file=/root/sf_serving/conf/trace.config
    restart: always
    image: secretflow/serving-anolis8:latest
    container_name: bob-serving
    networks:
      - sf-network
    ports:
      - 4591:9011  # 服务端口
      - 9111:9111  # 通信端口
      - 10308:10308  # metrics端口
      - 10309:10309  # brpc端口
    volumes:
      - ./serving.config:/root/sf_serving/conf/serving.config
      - ./logging.config:/root/sf_serving/conf/logging.config
      - ./trace.config:/root/sf_serving/conf/trace.config
      - ./glm-test.tar.gz:/root/glm-test.tar.gz

networks:
  sf-network:
    external: true

两个容器均已能正常运行，但是两个节点似乎没法相互连接，curl也报错connected failed
报错如下：

看下docker容器配置和网络配置。
docker inspect  {name}
docker network inspect  sf-network

换了台服务器就OK了，谢谢技术老师

repo: secretflow/serving


text:
How to Pass ArrayList Object as Function Argument in java

Proposed title of article
How to Pass ArrayList Object as Function Argument in java
Introduction paragraph (2-3 paragraphs):
The ArrayList class in Java is a resizable array, which means it can expand and decrease in size dynamically based on the values we add or remove from it. The java.util package contains it.
To resolve your issue, use the new keyword to create a new ArrayList and then add all of the objects, or use the clone() method. This is due to the fact that passing an ArrayList as a parameter allows the called method to modify the contents of the array. References to Objects are stored in the ArrayList.
Key takeaways:

How Java is passed by Value
Writing an ArrayList method
Array and ArrayList

References:
N/A

Hello @SteveadeNick  and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

An arry list is passed to a function as illustrated below
public static void test(ArrayList lst){
    //do something here

    System.out.println(lst.toString()) ;

}

Feel free to suggest another topic. Thanks

authors: LinusMuema SteveadeNick WanjaMIKE


text:
[API] Running Laravel migrations on an existing database.

Topic Suggestion.
Proposed title of article
Running Laravel migrations on an existing database
Proposed article introduction
Let's imagine your company needs to make a change and use Laravel from the raw PHP technology, or it needs to shift from another framework to Laravel. In addition to that, there is an existing database with thousands, if not millions, of records. Would you delete the database first and run fresh Laravel migrations? Or would you create fresh migrations and do some fragile data exportations? You can give up as well and advise the company on the complexity of the issue, right?
All the options given are not suitable and we need a way to carefully run our migrations on the existing tables. In this article, we will learn how to do that without interfering with any preexisting data. We will run our migrations on a live hosted database using a sample table without the need of installing any package.
Key takeaways

Running migrations on an existing database.
Running the migrate command in scripts rather than the terminal.
Configuring the .htaccess files for our Laravel application in the live environment.

Article quality
It will definitely provide more information about running terminal commands in the scripts and .htaccess file configurations for the live environment. Additionally, no package will be used.
References
N/A

Could you please expand upon how your content will differ from what is already available through other website and documentation? We lean towards content that offers an original viewpoint/approach around programming-centric topics.

Greetings @LinusMuema. The official documentation only covers running migrations on a 'freshly' created database. That is ,if you are creating one for the first time. But in this scenario, I'm looking at a case where there is an existing database, an already created database with records. Also, we will be deploying it on a live server(Apache), then configure the .htaccess files.

Okay...awesome

authors: Agusioma LinusMuema


text:
How to Deploy Simple ERC20 Token on Polygon Mumbai using Defender Relay by OpenZeppelin

Topic Suggestion
How to Deploy Simple ERC20 Token on Polygon Mumbai using Defender Relay by OpenZeppelin
Writing sample(s):

Blcockchain series
personal blog

Proposal Submission
Proposed title of the article
How to Deploy Simple ERC20 Token on Polygon Mumbai using Defender Relay by OpenZeppelin
Proposed article introduction
A lot of people in tech are currently learning web3 especially smart contract development with solidity as their main programming language. In this article, I intend to write how to write an ERC20 Token and deploy it on Polygon Mumbai Testnet using the Relay Defender by Open-Zeppelin, hardhat as a development environment, and Alchemy's RPC for PolygonMumbai
Key takeaways

setting up a hardhat development environment and installing required dependencies
getting an RPC Link on Alchemy and API_KEY & Secret_Key on Relay Defender
configuring the RPC link, API_KEY & Secret_Key on hardhat.congif file & compiling
writing ERC20 Token
deploying ERC20 token successfully to Relay Defender and confirming transactions on Polygonscan

Article quality
the article is unique as the blockchain space is still growing and there are few resources linked to it. The article will include useful links and screenshots to help a user
References
I'll use the sites & documentation of hardhat, Alchemy, OpenZeppelin and Relay Defender

Thank you for submitting your topic suggestion. There seems to be many articles that already cover this topic. Specifically this. Can you tell me how yours will build upon them and be unique to add value to our readers?

I'm going to write the smart contract using ERC20 contracts and deploy it to Mumbai test-net using the Alchemy RPC and the Open-zeppelin's Defender Relay that specific sample article only deploys to Mumbai but doesn't use Defender Relay

@jebitok-dev
Closing due to inactivity - if you'd like to continue working on the topic. Please let us know.


text:
I have some problems with footnotes and graph

First, I noticed that the footnotes in the text didn't show up properly, but rather as normal text and couldn't jump hyperlinks.

Secondly, my graph moudle has not been able to load, but I have not found any difference compared to the code.
But what I noticed is that unlike your demo web page, the "Open-graph" button flashed for a moment and then disappeared.
Not just my folder, but also the demo folder.

nginx 1.21.0
PHP 7.4.0

Hi,
Regarding:

iam not sure what you mean, as i cant read Chinese. Please provide me a demo file that i can compare it between Obsidian and Perlite

this usually happens when there is no metabase.json in the root directory of your vault

the example of footnote...
Example.md
no, I have put it there and even just put your demo folder, but it does not work, too

please take a look at the new created issue for this: #9
at the moment this can only be implemented by turning the safeMode off (not recommended) and including the ParsedownExtra.php. If you want to do this, you need to do this by yourself (only 3 lines of code needed to be adjust). but i wont implement it in this project yet.
regarding your graph problem, without an error message its really hard to say what the problem is. only thing what i can suggest you is to make sure your folder structure is correct and the metabase.json is on the correct place.

finally you can try to set your root folder hardcoded in the helper.php like this:

Good! I will check my file structure as soon as possible

from you screenshot i can see that you root folder is actually "Notes" and not "Demo". So this might be the problem.
for testing purpose, replace your Notes folder with the Demo folder and the graph should be available.

Wow! You've found blind spots! Indeed he works well!

glad you have fixet it, you are welcome!


text:
Consistency Fix

Add the space around "=" for consistency with other sysctls

you missed the one below it :smile:

repo: secureblue/secureblue


text:
Styling not supporting features like :hover

I am finding that the style property on reflex-antd components seems to not support features like :hover.
In this very simple example, I am attempting to style some card components to change their background color when hovered. With native reflex components, I can do this either via the style property, or using their special pseudo styles. However trying the same approach on antd components seems to not apply the hover styling.
def index() -> rx.Component:
    return rx.flex(
        rx.card(
            background='red',
            style={':hover': {'background': 'yellow'}},
            width='100px'
        ),
        rx.card(
            background='red',
            _hover={'background': 'yellow'},
            width='100px'
        ),
        display.card(
            background='red',
            style={':hover': {'background': 'yellow'}},
            width='100px'
        ),
        display.card(
            background='red',
            _hover={'background': 'yellow'},
            width='100px'
        ),
    )

Sorry, I am not well at css; I had try use tailwind, it work in reflex-antd, like this:
 display.card(
                rx.list_item("Card content"),
                rx.list_item("Card content"),
                rx.list_item("Card content"),
                title=rx.text(
                    "Small size card"
                ),
                size="small",
                extra=rx.link(
                    "More",
                    href="/demo/badge",
                ),
                width=300,
                class_name='bg-violet-500 hover:bg-violet-600',
            ),

class_name='bg-violet-500 hover:bg-violet-600' is worked:

authors: TheRideout seewindcn

repo: seewindcn/reflex-antd


text:
3D Secure doğrulamasından sonra "00" kodu dönüyor ama success false

Selamlar,
.net Core 3.1 ile proje geliştiriyordum 3d secure sayfasından sonra "00" kodu dönüyor approved mesajı ile ama success değeri "false" sebebi ne olabilir ? Nestpay ile test ediyorum.

Hangi bankayi kullanıyorsunuz?

İşbankası

NestPayPaymentProvider.cs#L85 işlem sonucunu buradaki gibi kontrol etmelisiniz.

Burada o fonksiyonu kullanıyorum sanırım.

Ama IFormCollection dışında herhangi bir değer göndermiyorsun.

VerifyGatewayResult içini doldurarak yolladım fonksiyona ama "not authenticated" hatası döndürdü bu sefer hiç 3d kodu istemeden.

Gönderdiğiniz bilgilerde bir yanlış olabilir. Debug ederek gönderilen bilgilerin doğruluğunu kontrol edin.

Tekrardan bilgileri kontrol edip düzenledim bu sefer 3d doğrulama ekranını geçtim fakat aldığım response şu şekilde. Çok ilginç bir şekilde Error code "00" başarılı anlamına geliyor. "Approved" ve "Authenticated" mesajını da alıyorum ama success değeri false.

Şöyle bir durum var nestpayin entegrasyon dökümanını kontrol ettiğimde "proccessType" keyi "islemtipi" olarak  gözüküyor acaba bu yüzden sorun oluyor olabilir mi ? Form da proccesstype olarak post ediyoruz.

authors: lumixus sefacan


text:
Add support for units (Unitful and DynamicQuantities)

This PR address the feature request in #22.
We strip off the units for columns and display them as labels (unless user has provided labels, in which case they are ignored).
The units are displayed in dark grey and in brackets. If the user wants a different style, they can as always just pass in the labels themselves.
Supports both Unitful and DynamicQuantities, and even mixtures of both packages on different columns.
using Unitful # or DynamicQuantities
df = DataFrame((;a=randn(10000)*u"m",b=randn(10000)*u"m/s"))
pairplot(df)

Maybe adopt [unit] instead of (unit)? This is the notation that most papers
adopt as far as I know.
Em ter., 28 de nov. de 2023 16:19, William Thompson <
@.***> escreveu:

This PR address the feature request in #22
https://github.com/sefffal/PairPlots.jl/issues/22.
We strip off the units for columns and display them as labels (unless user
has provided labels, in which case they are ignored).
The units are displayed in dark grey and in brackets. If the user wants a
different style, they can as always just pass in the labels themselves.
Supports both Unitful and DynamicQuantities, and even mixtures of both
packages on different columns.
using Unitful # or DynamicQuantities
df = DataFrame((;a=randn(10000)*u"m",b=randn(10000)*u"m/s"))pairplot(df)
image.png (view on web)
https://github.com/sefffal/PairPlots.jl/assets/7330605/fc82019f-0a96-43c0-9e64-aeeee3a9f187
You can view, comment on, or merge this pull request online at:
https://github.com/sefffal/PairPlots.jl/pull/30
Commit Summary

db8a276
https://github.com/sefffal/PairPlots.jl/pull/30/commits/db8a2765c7c1ec83d73714c9de87733de71566c2
Drop dependency on Latexify and leave this up to the user
bc9e517
https://github.com/sefffal/PairPlots.jl/pull/30/commits/bc9e517d9363cbfebe224d81173e558dbfa99df1
Merge branch 'master' into units
68e264e
https://github.com/sefffal/PairPlots.jl/pull/30/commits/68e264e1378be89edd556ada01620c8a5348dc2c
Add support for Unitful and DynamicQuantities

File Changes
(4 files https://github.com/sefffal/PairPlots.jl/pull/30/files)

M Project.toml
https://github.com/sefffal/PairPlots.jl/pull/30/files#diff-72ed386c2a0cd1d23c0968297e70023ed98c22490d146dd89fc91f48369bad4d
(6)
A ext/PairPlotsDynamicQuantitiesExt.jl
https://github.com/sefffal/PairPlots.jl/pull/30/files#diff-0ee132b1248e55152318e25ddf32e3934072aa4a5b60c9051e80dc8bd4b86c60
(27)
A ext/PairPlotsDynamicUnitfulExt.jl
https://github.com/sefffal/PairPlots.jl/pull/30/files#diff-aa716dbbc3cf930410e74ab72123e61c0299e1d8a33b67f714287a7b82984568
(29)
M src/PairPlots.jl
https://github.com/sefffal/PairPlots.jl/pull/30/files#diff-d733c29b39328ccba9e0b4c52745f7388ed6e1eebae11b6978136b4afd91c435
(92)

Patch Links:

https://github.com/sefffal/PairPlots.jl/pull/30.patch
https://github.com/sefffal/PairPlots.jl/pull/30.diff

—
Reply to this email directly, view it on GitHub
https://github.com/sefffal/PairPlots.jl/pull/30, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAZQW3NO6RCU34ZHQJ67RGTYGY2LVAVCNFSM6AAAAAA76ISONCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGAYTKMJTHA3TEMA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Appreciate the suggestion. Indeed, this NIST style guide recommends square brackets, so sure we can go with these.
https://www.nist.gov/pml/special-publication-811/nist-guide-si-chapter-7-rules-and-style-conventions-expressing-values
I do worry that this is field-dependent though (I often see round brackets).
There will no doubt be issues requesting other styles in future (eg. for angular units to have a space, etc.) but I think my position will be not to allow any customization here. We already have a dead-simple way to specify the labels that is infinitely customizable.

Codecov Report
Attention: 32 lines in your changes are missing coverage. Please review.

Comparison is base (8794d65) 69.85% compared to head (7dbfe52) 65.53%.

Files
Patch %
Lines

ext/PairPlotsDynamicQuantitiesExt.jl
0.00%
13 Missing :warning:

ext/PairPlotsDynamicUnitfulExt.jl
0.00%
13 Missing :warning:

src/PairPlots.jl
84.61%
6 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #30      +/-   ##
==========================================
- Coverage   69.85%   65.53%   -4.32%
==========================================
  Files           3        5       +2
  Lines         345      383      +38
==========================================
+ Hits          241      251      +10
- Misses        104      132      +28

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

authors: codecov-commenter juliohm sefffal


text:
allow multiple pageviews

Looks like FB instituted a restriction to automatically disable sending multiple pageviews between reloads. This flag (allowDuplicatePageViews) overrides that restriction allowing us to support tracking SPA page transitions via page() calls.

Makes sense and lgtm pending a release commit ;)

Any plans to merge this? This has significant ramifications for SPAs, causing Facebook to see reduced engagement for ads.

Hey @cecchi and @ktsosno this will be merged on Monday, thanks for your patience!

authors: ccnixon cecchi jlee9595 sperand-io