Merge master into staging-next

This commit is contained in:
github-actions[bot] 2022-05-10 00:02:13 +00:00 committed by GitHub
commit f09c526834
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 245 additions and 586 deletions

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, pkg-config, file, zip, wxGTK30-gtk3, gtk3
{ lib, stdenv, fetchurl, fetchpatch, pkg-config, file, zip, wxGTK31-gtk3, gtk3
, contribPlugins ? false, hunspell, gamin, boost, wrapGAppsHook
}:
@ -15,14 +15,55 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ pkg-config file zip wrapGAppsHook ];
buildInputs = [ wxGTK30-gtk3 gtk3 ]
buildInputs = [ wxGTK31-gtk3 gtk3 ]
++ optionals contribPlugins [ hunspell gamin boost ];
enableParallelBuilding = true;
patches = [ ./writable-projects.patch ];
patches = [
./writable-projects.patch
./fix-clipboard-flush.patch
# Fix build on non-x86 machines
(fetchpatch {
name = "remove-int3.patch";
url = "https://github.com/arnholm/codeblocks_sfmirror/commit/d76c015c456561d2c7987935a5f4dc6c0932b0c4.patch";
sha256 = "sha256-dpH33vGf2aNdYTeLwxglYDNbvwoY2bGSG6YFRyoGw+A=";
})
(fetchpatch {
name = "remove-pragmas.patch";
url = "https://github.com/arnholm/codeblocks_sfmirror/commit/966949d5ab7f3cb86e2a2c7ef4e853ee209b5a1a.patch";
sha256 = "sha256-XjejjGOvDk3gl1/n9R69XATGLj5n7tOZNyG8vIlwfyg=";
})
# Fix build with GCC 11
(fetchpatch {
name = "use-gcc11-openfilelist.patch";
url = "https://github.com/arnholm/codeblocks_sfmirror/commit/a5ea6ff7ff301d739d3dc8145db1578f504ee4ca.patch";
sha256 = "sha256-kATaLej8kJf4xm0VicHfRetOepX8O9gOhwdna0qylvQ=";
})
(fetchpatch {
name = "use-gcc11-ccmanager.patch";
url = "https://github.com/arnholm/codeblocks_sfmirror/commit/04b7c50fb8c6a29b2d84579ee448d2498414d855.patch";
sha256 = "sha256-VPy/M6IvNBxUE4hZRbLExFm0DJf4gmertrqrvsXQNz4=";
})
# Fix build with wxGTK 3.1.5
(fetchpatch {
name = "use-wxgtk315.patch";
url = "https://github.com/arnholm/codeblocks_sfmirror/commit/2345b020b862ec855038dd32a51ebb072647f28d.patch";
sha256 = "sha256-RRjwZA37RllnG8cJdBEnASpEd8z0+ru96fjntO42OvU=";
})
(fetchpatch {
name = "fix-getstring.patch";
url = "https://github.com/arnholm/codeblocks_sfmirror/commit/dbdf5c5ea9e3161233f0588a7616b7e4fedc7870.patch";
sha256 = "sha256-DrEMFluN8vs0LERa7ULGshl7HdejpsuvXAMjIr/K1fQ=";
})
];
preConfigure = "substituteInPlace ./configure --replace /usr/bin/file ${file}/bin/file";
postConfigure = optionalString stdenv.isLinux "substituteInPlace libtool --replace ldconfig ${stdenv.cc.libc.bin}/bin/ldconfig";
configureFlags = [ "--enable-pch=no" ]
++ optionals contribPlugins [ "--with-contrib-plugins" "--with-boost-libdir=${boost}/lib" ];
configureFlags = [ "--enable-pch=no" ] ++ optionals contribPlugins [
("--with-contrib-plugins" + optionalString stdenv.isDarwin "=all,-FileManager,-NassiShneiderman")
"--with-boost-libdir=${boost}/lib"
];
postInstall = optionalString stdenv.isDarwin ''
ln -s $out/lib/codeblocks/plugins $out/share/codeblocks/plugins
'';
meta = {
maintainers = [ maintainers.linquize ];

View file

@ -0,0 +1,24 @@
diff --git a/src/src/app.cpp b/src/src/app.cpp
index 81130fd..f98d37b 100644
--- a/src/src/app.cpp
+++ b/src/src/app.cpp
@@ -602,7 +602,8 @@ bool CodeBlocksApp::OnInit()
m_BatchWindowAutoClose = true;
m_pSingleInstance = nullptr;
- wxTheClipboard->Flush();
+ if (wxTheClipboard->IsOpened())
+ wxTheClipboard->Flush();
wxCmdLineParser& parser = *Manager::GetCmdLineParser();
parser.SetDesc(cmdLineDesc);
@@ -851,7 +852,8 @@ bool CodeBlocksApp::OnInit()
int CodeBlocksApp::OnExit()
{
- wxTheClipboard->Flush();
+ if (wxTheClipboard->IsOpened())
+ wxTheClipboard->Flush();
if (g_DDEServer) delete g_DDEServer;

View file

@ -22,12 +22,12 @@ let
pkg-config
docbook2x
docbook-xsl-nons
wrapGAppsHook
];
buildInputs = [
gtk3
gobject-introspection
vala gtk-doc
wrapGAppsHook
];
});

View file

@ -2,7 +2,7 @@
{pkgs ? import <nixpkgs> {
inherit system;
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}:
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-14_x"}:
let
nodeEnv = import ./node-env.nix {

View file

@ -6,13 +6,13 @@
postInstall = ''
mkdir "$out/bin"
echo '#!/bin/sh' >> "$out/bin/matrix-recorder"
echo "'${pkgs.nodejs-12_x}/bin/node'" \
echo "'${pkgs.nodejs-14_x}/bin/node'" \
"'$out/lib/node_modules/matrix-recorder/matrix-recorder.js'" \
'"$@"' >> "$out/bin/matrix-recorder"
echo '#!/bin/sh' >> "$out/bin/matrix-recorder-to-html"
echo 'cd "$1"' >> "$out/bin/matrix-recorder-to-html"
echo "test -d templates/ || ln -sfT '$out/lib/node_modules/matrix-recorder/templates' templates" >> "$out/bin/matrix-recorder-to-html"
echo "'${pkgs.nodejs-12_x}/bin/node'" \
echo "'${pkgs.nodejs-14_x}/bin/node'" \
"'$out/lib/node_modules/matrix-recorder/recorder-to-html.js'" \
'.' >> "$out/bin/matrix-recorder-to-html"
chmod a+x "$out/bin/matrix-recorder"

View file

@ -21,11 +21,11 @@ let
self = python3Packages.buildPythonApplication rec {
pname = "mercurial${lib.optionalString fullBuild "-full"}";
version = "6.1.1";
version = "6.1.2";
src = fetchurl {
url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
sha256 = "sha256-V7ikYdDOE9muOBfYqL35Ay407fqsPbzLO2a4NdzpM4g=";
sha256 = "sha256-pSgQ/AFAmCjEl00Lwsu1yA6UjVtYTPsadpliPpJKLyo=";
};
format = "other";
@ -35,7 +35,7 @@ let
cargoDeps = if rustSupport then rustPlatform.fetchCargoTarball {
inherit src;
name = "mercurial-${version}";
sha256 = "sha256-HYH7+OD11kdZdxFrx1KVle1NesS3fAgwVXJpAeiXDTo=";
sha256 = "sha256-OSaeOp+SjQ5n61jV8UthtQQqkneBYJhESoQDCwRSTco=";
sourceRoot = "mercurial-${version}/rust";
} else null;
cargoRoot = if rustSupport then "rust" else null;
@ -151,6 +151,8 @@ let
EOF
export HGTEST_REAL_HG="${mercurial}/bin/hg"
# include tests for native components
export HGMODULEPOLICY="rust+c"
# extended timeout necessary for tests to pass on the busy CI workers
export HGTESTFLAGS="--blacklist blacklists/nix --timeout 1800 -j$NIX_BUILD_CORES ${flags}"
make check

View file

@ -22,7 +22,7 @@
, postInstall
# : list Maintainer
, maintainers ? [ ]
# : passtrhu arguments (e.g. tests)
# : passthru arguments (e.g. tests)
, passthru ? { }
}:

View file

@ -98,12 +98,12 @@ in {
nim-unwrapped = stdenv.mkDerivation rec {
pname = "nim-unwrapped";
version = "1.6.4";
version = "1.6.6";
strictDeps = true;
src = fetchurl {
url = "https://nim-lang.org/download/nim-${version}.tar.xz";
hash = "sha256-f8MJKFW1wiAM2f7tEz0EYFgj8lDXO01KxQEwA3DgoMI=";
hash = "sha256-Z7ERzm84YVA7n8wcrln8NNASJWbT7P7zoGSiF0EhpFI=";
};
buildInputs = [ boehmgc openssl pcre readline sqlite ];

View file

@ -2,4 +2,13 @@ import ./generic.nix {
majorVersion = "9.0";
minorVersion = "3";
sourceSha256 = "vD65Ylsrjb/stgUqKrCR/JFAXeQzOw7GjzMjgVFU7Yo=";
patchesToFetch = [
# Add missing header includes.
# https://gitlab.kitware.com/vtk/vtk/-/merge_requests/7611
{
url = "https://gitlab.kitware.com/vtk/vtk/-/commit/e066c3f4fbbfe7470c6207db0fc3f3952db633cb.patch";
sha256 = "ggmDisS3qoMquOqrmIYlCIT7TLxP/DUtW29ktjaEnlM=";
}
];
}

View file

@ -1,498 +0,0 @@
From 17b5be250cb5ecf95cf4f77c8c930450d876efa6 Mon Sep 17 00:00:00 2001
From: dzen <benoit.calvez@polyconseil.fr>
Date: Thu, 12 Mar 2020 08:32:29 +0100
Subject: [PATCH 1/3] Moves to pamqp 3.0
---
aioamqp/channel.py | 114 +++++++++++++++++++-------------------
aioamqp/frame.py | 1 -
aioamqp/protocol.py | 22 ++++----
aioamqp/tests/testcase.py | 2 +-
4 files changed, 69 insertions(+), 70 deletions(-)
diff --git a/aioamqp/channel.py b/aioamqp/channel.py
index 7f0f402..ea164c4 100644
--- a/aioamqp/channel.py
+++ b/aioamqp/channel.py
@@ -9,7 +9,7 @@
from itertools import count
import warnings
-import pamqp.specification
+import pamqp.commands
from . import frame as amqp_frame
from . import exceptions
@@ -78,35 +78,35 @@ def connection_closed(self, server_code=None, server_reason=None, exception=None
async def dispatch_frame(self, frame):
methods = {
- pamqp.specification.Channel.OpenOk.name: self.open_ok,
- pamqp.specification.Channel.FlowOk.name: self.flow_ok,
- pamqp.specification.Channel.CloseOk.name: self.close_ok,
- pamqp.specification.Channel.Close.name: self.server_channel_close,
-
- pamqp.specification.Exchange.DeclareOk.name: self.exchange_declare_ok,
- pamqp.specification.Exchange.BindOk.name: self.exchange_bind_ok,
- pamqp.specification.Exchange.UnbindOk.name: self.exchange_unbind_ok,
- pamqp.specification.Exchange.DeleteOk.name: self.exchange_delete_ok,
-
- pamqp.specification.Queue.DeclareOk.name: self.queue_declare_ok,
- pamqp.specification.Queue.DeleteOk.name: self.queue_delete_ok,
- pamqp.specification.Queue.BindOk.name: self.queue_bind_ok,
- pamqp.specification.Queue.UnbindOk.name: self.queue_unbind_ok,
- pamqp.specification.Queue.PurgeOk.name: self.queue_purge_ok,
-
- pamqp.specification.Basic.QosOk.name: self.basic_qos_ok,
- pamqp.specification.Basic.ConsumeOk.name: self.basic_consume_ok,
- pamqp.specification.Basic.CancelOk.name: self.basic_cancel_ok,
- pamqp.specification.Basic.GetOk.name: self.basic_get_ok,
- pamqp.specification.Basic.GetEmpty.name: self.basic_get_empty,
- pamqp.specification.Basic.Deliver.name: self.basic_deliver,
- pamqp.specification.Basic.Cancel.name: self.server_basic_cancel,
- pamqp.specification.Basic.Ack.name: self.basic_server_ack,
- pamqp.specification.Basic.Nack.name: self.basic_server_nack,
- pamqp.specification.Basic.RecoverOk.name: self.basic_recover_ok,
- pamqp.specification.Basic.Return.name: self.basic_return,
-
- pamqp.specification.Confirm.SelectOk.name: self.confirm_select_ok,
+ pamqp.commands.Channel.OpenOk.name: self.open_ok,
+ pamqp.commands.Channel.FlowOk.name: self.flow_ok,
+ pamqp.commands.Channel.CloseOk.name: self.close_ok,
+ pamqp.commands.Channel.Close.name: self.server_channel_close,
+
+ pamqp.commands.Exchange.DeclareOk.name: self.exchange_declare_ok,
+ pamqp.commands.Exchange.BindOk.name: self.exchange_bind_ok,
+ pamqp.commands.Exchange.UnbindOk.name: self.exchange_unbind_ok,
+ pamqp.commands.Exchange.DeleteOk.name: self.exchange_delete_ok,
+
+ pamqp.commands.Queue.DeclareOk.name: self.queue_declare_ok,
+ pamqp.commands.Queue.DeleteOk.name: self.queue_delete_ok,
+ pamqp.commands.Queue.BindOk.name: self.queue_bind_ok,
+ pamqp.commands.Queue.UnbindOk.name: self.queue_unbind_ok,
+ pamqp.commands.Queue.PurgeOk.name: self.queue_purge_ok,
+
+ pamqp.commands.Basic.QosOk.name: self.basic_qos_ok,
+ pamqp.commands.Basic.ConsumeOk.name: self.basic_consume_ok,
+ pamqp.commands.Basic.CancelOk.name: self.basic_cancel_ok,
+ pamqp.commands.Basic.GetOk.name: self.basic_get_ok,
+ pamqp.commands.Basic.GetEmpty.name: self.basic_get_empty,
+ pamqp.commands.Basic.Deliver.name: self.basic_deliver,
+ pamqp.commands.Basic.Cancel.name: self.server_basic_cancel,
+ pamqp.commands.Basic.Ack.name: self.basic_server_ack,
+ pamqp.commands.Basic.Nack.name: self.basic_server_nack,
+ pamqp.commands.Basic.RecoverOk.name: self.basic_recover_ok,
+ pamqp.commands.Basic.Return.name: self.basic_return,
+
+ pamqp.commands.Confirm.SelectOk.name: self.confirm_select_ok,
}
if frame.name not in methods:
@@ -144,7 +144,7 @@ async def _write_frame_awaiting_response(self, waiter_id, channel_id, request,
async def open(self):
"""Open the channel on the server."""
- request = pamqp.specification.Channel.Open()
+ request = pamqp.commands.Channel.Open()
return (await self._write_frame_awaiting_response(
'open', self.channel_id, request, no_wait=False, check_open=False))
@@ -159,7 +159,7 @@ async def close(self, reply_code=0, reply_text="Normal Shutdown"):
if not self.is_open:
raise exceptions.ChannelClosed("channel already closed or closing")
self.close_event.set()
- request = pamqp.specification.Channel.Close(reply_code, reply_text, class_id=0, method_id=0)
+ request = pamqp.commands.Channel.Close(reply_code, reply_text, class_id=0, method_id=0)
return (await self._write_frame_awaiting_response(
'close', self.channel_id, request, no_wait=False, check_open=False))
@@ -169,7 +169,7 @@ async def close_ok(self, frame):
self.protocol.release_channel_id(self.channel_id)
async def _send_channel_close_ok(self):
- request = pamqp.specification.Channel.CloseOk()
+ request = pamqp.commands.Channel.CloseOk()
await self._write_frame(self.channel_id, request)
async def server_channel_close(self, frame):
@@ -183,7 +183,7 @@ async def server_channel_close(self, frame):
self.connection_closed(results['reply_code'], results['reply_text'])
async def flow(self, active):
- request = pamqp.specification.Channel.Flow(active)
+ request = pamqp.commands.Channel.Flow(active)
return (await self._write_frame_awaiting_response(
'flow', self.channel_id, request, no_wait=False,
check_open=False))
@@ -201,7 +201,7 @@ async def flow_ok(self, frame):
async def exchange_declare(self, exchange_name, type_name, passive=False, durable=False,
auto_delete=False, no_wait=False, arguments=None):
- request = pamqp.specification.Exchange.Declare(
+ request = pamqp.commands.Exchange.Declare(
exchange=exchange_name,
exchange_type=type_name,
passive=passive,
@@ -222,7 +222,7 @@ async def exchange_declare_ok(self, frame):
return future
async def exchange_delete(self, exchange_name, if_unused=False, no_wait=False):
- request = pamqp.specification.Exchange.Delete(exchange=exchange_name, if_unused=if_unused, nowait=no_wait)
+ request = pamqp.commands.Exchange.Delete(exchange=exchange_name, if_unused=if_unused, nowait=no_wait)
return await self._write_frame_awaiting_response(
'exchange_delete', self.channel_id, request, no_wait)
@@ -235,7 +235,7 @@ async def exchange_bind(self, exchange_destination, exchange_source, routing_key
no_wait=False, arguments=None):
if arguments is None:
arguments = {}
- request = pamqp.specification.Exchange.Bind(
+ request = pamqp.commands.Exchange.Bind(
destination=exchange_destination,
source=exchange_source,
routing_key=routing_key,
@@ -255,7 +255,7 @@ async def exchange_unbind(self, exchange_destination, exchange_source, routing_k
if arguments is None:
arguments = {}
- request = pamqp.specification.Exchange.Unbind(
+ request = pamqp.commands.Exchange.Unbind(
destination=exchange_destination,
source=exchange_source,
routing_key=routing_key,
@@ -297,7 +297,7 @@ async def queue_declare(self, queue_name=None, passive=False, durable=False,
if not queue_name:
queue_name = 'aioamqp.gen-' + str(uuid.uuid4())
- request = pamqp.specification.Queue.Declare(
+ request = pamqp.commands.Queue.Declare(
queue=queue_name,
passive=passive,
durable=durable,
@@ -327,7 +327,7 @@ async def queue_delete(self, queue_name, if_unused=False, if_empty=False, no_wai
if_empty: bool, the queue is deleted if it has no messages. Raise if not.
no_wait: bool, if set, the server will not respond to the method
"""
- request = pamqp.specification.Queue.Delete(
+ request = pamqp.commands.Queue.Delete(
queue=queue_name,
if_unused=if_unused,
if_empty=if_empty,
@@ -346,7 +346,7 @@ async def queue_bind(self, queue_name, exchange_name, routing_key, no_wait=False
if arguments is None:
arguments = {}
- request = pamqp.specification.Queue.Bind(
+ request = pamqp.commands.Queue.Bind(
queue=queue_name,
exchange=exchange_name,
routing_key=routing_key,
@@ -367,7 +367,7 @@ async def queue_unbind(self, queue_name, exchange_name, routing_key, arguments=N
if arguments is None:
arguments = {}
- request = pamqp.specification.Queue.Unbind(
+ request = pamqp.commands.Queue.Unbind(
queue=queue_name,
exchange=exchange_name,
routing_key=routing_key,
@@ -383,7 +383,7 @@ async def queue_unbind_ok(self, frame):
logger.debug("Queue unbound")
async def queue_purge(self, queue_name, no_wait=False):
- request = pamqp.specification.Queue.Purge(
+ request = pamqp.commands.Queue.Purge(
queue=queue_name, nowait=no_wait
)
return (await self._write_frame_awaiting_response(
@@ -406,7 +406,7 @@ async def basic_publish(self, payload, exchange_name, routing_key,
if properties is None:
properties = {}
- method_request = pamqp.specification.Basic.Publish(
+ method_request = pamqp.commands.Basic.Publish(
exchange=exchange_name,
routing_key=routing_key,
mandatory=mandatory,
@@ -417,7 +417,7 @@ async def basic_publish(self, payload, exchange_name, routing_key,
header_request = pamqp.header.ContentHeader(
body_size=len(payload),
- properties=pamqp.specification.Basic.Properties(**properties)
+ properties=pamqp.commands.Basic.Properties(**properties)
)
await self._write_frame(self.channel_id, header_request, drain=False)
@@ -446,7 +446,7 @@ async def basic_qos(self, prefetch_size=0, prefetch_count=0, connection_global=F
settings should apply per-consumer channel; and global=true to mean
that the QoS settings should apply per-channel.
"""
- request = pamqp.specification.Basic.Qos(
+ request = pamqp.commands.Basic.Qos(
prefetch_size, prefetch_count, connection_global
)
return (await self._write_frame_awaiting_response(
@@ -490,7 +490,7 @@ async def basic_consume(self, callback, queue_name='', consumer_tag='', no_local
if arguments is None:
arguments = {}
- request = pamqp.specification.Basic.Consume(
+ request = pamqp.commands.Basic.Consume(
queue=queue_name,
consumer_tag=consumer_tag,
no_local=no_local,
@@ -561,7 +561,7 @@ async def server_basic_cancel(self, frame):
callback, error)
async def basic_cancel(self, consumer_tag, no_wait=False):
- request = pamqp.specification.Basic.Cancel(consumer_tag, no_wait)
+ request = pamqp.commands.Basic.Cancel(consumer_tag, no_wait)
return (await self._write_frame_awaiting_response(
'basic_cancel', self.channel_id, request, no_wait=no_wait)
)
@@ -575,7 +575,7 @@ async def basic_cancel_ok(self, frame):
logger.debug("Cancel ok")
async def basic_get(self, queue_name='', no_ack=False):
- request = pamqp.specification.Basic.Get(queue=queue_name, no_ack=no_ack)
+ request = pamqp.commands.Basic.Get(queue=queue_name, no_ack=no_ack)
return (await self._write_frame_awaiting_response(
'basic_get', self.channel_id, request, no_wait=False)
)
@@ -606,11 +606,11 @@ async def basic_get_empty(self, frame):
future.set_exception(exceptions.EmptyQueue)
async def basic_client_ack(self, delivery_tag, multiple=False):
- request = pamqp.specification.Basic.Ack(delivery_tag, multiple)
+ request = pamqp.commands.Basic.Ack(delivery_tag, multiple)
await self._write_frame(self.channel_id, request)
async def basic_client_nack(self, delivery_tag, multiple=False, requeue=True):
- request = pamqp.specification.Basic.Nack(delivery_tag, multiple, requeue)
+ request = pamqp.commands.Basic.Nack(delivery_tag, multiple, requeue)
await self._write_frame(self.channel_id, request)
async def basic_server_ack(self, frame):
@@ -620,15 +620,15 @@ async def basic_server_ack(self, frame):
fut.set_result(True)
async def basic_reject(self, delivery_tag, requeue=False):
- request = pamqp.specification.Basic.Reject(delivery_tag, requeue)
+ request = pamqp.commands.Basic.Reject(delivery_tag, requeue)
await self._write_frame(self.channel_id, request)
async def basic_recover_async(self, requeue=True):
- request = pamqp.specification.Basic.RecoverAsync(requeue)
+ request = pamqp.commands.Basic.RecoverAsync(requeue)
await self._write_frame(self.channel_id, request)
async def basic_recover(self, requeue=True):
- request = pamqp.specification.Basic.Recover(requeue)
+ request = pamqp.commands.Basic.Recover(requeue)
return (await self._write_frame_awaiting_response(
'basic_recover', self.channel_id, request, no_wait=False)
)
@@ -681,7 +681,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma
delivery_tag = next(self.delivery_tag_iter) # pylint: disable=stop-iteration-return
fut = self._set_waiter('basic_server_ack_{}'.format(delivery_tag))
- method_request = pamqp.specification.Basic.Publish(
+ method_request = pamqp.commands.Basic.Publish(
exchange=exchange_name,
routing_key=routing_key,
mandatory=mandatory,
@@ -689,7 +689,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma
)
await self._write_frame(self.channel_id, method_request, drain=False)
- properties = pamqp.specification.Basic.Properties(**properties)
+ properties = pamqp.commands.Basic.Properties(**properties)
header_request = pamqp.header.ContentHeader(
body_size=len(payload), properties=properties
)
@@ -710,7 +710,7 @@ async def publish(self, payload, exchange_name, routing_key, properties=None, ma
async def confirm_select(self, *, no_wait=False):
if self.publisher_confirms:
raise ValueError('publisher confirms already enabled')
- request = pamqp.specification.Confirm.Select(nowait=no_wait)
+ request = pamqp.commands.Confirm.Select(nowait=no_wait)
return (await self._write_frame_awaiting_response(
'confirm_select', self.channel_id, request, no_wait)
diff --git a/aioamqp/frame.py b/aioamqp/frame.py
index d70cfd7..af27ab5 100644
--- a/aioamqp/frame.py
+++ b/aioamqp/frame.py
@@ -42,7 +42,6 @@
import socket
import pamqp.encode
-import pamqp.specification
import pamqp.frame
from . import exceptions
diff --git a/aioamqp/protocol.py b/aioamqp/protocol.py
index e111dea..f0b928d 100644
--- a/aioamqp/protocol.py
+++ b/aioamqp/protocol.py
@@ -5,9 +5,9 @@
import asyncio
import logging
+import pamqp.commands
import pamqp.frame
import pamqp.heartbeat
-import pamqp.specification
from . import channel as amqp_channel
from . import constants as amqp_constants
@@ -159,7 +159,7 @@ async def close(self, no_wait=False, timeout=None):
"""Close connection (and all channels)"""
await self.ensure_open()
self.state = CLOSING
- request = pamqp.specification.Connection.Close(
+ request = pamqp.commands.Connection.Close(
reply_code=0,
reply_text='',
class_id=0,
@@ -254,11 +254,11 @@ async def dispatch_frame(self, frame_channel=None, frame=None):
"""Dispatch the received frame to the corresponding handler"""
method_dispatch = {
- pamqp.specification.Connection.Close.name: self.server_close,
- pamqp.specification.Connection.CloseOk.name: self.close_ok,
- pamqp.specification.Connection.Tune.name: self.tune,
- pamqp.specification.Connection.Start.name: self.start,
- pamqp.specification.Connection.OpenOk.name: self.open_ok,
+ pamqp.commands.Connection.Close.name: self.server_close,
+ pamqp.commands.Connection.CloseOk.name: self.close_ok,
+ pamqp.commands.Connection.Tune.name: self.tune,
+ pamqp.commands.Connection.Start.name: self.start,
+ pamqp.commands.Connection.OpenOk.name: self.open_ok,
}
if frame_channel is None and frame is None:
frame_channel, frame = await self.get_frame()
@@ -395,7 +395,7 @@ async def start_ok(self, client_properties, mechanism, auth, locale):
def credentials():
return '\0{LOGIN}\0{PASSWORD}'.format(**auth)
- request = pamqp.specification.Connection.StartOk(
+ request = pamqp.commands.Connection.StartOk(
client_properties=client_properties,
mechanism=mechanism,
locale=locale,
@@ -417,7 +417,7 @@ async def server_close(self, frame):
self._stream_writer.close()
async def _close_ok(self):
- request = pamqp.specification.Connection.CloseOk()
+ request = pamqp.commands.Connection.CloseOk()
await self._write_frame(0, request)
async def tune(self, frame):
@@ -426,7 +426,7 @@ async def tune(self, frame):
self.server_heartbeat = frame.heartbeat
async def tune_ok(self, channel_max, frame_max, heartbeat):
- request = pamqp.specification.Connection.TuneOk(
+ request = pamqp.commands.Connection.TuneOk(
channel_max, frame_max, heartbeat
)
await self._write_frame(0, request)
@@ -436,7 +436,7 @@ async def secure_ok(self, login_response):
async def open(self, virtual_host, capabilities='', insist=False):
"""Open connection to virtual host."""
- request = pamqp.specification.Connection.Open(
+ request = pamqp.commands.Connection.Open(
virtual_host, capabilities, insist
)
await self._write_frame(0, request)
diff --git a/aioamqp/tests/testcase.py b/aioamqp/tests/testcase.py
index 120104b..d6d702b 100644
--- a/aioamqp/tests/testcase.py
+++ b/aioamqp/tests/testcase.py
@@ -147,7 +147,7 @@ def server_version(self, amqp=None):
if amqp is None:
amqp = self.amqp
- server_version = tuple(int(x) for x in amqp.server_properties['version'].decode().split('.'))
+ server_version = tuple(int(x) for x in amqp.server_properties['version'].split('.'))
return server_version
async def check_exchange_exists(self, exchange_name):
From c900f6d5e8ef273000d221d0e46ab81ed4aed2a2 Mon Sep 17 00:00:00 2001
From: dzen <benoit.calvez@polyconseil.fr>
Date: Wed, 25 Mar 2020 11:02:04 +0100
Subject: [PATCH 2/3] fix pamqp version for tests on travis
---
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
index a740243..2277b28 100644
--- a/setup.py
+++ b/setup.py
@@ -25,7 +25,7 @@
'aioamqp',
],
install_requires=[
- 'pamqp>=2.2.0,<3',
+ 'pamqp>=3.0.0', # TODO(bcalvez): for tests purpose, until 3.0 is released
],
classifiers=[
"Development Status :: 4 - Beta",
From 836340e8d881a93b0111b9aed6f2bb2926f38de6 Mon Sep 17 00:00:00 2001
From: dzen <benoit.calvez@polyconseil.fr>
Date: Wed, 25 Mar 2020 11:37:45 +0100
Subject: [PATCH 3/3] pamqp 3.0 is no more compatible with 3.5
---
.travis.yml | 1 -
setup.cfg | 2 +-
setup.py | 2 +-
3 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index 1069e7c..46d6fea 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,6 @@
language: python
dist: bionic
python:
-- 3.5
- 3.6
- 3.7-dev
- 3.8
diff --git a/setup.cfg b/setup.cfg
index 0ab7d0b..d0ba16e 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,2 +1,2 @@
[bdist_wheel]
-python-tag = py35.py36.py37.py38
+python-tag = py36.py37.py38
diff --git a/setup.py b/setup.py
index 2277b28..c413078 100644
--- a/setup.py
+++ b/setup.py
@@ -27,6 +27,7 @@
install_requires=[
'pamqp==3.0.0a6', # TODO(bcalvez): for tests purpose, until 3.0 is released
],
+ python_requires=">=3.6",
classifiers=[
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
@@ -34,7 +35,6 @@
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
- "Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",

View file

@ -2,43 +2,38 @@
, buildPythonPackage
, fetchFromGitHub
, pamqp
, pytest
, asynctest
, pyrabbit2
, isPy27
, pythonOlder
}:
buildPythonPackage rec {
pname = "aioamqp";
version = "0.14.0";
disabled = isPy27;
version = "0.15.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "Polyconseil";
repo = pname;
rev = "${pname}-${version}";
sha256 = "1gpfsrc2vi6w33c9zsycd2qn589pr7a222rb41r85m915283zy48";
hash = "sha256-fssPknJn1tLtzb+2SFyZjfdhUdD8jqkwlInoi5uaplk=";
};
patches = [ ./compat-pamqp-3.patch ];
propagatedBuildInputs = [
pamqp
];
checkInputs = [
pytest
asynctest
pyrabbit2
];
# tests assume rabbitmq server running
# Tests assume rabbitmq server running
doCheck = false;
pythonImportsCheck = [
"aioamqp"
];
meta = with lib; {
homepage = "https://github.com/polyconseil/aioamqp";
description = "AMQP implementation using asyncio";
homepage = "https://github.com/polyconseil/aioamqp";
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
maintainers = with maintainers; [ costrouc ];
};
}

View file

@ -1,50 +1,49 @@
{ lib
, pythonOlder
, buildPythonPackage
, fetchFromGitHub
, pkgs
, numpy
, scipy
# check inputs
, nose
, numpy
, pythonOlder
, scipy
}:
buildPythonPackage rec {
pname = "ecos";
version = "2.0.8";
version = "2.0.10";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "embotech";
repo = "ecos-python";
rev = version;
sha256 = "sha256-2OJqbcOZceeD2fO5cu9fohuUVaA2LwQOQSWR4jRv3mk=";
rev = "v${version}";
sha256 = "sha256-TPxrTyVZ1KXgPoDbZZqXT5+NEIEndg9qepujqFQwK+Q=";
fetchSubmodules = true;
};
prePatch = ''
echo '__version__ = "${version}"' >> ./src/ecos/version.py
'';
propagatedBuildInputs = [
numpy
scipy
];
checkInputs = [ nose ];
checkInputs = [
nose
];
checkPhase = ''
# Run tests
cd ./src
nosetests test_interface.py test_interface_bb.py
'';
pythonImportsCheck = [ "ecos" ];
pythonImportsCheck = [
"ecos"
];
meta = with lib; {
description = "Python package for ECOS: Embedded Cone Solver";
downloadPage = "https://github.com/embotech/ecos-python/releases";
homepage = pkgs.ecos.meta.homepage;
license = licenses.asl20;
homepage = "https://github.com/embotech/ecos-python";
license = licenses.gpl3Only;
maintainers = with maintainers; [ drewrisinger ];
};
}

View file

@ -11,16 +11,16 @@
buildPythonPackage rec {
pname = "elkm1-lib";
version = "1.3.6";
version = "2.0.0";
format = "pyproject";
disabled = pythonOlder "3.6";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "gwww";
repo = "elkm1";
rev = version;
hash = "sha256-aIqwb2YHw/kYHBqydelTRs2+75WimgJ+4X0BYcwogh8=";
hash = "sha256-o0RQgAP38W7paVJonrfj54y2OhMmTihT9xiipEyNVaM=";
};
nativeBuildInputs = [

View file

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "http-sfv";
version = "0.9.5";
version = "0.9.6";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -16,7 +16,7 @@ buildPythonPackage rec {
owner = "mnot";
repo = "http_sfv";
rev = "http_sfv-${version}";
hash = "sha256-hzg5vRX0vNKS/hYLF6n8mLK5qiwP7do4M8YMlBAA66I=";
hash = "sha256-S+cbcDx+cXwN2TpfiUpr6xK1GFRxSYgfHdUavfzeyAE=";
};
propagatedBuildInputs = [

View file

@ -7,7 +7,7 @@
buildPythonPackage rec {
pname = "meilisearch";
version = "0.18.2";
version = "0.18.3";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -16,7 +16,7 @@ buildPythonPackage rec {
owner = "meilisearch";
repo = "meilisearch-python";
rev = "v${version}";
hash = "sha256-U9fdMcxPdtLiUStgTez99SPRh93WLZNVn8uIj4lNWh4=";
hash = "sha256-Ym3AbIEf8eMSrtP8W1dPXqL0mTVN2bd8hlxdFhW/dkQ=";
};
propagatedBuildInputs = [

View file

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "nettigo-air-monitor";
version = "1.2.3";
version = "1.2.4";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "bieniu";
repo = pname;
rev = version;
sha256 = "sha256-aCDw3JwX8LVrJp3jYvuYQ3ycRHjSnWU0n1LdTjV08VA=";
sha256 = "sha256-zmmJ3F2Fl4u7vOx1h5Z0LtWL0/5xmZiFRY2NU8Tc0MY=";
};
propagatedBuildInputs = [

View file

@ -6,6 +6,7 @@
, fetchFromGitHub
, nose
, numpy
, stdenv
}:
buildPythonPackage {
@ -28,6 +29,11 @@ buildPythonPackage {
cffi
];
# this test is known to fail on darwin
checkPhase = ''
nosetests ${lib.optionalString stdenv.isDarwin " --exclude=test_tv2_1d"}
'';
propagatedNativeBuildInputs = [ cffi ];
buildInputs = [ blas lapack ];

View file

@ -1,11 +1,33 @@
{ lib, buildPythonPackage, fetchPypi, ipykernel, ipywidgets, pythonOlder, pytestCheckHook, pandas }:
{ lib
, buildPythonPackage
, fetchPypi
, fetchpatch
, ipykernel
, ipywidgets
, pythonOlder
, pytestCheckHook
, pandas
, jinja2
, numpy
, traitlets
}:
buildPythonPackage rec {
pname = "pydeck";
version = "0.7.1";
format = "pyproject";
disabled = pythonOlder "3.7";
patches = [
# fixes build with latest setuptools
(fetchpatch {
url = "https://github.com/visgl/deck.gl/commit/9e68f73b28aa3bf0f2a887a4d8ccd2dc35677039.patch";
sha256 = "sha256-YVVoVbVdY5nV+17OwYIs9AwKGyzgKZHi655f4BLcdMU=";
stripLen = 2;
})
];
src = fetchPypi {
inherit pname version;
sha256 = "907601c99f7510e16d27d7cb62bfa145216d166a2b5c9c50cfe2b65b032ebd2e";
@ -14,12 +36,16 @@ buildPythonPackage rec {
pythonImportsCheck = [ "pydeck" ];
checkInputs = [ pytestCheckHook pandas ];
# tries to start a jupyter server
disabledTests = [ "test_nbconvert" ];
propagatedBuildInputs = [
ipykernel
ipywidgets
jinja2
numpy
traitlets
];
meta = with lib; {

View file

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "scmrepo";
version = "0.0.20";
version = "0.0.22";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "iterative";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-3gNHWncP9laevuX3EcnmNJ825eQehoLp75WJ5V5/R9w=";
hash = "sha256-hV0BusvuJUEGfmue7OHR3YYmpBcFTgbQE7UuHmTUBo0=";
};
propagatedBuildInputs = [

View file

@ -1,4 +1,8 @@
{ fetchFromGitHub, lib, stdenv, cmake }:
{ fetchFromGitHub, lib, stdenv, cmake, buildPackages, asciidoc, libxslt }:
let
isCrossCompiling = stdenv.hostPlatform != stdenv.buildPlatform;
in
stdenv.mkDerivation rec {
pname = "scas";
@ -12,10 +16,18 @@ stdenv.mkDerivation rec {
};
cmakeFlags = [ "-DSCAS_LIBRARY=1" ];
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "TARGETS scas scdump scwrap" "TARGETS scas scdump scwrap generate_tables"
'';
strictDeps = true;
nativeBuildInputs = [ cmake ];
depsBuildBuild = lib.optionals isCrossCompiling [ buildPackages.knightos-scas ];
nativeBuildInputs = [ asciidoc libxslt.bin cmake ];
postInstall = ''
cd ..
make DESTDIR=$out install_man
'';
meta = with lib; {
homepage = "https://knightos.org/";

View file

@ -1,7 +1,14 @@
{ stdenv, lib, fetchFromGitHub
, rustPlatform, pkg-config, openssl
# darwin dependencies
, Security, CoreFoundation, libiconv
{ stdenv
, lib
, fetchFromGitHub
, rustPlatform
, pkg-config
, openssl
# darwin dependencies
, Security
, CoreFoundation
, libiconv
, curl
}:
rustPlatform.buildRustPackage rec {
@ -16,15 +23,11 @@ rustPlatform.buildRustPackage rec {
};
cargoSha256 = "sha256-i7xDEzZAN2ubW1Q6MhY+xsb9XiUajNDHLdtDuO5r6jA=";
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security libiconv ];
nativeBuildInputs = [ pkg-config ];
# FIXME: Use impure version of CoreFoundation because of missing symbols.
# CFURLSetResourcePropertyForKey is defined in the headers but there's no
# corresponding implementation in the sources from opensource.apple.com.
preConfigure = lib.optionalString stdenv.isDarwin ''
export NIX_CFLAGS_COMPILE="-F${CoreFoundation}/Library/Frameworks $NIX_CFLAGS_COMPILE"
'';
buildInputs = [ openssl ]
++ lib.optionals stdenv.isDarwin [ CoreFoundation Security libiconv curl ];
nativeBuildInputs = [ pkg-config ]
# curl-sys wants to run curl-config on darwin
++ lib.optionals stdenv.isDarwin [ curl.dev ];
# skip tests with networking or other failures
checkFlags = [

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "xow";
version = "0.5";
version = "unstable-2022-04-24";
src = fetchFromGitHub {
owner = "medusalix";
repo = "xow";
rev = "v${version}";
sha256 = "071r2kx44k1sc49cad3i607xg618mf34ki1ykr5lnfx9y6qyz075";
rev = "d335d6024f8380f52767a7de67727d9b2f867871";
sha256 = "0q5nr21p4dlx2a99hiivwz6qj9anrqqsdhiz6xi375yqkxis4251";
};
firmware = fetchurl {
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
makeFlags = [
"BUILD=RELEASE"
"VERSION=${version}"
"VERSION=${version}-${src.rev}"
"BINDIR=${placeholder "out"}/bin"
"UDEVDIR=${placeholder "out"}/lib/udev/rules.d"
"MODLDIR=${placeholder "out"}/lib/modules-load.d"

View file

@ -1,14 +1,22 @@
{lib, stdenv, fetchurl }:
{ lib
, stdenv
, fetchurl
, unzip
}:
stdenv.mkDerivation rec {
pname = "goku";
version = "0.5.1";
src = fetchurl {
url = "https://github.com/yqrashawn/GokuRakuJoudo/releases/download/v${version}/goku.tar.gz";
url = "https://github.com/yqrashawn/GokuRakuJoudo/releases/download/v${version}/goku.zip";
sha256 = "7c9304a5b4265575ca154bc0ebc04fcf812d14981775966092946cf82f65c782";
};
nativeBuildInputs = [
unzip
];
sourceRoot = ".";
installPhase = ''

View file

@ -47,6 +47,12 @@ stdenv.mkDerivation rec {
# Upstream fix https://github.com/netblue30/firejail/pull/5131
# Upstream hopefully fixed in later versions > 0.9.68
./whitelist-nix-profile.patch
# Fix OpenGL support for various applications including Firefox
# Issue: https://github.com/NixOS/nixpkgs/issues/55191
# Upstream fix: https://github.com/netblue30/firejail/pull/5132
# Hopefully fixed upstream in version > 0.9.68
./fix-opengl-support.patch
];
prePatch = ''

View file

@ -0,0 +1,7 @@
--- a/etc/inc/whitelist-run-common.inc.org 2022-05-07 11:27:32.264849186 +0200
+++ b/etc/inc/whitelist-run-common.inc 2022-05-07 11:27:55.577778211 +0200
@@ -13,3 +13,4 @@
whitelist /run/systemd/resolve/resolv.conf
whitelist /run/systemd/resolve/stub-resolv.conf
whitelist /run/udev/data
+whitelist /run/opengl-driver # NixOS

View file

@ -23,6 +23,8 @@ stdenv.mkDerivation rec {
ln -s $out/bin/wodim $out/bin/cdrecord
'';
cmakeFlags = lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [ "-DBITFIELDS_HTOL=0" ];
makeFlags = [ "PREFIX=\$(out)" ];
meta = {

View file

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, libiconv, gettext, xxd }:
{ lib, stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, pkg-config, libiconv, gettext, xxd }:
stdenv.mkDerivation rec {
pname = "dosfstools";
@ -11,6 +11,15 @@ stdenv.mkDerivation rec {
sha256 = "sha256-2gxB0lQixiHOHw8uTetHekaM57fvUd9zOzSxWnvUz/c=";
};
patches = [
# macOS build fixes backported from master
# TODO: remove on the next release
(fetchpatch {
url = "https://github.com/dosfstools/dosfstools/commit/77ffb87e8272760b3bb2dec8f722103b0effb801.patch";
sha256 = "sha256-xHxIs3faHK/sK3vAVoG8JcTe4zAV+ZtkozWIIFBvPWI=";
})
];
nativeBuildInputs = [ autoreconfHook pkg-config ]
++ lib.optional stdenv.isDarwin libiconv;

View file

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config}:
{ lib, fetchFromGitHub, rustPlatform, openssl, pkg-config, stdenv}:
rustPlatform.buildRustPackage rec {
pname = "gotify-desktop";
@ -22,5 +22,6 @@ rustPlatform.buildRustPackage rec {
homepage = "https://github.com/desbma/gotify-desktop";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ bryanasdev000 genofire ];
broken = stdenv.isDarwin;
};
}

View file

@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
substituteInPlace Makefile --replace "-static" ""
'';
buildInputs = lib.optionals stdenv.hostPlatform.isGnu [
stdenv.glibc.static
];
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
installPhase = ''

View file

@ -27,7 +27,9 @@ in stdenv.mkDerivation rec {
fetchSubmodules = true;
};
nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper ];
strictDeps = true;
nativeBuildInputs = [ autoreconfHook pkg-config makeWrapper protobuf ];
buildInputs = [ curl.dev zlib.dev protobuf ]
++ optionals stdenv.isDarwin [ CoreFoundation IOKit libossp_uuid ]
++ optionals (!stdenv.isDarwin) [ libcap.dev libuuid.dev ]
@ -80,6 +82,7 @@ in stdenv.mkDerivation rec {
configureFlags = [
"--localstatedir=/var"
"--sysconfdir=/etc"
"--disable-ebpf"
] ++ optionals withCloud [
"--enable-cloud"
"--with-aclk-ng"