text:
Flushing buffer results in Response->write() error

I use a common buffer flushing function:
function buffer_flush(){
	while (ob_get_level() > 0) {
		ob_end_flush();
	}
	flush();
}

and in my view if I use buffer_flush() I don't specify an exit; at the end of the code, the following exception is thrown:
500 Internal Server Error
Argument 1 passed to flight\net\Response::write() must be of the type string, bool given, called in /var/www/vendor/mikecao/flight/flight/Engine.php on line 430 (0)

#0 /var/www/vendor/mikecao/flight/flight/Engine.php(430): flight\net\Response->write()
#1 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(219): flight\Engine->_stop()
#2 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(162): flight\core\Dispatcher::invokeMethod()
#3 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(54): flight\core\Dispatcher::execute()
#4 /var/www/vendor/mikecao/flight/flight/Engine.php(98): flight\core\Dispatcher->run()
#5 /var/www/vendor/mikecao/flight/flight/Engine.php(346): flight\Engine->__call()
#6 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(190): flight\Engine->flight\{closure}()
#7 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(163): flight\core\Dispatcher::callFunction()
#8 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(141): flight\core\Dispatcher::execute()
#9 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(58): flight\core\Dispatcher->filter()
#10 /var/www/vendor/mikecao/flight/flight/Engine.php(98): flight\core\Dispatcher->run()
#11 /var/www/vendor/mikecao/flight/flight/core/Dispatcher.php(219): flight\Engine->__call()
#12 /var/www/vendor/mikecao/flight/flight/Flight.php(97): flight\core\Dispatcher::invokeMethod()
#13 /var/www/index.php(38): Flight::__callStatic()
#14 {main}

Perhaps my buffer flushing is not ideal but it seems like write should be aware that ob_get_clean may return false

I fixed this and merged the fix into n0nag0n/flight https://github.com/n0nag0n/flight/pull/3

repo: mikecao/flight


text:
Fix charset

Hi,
can you please explain how to fix charset for different case?
For example I am using mysql and sqlite, and also pdo in some project.
I try to check what other suggest, but without success.
Maybe you can make a method for handle this?
THanks!!

strange, I have posted here more reply.. seem disappear..

I will write again my previous posts, there was many more info, so I will make this time short.
I would like to fix charset for all type of database engine so my application can be database agnostic.
I have change the setDb() in this way below for mysql, mysqli and pdomysql. But I am not sure how to do for others apart run query SET NAMES UTF8.

switch ($db['type']) {
				case 'mysqli':
					$this->db = new mysqli(
						$db['hostname'],
						$db['username'],
						$db['password'],
						$db['database']
					);

					if ($this->db->connect_error) {
						throw new Exception('Connection error: '.$this->db->connect_error);
					}

					/* Change character set */
					if (! $this->db->set_charset($db['charset'])) {
						throw new Exception("Error loading character set utf8: %s\n", $this->db->error);
					}

					break;

				case 'mysql':
					$this->db = mysql_connect(
						$db['hostname'],
						$db['username'],
						$db['password']
					);

					if (!$this->db) {
						throw new Exception('Connection error: '.mysql_error());
					}

					/* Change character set */
					mysql_set_charset($db['charset'], $this->db);

					mysql_select_db($db['database'], $this->db);

					break;

				case 'pgsql':
					$str = sprintf(
						'host=%s dbname=%s user=%s password=%s',
						$db['hostname'],
						$db['database'],
						$db['username'],
						$db['password']
					);

					$this->db = pg_connect($str);

					// @TODO $this->db->("SET NAMES {$db['charset']}");

					break;

				case 'sqlite':
					$this->db = sqlite_open($db['database'], 0666, $error);

					if (!$this->db) {
						throw new Exception('Connection error: '.$error);
					}

					// @TODO $this->db->("SET NAMES {$db['charset']}");

					break;

				case 'sqlite3':
					$this->db = new SQLite3($db['database']);

					break;

				case 'pdomysql':
					$dsn = sprintf(
						'mysql:host=%s;port=%d;dbname=%s;charset=%s',
						$db['hostname'],
						isset($db['port']) ? $db['port'] : 3306,
						$db['database'],
						$db['charset']
					);

					$this->db = new PDO($dsn, $db['username'], $db['password']);
					$db['type'] = 'pdo';

					// @TODO $this->db->("SET NAMES {$db['charset']}");

					break;

				case 'pdopgsql':
					$dsn = sprintf(
						'pgsql:host=%s;port=%d;dbname=%s;user=%s;password=%s',
						$db['hostname'],
						isset($db['port']) ? $db['port'] : 5432,
						$db['database'],
						$db['username'],
						$db['password']
					);

					$this->db = new PDO($dsn);
					$db['type'] = 'pdo';

					// @TODO $this->db->("SET NAMES {$db['charset']}");

					break;

				case 'pdosqlite':
					$this->db = new PDO('sqlite:/'.$db['database']);
					$db['type'] = 'pdo';

					// @TODO $this->db->("SET NAMES {$db['charset']}");

					break;
			}

I hope you can integrate this in the library, so we can just run $db->setDb(array with all info charset included)
Thanks!

I think it should be possible for the databases that support charset. I'll work on an enhancement.

source: gharchive/issue

authors: kamov mikecao

repo: mikecao/sparrow

license: mit

license_type: permissive

license_source: bigquery


text:
api/collect returns http error 500

if i try to send data via curl, a http error 500 will be returned, at server there are no visible logs.
how to get logs to understand why error 500 occurs?
curl -v -d @1.json -X POST http://localhost:3000/api/collect

upload completely sent off: 179 out of 179 bytes
< HTTP/1.1 500 Internal Server Error

root@test  cat 1.json
{"type":"pageview","payload":{"url":"/","referrer":"","website":"5dfde102-948b-45ea-9012-1b8304e116da","hostname":"test123.org","screen":"2560x1440","language":"en-US"}}

Run in dev mode if you want to see logs, npm run dev

repo: mikecao/umami

license: MIT

license_source: github-api


text:
Support for multi-threading

The current implementation of CovScript runtime isn't thread-safe and therefore cannot support multi-threading.
An easy approach is GIL, but more precise locking would be required for 'real' threading.

Multi-Threading is now on working.But my spare time is very short so I have no time to rebuild the framework to support the Multi-Threading.If you can help me I will very appreciate.

authors: losfair mikecovlee

repo: mikecovlee/covscript


text:
fix for invalid byte sequence in UTF-8 (ArgumentError)

fix for issue #340

will create new pull request

repo: mikel/mail


text:
🛑 OMSF is down

In b12eaed, OMSF (https://www.omsf.io) was down:

HTTP code: 0
Response time: 0 ms

Resolved: OMSF is back up in afe62e6 after 9 minutes.

repo: mikemhenry/website-uptime


text:
Long Click Event not fired while refresh items short periodically

Thanks for your great library.
I have implemented my recyclerview with this FastAdapter.
But I have a problem with item long click listener.
The issue is that item long click events are not fired when refresh items per 500ms or less time.
How can I solve this issue?

I have added long click listener like the following
        fastAdapter.onLongClickListener = {view, adapter, item, position->
            item.onLongClick()
            false
        }

and refreshing recyclerview per 250 ~ 500 ms
viewModel.getNetDealList().observe(viewLifecycleOwner, Observer {
            itemAdapter.clear()
            itemAdapter.add(it)
        })

@sweetdream0729 that sounds like a case which is not related to the library.
The click listener can't function if the view is re-done every few 100 ms.
Consider to lower the frequency + also use a diff util to ensure to only update elements which actually changed.

I have tried to use a diff util to only update elements which changed.
But if I click the item which is update per 240ms, listener does not work.
Any other solution?

You could try to use partial updates of your item with payloads.
Please reference to the RecyclerView documentation for more details on payloads

repo: mikepenz/FastAdapter


text:
Simply not working

Environment
Windows 11 Pro 21H2
Stream Deck software version 5.3.3.15214
Steps to reproduce

Download com.springhillsoftware.commandline.streamDeckPlugin.

Double click to install to Stream Deck.

Add Command Line plugin to a button.

Populate Command line field with any simple command line instructions (notepad.exe for example).

Push physical button.

Nothing happens.

Same command works fine directly on Windows command prompt.

Expected behavior
In this example, notepad.exe should launch. However, no command I've tried is working, including using the nircmd.exe utility to mute the system. All tested commands do work directly on the Windows command prompt window.

Sorry. My issue is actually the buggy Elgato Stream Deck device and/or software. As it turns out, nothing is working, and device is unresponsive.

repo: mikepowell/streamdeck-commandline


text:
Removed Usage of Temporary Directory

Removed the usage of temporary directory as per the discussion on pull #16
Added the usage of absolute file paths instead of only file names. This was creating trouble for win32 (chrome.exe was hanging). This should also work on macOS and Linux, but needs to be confirmed.
pull #16 can be abandoned if this is merged.

This SO contains a lot of useful info around usage of headless chrome's print-to-pdf feature on windows: https://stackoverflow.com/questions/46074235/headless-chrome-to-print-pdf

I handled these two issues is two separate commits (#19, #20). The permissions issue turned out to be kind of subtle, and the fix isn't perfect, but I was extremely keen to move out of a temporary directory. So sorry to take so long over this, and sorry too for not accepting your fix! I'm very grateful for the contribution, and the root cause investigation!

source: gharchive/pull-request


text:
Cannot access OpenVAS web server via port 443 on remote server

I have met the same problem as this issue: https://github.com/mikesplain/openvas-docker/issues/191
I followed README to start a container with docker run -d -p 443:443 -p 9390:9390 -e PUBLIC_HOSTNAME='my_ip' --name openvas mikesplain/openvas,but it didn't work.
When i visit https://openvas_ip_address,i got an error msg:"The request contained an unknown or invalid Host header. If you are trying to access GSA via its hostname or a proxy, make sure GSA is set up to allow it."

Same issue for me.
Seems like the webserver is not starting properly.
curl 172.17.0.5:443 curl: (52) Empty reply from server

repo: mikesplain/openvas-docker


text:
Updated Blazor.EventAggregator to work with preview8

Fixes #2.

Thank you!

authors: dradovic mikoskinen


text:
isConnected is not working correctly with MongoDB

Describe the bug
await mikroOrm.isConnected() always return true, also after mongoDB client disconnected from the db.
The client is correctly reporting that the connection is refused by the server, but that method always return true.
To Reproduce
Steps to reproduce the behavior:

run mikro orm normally and let it connect to MongoDB
Sto mongoDB server
check the result of isConnected()

Expected behavior
It should follow the real connection status and report about it
Versions

Dependency
Version

node
14

typescript
4.5.3

mikro-orm
4.5.9

your-driver
mongo

Yes, that is how mongo driver works now with the unified topology, not much we can do.
https://mongodb.github.io/node-mongodb-native/3.3/reference/unified-topology/#why-does-mongoclient-isconnected-always-return-true

Thanks for replying. Even like this I think there's an issue. With MySql mikro tries to execute an operation and report if this is failing when isConnected is called (I remember I read something somewhere 🙂 ). I think it should be the same with mongo because the driver will report an error if an operation fails.

I don't mind, we can do the select query in mongo too, feel free to send a PR.
SQL drivers are making the query here:
https://github.com/mikro-orm/mikro-orm/blob/master/packages/knex/src/AbstractSqlConnection.ts#L38
Mongo driver is now just checking internal property (that is true unless you call close explicitly):
https://github.com/mikro-orm/mikro-orm/blob/master/packages/mongodb/src/MongoConnection.ts#L45
Still this won't be perfect, e.g. if you use multiple mongo servers, this will reach only one. You should have proper health checks outside of the app, and check whether all replicas/serves are alive.
Not sure if we can make a similar query to what SQL drivers are doing (select 1, so no db tables need to exist - in mongo ideally it should not have any side effect, like it should not create any collection, or at least it should have some special name so it won't collide with what users might be using, e.g. prefixed name)

repo: mikro-orm/mikro-orm


text:
Unable to use nested properties in SELECT clause

Description
When trying to use nested properties in a QueryBuilder.select() to retrieve a single or all embedded fields at once, QueryBuilder throws an error:
Stack trace
TypeError: Cannot read property '0' of undefined
  at QueryBuilderHelper.fieldName (node_modules/@mikro-orm/knex/query/QueryBuilderHelper.js:520:31)
  at QueryBuilderHelper.prefix (node_modules/@mikro-orm/knex/query/QueryBuilderHelper.js:468:36)
  at QueryBuilderHelper.mapper (node_modules/@mikro-orm/knex/query/QueryBuilderHelper.js:65:24)
  at node_modules/@mikro-orm/knex/query/QueryBuilder.js:538:34
  at Array.forEach (<anonymous>)
  at QueryBuilder.prepareFields (node_modules/@mikro-orm/knex/query/QueryBuilder.js:525:16)
  at QueryBuilder.getQueryBase (node_modules/@mikro-orm/knex/query/QueryBuilder.js:591:32)
  at QueryBuilder.getKnexQuery (node_modules/@mikro-orm/knex/query/QueryBuilder.js:298:25)
  at QueryBuilder.execute (node_modules/@mikro-orm/knex/query/QueryBuilder.js:360:28)
  at QueryBuilder.getResultList (node_modules/@mikro-orm/knex/query/QueryBuilder.js:393:30)
  at processTicksAndRejections (internal/process/task_queues.js:95:5)
  at async QueryBuilder.getSingleResult (node_modules/@mikro-orm/knex/query/QueryBuilder.js:403:21)

To Reproduce
Steps to reproduce the behavior:

Declare an embeddable entity

@Embeddable()
export class Address {
  @Property()
  city: string;

  constructor(city: string) {
    this.city = city;
  }
}

Declare an entity, embedding the previously implemented Address as follows:

@Entity()
export class User {
  @PrimaryKey()
  id!: number;

  @Embedded(() => Address)
  address: Address;

  constructor(address: Address) {
    this.address = address;
  }
}

Create a QueryBuilder to retrieve address properties:

const user = await em.createQueryBuilder(User)
  .select(['address'])
  .where({
    address: {
      city: 'Paris'
    }
  })
  .getSingleResult();

or
const user = await em.createQueryBuilder(User)
  .select(['address'])
  .where({
    address: {
      city: 'Paris'
    }
  })
  .execute('get', false)

or
const user = await em.createQueryBuilder(User)
  .select(['address.city'])
  .where({
    address: {
      city: 'Paris'
    }
  })
  .execute('get', false)

Workaround
You still can receive a raw result using column names instead of fields as follows:
const user = await em.createQueryBuilder(User)
  .select(['id', 'address_city'])
  .where({
    address: {
      city: 'Paris'
    }
  })
  .execute('get', false);

console.log(em.map(User, user));

Actual behavior
QueryBuilder throws an error trying to generate a SQL query.
Expected behavior
QueryBuilder is able to generate an expected SQL query in accordance with the naming strategy: select "u0"."address_city" from "user" as "u0"
Additional context
There is repro-repo here: https://github.com/derevnjuk/mikro-orm-3365
Versions

Dependency
Version

node
>= 14

typescript
>=4

mikro-orm
>=5

The same thing when using insert(/*records*/).onConflict(/* fields */).merge(/* fields */).
@Entity()
export class User {
  @PrimaryKey()
  id!: number;

  @Property({ unique: true, length: 255 })
  email!: string

  @Property({ length: 255 })
  fullName!: string

  @Embedded(() => Address)
  address: Address;
}

@Embeddable()
export class Address {
  @Property()
  city: string;
}

const records = [{ email: 'test@test.test', fullName: 'John Smith', address: { city: 'Los Angeles' } }]

const query = this.em
  .qb(User)
  .insert(records)
  .onConflict(['email'])
  .merge(['fullName', 'address.city'])
  .getQuery()

Expected:
nsert into "users" ("email", "full_name", "address_city") values ($1, $2, $3) on conflict ("email") do update set "full_name" = excluded."full_name", "address_city" = excluded."address_city" returning "id";

Actual:

I suppose you expect that em.createQueryBuilder(User).select(['address']) would expand and select all the properies of Address embeddable, right?

Ok, this was harder than expected.

em.createQueryBuilder(User， ‘user’).leftJoinAndSelect('user.books', 'books', {}, ['...some books fields']) work for me


text:
Issues with bidirectionalRelations Generation in Entity Models

Describe the bug
I am encountering an issue with Mikro-ORM where the entity generator does not automatically create the relationship properties between Users and Licenses. Although I have defined the relationship in the database schema, the entities generated do not reflect this relationship as expected
Reproduction
import { MsSqlDriver, Options } from '@mikro-orm/mssql';
import { TsMorphMetadataProvider } from '@mikro-orm/reflection';
import dotenv from 'dotenv';
dotenv.config();

const config: Options = {
    driver: MsSqlDriver,
    host: process.env.DB_HOST,
    port: 1433,
    user: process.env.DB_USER,
    password: process.env.DB_PASS,
    dbName: process.env.DB_NAME,
    entities: ['dist/entities/**/*.js'],
    entitiesTs: ['src/entities/**/*.ts'],
    discovery: {
        warnWhenNoEntities: false,
    },
    metadataProvider: TsMorphMetadataProvider,
    baseDir: process.cwd(),
    debug: true,
};
export default config;

// scripts/generate-entities.ts
import { MikroORM } from '@mikro-orm/core';
import { EntityGenerator } from '@mikro-orm/entity-generator';
import config from '../src/config/mikro-orm.config';

const generateEntities = async () => {
    const orm = await MikroORM.init({
        ...config,
        discovery: { warnWhenNoEntities: false },
        extensions: [EntityGenerator],
    });
    const dump = await orm.entityGenerator.generate({
        save: true,
        path: process.cwd() + '/src/entities',
        bidirectionalRelations: true,
    });
    await orm.close(true);
};

generateEntities().catch((err) => {
    console.error(err);
    process.exit(1);
});

@Entity({ tableName: 'Users' })
export class Users {
  @PrimaryKey({ fieldName: 'UserID' })
  UserID!: number;

  @Property({ fieldName: 'Username', length: 255 })
  Username!: string;

}

@Entity({ tableName: 'Licenses' })
export class Licenses {
  @PrimaryKey({ fieldName: 'LicenseID' })
  LicenseID!: number;

 @ManyToOne({ entity: () => Users, fieldName: 'UserID', index: '<Index_License_UserID>' })
  UserID!: Users;

}

What driver are you using?
@mikro-orm/mssql
MikroORM version
^6.2.9
Node.js version
v22.3.0
Operating system
Windows 11
Validations

[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Slack.
[X] The provided reproduction is a minimal reproducible example of the bug.

Yes please, provide a schema, what you gave us is not a reproduction without it.

Closing as not reproducible, let's reopen with a reproduction.

My apologies for the wait. I kept getting a TypeError: Unknown file extension ".ts"  error when trying to run npx mikro-orm schema:create -d so instead I used the SchemaGenerator programmatically. with const createDump = await orm.schema.getCreateSchemaSQL();. Please see a stripped version of schema for users and licenses.
Schema create output below
exec sp_MSforeachtable 'alter table ? nocheck constraint all';

CREATE TABLE [Users] ([UserID] int identity(1,1) not null primary key, [Username] nvarchar(255) not null);
CREATE UNIQUE INDEX [IX_Users_Username] ON [Users] ([Username]) WHERE [Username] IS NOT NULL;

CREATE TABLE [Licenses] ([LicenseID] int identity(1,1) not null primary key, [UserID] int not null);
CREATE INDEX [<Index_License_UserID>] ON [Licenses] ([UserID]);

alter table [Licenses] add constraint [Licenses_UserID_foreign] foreign key ([UserID]) references [Users] ([UserID]) on update cascade;

exec sp_MSforeachtable 'alter table ? check constraint all';

If I try to test the User entity with the findOne() function, ignoring the fact that the license relationship isnt created I get a query error of
[query] select top (1) [u0].*, [u1].[id] as [u1__id] from [users] as [u0] left join [user_twitter_relation] as [u1] on [u0].[UserID] = [u1].[user_id] where [u0].[Username] = N'test' [took 27 ms]
Authentication error: TableNotFoundException: select top (1) [u0].*, [u1].[id] as [u1__id] from [users] as [u0] left join [user_twitter_relation] as [u1] on [u0].[UserID] = [u1].[user_id] where [u0].[Username] = N'test' - Invalid object name 'user_twitter_relation'.

I have tried to re-create the schema below with UserTwitterRelation added but I keep getting this schema gen error
ReferenceError: Cannot access 'Users' before initialization
    at file:///C:/Node/Mikro-orm/src/entities/UserTwitterRelation.ts:22:31

The schema you provided here works just fine, it produces the following entities, including the 1:m relations:
import { Entity, ManyToOne, PrimaryKey, PrimaryKeyProp } from '@mikro-orm/core';
import { Users } from './Users';

@Entity({ tableName: 'Licenses' })
export class Licenses {

  [PrimaryKeyProp]?: 'LicenseID';

  @PrimaryKey({ fieldName: 'LicenseID' })
  LicenseID!: number;

  @ManyToOne({ entity: () => Users, fieldName: 'UserID', updateRule: 'cascade', index: '<Index_License_UserID>' })
  UserID!: Users;

}

import { Collection, Entity, OneToMany, PrimaryKey, PrimaryKeyProp, Property, Unique } from '@mikro-orm/core';
import { Licenses } from './Licenses';

@Entity({ tableName: 'Users' })
@Unique({ name: 'IX_Users_Username', expression: 'create unique index [IX_Users_Username] on [Users] (where ([Username] IS NOT NULL))' })
export class Users {

  [PrimaryKeyProp]?: 'UserID';

  @PrimaryKey({ fieldName: 'UserID' })
  UserID!: number;

  @Unique({ name: 'IX_Users_Username' })
  @Property({ fieldName: 'Username' })
  Username!: string;

  @OneToMany({ entity: () => Licenses, mappedBy: 'UserID' })
  UserIDInverse = new Collection<Licenses>(this);

}

Note that I am trying this out on master, could be something already addressed in the last month, so maybe try the latest dev version instead of 6.2.9.

I am also not following why are you using ts-morph metadata provider if you are bootstrapping entities from an existing schema, which brings me again to my previous question - what kind of setup are you trying to build?

I am not following, you reported an issue with the entity generator, so you must have had a schema before - how is using the schema generator now relevant? We wanted to see your schema, not output from the schema generator. What kind of setup are you trying to build?

I cant return the whole schema for data privacy reasons hence why I just returned the schema that was generated from the current entities shown thinking that would help let you repro it in some way.

I am also not following why are you using ts-morph metadata provider if you are bootstrapping entities from an existing schema, which brings me again to my previous question - what kind of setup are you trying to build?

Yes I am generating my types from an existing schema. Is a metadata provider not recommended in that case? I assume regardless if they are generated or not I should still run an entity discovery process to ensure the entities are correct.

Note that I am trying this out on master, could be something already addressed in the last month, so maybe try the latest dev version instead of 6.2.9.

I have tried using the dev version but still no change. Something I noticed is that only one relationship that maps to UserID is created. In that case, I see the mapped field name is UserIDInverse. Now, what if I have multiple items mapped to UserID? How does Mikro-ORM handle that naming convention? Is it with UserIDInverse1, UserIDInverse2, etc.?
The reason I ask is that I have noticed many of my tables with a bidirectional connection mapped by UserID aren't showing, and only one is returned when generating. For example, here are some more of my entities stripped down. You can see only one UserIDInverse is created. Is that a possible bug? I am trying to generate the schema for you, as I can't return my production one here, but for now, hopefully, the entity example is helpful until I get past the TypeError: Unknown file extension ".ts" and ReferenceError: Cannot access 'Users' before initialization.

what kind of setup are you trying to build?

TS backend for a legacy mssql DB. Hopefully with auto generating entities (with bidirectional relationships). Nothing to complex
import { Collection, Entity, Index, ManyToMany, ManyToOne, OneToMany, OneToOne, type Opt, PrimaryKey, PrimaryKeyProp, Property, Unique } from '@mikro-orm/core';
import { WizardOrigin } from './WizardOrigin';

@Entity()
@Index({ name: 'Deleted', properties: ['deleted', 'userId'] })
export class Users {
    [PrimaryKeyProp]?: 'userId';

    @PrimaryKey({ fieldName: 'UserID' })
    userId!: number;

    @Unique({ name: 'IX_Users_Username' })
    @Property({ fieldName: 'Username', type: 'string', columnType: 'varchar(255)' })
    username!: string;

    @OneToMany({ entity: () => WizardOrigin, mappedBy: 'userId' })
    userIdInverse = new Collection<WizardOrigin>(this);
}

import { Entity, ManyToOne, PrimaryKey, PrimaryKeyProp, Property } from '@mikro-orm/core';
import { Users } from './Users';

@Entity()
export class WizardOrigin {
    [PrimaryKeyProp]?: 'wizardOriginId';

    @PrimaryKey({ fieldName: 'WizardOriginID' })
    wizardOriginId!: number;

    @ManyToOne({ entity: () => Users, fieldName: 'UserID' })
    userId!: Users;
}

import { Entity, OneToOne, PrimaryKey, PrimaryKeyProp } from '@mikro-orm/core';
import { Users } from './Users';

@Entity()
export class UserInfo {
    [PrimaryKeyProp]?: 'userInfoId';

    @PrimaryKey({ fieldName: 'UserInfoID' })
    userInfoId!: number;

    @OneToOne({ entity: () => Users, fieldName: 'UserID', nullable: true, unique: 'IX_UserID' })
    userId?: Users;
}

import { Entity, OneToOne, PrimaryKeyProp } from '@mikro-orm/core';
import { Users } from '../entities/Users';

@Entity()
export class TrialInfo {
    [PrimaryKeyProp]?: 'userId';

    @OneToOne({ entity: () => Users, fieldName: 'UserID', primary: true })
    userId!: Users;
}

import { Entity, ManyToOne, PrimaryKey, PrimaryKeyProp } from '@mikro-orm/core';
import { Users } from './Users';

@Entity()
export class Licenses {
    [PrimaryKeyProp]?: 'licenseId';

    @PrimaryKey({ fieldName: 'LicenseID' })
    licenseId!: number;

    @ManyToOne({ entity: () => Users, fieldName: 'UserID', index: '<Index_License_UserID>' })
    userId!: Users;
}

Ha, the duplicities might be actually it, looking at the code, we are not handling that apparently:
https://github.com/mikro-orm/mikro-orm/blob/master/packages/entity-generator/src/EntityGenerator.ts#L265
Btw no one is asking for your production schema, you should provide minimal reproduction, so make a copy of it, start dropping tables till it works correctly, then drop all columns till it starts working correctly, the result is what we need, and you can obfuscate the names as much as you wish. But I guess we don't need it now, since you identified the cause already, it should be easy to reproduce.
You don't need the ts-morph metadata provider if you generate entities via the generator, you are making your setup unnecessarily more complex with it, just use the defaults. Also, you don't need metadata provider to validate your schema, that is a component to load metadata from entity definitions on the ORM init, so it can work with them (e.g. when hydrating or creating queries or altering schema). The entity generator is not using this component at all, and it generates the definitions that are valid for the default reflect metadata provider. You can also opt in to generate the entities including the types, so even reflect-metadata wont be necessary, or use EntitySchema so you don't have decorators (in case you would like to compile with something like esbuild which doesn't support the legacy decorators).

Hmm fixing this actually feels a tiny bit breaking, since now we only define the last relation from the list of duplicities, if I add the suffix, they will change order (the one without suffix will be a different one than before potentially - it happens in the existing tests multiple times). I guess I will change the naming for the inverse sides completely and leave the Inverse suffix only for M:N relations where it makes some sense, and use the target entity name for the others. Now it's really meant for users to change it anyway, having an inverse called userIdInverse1/2/3 feels weird when it could be called wizardOrigins/userInfo/trialInfo. Will also make it configurable for anyone who could be already depending on those dummy names.


text:
if A0-3 are not 1, will break resolution switch statement()

https://github.com/milesburton/Arduino-Temperature-Control-Library/blob/798cfc217ad9b9fd3a0ecaae7613056f5cf890da/DallasTemperature.cpp#L351
It appears this switch statement will fail if any of the A0-3 bits are pulled down.
This is because bits 0-3 match these hardware set address bits.  Default they are pulled up.  But a user can configure these with hardware or dynamically pulling up or down.
The CONFIGURATION bit probably needs to be masked out with a | of 11110000 or 0xF0, then the macros redefined to be 0xN0.
Not sure what other repercussions this change would have however.

There is the same problem in setResolution(). It won't actually fail but it may write when it does not need to.
Needs a systematic look through all of the code.

There is the same problem in setResolution(). It won't actually fail but it may write when it does not need to.
Needs a systematic look through all of the code.

The correct fix is to write a Scratchpad class which hides the details of how to access things such as the resolution. I have one in preparation.


text:
Set hostname via env variable

What do you think of setting the hostname via an environment variable?
This way there is no need to set it by manually executing ./manage.py hostname

It's challenging. The hostname isn't actually constant; it's actually just a layer on top of the Django sites framework. Among other things, it's possible to have multiple hostnames and whitelabels for the same site, computed according which domain you're accessing.
Unless I'm mistaken, this is a convenience thing, so I'm not sure the complexity/convenience tradeoffs make this worthwhile?

This was originally how we did it, and it caused a lot of issues. Going to close this as a wontfix, unfortunately! Thanks for bringing it up nonetheless.

authors: b-m-f milesmcc

repo: milesmcc/shynet


text:
Can you make your code work with Python 3?

Hi. To run your code and get the proper depth map we have to switch to Python 2 otherwise the depth map is completely incorrect. Can you make this compatible with Python 3? Thanks!

The official PSMNet was already ported to Python 3. So you should be able to compute disparity map already. What pseudo-lidar does is simply converting the disparity into depth map generate_lidar.py. I believe this code should already work in Python 2 or maybe with minimal modification. After all, it has very few lines of code.

The official PSMNet was already ported to Python 3. So you should be able to compute disparity map already. What pseudo-lidar does is simply converting the disparity into depth map generate_lidar.py. I believe this code should already work in Python 2 or maybe with minimal modification. After all, it has very few lines of code.

This is wrong sir. The code in this repo only support python2. They do update their code base but not reflected here.

authors: Cli98 jarvis-huang sarimmehdi


text:
Possible fix for issue #149 "Brightness does not match"

Apperently the value returned is "1000" and not "255" so dividing by 255 gives false value, also sometimes the value returned is actually the real number 0...100 in that case use that.

Thank you for this PR it is much appreciated!
However in the current form it will not work.
Take for example the case of a light that reports the brightness from 0 to 1000.
What happens when that light is 9% on? the reported brightness will be 90.
90 < 100 thus it will be treated as brightness on a scale from 0 to 100 and be reported as 90% brightness.
We might need to add a configuration value for this for users to input their max brightness.

Thank you for this PR it is much appreciated!
However in the current form it will not work.
Take for example the case of a light that reports the brightness from 0 to 1000.
What happens when that light is 9% on? the reported brightness will be 90.
90 < 100 thus it will be treated as brightness on a scale from 0 to 100 and be reported as 90% brightness.
We might need to add a configuration value for this for users to input their max brightness.

You are right of course, i am new to homebridge and didn't know what the solution for that was(90), sounds like the configuration value is a great idea. let's do that

You are right of course, i am new to homebridge and didn't know what the solution for that was(90), sounds like the configuration value is a great idea. let's do that


text:
examples: Fix main() Redeclaration Error

Tests are currently failing because main() is declared six times in the examples directory. This puts the example programs in their own subdirectories.

Excellent! thanks!

authors: alrs milosgajdos

repo: milosgajdos/tenus


text:
BUG: teleported players into the mountains in the Ramparts

teleported players into the mountains in the Ramparts
Versions：minecells-1.20.1-1.7.3
latest version still does not fix this bug.
This BUG will also appear in a single MOD.

yep found out this bug the hard way

The mechanic will now always telport you to the start of the biome, so this mountain teleport glitch should no longer happen, and if it does - jumping down should put you in the correct spot 😅


text:
Could not build grin-miner on digitalocean dropelet

Hi,
I am trying to build grin-miner on a digitalocean dropelet on Ubuntu 16.04. I have installed what has been written on the build instruction. Then I try to build the project.
root@grin:~/grin-miner# cargo build
warning: An explicit [[bin]] section is specified in Cargo.toml which currently
disables Cargo from automatically inferring other binary targets.
This inference behavior will change in the Rust 2018 edition and the following
files will be included as a binary target:

* /root/grin-miner/src/bin/types.rs
* /root/grin-miner/src/bin/plugin.rs
* /root/grin-miner/src/bin/client.rs
* /root/grin-miner/src/bin/mining.rs
* /root/grin-miner/src/bin/stats.rs

This is likely to break cargo build or cargo test as these files may not be
ready to be compiled as a binary target today. You can future-proof yourself
and disable this warning by adding `autobins = false` to your [package]
section. You may also move the files to a location where Cargo would not
automatically infer them to be a target, such as in subfolders.

For more information on this warning you can consult
https://github.com/rust-lang/cargo/issues/5330
   Compiling log v0.3.9
   Compiling thread_local v0.3.5
   Compiling ncurses v5.93.0
error: failed to run custom build command for `ncurses v5.93.0`
process didn't exit successfully: `/root/grin-miner/target/debug/build/ncurses-617b5826ad9ec715/build-script-build` (exit code: 101)
--- stdout
cargo:rerun-if-env-changed=PKG_CONFIG_PATH
cargo:rustc-link-lib=ncursesw
OPT_LEVEL = Some("0")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CC_x86_64-unknown-linux-gnu = None
CC_x86_64_unknown_linux_gnu = None
HOST_CC = None
CC = None
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CFLAGS_x86_64-unknown-linux-gnu = None
CFLAGS_x86_64_unknown_linux_gnu = None
HOST_CFLAGS = None
CFLAGS = None
DEBUG = Some("true")

--- stderr
/root/grin-miner/target/debug/build/ncurses-a19907545286d318/out/chtype_size.c:6:21: fatal error: ncurses.h: No such file or directory
compilation terminated.
thread 'main' panicked at '/root/grin-miner/target/debug/build/ncurses-a19907545286d318/out/chtype_size failed: Os { code: 2, kind: NotFound, message: "No such file or directory" }', libcore/result.rs:945:5
note: Run with `RUST_BACKTRACE=1` for a backtrace.

Look like the there in some issue finding what I am running looking at TARGET = Some("x86_64-unknown-linux-gnu") ? Maybe because digitalocean has a customize their ubuntu image ? I have no idea to be honest...

Using backtrace.
thread 'main' panicked at '/root/grin-miner/target/debug/build/ncurses-a19907545286d318/out/chtype_size failed: Os { code: 2, kind: NotFound, message: "No such file or directory" }', libcore/result.rs:945:5
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
             at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::print
             at libstd/sys_common/backtrace.rs:71
             at libstd/sys_common/backtrace.rs:59
   2: std::panicking::default_hook::{{closure}}
             at libstd/panicking.rs:211
   3: std::panicking::default_hook
             at libstd/panicking.rs:227
   4: std::panicking::rust_panic_with_hook
             at libstd/panicking.rs:463
   5: std::panicking::begin_panic_fmt
             at libstd/panicking.rs:350
   6: rust_begin_unwind
             at libstd/panicking.rs:328
   7: core::panicking::panic_fmt
             at libcore/panicking.rs:71
   8: core::result::unwrap_failed
             at /checkout/src/libcore/macros.rs:26
   9: <core::result::Result<T, E>>::expect
             at /checkout/src/libcore/result.rs:809
  10: build_script_build::check_chtype_size
             at ./build.rs:86
  11: build_script_build::main
             at ./build.rs:48
  12: std::rt::lang_start::{{closure}}
             at /checkout/src/libstd/rt.rs:74
  13: std::panicking::try::do_call
             at libstd/rt.rs:59
             at libstd/panicking.rs:310
  14: __rust_maybe_catch_panic
             at libpanic_unwind/lib.rs:105
  15: std::rt::lang_start_internal
             at libstd/panicking.rs:289
             at libstd/panic.rs:374
             at libstd/rt.rs:58
  16: std::rt::lang_start
             at /checkout/src/libstd/rt.rs:74
  17: main
  18: __libc_start_main
  19: _start

I think the key error here is:
fatal error: ncurses.h: No such file or directory
Please install the following 2 ncurses development packages:
libncurses5-dev
libncursesw5-dev

Indeed I was missing those 2.
I installed :
libncurses5
libncursesw5

I copied it from the grin Dockerfile thinking it would do the job.
I have made a gist in case someone want to build for ubuntu 16.04
https://gist.github.com/rllola/ef4cb2340edb4d918108140d7bd7529b
Thank you

authors: bladedoyle rllola

repo: mimblewimble/grin-miner


text:
Update docs in using_doctr

This PR aims to:

modify dead links from the documentation in https://mindee.github.io/doctr/using_doctr/using_models.html such as https://mindee.github.io/doctr/using_doctr/models.html#doctr.models.detection.linknet_resnet18.
add db_resnet50_rotation and linknet_resnet18_rotation in https://mindee.github.io/doctr/modules/models.html
update one code block with 4 spaces

@frgfm @charlesmindee I think something went wrong on GitHub page deployment. It seems that it has not been updated because links are still broken.
I tested it locally before and here is the output:

You can see that there is a light blue background on each hyperlink on the screenshot. This is due to :py:meth:. This is not the case on the public docs:

Moreover, I added doctr.models.detection.linknet_resnet18_rotation and doctr.models.detection.differentiable_binarization.pytorch.db_resnet50_rotation in doctr.models in Package reference and there are still not present on public docs.
Also, I just noticed that Choose a ready to use dataset and Share your model with the community pages are not published. Is it expected ?

@odulcy-mindee my apologies, I selected the wrong version!
I realized this seeing your comment that the changes hadn't taken effect
By default, the documentation leads you to the last stable release. So to get the latest build, you need to select "latest", and now this works :)
https://mindee.github.io/doctr/latest/using_doctr/using_models.html
All good then!

@frgfm Oh cool ! Thanks for the tip haha ! :sweat_smile:

authors: frgfm odulcy-mindee

repo: mindee/doctr


text:
I can’t get any validation code or link from beatsaber

After register on Beatsaber
I need to validation of my email
I checked my email and all empty.
Spam is also empty. So I couldn’t upload my music I need help!

i dont see why this issue is here, this repo is for a program that generates files from mp3s. There is no registrations.

Hi @Elspeth1. I'm not associated with Beatsaber and cannot help you with that issue :)

I am so sorry about finding the wrong place

repo: mindleaving/beatsabertools


text:
Allow the sampler to run from a known state

#3

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


text:
OpenSora 1.1 dynamic shape training

Based on https://github.com/yuedongli1/mindone/tree/jitO0_dynamic_shape
What does this PR do?

Fixes # (issue)
Adds # (feature)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you read the contributor guideline?
[ ] Did you make sure to update the documentation with your changes? E.g. record bug fixes or new features in What's New. Here are the
documentation guidelines
[ ] Did you build and run the code without any errors?
[ ] Did you report the running environment (NPU type/MS version) and performance in the doc? (better record it for data loading, model inference, or training tasks)
[ ] Did you write any new necessary tests?

Who can review?
Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.
@xxx

After the set_inputs changes, how is the influence on training performance on fixed shape video like 576x1024x24?

After the set_inputs changes, how is the influence on training performance on fixed shape video like 576x1024x24?

it will definitely slow down the training time. Now it will be settled only if it is necessary

move to #605

authors: SamitHuang zhtmike

repo: mindspore-lab/mindone


text:
build(test): Avoid posting happo comment when no diffs

I've noticed that the comment posted from the happo-ci.sh script can be
noisy, especially for PRs that are pushed to/rebased many times. By
silencing out the comment so that it's only posted when there are one or
more diffs/added/deleted we can avoid noise in many cases.

Hello @trotzig and thanks for the PR.
The Happo comments do get a bit noisy in the scenario that you mentioned.  I still believe that creating a GitHub status check would be the ideal.  This way, the Happo status would always be in one place and always up to date.  https://developer.github.com/v3/repos/statuses/
Your suggested update seems like a reasonable stop-gap.  What is lost however is the knowledge that the Happo tests actually ran successfully.

The Happo comments do get a bit noisy in the scenario that you mentioned. I still believe that creating a GitHub status check would be the ideal. This way, the Happo status would always be in one place and always up to date. https://developer.github.com/v3/repos/statuses/

Agreed. It's on my radar.

Your suggested update seems like a reasonable stop-gap. What is lost however is the knowledge that the Happo tests actually ran successfully.

Yeah, although the whole test run would fail if the happo script failed.

True, I suppose the build would fail in that scenario.

authors: brentertz trotzig

repo: mineral-ui/mineral-ui


text:
Please provide info in readme.md about obtaining tools

Users should not browse a code for a proper name of tools like maptools:pick_admin.

https://github.com/minetest-mods/maptools/blob/master/NODES.md is probably what you want. I'll clean it up and link to it in the README.

repo: minetest-mods/maptools

license: Zlib


text:
Allow swapping between default and ropes ladder by crafting

This PR adds recipes for players to swap their ladders between normal and extendable variants if one is not replacing another.
This PR is ready for review.

@Emojigit

This branch has conflicts that must be resolved

Would you please be so nice to rebase your branch? At least on my side, there's a conflict in extendingladder.lua.

authors: Emojigit SmallJoker

repo: minetest-mods/ropes


text:
🛑 MineVN Website is down

In 1593e3e, MineVN Website (http://minevn.net) was down:

HTTP code: 0
Response time: 0 ms

Resolved: MineVN Website is back up in 63dab1e.


text:
Theme selection reset

Hi there,
I just faced an issue with my certificate which was expired:
miniflux -version
2.0.11

/etc/debian_version
9.5

browser:firefox 63.0+build2-0ubuntu0.16.04.2

Miniflux logs:
● miniflux.service - Miniflux Feed Reader
   Loaded: loaded (/lib/systemd/system/miniflux.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2018-11-09 16:57:28 CET; 1min 49s ago
 Main PID: 611 (miniflux)
    Tasks: 7 (limit: 4915)
   CGroup: /system.slice/miniflux.service
           └─611 /usr/bin/miniflux

Nov 09 16:57:28 web01 systemd[1]: Started Miniflux Feed Reader.
Nov 09 16:57:31 web01 miniflux[611]: [2018-11-09T16:57:31] [INFO] Starting Miniflux...
Nov 09 16:57:31 web01 miniflux[611]: [2018-11-09T16:57:31] [INFO] [Worker] #0 started
Nov 09 16:57:31 web01 miniflux[611]: [2018-11-09T16:57:31] [INFO] [Worker] #1 started
Nov 09 16:57:31 web01 miniflux[611]: [2018-11-09T16:57:31] [INFO] [Worker] #2 started
Nov 09 16:57:31 web01 miniflux[611]: [2018-11-09T16:57:31] [INFO] [Worker] #3 started
Nov 09 16:57:31 web01 miniflux[611]: [2018-11-09T16:57:31] [INFO] [Worker] #4 started
Nov 09 16:57:32 web01 miniflux[611]: [2018-11-09T16:57:32] [INFO] Listening on "192.168.1.203:25443" by using certificate "../ssl/fullchain.pem" and key "../ssl/privkey.pem"
Nov 09 16:59:15 web01 miniflux[611]: 2018/11/09 16:59:15 http2: server: error reading preface from client 92.103.166.6:40534: remote error: tls: expired certificate
Nov 09 16:59:16 web01 miniflux[611]: 2018/11/09 16:59:16 http2: server: error reading preface from client 92.103.166.6:40538: remote error: tls: expired certificate

So, I stopped the service, I deleted the two files, copied the new one and then start the service which looked fine:
● miniflux.service - Miniflux Feed Reader
   Loaded: loaded (/lib/systemd/system/miniflux.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2018-11-09 17:04:28 CET; 1s ago
 Main PID: 715 (miniflux)
    Tasks: 7 (limit: 4915)
   CGroup: /system.slice/miniflux.service
           └─715 /usr/bin/miniflux

Nov 09 17:04:28 web01 systemd[1]: Started Miniflux Feed Reader.
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] Starting Miniflux...
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] [Worker] #0 started
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] [Worker] #1 started
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] [Worker] #2 started
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] [Worker] #3 started
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] [Worker] #4 started
Nov 09 17:04:28 web01 miniflux[715]: [2018-11-09T17:04:28] [INFO] Listening on "192.168.1.203:25443" by using certificate "../ssl/fullchain.pem" and key "../ssl/privkey.pem"

When I came on my page, I saw the theme displayed was the default one, but in my settings it was still on "Black", I needed to click on "Update" to make it works again.
Anyone already faced it?

Duplicate of #270 ?

Absolutely not.

I don't think the SSL certificate issue is related to the theme selection. Try to flush the Miniflux cookies, flush the sessions on the server miniflux -flush-sessions. Then try again. Take look to the cookie flags in your browser console just in case.

When following this, I have no issue with the theme. Well, I mean the login page is default theme, but once I logged in, it switched to the good one.

authors: fguillot wToad

repo: miniflux/miniflux


text:
Fix path prefix issue, because other laravel storage drivers do not d…

…ifferentiate between '/file.txt' and 'file.txt' as a path

Can you provide some insight what does this PR do ? Because generally on S3 /file.txt and file.txt are indeed two different object names.

ping again @reshadman ^^

The given reason for this pull request is not correct my mistake, so I close it,
yes, they are two different objects, but in Laravel storage drivers context there is no difference between:
/hello.txt and hello.txt, and the mentioned driver normalizes the path to prevent different behavior in different drivers. Everything works as expected.

authors: harshavardhana reshadman

repo: minio/cookbook


text:
Configure kops to use a docker registry cache

This change adds a docker registry to the live-1 cluster:
https://github.com/ministryofjustice/cloud-platform-environments/pull/1749
This commit alters the kops config, and the template for new kops
clusters, to use a registry cache via the URL provided.
Once this change has been merged, a rolling update of the live-1
cluster will be required to get worker nodes to start using the
cache.

We want to restrict the cache to only be accessible from the worker nodes - not from the whole internet. So, this PR needs to wait on some more testing.

This is wrong (should be spec.docker.registryMirrors), and a subsequent PR will include the correct version of this change, along with others to deploy the cache. So I'm closing this one.


text:
Decide what framework to use for the catalogue API

What

We want to build a new API service. What technology do we want to implement this with? We are not required to use anything in particular, so choose what suits the team.
We'll have a dev meeting to discuss options

If we have consensus we can go with a solution and write an ADR right away
Otherwise we can take away things to investigate and reconvene to make a decision
Include design of the registration API
Only name and description to be included in the API at this stage

Why

We are going to build a new interface to manually register arbitrary metadata to the catalogue, i.e. anything that cannot be ingested through a ready made ingestion source for whatever reason.
This will make use of the library we've already written to interface with the catalogue, but we want to make this a service now so we can extend it to machine-driven updates at some point.

Assumptions

We probably won't directly recycle code from the previous data platform APIs we built on modernisation platform, but we can use it for inspiration. These APIs dealt with data ingestion, not just metadata.
We don't need AWS API gateway - this was useful when we were building on modernisation platform and using lambdas, but we are now on cloud platform and no longer need a separate gateway to handle things like auth and rate limiting.
We don't want everything to be modifiable via API, e.g. the domain model, glossary will be more controlled.
We will need a way to read metadata as well as write it - in order to populate domain options etc in the new interface.
We will keep it simple and not try to handle ingestion of multiple entities at once. If a related entity doesn't exist, return an error.

Out of scope

We can discuss the metadata we want to accept separately. For now, assume it will be similar to what we are already capturing in data-catalogue-metadata
Removing or archiving metadata

Options to discuss

In the firebreak last year, we explored FastAPI, and we have some example code available for this. However we don't have to
Django / Django Rest Framework
Flask
???

Things to consider

Total cost of ownership
Skills in the team
Integration with EntraID
Ease of API development

Output

ADR for technology choice to build and operate our catalogue APIs
Tickets for the work involved to set up the new service and implement a first endpoint

Additional resources

Previous API design
Service manual: choosing a technology

https://jamboard.google.com/d/1E4QmMtSdBw-9__lIuhnZp8YGzJTG5CMKr7uJq9zIPRQ/viewer?pli=1&mtt=us4lct7lo5tg&f=0

In light of other decisions (build the service as a monolith for now) we may not need an API at all.
It will depend on the approach taken as a result of https://github.com/ministryofjustice/data-catalogue-metadata/issues/14
i.e. what is the path for ingesting metadata from outside of the analytical platform?
Should we need an API, we will build it into the existing Django app rather than making it a separate service. We have already converted our models to use pydantic so we can trivially serialise/deserialise these. Django can be overkill for an API service, but since we already have it as a dependency there is no additional overhead from choosing it here.
Django Rest Framework and Django Ninja are both libraries we can pull in top of django if we need to. These both integrate with swagger for reference documentation.

authors: MatMoore jemnery seanprivett

repo: ministryofjustice/find-moj-data


text:
✨ Spike:  how to add data from HMCTS Purview into the Catalogue

Describe the feature request.
Describe the potential process, poc if possible.
Describe the context.
Gustav Moller
Heya Yvan. I had a chat with Jeremy + some colleagues from HMCTS yesterday about the MoJ Data Catalogue, and how to populate it with information from the HMCTS Purview Data Catalogue.
At the end of the call we agreed to have another call in a month or so. Jeremy said the team should be able to present some idea around how to add data from HMCTS Purview into the MoJ Data Catalogue. Does that work for you? Next call would probably be 18th or 25th September
Notes
May be dependent on https://github.com/ministryofjustice/data-catalogue/issues/250 that adds Azure Data Storage (ADS) support for DataHub.
Value / Purpose
No response
User Types
No response

Purview API:
https://learn.microsoft.com/en-us/rest/api/purview/
Seems like this is part of the Azure Resource Manager API and we can use https://github.com/AzureAD/microsoft-authentication-library-for-python to handle the auth.
Since we're running the ingestion non-interactively we'll need to use the client credentials flow.
Client registration steps are documented here: https://learn.microsoft.com/en-us/rest/api/azure/#client-registration

Register the client application with Microsoft Entra ID.
Set permission requests to allow the client to access the Azure Resource Manager API.
Configure Azure Resource Manager Role-Based Access Control (RBAC) settings for authorizing the client.

Can you export metadata from Purview?
Exporting metadata is only supported for Business Assets, which is a bit useless.
https://techcommunity.microsoft.com/t5/security-compliance-and-identity/now-in-preview-export-your-business-assets-from-microsoft/ba-p/3859055
So seems like the only way is via their API

Murdo and I met with HMCTS devs for their purview catalogue.
We are getting purview access for all our engineers - We can test the api via our users, but i think we'll need another meeting to discuss the feasibility of setting up a client for us to access purview as there was some confusion around this as a possibility

Is it possible to export purview data via its API?
Yes this is possible using its Discovery API to list entities
Here's my proof of concept using the Azure SDK:
import sys
from os import environ

from azure.identity import ClientSecretCredential
from azure.purview.catalog import PurviewCatalogClient

account_name = environ["ACCOUNT_NAME"]

credential = ClientSecretCredential(
    tenant_id=environ["AZURE_TENANT_ID"],
    client_id=environ["AZURE_CLIENT_ID"],
    client_secret=environ["AZURE_CLIENT_SECRET"]
)

client = PurviewCatalogClient(
    endpoint=f"https://{account_name}.purview.azure.com",
    credential=credential
)

result = client.discovery.query({})

for item in result["value"]:
    print(
        f'{item.get("entityType", item.get("objectType"))}: {item["name"]} ({item.get("displayText", "")})'
    )
    print(item.get("description", "No description"))
    print("")

full code and instructions here: https://github.com/MatMoore/azure-purview-experiments
There are additional APIs for Entity level and lineage information. I haven't explored this, so if moving forwards with this we will need to do a mapping exercise between Purview and Datahub metadata.
There is also separate Atlas APIs which may be easier to work with. There is a separate python library for this..
Something like this could be used as part of a one-off ingestion, a custom ingestion source for Datahub, or as an extractor tool that is decoupled from our service (related spike: https://github.com/ministryofjustice/data-catalogue-metadata/issues/14).

I suppose the "keys to the kingdom" argument depends on whether our API secret would grant access to just metadata (acceptable risk) or if we're granted access to their Azure data platform.
From the above it looks like we're ruling out bypassing Purview and ingesting from Azure? I think that's sensible, so that

we guarantee we're only exposing data assets they've also chosen to expose
we capture any metadata enhancements added within Purview

@jemnery I haven't completely ruled it out, but I definitely agree that ingesting from Purview is preferable to bypassing it, for those same reasons. When testing this I set up a token with just read access to Purview, so there was no way for that credential to alter anything or expose any data.
The advantage of ingesting direct from blob storage or SQL databases is that its possible in Datahub out of the box, but it just seems like that approach would become impossible to manage centrally as more data assets are added (both credential management and recipe configuration would need input from HMCTS)

authors: LavMatt MatMoore YvanMOJdigital jemnery


text:
Fix arrival types

This updates the Arrival form to send the expected values, before the arrivalDate was date  and the keyWorkerStaffId was not present. I've also updated the DateTime converter to only include the timestamp if a time is provided, The API only accepts dates in YYYY-MM-DD format, except for in the case of departures.

No contract tests! Have had it on my list to sort for ages!


text:
IR-385: Update incident reporting service data model and URLs

Depends on hmpps-incident-reporting-api#139

@karenmillermoj sorry, but i rebased this cos i had to change the JSON file after you approved. feel free to merge when you’re happy (cos i don’t have merge powers)


text:
[Snyk] Fix for 1 vulnerabilities

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to fix one or more vulnerable packages in the `rubygems` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

Gemfile

Gemfile.lock

Vulnerabilities that will be fixed
With an upgrade:

Severity
Priority Score (*)
Issue
Breaking Change
Exploit Maturity

616/1000  Why? Proof of Concept exploit, Has a fix available, CVSS 5.9
Web Cache Poisoning SNYK-RUBY-RACK-1061917
No
Proof of Concept

(*) Note that the real score may have changed since the PR was raised.
Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Note: This is a default PR template raised by Snyk. Find out more about how you can customise Snyk PRs in our documentation.
Learn how to fix vulnerabilities with free interactive lessons:
🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.

Duplicate of dependabot work

authors: davidread starswan


text:
Migrate Role Data Items Checks into the Orchestration Service

This PR adds the method isUserAuthorisedToEditField to the Validation Service, encapsulating the logic previously
contained within the check_role_data_items stored procedure in the database and aiding the migration away from the legacy stored procedures. The fields added in the new RestrictedField enum are sourced from the dev database and have been cross-checked with those in uat to ensure consistency.
This PR also renames the UserValidationDTO class to be called UserActionDTO, as well as refactoring the isUserActionValid method of the ValidationService to take an additional parameter of UserSummaryDTO (instead of computing this inside of said method).
Link to story

Some changes required & a few suggestions. I'd also take a look at the SonarCloud report which is flagging one new issue - it also looks like we could improve the code coverage a little.

Looks good, but could probably still improve the code coverage slightly.

On the code coverage, the only lines which are applicable are those in the ValidationService - the other four lines I haven't changed the tests for as part of this PR. Of the lines applicable in the ValidationService, I would say that the changes have been comprehensively tested - the only thing I haven't checked for is a null UserSummaryDTO. Happy to add this check in if we really require it.


text:
CRIMAPP-290 Spike PSE when PSE is a type of CrimeApplication

Description of change
Spike end to end PSE. This spike retains a single CrimeApplication table on the datastore.
Link to relevant ticket
CRIMAPP-290
Notes for reviewer
Screenshots of changes (if applicable)
Before changes:
After changes:
How to manually test the feature

Closed as spike complete

authors: hiboabd timpeat


text:
Windows updates on port 80 don't work

Expected Behavior

Windows AD/DC boxes should be able to receive patches/updates
Actual Behavior

These WSUS updates are being blocked on port 80
Steps to Reproduce the Problem

Other information

The tenants concerned are the IAPS and Equip accounts

This one might be down to the network ACLs in the customer VPCs, and the ports they allow out.

https://github.com/ministryofjustice/modernisation-platform/pull/2916 <- this PR would solve the immediate issue

Pulled this one out of sprint until I can rewrite it. In general, we need to revisit how we control http traffic leaving the modernisation platform and apply some FQDN filtering. This is a big bigger than one sentence though.


text:
Network Firewall Traffic Block

This PR is to put in place the block function for the Network Firewall

In the Last commit i removed the following blocks of code out of the module
stateful_engine_options {
rule_order = "STRICT_ORDER"
}
This effectively changes the order the rules are being read and applied back to the default rule group ordering, the default action order by which Suricata evaluates stateful rules is determined by the following settings, listed in order of precedence:
The Suricata action specification. This takes highest precedence.
Actions are processed in the following order:
pass
drop
reject
alert
were are before it  was applying the rules in order based on a map but because the map is created by a merge there was no way to guarantee the order of the rules.


text:
🛑 Matrix is down

In b965b08, Matrix (https://matrix.mint.lgbt:8448/_matrix/federation/v1/version) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Matrix is back up in 16cd246 after 6 minutes.

repo: mint-lgbt/status


text:
🛑 Matrix is down

In 764b4c1, Matrix (https://matrix.mint.lgbt:8448/_matrix/federation/v1/version) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Matrix is back up in d6cc793 after 6 minutes.


text:
feat:小故事增加埋点

提交pr时需要关联issue，请大家遵守
#1233
1、升级点 （清晰准确的描述升级的功能点）
增加 分享页关闭按钮点击统计、更多推荐点击统计、来源外链点击统计、翻页统计
2、影响范围 （描述该需求上线会影响什么功能）
线上小故事 统计项增加
3、自测 checklist

[x] 百度统计正常加载

4、需要覆盖的场景和case

[x] 是否覆盖了sf打开mip页
[ ] 是否验证了极速服务mip页面效果

5、自测机型和浏览器

[x] 是否覆盖了ios系统手机
[x] 是否覆盖了安卓系统手机
[x] 是否覆盖了iphone版式浏览器（比如qq、uc、chrome、safari、安卓自带浏览器）
[x] 是否覆盖了手百

温馨提示：非 mip-extensions 仓库的组件请在组件平台提交，否则一律打回；

确认免测

repo: mipengine/mip-extensions


text:
player handling

i want to test a commit

i want to add player handling

repo: mirabellachn/tic-tac-toe-react


text:
Update of opam-repository commit to retrieve solo5 0.7.5

This fixes #166

Is there a way to exclude solo5 before 0.7.5 ? Solo5 is currently not restricted in config.ml.

Since solo5 is a dependency of ocaml-solo5, and not of the unikernel (and thus installed in the opam switch), we can't easily specify this. What we can do:

mark old solo5 as available: false in opam-repository
add a lower bound to the mirage tool in respect to solo5

Neither is optimal. On the flipside, our build process uses the latest opam repository commit, and there the opam solver will pick solo5 0.7.5. I reproduced this built on builds.robur.coop (sorry, there may be DNS issues), and will cut a release with this change.

authors: hannesm palainp

repo: mirage/qubes-mirage-firewall


text:
Added step in CD workflow to add a tag when publishing a new DEV version (needed for cocoapod)

Description
In the current CD workflow, a new dev version is built and published for each new commit in master branch. However, this would only release the "maven" artefacts. For project using cocoapod, the new release would not be available since it requires that a tag is added on github.
This adds an extra step to properly create and push the tag.
Motivation and Context
The usual flow was manually create a tag each time a new releases was needed. Now it is automatic.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

As a stretch goal we could also properly publish versions to CocoaPods repository. We would have to validate the podspec with pod spec lint and publish it with pod trunk push.

authors: antoinelamy gbourassa

repo: mirego/trikot


text:
Ensure a new test suite passes

rake in a freshly-cloned directory was crashing because the tmp directory didn't exist.
Now the tmp directory is part of the Git repo and will be there even for freshly-cloned repositoriees.

:+1:

repo: mironrb/miron


text:
Improve order business logic

This PR moves order related business logic from models to utils file and improves code quality.
Closes #1463
Pull Request Checklist

[x] Privileged views and APIs are guarded by proper permission checks.
[x] All visible strings are translated with proper context.
[x] All data-formatting is locale-aware (dates, numbers, and so on).
[x] Database queries are optimized and the number of queries is constant.
[x] The changes are tested.
[x] The code is documented (docstrings, project documentation).
[x] Python code quality checks pass: pycodestyle, pydocstyle, pylint.
[x] JavaScript code quality checks pass: eslint.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@acdd238). Click here to learn what that means.
The diff coverage is 60.86%.

@@            Coverage Diff            @@
##             master    #1469   +/-   ##
=========================================
  Coverage          ?   83.35%
=========================================
  Files             ?      128
  Lines             ?     5774
  Branches          ?      659
=========================================
  Hits              ?     4813
  Misses            ?      802
  Partials          ?      159

Impacted Files
Coverage Δ

saleor/dashboard/order/urls.py
100% <ø> (ø)

saleor/dashboard/order/utils.py
100% <ø> (ø)

saleor/dashboard/order/views.py
56.81% <0%> (ø)

saleor/checkout/core.py
92.62% <100%> (ø)

saleor/dashboard/order/forms.py
72.72% <53.33%> (ø)

saleor/order/models.py
89.56% <80%> (ø)

Continue to review full report at Codecov.

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

authors: codecov-io mad-anne

repo: mirumee/saleor


text:
Upgraded PostgreSQL version on Circle-CI

This fixes the build of Circle-CI that was broken after dropping Django 2.2 for 3.0 (#5328).
Pull Request Checklist

[ ] Privileged views and APIs are guarded by proper permission checks.
[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[ ] Database queries are optimized and the number of queries is constant.
[ ] Database migration files are up to date.
[x] The changes are tested.
[ ] GraphQL schema and type definitions are up to date.
[ ] Changes are mentioned in the changelog.

Here is the report for c1619c230f186b0ce8ef70af3bc94f40f8ea325e (NyanKiyoshi/saleor @ circle-ci/django-30)
Base comparison is ba488760578354f53dc8c9d66a4638fc7469bbe0.
No differences were found. (click me)

# api.benchmark category
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  category view                              	         23	         23	              0

# api.benchmark checkout
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  add billing address to checkout            	         34	         34	             20
  add shipping to checkout                   	          7	          7	              0
  checkout payment charge                    	         10	         10	              0
  complete checkout                          	          8	          8	              0
  create checkout                            	          5	          5	              1

# api.benchmark collection
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  collection view                            	         21	         21	              0

# api.benchmark homepage
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  featured products list                     	         20	         20	              0
  retrieve main menu                         	          8	          8	              0
  retrieve product list                      	          6	          6	              0
  retrieve secondary menu                    	          8	          8	              0
  retrieve shop                              	          2	          2	              0
  user checkout details                      	         53	         53	             28

# api.benchmark product
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  product details                            	         17	         17	              3
  retrieve product attributes                	          9	          9	              0

# api.benchmark variant
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  product variant bulk create                	         48	         48	              3
  retrieve variant list                      	         23	         23	              9

# api product sorting attributes
  test name                                  	left count 	right count	duplicate count
  -------------------------------------------	-----------	-----------	---------------
  sort product not having attribute data     	         20	         20	              0

authors: NyanKiyoshi django-queries


text:
Add custom order filter by product_sku

This add filtering by product_sku to orders

Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Task linked: SALEOR-3713 Add ability to search orders by product SKU

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Dawid Matuszczyk seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

authors: CLAassistant dexon44 patrys


text:
Upgrade django-bootstrap3 to 8.2.1 (support django1.11)

Refs #810

@patrys i cleaned this commit


text:
Mass erase not working with chip locked

I only tested with a MS51XC0BE, so this may or may not apply to other chips.
When the chip lock enable bit of the CONFIG 0 register is reset (chip locked) it seems like the mass erase functionality does not work.
I tested with my own implementation of the "platform specific" functions on an Arduino Nano, so I might have messed something myself. Nonetheless everything else seem to work (read and write of the flash, config and so on).
Carefully comparing with a logic analyzer what the NuLink programmer does I noticed a very small difference after the mass erase command is issued.
The NuLink keeps the CLK line low after the command, while this library turns it on after approximately 3ms for a 1ms duration and then off again. Eliminating this last pulse seem to solve the problem.
I corrected 2 functions in Nuvoton8051.c, adding the possibility to specify a zero value for the delayTime1 parameter of the Nuvoton8051_WriteData function, and using this in the Nuvoton8051_MassErase function:
static void Nuvoton8051_WriteData(uint8_t value, uint32_t isLastTransfer, uint32_t delayTime1, uint32_t delayTime2) {
	Nuvoton8051_WriteBits(value, 8);

	Nuvoton8051_GpioSetDatState(!!isLastTransfer);
	if (delayTime1!=0) {
	  Nuvoton8051_DelayUs(delayTime1);
	  Nuvoton8051_GpioSetClkState(1);
	}
	Nuvoton8051_DelayUs(delayTime2);

	Nuvoton8051_GpioSetClkState(0);
	Nuvoton8051_GpioSetDatState(0);
}

void Nuvoton8051_MassErase() {
	Nuvoton8051_SendCommand(38, 0x3a5a5);
	Nuvoton8051_WriteData(255, 1, 0, 500);
}

Thank you for input. I currently do not have any N76E003 avalaible and it will take me few weeks to get some. I am also very busy these days. I will test propsoed change if it works with N76E003 and if yes, I will update library. It is long time since I made this library, so I do not remember precisely how signals look like.

authors: buttim misaz


text:
option to modify list of css selectors

Привет, спасибо за плагин!
Возникла необходимость типографить не только h1-h3 и p, решил добавить возможность изменять список селекторов.
Надеюсь всё завел правильно :)

Красота какая, принимаю 👍

Ракета!
Думаю может надо версию бампнуть чтобы на npmjs обновилось?

Добавил в 1.2.0

authors: mishamyrt yagee

repo: mishamyrt/astro-typograf


text:
Atelier SPEC vision Produit

Suite aux travaux mener sur la vision produit TDB, écrire les spec et intégration dans macro road map.
Prévu IRL

[ ] Organsier l'atelier PM/PO
[ ] Faire les Spec (à grosse maille)
[ ] Intégrer les spec dans la road map
[ ] Présentation à l'équipe

J'ai commencé à travailler sur les specs connexion compte et partage simplifié
Données collectées :

Préalable : évolution du schéma de données https://github.com/mission-apprentissage/flux-retour-cfas/issues/2164
Demander ou Code Insee ou code commune et effectuer la conversion : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2175

Vue publique :

Maquette https://github.com/mission-apprentissage/flux-retour-cfas/issues/2181
Tech mise en ligne : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2182

Parcours aiguillé

Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2167
Tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2169

Création de compte OF

Tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2168
Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2170
Process validation compte OF : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2171
Tableau suivi création et validation de compte : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2172

Création de compte User pilote :

Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2173
Tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2174
PO : définir les rôles en fonction des règles métier : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2183

Connexion et oubli du MDP

Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2178
Tech connexion : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2179
Tech renouvellement MDP : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2180

Vues et fonctionnalités sur les comptes

Maquette vue OF https://github.com/mission-apprentissage/flux-retour-cfas/issues/2176
Tech vue OF https://github.com/mission-apprentissage/flux-retour-cfas/issues/2177
Historique de la transmission de données : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2187
Vues pilotes à spécifier par les PO : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2184 s’inspirer du travail de Sofia : https://docs.google.com/spreadsheets/d/1eA5Bd14lXxlVhjUO4x6bRaDxUjg84zFzIYY9DkV87qM/edit#gid=0

Partage Simplifié

Parcours sans ERP - maquette + mise en ligne maquette - https://github.com/mission-apprentissage/flux-retour-cfas/issues/2185
Mise en ligne du parcours sans ERP accès à PS - https://github.com/mission-apprentissage/flux-retour-cfas/issues/2186
Télécharger un fichier d’exemple : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2188
Mise en ligne du fichier d’exemple : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2189
Remplir en ligne Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2190
Remplir en ligne tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2192
Téléverser Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2193
Téléverser Tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2194
Copier Coller Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2195
Copier Coller Tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2196
Mapping Maquette : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2197
Mapping Tech : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2198
Maquette Affichage erreurs et correction en ligne : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2199
Affiches erreur et modification en ligne : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2200
Test Utilisateurs maquettes https://github.com/mission-apprentissage/flux-retour-cfas/issues/2202
Test utilisateurs prototype https://github.com/mission-apprentissage/flux-retour-cfas/issues/2203

A décider :

Reprendre plus tard https://github.com/mission-apprentissage/flux-retour-cfas/issues/2201

A spécifier

Envoi et enregistrement dans TdB https://github.com/mission-apprentissage/flux-retour-cfas/issues/2204
Cas d’erreur : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2205
Suivi sur MB https://github.com/mission-apprentissage/flux-retour-cfas/issues/1974
Envoi notifs https://github.com/mission-apprentissage/flux-retour-cfas/issues/2206
Test sur CVL, Aura, Mayotte : https://github.com/mission-apprentissage/flux-retour-cfas/issues/2207
Communication : https://github.com/mission-apprentissage/flux-retour-cfas/issues/1944
Déploiement https://github.com/mission-apprentissage/flux-retour-cfas/issues/1932
Vidéos / Tutos : https://github.com/mission-apprentissage/flux-retour-cfas/issues/1953

A décider :

Admin CFA pour valider les autres comptes
Vue OF lien vers les sites institutionnel
Reprendre plus tard - un fichier a été téléchargé sur partage simplifié, mais les corrections ne sont pas finies

authors: MelanieRAPHAEL RaphBeta

repo: mission-apprentissage/flux-retour-cfas


text:
🛑 La bonne alternance API is down

In be2ab61, La bonne alternance API (https://labonnealternance.apprentissage.beta.gouv.fr/api) was down:

HTTP code: 0
Response time: 0 ms

Resolved: La bonne alternance API is back up in e2af8cf.

repo: mission-apprentissage/upptime


text:
ロードマップ

[ ] 基本的なエンドポイントの実装
[ ] メンションコマンド (参考: yupix/MiPA)
[x] データクラス
[x] 存在しないエンドポイントを呼び出そうとした場合にエラーを返す
[x] デコレーター使う 無理

デコレーターは実装できた

repo: misspy-dev/misspy-rewrite


text:
Can not install with 2080ti

It‘s an amazing package, and may be is the only cuda 4 bit method for MPT for now. However, I can not install it because of the following, my cuda version is Cuda compilation tools, release 11.2, V11.2.152, and graph card is 2080ti, maybe the problem is because the card is too old? because I use another machine with 3090 cuda is 11.3, V11.3.109 and everything is ok. is there any method to install the pachage with 2080ti? the log is at below:
(whisper) vitualwht@DESKTOP-DSTBT14:~$ cd llm-awq
(whisper) vitualwht@DESKTOP-DSTBT14:~/llm-awq$ cd awq/kernels
ython setup.py i(whisper) vitualwht@DESKTOP-DSTBT14:~/llm-awq/awq/kernels$ python setup.py install
running install
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!
    ********************************************************************************
    Please avoid running ``setup.py`` directly.
    Instead, use pypa/build, pypa/installer, pypa/build or
    other standards-based tools.

    See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
    ********************************************************************************

!!
self.initialize_options()
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/setuptools/_distutils/cmd.py:66: EasyInstallDeprecationWarning: easy_install command is deprecated.
!!
    ********************************************************************************
    Please avoid running ``setup.py`` and ``easy_install``.
    Instead, use pypa/build, pypa/installer, pypa/build or
    other standards-based tools.

    See https://github.com/pypa/setuptools/issues/917 for details.
    ********************************************************************************

!!
self.initialize_options()
running bdist_egg
running egg_info
writing f16s4_gemm.egg-info/PKG-INFO
writing dependency_links to f16s4_gemm.egg-info/dependency_links.txt
writing requirements to f16s4_gemm.egg-info/requires.txt
writing top-level names to f16s4_gemm.egg-info/top_level.txt
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/utils/cpp_extension.py:476: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
warnings.warn(msg.format('we could not find ninja.'))
reading manifest file 'f16s4_gemm.egg-info/SOURCES.txt'
writing manifest file 'f16s4_gemm.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_ext
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/utils/cpp_extension.py:388: UserWarning: The detected CUDA version (11.2) has a minor version mismatch with the version that was used to compile PyTorch (11.7). Most likely this shouldn't be a problem.
warnings.warn(CUDA_MISMATCH_WARN.format(cuda_str_version, torch.version.cuda))
building 'f16s4_gemm' extension
creating build/temp.linux-x86_64-cpython-39
/usr/local/cuda/bin/nvcc -I/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include -I/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/torch/csrc/api/include -I/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/TH -I/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/THC -I/usr/local/cuda/include -I/home/vitualwht/anaconda3/envs/whisper/include/python3.9 -c gemm_cuda_gen.cu -o build/temp.linux-x86_64-cpython-39/gemm_cuda_gen.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options '-fPIC' -O3 -std=c++17 -keep -DTORCH_API_INCLUDE_EXTENSION_H -DPYBIND11_COMPILER_TYPE="_gcc" -DPYBIND11_STDLIB="_libstdcpp" -DPYBIND11_BUILD_ABI="_cxxabi1011" -DTORCH_EXTENSION_NAME=f16s4_gemm -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_75,code=compute_75 -gencode=arch=compute_75,code=sm_75
gemm_cuda_gen.cu(23): warning: variable "scaling_factors_shared" was declared but never referenced
gemm_cuda_gen.cu(24): warning: variable "zeros_shared" was declared but never referenced
gemm_cuda_gen.cu(28): warning: variable "blockIdx_x" was declared but never referenced
gemm_cuda_gen.cu(42): warning: variable "ld_zero_flag" was declared but never referenced
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/c10/util/irange.h(54): warning: pointless comparison of unsigned integer with zero
detected during:
instantiation of "__nv_bool c10::detail::integer_iterator<I, one_sided, >::operator==(const c10::detail::integer_iterator<I, one_sided, > &) const [with I=size_t, one_sided=false, =0]"
(61): here
instantiation of "__nv_bool c10::detail::integer_iterator<I, one_sided, >::operator!=(const c10::detail::integer_iterator<I, one_sided, > &) const [with I=size_t, one_sided=false, =0]"
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/c10/core/TensorImpl.h(77): here
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/c10/util/irange.h(54): warning: pointless comparison of unsigned integer with zero
detected during:
instantiation of "__nv_bool c10::detail::integer_iterator<I, one_sided, >::operator==(const c10::detail::integer_iterator<I, one_sided, > &) const [with I=std::size_t, one_sided=true, =0]"
(61): here
instantiation of "__nv_bool c10::detail::integer_iterator<I, one_sided, >::operator!=(const c10::detail::integer_iterator<I, one_sided, > &) const [with I=std::size_t, one_sided=true, =0]"
/home/vitualwht/anaconda3/envs/whisper/lib/python3.9/site-packages/torch/include/ATen/core/qualified_name.h(73): here
gemm_cuda_gen.cu(10): warning: function "__pack_half2" was declared but never referenced
ptxas gemm_cuda_gen.ptx, line 911; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 915; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 919; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 923; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 927; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 931; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 935; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 939; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 983; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 987; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 991; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 995; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 999; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 1003; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 1007; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas gemm_cuda_gen.ptx, line 1011; error   : Feature '.m16n8k16' requires .target sm_80 or higher
ptxas fatal   : Ptx assembly aborted due to errors
error: command '/usr/local/cuda/bin/nvcc' failed with exit code 255

@wanghongtai92: Yes, your graphics card is older, AWQ works on GPUs that are of Apmpere architecture and newer.

@wanghongtai92: Yes, your graphics card is older, AWQ works on GPUs that are of Apmpere architecture and newer.

If it is possible to make it work on older card?

@wanghongtai92: You will have to write custom CUDA kernels which, I assume is a tall order.

@wanghongtai92: You will have to write custom CUDA kernels which, I assume is a tall order.

Hi, I wonder would that be successful for cards with SM_75 like Tesla T4?

repo: mit-han-lab/llm-awq


text:
Model configs is not available

Hello!
Thank you for wonderful model!
I ran into a problem that the link to the model config  (for example https://hanlab.mit.edu/files/SPVNAS/spvnas_specialized/SemanticKITTI_val_SPVNAS@65GMACs/net.config) doesn't work anymore
Could you please share the new link?
Thank you!

Same problem here!

This seems to be related to the firewall setting of our campus. We are actively looking into resolving this. At the same time, could you try VPN to see whether that works?

authors: Tony-WJR VitalyyBezuglyj zhijian-liu

repo: mit-han-lab/spvnas


text:
Add information on how to add zig-overlay as zigpkgs

In a good amount of time I tried to install zig on my NixOS system and totally immerse myself in this good language. The only solid way was to use zig-overlay,  but the problem was running zig only once or in a nix-shell, which was not suitable for my wants. Also after cleanup you need to recompile ~300MB to run zig, which takes some time.
Fortunately, I stumbled upon docs in flake.nix file and decided to make installing nightly zig as a package easier for others by adding this block in the README.
What changed in the README:

Added header about package
Added code about flake.nix modules
Added code about adding package to configuration.nix

Changes for flake.nix did work for my use in setting up a dev shell

authors: DeusFerrariis Yappaholic

repo: mitchellh/zig-overlay


text:
Python3.6 and installation

Can you explain please how to run a new version of mitmproxy on Debian 9? When I run
"mitmproxy" I always get the error, that python 3.6 or higher must be installed, despite the fact that I've installed it.
Any other comments? What have you tried so far?

Aliases for "python" and "python3" pointing to python3.6
update-alternatives switching to python3.6

3."python --version" says "Python 3.6.4"

Installing python 3.6 from sources and from testing repository
Installing mitmproxy from git
Installing mitmproxy via pip

System information
Debian-9-x86_64
Mitmproxy 4.0.3

If this can help someone - the kind of solution is to download the source code of mitmproxy and run "python3.6 setup.py install" - so in this way mitmproxy will be linked to python3.6. But I don't think it's the right solution, and surely this is not the easiest way of installation. So still waiting for another variant.

How did you install mitmproxy? With apt-get? with pip3?
Apt-get won't work at all.
If you use pip3, make sure to use the one from python3.6 - and not the system one! You can check with pip3 --version

I installed mitmproxy with pip3. As I've checked recently pip3 --version is saying that it was installed into python3.5 folder. So how should have I installed pip3 to have it being installed into python3.6 folder? I was just followig instructions from here https://docs.mitmproxy.org/stable/overview-installation/.

sudo apt install python3-pip
sudo pip3 install -U pip
sudo pip3 install mitmproxy

Well yes - Debian 9 simple does not provide a Python version that is compatible with mitmproxy - thats why we put in the warning/error message.
You need to install Python3.6 including pip3 for that python version, then you can use pip3 install mitmproxy. I suggest you take a look at https://github.com/pyenv/pyenv

Can you explain please how to install Python3.6 including pip3? I installed python3.6 from here https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz and if I am not mistaken it doesn't include pip. When I run command from your instructions (sudo apt install python3-pip ) pip is linked to the python3.5 (because there is no python3.6 in stable version of Debian). So the question now is how to install pip to have it working with python3.6 by default? I think you should update your instruction after you have moved to new python version which is not even supported in stable versions of Debian.

Our docs clearly state that we don't support older Debian versions. There is no point in explaining something we don't support.
Did you look at the pip documentation on how to install it? https://pip.pypa.io/en/stable/installing/

Excuse me, Debian 9 is the latest stable version for now. The new Debian 10 which supports python3.6  is only in testing version. So you claim that you don't support Debian at all?

Not at the moment, yes. This is stated in our docs: sudo apt install python3-pip # Debian 10 or higher, Ubuntu 17.10 or higher

So you claim that you don't support Debian at all?

You can of course use the precompiled binaries or Docker - we just don't support this specific installation method on Debian 9. There's probably a way to install mitmproxy from source nonetheless, but we don't have the resources to look into it - sorry.

Did you look at the pip documentation on how to install it? https://pip.pypa.io/en/stable/installing/
Yes, now I've found how to install it manualy, but I thought there must be an easier way like it was when mitmproxy worked with python3.5. Now I see that there isn't. Anyway, I think that you have to mention in your instructions how to install pip3.6 or python3.6  on older versions of Debian and other Linux versions. I can't even call the Debian 9 "older" because it's the latest stable version. I think the same situation with Ubuntu. If you do it, I think the list of your users will be wider. For example, I had no problems of installing mitmproxy 3.0.4 and eairlier, and updating it. It was done just by few commands. But when you upgraded to python3.6 I stucked with it.

Anyway, thank you for help guys. You are doing right job.

We did not take the decision lightly to move to Python 3.6.
Here is a comprehensive list of Linux variants that provide py3.6 directly:
https://github.com/mitmproxy/mitmproxy/issues/2266
As mentioned in our docs, pyenv is an easy way to install new Python versions.
Here are a few commands that should be straightforward (untested):
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
# now do what pyenv-installer told you to do
pyenv install 3.6.5
pyenv shell 3.6.5
pip3 install mitmproxy

Not that complicated after all, is it?

authors: Kriechi mhils sommis

repo: mitmproxy/mitmproxy


text:
Many zeros lines/no secret data in SSLKEYLOGFILE?

Problem Description
Sometimes, even when no connections yet show up in mitmweb IIRC, the SSLKEYLOGFILE already writes zeros?
If I interpret the format correctly that means no secret data is saved. Thus, this makes the entry totally useless, I think…
Note that all entries that I need to decrypt, seem to be in there, so I don't see a problem.
Or are these possibly TLS 1.3 entries?? (see https://github.com/mitmproxy/mitmproxy/issues/3994)
-> If so, maybe you can still improve the error handling there. Possibly omit writing these useless values, and show an error/warning in the console for that, possibly…
Steps to reproduce the behavior:

Start mitmweb with that variable?

What happens (an example file):
CLIENT_RANDOM eda2916696f45b75a2d728c9560050f7538a776ed01251baabf0c48cc289b286 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CLIENT_RANDOM 3263fd6db1aa233f93d7cf6215fa6952aebb98ab55196c453509194b14d51fc8 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
CLIENT_RANDOM 6ae0c2a1a62377db612c359cc3c85a7c063b8e2301a0cfafbd55e06e2c9bf44e 88d02a778a3fc2c2[…]bd10237fbe450ab

System Information
$ mitmproxy --version
Mitmproxy: 5.2
Python:    3.7.3
OpenSSL:   OpenSSL 1.1.1d  10 Sep 2019
Platform:  Linux-5.4.51-v7l+-armv7l-with-debian-10.4

Not sure what's up here, but we can close this in favor of #3994. There's no point in spending additional cycles here instead of just using the new OpenSSL APIs. Thanks for the report anyways!

authors: mhils rugk


text:
Document supplying sequence parameters through command line or fix parsing cmd arguments

It is not clear how to supply an array value (and if it is possible at all).
Steps to reproduce the behavior:

Pick a parameter that accepts a sequence, e.g. server_replay_ignore_params. Try setting more than one value of it (so that you see multiple values in the Options view).
mitmproxy --set server_replay_ignore_params=value1 --set server_replay_ignore_params=value2 (only the latter is saved).
mitmproxy --set server_replay_ignore_params=value1 server_replay_ignore_params=value2 (parsing error).
mitmproxy --set server_replay_ignore_params=value1,value2 (not parsed).
mitmproxy --set "server_replay_ignore_params=['value1','value2']" (not parsed).

Options page provides no clues on the matter.
System Information
Mitmproxy: 6.0.2
Python:    3.9.2
OpenSSL:   OpenSSL 1.1.1i  8 Dec 2020
Platform:  macOS-10.15.7-x86_64-i386-64bit

Thanks! I believe this is a duplicate of #3015.
The best way to do this right now is to set it in config.yaml, we really need to fix up our cmdline parser. I'll try to write something up in the next few days.

authors: greatvovan mhils